@longline/aqua-ui 1.0.48 → 1.0.49

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.
@@ -31,7 +31,7 @@ var BoxWrapperBase = function (props) {
31
31
  React.createElement(HintBackground, null, props.hint)));
32
32
  };
33
33
  var HintBackground = styled.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n position: absolute;\n left: 0;\n bottom: 0;\n right: 0;\n height: 22px;\n border-bottom-left-radius: ", "px;\n border-bottom-right-radius: ", "px;\n"], ["\n position: absolute;\n left: 0;\n bottom: 0;\n right: 0;\n height: 22px;\n border-bottom-left-radius: ", "px;\n border-bottom-right-radius: ", "px;\n"])), function (p) { return p.theme.radius.normal; }, function (p) { return p.theme.radius.normal; });
34
- var Control = styled.div(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n display: flex;\n align-items: center;\n padding-top: 25px;\n padding-bottom: 25px;\n"], ["\n display: flex;\n align-items: center;\n padding-top: 25px;\n padding-bottom: 25px;\n"])));
34
+ var Control = styled.div(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n display: flex;\n align-items: center;\n padding-top: 23px;\n padding-bottom: 23px;\n"], ["\n display: flex;\n align-items: center;\n padding-top: 23px;\n padding-bottom: 23px;\n"])));
35
35
  var BoxWrapper = styled(BoxWrapperBase)(templateObject_8 || (templateObject_8 = __makeTemplateObject(["\n // Size:\n position: relative;\n box-sizing: border-box;\n margin-bottom: 8px;\n min-height: 80px;\n \n // Appearance:\n border-radius: ", "px;\n background-color: ", ";\n border: none;\n\n // Hint/error background:\n ", " {\n ", "\n }\n\n // Hover:\n &:hover {\n outline: solid 2px ", ";\n }\n\n &:focus-within {\n outline: solid 2px ", ";\n } \n\n ", " {\n position: absolute;\n left: 12px;\n right: 12px;\n top: 10px;\n color: ", ";\n }\n\n ", " {\n position: absolute;\n left: 12px;\n right: 12px;\n bottom: 2px;\n color: ", ";\n }\n\n // Error state:\n ", "\n\n // Disabled state:\n ", "\n\n // Ghost state:\n ", "\n\n // Fields may provide their weight in relative units to other fields.\n ", "\n"], ["\n // Size:\n position: relative;\n box-sizing: border-box;\n margin-bottom: 8px;\n min-height: 80px;\n \n // Appearance:\n border-radius: ", "px;\n background-color: ", ";\n border: none;\n\n // Hint/error background:\n ", " {\n ", "\n }\n\n // Hover:\n &:hover {\n outline: solid 2px ", ";\n }\n\n &:focus-within {\n outline: solid 2px ", ";\n } \n\n ", " {\n position: absolute;\n left: 12px;\n right: 12px;\n top: 10px;\n color: ", ";\n }\n\n ", " {\n position: absolute;\n left: 12px;\n right: 12px;\n bottom: 2px;\n color: ", ";\n }\n\n // Error state:\n ", "\n\n // Disabled state:\n ", "\n\n // Ghost state:\n ", "\n\n // Fields may provide their weight in relative units to other fields.\n ", "\n"])), function (p) { return p.theme.radius.normal; }, function (p) { return p.theme.colors.neutral[100]; }, HintBackground, function (p) { return !p.ghost && !p.disabled && css(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n background: ", ";\n "], ["\n background: ", ";\n "])), p.error ? p.theme.colors.negative : p.theme.colors.neutral[95]); }, function (p) { return p.theme.colors.primary[2]; }, function (p) { return p.theme.colors.primary[1]; }, Label, function (p) { return p.theme.colors.primary[2]; }, Hint, function (p) { return p.error ? p.theme.colors.neutral[100] : p.theme.colors.primary[3]; }, function (p) { return p.error && css(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n outline: solid 2px ", ";\n &:hover, &:focus-within {\n outline: solid 2px ", ";\n }\n "], ["\n outline: solid 2px ", ";\n &:hover, &:focus-within {\n outline: solid 2px ", ";\n }\n "])), p.theme.colors.negative, p.theme.colors.negative); }, function (p) { return p.disabled && css(templateObject_5 || (templateObject_5 = __makeTemplateObject(["\n user-select: none;\n outline: solid 2px ", ";\n background-color: ", ";\n pointer-events: none;\n ", " {\n color: ", ";\n }\n ", " {\n color: ", ";\n }\n "], ["\n user-select: none;\n outline: solid 2px ", ";\n background-color: ", ";\n pointer-events: none;\n ", " {\n color: ", ";\n }\n ", " {\n color: ", ";\n }\n "])), p.theme.colors.primary[4], p.theme.colors.primary[4], Label, p.theme.colors.neutral[50], Hint, p.theme.colors.neutral[50]); }, function (p) { return p.ghost && css(templateObject_6 || (templateObject_6 = __makeTemplateObject(["\n outline: dashed 1px ", ";\n background-color: transparent;\n pointer-events: none;\n\n ", " {\n color: transparent;\n text-shadow: 0 0 3px rgb(from ", " r g b / 50%);\n } \n ", " {\n color: transparent;\n text-shadow: 0 0 3px rgb(from ", " r g b / 50%);\n } \n "], ["\n outline: dashed 1px ", ";\n background-color: transparent;\n pointer-events: none;\n\n ", " {\n color: transparent;\n text-shadow: 0 0 3px rgb(from ", " r g b / 50%);\n } \n ", " {\n color: transparent;\n text-shadow: 0 0 3px rgb(from ", " r g b / 50%);\n } \n "])), p.theme.colors.primary[2], Label, function (p) { return p.theme.colors.primary[1]; }, Hint, function (p) { return p.theme.colors.primary[1]; }); }, function (p) { return p.weight && css(templateObject_7 || (templateObject_7 = __makeTemplateObject(["flex: ", ""], ["flex: ", ""])), p.weight); });
