wunderbits.core
Advanced tools
+38
-27
@@ -596,6 +596,9 @@ !function(e){if("object"==typeof exports)module.exports=e();else if("function"==typeof define&&define.amd)define(e);else{var n;"undefined"!=typeof window?n=window:"undefined"!=typeof global?n=global:"undefined"!=typeof self&&(n=self),(n.wunderbits||(n.wunderbits={})).core=e()}}(function(){var define,module,exports;return (function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);throw new Error("Cannot find module '"+o+"'")}var f=n[o]={exports:{}};t[o][0].call(f.exports,function(e){var n=t[o][1][e];return s(n?n:e)},f,f.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s})({1:[function(_dereq_,module,exports){ | ||
| assert.number = function (value, message) { | ||
| assert(typeof value === 'number' && !isNaN(value), message); | ||
| }; | ||
| var types = [ | ||
| 'undefined', | ||
| 'boolean', | ||
| 'number', | ||
| 'string', | ||
@@ -1499,3 +1502,2 @@ 'function', | ||
| var WBMixin = _dereq_('../WBMixin'); | ||
| // var assert = require('../lib/assert'); | ||
| var createUID = _dereq_('../lib/createUID'); | ||
@@ -1514,20 +1516,10 @@ | ||
| var self = this; | ||
| var bindCallback; | ||
| var forString = function stringCallback () { | ||
| context[callback].apply(context, arguments); | ||
| }; | ||
| var forFunction = function functionCallback () { | ||
| callback.apply(context, arguments); | ||
| }; | ||
| if (typeof callback === 'string') { | ||
| bindCallback = forString; | ||
| // cancel alternate closure immediately | ||
| forFunction = null; | ||
| bindCallback = self.stringCallbackFactory(callback, context); | ||
| } | ||
| else { | ||
| bindCallback = forFunction; | ||
| forString = null; | ||
| bindCallback = self.functionCallbackFactory(callback, context); | ||
| } | ||
@@ -1538,2 +1530,16 @@ | ||
| 'stringCallbackFactory': function (callback, context) { | ||
| return function stringCallback () { | ||
| context[callback].apply(context, arguments); | ||
| }; | ||
| }, | ||
| 'functionCallbackFactory': function (callback, context) { | ||
| return function functionCallback () { | ||
| callback.apply(context, arguments); | ||
| }; | ||
| }, | ||
| 'bindTo': function (target, event, callback, context) { | ||
@@ -1545,6 +1551,6 @@ | ||
| // default to self if context not provided | ||
| context = context || self; | ||
| var ctx = context || self; | ||
| // if this binding already made, return it | ||
| var bound = self.isAlreadyBound(target, event, callback, context); | ||
| var bound = self.isAlreadyBound(target, event, callback, ctx); | ||
| if (bound) { | ||
@@ -1554,16 +1560,16 @@ return bound; | ||
| var callbackFunc, args; | ||
| // if a jquery object | ||
| if (target.constructor && target.constructor.fn && target.constructor.fn.on === target.on) { | ||
| if (self.isTargetJquery(target)) { | ||
| // jquery does not take context in .on() | ||
| // cannot assume on takes context as a param for bindable object | ||
| // create a callback which will apply the original callback in the correct context | ||
| callbackFunc = self.callbackFactory(callback, context); | ||
| // create a callback which will apply the original callback | ||
| // in the correct context | ||
| callbackFunc = self.callbackFactory(callback, ctx); | ||
| args = [event, callbackFunc]; | ||
| } else { | ||
| } | ||
| else { | ||
| // Backbone accepts context when binding, simply pass it on | ||
| callbackFunc = (typeof callback === 'string') ? context[callback] : callback; | ||
| args = [event, callbackFunc, context]; | ||
| callbackFunc = (typeof callback === 'string') ? ctx[callback] : callback; | ||
| args = [event, callbackFunc, ctx]; | ||
| } | ||
@@ -1580,3 +1586,3 @@ | ||
| 'callback': callbackFunc, | ||
| 'context': context | ||
| 'context': ctx | ||
| }; | ||
@@ -1590,2 +1596,8 @@ | ||
| 'isTargetJquery': function (target) { | ||
| var constructor = target.constructor; | ||
| return constructor && constructor.fn && constructor.fn.on === target.on; | ||
| }, | ||
| 'bindOnceTo': function (target, event, callback, context) { | ||
@@ -1604,3 +1616,2 @@ | ||
| // this is a wrapper | ||
@@ -1607,0 +1618,0 @@ var onceBinding = function () { |
| { | ||
| "version": 3, | ||
| "file": "wunderbits.core", | ||
| "sources": [ | ||
@@ -45,3 +44,5 @@ "wunderbits.core/node_modules/gulp-cjs/node_modules/browserify/node_modules/browser-pack/_prelude.js", | ||
| "names": [], | ||
| "mappings": "AAAA;ACAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACbA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3IA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACVA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACtDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACdA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC5CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACbA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACdA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvOA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACbA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACtBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3QA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC1DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA", | ||
| "mappings": "AAAA;ACAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACbA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC3IA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACVA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACtDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACdA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC9CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC5CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACbA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACdA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvOA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACbA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACtBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AClEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACnRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC1DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA", | ||
| "file": "wunderbits.core", | ||
| "sourceRoot": "file://", | ||
| "sourcesContent": [ | ||
@@ -59,3 +60,3 @@ "(function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require==\"function\"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);throw new Error(\"Cannot find module '\"+o+\"'\")}var f=n[o]={exports:{}};t[o][0].call(f.exports,function(e){var n=t[o][1][e];return s(n?n:e)},f,f.exports,e,t,n,r)}return n[o].exports}var i=typeof require==\"function\"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s})", | ||
| "'use strict';\n\nmodule.exports = {\n 'lib': require('./lib'),\n 'BaseEventEmitter': require('./BaseEventEmitter'),\n 'BaseSingleton': require('./BaseSingleton'),\n 'WBClass': require('./WBClass'),\n 'WBDeferred': require('./WBDeferred'),\n 'WBEventEmitter': require('./WBEventEmitter'),\n 'WBMixin': require('./WBMixin'),\n 'WBSingleton': require('./WBSingleton'),\n 'WBStateModel': require('./WBStateModel'),\n 'mixins': require('./mixins')\n};\n", | ||
| "'use strict';\n\nfunction assert (condition, message) {\n if (!condition) {\n throw new Error(message || '');\n }\n}\n\nvar nativeIsArray = Array.isArray;\nassert.empty = function (object, message) {\n var keys = nativeIsArray(object) ? object : Object.keys(object);\n assert(keys.length === 0, message);\n};\n\nassert.array = function (array, message) {\n assert(nativeIsArray(array), message);\n};\n\nassert.class = function (klass, message) {\n var proto = klass.prototype;\n assert(proto && proto.constructor === klass, message);\n};\n\nvar types = [\n 'undefined',\n 'boolean',\n 'number',\n 'string',\n 'function',\n 'object'\n];\n\nfunction typecheck (type) {\n assert[type] = function (o, message) {\n assert(typeof o === type, message);\n };\n}\n\nwhile (types.length) {\n typecheck(types.shift());\n}\n\nmodule.exports = assert;\n", | ||
| "'use strict';\n\nfunction assert (condition, message) {\n if (!condition) {\n throw new Error(message || '');\n }\n}\n\nvar nativeIsArray = Array.isArray;\nassert.empty = function (object, message) {\n var keys = nativeIsArray(object) ? object : Object.keys(object);\n assert(keys.length === 0, message);\n};\n\nassert.array = function (array, message) {\n assert(nativeIsArray(array), message);\n};\n\nassert.class = function (klass, message) {\n var proto = klass.prototype;\n assert(proto && proto.constructor === klass, message);\n};\n\nassert.number = function (value, message) {\n assert(typeof value === 'number' && !isNaN(value), message);\n};\n\nvar types = [\n 'undefined',\n 'boolean',\n 'string',\n 'function',\n 'object'\n];\n\nfunction typecheck (type) {\n assert[type] = function (o, message) {\n assert(typeof o === type, message);\n };\n}\n\nwhile (types.length) {\n typecheck(types.shift());\n}\n\nmodule.exports = assert;\n", | ||
| "'use strict';\n\nvar nativeIsArray = Array.isArray;\n\nfunction cloneArray (arr, isDeep) {\n arr = arr.slice();\n if (isDeep) {\n var newArr = [], value;\n while (arr.length) {\n value = arr.shift();\n value = (value instanceof Object) ? clone(value, isDeep) : value;\n newArr.push(value);\n }\n arr = newArr;\n }\n return arr;\n}\n\nfunction cloneDate (date) {\n return new Date(date.getTime());\n}\n\nfunction cloneObject (source, isDeep) {\n var object = {};\n for (var key in source) {\n if (source.hasOwnProperty(key)) {\n var value = source[key];\n if (value instanceof Date) {\n object[key] = cloneDate(value);\n } else if (typeof value === 'object' && value !== null && isDeep) {\n object[key] = clone(value, isDeep);\n } else {\n object[key] = value;\n }\n }\n }\n return object;\n}\n\nfunction clone (obj, isDeep) {\n\n if (nativeIsArray(obj)) {\n return cloneArray(obj, isDeep);\n }\n\n return cloneObject(obj, isDeep);\n}\n\nmodule.exports = clone;\n", | ||
@@ -81,3 +82,3 @@ "// http://stackoverflow.com/a/21963136/933653\n'use strict';\n\nvar ff = 0xff;\nvar lut = [];\nfor (var i = 0; i < 256; i++) {\n lut[i] = (i < 16 ? '0' : '') + (i).toString(16);\n}\n\nvar random = Math.random;\nfunction randHex() {\n return (random() * 0xffffffff | 0);\n}\n\nfunction section0 () {\n var d0 = randHex();\n return lut[d0 & ff] + lut[d0 >> 8 & ff] +\n lut[d0 >> 16 & ff] + lut[d0 >> 24 & ff];\n}\n\nfunction section1 () {\n var d1 = randHex();\n return lut[d1 & ff] + lut[d1 >> 8 & ff] + '-' +\n lut[d1 >> 16 & 0x0f | 0x40] + lut[d1 >> 24 & ff];\n}\n\nfunction section2 () {\n var d2 = randHex();\n return lut[d2 & 0x3f | 0x80] + lut[d2 >> 8 & ff] + '-' +\n lut[d2 >> 16 & ff] + lut[d2 >> 24 & ff];\n}\n\nfunction section3 () {\n var d3 = randHex();\n return lut[d3 & ff] + lut[d3 >> 8 & ff] +\n lut[d3 >> 16 & ff] + lut[d3 >> 24 & ff];\n}\n\nfunction createUID (prefix) {\n var uid = [section0(), section1(), section2(), section3()].join('-');\n return (!prefix ? '' : prefix).toString() + uid;\n}\n\nmodule.exports = createUID;\n", | ||
| "'use strict';\n\nvar WBMixin = require('../WBMixin');\nvar fromSuper = require('../lib/fromSuper');\nvar clone = require('../lib/clone');\n\nvar ObservableHashMixin = WBMixin.extend({\n\n 'initialize': function () {\n\n var self = this;\n\n var observesHash = fromSuper.merge(self, 'observes');\n for (var target in observesHash) {\n self.bindToTarget(self.resolveTarget(target), observesHash[target]);\n }\n },\n\n 'bindToTarget': function (target, events) {\n\n var self = this;\n\n for (var eventString in events) {\n self.bindHandlers(target, eventString, events[eventString]);\n }\n },\n\n 'bindHandlers': function (target, eventString, handlers) {\n\n var self = this;\n\n if (typeof handlers === 'string') {\n handlers = [handlers];\n } else {\n handlers = clone(handlers);\n }\n\n while (handlers.length) {\n self.bindTo(target, eventString, handlers.shift());\n }\n },\n\n 'resolveTarget': function (key) {\n\n var self = this;\n\n // allow observing self\n if (key === 'self') {\n return self;\n }\n\n var target = self[key];\n if (!target && typeof key === 'string' && key.indexOf('.') > -1) {\n key = key.split('.');\n target = self;\n while (key.length && target) {\n target = target[key.shift()];\n }\n }\n\n return target;\n }\n\n});\n\nmodule.exports = ObservableHashMixin;\n", | ||
| "'use strict';\n\nvar WBMixin = require('../WBMixin');\n// var assert = require('../lib/assert');\nvar createUID = require('../lib/createUID');\n\nvar WBBindableMixin = WBMixin.extend({\n\n 'properties': {\n '_bindings': {},\n '_namedEvents': {}\n },\n\n // keeps callback closure in own execution context with\n // only callback and context\n 'callbackFactory': function (callback, context) {\n\n var bindCallback;\n\n var forString = function stringCallback () {\n context[callback].apply(context, arguments);\n };\n\n var forFunction = function functionCallback () {\n callback.apply(context, arguments);\n };\n\n if (typeof callback === 'string') {\n bindCallback = forString;\n // cancel alternate closure immediately\n forFunction = null;\n }\n else {\n bindCallback = forFunction;\n forString = null;\n }\n\n return bindCallback;\n },\n\n 'bindTo': function (target, event, callback, context) {\n\n var self = this;\n self.checkBindingArgs.apply(self, arguments);\n\n // default to self if context not provided\n context = context || self;\n\n // if this binding already made, return it\n var bound = self.isAlreadyBound(target, event, callback, context);\n if (bound) {\n return bound;\n }\n\n\n var callbackFunc, args;\n\n // if a jquery object\n if (target.constructor && target.constructor.fn && target.constructor.fn.on === target.on) {\n // jquery does not take context in .on()\n // cannot assume on takes context as a param for bindable object\n // create a callback which will apply the original callback in the correct context\n callbackFunc = self.callbackFactory(callback, context);\n args = [event, callbackFunc];\n } else {\n // Backbone accepts context when binding, simply pass it on\n callbackFunc = (typeof callback === 'string') ? context[callback] : callback;\n args = [event, callbackFunc, context];\n }\n\n // create binding on target\n target.on.apply(target, args);\n\n var binding = {\n 'uid': createUID(),\n 'target': target,\n 'event': event,\n 'originalCallback': callback,\n 'callback': callbackFunc,\n 'context': context\n };\n\n self._bindings[binding.uid] = binding;\n self.addToNamedBindings(event, binding);\n\n return binding;\n },\n\n 'bindOnceTo': function (target, event, callback, context) {\n\n var self = this;\n self.checkBindingArgs.apply(self, arguments);\n\n context = context || self;\n\n // if this binding already made, return it\n var bound = self.isAlreadyBound(target, event, callback, context);\n if (bound) {\n return bound;\n }\n\n\n // this is a wrapper\n var onceBinding = function () {\n\n ((typeof callback === 'string') ? context[callback] : callback).apply(context, arguments);\n self.unbindFrom(binding);\n };\n\n var binding = {\n 'uid': createUID(),\n 'target': target,\n 'event': event,\n 'originalCallback': callback,\n 'callback': onceBinding,\n 'context': context\n };\n\n target.on(event, onceBinding, context);\n\n self._bindings[binding.uid] = binding;\n self.addToNamedBindings(event, binding);\n\n return binding;\n },\n\n 'unbindFrom': function (binding) {\n\n var self = this;\n\n var uid = binding && binding.uid;\n if (!binding || (typeof uid !== 'string')) {\n throw new Error('Cannot unbind from undefined or invalid binding');\n }\n\n var event = binding.event;\n var context = binding.context;\n var callback = binding.callback;\n var target = binding.target;\n\n // a binding object with only uid, i.e. a destroyed/unbound\n // binding object has been passed - just do nothing\n if (!event || !callback || !target || !context) {\n return;\n }\n\n target.off(event, callback, context);\n\n // clean up binding object, but keep uid to\n // make sure old bindings, that have already been\n // cleaned, are still recognized as bindings\n for (var key in binding) {\n if (key !== 'uid') {\n delete binding[key];\n }\n }\n\n delete self._bindings[uid];\n\n var namedEvents = self._namedEvents;\n var events = namedEvents[event];\n\n if (events) {\n var cloned = events && events.slice(0);\n for (var i = events.length - 1; i >= 0; i--) {\n if (events[i].uid === uid) {\n cloned.splice(i, 1);\n }\n }\n\n namedEvents[event] = cloned;\n }\n\n return;\n },\n\n 'unbindFromTarget': function (target) {\n\n var self = this;\n\n if (!target || (typeof target.on !== 'function')) {\n throw new Error('Cannot unbind from undefined or invalid binding target');\n }\n\n var binding;\n for (var key in self._bindings) {\n binding = self._bindings[key];\n if (binding.target === target) {\n self.unbindFrom(binding);\n }\n }\n },\n\n 'unbindAll': function () {\n\n var self = this;\n\n var binding;\n for (var key in self._bindings) {\n binding = self._bindings[key];\n self.unbindFrom(binding);\n }\n },\n\n 'checkBindingArgs': function (target, event, callback, context) {\n\n context = context || this;\n\n // do not change these messages without updating the specs\n if (!target || (typeof target.on !== 'function')) {\n throw new Error('Cannot bind to undefined target or target without #on method');\n }\n\n if (!event || (typeof event !== 'string')) {\n throw new Error('Cannot bind to target event without event name');\n }\n\n if (!callback || ((typeof callback !== 'function') && (typeof callback !== 'string'))) {\n throw new Error('Cannot bind to target event without a function or method name as callback');\n }\n\n if ((typeof callback === 'string') && !context[callback]) {\n throw new Error('Cannot bind to target using a method name that does not exist for the context');\n }\n },\n\n 'isAlreadyBound': function (target, event, callback, context) {\n\n var self = this;\n // check for same callback on the same target instance\n // return early withthe event binding\n var events = self._namedEvents[event];\n if (events) {\n for (var i = 0, max = events.length; i < max; i++) {\n\n var current = events[i] || {};\n\n // the below !boundTarget check seems unreachable\n // was added in this commit of the web app: c75d5077c0a8629b60cb6dd1cd78d3bc77fcac48\n // need to ask Adam under what conditions this would be possible\n var boundTarget = current.target;\n if (!boundTarget) {\n return false;\n }\n\n var targetBound = target.uid ? target.uid === boundTarget.uid : false;\n if (current.originalCallback === callback &&\n current.context === context && targetBound) {\n return current;\n }\n }\n }\n\n return false;\n },\n\n 'addToNamedBindings': function (event, binding) {\n\n var self = this;\n if (!self._namedEvents[event]) {\n self._namedEvents[event] = [];\n }\n self._namedEvents[event].push(binding);\n }\n});\n\nmodule.exports = WBBindableMixin;\n", | ||
| "'use strict';\n\nvar WBMixin = require('../WBMixin');\nvar createUID = require('../lib/createUID');\n\nvar WBBindableMixin = WBMixin.extend({\n\n 'properties': {\n '_bindings': {},\n '_namedEvents': {}\n },\n\n // keeps callback closure in own execution context with\n // only callback and context\n 'callbackFactory': function (callback, context) {\n\n var self = this;\n var bindCallback;\n\n if (typeof callback === 'string') {\n bindCallback = self.stringCallbackFactory(callback, context);\n }\n else {\n bindCallback = self.functionCallbackFactory(callback, context);\n }\n\n return bindCallback;\n },\n\n 'stringCallbackFactory': function (callback, context) {\n\n return function stringCallback () {\n context[callback].apply(context, arguments);\n };\n },\n\n 'functionCallbackFactory': function (callback, context) {\n\n return function functionCallback () {\n callback.apply(context, arguments);\n };\n },\n\n 'bindTo': function (target, event, callback, context) {\n\n var self = this;\n self.checkBindingArgs.apply(self, arguments);\n\n // default to self if context not provided\n var ctx = context || self;\n\n // if this binding already made, return it\n var bound = self.isAlreadyBound(target, event, callback, ctx);\n if (bound) {\n return bound;\n }\n\n var callbackFunc, args;\n // if a jquery object\n if (self.isTargetJquery(target)) {\n // jquery does not take context in .on()\n // cannot assume on takes context as a param for bindable object\n // create a callback which will apply the original callback\n // in the correct context\n callbackFunc = self.callbackFactory(callback, ctx);\n args = [event, callbackFunc];\n }\n else {\n // Backbone accepts context when binding, simply pass it on\n callbackFunc = (typeof callback === 'string') ? ctx[callback] : callback;\n args = [event, callbackFunc, ctx];\n }\n\n // create binding on target\n target.on.apply(target, args);\n\n var binding = {\n 'uid': createUID(),\n 'target': target,\n 'event': event,\n 'originalCallback': callback,\n 'callback': callbackFunc,\n 'context': ctx\n };\n\n self._bindings[binding.uid] = binding;\n self.addToNamedBindings(event, binding);\n\n return binding;\n },\n\n 'isTargetJquery': function (target) {\n\n var constructor = target.constructor;\n return constructor && constructor.fn && constructor.fn.on === target.on;\n },\n\n 'bindOnceTo': function (target, event, callback, context) {\n\n var self = this;\n self.checkBindingArgs.apply(self, arguments);\n\n context = context || self;\n\n // if this binding already made, return it\n var bound = self.isAlreadyBound(target, event, callback, context);\n if (bound) {\n return bound;\n }\n\n // this is a wrapper\n var onceBinding = function () {\n\n ((typeof callback === 'string') ? context[callback] : callback).apply(context, arguments);\n self.unbindFrom(binding);\n };\n\n var binding = {\n 'uid': createUID(),\n 'target': target,\n 'event': event,\n 'originalCallback': callback,\n 'callback': onceBinding,\n 'context': context\n };\n\n target.on(event, onceBinding, context);\n\n self._bindings[binding.uid] = binding;\n self.addToNamedBindings(event, binding);\n\n return binding;\n },\n\n 'unbindFrom': function (binding) {\n\n var self = this;\n\n var uid = binding && binding.uid;\n if (!binding || (typeof uid !== 'string')) {\n throw new Error('Cannot unbind from undefined or invalid binding');\n }\n\n var event = binding.event;\n var context = binding.context;\n var callback = binding.callback;\n var target = binding.target;\n\n // a binding object with only uid, i.e. a destroyed/unbound\n // binding object has been passed - just do nothing\n if (!event || !callback || !target || !context) {\n return;\n }\n\n target.off(event, callback, context);\n\n // clean up binding object, but keep uid to\n // make sure old bindings, that have already been\n // cleaned, are still recognized as bindings\n for (var key in binding) {\n if (key !== 'uid') {\n delete binding[key];\n }\n }\n\n delete self._bindings[uid];\n\n var namedEvents = self._namedEvents;\n var events = namedEvents[event];\n\n if (events) {\n var cloned = events && events.slice(0);\n for (var i = events.length - 1; i >= 0; i--) {\n if (events[i].uid === uid) {\n cloned.splice(i, 1);\n }\n }\n\n namedEvents[event] = cloned;\n }\n\n return;\n },\n\n 'unbindFromTarget': function (target) {\n\n var self = this;\n\n if (!target || (typeof target.on !== 'function')) {\n throw new Error('Cannot unbind from undefined or invalid binding target');\n }\n\n var binding;\n for (var key in self._bindings) {\n binding = self._bindings[key];\n if (binding.target === target) {\n self.unbindFrom(binding);\n }\n }\n },\n\n 'unbindAll': function () {\n\n var self = this;\n\n var binding;\n for (var key in self._bindings) {\n binding = self._bindings[key];\n self.unbindFrom(binding);\n }\n },\n\n 'checkBindingArgs': function (target, event, callback, context) {\n\n context = context || this;\n\n // do not change these messages without updating the specs\n if (!target || (typeof target.on !== 'function')) {\n throw new Error('Cannot bind to undefined target or target without #on method');\n }\n\n if (!event || (typeof event !== 'string')) {\n throw new Error('Cannot bind to target event without event name');\n }\n\n if (!callback || ((typeof callback !== 'function') && (typeof callback !== 'string'))) {\n throw new Error('Cannot bind to target event without a function or method name as callback');\n }\n\n if ((typeof callback === 'string') && !context[callback]) {\n throw new Error('Cannot bind to target using a method name that does not exist for the context');\n }\n },\n\n 'isAlreadyBound': function (target, event, callback, context) {\n\n var self = this;\n // check for same callback on the same target instance\n // return early withthe event binding\n var events = self._namedEvents[event];\n if (events) {\n for (var i = 0, max = events.length; i < max; i++) {\n\n var current = events[i] || {};\n\n // the below !boundTarget check seems unreachable\n // was added in this commit of the web app: c75d5077c0a8629b60cb6dd1cd78d3bc77fcac48\n // need to ask Adam under what conditions this would be possible\n var boundTarget = current.target;\n if (!boundTarget) {\n return false;\n }\n\n var targetBound = target.uid ? target.uid === boundTarget.uid : false;\n if (current.originalCallback === callback &&\n current.context === context && targetBound) {\n return current;\n }\n }\n }\n\n return false;\n },\n\n 'addToNamedBindings': function (event, binding) {\n\n var self = this;\n if (!self._namedEvents[event]) {\n self._namedEvents[event] = [];\n }\n self._namedEvents[event].push(binding);\n }\n});\n\nmodule.exports = WBBindableMixin;\n", | ||
| "'use strict';\n\nvar forEach = require('../lib/forEach');\nvar WBMixin = require('../WBMixin');\n\nfunction noop () {}\n\nfunction Call (fn) {\n var self = this;\n (typeof fn === 'string') && (fn = self[fn]);\n (typeof fn === 'function') && fn.call(self);\n}\n\nvar cleanupMethods = ['unbind', 'unbindAll', 'onDestroy'];\n\nvar WBDestroyableMixin = WBMixin.extend({\n\n 'destroy': function () {\n\n var self = this;\n\n self.trigger('destroy');\n\n // clean up\n forEach(cleanupMethods, Call, self);\n\n self.destroyObject(self);\n\n self.destroyed = true;\n },\n\n 'destroyObject': function (object) {\n\n var self = this;\n for (var key in object) {\n self.destroyKey(key, object);\n }\n },\n\n 'destroyKey': function (key, context) {\n\n if (context.hasOwnProperty(key) && key !== 'uid' && key !== 'cid') {\n // make functions noop\n if (typeof context[key] === 'function') {\n context[key] = noop;\n }\n // and others undefined\n else {\n context[key] = undefined;\n }\n }\n }\n});\n\nmodule.exports = WBDestroyableMixin;\n", | ||
@@ -88,4 +89,3 @@ "'use strict';\n\nvar WBMixin = require('../WBMixin');\nvar events = require('../lib/events');\n\nvar WBEventsMixin = WBMixin.extend(events);\n\nmodule.exports = WBEventsMixin;\n", | ||
| "'use strict';\n\nmodule.exports = {\n 'ControllableMixin': require('./ControllableMixin'),\n 'ObservableHashMixin': require('./ObservableHashMixin'),\n 'WBBindableMixin': require('./WBBindableMixin'),\n 'WBDestroyableMixin': require('./WBDestroyableMixin'),\n 'WBEventsMixin': require('./WBEventsMixin'),\n 'WBStateMixin': require('./WBStateMixin'),\n 'WBUtilsMixin': require('./WBUtilsMixin')\n};" | ||
| ], | ||
| "sourceRoot": "file://" | ||
| ] | ||
| } |
+13
-13
| { | ||
| "name": "wunderbits.core", | ||
| "version": "0.1.12", | ||
| "version": "0.1.13", | ||
| "description": "Core components of Wunderbits", | ||
@@ -19,2 +19,3 @@ "main": "public/index.js", | ||
| "devDependencies": { | ||
| "chai": "^1.9.1", | ||
| "grunt": "~0.4.2", | ||
@@ -24,16 +25,15 @@ "grunt-cli": "~0.1.13", | ||
| "grunt-contrib-jshint": "~0.8.0", | ||
| "karma": "^0.12.2", | ||
| "karma-mocha": "^0.1.3", | ||
| "karma-chrome-launcher": "^0.1.2", | ||
| "karma-firefox-launcher": "^0.1.3", | ||
| "karma-safari-launcher": "^0.1.1", | ||
| "karma-browserstack-launcher": "0.0.8", | ||
| "mocha": "^1.18.2", | ||
| "chai": "^1.9.1", | ||
| "sinon": "^1.9.0", | ||
| "sinon-chai": "^2.5.0", | ||
| "istanbul": "^0.2.7", | ||
| "gulp": "^3.5.6", | ||
| "gulp-cjs": "0.0.2" | ||
| "gulp-cjs": "0.0.2", | ||
| "istanbul": "0.3.2", | ||
| "karma": "0.12.23", | ||
| "karma-browserstack-launcher": "0.1.1", | ||
| "karma-chrome-launcher": "0.1.4", | ||
| "karma-firefox-launcher": "0.1.3", | ||
| "karma-mocha": "0.1.9", | ||
| "karma-safari-launcher": "0.1.1", | ||
| "mocha": "1.21.4", | ||
| "sinon": "1.9.0", | ||
| "sinon-chai": "2.5.0" | ||
| } | ||
| } |
@@ -24,6 +24,9 @@ 'use strict'; | ||
| assert.number = function (value, message) { | ||
| assert(typeof value === 'number' && !isNaN(value), message); | ||
| }; | ||
| var types = [ | ||
| 'undefined', | ||
| 'boolean', | ||
| 'number', | ||
| 'string', | ||
@@ -30,0 +33,0 @@ 'function', |
| 'use strict'; | ||
| var WBMixin = require('../WBMixin'); | ||
| // var assert = require('../lib/assert'); | ||
| var createUID = require('../lib/createUID'); | ||
@@ -18,20 +17,10 @@ | ||
| var self = this; | ||
| var bindCallback; | ||
| var forString = function stringCallback () { | ||
| context[callback].apply(context, arguments); | ||
| }; | ||
| var forFunction = function functionCallback () { | ||
| callback.apply(context, arguments); | ||
| }; | ||
| if (typeof callback === 'string') { | ||
| bindCallback = forString; | ||
| // cancel alternate closure immediately | ||
| forFunction = null; | ||
| bindCallback = self.stringCallbackFactory(callback, context); | ||
| } | ||
| else { | ||
| bindCallback = forFunction; | ||
| forString = null; | ||
| bindCallback = self.functionCallbackFactory(callback, context); | ||
| } | ||
@@ -42,2 +31,16 @@ | ||
| 'stringCallbackFactory': function (callback, context) { | ||
| return function stringCallback () { | ||
| context[callback].apply(context, arguments); | ||
| }; | ||
| }, | ||
| 'functionCallbackFactory': function (callback, context) { | ||
| return function functionCallback () { | ||
| callback.apply(context, arguments); | ||
| }; | ||
| }, | ||
| 'bindTo': function (target, event, callback, context) { | ||
@@ -49,6 +52,6 @@ | ||
| // default to self if context not provided | ||
| context = context || self; | ||
| var ctx = context || self; | ||
| // if this binding already made, return it | ||
| var bound = self.isAlreadyBound(target, event, callback, context); | ||
| var bound = self.isAlreadyBound(target, event, callback, ctx); | ||
| if (bound) { | ||
@@ -58,16 +61,16 @@ return bound; | ||
| var callbackFunc, args; | ||
| // if a jquery object | ||
| if (target.constructor && target.constructor.fn && target.constructor.fn.on === target.on) { | ||
| if (self.isTargetJquery(target)) { | ||
| // jquery does not take context in .on() | ||
| // cannot assume on takes context as a param for bindable object | ||
| // create a callback which will apply the original callback in the correct context | ||
| callbackFunc = self.callbackFactory(callback, context); | ||
| // create a callback which will apply the original callback | ||
| // in the correct context | ||
| callbackFunc = self.callbackFactory(callback, ctx); | ||
| args = [event, callbackFunc]; | ||
| } else { | ||
| } | ||
| else { | ||
| // Backbone accepts context when binding, simply pass it on | ||
| callbackFunc = (typeof callback === 'string') ? context[callback] : callback; | ||
| args = [event, callbackFunc, context]; | ||
| callbackFunc = (typeof callback === 'string') ? ctx[callback] : callback; | ||
| args = [event, callbackFunc, ctx]; | ||
| } | ||
@@ -84,3 +87,3 @@ | ||
| 'callback': callbackFunc, | ||
| 'context': context | ||
| 'context': ctx | ||
| }; | ||
@@ -94,2 +97,8 @@ | ||
| 'isTargetJquery': function (target) { | ||
| var constructor = target.constructor; | ||
| return constructor && constructor.fn && constructor.fn.on === target.on; | ||
| }, | ||
| 'bindOnceTo': function (target, event, callback, context) { | ||
@@ -108,3 +117,2 @@ | ||
| // this is a wrapper | ||
@@ -111,0 +119,0 @@ var onceBinding = function () { |
@@ -21,2 +21,16 @@ describe('lib/assert', function () { | ||
| it('should test numbers', function () { | ||
| expect(function () { | ||
| topic.number('123'); | ||
| }).to.throw(Error); | ||
| expect(function () { | ||
| topic.number(parseInt('123', 10)); | ||
| }).to.not.throw(Error); | ||
| expect(function () { | ||
| topic.number(123); | ||
| }).to.not.throw(Error); | ||
| }); | ||
| describe('should test empty', function () { | ||
@@ -52,3 +66,2 @@ | ||
| }); | ||
| }); |
Network access
Supply chain riskThis module accesses the network.
Found 1 instance in 1 package
New author
Supply chain riskA new npm collaborator published a version of the package for the first time. New collaborators are usually benign additions to a project, but do indicate a change to the security surface area of a package.
Found 1 instance in 1 package
Environment variable access
Supply chain riskPackage accesses environment variables, which may be a sign of credential stuffing or data theft.
Found 1 instance in 1 package
Network access
Supply chain riskThis module accesses the network.
Found 1 instance in 1 package
Environment variable access
Supply chain riskPackage accesses environment variables, which may be a sign of credential stuffing or data theft.
Found 1 instance in 1 package
249619
0.46%5595
0.52%3
50%