Skip to content

Instantly share code, notes, and snippets.

View davidroyer's full-sized avatar

David Royer davidroyer

View GitHub Profile
// import { HttpLink } from 'apollo-link-http'
// import { InMemoryCache } from 'apollo-cache-inmemory'
import { ApolloLink } from 'apollo-link'
import { HttpLink } from 'apollo-link-http'
import { InMemoryCache } from 'apollo-cache-inmemory'
const GRAPHCMS_API = 'https://api.graphcms.com/simple/v1/myBlog'
export default (ctx) => {
const httpLink = new HttpLink({ uri: GRAPHCMS_API })
@davidroyer
davidroyer / remove-node_modules
Created June 12, 2018 20:48 — forked from cassidoo/remove-node_modules
Remove node_modules from git
Add to .gitignore file
node_modules
Then call:
git rm -r --cached node_modules
git commit -m "Remove node_modules now that they're ignored!"
git push origin master
@davidroyer
davidroyer / gist:cf90de4890c23183115ec738d8b78fd7
Created June 16, 2018 04:39 — forked from davidhemphill/gist:5188894
How to do a Git clone without the .git directory
// Clone the repo
git clone --depth=1 git://someserver/somerepo dirformynewrepo
// Remove the .git directory
rm -rf !$/.git
@davidroyer
davidroyer / handleRemoteDirectories
Created June 30, 2018 15:44
Removes directories that are on remote even though they are being ignore locally
git rm -r --cached dir1 dir2
@davidroyer
davidroyer / cloudSettings
Last active December 17, 2019 01:18
Visual Studio Code Settings Sync Gist
{"lastUpload":"2019-12-17T01:18:41.248Z","extensionVersion":"v3.4.3"}
var getParams = function (url) {
var params = {};
var parser = document.createElement('a');
parser.href = url;
var query = parser.search.substring(1);
var vars = query.split('&');
for (var i = 0; i < vars.length; i++) {
var pair = vars[i].split('=');
params[pair[0]] = decodeURIComponent(pair[1]);
}
/**
* Replaces hyphens with spaces. (only hyphens between word chars)
*/
function unhyphenate(str){
return str.replace(/(\w)(-)(\w)/g, '$1 $3');
}
export const toTitleCase = function (str) {
str = str.toLowerCase().split(' ');
import slugify from "slugify";
export const slugifyText = str =>
slugify(str, { replacement: "-", lower: true, remove: /[$*_+~.()'"!\-:@]/g });
export const uniqueArray = originalArray => [...new Set(originalArray)];
export const getPostsFromTag = (posts, tag) =>
posts.filter(post => post.tags.map(tag => slugifyText(tag)).includes(tag));
@davidroyer
davidroyer / product-select-reconfigure.css
Last active February 25, 2019 13:07
For Advancement Courses
.productAttributeConfigurablePickListSet div.selector.HIDE-ME {
display: none !important;
}
/*
Creates space for labels that need to be injected
*/
.productOptionViewSelect {
margin-top: 40px;
export const uniqueArray = originalArray => [...new Set(originalArray)]
export function slugify(textToSlugify) {
return textToSlugify
.toLowerCase()
.replace(/[^\w\s-]/g, '') // remove non-word [a-z0-9_], non-whitespace, non-hyphen characters
.replace(/[\s_-]+/g, '-') // swap any length of whitespace, underscore, hyphen characters with a single -
.replace(/^-+|-+$/g, '') // remove leading, trailing -
}