decentraland-ui2 1.3.10 → 1.3.11-23254548394.commit-0815e57
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/Assets/logo-pattern.webp +0 -0
- package/dist/components/AnimatedBackground/AnimatedBackground.d.ts +3 -0
- package/dist/components/AnimatedBackground/AnimatedBackground.js +80 -0
- package/dist/components/AnimatedBackground/AnimatedBackground.js.map +1 -0
- package/dist/components/AnimatedBackground/AnimatedBackground.shaders.d.ts +3 -0
- package/dist/components/AnimatedBackground/AnimatedBackground.shaders.js +82 -0
- package/dist/components/AnimatedBackground/AnimatedBackground.shaders.js.map +1 -0
- package/dist/components/AnimatedBackground/AnimatedBackground.stories.d.ts +9 -0
- package/dist/components/AnimatedBackground/AnimatedBackground.stories.js +84 -0
- package/dist/components/AnimatedBackground/AnimatedBackground.stories.js.map +1 -0
- package/dist/components/AnimatedBackground/AnimatedBackground.styled.d.ts +20 -0
- package/dist/components/AnimatedBackground/AnimatedBackground.styled.js +43 -0
- package/dist/components/AnimatedBackground/AnimatedBackground.styled.js.map +1 -0
- package/dist/components/AnimatedBackground/AnimatedBackground.types.d.ts +7 -0
- package/dist/components/AnimatedBackground/AnimatedBackground.types.js +2 -0
- package/dist/components/AnimatedBackground/AnimatedBackground.types.js.map +1 -0
- package/dist/components/AnimatedBackground/AnimatedBackground.utils.d.ts +6 -0
- package/dist/components/AnimatedBackground/AnimatedBackground.utils.js +57 -0
- package/dist/components/AnimatedBackground/AnimatedBackground.utils.js.map +1 -0
- package/dist/components/AnimatedBackground/index.d.ts +2 -0
- package/dist/components/AnimatedBackground/index.js +2 -0
- package/dist/components/AnimatedBackground/index.js.map +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/package.json +3 -3
|
Binary file
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { AnimatedBackgroundProps } from './AnimatedBackground.types';
|
|
2
|
+
declare const AnimatedBackground: import("react").MemoExoticComponent<({ variant, color, patternUrl }: AnimatedBackgroundProps) => import("react/jsx-runtime").JSX.Element>;
|
|
3
|
+
export { AnimatedBackground };
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { memo, useEffect, useRef } from 'react';
|
|
3
|
+
import { FRAGMENT_SHADER, VERTEX_SHADER } from './AnimatedBackground.shaders';
|
|
4
|
+
import { createProgram, createShader, darkenRgb, hexToRgb, loadTexture } from './AnimatedBackground.utils';
|
|
5
|
+
import overlayTextureUrl from '../../Assets/logo-pattern.webp';
|
|
6
|
+
import { Canvas, Fallback, Wrapper } from './AnimatedBackground.styled';
|
|
7
|
+
const DEFAULT_INNER_COLOR = [0.749, 0.0, 1.0];
|
|
8
|
+
const DEFAULT_OUTER_COLOR = [0.3176, 0.0235, 0.5176];
|
|
9
|
+
const AnimatedBackground = memo(({ variant = 'fixed', color, patternUrl }) => {
|
|
10
|
+
const canvasRef = useRef(null);
|
|
11
|
+
const animFrameRef = useRef(0);
|
|
12
|
+
useEffect(() => {
|
|
13
|
+
const canvas = canvasRef.current;
|
|
14
|
+
if (!canvas)
|
|
15
|
+
return;
|
|
16
|
+
const gl = canvas.getContext('webgl', { alpha: false, antialias: false });
|
|
17
|
+
if (!gl) {
|
|
18
|
+
console.error('WebGL not supported');
|
|
19
|
+
return;
|
|
20
|
+
}
|
|
21
|
+
const vs = createShader(gl, gl.VERTEX_SHADER, VERTEX_SHADER);
|
|
22
|
+
const fs = createShader(gl, gl.FRAGMENT_SHADER, FRAGMENT_SHADER);
|
|
23
|
+
if (!vs || !fs)
|
|
24
|
+
return;
|
|
25
|
+
const program = createProgram(gl, vs, fs);
|
|
26
|
+
if (!program)
|
|
27
|
+
return;
|
|
28
|
+
const positionLoc = gl.getAttribLocation(program, 'a_position');
|
|
29
|
+
const timeLoc = gl.getUniformLocation(program, 'u_time');
|
|
30
|
+
const resolutionLoc = gl.getUniformLocation(program, 'u_resolution');
|
|
31
|
+
const overlayTexLoc = gl.getUniformLocation(program, 'u_overlayTex');
|
|
32
|
+
const innerColorLoc = gl.getUniformLocation(program, 'u_innerColor');
|
|
33
|
+
const outerColorLoc = gl.getUniformLocation(program, 'u_outerColor');
|
|
34
|
+
const innerColor = color ? hexToRgb(color) : DEFAULT_INNER_COLOR;
|
|
35
|
+
const outerColor = color ? darkenRgb(innerColor, 0.42) : DEFAULT_OUTER_COLOR;
|
|
36
|
+
const buffer = gl.createBuffer();
|
|
37
|
+
gl.bindBuffer(gl.ARRAY_BUFFER, buffer);
|
|
38
|
+
gl.bufferData(gl.ARRAY_BUFFER, new Float32Array([-1, -1, 1, -1, -1, 1, -1, 1, 1, -1, 1, 1]), gl.STATIC_DRAW);
|
|
39
|
+
const overlayTexture = loadTexture(gl, patternUrl ?? overlayTextureUrl);
|
|
40
|
+
const resize = () => {
|
|
41
|
+
const dpr = window.devicePixelRatio || 1;
|
|
42
|
+
const w = canvas.clientWidth * dpr;
|
|
43
|
+
const h = canvas.clientHeight * dpr;
|
|
44
|
+
if (canvas.width !== w || canvas.height !== h) {
|
|
45
|
+
canvas.width = w;
|
|
46
|
+
canvas.height = h;
|
|
47
|
+
}
|
|
48
|
+
};
|
|
49
|
+
const startTime = performance.now() / 1000;
|
|
50
|
+
const render = () => {
|
|
51
|
+
resize();
|
|
52
|
+
gl.viewport(0, 0, canvas.width, canvas.height);
|
|
53
|
+
gl.useProgram(program);
|
|
54
|
+
gl.uniform1f(timeLoc, performance.now() / 1000 - startTime);
|
|
55
|
+
gl.uniform2f(resolutionLoc, canvas.width, canvas.height);
|
|
56
|
+
gl.uniform4f(innerColorLoc, innerColor[0], innerColor[1], innerColor[2], 1.0);
|
|
57
|
+
gl.uniform4f(outerColorLoc, outerColor[0], outerColor[1], outerColor[2], 1.0);
|
|
58
|
+
gl.activeTexture(gl.TEXTURE0);
|
|
59
|
+
gl.bindTexture(gl.TEXTURE_2D, overlayTexture);
|
|
60
|
+
gl.uniform1i(overlayTexLoc, 0);
|
|
61
|
+
gl.enableVertexAttribArray(positionLoc);
|
|
62
|
+
gl.bindBuffer(gl.ARRAY_BUFFER, buffer);
|
|
63
|
+
gl.vertexAttribPointer(positionLoc, 2, gl.FLOAT, false, 0, 0);
|
|
64
|
+
gl.drawArrays(gl.TRIANGLES, 0, 6);
|
|
65
|
+
animFrameRef.current = requestAnimationFrame(render);
|
|
66
|
+
};
|
|
67
|
+
animFrameRef.current = requestAnimationFrame(render);
|
|
68
|
+
return () => {
|
|
69
|
+
cancelAnimationFrame(animFrameRef.current);
|
|
70
|
+
gl.deleteProgram(program);
|
|
71
|
+
gl.deleteShader(vs);
|
|
72
|
+
gl.deleteShader(fs);
|
|
73
|
+
gl.deleteBuffer(buffer);
|
|
74
|
+
gl.deleteTexture(overlayTexture);
|
|
75
|
+
};
|
|
76
|
+
}, [color, patternUrl]);
|
|
77
|
+
return (_jsxs(Wrapper, { variant: variant, children: [_jsx(Fallback, { variant: variant, "aria-hidden": true }), _jsx(Canvas, { ref: canvasRef })] }));
|
|
78
|
+
});
|
|
79
|
+
export { AnimatedBackground };
|
|
80
|
+
//# sourceMappingURL=AnimatedBackground.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AnimatedBackground.js","sourceRoot":"","sources":["../../../src/components/AnimatedBackground/AnimatedBackground.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
declare const VERTEX_SHADER = "\nattribute vec2 a_position;\nvarying vec2 v_uv;\nvoid main() {\n v_uv = a_position * 0.5 + 0.5;\n gl_Position = vec4(a_position, 0.0, 1.0);\n}\n";
|
|
2
|
+
declare const FRAGMENT_SHADER = "\nprecision highp float;\n\nuniform float u_time;\nuniform vec2 u_resolution;\nuniform sampler2D u_overlayTex;\nuniform vec4 u_innerColor;\nuniform vec4 u_outerColor;\n\nvarying vec2 v_uv;\nconst float vignetteRadius = 0.167;\nconst float vignetteSmoothness = 0.5;\nconst vec4 overlayColor = vec4(1.0, 1.0, 1.0, 1.0);\nconst float overlayTiling = 1.66;\nconst vec2 overlayDirection = vec2(1.0, -1.25);\nconst float overlaySpeed = 0.06;\nconst float overlayAlpha = 0.573;\nconst vec4 glowColor = vec4(0.5725, 0.0588, 0.6392, 1.0);\nconst float glowStrength = 0.17;\nconst vec2 glowRadiusVec = vec2(0.05, 0.13);\nconst float glowSmoothness = 3.61;\nconst vec2 glowCenter = vec2(0.68, 0.5);\nconst float luminosityStrength = 0.541;\n\nvec3 rgb2hsv(vec3 c) {\n vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0);\n vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g));\n vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r));\n float d = q.x - min(q.w, q.y);\n float e = 1e-10;\n return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x);\n}\n\nvec3 hsv2rgb(vec3 c) {\n vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0);\n vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www);\n return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y);\n}\n\nvoid main() {\n vec2 uv = v_uv;\n\n vec2 centerUV = uv - 0.5;\n float rad = length(centerUV);\n float mask = smoothstep(vignetteRadius + vignetteSmoothness, vignetteRadius, rad);\n vec4 vignette = mix(u_outerColor, u_innerColor, mask);\n\n float aspect = u_resolution.x / u_resolution.y;\n vec2 overlayUV = uv;\n overlayUV.x *= overlayTiling * aspect;\n overlayUV.y *= overlayTiling;\n overlayUV += u_time * overlayDirection * overlaySpeed;\n vec4 overlay = texture2D(u_overlayTex, overlayUV) * overlayColor;\n overlay.a *= overlayAlpha * mask;\n\n vec3 vignetteHSV = rgb2hsv(vignette.rgb);\n vec3 overlayHSV = rgb2hsv(overlay.rgb);\n float val = mix(0.5, 1.0, overlayHSV.z);\n vec3 luminosityBlend = hsv2rgb(vec3(vignetteHSV.x, vignetteHSV.y, val));\n float luminosityBlendAmount = overlay.a * luminosityStrength;\n vec4 result = vec4(mix(vignette.rgb, luminosityBlend, luminosityBlendAmount), 1.0);\n\n vec2 glowDelta = (uv - glowCenter) / glowRadiusVec;\n glowDelta.x *= aspect;\n float glowDist = length(glowDelta);\n float glowMask = 1.0 - smoothstep(1.0, 1.0 + glowSmoothness, glowDist);\n vec4 glow = glowColor * glowMask * glowStrength;\n result.rgb += glow.rgb * glow.a;\n\n gl_FragColor = result;\n}\n";
|
|
3
|
+
export { FRAGMENT_SHADER, VERTEX_SHADER };
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
const VERTEX_SHADER = `
|
|
2
|
+
attribute vec2 a_position;
|
|
3
|
+
varying vec2 v_uv;
|
|
4
|
+
void main() {
|
|
5
|
+
v_uv = a_position * 0.5 + 0.5;
|
|
6
|
+
gl_Position = vec4(a_position, 0.0, 1.0);
|
|
7
|
+
}
|
|
8
|
+
`;
|
|
9
|
+
const FRAGMENT_SHADER = `
|
|
10
|
+
precision highp float;
|
|
11
|
+
|
|
12
|
+
uniform float u_time;
|
|
13
|
+
uniform vec2 u_resolution;
|
|
14
|
+
uniform sampler2D u_overlayTex;
|
|
15
|
+
uniform vec4 u_innerColor;
|
|
16
|
+
uniform vec4 u_outerColor;
|
|
17
|
+
|
|
18
|
+
varying vec2 v_uv;
|
|
19
|
+
const float vignetteRadius = 0.167;
|
|
20
|
+
const float vignetteSmoothness = 0.5;
|
|
21
|
+
const vec4 overlayColor = vec4(1.0, 1.0, 1.0, 1.0);
|
|
22
|
+
const float overlayTiling = 1.66;
|
|
23
|
+
const vec2 overlayDirection = vec2(1.0, -1.25);
|
|
24
|
+
const float overlaySpeed = 0.06;
|
|
25
|
+
const float overlayAlpha = 0.573;
|
|
26
|
+
const vec4 glowColor = vec4(0.5725, 0.0588, 0.6392, 1.0);
|
|
27
|
+
const float glowStrength = 0.17;
|
|
28
|
+
const vec2 glowRadiusVec = vec2(0.05, 0.13);
|
|
29
|
+
const float glowSmoothness = 3.61;
|
|
30
|
+
const vec2 glowCenter = vec2(0.68, 0.5);
|
|
31
|
+
const float luminosityStrength = 0.541;
|
|
32
|
+
|
|
33
|
+
vec3 rgb2hsv(vec3 c) {
|
|
34
|
+
vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0);
|
|
35
|
+
vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g));
|
|
36
|
+
vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r));
|
|
37
|
+
float d = q.x - min(q.w, q.y);
|
|
38
|
+
float e = 1e-10;
|
|
39
|
+
return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x);
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
vec3 hsv2rgb(vec3 c) {
|
|
43
|
+
vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0);
|
|
44
|
+
vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www);
|
|
45
|
+
return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y);
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
void main() {
|
|
49
|
+
vec2 uv = v_uv;
|
|
50
|
+
|
|
51
|
+
vec2 centerUV = uv - 0.5;
|
|
52
|
+
float rad = length(centerUV);
|
|
53
|
+
float mask = smoothstep(vignetteRadius + vignetteSmoothness, vignetteRadius, rad);
|
|
54
|
+
vec4 vignette = mix(u_outerColor, u_innerColor, mask);
|
|
55
|
+
|
|
56
|
+
float aspect = u_resolution.x / u_resolution.y;
|
|
57
|
+
vec2 overlayUV = uv;
|
|
58
|
+
overlayUV.x *= overlayTiling * aspect;
|
|
59
|
+
overlayUV.y *= overlayTiling;
|
|
60
|
+
overlayUV += u_time * overlayDirection * overlaySpeed;
|
|
61
|
+
vec4 overlay = texture2D(u_overlayTex, overlayUV) * overlayColor;
|
|
62
|
+
overlay.a *= overlayAlpha * mask;
|
|
63
|
+
|
|
64
|
+
vec3 vignetteHSV = rgb2hsv(vignette.rgb);
|
|
65
|
+
vec3 overlayHSV = rgb2hsv(overlay.rgb);
|
|
66
|
+
float val = mix(0.5, 1.0, overlayHSV.z);
|
|
67
|
+
vec3 luminosityBlend = hsv2rgb(vec3(vignetteHSV.x, vignetteHSV.y, val));
|
|
68
|
+
float luminosityBlendAmount = overlay.a * luminosityStrength;
|
|
69
|
+
vec4 result = vec4(mix(vignette.rgb, luminosityBlend, luminosityBlendAmount), 1.0);
|
|
70
|
+
|
|
71
|
+
vec2 glowDelta = (uv - glowCenter) / glowRadiusVec;
|
|
72
|
+
glowDelta.x *= aspect;
|
|
73
|
+
float glowDist = length(glowDelta);
|
|
74
|
+
float glowMask = 1.0 - smoothstep(1.0, 1.0 + glowSmoothness, glowDist);
|
|
75
|
+
vec4 glow = glowColor * glowMask * glowStrength;
|
|
76
|
+
result.rgb += glow.rgb * glow.a;
|
|
77
|
+
|
|
78
|
+
gl_FragColor = result;
|
|
79
|
+
}
|
|
80
|
+
`;
|
|
81
|
+
export { FRAGMENT_SHADER, VERTEX_SHADER };
|
|
82
|
+
//# sourceMappingURL=AnimatedBackground.shaders.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AnimatedBackground.shaders.js","sourceRoot":"","sources":["../../../src/components/AnimatedBackground/AnimatedBackground.shaders.ts"],"names":[],"mappings":"AAAA,MAAM,aAAa,GAAG;;;;;;;CAOrB,CAAA;AAED,MAAM,eAAe,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuEvB,CAAA;AAED,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,CAAA"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { AnimatedBackgroundProps } from './AnimatedBackground.types';
|
|
2
|
+
import type { Meta, StoryObj } from '@storybook/react';
|
|
3
|
+
declare const meta: Meta<AnimatedBackgroundProps>;
|
|
4
|
+
type Story = StoryObj<typeof meta>;
|
|
5
|
+
declare const Fixed: Story;
|
|
6
|
+
declare const Absolute: Story;
|
|
7
|
+
declare const CustomColor: Story;
|
|
8
|
+
export default meta;
|
|
9
|
+
export { Absolute, CustomColor, Fixed };
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { Box } from '@mui/material';
|
|
3
|
+
import { AnimatedBackground } from './AnimatedBackground';
|
|
4
|
+
const meta = {
|
|
5
|
+
title: 'Decentraland UI/Animated Background',
|
|
6
|
+
component: AnimatedBackground,
|
|
7
|
+
tags: ['autodocs'],
|
|
8
|
+
parameters: {
|
|
9
|
+
docs: {
|
|
10
|
+
description: {
|
|
11
|
+
component: 'Animated WebGL background with a gradient shader and overlay texture. Falls back to a static image when WebGL is not available.'
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
},
|
|
15
|
+
decorators: [
|
|
16
|
+
Story => (_jsx(Box, { sx: { position: 'relative', width: '800px', height: '500px', overflow: 'hidden' }, children: _jsx(Story, {}) }))
|
|
17
|
+
],
|
|
18
|
+
argTypes: {
|
|
19
|
+
variant: {
|
|
20
|
+
control: 'radio',
|
|
21
|
+
options: ['fixed', 'absolute'],
|
|
22
|
+
description: 'Positioning strategy for the background',
|
|
23
|
+
table: {
|
|
24
|
+
type: { summary: '"fixed" | "absolute"' },
|
|
25
|
+
defaultValue: { summary: 'fixed' }
|
|
26
|
+
}
|
|
27
|
+
},
|
|
28
|
+
color: {
|
|
29
|
+
control: 'color',
|
|
30
|
+
description: 'Main color for the gradient (hex). The outer color is derived as a darker shade.',
|
|
31
|
+
table: {
|
|
32
|
+
type: { summary: 'string' }
|
|
33
|
+
}
|
|
34
|
+
},
|
|
35
|
+
patternUrl: {
|
|
36
|
+
control: 'text',
|
|
37
|
+
description: 'URL for the overlay pattern texture',
|
|
38
|
+
table: {
|
|
39
|
+
type: { summary: 'string' }
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
};
|
|
44
|
+
const Fixed = {
|
|
45
|
+
args: {
|
|
46
|
+
variant: 'fixed'
|
|
47
|
+
},
|
|
48
|
+
parameters: {
|
|
49
|
+
docs: {
|
|
50
|
+
description: {
|
|
51
|
+
story: 'Fixed variant — covers the full viewport and stays in place on scroll'
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
};
|
|
56
|
+
const Absolute = {
|
|
57
|
+
args: {
|
|
58
|
+
variant: 'absolute'
|
|
59
|
+
},
|
|
60
|
+
parameters: {
|
|
61
|
+
docs: {
|
|
62
|
+
description: {
|
|
63
|
+
story: 'Absolute variant — fills its parent container. Useful for sections or cards.'
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
};
|
|
68
|
+
const CustomColor = {
|
|
69
|
+
args: {
|
|
70
|
+
variant: 'absolute',
|
|
71
|
+
color: '#ff4444'
|
|
72
|
+
},
|
|
73
|
+
parameters: {
|
|
74
|
+
docs: {
|
|
75
|
+
description: {
|
|
76
|
+
story: 'Custom color — the outer color is automatically derived as a darker shade'
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
};
|
|
81
|
+
// eslint-disable-next-line import/no-default-export
|
|
82
|
+
export default meta;
|
|
83
|
+
export { Absolute, CustomColor, Fixed };
|
|
84
|
+
//# sourceMappingURL=AnimatedBackground.stories.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AnimatedBackground.stories.js","sourceRoot":"","sources":["../../../src/components/AnimatedBackground/AnimatedBackground.stories.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,eAAe,CAAA;AACnC,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AAIzD,MAAM,IAAI,GAAkC;IAC1C,KAAK,EAAE,qCAAqC;IAC5C,SAAS,EAAE,kBAAkB;IAC7B,IAAI,EAAE,CAAC,UAAU,CAAC;IAClB,UAAU,EAAE;QACV,IAAI,EAAE;YACJ,WAAW,EAAE;gBACX,SAAS,EACP,iIAAiI;aACpI;SACF;KACF;IACD,UAAU,EAAE;QACV,KAAK,CAAC,EAAE,CAAC,CACP,KAAC,GAAG,IAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,YACpF,KAAC,KAAK,KAAG,GACL,CACP;KACF;IACD,QAAQ,EAAE;QACR,OAAO,EAAE;YACP,OAAO,EAAE,OAAO;YAChB,OAAO,EAAE,CAAC,OAAO,EAAE,UAAU,CAAC;YAC9B,WAAW,EAAE,yCAAyC;YACtD,KAAK,EAAE;gBACL,IAAI,EAAE,EAAE,OAAO,EAAE,sBAAsB,EAAE;gBACzC,YAAY,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE;aACnC;SACF;QACD,KAAK,EAAE;YACL,OAAO,EAAE,OAAO;YAChB,WAAW,EAAE,kFAAkF;YAC/F,KAAK,EAAE;gBACL,IAAI,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE;aAC5B;SACF;QACD,UAAU,EAAE;YACV,OAAO,EAAE,MAAM;YACf,WAAW,EAAE,qCAAqC;YAClD,KAAK,EAAE;gBACL,IAAI,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE;aAC5B;SACF;KACF;CACwC,CAAA;AAI3C,MAAM,KAAK,GAAU;IACnB,IAAI,EAAE;QACJ,OAAO,EAAE,OAAO;KACjB;IACD,UAAU,EAAE;QACV,IAAI,EAAE;YACJ,WAAW,EAAE;gBACX,KAAK,EAAE,uEAAuE;aAC/E;SACF;KACF;CACF,CAAA;AAED,MAAM,QAAQ,GAAU;IACtB,IAAI,EAAE;QACJ,OAAO,EAAE,UAAU;KACpB;IACD,UAAU,EAAE;QACV,IAAI,EAAE;YACJ,WAAW,EAAE;gBACX,KAAK,EAAE,8EAA8E;aACtF;SACF;KACF;CACF,CAAA;AAED,MAAM,WAAW,GAAU;IACzB,IAAI,EAAE;QACJ,OAAO,EAAE,UAAU;QACnB,KAAK,EAAE,SAAS;KACjB;IACD,UAAU,EAAE;QACV,IAAI,EAAE;YACJ,WAAW,EAAE;gBACX,KAAK,EAAE,2EAA2E;aACnF;SACF;KACF;CACF,CAAA;AAED,oDAAoD;AACpD,eAAe,IAAI,CAAA;AAEnB,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,KAAK,EAAE,CAAA"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { AnimatedBackgroundVariant } from './AnimatedBackground.types';
|
|
2
|
+
declare const Wrapper: import("@emotion/styled").StyledComponent<import("@mui/system").BoxOwnProps<import("@mui/material").Theme> & Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
|
|
3
|
+
ref?: ((instance: HTMLDivElement | null) => void | import("react").DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES[keyof import("react").DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES]) | import("react").RefObject<HTMLDivElement> | null | undefined;
|
|
4
|
+
}, keyof import("@mui/system").BoxOwnProps<import("@mui/material").Theme>> & {
|
|
5
|
+
theme?: import("@emotion/react").Theme;
|
|
6
|
+
} & {
|
|
7
|
+
variant: AnimatedBackgroundVariant;
|
|
8
|
+
}, {}, {}>;
|
|
9
|
+
declare const Fallback: import("@emotion/styled").StyledComponent<import("@mui/system").BoxOwnProps<import("@mui/material").Theme> & Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
|
|
10
|
+
ref?: ((instance: HTMLDivElement | null) => void | import("react").DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES[keyof import("react").DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES]) | import("react").RefObject<HTMLDivElement> | null | undefined;
|
|
11
|
+
}, keyof import("@mui/system").BoxOwnProps<import("@mui/material").Theme>> & {
|
|
12
|
+
theme?: import("@emotion/react").Theme;
|
|
13
|
+
} & {
|
|
14
|
+
variant: AnimatedBackgroundVariant;
|
|
15
|
+
}, {}, {}>;
|
|
16
|
+
declare const Canvas: import("@emotion/styled").StyledComponent<{
|
|
17
|
+
theme?: import("@emotion/react").Theme;
|
|
18
|
+
as?: React.ElementType;
|
|
19
|
+
}, import("react").DetailedHTMLProps<import("react").CanvasHTMLAttributes<HTMLCanvasElement>, HTMLCanvasElement>, {}>;
|
|
20
|
+
export { Canvas, Fallback, Wrapper };
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import styled from '@emotion/styled';
|
|
2
|
+
import { Box } from '@mui/material';
|
|
3
|
+
import fallbackBackgroundUrl from '../../Assets/custom-welcome-background.webp';
|
|
4
|
+
const baseVariantStyles = (variant) => variant === 'fixed'
|
|
5
|
+
? {
|
|
6
|
+
position: 'fixed',
|
|
7
|
+
width: '100vw',
|
|
8
|
+
height: '100vh',
|
|
9
|
+
zIndex: 0
|
|
10
|
+
}
|
|
11
|
+
: {
|
|
12
|
+
position: 'absolute',
|
|
13
|
+
width: '100%',
|
|
14
|
+
height: '100%',
|
|
15
|
+
zIndex: -1
|
|
16
|
+
};
|
|
17
|
+
const Wrapper = styled(Box)(({ variant }) => ({
|
|
18
|
+
top: 0,
|
|
19
|
+
left: 0,
|
|
20
|
+
...baseVariantStyles(variant)
|
|
21
|
+
}));
|
|
22
|
+
const Fallback = styled(Box)({
|
|
23
|
+
position: 'absolute',
|
|
24
|
+
top: 0,
|
|
25
|
+
left: 0,
|
|
26
|
+
width: '100%',
|
|
27
|
+
height: '100%',
|
|
28
|
+
backgroundImage: `url(${fallbackBackgroundUrl})`,
|
|
29
|
+
backgroundSize: 'cover',
|
|
30
|
+
backgroundPosition: 'center',
|
|
31
|
+
backgroundRepeat: 'no-repeat',
|
|
32
|
+
zIndex: 0
|
|
33
|
+
});
|
|
34
|
+
const Canvas = styled('canvas')({
|
|
35
|
+
position: 'absolute',
|
|
36
|
+
top: 0,
|
|
37
|
+
left: 0,
|
|
38
|
+
width: '100%',
|
|
39
|
+
height: '100%',
|
|
40
|
+
zIndex: 1
|
|
41
|
+
});
|
|
42
|
+
export { Canvas, Fallback, Wrapper };
|
|
43
|
+
//# sourceMappingURL=AnimatedBackground.styled.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AnimatedBackground.styled.js","sourceRoot":"","sources":["../../../src/components/AnimatedBackground/AnimatedBackground.styled.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,iBAAiB,CAAA;AACpC,OAAO,EAAE,GAAG,EAAE,MAAM,eAAe,CAAA;AACnC,OAAO,qBAAqB,MAAM,6CAA6C,CAAA;AAG/E,MAAM,iBAAiB,GAAG,CAAC,OAAkC,EAAE,EAAE,CAC/D,OAAO,KAAK,OAAO;IACjB,CAAC,CAAC;QACE,QAAQ,EAAE,OAAgB;QAC1B,KAAK,EAAE,OAAO;QACd,MAAM,EAAE,OAAO;QACf,MAAM,EAAE,CAAC;KACV;IACH,CAAC,CAAC;QACE,QAAQ,EAAE,UAAmB;QAC7B,KAAK,EAAE,MAAM;QACb,MAAM,EAAE,MAAM;QACd,MAAM,EAAE,CAAC,CAAC;KACX,CAAA;AAEP,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,CAAyC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;IACpF,GAAG,EAAE,CAAC;IACN,IAAI,EAAE,CAAC;IACP,GAAG,iBAAiB,CAAC,OAAO,CAAC;CAC9B,CAAC,CAAC,CAAA;AAEH,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,CAAyC;IACnE,QAAQ,EAAE,UAAU;IACpB,GAAG,EAAE,CAAC;IACN,IAAI,EAAE,CAAC;IACP,KAAK,EAAE,MAAM;IACb,MAAM,EAAE,MAAM;IACd,eAAe,EAAE,OAAO,qBAAqB,GAAG;IAChD,cAAc,EAAE,OAAO;IACvB,kBAAkB,EAAE,QAAQ;IAC5B,gBAAgB,EAAE,WAAW;IAC7B,MAAM,EAAE,CAAC;CACV,CAAC,CAAA;AAEF,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC9B,QAAQ,EAAE,UAAU;IACpB,GAAG,EAAE,CAAC;IACN,IAAI,EAAE,CAAC;IACP,KAAK,EAAE,MAAM;IACb,MAAM,EAAE,MAAM;IACd,MAAM,EAAE,CAAC;CACV,CAAC,CAAA;AAEF,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AnimatedBackground.types.js","sourceRoot":"","sources":["../../../src/components/AnimatedBackground/AnimatedBackground.types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
declare function createShader(gl: WebGLRenderingContext, type: number, source: string): WebGLShader | null;
|
|
2
|
+
declare function createProgram(gl: WebGLRenderingContext, vs: WebGLShader, fs: WebGLShader): WebGLProgram | null;
|
|
3
|
+
declare function loadTexture(gl: WebGLRenderingContext, url: string): WebGLTexture | null;
|
|
4
|
+
declare function hexToRgb(hex: string): [number, number, number];
|
|
5
|
+
declare function darkenRgb(rgb: [number, number, number], factor: number): [number, number, number];
|
|
6
|
+
export { createProgram, createShader, darkenRgb, hexToRgb, loadTexture };
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
function createShader(gl, type, source) {
|
|
2
|
+
const shader = gl.createShader(type);
|
|
3
|
+
if (!shader)
|
|
4
|
+
return null;
|
|
5
|
+
gl.shaderSource(shader, source);
|
|
6
|
+
gl.compileShader(shader);
|
|
7
|
+
if (!gl.getShaderParameter(shader, gl.COMPILE_STATUS)) {
|
|
8
|
+
console.error('Shader compile error:', gl.getShaderInfoLog(shader));
|
|
9
|
+
gl.deleteShader(shader);
|
|
10
|
+
return null;
|
|
11
|
+
}
|
|
12
|
+
return shader;
|
|
13
|
+
}
|
|
14
|
+
function createProgram(gl, vs, fs) {
|
|
15
|
+
const program = gl.createProgram();
|
|
16
|
+
if (!program)
|
|
17
|
+
return null;
|
|
18
|
+
gl.attachShader(program, vs);
|
|
19
|
+
gl.attachShader(program, fs);
|
|
20
|
+
gl.linkProgram(program);
|
|
21
|
+
if (!gl.getProgramParameter(program, gl.LINK_STATUS)) {
|
|
22
|
+
console.error('Program link error:', gl.getProgramInfoLog(program));
|
|
23
|
+
gl.deleteProgram(program);
|
|
24
|
+
return null;
|
|
25
|
+
}
|
|
26
|
+
return program;
|
|
27
|
+
}
|
|
28
|
+
function loadTexture(gl, url) {
|
|
29
|
+
const texture = gl.createTexture();
|
|
30
|
+
if (!texture)
|
|
31
|
+
return null;
|
|
32
|
+
gl.bindTexture(gl.TEXTURE_2D, texture);
|
|
33
|
+
gl.texImage2D(gl.TEXTURE_2D, 0, gl.RGBA, 1, 1, 0, gl.RGBA, gl.UNSIGNED_BYTE, new Uint8Array([128, 128, 128, 255]));
|
|
34
|
+
const image = new Image();
|
|
35
|
+
image.crossOrigin = 'anonymous';
|
|
36
|
+
image.onload = () => {
|
|
37
|
+
gl.bindTexture(gl.TEXTURE_2D, texture);
|
|
38
|
+
gl.pixelStorei(gl.UNPACK_FLIP_Y_WEBGL, true);
|
|
39
|
+
gl.texImage2D(gl.TEXTURE_2D, 0, gl.RGBA, gl.RGBA, gl.UNSIGNED_BYTE, image);
|
|
40
|
+
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.REPEAT);
|
|
41
|
+
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl.REPEAT);
|
|
42
|
+
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.LINEAR_MIPMAP_LINEAR);
|
|
43
|
+
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, gl.LINEAR);
|
|
44
|
+
gl.generateMipmap(gl.TEXTURE_2D);
|
|
45
|
+
};
|
|
46
|
+
image.src = url;
|
|
47
|
+
return texture;
|
|
48
|
+
}
|
|
49
|
+
function hexToRgb(hex) {
|
|
50
|
+
const h = hex.replace('#', '');
|
|
51
|
+
return [parseInt(h.slice(0, 2), 16) / 255, parseInt(h.slice(2, 4), 16) / 255, parseInt(h.slice(4, 6), 16) / 255];
|
|
52
|
+
}
|
|
53
|
+
function darkenRgb(rgb, factor) {
|
|
54
|
+
return [rgb[0] * factor, rgb[1] * factor, rgb[2] * factor];
|
|
55
|
+
}
|
|
56
|
+
export { createProgram, createShader, darkenRgb, hexToRgb, loadTexture };
|
|
57
|
+
//# sourceMappingURL=AnimatedBackground.utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AnimatedBackground.utils.js","sourceRoot":"","sources":["../../../src/components/AnimatedBackground/AnimatedBackground.utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/AnimatedBackground/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA"}
|
package/dist/index.d.ts
CHANGED
|
@@ -32,6 +32,7 @@ export * from './components/MobileStoreBadges';
|
|
|
32
32
|
export * from './components/Navbar';
|
|
33
33
|
export * from './components/Notifications';
|
|
34
34
|
export * from './components/UserMenu';
|
|
35
|
+
export * from './components/AnimatedBackground';
|
|
35
36
|
export * from './components/Banner';
|
|
36
37
|
export * from './components/WearablePreview';
|
|
37
38
|
export * from './components/Profile';
|
package/dist/index.js
CHANGED
|
@@ -37,6 +37,7 @@ export * from './components/MobileStoreBadges';
|
|
|
37
37
|
export * from './components/Navbar';
|
|
38
38
|
export * from './components/Notifications';
|
|
39
39
|
export * from './components/UserMenu';
|
|
40
|
+
export * from './components/AnimatedBackground';
|
|
40
41
|
export * from './components/Banner';
|
|
41
42
|
export * from './components/WearablePreview';
|
|
42
43
|
export * from './components/Profile';
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "decentraland-ui2",
|
|
3
|
-
"version": "1.3.
|
|
3
|
+
"version": "1.3.11-23254548394.commit-0815e57",
|
|
4
4
|
"description": "Decentraland's UI components and styles",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -38,7 +38,7 @@
|
|
|
38
38
|
},
|
|
39
39
|
"peerDependencies": {
|
|
40
40
|
"@contentful/rich-text-react-renderer": "^16.0.0",
|
|
41
|
-
"@dcl/hooks": "^1.
|
|
41
|
+
"@dcl/hooks": "^1.2.1",
|
|
42
42
|
"@dcl/schemas": "^25.1.0",
|
|
43
43
|
"@dcl/ui-env": "^2.0.0",
|
|
44
44
|
"lottie-react": "^2.4.0",
|
|
@@ -117,5 +117,5 @@
|
|
|
117
117
|
"url": "https://github.com/decentraland/ui2/issues"
|
|
118
118
|
},
|
|
119
119
|
"homepage": "https://github.com/decentraland/ui2#readme",
|
|
120
|
-
"commit": "
|
|
120
|
+
"commit": "0815e57aacd40b361beeedc3a72b4ce36b2eac1b"
|
|
121
121
|
}
|