Skip to content

Instantly share code, notes, and snippets.

View kensnyder's full-sized avatar

Ken Snyder kensnyder

View GitHub Profile
import React from 'react';
import PropTypes from 'prop-types';
/**
* A box with an animated dashed border, i.e. marching ants
*/
export default function MarchingAnts({
width,
height,
animationDuration = 300,
.adg3 .ghx-column h2 {
text-transform: none;
font-size: 13px;
color: #2e2e2e
}
.adg3 .ghx-column-headers .ghx-qty {
background-color: #18cb3b;
color: white;
width: 20px;
height: 20px;
Benchmarking against 10 iteration(s):
--- 1.2MB jpg file ---
0.298s - data uri base64_encode()
0.701s - data uri urlencode()
0.702s - data uri rawurlencode()
0.045s - temp file
--- 2.5MB jpg file ---
0.597s - data uri base64_encode()
@kensnyder
kensnyder / 0_reuse_code.js
Created November 12, 2015 16:33
Here are some things you can do with Gists in GistBox.
// Use Gists to store code you would like to remember later on
console.log(window); // log the "window" object to the console
@kensnyder
kensnyder / 1) webpack.config.js
Created October 20, 2015 23:30
Using ng-annotate loader with Webpack + Angular 1.x + ES6 classes + Babel
module.exports = {
devtool: 'sourcemap',
context: __dirname,
entry: './entry.js',
output: {
filename: './dist/bundle.js'
},
module: {
loaders: [
// run babel first then ng-annotate
/**
* Given a DOM node, clean children so the node is suitable for pasting in a rich text area
* @param {HTMLElement} root The DOM node to clean
* @param {Object} [options] Cleaning options
* @param {object} [options.classMap] A map of tagName to CSS class for assigning classes
* @returns {undefined}
*/
function cleanElementChildren(root, options) {
// options may or may not be given
options = options || {};
/*
# Usage in html template:
"xxx | nl2br"
<div ng-bind-html=" YourString | nl2br "></div>
or:
@kensnyder
kensnyder / output.php
Created April 23, 2014 15:38
Sending a file
<?php
function sendFile($path, $name, $mime) {
$fp = @fopen($path, 'rb');
if (!$fp) {
// error opening file; it may not exist or be readable
header("HTTP/1.0 404 Not Found");
exit(0);
}
$size = filesize($path);
@kensnyder
kensnyder / package.json
Last active November 22, 2023 17:21
Minimal package.json file
{
"name": "",
"description": "",
"version": "0.1.0",
"dependencies": {},
"devDependencies": {}
}
<?php
$foo = castObject($bar, '\\My\\FooObject');
function castObject($obj, $toClass) {
if (is_callable("$toClass::__cast")) {
return call_user_func("$toClass::__cast", $obj);
}
if ($obj instanceof $toClass) {
return $obj;