36
36
  export { BoxWrapper };
37
37
  var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5, templateObject_6, templateObject_7, templateObject_8;
@@ -1,2 +1,2 @@
1
- declare const ParticlesFragmentShader = " \n #ifdef GL_ES\n precision mediump float;\n #endif\n\n uniform sampler2D uTexture;\n uniform sampler2D vTexture;\n varying vec4 v_color;\n\n //\n // Returns texture color at pixelCoord.\n //\n /* vec4 texelFetch(sampler2D tex, vec2 pixelCoord) {\n return texture2D(tex, pixelCoord / u_resolution);\n }\n\n vec4 getSpeed(vec2 pixelCoord) {\n vec4 colorU = texture2D(uTexture, pixelCoord / u_resolution);\n vec4 colorV = texture2D(vTexture, pixelCoord / u_resolution);\n if(colorU.w == 0.0 || colorV.w == 0.0) return vec4(0.0, 0.0, 0.0, 0.0);\n float uRange = maxU - minU;\n float vRange = maxV - minV;\n float u = uRange * colorU.x + minU;\n float v = vRange * colorV.x + minV;\n float ratio = sqrt(u * u + v * v) / maxUV;\n \n return vec4(1.0, 1.0, 1.0, 1.0);\n return vec4(ratio, 0.0, 0.0, 1.0);\n } */\n\n /* void oldmain() {\n float xMod20 = mod(float(gl_FragCoord.x), 20.0);\n if(!(xMod20 >= shift && xMod20 <= shift + 1.0)) return;\n if(mod(float(gl_FragCoord.y), 20.0) >= 3.0) return;\n // Get input color:\n //vec4 color = texelFetch(uTexture, gl_FragCoord.xy);\n\n vec2 pos = gl_FragCoord.xy;\n vec4 color = getSpeed(pos);\n\n gl_FragColor = color;\n } */\n\n // Half size of box\n #define SIZE 15\n\n /* void main() {\n // Draw box around point.\n int x = int(gl_PointCoord.x * float(SIZE*2));\n int y = int(gl_PointCoord.y * float(SIZE*2)); \n if(x == 0 || y == 0 || x == SIZE*2-1 || y == SIZE*2-1) {\n gl_FragColor = vec4(1.0, 1.0, 1.0, 1.0);\n return;\n }\n\n // Get texture color of point at its center.\n vec4 color = texelFetch(uTexture, gl_FragCoord.xy - vec2(x, -y));\n gl_FragColor = color;\n } */\n\n void main() {\n gl_FragColor = v_color;\n }\n";
1
+ declare const ParticlesFragmentShader = " \n #ifdef GL_ES\n precision mediump float;\n #endif\n\n varying vec4 v_color;\n\n void main() {\n gl_FragColor = v_color;\n }\n";
2
2
  export { ParticlesFragmentShader };
