changeset 32:4c046f3244ec

new 'id_is' query type. new '_type' attribute.
author casties
date Tue, 02 Feb 2016 19:20:44 +0100
parents 4926885f8a99
children 739eb38ec2a2
files app/ismi-result-types.ts app/query-mode.ts app/query-select.component.ts app/query.service.ts config.js
diffstat 5 files changed, 599 insertions(+), 17 deletions(-) [+]
line wrap: on
line diff
--- a/app/ismi-result-types.ts	Mon Feb 01 20:10:55 2016 +0100
+++ b/app/ismi-result-types.ts	Tue Feb 02 19:20:44 2016 +0100
@@ -6,6 +6,9 @@
             'ismi_id', 'label'
         ]),
     'PERSON': new ResultType('PERSON', 'ismi_id', [
-        'ismi_id', 'name_translit', 'name', 'birth_date', 'death_date', 'link'
+        'ismi_id', 'name_translit', 'name', 'birth_date', 'death_date'
+    ]),
+    'TEXT': new ResultType('TEXT', 'ismi_id', [
+        'ismi_id', 'full_title_translit', 'full_title', 'creation_date'
     ])
 }
--- a/app/query-mode.ts	Mon Feb 01 20:10:55 2016 +0100
+++ b/app/query-mode.ts	Tue Feb 02 19:20:44 2016 +0100
@@ -8,6 +8,7 @@
     {id: 'att_contains', label: 'Attribute (contains)'},
     {id: 'att_contains_norm', label: 'Attribute (contains normalized)'},
     {id: 'att_num_range', label: 'Attribute (number range)'},    
-    {id: 'relation_is', label: 'Relation type is'}
+    {id: 'relation_is', label: 'Relation type is'},
+    {id: 'id_is', label: 'Object ID is'}
 ];
         
--- a/app/query-select.component.ts	Mon Feb 01 20:10:55 2016 +0100
+++ b/app/query-select.component.ts	Tue Feb 02 19:20:44 2016 +0100
@@ -21,7 +21,7 @@
             </option>
         </select>
 
-        <span *ngIf="selectedMode && (selectedMode.id=='type_is' || selectedMode.id=='relation_is')">
+        <span *ngIf="selectedMode?.id=='type_is' || selectedMode?.id=='relation_is'">
             <select *ngIf="queryOptions" [(ngModel)]="selectedOption" (change)="onSelectOption($event)">
                 <option></option>
                 <option *ngFor="#option of queryOptions" [value]="option">
@@ -30,7 +30,7 @@
             </select>
         </span>
 
-        <span *ngIf="selectedMode && (selectedMode.id=='att_contains' || selectedMode.id=='att_contains_norm')">
+        <span *ngIf="selectedMode?.id=='att_contains' || selectedMode?.id=='att_contains_norm'">
             <select [(ngModel)]="selectedOption">
                 <option></option>
                 <option *ngFor="#option of queryOptions" [value]="option">
@@ -41,7 +41,7 @@
             <input type="text" [(ngModel)]="queryInput"/>
         </span>
 
-        <span *ngIf="selectedMode && selectedMode.id=='att_num_range'">
+        <span *ngIf="selectedMode?.id=='att_num_range'">
             <select [(ngModel)]="selectedOption">
                 <option></option>
                 <option *ngFor="#option of queryOptions" [value]="option">
@@ -54,6 +54,10 @@
             <input type="text" [(ngModel)]="queryInput2"/>
         </span>
 
+        <span *ngIf="selectedMode?.id=='id_is'">
+            <input type="text" [(ngModel)]="queryInput"/>
+        </span>
+
         <button type="submit">Submit</button>
     </form>
 </div>
@@ -110,25 +114,30 @@
             var opt = this.selectedOption;
             if (opt) {
                 step = new QueryStep(this.selectedMode, {'objectType': opt});
-           }
+            }
         } else if (this.selectedMode.id == 'relation_is') {
             var opt = this.selectedOption;
             if (opt) {
                 step = new QueryStep(this.selectedMode, {'relationType': opt});
-           }
+            }
         } else if (this.selectedMode.id == 'att_contains') {
             var att = this.selectedOption;
             var val = this.queryInput;
             if (att && val) {
                 step = new QueryStep(this.selectedMode, {'attribute': att, 'value': val});
-           }
+            }
+        } else if (this.selectedMode.id == 'id_is') {
+            var val = this.queryInput;
+            if (val) {
+                step = new QueryStep(this.selectedMode, {'value': val});
+            }
         } else if (this.selectedMode.id == 'att_num_range') {
             var att = this.selectedOption;
             var nlo = this.queryInput;
             var nhi = this.queryInput2;
             if (att && nlo && nhi) {
                 step = new QueryStep(this.selectedMode, {'attribute': att, 'numLo': nlo, 'numHi': nhi});
-           }
+            }
         } else if (this.selectedMode.id == 'att_contains_norm') {
             var att = this.selectedOption;
             var val = this.queryInput;
--- a/app/query.service.ts	Mon Feb 01 20:10:55 2016 +0100
+++ b/app/query.service.ts	Tue Feb 02 19:20:44 2016 +0100
@@ -16,7 +16,8 @@
     //public neo4jBaseUrl = 'https://ismi-dev.mpiwg-berlin.mpg.de/neo4j-ismi/db/data';
     public neo4jBaseUrl = 'http://localhost:7474/db/data';
     public neo4jAuthentication = {'user': 'neo4j', 'password': 'neo5j'};
-    public excludedAttributes = {'type': true};
+    public typeAttribute = '_type';
+    public excludedAttributes = {};
     public invRelPrefix = '<- ';
     public state: QueryState;
     public objectTypes: string[];
@@ -116,6 +117,29 @@
             }
             
             /*
+             * step: object id is
+             */
+            if (mode === 'id_is') {
+                if (!queryMatch) {
+                    // first step - use match clause
+                    queryMatch = `MATCH (n${nIdx} {ismi_id: {att_val${stepIdx}}})`;
+                    queryParams[`att_val${stepIdx}`] = parseInt(params.value, 10);
+                    queryWhere = '';
+                    queryReturn =  `RETURN n${nIdx}`;
+                    returnType = 'node';
+                } else {
+                    // use where clause
+                    if (!queryWhere) {
+                        queryWhere = 'WHERE ';
+                    } else {
+                        queryWhere += ' AND ';
+                    }
+                    queryWhere += `n${nIdx}.ismi_id = {att_val${stepIdx}}`;                    
+                    queryParams[`att_val${stepIdx}`] = parseInt(params.value, 10);
+                }
+            }
+            
+            /*
              * step: relation type is
              */
             if (mode === 'relation_is') {
@@ -174,7 +198,7 @@
             
         });
         // compose query
