Skip to content

Instantly share code, notes, and snippets.

View DesignByOnyx's full-sized avatar

Ryan Wheale DesignByOnyx

View GitHub Profile
function() {
var e, t, n, r, i, o, a = arguments[0] || {}, s = 1, u = arguments.length, l = !1;
for ("boolean" == typeof a && (l = a, a = arguments[s] || {}, s++), "object" == typeof a || v(a) || (a = {}), s === u && (a = this, s--); s < u; s++)
if (null != (e = arguments[s]))
for (t in e) r = e[t], "__proto__" !== t && a !== r && (l && r && (ce.isPlainObject(r) || (i = Array.isArray(r))) ? (n = a[t], o = i && !Array.isArray(n) ? [] : i || ce.isPlainObject(n) ? n : {}, i = !1, a[t] = ce.extend(l, o, r)) : void 0 !== r && (a[t] = r));
return a
}
@DesignByOnyx
DesignByOnyx / bootstrap-env-vars-test.ts
Last active January 16, 2024 02:15
Helper for testing different environment variables for individual tests
const bootstrapEnvVarsTests = <ModuleType>(modulePath: string) => {
const OLD_ENV = process.env;
beforeEach(() => {
// this allows us to reassign env vars for individual tests
jest.resetModules();
process.env = { ...OLD_ENV };
});
afterAll(() => {
process.env = OLD_ENV;
const { tags, ...blogPost } = {
"id": 1, // Notice the blog post has an "id" since we are updating an existing post
"title": "My first blog post",
"body": "...",
"tags": [
{ "id": 1, "text": "sequelize" }, // the existing tag has an "id"
{ "text": "postgres" } // the new tag does not have an "id"
]
};
const { tags, ...blogPost } = {
"title": "My second blog post",
"body": "...",
"tags": [
{ "id": 1, "text": "sequelize" }, // the existing tag has an "id"
{ "text": "database" } // the new tag does not have an "id"
]
};
const newPost = db.create('blog_posts', blogPost);
const { tags, ...blogPost } = {
"title": "My first blog post",
"body": "...",
"tags": [
{ "text": "sequelize" },
{ "text": "feathersjs" },
{ "text": "many-to-many" }
]
};
{
"title": "My first blog post",
"body": "...",
"tags": [
{ "text": "sequelize" },
{ "text": "feathersjs" },
{ "text": "many-to-many" }
]
}
@DesignByOnyx
DesignByOnyx / github-auto-link-yaml-refs-bookmarklet.js
Last active September 10, 2019 01:16
Bookmarklet to automatically turn YAML $refs into hyperlinks.

Keybase proof

I hereby claim:

  • I am DesignByOnyx on github.
  • I am ryanwheale (https://keybase.io/ryanwheale) on keybase.
  • I have a public key whose fingerprint is 0DAA EB7B A5F5 F7AB 35F4 7593 818E 802D A122 192F

To claim this, I am signing this object:

@DesignByOnyx
DesignByOnyx / postgis-geojson-liaison.js
Created November 9, 2018 00:47
Helpful utility for converting postgis data into GeoJSON as it comes out of the db, and vice versa.
var wkx = require('wkx')
var pg = require('pg')
var pgUtil = require('pg/lib/utils')
const geoParser = {
init(knex){
// 1. Convert postgis data coming out of the db into geoJSON
// Every postgres installation will have different oids for postgis geo types.
knex
.raw('SELECT oid, typname AS name FROM pg_type WHERE typname IN (\'geography\', \'geometry\');')
@DesignByOnyx
DesignByOnyx / ylem-model.md
Last active May 25, 2018 19:30
This is an attempt to describe a model layer for ylem
  1. Define your models with a transport (this is just sugar for can-connect)

    import { Model,  transport } from 'ylem-model';
    
    const Person = Model({
      id: { type: 'number', identity: true },
      name: { type: 'string' },
      email: { type: 'string' },
      age: { type: 'number' },