@@ -1,2 +1,2 @@
1
- var ParticlesFragmentShader = /*glsl*/ " \n #ifdef GL_ES\n precision mediump float;\n #endif\n\n uniform sampler2D uTexture;\n uniform sampler2D vTexture;\n varying vec4 v_color;\n\n //\n // Returns texture color at pixelCoord.\n //\n /* vec4 texelFetch(sampler2D tex, vec2 pixelCoord) {\n return texture2D(tex, pixelCoord / u_resolution);\n }\n\n vec4 getSpeed(vec2 pixelCoord) {\n vec4 colorU = texture2D(uTexture, pixelCoord / u_resolution);\n vec4 colorV = texture2D(vTexture, pixelCoord / u_resolution);\n if(colorU.w == 0.0 || colorV.w == 0.0) return vec4(0.0, 0.0, 0.0, 0.0);\n float uRange = maxU - minU;\n float vRange = maxV - minV;\n float u = uRange * colorU.x + minU;\n float v = vRange * colorV.x + minV;\n float ratio = sqrt(u * u + v * v) / maxUV;\n \n return vec4(1.0, 1.0, 1.0, 1.0);\n return vec4(ratio, 0.0, 0.0, 1.0);\n } */\n\n /* void oldmain() {\n float xMod20 = mod(float(gl_FragCoord.x), 20.0);\n if(!(xMod20 >= shift && xMod20 <= shift + 1.0)) return;\n if(mod(float(gl_FragCoord.y), 20.0) >= 3.0) return;\n // Get input color:\n //vec4 color = texelFetch(uTexture, gl_FragCoord.xy);\n\n vec2 pos = gl_FragCoord.xy;\n vec4 color = getSpeed(pos);\n\n gl_FragColor = color;\n } */\n\n // Half size of box\n #define SIZE 15\n\n /* void main() {\n // Draw box around point.\n int x = int(gl_PointCoord.x * float(SIZE*2));\n int y = int(gl_PointCoord.y * float(SIZE*2)); \n if(x == 0 || y == 0 || x == SIZE*2-1 || y == SIZE*2-1) {\n gl_FragColor = vec4(1.0, 1.0, 1.0, 1.0);\n return;\n }\n\n // Get texture color of point at its center.\n vec4 color = texelFetch(uTexture, gl_FragCoord.xy - vec2(x, -y));\n gl_FragColor = color;\n } */\n\n void main() {\n gl_FragColor = v_color;\n }\n";
1
+ var ParticlesFragmentShader = /*glsl*/ " \n #ifdef GL_ES\n precision mediump float;\n #endif\n\n varying vec4 v_color;\n\n void main() {\n gl_FragColor = v_color;\n }\n";
2
2
  export { ParticlesFragmentShader };
