Skip to content

Instantly share code, notes, and snippets.

@martincik
martincik / verifyTx.ts
Created March 9, 2023 06:16
Verify transactions signatures and nonce
const signedTransactionSerialized =
credentials?.signedTransactionSerialized;
const pubkey = credentials?.pubkey;
const nonce = req.body?.csrfToken;
if (!(signedTransactionSerialized && pubkey && nonce)) {
throw new Error("Missing required credentials.");
}
const transaction = Transaction.from(
@martincik
martincik / signTx.ts
Created March 9, 2023 06:11
Signing and sending Memo transaction instead of signed message
const nonce = await getCsrfToken();
if (!nonce) {
throw new Error("Missing nonce.");
}
const tx = new Transaction();
tx.add(
new TransactionInstruction({
programId: new PublicKey(
"MemoSq4gqABAXKb96qnH8TysNcWxMyWCqXgDLGmfcHr"
[core]
excludesfile = /Users/lmartincik/.gitignore
editor = vim
repositoryformatversion = 0
filemode = true
bare = false
logallrefupdates = true
whitespace=trailing-space,space-before-tab
[user]
name = Ladislav Martincik
@martincik
martincik / CancelableComponent.js
Last active March 15, 2016 08:41
Cancelable component snippet
import cancelable from 'cancelable';
class Contacts extends React.Component {
_cancelables: Array<Object>; // Declare _cancelables for flow
constructor(props) {
super(props);
this._cancelables = []; // Init _cancelables
}
@martincik
martincik / cancelable.js
Created March 15, 2016 08:29
Cancelable snippet
/* @flow */
'use strict';
/**
* A Cancelable is a proxy for a function which supports cancelation.
* When a cancelable is called, it will pass its arguments to the underlying
* function, unless it is canceled in which case it will become a no-op.
*
* We need this as there's now way atm to cancel promise already running,
* so what were're doing here is changing the execution callback to empty
@martincik
martincik / json
Last active November 10, 2015 14:46
Contacts
{
"total": 5,
"contacts": [
{"full_name": "Tyler Lanister", "job_title": "Programmer", "avatar": "https://robohash.org/laco.png?size=300x300"},
{"full_name": "John Snow", "job_title": "Naive Commander", "avatar": "https://robohash.org/roman.png?size=300x300"},
{"full_name": "The God", "job_title": "Ultimate Commander", "avatar": "https://robohash.org/pista.png?size=300x300"},
{"full_name": "Tyler Lanister", "job_title": "Programmer", "avatar": "https://robohash.org/jared.png?size=300x300"},
{"full_name": "John Snow", "job_title": "Naive Commander", "avatar": "https://robohash.org/mike.png?size=300x300"},
{"full_name": "The God", "job_title": "Ultimate Commander", "avatar": "https://robohash.org/nick.png?size=300x300"},
{"full_name": "Tyler Lanister", "job_title": "Programmer", "avatar": "https://robohash.org/hirshol.png?size=300x300"},
@martincik
martincik / gist:6ef7352907903342d708
Last active August 29, 2015 14:21
Why do we have Product and ProductSummary? And why the ProductSummary has more fields than Product itself?
# CrunchBase API v3 - Product list and detail
I'm consuming the CrunchBase API v3.
I'm a bit of puzzled with the API returning Products.
URL: `https://api.crunchbase.com/v/3/products`
IMHO should return list of Products, but instead it returns list of `ProuctSummary`.
So you are returning something called `ProductSummary` instead of just `Product`?
@martincik
martincik / cmd
Created May 20, 2014 12:51 — forked from pifleo/cmd
$ chmod +x ./proxy_list_fetcher.rb
$ ./proxy_list_fetcher.rb | head
180.94.88.58 8080 Afghanistan fast HTTPS High +KA
187.87.155.2 8080 Brazil fast HTTPS High +KA
120.132.132.119 8080 China medium HTTPS High +KA
210.211.109.244 8081 Viet Nam fast HTTP Low
216.244.71.143 3128 United States medium HTTPS High +KA
190.237.224.22 8080 Peru slow HTTPS High +KA
@martincik
martincik / gist:1183042
Created August 31, 2011 07:59
MBank.cz - Transactions harvester
require 'nokogiri'
require 'open-uri'
require 'mechanize'
require 'logger'
class MBankHarvester
URL = "https://cz.mbank.eu/"
def initialize(login, password, logfile = nil)
127.0.0.1 - - [16/Aug/2010 16:26:17] "GET / HTTP/1.1" 302 - 0.0007
127.0.0.1 - - [16/Aug/2010 16:26:17] "GET /api HTTP/1.1" 200 2845 0.0074
127.0.0.1 - - [16/Aug/2010 16:26:17] "GET /stylesheets/compiled/screen.css HTTP/1.1" 200 21012 0.0030
127.0.0.1 - - [16/Aug/2010 16:26:17] "GET /stylesheets/compiled/print.css HTTP/1.1" 200 897 0.0013
127.0.0.1 - - [16/Aug/2010 16:26:17] "GET /stylesheets/compiled/application.css HTTP/1.1" 200 25786 0.0006
127.0.0.1 - - [16/Aug/2010 16:26:17] "GET /javascripts/jquery-1.4.2.min.js HTTP/1.1" 200 72174 0.0012
127.0.0.1 - - [16/Aug/2010 16:26:17] "GET /javascripts/application.js HTTP/1.1" 200 787 0.0013
127.0.0.1 - - [16/Aug/2010 16:26:17] "GET /images/logo-wide.png HTTP/1.1" 200 8333 0.0033
127.0.0.1 - - [16/Aug/2010 16:26:17] "GET /images/topbar-bg.png HTTP/1.1" 200 72084 0.0009
127.0.0.1 - - [16/Aug/2010 16:26:17] "GET /favicon.ico HTTP/1.1" 200 - 0.0006