{removeSync:remove} = require 'remove'
-MODULE_LINK = 'node_modules/limn'
+MODULE_LINK = 'node_modules/limn'
+APP_BUNDLE_PATH = 'var/js/limn.no-deps.js'
+APP_BUNDLE_MIN_PATH = APP_BUNDLE_PATH.replace /\.js$/, '.min.js'
+VENDOR_BUNDLE_PATH = 'var/vendor/vendor-bundle.js'
+VENDOR_BUNDLE_MIN_PATH = VENDOR_BUNDLE_PATH.replace /\.js$/, '.min.js'
+DIST_PATH = 'dist/limn.js'
+DIST_MIN_PATH = DIST_PATH.replace /\.js$/, '.min.js'
task \setup 'Ensure project is set up for development.' ->
invoke \install
invoke \link
- invoke \update_version
+ err, version <- writeVersionFile 'src/version.js'
task \server 'Start dev server' ->
invoke \setup
coco <[ -bjc package.co ]>
- {sources} = require 'limn/server/view-helpers'
+ {sources} = require 'limn/server/view-helpers'
browserify = require 'browserify'
Coco = require 'coco'
Jade = require 'jade'
yaml = require 'js-yaml'
matchExt = /((?:\.min)?)\.mod((?:\.min)?)\.js$/i
+ fullExt = /(\.(min|mod|amd|jade))*\.js$/i
console.log 'Building source...'
Seq()
.set sources("www/modules.yaml", 'development').map -> it.slice 1
.seqEach (srcfile) ->
return @ok() unless matchExt.test srcfile
- outfile = (if _.startsWith srcfile, 'vendor' then 'static' else 'www') + '/' + srcfile
+ outfile = (if _.startsWith srcfile, 'vendor' then 'static' else 'lib') + '/' + srcfile.replace /^js\/limn\//, ''
infile = outfile.replace matchExt, '$1$2.js'
- return @ok() unless exists infile
+ unless exists infile
+ console.log " Wrapping JS in Module:\t Cannot find #infile!"
+ return @ok()
return @ok() if _.startsWith(srcfile, 'vendor') and exists outfile
- parts = infile.replace matchExt, '' .split '/' .slice 2
+ parts = srcfile.replace fullExt, '' .split '/' .slice 1
parts.pop() if 'index' is _.last parts
ID = parts.join '/'
console.log " Wrapping JS in Module:\t #infile \t-->\t #outfile"
task \bundle 'Build application and vendor bundles' ->
invoke \bundle_app
invoke \bundle_vendor
+ invoke \bundle_combine
task \bundle_app 'Build application bundle' ->
{sources} = require 'limn/server/view-helpers'
- app_bundle_path = 'var/js/limn/app-bundle.js'
app_sources = sources("www/modules.yaml", 'development')
.filter -> not _.startsWith it, '/vendor'
.map -> it.slice 1 .replace /js\/limn/, 'lib'
- mkdirp dirname app_bundle_path
- bundle_js app_bundle_path, app_sources, {-minify}
+ mkdirp dirname APP_BUNDLE_PATH
+ bundle_js APP_BUNDLE_PATH, app_sources, {-minify}
- app_bundle_min_path = app_bundle_path.replace /\.js$/, '.min.js'
- print 'Minifying into', app_bundle_min_path.magenta.bold, '... '
- write app_bundle_min_path, minify read app_bundle_path
+ APP_BUNDLE_MIN_PATH = APP_BUNDLE_PATH.replace /\.js$/, '.min.js'
+ print 'Minifying into', APP_BUNDLE_MIN_PATH.magenta.bold, '... '
+ write APP_BUNDLE_MIN_PATH, minify read APP_BUNDLE_PATH
say 'ok.\n'
task \bundle_vendor 'Build vendor bundle' ->
{sources} = require 'limn/server/view-helpers'
- vendor_bundle_path = 'var/vendor/vendor-bundle.js'
+ VENDOR_BUNDLE_PATH = 'var/vendor/vendor-bundle.js'
vendor_sources = sources("www/modules.yaml", 'development')
.filter -> _.startsWith it, '/vendor'
.map -> "static#it"
- mkdirp dirname vendor_bundle_path
- bundle_js vendor_bundle_path, vendor_sources, {-minify}
+ mkdirp dirname VENDOR_BUNDLE_PATH
+ bundle_js VENDOR_BUNDLE_PATH, vendor_sources, {-minify}
- vendor_bundle_min_path = vendor_bundle_path.replace /\.js$/, '.min.js'
- print 'Minifying into', vendor_bundle_min_path.magenta.bold, '... '
- write vendor_bundle_min_path, minify read vendor_bundle_path
+ VENDOR_BUNDLE_MIN_PATH = VENDOR_BUNDLE_PATH.replace /\.js$/, '.min.js'
+ print 'Minifying into', VENDOR_BUNDLE_MIN_PATH.magenta.bold, '... '
+ write VENDOR_BUNDLE_MIN_PATH, minify read VENDOR_BUNDLE_PATH
say 'ok.\n'
+task \bundle_combine 'Combine bundles into dist file' ->
+ print 'Writing dist file', DIST_PATH.magenta.bold , '... '
+ mkdirp dirname DIST_PATH
+ write DIST_PATH, "#{read VENDOR_BUNDLE_PATH}\n#{read APP_BUNDLE_PATH}\n"
+ say 'ok.\n'
+
+ print 'Writing minified dist file', DIST_MIN_PATH.magenta.bold , '... '
+ mkdirp dirname DIST_MIN_PATH
+ write DIST_MIN_PATH, "#{read VENDOR_BUNDLE_MIN_PATH}\n#{read APP_BUNDLE_MIN_PATH}\n"
+ say 'ok.\n'
+
+
task \test 'Rebuild test files and run tests' ->
task \clean 'Clean up environment and artifacts' ->
invoke \cleanup_tests
- remove [MODULE_LINK, 'var', 'tmp/dist'], {+ignoreMissing, +verbose}
+ remove [MODULE_LINK, 'lib', 'var', 'dist'], {+ignoreMissing, +verbose}
.join '\n'
-# task \dist 'Assemble a distribution package for deploy' ->
-# invoke \cleanup_tests
-# ...
-
-
var Backbone, op, AppView, _ref, _;
Backbone = require('backbone');
-_ref = require('kraken/util'), _ = _ref._, op = _ref.op;
+_ref = require('limn/util'), _ = _ref._, op = _ref.op;
/**
* @class Application view, automatically attaching to an existing element
* found at `appSelector`.
+++ /dev/null
-require.define('/node_modules/kraken/app.js.js', function(require, module, exports, __dirname, __filename, undefined){
-
-var Backbone, op, AppView, _ref, _;
-Backbone = require('backbone');
-_ref = require('kraken/util'), _ = _ref._, op = _ref.op;
-/**
- * @class Application view, automatically attaching to an existing element
- * found at `appSelector`.
- * @extends Backbone.View
- */
-AppView = exports.AppView = Backbone.View.extend({
- appSelector: '#content .inner'
- /**
- * @constructor
- */,
- constructor: (function(){
- function AppView(options){
- var that, _this = this;
- options == null && (options = {});
- if (typeof options === 'function') {
- this.initialize = options;
- options = {};
- } else {
- if (that = options.initialize) {
- this.initialize = that;
- }
- }
- if (that = options.appSelector) {
- this.appSelector = that;
- }
- options.el || (options.el = jQuery(this.appSelector)[0]);
- Backbone.View.call(this, options);
- jQuery(function(){
- return _this.render();
- });
- return this;
- }
- return AppView;
- }())
- /**
- * Override to set up your app. This method may be passed
- * as an option to the constructor.
- */,
- initialize: function(){}
- /**
- * Append subviews.
- */,
- render: function(){
- var _ref;
- if (this.view && !((_ref = this.view.$el.parent()) != null && _ref.length)) {
- return this.$el.append(this.view.el);
- }
- },
- getClassName: function(){
- return (this.constructor.name || this.constructor.displayName) + "";
- },
- toString: function(){
- return this.getClassName() + "()";
- }
-});
-
-});
var op, ReadyEmitter, AssetManager, _ref, _;
-_ref = require('kraken/util'), _ = _ref._, op = _ref.op;
-ReadyEmitter = require('kraken/util/event').ReadyEmitter;
+_ref = require('limn/util'), _ = _ref._, op = _ref.op;
+ReadyEmitter = require('limn/util/event').ReadyEmitter;
AssetManager = (function(superclass){
AssetManager.displayName = 'AssetManager';
var prototype = __extend(AssetManager, superclass).prototype, constructor = AssetManager;
var Backbone, op, BaseBackboneMixin, Mixin, mixinBase, _ref, _, __slice = [].slice;
Backbone = require('backbone');
-_ref = require('kraken/util'), _ = _ref._, op = _ref.op;
+_ref = require('limn/util'), _ = _ref._, op = _ref.op;
BaseBackboneMixin = exports.BaseBackboneMixin = {
initialize: function(){
return this.__apply_bind__();
-require.define('/node_modules/kraken/base/base-mixin.js.js', function(require, module, exports, __dirname, __filename, undefined){
+require.define('/node_modules/limn/base/base-mixin.js', function(require, module, exports, __dirname, __filename, undefined){
var Backbone, op, BaseBackboneMixin, Mixin, mixinBase, _ref, _, __slice = [].slice;
Backbone = require('backbone');
-_ref = require('kraken/util'), _ = _ref._, op = _ref.op;
+_ref = require('limn/util'), _ = _ref._, op = _ref.op;
BaseBackboneMixin = exports.BaseBackboneMixin = {
initialize: function(){
return this.__apply_bind__();
var Backbone, op, BaseBackboneMixin, mixinBase, BaseModel, BaseList, _ref, _, __slice = [].slice;
Backbone = require('backbone');
-_ref = require('kraken/util'), _ = _ref._, op = _ref.op;
-_ref = require('kraken/base/base-mixin'), BaseBackboneMixin = _ref.BaseBackboneMixin, mixinBase = _ref.mixinBase;
+_ref = require('limn/util'), _ = _ref._, op = _ref.op;
+_ref = require('limn/base/base-mixin'), BaseBackboneMixin = _ref.BaseBackboneMixin, mixinBase = _ref.mixinBase;
/**
* @class Base model, extending Backbone.Model, used by scaffold and others.
* @extends Backbone.Model
return it.id || it.get('id') || it.cid;
});
},
+ url: function(){
+ var id;
+ id = this.get('id') || this.get('slug');
+ if (id) {
+ return this.urlRoot + "/" + id + ".json";
+ } else {
+ return this.urlRoot + ".json";
+ }
+ },
+ load: function(){
+ return this.loadCollection();
+ },
+ loadCollection: function(){
+ var _this = this;
+ this.wait();
+ this.trigger('load', this);
+ this.fetch({
+ success: function(){
+ _this.unwait();
+ return _this.trigger('load-success', _this);
+ },
+ error: function(){
+ _this.unwait();
+ return _this.trigger.apply(_this, ['load-error', _this].concat(__slice.call(arguments)));
+ }
+ });
+ return this;
+ },
toKVPairs: function(){
return _.collapseObject(this.toJSON());
},
-require.define('/node_modules/kraken/base/base-model.js.js', function(require, module, exports, __dirname, __filename, undefined){
+require.define('/node_modules/limn/base/base-model.js', function(require, module, exports, __dirname, __filename, undefined){
var Backbone, op, BaseBackboneMixin, mixinBase, BaseModel, BaseList, _ref, _, __slice = [].slice;
Backbone = require('backbone');
-_ref = require('kraken/util'), _ = _ref._, op = _ref.op;
-_ref = require('kraken/base/base-mixin'), BaseBackboneMixin = _ref.BaseBackboneMixin, mixinBase = _ref.mixinBase;
+_ref = require('limn/util'), _ = _ref._, op = _ref.op;
+_ref = require('limn/base/base-mixin'), BaseBackboneMixin = _ref.BaseBackboneMixin, mixinBase = _ref.mixinBase;
/**
* @class Base model, extending Backbone.Model, used by scaffold and others.
* @extends Backbone.Model
return it.id || it.get('id') || it.cid;
});
},
+ url: function(){
+ var id;
+ id = this.get('id') || this.get('slug');
+ if (id) {
+ return this.urlRoot + "/" + id + ".json";
+ } else {
+ return this.urlRoot + ".json";
+ }
+ },
+ load: function(){
+ return this.loadCollection();
+ },
+ loadCollection: function(){
+ var _this = this;
+ this.wait();
+ this.trigger('load', this);
+ this.fetch({
+ success: function(){
+ _this.unwait();
+ return _this.trigger('load-success', _this);
+ },
+ error: function(){
+ _this.unwait();
+ return _this.trigger.apply(_this, ['load-error', _this].concat(__slice.call(arguments)));
+ }
+ });
+ return this;
+ },
toKVPairs: function(){
return _.collapseObject(this.toJSON());
},
var Backbone, op, BaseBackboneMixin, mixinBase, BaseModel, DataBinding, BaseView, ViewList, _ref, _, __slice = [].slice;
Backbone = require('backbone');
-_ref = require('kraken/util'), _ = _ref._, op = _ref.op;
-_ref = require('kraken/base/base-mixin'), BaseBackboneMixin = _ref.BaseBackboneMixin, mixinBase = _ref.mixinBase;
-BaseModel = require('kraken/base/base-mixin').BaseModel;
-DataBinding = require('kraken/base/data-binding').DataBinding;
+_ref = require('limn/util'), _ = _ref._, op = _ref.op;
+_ref = require('limn/base/base-mixin'), BaseBackboneMixin = _ref.BaseBackboneMixin, mixinBase = _ref.mixinBase;
+BaseModel = require('limn/base/base-mixin').BaseModel;
+DataBinding = require('limn/base/data-binding').DataBinding;
/**
* @class Base view, extending Backbone.View, used by scaffold and others.
* @extends Backbone.View
-require.define('/node_modules/kraken/base/base-view.js.js', function(require, module, exports, __dirname, __filename, undefined){
+require.define('/node_modules/limn/base/base-view.js', function(require, module, exports, __dirname, __filename, undefined){
var Backbone, op, BaseBackboneMixin, mixinBase, BaseModel, DataBinding, BaseView, ViewList, _ref, _, __slice = [].slice;
Backbone = require('backbone');
-_ref = require('kraken/util'), _ = _ref._, op = _ref.op;
-_ref = require('kraken/base/base-mixin'), BaseBackboneMixin = _ref.BaseBackboneMixin, mixinBase = _ref.mixinBase;
-BaseModel = require('kraken/base/base-mixin').BaseModel;
-DataBinding = require('kraken/base/data-binding').DataBinding;
+_ref = require('limn/util'), _ = _ref._, op = _ref.op;
+_ref = require('limn/base/base-mixin'), BaseBackboneMixin = _ref.BaseBackboneMixin, mixinBase = _ref.mixinBase;
+BaseModel = require('limn/base/base-mixin').BaseModel;
+DataBinding = require('limn/base/data-binding').DataBinding;
/**
* @class Base view, extending Backbone.View, used by scaffold and others.
* @extends Backbone.View
EventEmitter = require('events').EventEmitter;
EventEmitter.prototype.off = EventEmitter.prototype.removeListener;
EventEmitter.prototype.trigger = EventEmitter.prototype.emit;
-_ref = require('kraken/util'), _ = _ref._, op = _ref.op;
+_ref = require('limn/util'), _ = _ref._, op = _ref.op;
/**
* @class Eventful base class.
* @extends EventEmitter
-require.define('/node_modules/kraken/base/base.js.js', function(require, module, exports, __dirname, __filename, undefined){
+require.define('/node_modules/limn/base/base.js', function(require, module, exports, __dirname, __filename, undefined){
var EventEmitter, op, Base, k, _ref, _, _i, _len, __slice = [].slice;
EventEmitter = require('events').EventEmitter;
EventEmitter.prototype.off = EventEmitter.prototype.removeListener;
EventEmitter.prototype.trigger = EventEmitter.prototype.emit;
-_ref = require('kraken/util'), _ = _ref._, op = _ref.op;
+_ref = require('limn/util'), _ = _ref._, op = _ref.op;
/**
* @class Eventful base class.
* @extends EventEmitter
var op, BaseModel, BaseList, Cascade, CascadingModel, _ref, _;
-_ref = require('kraken/util'), _ = _ref._, op = _ref.op;
-_ref = require('kraken/base/base-model'), BaseModel = _ref.BaseModel, BaseList = _ref.BaseList;
-Cascade = require('kraken/util/cascade');
+_ref = require('limn/util'), _ = _ref._, op = _ref.op;
+_ref = require('limn/base/base-model'), BaseModel = _ref.BaseModel, BaseList = _ref.BaseList;
+Cascade = require('limn/util/cascade');
/**
* @class A model that implements cascading lookups for its attributes.
*/
-require.define('/node_modules/kraken/base/cascading-model.js.js', function(require, module, exports, __dirname, __filename, undefined){
+require.define('/node_modules/limn/base/cascading-model.js', function(require, module, exports, __dirname, __filename, undefined){
var op, BaseModel, BaseList, Cascade, CascadingModel, _ref, _;
-_ref = require('kraken/util'), _ = _ref._, op = _ref.op;
-_ref = require('kraken/base/base-model'), BaseModel = _ref.BaseModel, BaseList = _ref.BaseList;
-Cascade = require('kraken/util/cascade');
+_ref = require('limn/util'), _ = _ref._, op = _ref.op;
+_ref = require('limn/base/base-model'), BaseModel = _ref.BaseModel, BaseList = _ref.BaseList;
+Cascade = require('limn/util/cascade');
/**
* @class A model that implements cascading lookups for its attributes.
*/
var Backbone, op, DataBinding, _ref, _;
Backbone = require('backbone');
-_ref = require('kraken/util'), _ = _ref._, op = _ref.op;
+_ref = require('limn/util'), _ = _ref._, op = _ref.op;
exports.DataBinding = DataBinding = (function(){
DataBinding.displayName = 'DataBinding';
var prototype = DataBinding.prototype, constructor = DataBinding;
-require.define('/node_modules/kraken/base/data-binding.js.js', function(require, module, exports, __dirname, __filename, undefined){
+require.define('/node_modules/limn/base/data-binding.js', function(require, module, exports, __dirname, __filename, undefined){
var Backbone, op, DataBinding, _ref, _;
Backbone = require('backbone');
-_ref = require('kraken/util'), _ = _ref._, op = _ref.op;
+_ref = require('limn/util'), _ = _ref._, op = _ref.op;
exports.DataBinding = DataBinding = (function(){
DataBinding.displayName = 'DataBinding';
var prototype = DataBinding.prototype, constructor = DataBinding;
var mixins, models, views, cache, cascading, data_binding;
-exports.Base = require('kraken/base/base');
-mixins = require('kraken/base/base-mixin');
-models = require('kraken/base/base-model');
-views = require('kraken/base/base-view');
-cache = require('kraken/base/model-cache');
-cascading = require('kraken/base/cascading-model');
-data_binding = require('kraken/base/data-binding');
+exports.Base = require('limn/base/base');
+mixins = require('limn/base/base-mixin');
+models = require('limn/base/base-model');
+views = require('limn/base/base-view');
+cache = require('limn/base/model-cache');
+cascading = require('limn/base/cascading-model');
+data_binding = require('limn/base/data-binding');
__import(__import(__import(__import(__import(__import(exports, mixins), models), views), cache), cascading), data_binding);
function __import(obj, src){
var own = {}.hasOwnProperty;
-require.define('/node_modules/kraken/base/index.js.js', function(require, module, exports, __dirname, __filename, undefined){
+require.define('/node_modules/limn/base.js', function(require, module, exports, __dirname, __filename, undefined){
var mixins, models, views, cache, cascading, data_binding;
-exports.Base = require('kraken/base/base');
-mixins = require('kraken/base/base-mixin');
-models = require('kraken/base/base-model');
-views = require('kraken/base/base-view');
-cache = require('kraken/base/model-cache');
-cascading = require('kraken/base/cascading-model');
-data_binding = require('kraken/base/data-binding');
+exports.Base = require('limn/base/base');
+mixins = require('limn/base/base-mixin');
+models = require('limn/base/base-model');
+views = require('limn/base/base-view');
+cache = require('limn/base/model-cache');
+cascading = require('limn/base/cascading-model');
+data_binding = require('limn/base/data-binding');
__import(__import(__import(__import(__import(__import(exports, mixins), models), views), cache), cascading), data_binding);
function __import(obj, src){
var own = {}.hasOwnProperty;
var Seq, ReadyEmitter, ModelCache, _;
_ = require('underscore');
Seq = require('seq');
-ReadyEmitter = require('kraken/util/event').ReadyEmitter;
+ReadyEmitter = require('limn/util/event').ReadyEmitter;
/**
* @class Caches models and provides static lookups by ID.
*/
-require.define('/node_modules/kraken/base/model-cache.js.js', function(require, module, exports, __dirname, __filename, undefined){
+require.define('/node_modules/limn/base/model-cache.js', function(require, module, exports, __dirname, __filename, undefined){
var Seq, ReadyEmitter, ModelCache, _;
_ = require('underscore');
Seq = require('seq');
-ReadyEmitter = require('kraken/util/event').ReadyEmitter;
+ReadyEmitter = require('limn/util/event').ReadyEmitter;
/**
* @class Caches models and provides static lookups by ID.
*/
--- /dev/null
+var Backbone, op, BaseBackboneMixin, mixinBase, ResourceRouter, _ref, _;
+Backbone = require('backbone');
+_ref = require('limn/util'), _ = _ref._, op = _ref.op;
+_ref = require('limn/base/base-mixin'), BaseBackboneMixin = _ref.BaseBackboneMixin, mixinBase = _ref.mixinBase;
+ResourceRouter = exports.ResourceRouter = Backbone.Router.extend(mixinBase({
+ __bind__: []
+ /**
+ * Singular, lowercase resource-noun.
+ * @optional
+ * @type String
+ * @example "user"
+ */,
+ id: null
+ /**
+ * Plural, lowercase resource-noun.
+ * @required
+ * @type String
+ * @example "users"
+ */,
+ name: null,
+ constructor: (function(){
+ function ResourceRouter(opts){
+ opts == null && (opts = {});
+ this.__class__ = this.constructor;
+ this.__superclass__ = this.constructor.__super__.constructor;
+ this.waitingOn = 0;
+ opts.routes || (opts.routes = this.makeRoutes());
+ return Backbone.Router.apply(this, opts);
+ }
+ return ResourceRouter;
+ }()),
+ makeRoutes: function(){
+ var name, id, routes;
+ name = this.name, id = this.id;
+ routes = {};
+ if (typeof this.create === 'function') {
+ routes[name + "/(new|edit)"] = this.create;
+ }
+ if (typeof this.edit === 'function') {
+ routes[name + "/:" + id + "/edit"] = this.edit;
+ }
+ if (typeof this.show === 'function') {
+ routes[name + "/:" + id] = this.show;
+ }
+ if (typeof this.index === 'function') {
+ return routes[name + ""] = this.index;
+ }
+ }
+}));
\ No newline at end of file
var models, views;
-models = require('kraken/base/scaffold/scaffold-model');
-views = require('kraken/base/scaffold/scaffold-view');
+models = require('limn/base/scaffold/scaffold-model');
+views = require('limn/base/scaffold/scaffold-view');
__import(__import(exports, models), views);
function __import(obj, src){
var own = {}.hasOwnProperty;
-require.define('/node_modules/kraken/base/scaffold/index.js.js', function(require, module, exports, __dirname, __filename, undefined){
+require.define('/node_modules/limn/base/scaffold.js', function(require, module, exports, __dirname, __filename, undefined){
var models, views;
-models = require('kraken/base/scaffold/scaffold-model');
-views = require('kraken/base/scaffold/scaffold-view');
+models = require('limn/base/scaffold/scaffold-model');
+views = require('limn/base/scaffold/scaffold-view');
__import(__import(exports, models), views);
function __import(obj, src){
var own = {}.hasOwnProperty;
var op, BaseModel, BaseList, Field, FieldList, _, _ref, __slice = [].slice;
-_ = require('kraken/util/underscore');
-op = require('kraken/util/op');
-_ref = require('kraken/base'), BaseModel = _ref.BaseModel, BaseList = _ref.BaseList;
+_ = require('limn/util/underscore');
+op = require('limn/util/op');
+_ref = require('limn/base'), BaseModel = _ref.BaseModel, BaseList = _ref.BaseList;
Field = exports.Field = BaseModel.extend({
valueAttribute: 'value',
defaults: function(){
-require.define('/node_modules/kraken/base/scaffold/scaffold-model.js.js', function(require, module, exports, __dirname, __filename, undefined){
+require.define('/node_modules/limn/base/scaffold/scaffold-model.js', function(require, module, exports, __dirname, __filename, undefined){
var op, BaseModel, BaseList, Field, FieldList, _, _ref, __slice = [].slice;
-_ = require('kraken/util/underscore');
-op = require('kraken/util/op');
-_ref = require('kraken/base'), BaseModel = _ref.BaseModel, BaseList = _ref.BaseList;
+_ = require('limn/util/underscore');
+op = require('limn/util/op');
+_ref = require('limn/base'), BaseModel = _ref.BaseModel, BaseList = _ref.BaseList;
Field = exports.Field = BaseModel.extend({
valueAttribute: 'value',
defaults: function(){
var op, BaseView, Field, FieldList, FieldView, Scaffold, _, _ref;
-_ = require('kraken/util/underscore');
-op = require('kraken/util/op');
-BaseView = require('kraken/base').BaseView;
-_ref = require('kraken/base/scaffold/scaffold-model'), Field = _ref.Field, FieldList = _ref.FieldList;
+_ = require('limn/util/underscore');
+op = require('limn/util/op');
+BaseView = require('limn/base').BaseView;
+_ref = require('limn/base/scaffold/scaffold-model'), Field = _ref.Field, FieldList = _ref.FieldList;
FieldView = exports.FieldView = BaseView.extend({
tagName: 'div',
className: 'field',
-require.define('/node_modules/kraken/base/scaffold/scaffold-view.js.js', function(require, module, exports, __dirname, __filename, undefined){
+require.define('/node_modules/limn/base/scaffold/scaffold-view.js', function(require, module, exports, __dirname, __filename, undefined){
var op, BaseView, Field, FieldList, FieldView, Scaffold, _, _ref;
-_ = require('kraken/util/underscore');
-op = require('kraken/util/op');
-BaseView = require('kraken/base').BaseView;
-_ref = require('kraken/base/scaffold/scaffold-model'), Field = _ref.Field, FieldList = _ref.FieldList;
+_ = require('limn/util/underscore');
+op = require('limn/util/op');
+BaseView = require('limn/base').BaseView;
+_ref = require('limn/base/scaffold/scaffold-model'), Field = _ref.Field, FieldList = _ref.FieldList;
FieldView = exports.FieldView = BaseView.extend({
tagName: 'div',
className: 'field',
var moment, Backbone, op, ReadyEmitter, Parsers, ParserMixin, KNOWN_CHART_TYPES, ChartType, _ref, _, __slice = [].slice;
moment = require('moment');
Backbone = require('backbone');
-_ref = require('kraken/util'), _ = _ref._, op = _ref.op;
-ReadyEmitter = require('kraken/util/event').ReadyEmitter;
-_ref = require('kraken/util/parser'), Parsers = _ref.Parsers, ParserMixin = _ref.ParserMixin;
+_ref = require('limn/util'), _ = _ref._, op = _ref.op;
+ReadyEmitter = require('limn/util/event').ReadyEmitter;
+_ref = require('limn/util/parser'), Parsers = _ref.Parsers, ParserMixin = _ref.ParserMixin;
/**
* Map of known libraries by name.
* @type Object
-require.define('/node_modules/kraken/chart/chart-type.js.js', function(require, module, exports, __dirname, __filename, undefined){
+require.define('/node_modules/limn/chart/chart-type.js', function(require, module, exports, __dirname, __filename, undefined){
var moment, Backbone, op, ReadyEmitter, Parsers, ParserMixin, KNOWN_CHART_TYPES, ChartType, _ref, _, __slice = [].slice;
moment = require('moment');
Backbone = require('backbone');
-_ref = require('kraken/util'), _ = _ref._, op = _ref.op;
-ReadyEmitter = require('kraken/util/event').ReadyEmitter;
-_ref = require('kraken/util/parser'), Parsers = _ref.Parsers, ParserMixin = _ref.ParserMixin;
+_ref = require('limn/util'), _ = _ref._, op = _ref.op;
+ReadyEmitter = require('limn/util/event').ReadyEmitter;
+_ref = require('limn/util/parser'), Parsers = _ref.Parsers, ParserMixin = _ref.ParserMixin;
/**
* Map of known libraries by name.
* @type Object
var chart_type, chart_option, dygraphs, d3_chart, d3_elements;
-chart_type = require('kraken/chart/chart-type');
-chart_option = require('kraken/chart/option');
-dygraphs = require('kraken/chart/type/dygraphs');
-d3_chart = require('kraken/chart/type/d3-chart');
-d3_elements = require('kraken/chart/type/d3');
+chart_type = require('limn/chart/chart-type');
+chart_option = require('limn/chart/option');
+dygraphs = require('limn/chart/type/dygraphs');
+d3_chart = require('limn/chart/type/d3-chart');
+d3_elements = require('limn/chart/type/d3');
__import(__import(__import(__import(__import(exports, chart_type), chart_option), dygraphs), d3_chart), d3_elements);
function __import(obj, src){
var own = {}.hasOwnProperty;
-require.define('/node_modules/kraken/chart/index.js.js', function(require, module, exports, __dirname, __filename, undefined){
+require.define('/node_modules/limn/chart.js', function(require, module, exports, __dirname, __filename, undefined){
var chart_type, chart_option, dygraphs, d3_chart, d3_elements;
-chart_type = require('kraken/chart/chart-type');
-chart_option = require('kraken/chart/option');
-dygraphs = require('kraken/chart/type/dygraphs');
-d3_chart = require('kraken/chart/type/d3-chart');
-d3_elements = require('kraken/chart/type/d3');
+chart_type = require('limn/chart/chart-type');
+chart_option = require('limn/chart/option');
+dygraphs = require('limn/chart/type/dygraphs');
+d3_chart = require('limn/chart/type/d3-chart');
+d3_elements = require('limn/chart/type/d3');
__import(__import(__import(__import(__import(exports, chart_type), chart_option), dygraphs), d3_chart), d3_elements);
function __import(obj, src){
var own = {}.hasOwnProperty;
var op, Parsers, ParserMixin, ParsingModel, ParsingView, BaseModel, BaseList, TagSet, KNOWN_TAGS, ChartOption, ChartOptionList, _ref, _, __slice = [].slice;
-_ref = require('kraken/util'), _ = _ref._, op = _ref.op;
-_ref = require('kraken/util/parser'), Parsers = _ref.Parsers, ParserMixin = _ref.ParserMixin, ParsingModel = _ref.ParsingModel, ParsingView = _ref.ParsingView;
-_ref = require('kraken/base'), BaseModel = _ref.BaseModel, BaseList = _ref.BaseList;
+_ref = require('limn/util'), _ = _ref._, op = _ref.op;
+_ref = require('limn/util/parser'), Parsers = _ref.Parsers, ParserMixin = _ref.ParserMixin, ParsingModel = _ref.ParsingModel, ParsingView = _ref.ParsingView;
+_ref = require('limn/base'), BaseModel = _ref.BaseModel, BaseList = _ref.BaseList;
/**
* @class A set of tags.
*/
-require.define('/node_modules/kraken/chart/option/chart-option-model.js.js', function(require, module, exports, __dirname, __filename, undefined){
+require.define('/node_modules/limn/chart/option/chart-option-model.js', function(require, module, exports, __dirname, __filename, undefined){
var op, Parsers, ParserMixin, ParsingModel, ParsingView, BaseModel, BaseList, TagSet, KNOWN_TAGS, ChartOption, ChartOptionList, _ref, _, __slice = [].slice;
-_ref = require('kraken/util'), _ = _ref._, op = _ref.op;
-_ref = require('kraken/util/parser'), Parsers = _ref.Parsers, ParserMixin = _ref.ParserMixin, ParsingModel = _ref.ParsingModel, ParsingView = _ref.ParsingView;
-_ref = require('kraken/base'), BaseModel = _ref.BaseModel, BaseList = _ref.BaseList;
+_ref = require('limn/util'), _ = _ref._, op = _ref.op;
+_ref = require('limn/util/parser'), Parsers = _ref.Parsers, ParserMixin = _ref.ParserMixin, ParsingModel = _ref.ParsingModel, ParsingView = _ref.ParsingView;
+_ref = require('limn/base'), BaseModel = _ref.BaseModel, BaseList = _ref.BaseList;
/**
* @class A set of tags.
*/
var op, BaseView, ChartOption, ChartOptionList, DEBOUNCE_RENDER, ChartOptionView, ChartOptionScaffold, _ref, _;
-_ref = require('kraken/util'), _ = _ref._, op = _ref.op;
-BaseView = require('kraken/base').BaseView;
-_ref = require('kraken/chart/option/chart-option-model'), ChartOption = _ref.ChartOption, ChartOptionList = _ref.ChartOptionList;
+_ref = require('limn/util'), _ = _ref._, op = _ref.op;
+BaseView = require('limn/base').BaseView;
+_ref = require('limn/chart/option/chart-option-model'), ChartOption = _ref.ChartOption, ChartOptionList = _ref.ChartOptionList;
DEBOUNCE_RENDER = exports.DEBOUNCE_RENDER = 100;
/**
* @class View for a single configurable option in a chart type.
ChartOptionView = exports.ChartOptionView = BaseView.extend({
tagName: 'section',
className: 'chart-option field',
- template: require('kraken/template/chart/chart-option'),
+ template: require('limn/template/chart/chart-option'),
type: 'string',
isCollapsed: true,
events: {
__bind__: ['addField'],
tagName: 'form',
className: 'chart-options scaffold',
- template: require('kraken/template/chart/chart-scaffold'),
+ template: require('limn/template/chart/chart-scaffold'),
collectionType: ChartOptionList,
subviewType: ChartOptionView,
events: {
-require.define('/node_modules/kraken/chart/option/chart-option-view.js.js', function(require, module, exports, __dirname, __filename, undefined){
+require.define('/node_modules/limn/chart/option/chart-option-view.js', function(require, module, exports, __dirname, __filename, undefined){
var op, BaseView, ChartOption, ChartOptionList, DEBOUNCE_RENDER, ChartOptionView, ChartOptionScaffold, _ref, _;
-_ref = require('kraken/util'), _ = _ref._, op = _ref.op;
-BaseView = require('kraken/base').BaseView;
-_ref = require('kraken/chart/option/chart-option-model'), ChartOption = _ref.ChartOption, ChartOptionList = _ref.ChartOptionList;
+_ref = require('limn/util'), _ = _ref._, op = _ref.op;
+BaseView = require('limn/base').BaseView;
+_ref = require('limn/chart/option/chart-option-model'), ChartOption = _ref.ChartOption, ChartOptionList = _ref.ChartOptionList;
DEBOUNCE_RENDER = exports.DEBOUNCE_RENDER = 100;
/**
* @class View for a single configurable option in a chart type.
ChartOptionView = exports.ChartOptionView = BaseView.extend({
tagName: 'section',
className: 'chart-option field',
- template: require('kraken/template/chart/chart-option'),
+ template: require('limn/template/chart/chart-option'),
type: 'string',
isCollapsed: true,
events: {
__bind__: ['addField'],
tagName: 'form',
className: 'chart-options scaffold',
- template: require('kraken/template/chart/chart-scaffold'),
+ template: require('limn/template/chart/chart-scaffold'),
collectionType: ChartOptionList,
subviewType: ChartOptionView,
events: {
var model, view;
-model = require('kraken/chart/option/chart-option-model');
-view = require('kraken/chart/option/chart-option-view');
+model = require('limn/chart/option/chart-option-model');
+view = require('limn/chart/option/chart-option-view');
__import(__import(exports, model), view);
function __import(obj, src){
var own = {}.hasOwnProperty;
-require.define('/node_modules/kraken/chart/option/index.js.js', function(require, module, exports, __dirname, __filename, undefined){
+require.define('/node_modules/limn/chart/option.js', function(require, module, exports, __dirname, __filename, undefined){
var model, view;
-model = require('kraken/chart/option/chart-option-model');
-view = require('kraken/chart/option/chart-option-view');
+model = require('limn/chart/option/chart-option-model');
+view = require('limn/chart/option/chart-option-view');
__import(__import(exports, model), view);
function __import(obj, src){
var own = {}.hasOwnProperty;
var d3, ColorBrewer, op, ChartType, D3ChartElement, root, D3ChartType, _ref, _;
d3 = require('d3');
ColorBrewer = require('colorbrewer');
-_ref = require('kraken/util'), _ = _ref._, op = _ref.op;
-ChartType = require('kraken/chart/chart-type').ChartType;
-D3ChartElement = require('kraken/chart/type/d3/d3-chart-element').D3ChartElement;
+_ref = require('limn/util'), _ = _ref._, op = _ref.op;
+ChartType = require('limn/chart/chart-type').ChartType;
+D3ChartElement = require('limn/chart/type/d3/d3-chart-element').D3ChartElement;
root = function(){
return this;
}();
-require.define('/node_modules/kraken/chart/type/d3-chart.js.js', function(require, module, exports, __dirname, __filename, undefined){
+require.define('/node_modules/limn/chart/type/d3-chart.js', function(require, module, exports, __dirname, __filename, undefined){
var d3, ColorBrewer, op, ChartType, D3ChartElement, root, D3ChartType, _ref, _;
d3 = require('d3');
ColorBrewer = require('colorbrewer');
-_ref = require('kraken/util'), _ = _ref._, op = _ref.op;
-ChartType = require('kraken/chart/chart-type').ChartType;
-D3ChartElement = require('kraken/chart/type/d3/d3-chart-element').D3ChartElement;
+_ref = require('limn/util'), _ = _ref._, op = _ref.op;
+ChartType = require('limn/chart/chart-type').ChartType;
+D3ChartElement = require('limn/chart/type/d3/d3-chart-element').D3ChartElement;
root = function(){
return this;
}();
var d3, op, ChartType, root, BarChartType, _ref, _;
d3 = require('d3');
-_ref = require('kraken/util'), _ = _ref._, op = _ref.op;
-ChartType = require('kraken/chart/chart-type').ChartType;
+_ref = require('limn/util'), _ = _ref._, op = _ref.op;
+ChartType = require('limn/chart/chart-type').ChartType;
root = function(){
return this;
}();
var d3, op, D3ChartElement, root, BarChartType, _ref, _, _fmt;
d3 = require('d3');
-_ref = require('kraken/util'), _ = _ref._, op = _ref.op;
-D3ChartElement = require('kraken/chart/type/d3/d3-chart-element').D3ChartElement;
-_fmt = require('kraken/util/formatters');
+_ref = require('limn/util'), _ = _ref._, op = _ref.op;
+D3ChartElement = require('limn/chart/type/d3/d3-chart-element').D3ChartElement;
+_fmt = require('limn/util/formatters');
root = function(){
return this;
}();
-require.define('/node_modules/kraken/chart/type/d3/d3-bar-element.js.js', function(require, module, exports, __dirname, __filename, undefined){
+require.define('/node_modules/limn/chart/type/d3/d3-bar-element.js', function(require, module, exports, __dirname, __filename, undefined){
var d3, op, D3ChartElement, root, BarChartType, _ref, _, _fmt;
d3 = require('d3');
-_ref = require('kraken/util'), _ = _ref._, op = _ref.op;
-D3ChartElement = require('kraken/chart/type/d3/d3-chart-element').D3ChartElement;
-_fmt = require('kraken/util/formatters');
+_ref = require('limn/util'), _ = _ref._, op = _ref.op;
+D3ChartElement = require('limn/chart/type/d3/d3-chart-element').D3ChartElement;
+_fmt = require('limn/util/formatters');
root = function(){
return this;
}();
var d3, ColorBrewer, op, ReadyEmitter, root, KNOWN_CHART_ELEMENTS, D3ChartElement, _ref, _, __slice = [].slice;
d3 = require('d3');
ColorBrewer = require('colorbrewer');
-_ref = require('kraken/util'), _ = _ref._, op = _ref.op;
-ReadyEmitter = require('kraken/util/event').ReadyEmitter;
+_ref = require('limn/util'), _ = _ref._, op = _ref.op;
+ReadyEmitter = require('limn/util/event').ReadyEmitter;
root = function(){
return this;
}();
-require.define('/node_modules/kraken/chart/type/d3/d3-chart-element.js.js', function(require, module, exports, __dirname, __filename, undefined){
+require.define('/node_modules/limn/chart/type/d3/d3-chart-element.js', function(require, module, exports, __dirname, __filename, undefined){
var d3, ColorBrewer, op, ReadyEmitter, root, KNOWN_CHART_ELEMENTS, D3ChartElement, _ref, _, __slice = [].slice;
d3 = require('d3');
ColorBrewer = require('colorbrewer');
-_ref = require('kraken/util'), _ = _ref._, op = _ref.op;
-ReadyEmitter = require('kraken/util/event').ReadyEmitter;
+_ref = require('limn/util'), _ = _ref._, op = _ref.op;
+ReadyEmitter = require('limn/util/event').ReadyEmitter;
root = function(){
return this;
}();
var ColorBrewer, op, ChartType, GeoWorldChartType, data, main, _ref, _;
ColorBrewer = require('colorbrewer');
-_ref = require('kraken/util'), _ = _ref._, op = _ref.op;