Skip to content

Instantly share code, notes, and snippets.

import { useRouter } from 'next/router';
export type UseQueryParamOptions<TDefaultValue> = {
defaultValue: TDefaultValue;
parse?: (value: string, defaultValue: TDefaultValue) => TDefaultValue;
};
/**
* The hook retrieves a parameter from the query string using the Next.js router.
* Accepts an optional argument with options
@pohy
pohy / server.js
Created April 8, 2020 11:55
WS server
import WebSocket from 'ws';
const webSocketServer = new WebSocket.Server({ server });
webSocketServer.on('error', (err) => logger.error(err));
webSocketServer.on('headers', (headers) => logger.log('headersi', headers));
webSocketServer.on('connection', (ws) => {
logger.log('new connection');
ws.on('open', () => logger.log('open'));
ws.on('close', () => logger.log('closed'));
ws.on('message', (message) => {
@pohy
pohy / Player.cs
Created February 21, 2020 11:20
Godot Subnode attribute
class Player : KinematicBody
{
[Subnode] private Spatial MyNode; // finds subnode called "MyNode" which is a Spatial, crash if not found
[Subnode("custom_name")] private Label MyLabel; // finds a Label called "custom_name"
public override void _Ready()
{
this.FindSubnodes(); // Must write `this.` because it's an extension class
}
}
#define MAX_STEPS 100
#define MAX_DISTANCE 100.
#define MIN_DISTANCE .01
float getDistance(vec3 point) {
vec4 sphere = vec4(0, 1, 6, 1);
float sphereDistance = length(point - sphere.xyz) - sphere.w;
float planeDistance = point.y;
return min(sphereDistance, planeDistance);
}
@pohy
pohy / init.js
Created June 4, 2019 20:28
Async mJS RPC Handler
load('rpc.js');
let testWiFi = ffi('bool mgos_captive_portal_wifi_setup_test(char*,char*,void(*)(bool,char*,char*,userdata),userdata)');
RPC.addHandlerAsync('ConnectToWifi', function(respond, args) {
if (
typeof args !== 'object'
|| typeof args.ssid !== 'string' || args.ssid.length < 1
|| typeof args.pass !== 'string' || args.pass.length < 1
) {
public ValidationResponse createValidationResponse(BindingResult result, boolean translate) {
ValidationResponse response = new ValidationResponse();
if(!result.hasErrors()) {
response.setSuccess(true);
return response;
}
response.setSuccess(false);
Locale locale = LocaleContextHolder.getLocale();
for (FieldError error : result.getFieldErrors()) {
String message = translate ? messageSource.getMessage(error, locale) : error.getCode();
@pohy
pohy / race.html
Created April 2, 2015 10:58
Race
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Race</title>
<style type="text/css">
* {
margin: 0;
padding: 0;
}
<div id="images">
<img id="image_lisa" width="32" height="32" src="lisa.png">
<img id="image_meggie" width="32" height="32" src="meggie.png">
</div>
<canvas id="canvas" width="854" height="480"></canvas>
<script type="text/javascript">
var Game = function() {
var canvas = document.getElementById('canvas');
this.ctx = canvas.getContext('2d');
@pohy
pohy / TaskPresenter.php
Created November 21, 2013 16:45
Nette example application
<?php
use Nette\Application\UI\Form;
class TaskPresenter extends BasePresenter
{
private $listRepository;
private $userRepository;
private $taskRepository;
private $list;