-        resultQuery = queryMatch + '\n' + queryWhere + '\n' + queryReturn;
+        resultQuery = queryMatch + (queryWhere ? '\n'+queryWhere : '') + '\n' + queryReturn;
         // compose query for attributes of result
         attributesQuery = queryMatch + ' ' + queryWhere + ` WITH DISTINCT keys(n${nIdx}) AS atts`
             + ` UNWIND atts AS att RETURN DISTINCT att ORDER BY att`;
@@ -219,15 +243,16 @@
                 this.state.results = data.results[resIdx].data.map(elem => elem.row[0]);
                 this.state.numResults = this.state.results.length;
                 // count all types
-                var resTypes = {};
+                let resTypes = {};
                 this.state.results.forEach((r) => {
-                    if (resTypes[r.type] == null) {
-                        resTypes[r.type] = 1;
+                    let t = r[this.typeAttribute];
+                    if (resTypes[t] == null) {
+                        resTypes[t] = 1;
                     } else {
-                        resTypes[r.type] += 1;
+                        resTypes[t] += 1;
                     }
                 });
-                var info = '';
+                let info = '';
                 for (var t in resTypes) {
                     info += t + '(' + resTypes[t] + ') ';   
                 }
--- a/config.js	Mon Feb 01 20:10:55 2016 +0100
+++ b/config.js	Tue Feb 02 19:20:44 2016 +0100
@@ -1,5 +1,4 @@
 System.config({
-  baseURL: "/",
   defaultJSExtensions: true,
   transpiler: "typescript",
   typescriptOptions: {
@@ -11,6 +10,547 @@
     "npm:*": "jspm_packages/npm/*",
     "github:*": "jspm_packages/github/*"
   },
+  bundles: {
+    "main-bundle.js": [
+      "app/boot.ts",
+      "npm:zone.js@0.5.10/dist/zone.min",
+      "npm:reflect-metadata@0.1.2",
+      "npm:angular2@2.0.0-beta.1/platform/browser",
+      "app/query-app.component.ts",
+      "npm:angular2@2.0.0-beta.1/src/facade/lang",
+      "npm:reflect-metadata@0.1.2/Reflect",
+      "github:jspm/nodelibs-process@0.1.2",
+      "npm:angular2@2.0.0-beta.1/src/core/angular_entrypoint",
+      "npm:angular2@2.0.0-beta.1/src/platform/browser_common",
+      "npm:angular2@2.0.0-beta.1/compiler",
+      "npm:angular2@2.0.0-beta.1/core",
+      "npm:angular2@2.0.0-beta.1/src/core/reflection/reflection_capabilities",
+      "npm:angular2@2.0.0-beta.1/src/platform/browser/xhr_impl",
+      "npm:angular2@2.0.0-beta.1/src/core/di",
+      "npm:angular2@2.0.0-beta.1/http",
+      "app/query.service.ts",
+      "app/normalization.service.ts",
+      "app/query-select.component.ts",
+      "app/query-result-table.component.ts",
+      "npm:angular2@2.0.0-beta.1/src/core/profile/wtf_init",
+      "npm:angular2@2.0.0-beta.1/src/compiler/xhr",
+      "npm:angular2@2.0.0-beta.1/src/facade/promise",
+      "github:jspm/nodelibs-process@0.1.2/index",
+      "npm:angular2@2.0.0-beta.1/common",
+      "npm:angular2@2.0.0-beta.1/src/core/testability/testability",
+      "npm:angular2@2.0.0-beta.1/src/platform/dom/dom_adapter",
+      "npm:angular2@2.0.0-beta.1/src/platform/dom/events/dom_events",
+      "npm:angular2@2.0.0-beta.1/src/platform/dom/events/key_events",
+      "npm:angular2@2.0.0-beta.1/src/platform/dom/events/hammer_gestures",
+      "npm:angular2@2.0.0-beta.1/src/platform/dom/dom_tokens",
+      "npm:angular2@2.0.0-beta.1/src/platform/dom/dom_renderer",
+      "npm:angular2@2.0.0-beta.1/src/platform/dom/shared_styles_host",
+      "npm:angular2@2.0.0-beta.1/src/animate/browser_details",
+      "npm:angular2@2.0.0-beta.1/src/animate/animation_builder",
+      "npm:angular2@2.0.0-beta.1/src/platform/browser/browser_adapter",
+      "npm:angular2@2.0.0-beta.1/src/platform/browser/testability",
+      "npm:angular2@2.0.0-beta.1/src/platform/dom/events/event_manager",
+      "npm:angular2@2.0.0-beta.1/src/platform/browser/title",
+      "npm:angular2@2.0.0-beta.1/platform/common_dom",
+      "npm:angular2@2.0.0-beta.1/src/platform/browser/tools/tools",
+      "npm:angular2@2.0.0-beta.1/src/compiler/url_resolver",
+      "npm:angular2@2.0.0-beta.1/src/compiler/compiler",
+      "npm:angular2@2.0.0-beta.1/src/core/metadata",
+      "npm:angular2@2.0.0-beta.1/src/core/util",
+      "npm:angular2@2.0.0-beta.1/src/core/prod_mode",
+      "npm:angular2@2.0.0-beta.1/src/facade/facade",
+      "npm:angular2@2.0.0-beta.1/src/core/application_ref",
+      "npm:angular2@2.0.0-beta.1/src/core/application_tokens",
+      "npm:angular2@2.0.0-beta.1/src/core/zone",
+      "npm:angular2@2.0.0-beta.1/src/core/render",
+      "npm:angular2@2.0.0-beta.1/src/core/linker",
+      "npm:angular2@2.0.0-beta.1/src/core/debug/debug_element",
+      "npm:angular2@2.0.0-beta.1/src/core/change_detection",
+      "npm:angular2@2.0.0-beta.1/src/core/platform_directives_and_pipes",
+      "npm:angular2@2.0.0-beta.1/src/core/platform_common_providers",
+      "npm:angular2@2.0.0-beta.1/src/core/application_common_providers",
+      "npm:angular2@2.0.0-beta.1/src/core/reflection/reflection",
+      "npm:angular2@2.0.0-beta.1/src/facade/exceptions",
+      "npm:angular2@2.0.0-beta.1/src/core/di/metadata",
+      "npm:angular2@2.0.0-beta.1/src/core/di/decorators",
+      "npm:angular2@2.0.0-beta.1/src/core/di/forward_ref",
+      "npm:angular2@2.0.0-beta.1/src/core/di/injector",
+      "npm:angular2@2.0.0-beta.1/src/core/di/provider",
+      "npm:angular2@2.0.0-beta.1/src/core/di/key",
+      "npm:angular2@2.0.0-beta.1/src/core/di/exceptions",
+      "npm:angular2@2.0.0-beta.1/src/core/di/opaque_token",
+      "npm:angular2@2.0.0-beta.1/src/http/interfaces",
+      "npm:angular2@2.0.0-beta.1/src/http/enums",
+      "app/query-mode.ts",
+      "app/query-state.ts",
+      "npm:angular2@2.0.0-beta.1/src/http/http",
+      "npm:angular2@2.0.0-beta.1/src/http/backends/xhr_backend",
+      "npm:angular2@2.0.0-beta.1/src/http/backends/jsonp_backend",
+      "npm:angular2@2.0.0-beta.1/src/http/backends/browser_xhr",
+      "npm:angular2@2.0.0-beta.1/src/http/backends/browser_jsonp",
+      "npm:angular2@2.0.0-beta.1/src/http/base_request_options",
+      "npm:angular2@2.0.0-beta.1/src/http/base_response_options",
+      "npm:angular2@2.0.0-beta.1/src/http/static_request",
+      "npm:angular2@2.0.0-beta.1/src/http/static_response",
+      "npm:angular2@2.0.0-beta.1/src/http/headers",
+      "npm:angular2@2.0.0-beta.1/src/http/url_search_params",
+      "npm:rxjs@5.0.0-beta.0/Rx",
+      "app/result-type.ts",
+      "app/ismi-result-types.ts",
+      "app/query-step.ts",
+      "npm:ng2-table@1.0.0-beta.0/ng2-table",
+      "npm:ng2-bootstrap@1.0.1-beta.2/ng2-bootstrap",
+      "npm:angular2@2.0.0-beta.1/src/compiler/schema/element_schema_registry",
+      "npm:angular2@2.0.0-beta.1/src/core/render/api",
+      "npm:angular2@2.0.0-beta.1/src/core/linker/template_ref",
+      "npm:angular2@2.0.0-beta.1/src/core/di/type_literal",
+      "npm:process@0.11.2",
+      "npm:angular2@2.0.0-beta.1/src/common/pipes",
+      "npm:angular2@2.0.0-beta.1/src/common/directives",
+      "npm:angular2@2.0.0-beta.1/src/common/forms",
+      "npm:angular2@2.0.0-beta.1/src/common/common_directives",
+      "npm:angular2@2.0.0-beta.1/src/facade/collection",
+      "npm:angular2@2.0.0-beta.1/src/core/zone/ng_zone",
+      "npm:angular2@2.0.0-beta.1/src/facade/async",
+      "npm:angular2@2.0.0-beta.1/src/platform/dom/events/hammer_common",
+      "npm:angular2@2.0.0-beta.1/src/platform/dom/util",
+      "npm:angular2@2.0.0-beta.1/src/facade/math",
+      "npm:angular2@2.0.0-beta.1/src/animate/css_animation_builder",
+      "npm:angular2@2.0.0-beta.1/src/platform/browser/generic_browser_adapter",
+      "npm:angular2@2.0.0-beta.1/src/platform/dom/debug/by",
+      "npm:angular2@2.0.0-beta.1/src/platform/dom/debug/debug_element_view_listener",
+      "npm:angular2@2.0.0-beta.1/src/platform/browser/tools/common_tools",
+      "npm:angular2@2.0.0-beta.1/src/compiler/runtime_compiler",
+      "npm:angular2@2.0.0-beta.1/src/compiler/template_compiler",
+      "npm:angular2@2.0.0-beta.1/src/compiler/directive_metadata",
+      "npm:angular2@2.0.0-beta.1/src/compiler/source_module",
+      "npm:angular2@2.0.0-beta.1/src/compiler/template_ast",
+      "npm:angular2@2.0.0-beta.1/src/compiler/template_parser",
+      "npm:angular2@2.0.0-beta.1/src/compiler/html_parser",
+      "npm:angular2@2.0.0-beta.1/src/compiler/template_normalizer",
+      "npm:angular2@2.0.0-beta.1/src/compiler/runtime_metadata",
+      "npm:angular2@2.0.0-beta.1/src/compiler/change_detector_compiler",
+      "npm:angular2@2.0.0-beta.1/src/compiler/style_compiler",
+      "npm:angular2@2.0.0-beta.1/src/compiler/view_compiler",
+      "npm:angular2@2.0.0-beta.1/src/compiler/proto_view_compiler",
+      "npm:angular2@2.0.0-beta.1/src/core/change_detection/change_detection",
+      "npm:angular2@2.0.0-beta.1/src/core/linker/compiler",
+      "npm:angular2@2.0.0-beta.1/src/compiler/schema/dom_element_schema_registry",
+      "npm:angular2@2.0.0-beta.1/src/core/metadata/di",
+      "npm:angular2@2.0.0-beta.1/src/core/metadata/directives",
+      "npm:angular2@2.0.0-beta.1/src/core/metadata/view",
+      "npm:angular2@2.0.0-beta.1/src/core/util/decorators",
+      "npm:angular2@2.0.0-beta.1/src/facade/exception_handler",
+      "npm:angular2@2.0.0-beta.1/src/core/linker/dynamic_component_loader",
+      "npm:angular2@2.0.0-beta.1/src/core/console",
+      "npm:angular2@2.0.0-beta.1/src/core/profile/profile",
+      "npm:angular2@2.0.0-beta.1/src/core/linker/directive_resolver",
+      "npm:angular2@2.0.0-beta.1/src/core/linker/view_resolver",
+      "npm:angular2@2.0.0-beta.1/src/core/linker/view_manager",
+      "npm:angular2@2.0.0-beta.1/src/core/linker/query_list",
+      "npm:angular2@2.0.0-beta.1/src/core/linker/element_ref",
+      "npm:angular2@2.0.0-beta.1/src/core/linker/view_ref",
+      "npm:angular2@2.0.0-beta.1/src/core/linker/view_container_ref",
+      "npm:angular2@2.0.0-beta.1/src/core/linker/resolved_metadata_cache",
+      "npm:angular2@2.0.0-beta.1/src/core/linker/view_listener",
+      "npm:angular2@2.0.0-beta.1/src/core/linker/pipe_resolver",
+      "npm:angular2@2.0.0-beta.1/src/core/reflection/reflector",
+      "npm:rxjs@5.0.0-beta.0/util/EmptyError",
+      "npm:rxjs@5.0.0-beta.0/util/ArgumentOutOfRangeError",
+      "npm:rxjs@5.0.0-beta.0/util/ObjectUnsubscribedError",
+      "app/result-column.ts",
+      "npm:rxjs@5.0.0-beta.0/Observable",
+      "npm:angular2@2.0.0-beta.1/src/http/http_utils",
+      "npm:rxjs@5.0.0-beta.0/Subject",
+      "npm:rxjs@5.0.0-beta.0/add/operator/combineLatest-static",
+      "npm:rxjs@5.0.0-beta.0/add/operator/concat-static",
+      "npm:rxjs@5.0.0-beta.0/add/operator/merge-static",
+      "npm:rxjs@5.0.0-beta.0/add/observable/bindCallback",
+      "npm:rxjs@5.0.0-beta.0/add/observable/defer",
+      "npm:rxjs@5.0.0-beta.0/add/observable/empty",
+      "npm:rxjs@5.0.0-beta.0/add/observable/forkJoin",
+      "npm:rxjs@5.0.0-beta.0/add/observable/from",
+      "npm:rxjs@5.0.0-beta.0/add/observable/fromArray",
+      "npm:rxjs@5.0.0-beta.0/add/observable/fromEvent",
+      "npm:rxjs@5.0.0-beta.0/add/observable/fromEventPattern",
+      "npm:rxjs@5.0.0-beta.0/add/observable/fromPromise",
+      "npm:rxjs@5.0.0-beta.0/add/observable/interval",
+      "npm:rxjs@5.0.0-beta.0/add/observable/never",
+      "npm:rxjs@5.0.0-beta.0/add/observable/range",
+      "npm:rxjs@5.0.0-beta.0/add/observable/throw",
+      "npm:rxjs@5.0.0-beta.0/add/observable/timer",
+      "npm:rxjs@5.0.0-beta.0/add/operator/zip-static",
+      "npm:rxjs@5.0.0-beta.0/add/operator/buffer",
+      "npm:rxjs@5.0.0-beta.0/add/operator/bufferCount",
+      "npm:rxjs@5.0.0-beta.0/add/operator/bufferTime",
+      "npm:rxjs@5.0.0-beta.0/add/operator/bufferToggle",
+      "npm:rxjs@5.0.0-beta.0/add/operator/bufferWhen",
+      "npm:rxjs@5.0.0-beta.0/add/operator/catch",
+      "npm:rxjs@5.0.0-beta.0/add/operator/combineAll",
+      "npm:rxjs@5.0.0-beta.0/add/operator/combineLatest",
+      "npm:rxjs@5.0.0-beta.0/add/operator/concat",
+      "npm:rxjs@5.0.0-beta.0/add/operator/concatAll",
+      "npm:rxjs@5.0.0-beta.0/add/operator/concatMap",
+      "npm:rxjs@5.0.0-beta.0/add/operator/concatMapTo",
+      "npm:rxjs@5.0.0-beta.0/add/operator/count",
+      "npm:rxjs@5.0.0-beta.0/add/operator/dematerialize",
+      "npm:rxjs@5.0.0-beta.0/add/operator/debounce",
+      "npm:rxjs@5.0.0-beta.0/add/operator/debounceTime",
+      "npm:rxjs@5.0.0-beta.0/add/operator/defaultIfEmpty",
+      "npm:rxjs@5.0.0-beta.0/add/operator/delay",
+      "npm:rxjs@5.0.0-beta.0/add/operator/distinctUntilChanged",
+      "npm:rxjs@5.0.0-beta.0/add/operator/do",
+      "npm:rxjs@5.0.0-beta.0/add/operator/expand",
+      "npm:rxjs@5.0.0-beta.0/add/operator/filter",
+      "npm:rxjs@5.0.0-beta.0/add/operator/finally",
+      "npm:rxjs@5.0.0-beta.0/add/operator/first",
+      "npm:rxjs@5.0.0-beta.0/add/operator/groupBy",
+      "npm:rxjs@5.0.0-beta.0/add/operator/ignoreElements",
+      "npm:rxjs@5.0.0-beta.0/add/operator/every",
+      "npm:rxjs@5.0.0-beta.0/add/operator/last",
+      "npm:rxjs@5.0.0-beta.0/add/operator/map",
+      "npm:rxjs@5.0.0-beta.0/add/operator/mapTo",
+      "npm:rxjs@5.0.0-beta.0/add/operator/materialize",
+      "npm:rxjs@5.0.0-beta.0/add/operator/merge",
+      "npm:rxjs@5.0.0-beta.0/add/operator/mergeAll",
+      "npm:rxjs@5.0.0-beta.0/add/operator/mergeMap",
+      "npm:rxjs@5.0.0-beta.0/add/operator/mergeMapTo",
+      "npm:rxjs@5.0.0-beta.0/add/operator/multicast",
+      "npm:rxjs@5.0.0-beta.0/add/operator/observeOn",
+      "npm:rxjs@5.0.0-beta.0/add/operator/partition",
+      "npm:rxjs@5.0.0-beta.0/add/operator/publish",
+      "npm:rxjs@5.0.0-beta.0/add/operator/publishBehavior",
+      "npm:rxjs@5.0.0-beta.0/add/operator/publishReplay",
+      "npm:rxjs@5.0.0-beta.0/add/operator/publishLast",
+      "npm:rxjs@5.0.0-beta.0/add/operator/reduce",
+      "npm:rxjs@5.0.0-beta.0/add/operator/repeat",
+      "npm:rxjs@5.0.0-beta.0/add/operator/retry",
+      "npm:rxjs@5.0.0-beta.0/add/operator/retryWhen",
+      "npm:rxjs@5.0.0-beta.0/add/operator/sample",
+      "npm:rxjs@5.0.0-beta.0/add/operator/sampleTime",
+      "npm:rxjs@5.0.0-beta.0/add/operator/scan",
+      "npm:rxjs@5.0.0-beta.0/add/operator/share",
+      "npm:rxjs@5.0.0-beta.0/add/operator/single",
+      "npm:rxjs@5.0.0-beta.0/add/operator/skip",
+      "npm:rxjs@5.0.0-beta.0/add/operator/skipUntil",
+      "npm:rxjs@5.0.0-beta.0/add/operator/skipWhile",
+      "npm:rxjs@5.0.0-beta.0/add/operator/startWith",
+      "npm:rxjs@5.0.0-beta.0/add/operator/subscribeOn",
+      "npm:rxjs@5.0.0-beta.0/add/operator/switch",
+      "npm:rxjs@5.0.0-beta.0/add/operator/switchMap",
+      "npm:rxjs@5.0.0-beta.0/add/operator/switchMapTo",
+      "npm:rxjs@5.0.0-beta.0/add/operator/take",
+      "npm:rxjs@5.0.0-beta.0/add/operator/takeUntil",
+      "npm:rxjs@5.0.0-beta.0/add/operator/takeWhile",
+      "npm:rxjs@5.0.0-beta.0/add/operator/throttle",
+      "npm:rxjs@5.0.0-beta.0/add/operator/throttleTime",
+      "npm:rxjs@5.0.0-beta.0/add/operator/timeout",
+      "npm:rxjs@5.0.0-beta.0/add/operator/timeoutWith",
+      "npm:rxjs@5.0.0-beta.0/add/operator/toArray",
+      "npm:rxjs@5.0.0-beta.0/add/operator/toPromise",
+      "npm:rxjs@5.0.0-beta.0/add/operator/window",
+      "npm:rxjs@5.0.0-beta.0/add/operator/windowCount",
+      "npm:rxjs@5.0.0-beta.0/add/operator/windowTime",
+      "npm:rxjs@5.0.0-beta.0/add/operator/windowToggle",
+      "npm:rxjs@5.0.0-beta.0/add/operator/windowWhen",
+      "npm:rxjs@5.0.0-beta.0/add/operator/withLatestFrom",
+      "npm:rxjs@5.0.0-beta.0/add/operator/zip",
+      "npm:rxjs@5.0.0-beta.0/add/operator/zipAll",
+      "npm:rxjs@5.0.0-beta.0/Subscription",
+      "npm:rxjs@5.0.0-beta.0/Subscriber",
+      "npm:rxjs@5.0.0-beta.0/subject/AsyncSubject",
+      "npm:rxjs@5.0.0-beta.0/subject/ReplaySubject",
+      "npm:rxjs@5.0.0-beta.0/subject/BehaviorSubject",
+      "npm:rxjs@5.0.0-beta.0/observable/ConnectableObservable",
+      "npm:rxjs@5.0.0-beta.0/Notification",
+      "npm:rxjs@5.0.0-beta.0/scheduler/asap",
+      "npm:rxjs@5.0.0-beta.0/scheduler/queue",
+      "npm:rxjs@5.0.0-beta.0/symbol/rxSubscriber",
+      "npm:ng2-bootstrap@1.0.1-beta.2/components/position",
+      "npm:ng2-bootstrap@1.0.1-beta.2/components/ng2-bootstrap-config",
+      "npm:ng2-table@1.0.0-beta.0/components/table/ng-table.component",
+      "npm:ng2-table@1.0.0-beta.0/components/table/ng-table-filtering.directive",
+      "npm:ng2-table@1.0.0-beta.0/components/table/ng-table-paging.directive",
+      "npm:ng2-table@1.0.0-beta.0/components/table/ng-table-sorting.directive",
+      "npm:ng2-table@1.0.0-beta.0/components/ng-table-directives",
+      "npm:ng2-bootstrap@1.0.1-beta.2/components/accordion",
+      "npm:ng2-bootstrap@1.0.1-beta.2/components/alert",
+      "npm:ng2-bootstrap@1.0.1-beta.2/components/buttons",
+      "npm:ng2-bootstrap@1.0.1-beta.2/components/carousel",
+      "npm:ng2-bootstrap@1.0.1-beta.2/components/collapse",
+      "npm:ng2-bootstrap@1.0.1-beta.2/components/dropdown",
+      "npm:ng2-bootstrap@1.0.1-beta.2/components/pagination",
+      "npm:ng2-bootstrap@1.0.1-beta.2/components/progressbar",
+      "npm:ng2-bootstrap@1.0.1-beta.2/components/rating",
+      "npm:ng2-bootstrap@1.0.1-beta.2/components/tabs",
+      "npm:ng2-bootstrap@1.0.1-beta.2/components/timepicker",
+      "npm:ng2-bootstrap@1.0.1-beta.2/components/tooltip",
+      "npm:ng2-bootstrap@1.0.1-beta.2/components/typeahead",
+      "npm:ng2-bootstrap@1.0.1-beta.2/components/common",
+      "npm:process@0.11.2/browser",
+      "npm:angular2@2.0.0-beta.1/src/common/directives/observable_list_diff",
+      "npm:angular2@2.0.0-beta.1/src/animate/css_animation_options",
+      "npm:angular2@2.0.0-beta.1/src/facade/browser",
+      "npm:angular2@2.0.0-beta.1/src/core/linker/interfaces",
+      "npm:angular2@2.0.0-beta.1/src/compiler/parse_util",
+      "npm:angular2@2.0.0-beta.1/src/transform/template_compiler/change_detector_codegen",
+      "npm:angular2@2.0.0-beta.1/src/core/linker/view_type",
+      "npm:angular2@2.0.0-beta.1/src/core/change_detection/interfaces",
+      "npm:angular2@2.0.0-beta.1/src/common/pipes/async_pipe",
+      "npm:angular2@2.0.0-beta.1/src/common/pipes/uppercase_pipe",
+      "npm:angular2@2.0.0-beta.1/src/common/pipes/lowercase_pipe",
+      "npm:angular2@2.0.0-beta.1/src/common/pipes/json_pipe",
+      "npm:angular2@2.0.0-beta.1/src/common/pipes/slice_pipe",
+      "npm:angular2@2.0.0-beta.1/src/common/pipes/date_pipe",
+      "npm:angular2@2.0.0-beta.1/src/common/pipes/number_pipe",
+      "npm:angular2@2.0.0-beta.1/src/common/directives/ng_class",
+      "npm:angular2@2.0.0-beta.1/src/common/directives/ng_for",
+      "npm:angular2@2.0.0-beta.1/src/common/directives/ng_if",
+      "npm:angular2@2.0.0-beta.1/src/common/directives/ng_style",
+      "npm:angular2@2.0.0-beta.1/src/common/directives/ng_switch",
+      "npm:angular2@2.0.0-beta.1/src/common/directives/core_directives",
+      "npm:angular2@2.0.0-beta.1/src/common/forms/model",
+      "npm:angular2@2.0.0-beta.1/src/common/forms/directives/abstract_control_directive",
+      "npm:angular2@2.0.0-beta.1/src/common/forms/directives/control_container",
+      "npm:angular2@2.0.0-beta.1/src/common/forms/directives/ng_control_name",
+      "npm:angular2@2.0.0-beta.1/src/common/forms/directives/ng_form_control",
+      "npm:angular2@2.0.0-beta.1/src/common/forms/directives/ng_model",
+      "npm:angular2@2.0.0-beta.1/src/common/forms/directives/ng_control",
+      "npm:angular2@2.0.0-beta.1/src/common/forms/directives/ng_control_group",
+      "npm:angular2@2.0.0-beta.1/src/common/forms/directives/ng_form_model",
+      "npm:angular2@2.0.0-beta.1/src/common/forms/directives/ng_form",
+      "npm:angular2@2.0.0-beta.1/src/common/forms/directives/control_value_accessor",
+      "npm:angular2@2.0.0-beta.1/src/common/forms/directives/default_value_accessor",
+      "npm:angular2@2.0.0-beta.1/src/common/forms/directives/ng_control_status",
+      "npm:angular2@2.0.0-beta.1/src/common/forms/directives/checkbox_value_accessor",
+      "npm:angular2@2.0.0-beta.1/src/common/forms/directives/select_control_value_accessor",
+      "npm:angular2@2.0.0-beta.1/src/common/forms/directives",
+      "npm:angular2@2.0.0-beta.1/src/common/forms/validators",
+      "npm:angular2@2.0.0-beta.1/src/common/forms/directives/validators",
+      "npm:angular2@2.0.0-beta.1/src/common/forms/form_builder",
+      "npm:rxjs@5.0.0-beta.0/observable/fromPromise",
+      "npm:rxjs@5.0.0-beta.0/operator/toPromise",
+      "npm:angular2@2.0.0-beta.1/src/animate/animation",
+      "npm:angular2@2.0.0-beta.1/src/core/linker/view",
+      "npm:angular2@2.0.0-beta.1/src/compiler/util",
+      "npm:angular2@2.0.0-beta.1/src/compiler/selector",
+      "npm:angular2@2.0.0-beta.1/src/compiler/html_tags",
+      "npm:angular2@2.0.0-beta.1/src/core/change_detection/parser/ast",
+      "npm:angular2@2.0.0-beta.1/src/compiler/template_preparser",
+      "npm:angular2@2.0.0-beta.1/src/compiler/style_url_resolver",
+      "npm:angular2@2.0.0-beta.1/src/compiler/html_ast",
+      "npm:angular2@2.0.0-beta.1/src/compiler/html_lexer",
+      "npm:angular2@2.0.0-beta.1/src/core/linker/directive_lifecycle_reflector",
+      "npm:angular2@2.0.0-beta.1/src/core/change_detection/change_detection_jit_generator",
+      "npm:angular2@2.0.0-beta.1/src/core/change_detection/abstract_change_detector",
+      "npm:angular2@2.0.0-beta.1/src/core/change_detection/change_detection_util",
+      "npm:angular2@2.0.0-beta.1/src/core/change_detection/constants",
+      "npm:angular2@2.0.0-beta.1/src/compiler/change_definition_factory",
+      "npm:angular2@2.0.0-beta.1/src/compiler/shadow_css",
+      "npm:angular2@2.0.0-beta.1/src/core/change_detection/differs/iterable_differs",
+      "npm:angular2@2.0.0-beta.1/src/core/linker/element",
+      "npm:angular2@2.0.0-beta.1/src/core/change_detection/differs/default_iterable_differ",
+      "npm:angular2@2.0.0-beta.1/src/core/change_detection/differs/keyvalue_differs",
+      "npm:angular2@2.0.0-beta.1/src/core/change_detection/differs/default_keyvalue_differ",
+      "npm:angular2@2.0.0-beta.1/src/core/change_detection/parser/lexer",
+      "npm:angular2@2.0.0-beta.1/src/core/change_detection/parser/parser",
+      "npm:angular2@2.0.0-beta.1/src/core/change_detection/parser/locals",
+      "npm:angular2@2.0.0-beta.1/src/core/change_detection/exceptions",
+      "npm:angular2@2.0.0-beta.1/src/core/change_detection/proto_change_detector",
+      "npm:angular2@2.0.0-beta.1/src/core/change_detection/jit_proto_change_detector",
+      "npm:angular2@2.0.0-beta.1/src/core/change_detection/binding_record",
+      "npm:angular2@2.0.0-beta.1/src/core/change_detection/directive_record",
+      "npm:angular2@2.0.0-beta.1/src/core/change_detection/dynamic_change_detector",
+      "npm:angular2@2.0.0-beta.1/src/core/change_detection/change_detector_ref",
+      "npm:angular2@2.0.0-beta.1/src/core/profile/wtf_impl",
+      "npm:angular2@2.0.0-beta.1/src/core/pipes/pipe_provider",
+      "npm:rxjs@5.0.0-beta.0/util/root",
+      "npm:rxjs@5.0.0-beta.0/util/noop",
+      "npm:rxjs@5.0.0-beta.0/util/throwError",
+      "npm:rxjs@5.0.0-beta.0/util/tryOrOnError",
+      "npm:rxjs@5.0.0-beta.0/util/SymbolShim",
+      "npm:rxjs@5.0.0-beta.0/subject/SubjectSubscription",
+      "npm:rxjs@5.0.0-beta.0/operator/combineLatest-static",
+      "npm:rxjs@5.0.0-beta.0/operator/concat-static",
+      "npm:rxjs@5.0.0-beta.0/operator/merge-static",
+      "npm:rxjs@5.0.0-beta.0/observable/bindCallback",
+      "npm:rxjs@5.0.0-beta.0/observable/defer",
+      "npm:rxjs@5.0.0-beta.0/observable/empty",
+      "npm:rxjs@5.0.0-beta.0/observable/forkJoin",
+      "npm:rxjs@5.0.0-beta.0/observable/from",
+      "npm:rxjs@5.0.0-beta.0/observable/fromArray",
+      "npm:rxjs@5.0.0-beta.0/observable/fromEvent",
+      "npm:rxjs@5.0.0-beta.0/observable/fromEventPattern",
+      "npm:rxjs@5.0.0-beta.0/observable/interval",
+      "npm:rxjs@5.0.0-beta.0/observable/never",
+      "npm:rxjs@5.0.0-beta.0/observable/range",
+      "npm:rxjs@5.0.0-beta.0/observable/throw",
+      "npm:rxjs@5.0.0-beta.0/observable/timer",
+      "npm:rxjs@5.0.0-beta.0/operator/zip-static",
+      "npm:rxjs@5.0.0-beta.0/operator/buffer",
+      "npm:rxjs@5.0.0-beta.0/operator/bufferCount",
+      "npm:rxjs@5.0.0-beta.0/operator/bufferTime",
+      "npm:rxjs@5.0.0-beta.0/operator/bufferToggle",
+      "npm:rxjs@5.0.0-beta.0/operator/bufferWhen",
+      "npm:rxjs@5.0.0-beta.0/operator/catch",
+      "npm:rxjs@5.0.0-beta.0/operator/combineAll",
+      "npm:rxjs@5.0.0-beta.0/operator/combineLatest",
+      "npm:rxjs@5.0.0-beta.0/operator/concat",
+      "npm:rxjs@5.0.0-beta.0/operator/concatAll",
+      "npm:rxjs@5.0.0-beta.0/operator/concatMap",
+      "npm:rxjs@5.0.0-beta.0/operator/concatMapTo",
+      "npm:rxjs@5.0.0-beta.0/operator/count",
+      "npm:rxjs@5.0.0-beta.0/operator/dematerialize",
+      "npm:rxjs@5.0.0-beta.0/operator/debounce",
+      "npm:rxjs@5.0.0-beta.0/operator/debounceTime",
+      "npm:rxjs@5.0.0-beta.0/operator/defaultIfEmpty",
+      "npm:rxjs@5.0.0-beta.0/operator/delay",
+      "npm:rxjs@5.0.0-beta.0/operator/distinctUntilChanged",
+      "npm:rxjs@5.0.0-beta.0/operator/do",
+      "npm:rxjs@5.0.0-beta.0/operator/expand",
+      "npm:rxjs@5.0.0-beta.0/operator/filter",
+      "npm:rxjs@5.0.0-beta.0/operator/finally",
+      "npm:rxjs@5.0.0-beta.0/operator/first",
+      "npm:rxjs@5.0.0-beta.0/operator/groupBy",
+      "npm:rxjs@5.0.0-beta.0/operator/ignoreElements",
+      "npm:rxjs@5.0.0-beta.0/operator/every",
+      "npm:rxjs@5.0.0-beta.0/operator/last",
+      "npm:rxjs@5.0.0-beta.0/operator/map",
+      "npm:rxjs@5.0.0-beta.0/operator/mapTo",
+      "npm:rxjs@5.0.0-beta.0/operator/materialize",
+      "npm:rxjs@5.0.0-beta.0/operator/merge",
+      "npm:rxjs@5.0.0-beta.0/operator/mergeAll",
+      "npm:rxjs@5.0.0-beta.0/operator/mergeMap",
+      "npm:rxjs@5.0.0-beta.0/operator/mergeMapTo",
+      "npm:rxjs@5.0.0-beta.0/operator/multicast",
+      "npm:rxjs@5.0.0-beta.0/operator/observeOn",
+      "npm:rxjs@5.0.0-beta.0/operator/partition",
+      "npm:rxjs@5.0.0-beta.0/operator/publish",
+      "npm:rxjs@5.0.0-beta.0/operator/publishBehavior",
+      "npm:rxjs@5.0.0-beta.0/operator/publishReplay",
+      "npm:rxjs@5.0.0-beta.0/operator/publishLast",
+      "npm:rxjs@5.0.0-beta.0/operator/reduce",
+      "npm:rxjs@5.0.0-beta.0/operator/repeat",
+      "npm:rxjs@5.0.0-beta.0/operator/retry",
+      "npm:rxjs@5.0.0-beta.0/operator/retryWhen",
+      "npm:rxjs@5.0.0-beta.0/operator/sample",
+      "npm:rxjs@5.0.0-beta.0/operator/sampleTime",
+      "npm:rxjs@5.0.0-beta.0/operator/scan",
+      "npm:rxjs@5.0.0-beta.0/operator/share",
+      "npm:rxjs@5.0.0-beta.0/operator/single",
+      "npm:rxjs@5.0.0-beta.0/operator/skip",
+      "npm:rxjs@5.0.0-beta.0/operator/skipUntil",
+      "npm:rxjs@5.0.0-beta.0/operator/skipWhile",
+      "npm:rxjs@5.0.0-beta.0/operator/startWith",
+      "npm:rxjs@5.0.0-beta.0/operator/subscribeOn",
+      "npm:rxjs@5.0.0-beta.0/operator/switch",
+      "npm:rxjs@5.0.0-beta.0/operator/switchMap",
+      "npm:rxjs@5.0.0-beta.0/operator/switchMapTo",
+      "npm:rxjs@5.0.0-beta.0/operator/take",
+      "npm:rxjs@5.0.0-beta.0/operator/takeUntil",
+      "npm:rxjs@5.0.0-beta.0/operator/takeWhile",
+      "npm:rxjs@5.0.0-beta.0/operator/throttle",
+      "npm:rxjs@5.0.0-beta.0/operator/throttleTime",
+      "npm:rxjs@5.0.0-beta.0/operator/timeout",
+      "npm:rxjs@5.0.0-beta.0/operator/timeoutWith",
+      "npm:rxjs@5.0.0-beta.0/operator/toArray",
+      "npm:rxjs@5.0.0-beta.0/operator/window",
+      "npm:rxjs@5.0.0-beta.0/operator/windowCount",
+      "npm:rxjs@5.0.0-beta.0/operator/windowTime",
+      "npm:rxjs@5.0.0-beta.0/operator/windowToggle",
+      "npm:rxjs@5.0.0-beta.0/operator/windowWhen",
+      "npm:rxjs@5.0.0-beta.0/operator/withLatestFrom",
+      "npm:rxjs@5.0.0-beta.0/operator/zip",
+      "npm:rxjs@5.0.0-beta.0/operator/zipAll",
+      "npm:rxjs@5.0.0-beta.0/scheduler/AsapScheduler",
+      "npm:rxjs@5.0.0-beta.0/scheduler/QueueScheduler",
+      "npm:ng2-bootstrap@1.0.1-beta.2/components/accordion/accordion.component",
+      "npm:ng2-bootstrap@1.0.1-beta.2/components/accordion/accordion-group.component",
+      "npm:ng2-bootstrap@1.0.1-beta.2/components/alert/alert.component",
+      "npm:ng2-bootstrap@1.0.1-beta.2/components/buttons/button-checkbox.component",
+      "npm:ng2-bootstrap@1.0.1-beta.2/components/buttons/button-radio.component",
+      "npm:ng2-bootstrap@1.0.1-beta.2/components/carousel/slide.component",
+      "npm:ng2-bootstrap@1.0.1-beta.2/components/carousel/carousel.component",
+      "npm:ng2-bootstrap@1.0.1-beta.2/components/collapse/collapse.component",
+      "npm:ng2-bootstrap@1.0.1-beta.2/components/dropdown/dropdown.directive",
+      "npm:ng2-bootstrap@1.0.1-beta.2/components/dropdown/dropdown-toggle.directive",
+      "npm:ng2-bootstrap@1.0.1-beta.2/components/pagination/pagination.component",
+      "npm:ng2-bootstrap@1.0.1-beta.2/components/pagination/pager.component",
+      "npm:ng2-bootstrap@1.0.1-beta.2/components/progressbar/progress.directive",
+      "npm:ng2-bootstrap@1.0.1-beta.2/components/progressbar/bar.component",
+      "npm:ng2-bootstrap@1.0.1-beta.2/components/progressbar/progressbar.component",
+      "npm:ng2-bootstrap@1.0.1-beta.2/components/rating/rating.component",
+      "npm:ng2-bootstrap@1.0.1-beta.2/components/tabs/tab.directive",
+      "npm:ng2-bootstrap@1.0.1-beta.2/components/tabs/tabset.component",
+      "npm:ng2-bootstrap@1.0.1-beta.2/components/tabs/tab-heading.directive",
+      "npm:ng2-bootstrap@1.0.1-beta.2/components/timepicker/timepicker.component",
+      "npm:ng2-bootstrap@1.0.1-beta.2/components/tooltip/tooltip.directive",
+      "npm:ng2-bootstrap@1.0.1-beta.2/components/tooltip/tooltip-container.component",
+      "npm:ng2-bootstrap@1.0.1-beta.2/components/typeahead/typeahead.directive",
+      "npm:ng2-bootstrap@1.0.1-beta.2/components/typeahead/typeahead-container.component",
+      "npm:ng2-bootstrap@1.0.1-beta.2/components/typeahead/typeahead-options.class",
+      "npm:angular2@2.0.0-beta.1/src/facade/intl",
+      "npm:angular2@2.0.0-beta.1/src/core/change_detection/proto_record",
+      "npm:angular2@2.0.0-beta.1/src/core/change_detection/codegen_facade",
+      "npm:angular2@2.0.0-beta.1/src/core/change_detection/pipe_lifecycle_reflector",
+      "npm:angular2@2.0.0-beta.1/src/core/change_detection/observable_facade",
+      "npm:angular2@2.0.0-beta.1/src/core/change_detection/event_binding",
+      "npm:angular2@2.0.0-beta.1/src/common/pipes/invalid_pipe_argument_exception",
+      "npm:angular2@2.0.0-beta.1/src/core/pipes/pipes",
+      "npm:angular2@2.0.0-beta.1/src/core/render/util",
+      "npm:angular2@2.0.0-beta.1/src/common/forms/directives/shared",
+      "npm:angular2@2.0.0-beta.1/src/core/change_detection/codegen_name_util",
+      "npm:angular2@2.0.0-beta.1/src/common/forms/directives/number_value_accessor",
+      "npm:angular2@2.0.0-beta.1/src/core/change_detection/codegen_logic_util",
+      "npm:angular2@2.0.0-beta.1/src/core/change_detection/coalesce",
+      "npm:rxjs@5.0.0-beta.0/util/isScheduler",
+      "npm:rxjs@5.0.0-beta.0/util/isArray",
+      "npm:rxjs@5.0.0-beta.0/util/errorObject",
+      "npm:rxjs@5.0.0-beta.0/util/isPromise",
+      "npm:rxjs@5.0.0-beta.0/util/isNumeric",
+      "npm:rxjs@5.0.0-beta.0/util/isDate",
+      "npm:rxjs@5.0.0-beta.0/util/FastMap",
+      "npm:rxjs@5.0.0-beta.0/util/not",
+      "github:jspm/nodelibs-buffer@0.1.0",
+      "npm:rxjs@5.0.0-beta.0/operator/combineLatest-support",
+      "npm:rxjs@5.0.0-beta.0/operator/mergeAll-support",
+      "npm:rxjs@5.0.0-beta.0/util/tryCatch",
+      "npm:rxjs@5.0.0-beta.0/observable/IteratorObservable",
+      "npm:rxjs@5.0.0-beta.0/operator/observeOn-support",
+      "npm:rxjs@5.0.0-beta.0/observable/ScalarObservable",
+      "npm:rxjs@5.0.0-beta.0/operator/zip-support",
+      "npm:rxjs@5.0.0-beta.0/operator/mergeMap-support",
+      "npm:rxjs@5.0.0-beta.0/operator/mergeMapTo-support",
+      "npm:rxjs@5.0.0-beta.0/operator/expand-support",
+      "npm:rxjs@5.0.0-beta.0/util/Map",
+      "npm:rxjs@5.0.0-beta.0/operator/groupBy-support",
+      "npm:rxjs@5.0.0-beta.0/operator/reduce-support",
+      "npm:rxjs@5.0.0-beta.0/observable/SubscribeOnObservable",
+      "npm:rxjs@5.0.0-beta.0/OuterSubscriber",
+      "npm:rxjs@5.0.0-beta.0/util/subscribeToResult",
+      "npm:rxjs@5.0.0-beta.0/scheduler/AsapAction",
+      "npm:rxjs@5.0.0-beta.0/scheduler/QueueAction",
+      "npm:rxjs@5.0.0-beta.0/scheduler/FutureAction",
+      "npm:ng2-bootstrap@1.0.1-beta.2/components/dropdown/dropdown.service",
+      "npm:ng2-bootstrap@1.0.1-beta.2/components/tooltip/tooltip-options.class",
+      "npm:ng2-bootstrap@1.0.1-beta.2/components/typeahead/typeahead-utils",
+      "npm:angular2@2.0.0-beta.1/src/core/change_detection/pipes",
+      "npm:angular2@2.0.0-beta.1/src/common/forms/directives/normalize_validator",
+      "npm:rxjs@5.0.0-beta.0/util/MapPolyfill",
+      "github:jspm/nodelibs-buffer@0.1.0/index",
+      "npm:rxjs@5.0.0-beta.0/InnerSubscriber",
+      "npm:rxjs@5.0.0-beta.0/util/Immediate",
+      "npm:ng2-bootstrap@1.0.1-beta.2/components/typeahead/latin-map",
+      "npm:buffer@3.6.0",
+      "npm:buffer@3.6.0/index",
+      "npm:base64-js@0.0.8",
+      "npm:ieee754@1.1.6",
+      "npm:isarray@1.0.0",
+      "npm:base64-js@0.0.8/lib/b64",
+      "npm:ieee754@1.1.6/index",
+      "npm:isarray@1.0.0/index"
+    ]
+  },
 
   packages: {
     "app": {
@@ -248,6 +788,10 @@
       "systemjs-json": "github:systemjs/plugin-json@0.1.0",
       "zlib": "github:jspm/nodelibs-zlib@0.1.0"
     },
+    "npm:ng2-table@1.0.0-beta.0": {
+      "path": "github:jspm/nodelibs-path@0.1.0",
+      "process": "github:jspm/nodelibs-process@0.1.2"
+    },
     "npm:pako@0.2.8": {
       "buffer": "github:jspm/nodelibs-buffer@0.1.0",
       "process": "github:jspm/nodelibs-process@0.1.2"