Skip to content

Instantly share code, notes, and snippets.

@timelyportfolio
Forked from mbostock/.block
Last active December 30, 2015 04:19
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save timelyportfolio/7774986 to your computer and use it in GitHub Desktop.
Save timelyportfolio/7774986 to your computer and use it in GitHub Desktop.

Quick fork of https://gist.github.com/mbostock/5925375 to see if OriDomi plays nicely with d3.js. Please note the original source from Mike Bostock for any praise or admiration. All errors and mistakes please attribute to me.

original Readme.md

This variation of the unemployment choropleth uses TopoJSON 1.2’s new --projection argument to created projected TopoJSON. This example also uses the -e argument to join the county geometries with a TSV file of unemployment rates, simplifying the implementation and eliminating the need to load multiple data files.

<!DOCTYPE html>
<meta charset="utf-8">
<style>
.counties {
fill: none;
}
.states {
fill: none;
stroke: #fff;
stroke-linejoin: round;
}
.q0-9 { fill:rgb(247,251,255); }
.q1-9 { fill:rgb(222,235,247); }
.q2-9 { fill:rgb(198,219,239); }
.q3-9 { fill:rgb(158,202,225); }
.q4-9 { fill:rgb(107,174,214); }
.q5-9 { fill:rgb(66,146,198); }
.q6-9 { fill:rgb(33,113,181); }
.q7-9 { fill:rgb(8,81,156); }
.q8-9 { fill:rgb(8,48,107); }
</style>
<body>
<script src="http://d3js.org/d3.v3.min.js"></script>
<script src="http://d3js.org/topojson.v1.min.js"></script>
<script src="./oridomi.js"></script>
<div id="container" style="width:960px">
<div id="testtext" style="position: absolute;top: 0px;left: 0px;pointer-events: none;font-size: 100px;">
<p>OriDomi + d3</p>
</div>
</div>
<script>
var width = 960,
height = 500;
var quantize = d3.scale.quantize()
.domain([0, .15])
.range(d3.range(9).map(function (i) { return "q" + i + "-9"; }));
var path = d3.geo.path()
.projection(null);
d3.select("#container").insert("div","#testtext")
.attr("class", "d3oridomi");
var svg = d3.select(".d3oridomi").append("svg")
.attr("width", width)
.attr("height", height);
var folded;
d3.json("us.json", function (error, us) {
svg.append("g")
.attr("class", "counties")
.selectAll("path")
.data(topojson.feature(us, us.objects.counties).features)
.enter().append("path")
.attr("class", function (d) { return quantize(d.properties.rate); })
.attr("d", path);
svg.append("path")
.datum(topojson.mesh(us, us.objects.states, function (a, b) { return a !== b; }))
.attr("class", "states")
.attr("d", path);
folded = makeOriDomi();
folded.accordion(75).reset().twist(30).reset().fracture(50).reset().accordion(75);
});
function makeOriDomi() {
var createdOriDomi = new OriDomi(".d3oridomi", { vPanels: 10, shading: 'hard' })
return createdOriDomi;
};
</script>
</body>
// Generated by CoffeeScript 1.6.3
(function() {
'use strict';
var $, OriDomi, addStyle, anchorList, anchorListH, anchorListV, baseName, capitalize, cloneEl, createEl, css, defaults, defer, elClasses, getGradient, hideEl, isSupported, k, noOp, prefixList, prep, showEl, styleBuffer, supportWarning, testEl, testProp, v, _ref,
__bind = function(fn, me){ return function(){ return fn.apply(me, arguments); }; },
__indexOf = [].indexOf || function(item) { for (var i = 0, l = this.length; i < l; i++) { if (i in this && this[i] === item) return i; } return -1; },
__slice = [].slice;
isSupported = true;
supportWarning = function(prop) {
if (typeof console !== "undefined" && console !== null) {
console.warn("OriDomi: Missing support for `" + prop + "`.");
}
return isSupported = false;
};
testProp = function(prop) {
var full, prefix, _i, _len;
for (_i = 0, _len = prefixList.length; _i < _len; _i++) {
prefix = prefixList[_i];
if (testEl.style[(full = prefix + capitalize(prop))] != null) {
return full;
}
}
if (testEl.style[prop] != null) {
return prop;
}
return false;
};
addStyle = function(selector, rules) {
var prop, style, val;
style = "." + selector + "{";
for (prop in rules) {
val = rules[prop];
if (prop in css) {
prop = css[prop];
if (prop.match(/^(webkit|moz|ms)/i)) {
prop = '-' + prop;
}
}
style += "" + (prop.replace(/([a-z])([A-Z])/g, '$1-$2').toLowerCase()) + ":" + val + ";";
}
return styleBuffer += style + '}';
};
getGradient = function(anchor) {
return "" + css.gradientProp + "(" + anchor + ", rgba(0, 0, 0, .5) 0%, rgba(255, 255, 255, .35) 100%)";
};
capitalize = function(s) {
return s[0].toUpperCase() + s.slice(1);
};
createEl = function(className) {
var el;
el = document.createElement('div');
el.className = elClasses[className];
return el;
};
cloneEl = function(parent, deep, className) {
var el;
el = parent.cloneNode(deep);
el.classList.add(elClasses[className]);
return el;
};
hideEl = function(el) {
return el.style[css.transform] = 'translate3d(-99999px, 0, 0)';
};
showEl = function(el) {
return el.style[css.transform] = 'translate3d(0, 0, 0)';
};
prep = function(fn) {
return function() {
var a0, a1, a2, anchor, angle, opt;
if (this._touchStarted) {
return fn.apply(this, arguments);
} else {
a0 = arguments[0], a1 = arguments[1], a2 = arguments[2];
opt = {};
angle = anchor = null;
switch (fn.length) {
case 1:
opt.callback = a0;
if (!this.isFoldedUp) {
return typeof opt.callback === "function" ? opt.callback() : void 0;
}
break;
case 2:
if (typeof a0 === 'function') {
opt.callback = a0;
} else {
anchor = a0;
opt.callback = a1;
}
break;
case 3:
angle = a0;
if (arguments.length === 2) {
if (typeof a1 === 'object') {
opt = a1;
} else if (typeof a1 === 'function') {
opt.callback = a1;
} else {
anchor = a1;
}
} else if (arguments.length === 3) {
anchor = a1;
if (typeof a2 === 'object') {
opt = a2;
} else if (typeof a2 === 'function') {
opt.callback = a2;
}
}
}
if (angle == null) {
angle = this._lastOp.angle || 0;
}
anchor || (anchor = this._lastOp.anchor);
this._queue.push([fn, this._normalizeAngle(angle), this._getLonghandAnchor(anchor), opt]);
this._step();
return this;
}
};
};
defer = function(fn) {
return setTimeout(fn, 0);
};
noOp = function() {};
$ = ((_ref = window.jQuery || window.$) != null ? _ref.data : void 0) ? window.$ : null;
anchorList = ['left', 'right', 'top', 'bottom'];
anchorListV = anchorList.slice(0, 2);
anchorListH = anchorList.slice(2);
testEl = document.createElement('div');
styleBuffer = '';
prefixList = ['Webkit', 'Moz', 'ms'];
baseName = 'oridomi';
elClasses = {
active: 'active',
clone: 'clone',
holder: 'holder',
stage: 'stage',
stageLeft: 'stage-left',
stageRight: 'stage-right',
stageTop: 'stage-top',
stageBottom: 'stage-bottom',
content: 'content',
mask: 'mask',
maskH: 'mask-h',
maskV: 'mask-v',
panel: 'panel',
panelH: 'panel-h',
panelV: 'panel-v',
shader: 'shader',
shaderLeft: 'shader-left',
shaderRight: 'shader-right',
shaderTop: 'shader-top',
shaderBottom: 'shader-bottom'
};
for (k in elClasses) {
v = elClasses[k];
elClasses[k] = "" + baseName + "-" + v;
}
css = new function() {
var key, _i, _len, _ref1;
_ref1 = ['transform', 'transformOrigin', 'transformStyle', 'transitionProperty', 'transitionDuration', 'transitionDelay', 'transitionTimingFunction', 'perspective', 'perspectiveOrigin', 'backfaceVisibility', 'boxSizing', 'mask'];
for (_i = 0, _len = _ref1.length; _i < _len; _i++) {
key = _ref1[_i];
this[key] = key;
}
return this;
};
(function() {
var anchor, key, p3d, styleEl, value, _i, _len, _ref1, _ref2;
for (key in css) {
value = css[key];
css[key] = testProp(value);
if (!css[key]) {
return supportWarning(value);
}
}
p3d = 'preserve-3d';
testEl.style[css.transformStyle] = p3d;
if (testEl.style[css.transformStyle] !== p3d) {
return supportWarning(p3d);
}
css.gradientProp = (function() {
var hyphenated, prefix, _i, _len;
for (_i = 0, _len = prefixList.length; _i < _len; _i++) {
prefix = prefixList[_i];
hyphenated = "-" + (prefix.toLowerCase()) + "-linear-gradient";
testEl.style.backgroundImage = "" + hyphenated + "(left, #000, #fff)";
if (testEl.style.backgroundImage.indexOf('gradient') !== -1) {
return hyphenated;
}
}
return 'linear-gradient';
})();
_ref1 = (function() {
var grabValue, plainGrab, prefix, _i, _len;
for (_i = 0, _len = prefixList.length; _i < _len; _i++) {
prefix = prefixList[_i];
plainGrab = 'grab';
testEl.style.cursor = (grabValue = "-" + (prefix.toLowerCase()) + "-" + plainGrab);
if (testEl.style.cursor === grabValue) {
return [grabValue, "-" + (prefix.toLowerCase()) + "-grabbing"];
}
}
testEl.style.cursor = plainGrab;
if (testEl.style.cursor === plainGrab) {
return [plainGrab, 'grabbing'];
} else {
return ['move', 'move'];
}
})(), css.grab = _ref1[0], css.grabbing = _ref1[1];
css.transformProp = (function() {
var prefix;
if (prefix = css.transform.match(/(\w+)Transform/i)) {
return "-" + (prefix[1].toLowerCase()) + "-transform";
} else {
return 'transform';
}
})();
css.transitionEnd = (function() {
switch (css.transitionProperty.toLowerCase()) {
case 'transitionproperty':
return 'transitionEnd';
case 'webkittransitionproperty':
return 'webkitTransitionEnd';
case 'moztransitionproperty':
return 'transitionend';
case 'mstransitionproperty':
return 'msTransitionEnd';
}
})();
addStyle(elClasses.active, {
backgroundColor: 'transparent !important',
backgroundImage: 'none !important',
boxSizing: 'border-box !important',
border: 'none !important',
outline: 'none !important',
padding: '0 !important',
position: 'relative',
transformStyle: p3d + ' !important',
mask: 'none !important'
});
addStyle(elClasses.clone, {
margin: '0 !important',
boxSizing: 'border-box !important',
overflow: 'hidden !important',
display: 'block !important'
});
addStyle(elClasses.holder, {
width: '100%',
position: 'absolute',
top: '0',
bottom: '0',
transformStyle: p3d
});
addStyle(elClasses.stage, {
width: '100%',
height: '100%',
position: 'absolute',
transform: 'translate3d(-9999px, 0, 0)',
margin: '0',
padding: '0',
transformStyle: p3d
});
_ref2 = {
Left: '0% 50%',
Right: '100% 50%',
Top: '50% 0%',
Bottom: '50% 100%'
};
for (k in _ref2) {
v = _ref2[k];
addStyle(elClasses['stage' + k], {
perspectiveOrigin: v
});
}
addStyle(elClasses.shader, {
width: '100%',
height: '100%',
position: 'absolute',
opacity: '0',
top: '0',
left: '0',
pointerEvents: 'none',
transitionProperty: 'opacity'
});
for (_i = 0, _len = anchorList.length; _i < _len; _i++) {
anchor = anchorList[_i];
addStyle(elClasses['shader' + capitalize(anchor)], {
background: getGradient(anchor)
});
}
addStyle(elClasses.content, {
margin: '0 !important',
position: 'relative !important',
float: 'none !important',
boxSizing: 'border-box !important',
overflow: 'hidden !important'
});
addStyle(elClasses.mask, {
width: '100%',
height: '100%',
position: 'absolute',
overflow: 'hidden',
transform: 'translate3d(0, 0, 0)'
});
addStyle(elClasses.panel, {
width: '100%',
height: '100%',
padding: '0',
position: 'relative',
transitionProperty: css.transformProp,
transformOrigin: 'left',
transformStyle: p3d
});
addStyle(elClasses.panelH, {
transformOrigin: 'top'
});
addStyle("" + elClasses.stageRight + " ." + elClasses.panel, {
transformOrigin: 'right'
});
addStyle("" + elClasses.stageBottom + " ." + elClasses.panel, {
transformOrigin: 'bottom'
});
styleEl = document.createElement('style');
styleEl.type = 'text/css';
if (styleEl.styleSheet) {
styleEl.styleSheet.cssText = styleBuffer;
} else {
styleEl.appendChild(document.createTextNode(styleBuffer));
}
return document.head.appendChild(styleEl);
})();
defaults = {
vPanels: 3,
hPanels: 3,
perspective: 1000,
shading: 'hard',
speed: 700,
maxAngle: 90,
ripple: 0,
oriDomiClass: 'oridomi',
shadingIntensity: 1,
easingMethod: '',
touchEnabled: true,
touchSensitivity: .25,
touchStartCallback: noOp,
touchMoveCallback: noOp,
touchEndCallback: noOp
};
OriDomi = (function() {
function OriDomi(el, options) {
var a, anchor, anchorSet, axis, classSuffix, content, contentHolder, count, i, mask, maskProto, metric, n, panel, panelN, panelProto, percent, proto, shaderProto, shaderProtos, side, stageProto, _i, _j, _k, _l, _len, _len1, _len2, _len3, _len4, _len5, _len6, _len7, _m, _n, _o, _p, _q, _ref1;
this.el = el;
if (options == null) {
options = {};
}
this._onMouseOut = __bind(this._onMouseOut, this);
this._onTouchLeave = __bind(this._onTouchLeave, this);
this._onTouchEnd = __bind(this._onTouchEnd, this);
this._onTouchMove = __bind(this._onTouchMove, this);
this._onTouchStart = __bind(this._onTouchStart, this);
this._stageReset = __bind(this._stageReset, this);
this._conclude = __bind(this._conclude, this);
this._onTransitionEnd = __bind(this._onTransitionEnd, this);
this._step = __bind(this._step, this);
if (!isSupported) {
return;
}
if (!(this instanceof OriDomi)) {
return (function(func, args, ctor) {
ctor.prototype = func.prototype;
var child = new ctor, result = func.apply(child, args);
return Object(result) === result ? result : child;
})(OriDomi, arguments, function(){});
}
if (typeof this.el === 'string') {
this.el = document.querySelector(this.el);
}
if (!(this.el && this.el.nodeType === 1)) {
if (typeof console !== "undefined" && console !== null) {
console.warn('OriDomi: First argument must be a DOM element');
}
return;
}
this._config = new function() {
for (k in defaults) {
v = defaults[k];
if (options[k] != null) {
this[k] = options[k];
} else {
this[k] = v;
}
}
return this;
};
this._config.ripple = Number(this._config.ripple);
this._queue = [];
this._panels = {};
this._stages = {};
this._lastOp = {
anchor: anchorList[0]
};
this._shading = this._config.shading;
if (this._shading === true) {
this._shading = 'hard';
}
if (this._shading) {
this._shaders = {};
shaderProtos = {};
shaderProto = createEl('shader');
shaderProto.style[css.transitionDuration] = this._config.speed + 'ms';
shaderProto.style[css.transitionTimingFunction] = this._config.easingMethod;
}
stageProto = createEl('stage');
stageProto.style[css.perspective] = this._config.perspective + 'px';
for (_i = 0, _len = anchorList.length; _i < _len; _i++) {
anchor = anchorList[_i];
this._panels[anchor] = [];
this._stages[anchor] = cloneEl(stageProto, false, 'stage' + capitalize(anchor));
if (this._shading) {
this._shaders[anchor] = {};
if (__indexOf.call(anchorListV, anchor) >= 0) {
for (_j = 0, _len1 = anchorListV.length; _j < _len1; _j++) {
side = anchorListV[_j];
this._shaders[anchor][side] = [];
}
} else {
for (_k = 0, _len2 = anchorListH.length; _k < _len2; _k++) {
side = anchorListH[_k];
this._shaders[anchor][side] = [];
}
}
shaderProtos[anchor] = cloneEl(shaderProto, false, 'shader' + capitalize(anchor));
}
}
contentHolder = cloneEl(this.el, true, 'content');
maskProto = createEl('mask');
maskProto.appendChild(contentHolder);
panelProto = createEl('panel');
panelProto.style[css.transitionDuration] = this._config.speed + 'ms';
panelProto.style[css.transitionTimingFunction] = this._config.easingMethod;
_ref1 = ['x', 'y'];
for (_l = 0, _len3 = _ref1.length; _l < _len3; _l++) {
axis = _ref1[_l];
if (axis === 'x') {
anchorSet = anchorListV;
count = this._config.vPanels;
metric = 'width';
classSuffix = 'V';
} else {
anchorSet = anchorListH;
count = this._config.hPanels;
metric = 'height';
classSuffix = 'H';
}
percent = 100 / count;
mask = cloneEl(maskProto, true, 'mask' + classSuffix);
content = mask.children[0];
content.style.width = content.style.height = '100%';
content.style[metric] = content.style['max' + capitalize(metric)] = count * 100 + '%';
if (this._shading) {
for (_m = 0, _len4 = anchorSet.length; _m < _len4; _m++) {
anchor = anchorSet[_m];
mask.appendChild(shaderProtos[anchor]);
}
}
proto = cloneEl(panelProto, false, 'panel' + classSuffix);
proto.appendChild(mask);
for (n = _n = 0, _len5 = anchorSet.length; _n < _len5; n = ++_n) {
anchor = anchorSet[n];
for (panelN = _o = 0; 0 <= count ? _o < count : _o > count; panelN = 0 <= count ? ++_o : --_o) {
panel = proto.cloneNode(true);
if (panelN === 0) {
panel.style[metric] = percent + '%';
}
content = panel.children[0].children[0];
if (n === 0) {
content.style[anchor] = -panelN * 100 + '%';
if (panelN === 0) {
panel.style[anchor] = '0';
} else {
panel.style[anchor] = '100%';
}
} else {
content.style[anchorSet[0]] = (count - panelN - 1) * -100 + '%';
panel.style[css.origin] = anchor;
if (panelN === 0) {
panel.style[anchorSet[0]] = 100 - percent + '%';
} else {
panel.style[anchorSet[0]] = '-100%';
}
}
if (this._shading) {
for (i = _p = 0, _len6 = anchorSet.length; _p < _len6; i = ++_p) {
a = anchorSet[i];
this._shaders[anchor][a][panelN] = panel.children[0].children[i + 1];
}
}
this._panels[anchor][panelN] = panel;
if (panelN !== 0) {
this._panels[anchor][panelN - 1].appendChild(panel);
}
}
this._stages[anchor].appendChild(this._panels[anchor][0]);
}
}
this._stageHolder = createEl('holder');
for (_q = 0, _len7 = anchorList.length; _q < _len7; _q++) {
anchor = anchorList[_q];
this._stageHolder.appendChild(this._stages[anchor]);
}
if (window.getComputedStyle(this.el).position === 'absolute') {
this.el.style.position = 'absolute';
}
this.el.classList.add(elClasses.active);
showEl(this._stages.left);
this._cloneEl = cloneEl(this.el, true, 'clone');
this._cloneEl.classList.remove(elClasses.active);
hideEl(this._cloneEl);
this.el.innerHTML = '';
this.el.appendChild(this._cloneEl);
this.el.appendChild(this._stageHolder);
this.el.parentNode.style[css.transformStyle] = 'preserve-3d';
this.accordion(0);
if (this._config.ripple) {
this.setRipple(this._config.ripple);
}
if (this._config.touchEnabled) {
this.enableTouch();
}
}
OriDomi.prototype._step = function() {
var anchor, angle, fn, next, options, _ref1,
_this = this;
if (this._inTrans || !this._queue.length) {
return;
}
this._inTrans = true;
_ref1 = this._queue.shift(), fn = _ref1[0], angle = _ref1[1], anchor = _ref1[2], options = _ref1[3];
if (this.isFrozen) {
this.unfreeze();
}
next = function() {
var args;
_this._setCallback({
angle: angle,
anchor: anchor,
options: options,
fn: fn
});
args = [angle, anchor, options];
if (fn.length < 3) {
args.shift();
}
return fn.apply(_this, args);
};
if (this.isFoldedUp) {
if (fn.length === 2) {
return next();
} else {
return this._unfold(next);
}
} else if (anchor !== this._lastOp.anchor) {
return this._stageReset(anchor, next);
} else {
return next();
}
};
OriDomi.prototype._isIdenticalOperation = function(op) {
var key, _i, _len, _ref1, _ref2;
if (!this._lastOp.fn) {
return true;
}
if (this._lastOp.reset) {
return false;
}
_ref1 = ['angle', 'anchor', 'fn'];
for (_i = 0, _len = _ref1.length; _i < _len; _i++) {
key = _ref1[_i];
if (this._lastOp[key] !== op[key]) {
return false;
}
}
_ref2 = op.options;
for (k in _ref2) {
v = _ref2[k];
if (v !== this._lastOp.options[k] && k !== 'callback') {
return false;
}
}
return true;
};
OriDomi.prototype._setCallback = function(operation) {
if (this._isIdenticalOperation(operation)) {
this._conclude(operation.options.callback);
} else {
this._panels[this._lastOp.anchor][0].addEventListener(css.transitionEnd, this._onTransitionEnd, false);
}
return (this._lastOp = operation).reset = false;
};
OriDomi.prototype._onTransitionEnd = function(e) {
e.currentTarget.removeEventListener(css.transitionEnd, this._onTransitionEnd, false);
return this._conclude(this._lastOp.options.callback, e);
};
OriDomi.prototype._conclude = function(cb, event) {
var _this = this;
return defer(function() {
_this._inTrans = false;
_this._step();
return typeof cb === "function" ? cb(event, _this) : void 0;
});
};
OriDomi.prototype._transformPanel = function(el, angle, anchor, fracture) {
var translate, x, y, z;
x = y = z = 0;
switch (anchor) {
case 'left':
y = angle;
translate = 'X(-1';
break;
case 'right':
y = -angle;
translate = 'X(1';
break;
case 'top':
x = -angle;
translate = 'Y(-1';
break;
case 'bottom':
x = angle;
translate = 'Y(1';
}
if (fracture) {
x = y = z = angle;
}
return el.style[css.transform] = "rotateX(" + x + "deg)\nrotateY(" + y + "deg)\nrotateZ(" + z + "deg)\ntranslate" + translate + "px)";
};
OriDomi.prototype._normalizeAngle = function(angle) {
var max;
angle = parseFloat(angle, 10);
max = this._config.maxAngle;
if (isNaN(angle)) {
return 0;
} else if (angle > max) {
return max;
} else if (angle < -max) {
return -max;
} else {
return angle;
}
};
OriDomi.prototype._setTrans = function(duration, delay, anchor) {
var _this = this;
if (anchor == null) {
anchor = this._lastOp.anchor;
}
return this._iterate(anchor, function(panel, i, len) {
return _this._setPanelTrans.apply(_this, [anchor].concat(__slice.call(arguments), [duration], [delay]));
});
};
OriDomi.prototype._setPanelTrans = function(anchor, panel, i, len, duration, delay) {
var delayMs, shader, side, _i, _len, _ref1,
_this = this;
delayMs = (function() {
switch (delay) {
case 0:
return 0;
case 1:
return _this._config.speed / len * i;
case 2:
return _this._config.speed / len * (len - i - 1);
}
})();
panel.style[css.transitionDuration] = duration + 'ms';
panel.style[css.transitionDelay] = delayMs + 'ms';
if (this._shading) {
_ref1 = (__indexOf.call(anchorListV, anchor) >= 0 ? anchorListV : anchorListH);
for (_i = 0, _len = _ref1.length; _i < _len; _i++) {
side = _ref1[_i];
shader = this._shaders[anchor][side][i];
shader.style[css.transitionDuration] = duration + 'ms';
shader.style[css.transitionDelay] = delayMs + 'ms';
}
}
return delayMs;
};
OriDomi.prototype._setShader = function(n, anchor, angle) {
var a, abs, b, opacity;
abs = Math.abs(angle);
opacity = abs / 90 * this._config.shadingIntensity;
if (this._shading === 'hard') {
opacity *= .15;
if (this._lastOp.angle < 0) {
angle = abs;
} else {
angle = -abs;
}
} else {
opacity *= .4;
}
if (__indexOf.call(anchorListV, anchor) >= 0) {
if (angle < 0) {
a = opacity;
b = 0;
} else {
a = 0;
b = opacity;
}
this._shaders[anchor].left[n].style.opacity = a;
return this._shaders[anchor].right[n].style.opacity = b;
} else {
if (angle < 0) {
a = 0;
b = opacity;
} else {
a = opacity;
b = 0;
}
this._shaders[anchor].top[n].style.opacity = a;
return this._shaders[anchor].bottom[n].style.opacity = b;
}
};
OriDomi.prototype._showStage = function(anchor) {
var _this = this;
if (anchor !== this._lastOp.anchor) {
hideEl(this._stages[this._lastOp.anchor]);
this._lastOp.anchor = anchor;
this._lastOp.reset = true;
return this._stages[anchor].style[css.transform] = 'translate3d(' + (function() {
switch (anchor) {
case 'left':
return '0, 0, 0)';
case 'right':
return "-" + (_this._config.vPanels * 1) + "px, 0, 0)";
case 'top':
return '0, 0, 0)';
case 'bottom':
return "0, -" + ((_this._config.hPanels + 2) * 1) + "px, 0)";
}
})();
}
};
OriDomi.prototype._stageReset = function(anchor, cb) {
var fn,
_this = this;
fn = function(e) {
if (e) {
e.currentTarget.removeEventListener(css.transitionEnd, fn, false);
}
_this._showStage(anchor);
return defer(cb);
};
if (this._lastOp.angle === 0) {
return fn();
}
this._panels[this._lastOp.anchor][0].addEventListener(css.transitionEnd, fn, false);
return this._iterate(this._lastOp.anchor, function(panel, i) {
_this._transformPanel(panel, 0, _this._lastOp.anchor);
if (_this._shading) {
return _this._setShader(i, _this._lastOp.anchor, 0);
}
});
};
OriDomi.prototype._getLonghandAnchor = function(shorthand) {
switch (shorthand.toString()) {
case 'left':
case 'l':
case '4':
return 'left';
case 'right':
case 'r':
case '2':
return 'right';
case 'top':
case 't':
case '1':
return 'top';
case 'bottom':
case 'b':
case '3':
return 'bottom';
default:
return 'left';
}
};
OriDomi.prototype._setCursor = function(bool) {
if (bool == null) {
bool = this._touchEnabled;
}
if (bool) {
return this.el.style.cursor = css.grab;
} else {
return this.el.style.cursor = 'default';
}
};
OriDomi.prototype._setTouch = function(toggle) {
var eString, eventPair, eventPairs, listenFn, mouseLeaveSupport, _i, _j, _len, _len1;
if (toggle) {
if (this._touchEnabled) {
return this;
}
listenFn = 'addEventListener';
} else {
if (!this._touchEnabled) {
return this;
}
listenFn = 'removeEventListener';
}
this._touchEnabled = toggle;
this._setCursor();
eventPairs = [['TouchStart', 'MouseDown'], ['TouchEnd', 'MouseUp'], ['TouchMove', 'MouseMove'], ['TouchLeave', 'MouseLeave']];
mouseLeaveSupport = 'onmouseleave' in window;
for (_i = 0, _len = eventPairs.length; _i < _len; _i++) {
eventPair = eventPairs[_i];
for (_j = 0, _len1 = eventPair.length; _j < _len1; _j++) {
eString = eventPair[_j];
if (!(eString === 'TouchLeave' && !mouseLeaveSupport)) {
this.el[listenFn](eString.toLowerCase(), this['_on' + eventPair[0]], false);
} else {
this.el[listenFn]('mouseout', this._onMouseOut, false);
break;
}
}
}
return this;
};
OriDomi.prototype._onTouchStart = function(e) {
var axis1, _ref1;
if (!this._touchEnabled || this.isFoldedUp) {
return;
}
e.preventDefault();
this.emptyQueue();
this._touchStarted = true;
this.el.style.cursor = css.grabbing;
this._setTrans(0, 0);
this._touchAxis = (_ref1 = this._lastOp.anchor, __indexOf.call(anchorListV, _ref1) >= 0) ? 'x' : 'y';
this["_" + this._touchAxis + "Last"] = this._lastOp.angle;
axis1 = "_" + this._touchAxis + "1";
if (e.type === 'mousedown') {
this[axis1] = e["page" + (this._touchAxis.toUpperCase())];
} else {
this[axis1] = e.targetTouches[0]["page" + (this._touchAxis.toUpperCase())];
}
return this._config.touchStartCallback(this[axis1], e);
};
OriDomi.prototype._onTouchMove = function(e) {
var current, delta, distance;
if (!(this._touchEnabled && this._touchStarted)) {
return;
}
e.preventDefault();
if (e.type === 'mousemove') {
current = e["page" + (this._touchAxis.toUpperCase())];
} else {
current = e.targetTouches[0]["page" + (this._touchAxis.toUpperCase())];
}
distance = (current - this["_" + this._touchAxis + "1"]) * this._config.touchSensitivity;
if (this._lastOp.angle < 0) {
if (this._lastOp.anchor === 'right' || this._lastOp.anchor === 'bottom') {
delta = this["_" + this._touchAxis + "Last"] - distance;
} else {
delta = this["_" + this._touchAxis + "Last"] + distance;
}
if (delta > 0) {
delta = 0;
}
} else {
if (this._lastOp.anchor === 'right' || this._lastOp.anchor === 'bottom') {
delta = this["_" + this._touchAxis + "Last"] + distance;
} else {
delta = this["_" + this._touchAxis + "Last"] - distance;
}
if (delta < 0) {
delta = 0;
}
}
this._lastOp.angle = delta = this._normalizeAngle(delta);
this._lastOp.fn.call(this, delta, this._lastOp.anchor, this._lastOp.options);
return this._config.touchMoveCallback(delta, e);
};
OriDomi.prototype._onTouchEnd = function(e) {
if (!this._touchEnabled) {
return;
}
this._touchStarted = this._inTrans = false;
this.el.style.cursor = css.grab;
this._setTrans(this._config.speed, this._config.ripple);
return this._config.touchEndCallback(this["_" + this._touchAxis + "Last"], e);
};
OriDomi.prototype._onTouchLeave = function(e) {
if (!(this._touchEnabled && this._touchStarted)) {
return;
}
return this._onTouchEnd(e);
};
OriDomi.prototype._onMouseOut = function(e) {
if (!(this._touchEnabled && this._touchStarted)) {
return;
}
if (e.toElement && !this.el.contains(e.toElement)) {
return this._onTouchEnd(e);
}
};
OriDomi.prototype._unfold = function(callback) {
var anchor,
_this = this;
this._inTrans = true;
anchor = this._lastOp.anchor;
return this._iterate(anchor, function(panel, i, len) {
var delay;
delay = _this._setPanelTrans.apply(_this, [anchor].concat(__slice.call(arguments), [_this._config.speed], [1]));
return (function(panel, i, delay) {
return defer(function() {
_this._transformPanel(panel, 0, _this._lastOp.anchor);
return setTimeout(function() {
showEl(panel.children[0]);
if (i === len - 1) {
_this._inTrans = _this.isFoldedUp = false;
if (typeof callback === "function") {
callback();
}
_this._lastOp.fn = _this.accordion;
_this._lastOp.angle = 0;
}
return defer(function() {
return panel.style[css.transitionDuration] = _this._config.speed;
});
}, delay + _this._config.speed * .25);
});
})(panel, i, delay);
});
};
OriDomi.prototype._iterate = function(anchor, fn) {
var i, panel, panels, _i, _len, _ref1, _results;
_ref1 = panels = this._panels[anchor];
_results = [];
for (i = _i = 0, _len = _ref1.length; _i < _len; i = ++_i) {
panel = _ref1[i];
_results.push(fn.call(this, panel, i, panels.length));
}
return _results;
};
OriDomi.prototype.enableTouch = function() {
return this._setTouch(true);
};
OriDomi.prototype.disableTouch = function() {
return this._setTouch(false);
};
OriDomi.prototype.setSpeed = function(speed) {
var anchor, _i, _len;
for (_i = 0, _len = anchorList.length; _i < _len; _i++) {
anchor = anchorList[_i];
this._setTrans((this._config.speed = speed), this._config.ripple, anchor);
}
return this;
};
OriDomi.prototype.freeze = function(callback) {
var _this = this;
if (this.isFrozen) {
if (typeof callback === "function") {
callback();
}
} else {
this._stageReset(this._lastOp.anchor, function() {
_this.isFrozen = true;
hideEl(_this._stageHolder);
showEl(_this._cloneEl);
_this._setCursor(false);
return typeof callback === "function" ? callback() : void 0;
});
}
return this;
};
OriDomi.prototype.unfreeze = function() {
if (this.isFrozen) {
this.isFrozen = false;
hideEl(this._cloneEl);
showEl(this._stageHolder);
this._setCursor();
this._lastOp.angle = 0;
}
return this;
};
OriDomi.prototype.destroy = function(callback) {
var _this = this;
this.freeze(function() {
_this._setTouch(false);
if ($) {
$.data(_this.el, baseName, null);
}
_this.el.innerHTML = _this._cloneEl.innerHTML;
_this.el.classList.remove(elClasses.active);
return typeof callback === "function" ? callback() : void 0;
});
return null;
};
OriDomi.prototype.emptyQueue = function() {
var _this = this;
this._queue = [];
defer(function() {
return _this._inTrans = false;
});
return this;
};
OriDomi.prototype.setRipple = function(dir) {
if (dir == null) {
dir = 1;
}
this._config.ripple = Number(dir);
this.setSpeed(this._config.speed);
return this;
};
OriDomi.prototype.constrainAngle = function(angle) {
this._config.maxAngle = parseFloat(angle, 10) || defaults.maxAngle;
return this;
};
OriDomi.prototype.wait = function(ms) {
var fn,
_this = this;
fn = function() {
return setTimeout(_this._conclude, ms);
};
if (this._inTrans) {
this._queue.push([fn, this._lastOp.angle, this._lastOp.anchor, this._lastOp.options]);
} else {
fn();
}
return this;
};
OriDomi.prototype.modifyContent = function(fn) {
var anchor, i, panel, selectors, set, _i, _j, _len, _len1, _ref1;
if (typeof fn !== 'function') {
selectors = fn;
set = function(el, content, style) {
var key, value;
if (content) {
el.innerHTML = content;
}
if (style) {
for (key in style) {
value = style[key];
el.style[key] = value;
}
return null;
}
};
fn = function(el) {
var content, match, selector, style, value, _i, _len, _ref1;
for (selector in selectors) {
value = selectors[selector];
content = style = null;
if (typeof value === 'string') {
content = value;
} else {
content = value.content, style = value.style;
}
if (selector === '') {
set(el, content, style);
continue;
}
_ref1 = el.querySelectorAll(selector);
for (_i = 0, _len = _ref1.length; _i < _len; _i++) {
match = _ref1[_i];
set(match, content, style);
}
}
return null;
};
}
for (_i = 0, _len = anchorList.length; _i < _len; _i++) {
anchor = anchorList[_i];
_ref1 = this._panels[anchor];
for (i = _j = 0, _len1 = _ref1.length; _j < _len1; i = ++_j) {
panel = _ref1[i];
fn(panel.children[0].children[0], i, anchor);
}
}
return this;
};
OriDomi.prototype.accordion = prep(function(angle, anchor, options) {
var _this = this;
return this._iterate(anchor, function(panel, i) {
var deg;
if (i % 2 !== 0 && !options.twist) {
deg = -angle;
} else {
deg = angle;
}
if (options.sticky) {
if (i === 0) {
deg = 0;
} else if (i > 1 || options.stairs) {
deg *= 2;
}
} else {
if (i !== 0) {
deg *= 2;
}
}
if (options.stairs) {
deg *= -1;
}
_this._transformPanel(panel, deg, anchor, options.fracture);
if (_this._shading && !(i === 0 && options.sticky) && Math.abs(deg) !== 180) {
return _this._setShader(i, anchor, deg);
}
});
});
OriDomi.prototype.curl = prep(function(angle, anchor, options) {
var _this = this;
angle /= __indexOf.call(anchorListV, anchor) >= 0 ? this._config.vPanels : this._config.hPanels;
return this._iterate(anchor, function(panel, i) {
_this._transformPanel(panel, angle, anchor);
if (_this._shading) {
return _this._setShader(i, anchor, 0);
}
});
});
OriDomi.prototype.ramp = prep(function(angle, anchor, options) {
var _this = this;
this._transformPanel(this._panels[anchor][1], angle, anchor);
return this._iterate(anchor, function(panel, i) {
if (i !== 1) {
_this._transformPanel(panel, 0, anchor);
}
if (_this._shading) {
return _this._setShader(i, anchor, 0);
}
});
});
OriDomi.prototype.foldUp = prep(function(anchor, callback) {
var _this = this;
if (this.isFoldedUp) {
return typeof callback === "function" ? callback() : void 0;
}
return this._stageReset(anchor, function() {
_this._inTrans = _this.isFoldedUp = true;
return _this._iterate(anchor, function(panel, i, len) {
var delay, duration;
duration = _this._config.speed;
if (i === 0) {
duration /= 2;
}
delay = _this._setPanelTrans.apply(_this, [anchor].concat(__slice.call(arguments), [duration], [2]));
return (function(panel, i, delay) {
return defer(function() {
_this._transformPanel(panel, (i === 0 ? 90 : 170), anchor);
return setTimeout(function() {
if (i === 0) {
_this._inTrans = false;
return typeof callback === "function" ? callback() : void 0;
} else {
return hideEl(panel.children[0]);
}
}, delay + _this._config.speed * .25);
});
})(panel, i, delay);
});
});
});
OriDomi.prototype.unfold = prep(function(callback) {
return this._unfold.apply(this, arguments);
});
OriDomi.prototype.map = function(fn) {
var _this = this;
return prep(function(angle, anchor, options) {
return _this._iterate(anchor, function(panel, i, len) {
return _this._transformPanel(panel, fn(angle, i, len), anchor, options.fracture);
});
}).bind(this);
};
OriDomi.prototype.reset = function(callback) {
return this.accordion(0, {
callback: callback
});
};
OriDomi.prototype.reveal = function(angle, anchor, options) {
if (options == null) {
options = {};
}
options.sticky = true;
return this.accordion(angle, anchor, options);
};
OriDomi.prototype.stairs = function(angle, anchor, options) {
if (options == null) {
options = {};
}
options.stairs = options.sticky = true;
return this.accordion(angle, anchor, options);
};
OriDomi.prototype.fracture = function(angle, anchor, options) {
if (options == null) {
options = {};
}
options.fracture = true;
return this.accordion(angle, anchor, options);
};
OriDomi.prototype.twist = function(angle, anchor, options) {
if (options == null) {
options = {};
}
options.fracture = options.twist = true;
return this.accordion(angle / 10, anchor, options);
};
OriDomi.prototype.collapse = function(anchor, options) {
if (options == null) {
options = {};
}
options.sticky = false;
return this.accordion(-this._config.maxAngle, anchor, options);
};
OriDomi.prototype.collapseAlt = function(anchor, options) {
if (options == null) {
options = {};
}
options.sticky = false;
return this.accordion(this._config.maxAngle, anchor, options);
};
OriDomi.VERSION = '1.0.2';
OriDomi.isSupported = isSupported;
return OriDomi;
})();
if (typeof module !== "undefined" && module !== null ? module.exports : void 0) {
module.exports = OriDomi;
} else if (typeof define !== "undefined" && define !== null ? define.amd : void 0) {
define(function() {
return OriDomi;
});
} else {
window.OriDomi = OriDomi;
}
if (!$) {
return;
}
$.prototype.oriDomi = function(options) {
var el, instance, method, methodName, _i, _j, _len, _len1;
if (!isSupported) {
return this;
}
if (options === true) {
return $.data(this[0], baseName);
}
if (typeof options === 'string') {
methodName = options;
if (typeof (method = OriDomi.prototype[methodName]) !== 'function') {
if (typeof console !== "undefined" && console !== null) {
console.warn("OriDomi: No such method `" + methodName + "`");
}
return this;
}
for (_i = 0, _len = this.length; _i < _len; _i++) {
el = this[_i];
if (!(instance = $.data(el, baseName))) {
instance = $.data(el, baseName, new OriDomi(el, options));
}
method.apply(instance, Array.prototype.slice.call(arguments).slice(1));
}
} else {
for (_j = 0, _len1 = this.length; _j < _len1; _j++) {
el = this[_j];
if (instance = $.data(el, baseName)) {
continue;
} else {
$.data(el, baseName, new OriDomi(el, options));
}
}
}
return this;
};
}).call(this);
/*
//@ sourceMappingURL=oridomi.map
*/
{
"version": 3,
"file": "oridomi.js",
"sourceRoot": "",
"sources": [
"oridomi.coffee"
],
"names": [],
"mappings": "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"
}
Display the source blob
Display the rendered blob
Raw
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment