Skip to content

Instantly share code, notes, and snippets.

@ralphvirtucio
ralphvirtucio / reset.css
Created November 7, 2022 08:46 — forked from Asjas/reset.css
Modern CSS Reset - Andy Bell
// https://piccalil.li/blog/a-modern-css-reset
/* Box sizing rules */
*,
*::before,
*::after {
box-sizing: border-box;
}
/* Remove default margin */
"editor.codeActionsOnSave": { "source.fixAll.eslint": true },
"editor.formatOnSave": true,
"eslint.alwaysShowStatus": true,
"files.autoSave": "onFocusChange"
{
"env": {
"browser": true,
"es2021": true,
"jest": true
},
"extends": [
"eslint:recommended",
"plugin:react/recommended",
"plugin:prettier/recommended"
@ralphvirtucio
ralphvirtucio / filterArray.js
Created February 25, 2021 01:32 — forked from jherax/arrayFilterFactory.1.ts
Filters an array of objects with multiple match-criteria.
/**
* Filters an array of objects using custom predicates.
*
* @param {Array} array: the array to filter
* @param {Object} filters: an object with the filter criteria
* @return {Array}
*/
function filterArray(array, filters) {
const filterKeys = Object.keys(filters);
return array.filter(item => {
@ralphvirtucio
ralphvirtucio / multiFilter.js
Created February 25, 2021 01:14 — forked from stomg7969/multiFilter.js
FILTER BLOG - universal filter
// **************** UNIVERSAL Filter ****************
allFilterClickListener = (e, filterProp) => {
console.log("FILTER clicked", e.target.dataset.name);
const name = e.target.dataset.name;
this.setState(prevState => ({
passingTags: {
...prevState.passingTags,
[filterProp]: {
...prevState.passingTags[filterProp],
[name]: !prevState.passingTags[filterProp][name]