@pluginjs/classes
Advanced tools
Comparing version 0.5.0 to 0.5.1
import { curry } from '@pluginjs/utils'; | ||
const isElement = el => el instanceof Element; | ||
const curryWith = (fn, enSureFunction, args = []) => (...subArgs) => { | ||
const index = subArgs.findIndex(enSureFunction); | ||
if (index >= 0) { | ||
@@ -11,2 +11,3 @@ const collect = args.concat(...subArgs.slice(0, index + 1)); | ||
} | ||
const collect = args.concat(...subArgs); | ||
@@ -17,5 +18,4 @@ return curryWith(fn, enSureFunction, collect); | ||
// last:: [a] -> a | ||
const last = arr => arr.slice(-1)[0]; | ||
const last = arr => arr.slice(-1)[0]; // head :: [a] -> a | ||
// init :: [a] -> [a] | ||
const init = arr => arr.slice(0, -1); | ||
@@ -40,21 +40,15 @@ | ||
return element; | ||
}); | ||
// compose( | ||
}); // compose( | ||
// append(parent), | ||
// addClass('foo') | ||
// )(el) | ||
// compose(append(parent), addClass('foo'), ...) | ||
// let c = append(parent).addClass('foo').fn$fn, fn | ||
// let el = document.createElement('div') | ||
// |> addClass('foo') | ||
// |> append(parent) | ||
// addclass() | ||
// .remove() | ||
// .append() | ||
// addClass(el, ...args) | ||
// addClass(...args, el) | ||
@@ -61,0 +55,0 @@ // addClass('foo','bar') |
@@ -1,91 +0,62 @@ | ||
(function (global, factory) { | ||
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@pluginjs/utils')) : | ||
typeof define === 'function' && define.amd ? define(['exports', '@pluginjs/utils'], factory) : | ||
(factory((global['@pluginjs/classes'] = {}),global['@pluginjs/utils'])); | ||
}(this, (function (exports,utils) { 'use strict'; | ||
'use strict'; | ||
var toConsumableArray = function (arr) { | ||
if (Array.isArray(arr)) { | ||
for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) arr2[i] = arr[i]; | ||
Object.defineProperty(exports, '__esModule', { value: true }); | ||
return arr2; | ||
} else { | ||
return Array.from(arr); | ||
} | ||
}; | ||
var utils = require('@pluginjs/utils'); | ||
var isElement = function isElement(el) { | ||
return el instanceof Element; | ||
}; | ||
const isElement = el => el instanceof Element; | ||
const curryWith = (fn, enSureFunction, args = []) => (...subArgs) => { | ||
const index = subArgs.findIndex(enSureFunction); | ||
var curryWith = function curryWith(fn, enSureFunction) { | ||
var args = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : []; | ||
return function () { | ||
for (var _len = arguments.length, subArgs = Array(_len), _key = 0; _key < _len; _key++) { | ||
subArgs[_key] = arguments[_key]; | ||
} | ||
if (index >= 0) { | ||
const collect = args.concat(...subArgs.slice(0, index + 1)); | ||
return fn(...collect); | ||
} | ||
var index = subArgs.findIndex(enSureFunction); | ||
if (index >= 0) { | ||
var _collect = args.concat.apply(args, toConsumableArray(subArgs.slice(0, index + 1))); | ||
return fn.apply(undefined, toConsumableArray(_collect)); | ||
} | ||
var collect = args.concat.apply(args, subArgs); | ||
return curryWith(fn, enSureFunction, collect); | ||
}; | ||
}; | ||
const collect = args.concat(...subArgs); | ||
return curryWith(fn, enSureFunction, collect); | ||
}; | ||
// last:: [a] -> a | ||
var last = function last(arr) { | ||
return arr.slice(-1)[0]; | ||
}; | ||
// last:: [a] -> a | ||
const last = arr => arr.slice(-1)[0]; // head :: [a] -> a | ||
// init :: [a] -> [a] | ||
var init = function init(arr) { | ||
return arr.slice(0, -1); | ||
}; | ||
const init = arr => arr.slice(0, -1); | ||
var hasClass = utils.curry(function (className, element) { | ||
return element.classList.contains(className); | ||
}); | ||
var indexOfClass = utils.curry(function (className, element) { | ||
return element.classList.item(className); | ||
}); | ||
var addClass = curryWith(function () { | ||
var _element$classList; | ||
const hasClass = utils.curry((className, element) => element.classList.contains(className)); | ||
const indexOfClass = utils.curry((className, element) => element.classList.item(className)); | ||
const addClass = curryWith((...args) => { | ||
const classes = init(args); | ||
const element = last(args); | ||
element.classList.add(...classes); | ||
return element; | ||
}, isElement); | ||
const removeClass = curryWith((...args) => { | ||
const classes = init(args); | ||
const element = last(args); | ||
element.classList.remove(...classes); | ||
return element; | ||
}, isElement); | ||
const toggleClass = utils.curry((className, element) => { | ||
element.classList.toggle(className); | ||
return element; | ||
}); // compose( | ||
// append(parent), | ||
// addClass('foo') | ||
// )(el) | ||
// compose(append(parent), addClass('foo'), ...) | ||
// let c = append(parent).addClass('foo').fn$fn, fn | ||
// let el = document.createElement('div') | ||
// |> addClass('foo') | ||
// |> append(parent) | ||
// addclass() | ||
// .remove() | ||
// .append() | ||
// addClass(el, ...args) | ||
// addClass(...args, el) | ||
// addClass('foo','bar') | ||
for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) { | ||
args[_key] = arguments[_key]; | ||
} | ||
var classes = init(args); | ||
var element = last(args); | ||
(_element$classList = element.classList).add.apply(_element$classList, toConsumableArray(classes)); | ||
return element; | ||
}, isElement); | ||
var removeClass = curryWith(function () { | ||
var _element$classList2; | ||
for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) { | ||
args[_key2] = arguments[_key2]; | ||
} | ||
var classes = init(args); | ||
var element = last(args); | ||
(_element$classList2 = element.classList).remove.apply(_element$classList2, toConsumableArray(classes)); | ||
return element; | ||
}, isElement); | ||
var toggleClass = utils.curry(function (className, element) { | ||
element.classList.toggle(className); | ||
return element; | ||
}); | ||
exports.hasClass = hasClass; | ||
exports.indexOfClass = indexOfClass; | ||
exports.addClass = addClass; | ||
exports.removeClass = removeClass; | ||
exports.toggleClass = toggleClass; | ||
Object.defineProperty(exports, '__esModule', { value: true }); | ||
}))); | ||
exports.hasClass = hasClass; | ||
exports.indexOfClass = indexOfClass; | ||
exports.addClass = addClass; | ||
exports.removeClass = removeClass; | ||
exports.toggleClass = toggleClass; |
{ | ||
"name": "@pluginjs/classes", | ||
"main": "dist/classes.js", | ||
"dev-main": "src/main.js", | ||
"main": "dist/classes.umd.js", | ||
"source": "src/main.js", | ||
"module": "dist/classes.esm.js", | ||
@@ -9,7 +9,7 @@ "dependencies": { | ||
}, | ||
"version": "0.5.0", | ||
"version": "0.5.1", | ||
"description": "A flexible modern classes js plugin.", | ||
"author": "Creation Studio Limited", | ||
"homepage": "https://github.com/pluginjs/plugin.js", | ||
"license": "GPL-v3", | ||
"license": "GPL-3.0", | ||
"files": [ | ||
@@ -30,3 +30,28 @@ "dist", | ||
}, | ||
"category": "utils" | ||
"category": "utils", | ||
"scripts": { | ||
"build": "plugin build", | ||
"build:js": "plugin script build-js", | ||
"build:scss": "plugin script build-scss", | ||
"test": "jest", | ||
"build:md": "plugin script build-md" | ||
}, | ||
"cjs": "dist/classes.cjs.js", | ||
"jest": { | ||
"setupTestFrameworkScriptFile": "jest-extended", | ||
"verbose": true, | ||
"testPathIgnorePatterns": [ | ||
"fixtures" | ||
] | ||
}, | ||
"devDependencies": { | ||
"@pluginjs/cli": "^0.5.18", | ||
"babel-jest": "^23.0.1", | ||
"jest": "^23.1.0", | ||
"jest-extended": "^0.7.2", | ||
"rollup": "^0.59.2", | ||
"rollup-plugin-babel": "^4.0.0-beta.4", | ||
"rollup-plugin-commonjs": "^9.1.3", | ||
"rollup-plugin-node-resolve": "^3.3.0" | ||
} | ||
} |
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
Found 1 instance in 1 package
No README
QualityPackage does not have a README. This may indicate a failed publish or a low quality package.
Found 1 instance in 1 package
Minified code
QualityThis package contains minified code. This may be harmless in some cases where minified code is included in packaged libraries, however packages on npm should not minify code.
Found 1 instance in 1 package
13621
9
308
1
1
35
8
1