@@ -26,8 +26,9 @@ interface IProps {
26
26
  */
27
27
  density?: number;
28
28
  /**
29
- * Animation delay factor.
30
- * @default 1
29
+ * Animation delay factor. Animation step is advanced only every `delay` animation frames.
30
+ * A `delay` of `0` means no delay; a `delay` of `1` means every odd frame is skipped.
31
+ * @default 0
31
32
  */
32
33
  delay?: number;
33
34
  /**
@@ -59,24 +59,29 @@ var ParticlesLayerBase = function (props) {
59
59
  var fboU = React.useRef(null);
60
60
  var fboV = React.useRef(null);
61
61
  var frame = React.useRef(0);
62
+ var skip = React.useRef(0);
62
63
  // requestAnimationFrame ID:
63
64
  var animation = React.useRef(null);
64
65
  // Current time is used to force component rerender when props change:
65
66
  var _a = React.useState(0), time = _a[0], setTime = _a[1];
66
67
  // Force component rerender when props change:
67
68
  React.useEffect(function () {
68
- setTime(Date.now());
69
69
  window.cancelAnimationFrame(animation.current);
70
+ setTime(Date.now());
70
71
  frame.current = 0;
72
+ skip.current = 0;
71
73
  animation.current = window.requestAnimationFrame(draw);
72
74
  }, [props.data, props.gradientStops, props.particles, props.density, props.delay, props.pointSize]);
73
75
  var draw = function () {
74
- frame.current = (frame.current + 1) % (props.particles * props.delay);
75
- map.current.triggerRepaint();
76
+ skip.current++;
77
+ if (skip.current >= props.delay) {
78
+ skip.current = 0;
79
+ frame.current = (frame.current + 1) % props.particles;
80
+ map.current.triggerRepaint();
81
+ }
76
82
  animation.current = window.requestAnimationFrame(draw);
77
83
  };
78
84
  React.useEffect(function () {
79
- animation.current = window.requestAnimationFrame(draw);
80
85
  return function () {
81
86
  window.cancelAnimationFrame(animation.current);
82
87
  };
@@ -265,7 +270,7 @@ var ParticlesLayerBase = function (props) {
265
270
  var colors = props.gradientStops.map(function (s) { return colorToRGBA(s.color); }).flat();
266
271
  gl.uniform4fv(gl.getUniformLocation(particlesProgram.current, 'u_gradientColors'), new Float32Array(colors));
267
272
  // Current animation frame:
268
- gl.uniform1i(gl.getUniformLocation(particlesProgram.current, "u_frame"), Math.floor(frame.current / props.delay));
273
+ gl.uniform1i(gl.getUniformLocation(particlesProgram.current, "u_frame"), Math.floor(frame.current));
269
274
  // Number of point instances - this is the length of each curve:
270
275
  gl.uniform1i(gl.getUniformLocation(particlesProgram.current, "u_num_instances"), props.particles);
271
276
  // Size of points to be drawn (in pixels).
@@ -326,7 +331,7 @@ var ParticlesLayerBase = function (props) {
326
331
  type: "custom", beforeId: "overlay", key: time, onAdd: onAddLayer, render: function (gl, matrix) { return onRender(gl, matrix, map.current.getContainer().clientWidth, map.current.getContainer().clientHeight); } }));
327
332
  };
328
333
  var ParticlesLayer = function (_a) {
329
- var _b = _a.particles, particles = _b === void 0 ? 80 : _b, _c = _a.density, density = _c === void 0 ? 40 : _c, _d = _a.delay, delay = _d === void 0 ? 1 : _d, _e = _a.gradientStops, gradientStops = _e === void 0 ? [
334
+ var _b = _a.particles, particles = _b === void 0 ? 80 : _b, _c = _a.density, density = _c === void 0 ? 40 : _c, _d = _a.delay, delay = _d === void 0 ? 0 : _d, _e = _a.gradientStops, gradientStops = _e === void 0 ? [
330
335
  { pos: 0.0, color: '#ffffffff' },
331
336
  { pos: 0.25, color: '#5c5cffff' },
332
337
  { pos: 0.5, color: '#5c5cff00' },
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@longline/aqua-ui",
3
- "version": "1.0.48",
3
+ "version": "1.0.49",
4
4
  "description": "AquaUI",
5
5
  "author": "Alexander van Oostenrijk / Longline Environment",
6
6
  "license": "Commercial",