/**
 * class-component.js v5.1.0
 * author: Yoshiya Hinosawa ( http://github.com/kt3k )
 * license: MIT
 */


(function ($) {
    'use strict';

    var reSpaces = / +/;

    var ClassComponentManager = require('./lib/ClassComponentManager');
    var ClassComponentConfiguration = require('./lib/ClassComponentConfiguration');

    /**
     Registers a class component of the given name using the given defining function.

     See README.md for details.

     @param {String} className The class name
     @param {Function} definition The class definition
     */
    var registerClassComponent = function (name, definingFunction) {

        if (typeof name !== 'string') {

            throw new Error('`name` of a class component has to be a string');

        }

        if (typeof definingFunction !== 'function') {

            throw new Error('`definingFunction` of a class component has to be a string');

        }

        ccm.register(name, new ClassComponentConfiguration(name, definingFunction));


        $(document).ready(function () {

            ccm.init(name);

        });

    };



    /**
     * The main namespace for class component modules.
     */
    $.cc = registerClassComponent;
    $.cc.register = registerClassComponent;

    var ccm = $.cc.__manager__ = new ClassComponentManager();


    /**
     * Initialized the all class components of the given names and returns of the promise of all initialization.
     *
     * @param {String[]|String} arguments
     * @return {Promise}
     */
    $.cc.init = function (classNames, elem) {

        if (typeof classNames === 'string') {

            classNames = classNames.split(reSpaces);

        }

        var elemGroups = classNames.map(function (className) {

            return ccm.init(className, elem);

        });

        return Array.prototype.concat.apply([], elemGroups);

    };

    $.cc.subclass = require('subclassjs');

}(jQuery));

@@ -317,24 +317,171 @@
 uration');%0A%0A
+    /**%0A     * The main namespace for class component modules.%0A     */%0A    var cc = $.cc = %7B%7D;%0A%0A    cc.__manager__ = new ClassComponentManager();%0A%0A
     /**%0A    
@@ -713,20 +713,19 @@
     
-var 
+cc.
 register
 Clas
@@ -720,30 +720,16 @@
 register
-ClassComponent
  = funct
@@ -1060,17 +1060,28 @@
       cc
-m
+.__manager__
 .registe
@@ -1203,17 +1203,28 @@
       cc
-m
+.__manager__
 .init(na
@@ -1255,224 +1255,8 @@
 ;%0A%0A%0A
-%0A    /**%0A     * The main namespace for class component modules.%0A     */%0A    $.cc = registerClassComponent;%0A    $.cc.register = registerClassComponent;%0A%0A    var ccm = $.cc.__manager__ = new ClassComponentManager();%0A%0A%0A
     
@@ -1458,18 +1458,16 @@
  */%0A    
-$.
 cc.init 
@@ -1696,17 +1696,28 @@
 eturn cc
-m
+.__manager__
 .init(cl
@@ -1820,14 +1820,38 @@
 %7D;%0A%0A
+%0A    // Exports subclass.%0A
     
-$.
 cc.s

Refactor variable arrangement