diff --git a/demo-shell-ng2/app/app.component.ts b/demo-shell-ng2/app/app.component.ts
index 2f773a9f63..3a4b12456e 100644
--- a/demo-shell-ng2/app/app.component.ts
+++ b/demo-shell-ng2/app/app.component.ts
@@ -21,9 +21,9 @@ import {MDL} from 'ng2-alfresco-core/material';
import {FilesComponent} from './components/files/files.component';
import {AlfrescoLoginComponent} from 'ng2-alfresco-login/ng2-alfresco-login';
import {AuthRouterOutlet} from './components/router/AuthRouterOutlet';
-import {UploaderComponent} from './components/uploader/uploader.component';
import {AlfrescoSettingsService} from 'ng2-alfresco-core/services';
import {TranslateService, TranslatePipe} from 'ng2-translate/ng2-translate';
+import {UploadComponent} from 'ng2-alfresco-upload/ng2-alfresco-upload';
declare var document: any;
@@ -36,7 +36,7 @@ declare var document: any;
@RouteConfig([
{path: '/home', name: 'Home', component: FilesComponent},
{path: '/', name: 'Files', component: FilesComponent, useAsDefault: true},
- {path: '/uploader', name: 'Uploader', component: UploaderComponent},
+ {path: '/uploader', name: 'Uploader', component: UploadComponent},
{path: '/login', name: 'Login', component: AlfrescoLoginComponent}
])
export class AppComponent {
diff --git a/demo-shell-ng2/app/components/uploader/uploader.component.ts b/demo-shell-ng2/app/components/uploader/uploader.component.ts
deleted file mode 100644
index 17e13d0ca4..0000000000
--- a/demo-shell-ng2/app/components/uploader/uploader.component.ts
+++ /dev/null
@@ -1,111 +0,0 @@
-/**
- * @license
- * Copyright 2016 Alfresco Software, Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-import {Component, NgZone} from 'angular2/core';
-import {UPLOAD_DIRECTIVES} from 'ng2-uploader/ng2-uploader';
-import {AlfrescoSettingsService} from 'ng2-alfresco-core/services';
-
-@Component({
- selector: 'alfresco-uploader',
- styles: [
- `
- :host .dropzone {
- width: 100%;
- height: 100px;
- background-color: #f5f5f5;
- margin-top: 2px;
- margin-bottom: 2px;
- box-shadow: inset 0 1px 2px rgba(0,0,0,.1);
- text-align: center;
- }
- `
- ],
- template: `
-
-
-
Upload File
-
-
- Response: {{ uploadFile | json }}
-
-
-
-
Drag and Drop file demo
-
-
- Drop file here...
-
-
-
- {{ dropProgress }}%
-
-
-
-
- `,
- directives: [UPLOAD_DIRECTIVES]
-})
-export class UploaderComponent {
- uploadFile:any;
- options:Object;
-
- zone:NgZone;
- dropProgress:number = 0;
- dropResp:any[] = [];
-
- constructor(settings:AlfrescoSettingsService) {
- this.options = {
- url: settings.host + '/alfresco/service/api/upload',
- withCredentials: true,
- authToken: btoa('admin:admin'),
- authTokenPrefix: 'Basic',
- fieldName: 'filedata',
- formFields: {
- siteid: 'swsdp',
- containerid: 'documentLibrary'
- }
- };
- this.zone = new NgZone({enableLongStackTrace: false});
- }
-
- handleUpload(data):void {
- if (data && data.response) {
- data = JSON.parse(data.response);
- this.uploadFile = data;
- }
- }
-
- handleDropUpload(data):void {
- let index = this.dropResp.findIndex(x => x.id === data.id);
- if (index === -1) {
- this.dropResp.push(data);
- } else {
- this.zone.run(() => {
- this.dropResp[index] = data;
- });
- }
-
- let total = 0, uploaded = 0;
- this.dropResp.forEach(resp => {
- total += resp.progress.total;
- uploaded += resp.progress.loaded;
- });
-
- this.dropProgress = Math.floor(uploaded / (total / 100));
- }
-}
diff --git a/demo-shell-ng2/app/css/app.css b/demo-shell-ng2/app/css/app.css
index 242dd5936f..7b218e4b67 100644
--- a/demo-shell-ng2/app/css/app.css
+++ b/demo-shell-ng2/app/css/app.css
@@ -2,4 +2,4 @@
.p-10 {
padding: 10px;
-}
+}
\ No newline at end of file
diff --git a/demo-shell-ng2/app/fonts/material-icons.woff2 b/demo-shell-ng2/app/fonts/material-icons.woff2
new file mode 100644
index 0000000000..e69de29bb2
diff --git a/demo-shell-ng2/app/license_header.txt b/demo-shell-ng2/app/license_header.txt
index 3868d3f0c3..5cae403293 100644
--- a/demo-shell-ng2/app/license_header.txt
+++ b/demo-shell-ng2/app/license_header.txt
@@ -13,4 +13,4 @@
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
- */
+ */
\ No newline at end of file
diff --git a/demo-shell-ng2/index.html b/demo-shell-ng2/index.html
index 23c45495bf..c57848cb9b 100644
--- a/demo-shell-ng2/index.html
+++ b/demo-shell-ng2/index.html
@@ -38,6 +38,7 @@
'ng2-alfresco-core': 'node_modules/ng2-alfresco-core',
'ng2-alfresco-documentlist': 'node_modules/ng2-alfresco-documentlist',
'ng2-alfresco-login': 'node_modules/ng2-alfresco-login',
+ 'ng2-alfresco-upload': 'node_modules/ng2-alfresco-upload',
'ng2-translate': 'node_modules/ng2-translate',
'rxjs': 'node_modules/rxjs'
},
@@ -58,6 +59,9 @@
'ng2-alfresco-login': {
defaultExtension: 'js'
},
+ 'ng2-alfresco-upload': {
+ defaultExtension: 'js'
+ },
'ng2-translate': {
defaultExtension: 'js'
},
diff --git a/demo-shell-ng2/package.json b/demo-shell-ng2/package.json
index 1ffda81efd..f383ab2004 100644
--- a/demo-shell-ng2/package.json
+++ b/demo-shell-ng2/package.json
@@ -48,7 +48,6 @@
"material-design-icons": "^2.2.3",
"material-design-lite": "^1.1.3",
"ng2-translate": "^1.11.2",
- "ng2-uploader": "denisvuyka/ng2-uploader",
"reflect-metadata": "0.1.2",
"rxjs": "5.0.0-beta.2",
"systemjs": "0.19.26",
diff --git a/ng2-components/ng2-alfresco-core/services/AlfrescoSettingsService.js b/ng2-components/ng2-alfresco-core/services/AlfrescoSettingsService.js
index 3251fea7db..1dd8c06a1d 100644
--- a/ng2-components/ng2-alfresco-core/services/AlfrescoSettingsService.js
+++ b/ng2-components/ng2-alfresco-core/services/AlfrescoSettingsService.js
@@ -1,19 +1,3 @@
-/**
- * @license
- * Copyright 2016 Alfresco Software, Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
System.register(['angular2/core'], function(exports_1, context_1) {
"use strict";
var __moduleName = context_1 && context_1.id;
@@ -48,10 +32,6 @@ System.register(['angular2/core'], function(exports_1, context_1) {
enumerable: true,
configurable: true
});
- AlfrescoSettingsService.prototype.getAuthToken = function () {
- // todo: get proper token value
- return 'Basic ' + btoa('admin:admin');
- };
AlfrescoSettingsService = __decorate([
core_1.Injectable(),
__metadata('design:paramtypes', [])
diff --git a/ng2-components/ng2-alfresco-core/services/AlfrescoSettingsService.js.map b/ng2-components/ng2-alfresco-core/services/AlfrescoSettingsService.js.map
index 17f931e1fd..ef574b7b6e 100644
--- a/ng2-components/ng2-alfresco-core/services/AlfrescoSettingsService.js.map
+++ b/ng2-components/ng2-alfresco-core/services/AlfrescoSettingsService.js.map
@@ -1 +1 @@
-{"version":3,"file":"AlfrescoSettingsService.js","sourceRoot":"","sources":["AlfrescoSettingsService.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;;;;;;;;;;;;;;;;;;;;;YAKH;gBAAA;oBACY,UAAK,GAAW,uBAAuB,CAAC;gBAcpD,CAAC;gBAZG,sBAAW,yCAAI;yBAAf;wBACI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;oBACtB,CAAC;yBAED,UAAgB,KAAY;wBACxB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;oBACvB,CAAC;;;mBAJA;gBAMD,8CAAY,GAAZ;oBACI,+BAA+B;oBAC/B,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC;gBAC1C,CAAC;gBAfL;oBAAC,iBAAU,EAAE;;2CAAA;gBAgBb,8BAAC;YAAD,CAAC,AAfD,IAeC;YAfD,6DAeC,CAAA"}
\ No newline at end of file
+{"version":3,"file":"AlfrescoSettingsService.js","sourceRoot":"","sources":["AlfrescoSettingsService.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;YAmBA;gBAAA;oBACY,UAAK,GAAW,uBAAuB,CAAC;gBASpD,CAAC;gBAPG,sBAAW,yCAAI;yBAAf;wBACI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;oBACtB,CAAC;yBAED,UAAgB,KAAY;wBACxB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;oBACvB,CAAC;;;mBAJA;gBANL;oBAAC,iBAAU,EAAE;;2CAAA;gBAWb,8BAAC;YAAD,CAAC,AAVD,IAUC;YAVD,6DAUC,CAAA"}
\ No newline at end of file
diff --git a/ng2-components/ng2-alfresco-documentlist/ng2-alfresco-documentlist.js b/ng2-components/ng2-alfresco-documentlist/ng2-alfresco-documentlist.js
index e4c2d7309e..c7e179bf62 100644
--- a/ng2-components/ng2-alfresco-documentlist/ng2-alfresco-documentlist.js
+++ b/ng2-components/ng2-alfresco-documentlist/ng2-alfresco-documentlist.js
@@ -1,7 +1,7 @@
-System.register(['./src/components/document-list', './src/components/content-column', './src/components/content-column-list', './src/components/content-action', './src/components/content-action-list', './src/services/folder-actions.service', './src/services/document-actions.service', './src/services/alfresco.service'], function(exports_1, context_1) {
+System.register(['./src/components/document-list', './src/components/document-action', './src/components/document-action-list', './src/components/quick-document-action', './src/components/quick-document-action-list', './src/components/folder-action', './src/components/folder-action-list', './src/components/quick-folder-action', './src/components/quick-folder-action-list', './src/services/folder-actions.service', './src/services/document-actions.service'], function(exports_1, context_1) {
"use strict";
var __moduleName = context_1 && context_1.id;
- var document_list_1, content_column_1, content_column_list_1, content_action_1, content_action_list_1, folder_actions_service_1, document_actions_service_1, alfresco_service_1;
+ var document_list_1, document_action_1, document_action_list_1, quick_document_action_1, quick_document_action_list_1, folder_action_1, folder_action_list_1, quick_folder_action_1, quick_folder_action_list_1, folder_actions_service_1, document_actions_service_1;
var DOCUMENT_LIST_DIRECTIVES, DOCUMENT_LIST_PROVIDERS;
var exportedNames_1 = {
'DOCUMENT_LIST_DIRECTIVES': true,
@@ -20,21 +20,37 @@ System.register(['./src/components/document-list', './src/components/content-col
document_list_1 = document_list_1_1;
exportStar_1(document_list_1_1);
},
- function (content_column_1_1) {
- content_column_1 = content_column_1_1;
- exportStar_1(content_column_1_1);
+ function (document_action_1_1) {
+ document_action_1 = document_action_1_1;
+ exportStar_1(document_action_1_1);
},
- function (content_column_list_1_1) {
- content_column_list_1 = content_column_list_1_1;
- exportStar_1(content_column_list_1_1);
+ function (document_action_list_1_1) {
+ document_action_list_1 = document_action_list_1_1;
+ exportStar_1(document_action_list_1_1);
},
- function (content_action_1_1) {
- content_action_1 = content_action_1_1;
- exportStar_1(content_action_1_1);
+ function (quick_document_action_1_1) {
+ quick_document_action_1 = quick_document_action_1_1;
+ exportStar_1(quick_document_action_1_1);
},
- function (content_action_list_1_1) {
- content_action_list_1 = content_action_list_1_1;
- exportStar_1(content_action_list_1_1);
+ function (quick_document_action_list_1_1) {
+ quick_document_action_list_1 = quick_document_action_list_1_1;
+ exportStar_1(quick_document_action_list_1_1);
+ },
+ function (folder_action_1_1) {
+ folder_action_1 = folder_action_1_1;
+ exportStar_1(folder_action_1_1);
+ },
+ function (folder_action_list_1_1) {
+ folder_action_list_1 = folder_action_list_1_1;
+ exportStar_1(folder_action_list_1_1);
+ },
+ function (quick_folder_action_1_1) {
+ quick_folder_action_1 = quick_folder_action_1_1;
+ exportStar_1(quick_folder_action_1_1);
+ },
+ function (quick_folder_action_list_1_1) {
+ quick_folder_action_list_1 = quick_folder_action_list_1_1;
+ exportStar_1(quick_folder_action_list_1_1);
},
function (folder_actions_service_1_1) {
folder_actions_service_1 = folder_actions_service_1_1;
@@ -43,35 +59,37 @@ System.register(['./src/components/document-list', './src/components/content-col
function (document_actions_service_1_1) {
document_actions_service_1 = document_actions_service_1_1;
exportStar_1(document_actions_service_1_1);
- },
- function (alfresco_service_1_1) {
- alfresco_service_1 = alfresco_service_1_1;
- exportStar_1(alfresco_service_1_1);
}],
execute: function() {
exports_1("default",{
directives: [
document_list_1.DocumentList,
- content_column_1.ContentColumn,
- content_column_list_1.ContentColumnList,
- content_action_1.ContentAction,
- content_action_list_1.ContentActionList
+ document_action_1.DocumentAction,
+ document_action_list_1.DocumentActionList,
+ quick_document_action_1.QuickDocumentAction,
+ quick_document_action_list_1.QuickDocumentActionList,
+ folder_action_1.FolderAction,
+ folder_action_list_1.FolderActionList,
+ quick_folder_action_1.QuickFolderAction,
+ quick_folder_action_list_1.QuickFolderActionList
],
providers: [
- alfresco_service_1.AlfrescoService,
folder_actions_service_1.FolderActionsService,
document_actions_service_1.DocumentActionsService
]
});
exports_1("DOCUMENT_LIST_DIRECTIVES", DOCUMENT_LIST_DIRECTIVES = [
document_list_1.DocumentList,
- content_column_1.ContentColumn,
- content_column_list_1.ContentColumnList,
- content_action_1.ContentAction,
- content_action_list_1.ContentActionList
+ document_action_1.DocumentAction,
+ document_action_list_1.DocumentActionList,
+ quick_document_action_1.QuickDocumentAction,
+ quick_document_action_list_1.QuickDocumentActionList,
+ folder_action_1.FolderAction,
+ folder_action_list_1.FolderActionList,
+ quick_folder_action_1.QuickFolderAction,
+ quick_folder_action_list_1.QuickFolderActionList
]);
exports_1("DOCUMENT_LIST_PROVIDERS", DOCUMENT_LIST_PROVIDERS = [
- alfresco_service_1.AlfrescoService,
folder_actions_service_1.FolderActionsService,
document_actions_service_1.DocumentActionsService
]);
diff --git a/ng2-components/ng2-alfresco-documentlist/ng2-alfresco-documentlist.js.map b/ng2-components/ng2-alfresco-documentlist/ng2-alfresco-documentlist.js.map
index 30dd8f10e1..dbe264adeb 100644
--- a/ng2-components/ng2-alfresco-documentlist/ng2-alfresco-documentlist.js.map
+++ b/ng2-components/ng2-alfresco-documentlist/ng2-alfresco-documentlist.js.map
@@ -1 +1 @@
-{"version":3,"file":"ng2-alfresco-documentlist.js","sourceRoot":"","sources":["ng2-alfresco-documentlist.ts"],"names":[],"mappings":";;;;QAqCa,wBAAwB,EAQxB,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YAvBpC,oBAAe;gBACX,UAAU,EAAE;oBACR,4BAAY;oBACZ,8BAAa;oBACb,uCAAiB;oBACjB,8BAAa;oBACb,uCAAiB;iBACpB;gBACD,SAAS,EAAE;oBACP,kCAAe;oBACf,6CAAoB;oBACpB,iDAAsB;iBACzB;aACJ,EAAA;YAEY,sCAAA,wBAAwB,GAAU;gBAC3C,4BAAY;gBACZ,8BAAa;gBACb,uCAAiB;gBACjB,8BAAa;gBACb,uCAAiB;aACpB,CAAA,CAAC;YAEW,qCAAA,uBAAuB,GAAU;gBAC1C,kCAAe;gBACf,6CAAoB;gBACpB,iDAAsB;aACzB,CAAA,CAAC"}
\ No newline at end of file
+{"version":3,"file":"ng2-alfresco-documentlist.js","sourceRoot":"","sources":["ng2-alfresco-documentlist.ts"],"names":[],"mappings":";;;;QA4Ca,wBAAwB,EAYxB,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YA9BpC,oBAAe;gBACX,UAAU,EAAE;oBACR,4BAAY;oBACZ,gCAAc;oBACd,yCAAkB;oBAClB,2CAAmB;oBACnB,oDAAuB;oBACvB,4BAAY;oBACZ,qCAAgB;oBAChB,uCAAiB;oBACjB,gDAAqB;iBACxB;gBACD,SAAS,EAAE;oBACP,6CAAoB;oBACpB,iDAAsB;iBACzB;aACJ,EAAA;YAEY,sCAAA,wBAAwB,GAAU;gBAC3C,4BAAY;gBACZ,gCAAc;gBACd,yCAAkB;gBAClB,2CAAmB;gBACnB,oDAAuB;gBACvB,4BAAY;gBACZ,qCAAgB;gBAChB,uCAAiB;gBACjB,gDAAqB;aACxB,CAAA,CAAC;YAEW,qCAAA,uBAAuB,GAAU;gBAC1C,6CAAoB;gBACpB,iDAAsB;aACzB,CAAA,CAAC"}
\ No newline at end of file
diff --git a/ng2-components/ng2-alfresco-documentlist/src/components/document-list.js b/ng2-components/ng2-alfresco-documentlist/src/components/document-list.js
index a33abfc994..e98da0ff51 100644
--- a/ng2-components/ng2-alfresco-documentlist/src/components/document-list.js
+++ b/ng2-components/ng2-alfresco-documentlist/src/components/document-list.js
@@ -1,20 +1,4 @@
-/**
- * @license
- * Copyright 2016 Alfresco Software, Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-System.register(['angular2/core', './../services/alfresco.service', './../models/content-column.model'], function(exports_1, context_1) {
+System.register(['angular2/core', './../services/alfresco.service'], function(exports_1, context_1) {
"use strict";
var __moduleName = context_1 && context_1.id;
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
@@ -26,7 +10,7 @@ System.register(['angular2/core', './../services/alfresco.service', './../models
var __metadata = (this && this.__metadata) || function (k, v) {
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
};
- var core_1, alfresco_service_1, content_column_model_1;
+ var core_1, alfresco_service_1;
var DocumentList;
return {
setters:[
@@ -35,9 +19,6 @@ System.register(['angular2/core', './../services/alfresco.service', './../models
},
function (alfresco_service_1_1) {
alfresco_service_1 = alfresco_service_1_1;
- },
- function (content_column_model_1_1) {
- content_column_model_1 = content_column_model_1_1;
}],
execute: function() {
DocumentList = (function () {
@@ -45,6 +26,8 @@ System.register(['angular2/core', './../services/alfresco.service', './../models
this._alfrescoService = _alfrescoService;
this.navigate = true;
this.breadcrumb = false;
+ this.thumbnails = true;
+ this.downloads = true;
this.itemClick = new core_1.EventEmitter();
this.rootFolder = {
name: 'Document Library',
@@ -52,8 +35,10 @@ System.register(['angular2/core', './../services/alfresco.service', './../models
};
this.currentFolderPath = 'swsdp/documentLibrary';
this.route = [];
- this.actions = [];
- this.columns = [];
+ this.documentActions = [];
+ this.quickDocumentActions = [];
+ this.folderActions = [];
+ this.quickFolderActions = [];
}
DocumentList.prototype.canNavigateParent = function () {
return this.navigate &&
@@ -64,28 +49,6 @@ System.register(['angular2/core', './../services/alfresco.service', './../models
this.route.push(this.rootFolder);
this.displayFolderContent(this.rootFolder.path);
};
- DocumentList.prototype.ngAfterContentInit = function () {
- if (!this.columns || this.columns.length === 0) {
- this.setupDefaultColumns();
- }
- };
- DocumentList.prototype.ngAfterViewChecked = function () {
- // workaround for MDL issues with dynamic components
- if (componentHandler) {
- componentHandler.upgradeAllRegistered();
- }
- };
- DocumentList.prototype.getContentActions = function (target, type) {
- if (target && type) {
- var ltarget_1 = target.toLowerCase();
- var ltype_1 = type.toLowerCase();
- return this.actions.filter(function (entry) {
- return entry.target.toLowerCase() === ltarget_1 &&
- entry.type.toLowerCase() === ltype_1;
- });
- }
- return [];
- };
DocumentList.prototype.onNavigateParentClick = function ($event) {
if ($event) {
$event.preventDefault();
@@ -134,6 +97,11 @@ System.register(['angular2/core', './../services/alfresco.service', './../models
DocumentList.prototype.getDocumentThumbnailUrl = function (document) {
return this._alfrescoService.getDocumentThumbnailUrl(document);
};
+ DocumentList.prototype.registerDocumentAction = function (action) {
+ if (action) {
+ this.documentActions.push(action);
+ }
+ };
DocumentList.prototype.executeContentAction = function (document, action) {
// todo: safety checks
action.handler(document);
@@ -151,18 +119,6 @@ System.register(['angular2/core', './../services/alfresco.service', './../models
.getFolder(path)
.subscribe(function (folder) { return _this.folder = folder; }, function (error) { return _this.errorMessage = error; });
};
- DocumentList.prototype.setupDefaultColumns = function () {
- var thumbnailCol = new content_column_model_1.ContentColumnModel();
- thumbnailCol.source = '$thumbnail';
- var nameCol = new content_column_model_1.ContentColumnModel();
- nameCol.title = 'Name';
- nameCol.source = 'displayName';
- nameCol.cssClass = 'full-width name-column';
- this.columns = [
- thumbnailCol,
- nameCol
- ];
- };
__decorate([
core_1.Input(),
__metadata('design:type', Boolean)
@@ -174,17 +130,26 @@ System.register(['angular2/core', './../services/alfresco.service', './../models
__decorate([
core_1.Input('folder-icon'),
__metadata('design:type', String)
- ], DocumentList.prototype, "folderIcon", void 0);
+ ], DocumentList.prototype, "folderIconClass", void 0);
+ __decorate([
+ core_1.Input(),
+ __metadata('design:type', Boolean)
+ ], DocumentList.prototype, "thumbnails", void 0);
+ __decorate([
+ core_1.Input(),
+ __metadata('design:type', Boolean)
+ ], DocumentList.prototype, "downloads", void 0);
__decorate([
core_1.Output(),
__metadata('design:type', core_1.EventEmitter)
], DocumentList.prototype, "itemClick", void 0);
DocumentList = __decorate([
core_1.Component({
- moduleId: __moduleName,
selector: 'alfresco-document-list',
- styleUrls: ['./document-list.css'],
- templateUrl: './document-list.html',
+ styles: [
+ "\n :host .breadcrumb {\n margin-bottom: 4px;\n }\n\n :host .folder-icon {\n float: left;\n margin-right: 10px;\n font-size: 4em;\n }\n\n :host .file-icon {\n width: 52px;\n height: 52px;\n float: left;\n margin-right: 10px;\n }\n \n :host .document-header {\n font-size: 24px;\n line-height: 32px;\n }\n \n :host .document-header:hover {\n text-decoration: underline;\n }\n "
+ ],
+ template: "\n \n
\n \n Modified {{document.modifiedOn}} by {{document.modifiedBy}}\n \n \n
\n ",
providers: [alfresco_service_1.AlfrescoService]
}),
__metadata('design:paramtypes', [alfresco_service_1.AlfrescoService])
diff --git a/ng2-components/ng2-alfresco-documentlist/src/components/document-list.js.map b/ng2-components/ng2-alfresco-documentlist/src/components/document-list.js.map
index 1424e24e80..c4693a2031 100644
--- a/ng2-components/ng2-alfresco-documentlist/src/components/document-list.js.map
+++ b/ng2-components/ng2-alfresco-documentlist/src/components/document-list.js.map
@@ -1 +1 @@
-{"version":3,"file":"document-list.js","sourceRoot":"","sources":["document-list.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"document-list.js","sourceRoot":"","sources":["document-list.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/ng2-components/ng2-alfresco-documentlist/src/models/content-action.model.js.map b/ng2-components/ng2-alfresco-documentlist/src/models/content-action.model.js.map
index 841221b034..46669b2597 100644
--- a/ng2-components/ng2-alfresco-documentlist/src/models/content-action.model.js.map
+++ b/ng2-components/ng2-alfresco-documentlist/src/models/content-action.model.js.map
@@ -1 +1 @@
-{"version":3,"file":"content-action.model.js","sourceRoot":"","sources":["content-action.model.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;;;;;;;;YAEH;gBAAA;gBAMA,CAAC;gBAAD,yBAAC;YAAD,CAAC,AAND,IAMC;YAND,mDAMC,CAAA"}
\ No newline at end of file
+{"version":3,"file":"content-action.model.js","sourceRoot":"","sources":["content-action.model.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;;;;;;;;YAEH;gBAAA;gBAIA,CAAC;gBAAD,yBAAC;YAAD,CAAC,AAJD,IAIC;YAJD,mDAIC,CAAA"}
\ No newline at end of file
diff --git a/ng2-components/ng2-alfresco-documentlist/src/services/alfresco.service.js b/ng2-components/ng2-alfresco-documentlist/src/services/alfresco.service.js
index d6e36bc464..d1612c4a85 100644
--- a/ng2-components/ng2-alfresco-documentlist/src/services/alfresco.service.js
+++ b/ng2-components/ng2-alfresco-documentlist/src/services/alfresco.service.js
@@ -67,7 +67,7 @@ System.register(['angular2/core', 'angular2/http', 'rxjs/Observable', '../../../
AlfrescoService.prototype.getFolder = function (folder) {
var headers = new http_1.Headers({
'Content-Type': 'application/json',
- 'Authorization': this.settings.getAuthToken()
+ 'Authorization': 'Basic ' + btoa('admin:admin')
});
var options = new http_1.RequestOptions({ headers: headers });
return this.http
diff --git a/ng2-components/ng2-alfresco-documentlist/src/services/alfresco.service.js.map b/ng2-components/ng2-alfresco-documentlist/src/services/alfresco.service.js.map
index 2c1d113d33..63e89ed9b4 100644
--- a/ng2-components/ng2-alfresco-documentlist/src/services/alfresco.service.js.map
+++ b/ng2-components/ng2-alfresco-documentlist/src/services/alfresco.service.js.map
@@ -1 +1 @@
-{"version":3,"file":"alfresco.service.js","sourceRoot":"","sources":["alfresco.service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YASH;gBACI,yBACY,IAAU,EACV,QAAiC;oBADjC,SAAI,GAAJ,IAAI,CAAM;oBACV,aAAQ,GAAR,QAAQ,CAAyB;oBAKrC,UAAK,GAAW,uBAAuB,CAAC;oBACxC,iBAAY,GAAW,sDAAsD,CAAC;oBAJlF,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC;gBAC/B,CAAC;gBAKD,sBAAW,iCAAI;yBAAf;wBACI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;oBACtB,CAAC;yBAED,UAAgB,KAAY;wBACxB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;oBACvB,CAAC;;;mBAJA;gBAMO,oCAAU,GAAlB;oBACI,MAAM,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC;gBACzC,CAAC;gBAED,mCAAS,GAAT,UAAU,MAAc;oBACpB,IAAI,OAAO,GAAG,IAAI,cAAO,CAAC;wBACtB,cAAc,EAAE,kBAAkB;wBAClC,eAAe,EAAE,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE;qBAChD,CAAC,CAAC;oBACH,IAAI,OAAO,GAAG,IAAI,qBAAc,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;oBACvD,MAAM,CAAC,IAAI,CAAC,IAAI;yBACX,GAAG,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,MAAM,EAAE,OAAO,CAAC;yBACxC,GAAG,CAAC,UAAA,GAAG,IAAI,OAAe,GAAG,CAAC,IAAI,EAAE,EAAzB,CAAyB,CAAC;yBACrC,EAAE,CAAC,UAAA,IAAI,IAAI,OAAA,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAjB,CAAiB,CAAC,CAAC,iCAAiC;yBAC/D,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;gBACjC,CAAC;gBAED,iDAAuB,GAAvB,UAAwB,QAAwB;oBAC5C,MAAM,CAAC,IAAI,CAAC,KAAK;wBACb,6BAA6B;wBAC7B,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,mEAAmE,CAAC;gBACnH,CAAC;gBAED,uCAAa,GAAb,UAAc,QAAwB;oBAClC,MAAM,CAAC,IAAI,CAAC,KAAK,GAAG,oBAAoB,GAAG,QAAQ,CAAC,UAAU,CAAC;gBACnE,CAAC;gBAEO,qCAAW,GAAnB,UAAqB,KAAe;oBAChC,mFAAmF;oBACnF,4CAA4C;oBAC5C,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;oBACrB,MAAM,CAAC,uBAAU,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,cAAc,CAAC,CAAC;gBAClE,CAAC;gBApDL;oBAAC,iBAAU,EAAE;;mCAAA;gBAqDb,sBAAC;YAAD,CAAC,AApDD,IAoDC;YApDD,6CAoDC,CAAA"}
\ No newline at end of file
+{"version":3,"file":"alfresco.service.js","sourceRoot":"","sources":["alfresco.service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YAUH;gBACI,yBACY,IAAU,EACV,QAAiC;oBADjC,SAAI,GAAJ,IAAI,CAAM;oBACV,aAAQ,GAAR,QAAQ,CAAyB;oBAKrC,UAAK,GAAW,uBAAuB,CAAC;oBACxC,iBAAY,GAAW,sDAAsD,CAAC;oBAJlF,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC;gBAC/B,CAAC;gBAKD,sBAAW,iCAAI;yBAAf;wBACI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;oBACtB,CAAC;yBAED,UAAgB,KAAY;wBACxB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;oBACvB,CAAC;;;mBAJA;gBAMO,oCAAU,GAAlB;oBACI,MAAM,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC;gBACzC,CAAC;gBAED,mCAAS,GAAT,UAAU,MAAc;oBACpB,IAAI,OAAO,GAAG,IAAI,cAAO,CAAC;wBACtB,cAAc,EAAE,kBAAkB;wBAClC,eAAe,EAAE,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC;qBAClD,CAAC,CAAC;oBACH,IAAI,OAAO,GAAG,IAAI,qBAAc,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;oBACvD,MAAM,CAAC,IAAI,CAAC,IAAI;yBACX,GAAG,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,MAAM,EAAE,OAAO,CAAC;yBACxC,GAAG,CAAC,UAAA,GAAG,IAAI,OAAe,GAAG,CAAC,IAAI,EAAE,EAAzB,CAAyB,CAAC;yBACrC,EAAE,CAAC,UAAA,IAAI,IAAI,OAAA,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAjB,CAAiB,CAAC,CAAC,iCAAiC;yBAC/D,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;gBACjC,CAAC;gBAED,iDAAuB,GAAvB,UAAwB,QAAwB;oBAC5C,MAAM,CAAC,IAAI,CAAC,KAAK;wBACb,6BAA6B;wBAC7B,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,mEAAmE,CAAC;gBACnH,CAAC;gBAED,uCAAa,GAAb,UAAc,QAAwB;oBAClC,MAAM,CAAC,IAAI,CAAC,KAAK,GAAG,oBAAoB,GAAG,QAAQ,CAAC,UAAU,CAAC;gBACnE,CAAC;gBAEO,qCAAW,GAAnB,UAAqB,KAAe;oBAChC,mFAAmF;oBACnF,4CAA4C;oBAC5C,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;oBACrB,MAAM,CAAC,uBAAU,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,cAAc,CAAC,CAAC;gBAClE,CAAC;gBApDL;oBAAC,iBAAU,EAAE;;mCAAA;gBAqDb,sBAAC;YAAD,CAAC,AApDD,IAoDC;YApDD,6CAoDC,CAAA"}
\ No newline at end of file
diff --git a/ng2-components/ng2-alfresco-documentlist/src/services/document-actions.service.js b/ng2-components/ng2-alfresco-documentlist/src/services/document-actions.service.js
index f7b0be49e7..be278cb279 100644
--- a/ng2-components/ng2-alfresco-documentlist/src/services/document-actions.service.js
+++ b/ng2-components/ng2-alfresco-documentlist/src/services/document-actions.service.js
@@ -14,7 +14,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-System.register(['angular2/core', './alfresco.service'], function(exports_1, context_1) {
+System.register(['angular2/core'], function(exports_1, context_1) {
"use strict";
var __moduleName = context_1 && context_1.id;
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
@@ -26,61 +26,33 @@ System.register(['angular2/core', './alfresco.service'], function(exports_1, con
var __metadata = (this && this.__metadata) || function (k, v) {
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
};
- var core_1, alfresco_service_1;
+ var core_1;
var DocumentActionsService;
return {
setters:[
function (core_1_1) {
core_1 = core_1_1;
- },
- function (alfresco_service_1_1) {
- alfresco_service_1 = alfresco_service_1_1;
}],
execute: function() {
DocumentActionsService = (function () {
- function DocumentActionsService(_alfrescoService) {
- this._alfrescoService = _alfrescoService;
+ function DocumentActionsService() {
this.handlers = {};
- this.setupActionHandlers();
+ // todo: just for dev/demo purposes, to be replaced with real actions
+ this.handlers['system1'] = this.handleStandardAction1;
+ this.handlers['system2'] = this.handleStandardAction2;
}
DocumentActionsService.prototype.getHandler = function (key) {
- if (key) {
- var lkey = key.toLowerCase();
- return this.handlers[lkey];
- }
- return null;
+ return this.handlers[key];
};
- DocumentActionsService.prototype.setHandler = function (key, handler) {
- if (key) {
- var lkey = key.toLowerCase();
- this.handlers[lkey] = handler;
- }
- };
- DocumentActionsService.prototype.setupActionHandlers = function () {
- this.handlers['download'] = this.download.bind(this);
- // todo: just for dev/demo purposes, to be replaced with real actions
- this.handlers['system1'] = this.handleStandardAction1.bind(this);
- this.handlers['system2'] = this.handleStandardAction2.bind(this);
- };
- DocumentActionsService.prototype.handleStandardAction1 = function (obj) {
+ DocumentActionsService.prototype.handleStandardAction1 = function (document) {
window.alert('standard document action 1');
};
- DocumentActionsService.prototype.handleStandardAction2 = function (obj) {
+ DocumentActionsService.prototype.handleStandardAction2 = function (document) {
window.alert('standard document action 2');
};
- DocumentActionsService.prototype.download = function (obj) {
- if (obj && !obj.isFolder) {
- var link = document.createElement('a');
- document.body.appendChild(link);
- link.setAttribute('download', 'download');
- link.href = this._alfrescoService.getContentUrl(obj);
- link.click();
- document.body.removeChild(link);
- }
- };
DocumentActionsService = __decorate([
core_1.Injectable(),
- __metadata('design:paramtypes', [alfresco_service_1.AlfrescoService])
+ __metadata('design:paramtypes', [])
], DocumentActionsService);
return DocumentActionsService;
}());
diff --git a/ng2-components/ng2-alfresco-documentlist/src/services/document-actions.service.js.map b/ng2-components/ng2-alfresco-documentlist/src/services/document-actions.service.js.map
index e32a58a868..29b47fbd4a 100644
--- a/ng2-components/ng2-alfresco-documentlist/src/services/document-actions.service.js.map
+++ b/ng2-components/ng2-alfresco-documentlist/src/services/document-actions.service.js.map
@@ -1 +1 @@
-{"version":3,"file":"document-actions.service.js","sourceRoot":"","sources":["document-actions.service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;;;;;;;;;;;;;;;;;;;;;;;;YAOH;gBAGI,gCAAoB,gBAAiC;oBAAjC,qBAAgB,GAAhB,gBAAgB,CAAiB;oBAF7C,aAAQ,GAA4C,EAAE,CAAC;oBAG3D,IAAI,CAAC,mBAAmB,EAAE,CAAC;gBAC/B,CAAC;gBAED,2CAAU,GAAV,UAAW,GAAW;oBAClB,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;wBACN,IAAI,IAAI,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC;wBAC7B,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;oBAC/B,CAAC;oBACD,MAAM,CAAC,IAAI,CAAC;gBAChB,CAAC;gBAED,2CAAU,GAAV,UAAW,GAAW,EAAE,OAA6B;oBACjD,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;wBACN,IAAI,IAAI,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC;wBAC7B,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC;oBAClC,CAAC;gBACL,CAAC;gBAEO,oDAAmB,GAA3B;oBACI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBAErD,qEAAqE;oBACrE,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACjE,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACrE,CAAC;gBAEO,sDAAqB,GAA7B,UAA8B,GAAQ;oBAClC,MAAM,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;gBAC/C,CAAC;gBAEO,sDAAqB,GAA7B,UAA8B,GAAQ;oBAClC,MAAM,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;gBAC/C,CAAC;gBAEO,yCAAQ,GAAhB,UAAiB,GAAQ;oBACrB,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;wBACvB,IAAI,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;wBACvC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;wBAChC,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;wBAC1C,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;wBACrD,IAAI,CAAC,KAAK,EAAE,CAAC;wBACb,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;oBACpC,CAAC;gBACL,CAAC;gBAhDL;oBAAC,iBAAU,EAAE;;0CAAA;gBAiDb,6BAAC;YAAD,CAAC,AAhDD,IAgDC;YAhDD,2DAgDC,CAAA"}
\ No newline at end of file
+{"version":3,"file":"document-actions.service.js","sourceRoot":"","sources":["document-actions.service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;;;;;;;;;;;;;;;;;;;;;YAMH;gBAGI;oBAFQ,aAAQ,GAA4C,EAAE,CAAC;oBAG3D,qEAAqE;oBACrE,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,qBAAqB,CAAC;oBACtD,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,qBAAqB,CAAC;gBAC1D,CAAC;gBAED,2CAAU,GAAV,UAAW,GAAW;oBAClB,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;gBAC9B,CAAC;gBAEO,sDAAqB,GAA7B,UAA8B,QAAa;oBACvC,MAAM,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;gBAC/C,CAAC;gBAEO,sDAAqB,GAA7B,UAA8B,QAAa;oBACvC,MAAM,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;gBAC/C,CAAC;gBApBL;oBAAC,iBAAU,EAAE;;0CAAA;gBAqBb,6BAAC;YAAD,CAAC,AApBD,IAoBC;YApBD,2DAoBC,CAAA"}
\ No newline at end of file
diff --git a/ng2-components/ng2-alfresco-documentlist/src/services/folder-actions.service.js b/ng2-components/ng2-alfresco-documentlist/src/services/folder-actions.service.js
index 7ae2b32bdd..ec65e0bba1 100644
--- a/ng2-components/ng2-alfresco-documentlist/src/services/folder-actions.service.js
+++ b/ng2-components/ng2-alfresco-documentlist/src/services/folder-actions.service.js
@@ -38,21 +38,11 @@ System.register(['angular2/core'], function(exports_1, context_1) {
function FolderActionsService() {
this.handlers = {};
// todo: just for dev/demo purposes, to be replaced with real actions
- this.handlers['system1'] = this.handleStandardAction1.bind(this);
- this.handlers['system2'] = this.handleStandardAction2.bind(this);
+ this.handlers['system1'] = this.handleStandardAction1;
+ this.handlers['system2'] = this.handleStandardAction2;
}
FolderActionsService.prototype.getHandler = function (key) {
- if (key) {
- var lkey = key.toLowerCase();
- return this.handlers[lkey];
- }
- return null;
- };
- FolderActionsService.prototype.setHandler = function (key, handler) {
- if (key) {
- var lkey = key.toLowerCase();
- this.handlers[lkey] = handler;
- }
+ return this.handlers[key];
};
FolderActionsService.prototype.handleStandardAction1 = function (document) {
window.alert('standard folder action 1');
diff --git a/ng2-components/ng2-alfresco-documentlist/src/services/folder-actions.service.js.map b/ng2-components/ng2-alfresco-documentlist/src/services/folder-actions.service.js.map
index 898f9f0cfc..6f6d8d92c8 100644
--- a/ng2-components/ng2-alfresco-documentlist/src/services/folder-actions.service.js.map
+++ b/ng2-components/ng2-alfresco-documentlist/src/services/folder-actions.service.js.map
@@ -1 +1 @@
-{"version":3,"file":"folder-actions.service.js","sourceRoot":"","sources":["folder-actions.service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;;;;;;;;;;;;;;;;;;;;;YAMH;gBAGI;oBAFQ,aAAQ,GAA4C,EAAE,CAAC;oBAG3D,qEAAqE;oBACrE,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACjE,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACrE,CAAC;gBAED,yCAAU,GAAV,UAAW,GAAW;oBAClB,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;wBACN,IAAI,IAAI,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC;wBAC7B,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;oBAC/B,CAAC;oBACD,MAAM,CAAC,IAAI,CAAC;gBAChB,CAAC;gBAED,yCAAU,GAAV,UAAW,GAAW,EAAE,OAA6B;oBACjD,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;wBACN,IAAI,IAAI,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC;wBAC7B,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC;oBAClC,CAAC;gBACL,CAAC;gBAEO,oDAAqB,GAA7B,UAA8B,QAAa;oBACvC,MAAM,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;gBAC7C,CAAC;gBAEO,oDAAqB,GAA7B,UAA8B,QAAa;oBACvC,MAAM,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;gBAC7C,CAAC;gBA/BL;oBAAC,iBAAU,EAAE;;wCAAA;gBAgCb,2BAAC;YAAD,CAAC,AA/BD,IA+BC;YA/BD,uDA+BC,CAAA"}
\ No newline at end of file
+{"version":3,"file":"folder-actions.service.js","sourceRoot":"","sources":["folder-actions.service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;;;;;;;;;;;;;;;;;;;;;YAMH;gBAGI;oBAFQ,aAAQ,GAA4C,EAAE,CAAC;oBAG3D,qEAAqE;oBACrE,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,qBAAqB,CAAC;oBACtD,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,qBAAqB,CAAC;gBAC1D,CAAC;gBAED,yCAAU,GAAV,UAAW,GAAW;oBAClB,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;gBAC9B,CAAC;gBAEO,oDAAqB,GAA7B,UAA8B,QAAa;oBACvC,MAAM,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;gBAC7C,CAAC;gBAEO,oDAAqB,GAA7B,UAA8B,QAAa;oBACvC,MAAM,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;gBAC7C,CAAC;gBApBL;oBAAC,iBAAU,EAAE;;wCAAA;gBAqBb,2BAAC;YAAD,CAAC,AApBD,IAoBC;YApBD,uDAoBC,CAAA"}
\ No newline at end of file
diff --git a/ng2-components/ng2-alfresco-login/ng2-alfresco-login.js b/ng2-components/ng2-alfresco-login/ng2-alfresco-login.js
index 48473eb095..c87a5b6920 100644
--- a/ng2-components/ng2-alfresco-login/ng2-alfresco-login.js
+++ b/ng2-components/ng2-alfresco-login/ng2-alfresco-login.js
@@ -1,7 +1,7 @@
-System.register(['./src/components/alfresco-login', './src/services/alfresco-authentication'], function(exports_1, context_1) {
+System.register(['./src/alfresco-login.component', './src/alfresco-authentication.service'], function(exports_1, context_1) {
"use strict";
var __moduleName = context_1 && context_1.id;
- var alfresco_login_1, alfresco_authentication_1;
+ var alfresco_login_component_1, alfresco_authentication_service_1;
var ALFRESCO_LOGIN_DIRECTIVES, ALFRESCO_AUTHENTICATION;
var exportedNames_1 = {
'ALFRESCO_LOGIN_DIRECTIVES': true,
@@ -16,21 +16,21 @@ System.register(['./src/components/alfresco-login', './src/services/alfresco-aut
}
return {
setters:[
- function (alfresco_login_1_1) {
- alfresco_login_1 = alfresco_login_1_1;
- exportStar_1(alfresco_login_1_1);
+ function (alfresco_login_component_1_1) {
+ alfresco_login_component_1 = alfresco_login_component_1_1;
+ exportStar_1(alfresco_login_component_1_1);
},
- function (alfresco_authentication_1_1) {
- alfresco_authentication_1 = alfresco_authentication_1_1;
- exportStar_1(alfresco_authentication_1_1);
+ function (alfresco_authentication_service_1_1) {
+ alfresco_authentication_service_1 = alfresco_authentication_service_1_1;
+ exportStar_1(alfresco_authentication_service_1_1);
}],
execute: function() {
exports_1("default",{
- directives: [alfresco_login_1.AlfrescoLoginComponent],
- providers: [alfresco_authentication_1.AlfrescoAuthenticationService]
+ directives: [alfresco_login_component_1.AlfrescoLoginComponent],
+ providers: [alfresco_authentication_service_1.AlfrescoAuthenticationService]
});
- exports_1("ALFRESCO_LOGIN_DIRECTIVES", ALFRESCO_LOGIN_DIRECTIVES = [alfresco_login_1.AlfrescoLoginComponent]);
- exports_1("ALFRESCO_AUTHENTICATION", ALFRESCO_AUTHENTICATION = [alfresco_authentication_1.AlfrescoAuthenticationService]);
+ exports_1("ALFRESCO_LOGIN_DIRECTIVES", ALFRESCO_LOGIN_DIRECTIVES = [alfresco_login_component_1.AlfrescoLoginComponent]);
+ exports_1("ALFRESCO_AUTHENTICATION", ALFRESCO_AUTHENTICATION = [alfresco_authentication_service_1.AlfrescoAuthenticationService]);
}
}
});
diff --git a/ng2-components/ng2-alfresco-login/ng2-alfresco-login.js.map b/ng2-components/ng2-alfresco-login/ng2-alfresco-login.js.map
index c35d46677d..a99b750ffb 100644
--- a/ng2-components/ng2-alfresco-login/ng2-alfresco-login.js.map
+++ b/ng2-components/ng2-alfresco-login/ng2-alfresco-login.js.map
@@ -1 +1 @@
-{"version":3,"file":"ng2-alfresco-login.js","sourceRoot":"","sources":["ng2-alfresco-login.ts"],"names":[],"mappings":";;;;QA2Ba,yBAAyB,EACzB,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;YANpC,oBAAe;gBACX,UAAU,EAAE,CAAC,uCAAsB,CAAC;gBACpC,SAAS,EAAE,CAAC,uDAA6B,CAAC;aAC7C,EAAA;YAEY,uCAAA,yBAAyB,GAAU,CAAC,uCAAsB,CAAC,CAAA,CAAC;YAC5D,qCAAA,uBAAuB,GAAU,CAAC,uDAA6B,CAAC,CAAA,CAAC"}
\ No newline at end of file
+{"version":3,"file":"ng2-alfresco-login.js","sourceRoot":"","sources":["ng2-alfresco-login.ts"],"names":[],"mappings":";;;;QA2Ba,yBAAyB,EACzB,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;YANpC,oBAAe;gBACX,UAAU,EAAE,CAAC,iDAAsB,CAAC;gBACpC,SAAS,EAAE,CAAC,+DAA6B,CAAC;aAC7C,EAAA;YAEY,uCAAA,yBAAyB,GAAU,CAAC,iDAAsB,CAAC,CAAA,CAAC;YAC5D,qCAAA,uBAAuB,GAAU,CAAC,+DAA6B,CAAC,CAAA,CAAC"}
\ No newline at end of file
diff --git a/ng2-components/ng2-alfresco-login/package.json b/ng2-components/ng2-alfresco-login/package.json
index 38f1c21efa..702f832812 100644
--- a/ng2-components/ng2-alfresco-login/package.json
+++ b/ng2-components/ng2-alfresco-login/package.json
@@ -42,7 +42,9 @@
"reflect-metadata": "0.1.2",
"rxjs": "5.0.0-beta.2",
"zone.js": "0.6.10",
- "ng2-translate": "^1.11.2"
+ "ng2-translate": "^1.11.2",
+ "angular2": "2.0.0-beta.15",
+ "ng2-alfresco-core": "0.1.0"
},
"peerDependencies": {
"angular2": "2.0.0-beta.15",
diff --git a/ng2-components/ng2-alfresco-login/tsconfig.json b/ng2-components/ng2-alfresco-login/tsconfig.json
index c87ee683da..3c188700e6 100644
--- a/ng2-components/ng2-alfresco-login/tsconfig.json
+++ b/ng2-components/ng2-alfresco-login/tsconfig.json
@@ -10,10 +10,17 @@
"noImplicitAny": false,
"declaration": true
},
+ "files":[
+ "node_modules/angular2/typings/browser.d.ts",
+ "typings/browser/ambient/jasmine/index.d.ts",
+ "src/alfresco-login.component.ts",
+ "src/alfresco-login.component.spec.ts",
+ "src/alfresco-authentication.service.ts",
+ "src/alfresco-authentication.service.spec.ts"
+ ],
"exclude": [
- "node_modules",
- "typings/main",
- "typings/main.d.ts",
- "demo"
+ "**/node_modules",
+ "**/typings/main",
+ "**/typings/main.d.ts"
]
}
diff --git a/ng2-components/ng2-alfresco-upload/.gitignore b/ng2-components/ng2-alfresco-upload/.gitignore
new file mode 100644
index 0000000000..8ef2c4d294
--- /dev/null
+++ b/ng2-components/ng2-alfresco-upload/.gitignore
@@ -0,0 +1,6 @@
+npm-debug.log
+node_modules
+jspm_packages
+.idea
+typings
+coverage
\ No newline at end of file
diff --git a/ng2-components/ng2-alfresco-upload/.travis.yml b/ng2-components/ng2-alfresco-upload/.travis.yml
new file mode 100755
index 0000000000..37844eeed9
--- /dev/null
+++ b/ng2-components/ng2-alfresco-upload/.travis.yml
@@ -0,0 +1,6 @@
+language: node_js
+node_js:
+ - '5'
+script: npm run coverage
+# Send coverage data to Coveralls
+after_script: "cat ./coverage/lcov.info | ./node_modules/coveralls/bin/coveralls.js"
diff --git a/ng2-components/ng2-alfresco-upload/LICENSE b/ng2-components/ng2-alfresco-upload/LICENSE
new file mode 100644
index 0000000000..430d42bbea
--- /dev/null
+++ b/ng2-components/ng2-alfresco-upload/LICENSE
@@ -0,0 +1,177 @@
+
+ Apache License
+ Version 2.0, January 2004
+ http://www.apache.org/licenses/
+
+TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+1. Definitions.
+
+ "License" shall mean the terms and conditions for use, reproduction,
+ and distribution as defined by Sections 1 through 9 of this document.
+
+ "Licensor" shall mean the copyright owner or entity authorized by
+ the copyright owner that is granting the License.
+
+ "Legal Entity" shall mean the union of the acting entity and all
+ other entities that control, are controlled by, or are under common
+ control with that entity. For the purposes of this definition,
+ "control" means (i) the power, direct or indirect, to cause the
+ direction or management of such entity, whether by contract or
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
+ outstanding shares, or (iii) beneficial ownership of such entity.
+
+ "You" (or "Your") shall mean an individual or Legal Entity
+ exercising permissions granted by this License.
+
+ "Source" form shall mean the preferred form for making modifications,
+ including but not limited to software source code, documentation
+ source, and configuration files.
+
+ "Object" form shall mean any form resulting from mechanical
+ transformation or translation of a Source form, including but
+ not limited to compiled object code, generated documentation,
+ and conversions to other media types.
+
+ "Work" shall mean the work of authorship, whether in Source or
+ Object form, made available under the License, as indicated by a
+ copyright notice that is included in or attached to the work
+ (an example is provided in the Appendix below).
+
+ "Derivative Works" shall mean any work, whether in Source or Object
+ form, that is based on (or derived from) the Work and for which the
+ editorial revisions, annotations, elaborations, or other modifications
+ represent, as a whole, an original work of authorship. For the purposes
+ of this License, Derivative Works shall not include works that remain
+ separable from, or merely link (or bind by name) to the interfaces of,
+ the Work and Derivative Works thereof.
+
+ "Contribution" shall mean any work of authorship, including
+ the original version of the Work and any modifications or additions
+ to that Work or Derivative Works thereof, that is intentionally
+ submitted to Licensor for inclusion in the Work by the copyright owner
+ or by an individual or Legal Entity authorized to submit on behalf of
+ the copyright owner. For the purposes of this definition, "submitted"
+ means any form of electronic, verbal, or written communication sent
+ to the Licensor or its representatives, including but not limited to
+ communication on electronic mailing lists, source code control systems,
+ and issue tracking systems that are managed by, or on behalf of, the
+ Licensor for the purpose of discussing and improving the Work, but
+ excluding communication that is conspicuously marked or otherwise
+ designated in writing by the copyright owner as "Not a Contribution."
+
+ "Contributor" shall mean Licensor and any individual or Legal Entity
+ on behalf of whom a Contribution has been received by Licensor and
+ subsequently incorporated within the Work.
+
+2. Grant of Copyright License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ copyright license to reproduce, prepare Derivative Works of,
+ publicly display, publicly perform, sublicense, and distribute the
+ Work and such Derivative Works in Source or Object form.
+
+3. Grant of Patent License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ (except as stated in this section) patent license to make, have made,
+ use, offer to sell, sell, import, and otherwise transfer the Work,
+ where such license applies only to those patent claims licensable
+ by such Contributor that are necessarily infringed by their
+ Contribution(s) alone or by combination of their Contribution(s)
+ with the Work to which such Contribution(s) was submitted. If You
+ institute patent litigation against any entity (including a
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
+ or a Contribution incorporated within the Work constitutes direct
+ or contributory patent infringement, then any patent licenses
+ granted to You under this License for that Work shall terminate
+ as of the date such litigation is filed.
+
+4. Redistribution. You may reproduce and distribute copies of the
+ Work or Derivative Works thereof in any medium, with or without
+ modifications, and in Source or Object form, provided that You
+ meet the following conditions:
+
+ (a) You must give any other recipients of the Work or
+ Derivative Works a copy of this License; and
+
+ (b) You must cause any modified files to carry prominent notices
+ stating that You changed the files; and
+
+ (c) You must retain, in the Source form of any Derivative Works
+ that You distribute, all copyright, patent, trademark, and
+ attribution notices from the Source form of the Work,
+ excluding those notices that do not pertain to any part of
+ the Derivative Works; and
+
+ (d) If the Work includes a "NOTICE" text file as part of its
+ distribution, then any Derivative Works that You distribute must
+ include a readable copy of the attribution notices contained
+ within such NOTICE file, excluding those notices that do not
+ pertain to any part of the Derivative Works, in at least one
+ of the following places: within a NOTICE text file distributed
+ as part of the Derivative Works; within the Source form or
+ documentation, if provided along with the Derivative Works; or,
+ within a display generated by the Derivative Works, if and
+ wherever such third-party notices normally appear. The contents
+ of the NOTICE file are for informational purposes only and
+ do not modify the License. You may add Your own attribution
+ notices within Derivative Works that You distribute, alongside
+ or as an addendum to the NOTICE text from the Work, provided
+ that such additional attribution notices cannot be construed
+ as modifying the License.
+
+ You may add Your own copyright statement to Your modifications and
+ may provide additional or different license terms and conditions
+ for use, reproduction, or distribution of Your modifications, or
+ for any such Derivative Works as a whole, provided Your use,
+ reproduction, and distribution of the Work otherwise complies with
+ the conditions stated in this License.
+
+5. Submission of Contributions. Unless You explicitly state otherwise,
+ any Contribution intentionally submitted for inclusion in the Work
+ by You to the Licensor shall be under the terms and conditions of
+ this License, without any additional terms or conditions.
+ Notwithstanding the above, nothing herein shall supersede or modify
+ the terms of any separate license agreement you may have executed
+ with Licensor regarding such Contributions.
+
+6. Trademarks. This License does not grant permission to use the trade
+ names, trademarks, service marks, or product names of the Licensor,
+ except as required for reasonable and customary use in describing the
+ origin of the Work and reproducing the content of the NOTICE file.
+
+7. Disclaimer of Warranty. Unless required by applicable law or
+ agreed to in writing, Licensor provides the Work (and each
+ Contributor provides its Contributions) on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied, including, without limitation, any warranties or conditions
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+ PARTICULAR PURPOSE. You are solely responsible for determining the
+ appropriateness of using or redistributing the Work and assume any
+ risks associated with Your exercise of permissions under this License.
+
+8. Limitation of Liability. In no event and under no legal theory,
+ whether in tort (including negligence), contract, or otherwise,
+ unless required by applicable law (such as deliberate and grossly
+ negligent acts) or agreed to in writing, shall any Contributor be
+ liable to You for damages, including any direct, indirect, special,
+ incidental, or consequential damages of any character arising as a
+ result of this License or out of the use or inability to use the
+ Work (including but not limited to damages for loss of goodwill,
+ work stoppage, computer failure or malfunction, or any and all
+ other commercial damages or losses), even if such Contributor
+ has been advised of the possibility of such damages.
+
+9. Accepting Warranty or Additional Liability. While redistributing
+ the Work or Derivative Works thereof, You may choose to offer,
+ and charge a fee for, acceptance of support, warranty, indemnity,
+ or other liability obligations and/or rights consistent with this
+ License. However, in accepting such obligations, You may act only
+ on Your own behalf and on Your sole responsibility, not on behalf
+ of any other Contributor, and only if You agree to indemnify,
+ defend, and hold each Contributor harmless for any liability
+ incurred by, or claims asserted against, such Contributor by reason
+ of your accepting any such warranty or additional liability.
+
+END OF TERMS AND CONDITIONS
diff --git a/ng2-components/ng2-alfresco-upload/README.md b/ng2-components/ng2-alfresco-upload/README.md
new file mode 100644
index 0000000000..658ec66747
--- /dev/null
+++ b/ng2-components/ng2-alfresco-upload/README.md
@@ -0,0 +1,28 @@
+# Alfresco Upload Component for Angular 2
+
+Components included:
+
+* Upload Component
+
+### Custom Upload Component
+
+```ts
+import {Component} from 'angular2/core';
+import {Login} from 'ng2-alfresco-login/ng2-alfresco-login';
+
+@Component({
+ selector: 'my-login',
+ template: ' ',
+ directives: [Login]
+})
+export class MyLoginComponent {
+ methodName: string = 'POST';
+}
+```
+
+### Build
+
+```
+$ npm install
+$ npm run build
+```
\ No newline at end of file
diff --git a/ng2-components/ng2-alfresco-upload/assets/license_header.txt b/ng2-components/ng2-alfresco-upload/assets/license_header.txt
new file mode 100644
index 0000000000..5cae403293
--- /dev/null
+++ b/ng2-components/ng2-alfresco-upload/assets/license_header.txt
@@ -0,0 +1,16 @@
+/**
+ * @license
+ * Copyright 2016 Alfresco Software, Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
\ No newline at end of file
diff --git a/ng2-components/ng2-alfresco-upload/fonts/material-icons.woff2 b/ng2-components/ng2-alfresco-upload/fonts/material-icons.woff2
new file mode 100644
index 0000000000..e69de29bb2
diff --git a/ng2-components/ng2-alfresco-upload/i18n/en.json b/ng2-components/ng2-alfresco-upload/i18n/en.json
new file mode 100644
index 0000000000..e69de29bb2
diff --git a/ng2-components/ng2-alfresco-upload/i18n/it.json b/ng2-components/ng2-alfresco-upload/i18n/it.json
new file mode 100644
index 0000000000..e69de29bb2
diff --git a/ng2-components/ng2-alfresco-upload/ng2-alfresco-upload.d.ts b/ng2-components/ng2-alfresco-upload/ng2-alfresco-upload.d.ts
new file mode 100644
index 0000000000..d8a0ccf554
--- /dev/null
+++ b/ng2-components/ng2-alfresco-upload/ng2-alfresco-upload.d.ts
@@ -0,0 +1,28 @@
+/**
+ * @license
+ * Copyright 2016 Alfresco Software, Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+import { UploadComponent } from './src/components/upload.component';
+import { UploadService } from './src/services/upload.service';
+import { FileSelectDirective } from './src/directives/file-select.directive';
+import { FileDraggableDirective } from './src/directives/file-draggable.directive';
+export * from './src/components/upload.component';
+export * from './src/services/upload.service';
+declare var _default: {
+ component: typeof UploadComponent[];
+ directives: (typeof FileSelectDirective | typeof FileDraggableDirective)[];
+ providers: typeof UploadService[];
+};
+export default _default;
diff --git a/ng2-components/ng2-alfresco-upload/ng2-alfresco-upload.js b/ng2-components/ng2-alfresco-upload/ng2-alfresco-upload.js
new file mode 100644
index 0000000000..78395cc725
--- /dev/null
+++ b/ng2-components/ng2-alfresco-upload/ng2-alfresco-upload.js
@@ -0,0 +1,53 @@
+/**
+ * @license
+ * Copyright 2016 Alfresco Software, Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+System.register(['./src/components/upload.component', './src/services/upload.service', './src/directives/file-select.directive', './src/directives/file-draggable.directive'], function(exports_1, context_1) {
+ "use strict";
+ var __moduleName = context_1 && context_1.id;
+ var upload_component_1, upload_service_1, file_select_directive_1, file_draggable_directive_1;
+ function exportStar_1(m) {
+ var exports = {};
+ for(var n in m) {
+ if (n !== "default") exports[n] = m[n];
+ }
+ exports_1(exports);
+ }
+ return {
+ setters:[
+ function (upload_component_1_1) {
+ upload_component_1 = upload_component_1_1;
+ exportStar_1(upload_component_1_1);
+ },
+ function (upload_service_1_1) {
+ upload_service_1 = upload_service_1_1;
+ exportStar_1(upload_service_1_1);
+ },
+ function (file_select_directive_1_1) {
+ file_select_directive_1 = file_select_directive_1_1;
+ },
+ function (file_draggable_directive_1_1) {
+ file_draggable_directive_1 = file_draggable_directive_1_1;
+ }],
+ execute: function() {
+ exports_1("default",{
+ component: [upload_component_1.UploadComponent],
+ directives: [file_select_directive_1.FileSelectDirective, file_draggable_directive_1.FileDraggableDirective],
+ providers: [upload_service_1.UploadService]
+ });
+ }
+ }
+});
+//# sourceMappingURL=ng2-alfresco-upload.js.map
\ No newline at end of file
diff --git a/ng2-components/ng2-alfresco-upload/ng2-alfresco-upload.js.map b/ng2-components/ng2-alfresco-upload/ng2-alfresco-upload.js.map
new file mode 100644
index 0000000000..fbd0942d5b
--- /dev/null
+++ b/ng2-components/ng2-alfresco-upload/ng2-alfresco-upload.js.map
@@ -0,0 +1 @@
+{"version":3,"file":"ng2-alfresco-upload.js","sourceRoot":"","sources":["ng2-alfresco-upload.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YAUH,oBAAe;gBACX,SAAS,EAAE,CAAC,kCAAe,CAAC;gBAC5B,UAAU,EAAE,CAAC,2CAAmB,EAAE,iDAAsB,CAAC;gBACzD,SAAS,EAAE,CAAC,8BAAa,CAAC;aAC7B,EAAA"}
\ No newline at end of file
diff --git a/ng2-components/ng2-alfresco-upload/ng2-alfresco-upload.ts b/ng2-components/ng2-alfresco-upload/ng2-alfresco-upload.ts
new file mode 100644
index 0000000000..b707ed5062
--- /dev/null
+++ b/ng2-components/ng2-alfresco-upload/ng2-alfresco-upload.ts
@@ -0,0 +1,30 @@
+/**
+ * @license
+ * Copyright 2016 Alfresco Software, Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+import {UploadComponent} from './src/components/upload.component';
+import {UploadService} from './src/services/upload.service';
+import {FileSelectDirective} from './src/directives/file-select.directive';
+import {FileDraggableDirective} from './src/directives/file-draggable.directive';
+
+export * from './src/components/upload.component';
+export * from './src/services/upload.service';
+
+export default {
+ component: [UploadComponent],
+ directives: [FileSelectDirective, FileDraggableDirective],
+ providers: [UploadService]
+}
\ No newline at end of file
diff --git a/ng2-components/ng2-alfresco-upload/package.json b/ng2-components/ng2-alfresco-upload/package.json
new file mode 100644
index 0000000000..8bae61d75d
--- /dev/null
+++ b/ng2-components/ng2-alfresco-upload/package.json
@@ -0,0 +1,67 @@
+{
+ "name": "ng2-alfresco-upload",
+ "description": "Alfresco Angular2 Upload Component",
+ "version": "0.1.0",
+ "author": "Alfresco Software, Ltd.",
+ "scripts": {
+ "build": "tslint -c tslint.json **/*.ts && typings install && tsc && license-check",
+ "licensecheck": "license-check",
+ "tsc": "tsc",
+ "tsc:w": "tsc -w",
+ "typings": "typings",
+ "test": "live-server --open=tests-runner.html"
+ },
+ "repository": {
+ "type": "git",
+ "url": "https://github.com/Alfresco/dev-platform-webcomponents.git"
+ },
+ "bugs": {
+ "url": "https://github.com/Alfresco/dev-platform-webcomponents/issues"
+ },
+ "license": "Apache-2.0",
+ "contributors": [
+ {
+ "name": "Mario Romano",
+ "email": "mario.romano83@gmail.com"
+ }
+ ],
+ "keywords": [
+ "ng2",
+ "angular",
+ "angular2",
+ "alfresco"
+ ],
+ "dependencies": {
+ "angular2": "2.0.0-beta.15",
+ "systemjs": "0.19.26",
+ "es6-shim": "^0.35.0",
+ "reflect-metadata": "0.1.2",
+ "rxjs": "5.0.0-beta.2",
+ "zone.js": "0.6.10",
+ "ng2-translate": "^1.11.2"
+ },
+ "peerDependencies": {
+ "angular2": "2.0.0-beta.15",
+ "ng2-alfresco-core": "0.1.0"
+ },
+ "devDependencies": {
+ "coveralls": "^2.11.9",
+ "jasmine-core": "2.4.1",
+ "license-check": "^1.0.4",
+ "live-server": "^0.9.2",
+ "tslint": "^3.8.1",
+ "typescript": "^1.8.10",
+ "typings": "^0.7.12"
+ },
+ "license-check-config": {
+ "src": [
+ "**/*.ts",
+ "!/node_modules/**/*",
+ "!/typings/**/*"
+ ],
+ "path": "assets/license_header.txt",
+ "blocking": false,
+ "logInfo": false,
+ "logError": true
+ }
+}
diff --git a/ng2-components/ng2-alfresco-upload/src/components/file-uploading-dialog.component.css b/ng2-components/ng2-alfresco-upload/src/components/file-uploading-dialog.component.css
new file mode 100644
index 0000000000..6c9ba10cee
--- /dev/null
+++ b/ng2-components/ng2-alfresco-upload/src/components/file-uploading-dialog.component.css
@@ -0,0 +1,115 @@
+
+.file-dialog {
+ display: none;
+ -webkit-box-shadow: 0 2px 8px 0 rgba(0, 0, 0, .2);
+ box-shadow: 0 2px 8px 0 rgba(0, 0, 0, .2);
+ -webkit-border-radius: 2px;
+ border-radius: 2px;
+ -webkit-transform: translate3d(0, 0, 0);
+ transform: translate3d(0, 0, 0);
+ -webkit-transition-delay: 0s;
+ transition-delay: 0s;
+ opacity: 1;
+ -webkit-transition: transform .15s cubic-bezier(0.4, 0.0, 1, 1), opacity .15s cubic-bezier(0.4, 0.0, 1, 1), visibility 0ms linear .15s;
+ transition: transform .15s cubic-bezier(0.4, 0.0, 1, 1), opacity .15s cubic-bezier(0.4, 0.0, 1, 1), visibility 0ms linear .15s;
+ bottom: 0px;
+ left: auto;
+ max-height: 350px;
+ overflow: visible;
+ right: 24px;
+ position: absolute;
+}
+
+.file-dialog .header {
+ width: 900px;
+ background-color: #0c79bf;
+ border: 1px transparent solid;
+ -moz-border-radius-topleft: 2px;
+ -webkit-border-top-left-radius: 2px;
+ border-top-left-radius: 2px;
+ -moz-border-radius-topright: 2px;
+ -webkit-border-top-right-radius: 2px;
+ border-top-right-radius: 2px;
+ bottom: 0px;
+ color: white;
+ font-size: 14px;
+ height: 52px;
+ line-height: 52px;
+ padding: 0px 10px 0px 10px;
+}
+
+.file-dialog .header .title {
+ float: left;
+ min-width: 200px;
+ color: white;
+}
+
+.file-dialog .header .buttons {
+ float: right;
+ padding: 10px 10px 10px 10px;
+ text-align: center;
+ color: white;
+ font-size: 14px;
+ opacity: 0.5;
+}
+
+.file-dialog .header .close-button {
+ cursor: pointer;
+ float: left;
+ height: 35px;
+ width: 35px;
+ -webkit-border-radius: 2px;
+ -moz-border-radius: 2px;
+ border-radius: 2px;
+ border: 1px solid transparent;
+}
+
+.file-dialog .header .close-button:hover {
+ border: 1px solid white;
+ opacity: 1.0;
+}
+
+.file-dialog .header .minimize-button {
+ cursor: pointer;
+ float: left;
+ height: 35px;
+ width: 35px;
+ margin-right: 10px;
+ -webkit-border-radius: 2px;
+ -moz-border-radius: 2px;
+ border-radius: 2px;
+ border: 1px solid transparent;
+}
+
+.up {
+ display: none;
+}
+
+.down {
+ display: block;
+}
+
+.active .up {
+ display: block;
+}
+
+.active .down {
+ display: none;
+}
+
+.file-dialog .header .minimize-button:hover {
+ border: 1px solid white;
+ opacity: 1.0;
+}
+
+.file-dialog .body-dialog {
+ float: left;
+ height: 100%;
+ width: 100%;
+ margin-top: -4px;
+ border-bottom: 1px solid #C0C0C0;
+ border-right: 1px solid #C0C0C0;
+ border-left: 1px solid #C0C0C0;
+ max-height: 200px;
+ overflow-y: auto;
+}
\ No newline at end of file
diff --git a/ng2-components/ng2-alfresco-upload/src/components/file-uploading-dialog.component.d.ts b/ng2-components/ng2-alfresco-upload/src/components/file-uploading-dialog.component.d.ts
new file mode 100644
index 0000000000..3d1baaf31c
--- /dev/null
+++ b/ng2-components/ng2-alfresco-upload/src/components/file-uploading-dialog.component.d.ts
@@ -0,0 +1,28 @@
+/**
+ * @license
+ * Copyright 2016 Alfresco Software, Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+import { ElementRef } from 'angular2/core';
+import { FileModel } from '../models/file.model';
+export declare class FileUploadingDialogComponent {
+ el: ElementRef;
+ filesUploadingList: FileModel[];
+ _isDialogActive: boolean;
+ _isDialogMinimized: boolean;
+ constructor(el: ElementRef);
+ toggleDialog($event: any): void;
+ showDialog(): void;
+ toggleDialogMinimize($event: any): void;
+}
diff --git a/ng2-components/ng2-alfresco-upload/src/components/file-uploading-dialog.component.html b/ng2-components/ng2-alfresco-upload/src/components/file-uploading-dialog.component.html
new file mode 100644
index 0000000000..ba242ef5c9
--- /dev/null
+++ b/ng2-components/ng2-alfresco-upload/src/components/file-uploading-dialog.component.html
@@ -0,0 +1,20 @@
+
\ No newline at end of file
diff --git a/ng2-components/ng2-alfresco-upload/src/components/file-uploading-dialog.component.js b/ng2-components/ng2-alfresco-upload/src/components/file-uploading-dialog.component.js
new file mode 100644
index 0000000000..03bac2b593
--- /dev/null
+++ b/ng2-components/ng2-alfresco-upload/src/components/file-uploading-dialog.component.js
@@ -0,0 +1,77 @@
+/**
+ * @license
+ * Copyright 2016 Alfresco Software, Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+System.register(['angular2/core', './file-uploading-list.component'], function(exports_1, context_1) {
+ "use strict";
+ var __moduleName = context_1 && context_1.id;
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
+ };
+ var __metadata = (this && this.__metadata) || function (k, v) {
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
+ };
+ var core_1, file_uploading_list_component_1;
+ var FileUploadingDialogComponent;
+ return {
+ setters:[
+ function (core_1_1) {
+ core_1 = core_1_1;
+ },
+ function (file_uploading_list_component_1_1) {
+ file_uploading_list_component_1 = file_uploading_list_component_1_1;
+ }],
+ execute: function() {
+ FileUploadingDialogComponent = (function () {
+ function FileUploadingDialogComponent(el) {
+ this.el = el;
+ this._isDialogActive = false;
+ this._isDialogMinimized = false;
+ console.log('FileUploadingDialogComponent constructor', el);
+ }
+ FileUploadingDialogComponent.prototype.toggleDialog = function ($event) {
+ this._isDialogActive = !this._isDialogActive;
+ };
+ FileUploadingDialogComponent.prototype.showDialog = function () {
+ this._isDialogActive = true;
+ };
+ FileUploadingDialogComponent.prototype.toggleDialogMinimize = function ($event) {
+ this._isDialogMinimized = !this._isDialogMinimized;
+ };
+ __decorate([
+ core_1.Input(),
+ __metadata('design:type', Array)
+ ], FileUploadingDialogComponent.prototype, "filesUploadingList", void 0);
+ FileUploadingDialogComponent = __decorate([
+ core_1.Component({
+ selector: 'file-uploading-dialog',
+ moduleId: __moduleName,
+ directives: [file_uploading_list_component_1.FileUploadingListComponent],
+ templateUrl: './file-uploading-dialog.component.html',
+ styleUrls: ['./file-uploading-dialog.component.css'],
+ host: { '[class.dialog-show]': 'toggleDialog' }
+ }),
+ __metadata('design:paramtypes', [core_1.ElementRef])
+ ], FileUploadingDialogComponent);
+ return FileUploadingDialogComponent;
+ }());
+ exports_1("FileUploadingDialogComponent", FileUploadingDialogComponent);
+ }
+ }
+});
+//# sourceMappingURL=file-uploading-dialog.component.js.map
\ No newline at end of file
diff --git a/ng2-components/ng2-alfresco-upload/src/components/file-uploading-dialog.component.js.map b/ng2-components/ng2-alfresco-upload/src/components/file-uploading-dialog.component.js.map
new file mode 100644
index 0000000000..20cf8f277e
--- /dev/null
+++ b/ng2-components/ng2-alfresco-upload/src/components/file-uploading-dialog.component.js.map
@@ -0,0 +1 @@
+{"version":3,"file":"file-uploading-dialog.component.js","sourceRoot":"","sources":["file-uploading-dialog.component.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;;;;;;;;;;;;;;;;;;;;;;;;YAiBH;gBASI,sCAAmB,EAAa;oBAAb,OAAE,GAAF,EAAE,CAAW;oBAJhC,oBAAe,GAAW,KAAK,CAAC;oBAEhC,uBAAkB,GAAW,KAAK,CAAC;oBAG/B,OAAO,CAAC,GAAG,CAAC,0CAA0C,EAAE,EAAE,CAAC,CAAC;gBAChE,CAAC;gBAED,mDAAY,GAAZ,UAAa,MAAM;oBACf,IAAI,CAAC,eAAe,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC;gBACjD,CAAC;gBAED,iDAAU,GAAV;oBACI,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;gBAChC,CAAC;gBAED,2DAAoB,GAApB,UAAqB,MAAM;oBACvB,IAAI,CAAC,kBAAkB,GAAG,CAAC,IAAI,CAAC,kBAAkB,CAAC;gBACvD,CAAC;gBArBD;oBAAC,YAAK,EAAE;;wFAAA;gBAVZ;oBAAC,gBAAS,CAAC;wBACP,QAAQ,EAAE,uBAAuB;wBACjC,QAAQ,EAAE,YAAY;wBACtB,UAAU,EAAE,CAAC,0DAA0B,CAAC;wBACxC,WAAW,EAAE,wCAAwC;wBACrD,SAAS,EAAE,CAAC,uCAAuC,CAAC;wBACpD,IAAI,EAAE,EAAC,qBAAqB,EAAE,cAAc,EAAC;qBAChD,CAAC;;gDAAA;gBAyBF,mCAAC;YAAD,CAAC,AAxBD,IAwBC;YAxBD,uEAwBC,CAAA"}
\ No newline at end of file
diff --git a/ng2-components/ng2-alfresco-upload/src/components/file-uploading-dialog.component.ts b/ng2-components/ng2-alfresco-upload/src/components/file-uploading-dialog.component.ts
new file mode 100644
index 0000000000..6f9347e8be
--- /dev/null
+++ b/ng2-components/ng2-alfresco-upload/src/components/file-uploading-dialog.component.ts
@@ -0,0 +1,57 @@
+/**
+ * @license
+ * Copyright 2016 Alfresco Software, Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+
+import {Component, ElementRef, Input} from 'angular2/core';
+import {FileModel} from '../models/file.model';
+import {FileUploadingListComponent} from './file-uploading-list.component';
+
+declare let __moduleName:string;
+
+@Component({
+ selector: 'file-uploading-dialog',
+ moduleId: __moduleName,
+ directives: [FileUploadingListComponent],
+ templateUrl: './file-uploading-dialog.component.html',
+ styleUrls: ['./file-uploading-dialog.component.css'],
+ host: {'[class.dialog-show]': 'toggleDialog'}
+})
+export class FileUploadingDialogComponent {
+
+ @Input()
+ filesUploadingList:FileModel [];
+
+ _isDialogActive:boolean = false;
+
+ _isDialogMinimized:boolean = false;
+
+ constructor(public el:ElementRef) {
+ console.log('FileUploadingDialogComponent constructor', el);
+ }
+
+ toggleDialog($event) {
+ this._isDialogActive = !this._isDialogActive;
+ }
+
+ showDialog() {
+ this._isDialogActive = true;
+ }
+
+ toggleDialogMinimize($event) {
+ this._isDialogMinimized = !this._isDialogMinimized;
+ }
+}
\ No newline at end of file
diff --git a/ng2-components/ng2-alfresco-upload/src/components/file-uploading-list.component.css b/ng2-components/ng2-alfresco-upload/src/components/file-uploading-list.component.css
new file mode 100644
index 0000000000..6b7bdc155b
--- /dev/null
+++ b/ng2-components/ng2-alfresco-upload/src/components/file-uploading-list.component.css
@@ -0,0 +1,8 @@
+.mdl-data-table {
+ width: 100%;
+ border: 0px;
+}
+
+.cursor {
+ cursor: pointer;
+}
\ No newline at end of file
diff --git a/ng2-components/ng2-alfresco-upload/src/components/file-uploading-list.component.d.ts b/ng2-components/ng2-alfresco-upload/src/components/file-uploading-list.component.d.ts
new file mode 100644
index 0000000000..f6e40fa927
--- /dev/null
+++ b/ng2-components/ng2-alfresco-upload/src/components/file-uploading-list.component.d.ts
@@ -0,0 +1,24 @@
+/**
+ * @license
+ * Copyright 2016 Alfresco Software, Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+import { ElementRef } from 'angular2/core';
+import { FileModel } from '../models/file.model';
+export declare class FileUploadingListComponent {
+ el: ElementRef;
+ filesUploadingList: FileModel[];
+ constructor(el: ElementRef);
+ abort(id: any): void;
+}
diff --git a/ng2-components/ng2-alfresco-upload/src/components/file-uploading-list.component.html b/ng2-components/ng2-alfresco-upload/src/components/file-uploading-list.component.html
new file mode 100644
index 0000000000..ddf186cbfc
--- /dev/null
+++ b/ng2-components/ng2-alfresco-upload/src/components/file-uploading-list.component.html
@@ -0,0 +1,22 @@
+
+
+
+
{{file.name}}
+
+
+
+
+
+
+
+
{{file.size}}
+
+ done
+ play_arrow
+ remove_circle
+ pause
+
+
+
+
\ No newline at end of file
diff --git a/ng2-components/ng2-alfresco-upload/src/components/file-uploading-list.component.js b/ng2-components/ng2-alfresco-upload/src/components/file-uploading-list.component.js
new file mode 100644
index 0000000000..240ff16377
--- /dev/null
+++ b/ng2-components/ng2-alfresco-upload/src/components/file-uploading-list.component.js
@@ -0,0 +1,70 @@
+/**
+ * @license
+ * Copyright 2016 Alfresco Software, Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+System.register(['angular2/core'], function(exports_1, context_1) {
+ "use strict";
+ var __moduleName = context_1 && context_1.id;
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
+ };
+ var __metadata = (this && this.__metadata) || function (k, v) {
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
+ };
+ var core_1;
+ var FileUploadingListComponent;
+ return {
+ setters:[
+ function (core_1_1) {
+ core_1 = core_1_1;
+ }],
+ execute: function() {
+ FileUploadingListComponent = (function () {
+ function FileUploadingListComponent(el) {
+ this.el = el;
+ console.log('filesUploadingList constructor', el);
+ setInterval(function () {
+ console.log('Check for async update from drag directive');
+ }, 1000);
+ }
+ FileUploadingListComponent.prototype.abort = function (id) {
+ var file = this.filesUploadingList.filter(function (uploadingFileModel) {
+ return uploadingFileModel.id == id;
+ });
+ file[0].setAbort();
+ };
+ __decorate([
+ core_1.Input(),
+ __metadata('design:type', Array)
+ ], FileUploadingListComponent.prototype, "filesUploadingList", void 0);
+ FileUploadingListComponent = __decorate([
+ core_1.Component({
+ selector: 'alfresco-file-uploading-list',
+ moduleId: __moduleName,
+ templateUrl: './file-uploading-list.component.html',
+ styleUrls: ['./file-uploading-list.component.css']
+ }),
+ __metadata('design:paramtypes', [core_1.ElementRef])
+ ], FileUploadingListComponent);
+ return FileUploadingListComponent;
+ }());
+ exports_1("FileUploadingListComponent", FileUploadingListComponent);
+ }
+ }
+});
+//# sourceMappingURL=file-uploading-list.component.js.map
\ No newline at end of file
diff --git a/ng2-components/ng2-alfresco-upload/src/components/file-uploading-list.component.js.map b/ng2-components/ng2-alfresco-upload/src/components/file-uploading-list.component.js.map
new file mode 100644
index 0000000000..066a3553f1
--- /dev/null
+++ b/ng2-components/ng2-alfresco-upload/src/components/file-uploading-list.component.js.map
@@ -0,0 +1 @@
+{"version":3,"file":"file-uploading-list.component.js","sourceRoot":"","sources":["file-uploading-list.component.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;;;;;;;;;;;;;;;;;;;;;YAcH;gBAKI,oCAAmB,EAAa;oBAAb,OAAE,GAAF,EAAE,CAAW;oBAC5B,OAAO,CAAC,GAAG,CAAC,gCAAgC,EAAE,EAAE,CAAC,CAAC;oBAElD,WAAW,CAAC;wBACR,OAAO,CAAC,GAAG,CAAC,4CAA4C,CAAC,CAAC;oBAC9D,CAAC,EAAE,IAAI,CAAC,CAAC;gBACb,CAAC;gBAED,0CAAK,GAAL,UAAM,EAAE;oBACJ,IAAI,IAAI,GAAG,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,UAAC,kBAAkB;wBACzD,MAAM,CAAC,kBAAkB,CAAC,EAAE,IAAI,EAAE,CAAC;oBACvC,CAAC,CAAC,CAAC;oBACH,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;gBACvB,CAAC;gBAhBD;oBAAC,YAAK,EAAE;;sFAAA;gBARZ;oBAAC,gBAAS,CAAC;wBACP,QAAQ,EAAE,8BAA8B;wBACxC,QAAQ,EAAE,YAAY;wBACtB,WAAW,EAAE,sCAAsC;wBACnD,SAAS,EAAE,CAAC,qCAAqC,CAAC;qBACrD,CAAC;;8CAAA;gBAoBF,iCAAC;YAAD,CAAC,AAnBD,IAmBC;YAnBD,mEAmBC,CAAA"}
\ No newline at end of file
diff --git a/ng2-components/ng2-alfresco-upload/src/components/file-uploading-list.component.ts b/ng2-components/ng2-alfresco-upload/src/components/file-uploading-list.component.ts
new file mode 100644
index 0000000000..3c5293a7a4
--- /dev/null
+++ b/ng2-components/ng2-alfresco-upload/src/components/file-uploading-list.component.ts
@@ -0,0 +1,49 @@
+/**
+ * @license
+ * Copyright 2016 Alfresco Software, Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+
+import {Component, ElementRef, Input} from 'angular2/core';
+import {FileModel} from '../models/file.model';
+
+declare let __moduleName:string;
+
+@Component({
+ selector: 'alfresco-file-uploading-list',
+ moduleId: __moduleName,
+ templateUrl: './file-uploading-list.component.html',
+ styleUrls: ['./file-uploading-list.component.css']
+})
+export class FileUploadingListComponent {
+
+ @Input()
+ filesUploadingList:FileModel [];
+
+ constructor(public el:ElementRef) {
+ console.log('filesUploadingList constructor', el);
+
+ setInterval(() => {
+ console.log('Check for async update from drag directive');
+ }, 1000);
+ }
+
+ abort(id):void {
+ let file = this.filesUploadingList.filter((uploadingFileModel) => {
+ return uploadingFileModel.id == id;
+ });
+ file[0].setAbort();
+ }
+}
diff --git a/ng2-components/ng2-alfresco-upload/src/components/upload.component.css b/ng2-components/ng2-alfresco-upload/src/components/upload.component.css
new file mode 100644
index 0000000000..858e610b34
--- /dev/null
+++ b/ng2-components/ng2-alfresco-upload/src/components/upload.component.css
@@ -0,0 +1,35 @@
+.mdl-button--file input {
+ cursor: pointer;
+ height: 100%;
+ right: 0;
+ opacity: 0;
+ position: absolute;
+ top: 0;
+ width: 300px;
+ z-index: 4;
+}
+
+.mdl-textfield--file .mdl-textfield__input {
+ box-sizing: border-box;
+ width: calc(100% - 32px);
+}
+
+.mdl-textfield--file .mdl-button--file {
+ right: 0;
+}
+
+.upload-border {
+ vertical-align: middle;
+ color: #555;
+ padding: 20px;
+ max-height: 300px;
+ overflow-y: auto;
+ display: inline-block;
+ border: 3px dashed #555;
+ text-align: center;
+}
+
+.input-focus {
+ color: #2196F3;
+ border: 3px dashed #2196F3;
+}
\ No newline at end of file
diff --git a/ng2-components/ng2-alfresco-upload/src/components/upload.component.d.ts b/ng2-components/ng2-alfresco-upload/src/components/upload.component.d.ts
new file mode 100644
index 0000000000..84f84fbbd1
--- /dev/null
+++ b/ng2-components/ng2-alfresco-upload/src/components/upload.component.d.ts
@@ -0,0 +1,31 @@
+/**
+ * @license
+ * Copyright 2016 Alfresco Software, Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+import { ElementRef } from 'angular2/core';
+import { FileModel } from '../models/file.model';
+import { FileUploadingDialogComponent } from './file-uploading-dialog.component';
+export declare class UploadComponent {
+ el: ElementRef;
+ private _uploaderService;
+ method: string;
+ undoNotificationBar: any;
+ fileUploadingDialogComponent: FileUploadingDialogComponent;
+ filesUploadingList: FileModel[];
+ constructor(el: ElementRef);
+ onFilesAdded(files: any): void;
+ showUndoNotificationBar(latestFilesAdded: any): void;
+ showDialog(): void;
+}
diff --git a/ng2-components/ng2-alfresco-upload/src/components/upload.component.html b/ng2-components/ng2-alfresco-upload/src/components/upload.component.html
new file mode 100644
index 0000000000..45035ed5e6
--- /dev/null
+++ b/ng2-components/ng2-alfresco-upload/src/components/upload.component.html
@@ -0,0 +1,52 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/ng2-components/ng2-alfresco-upload/src/components/upload.component.js b/ng2-components/ng2-alfresco-upload/src/components/upload.component.js
new file mode 100644
index 0000000000..073b6c7db4
--- /dev/null
+++ b/ng2-components/ng2-alfresco-upload/src/components/upload.component.js
@@ -0,0 +1,122 @@
+/**
+ * @license
+ * Copyright 2016 Alfresco Software, Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+System.register(['angular2/core', '../services/upload.service', './file-uploading-dialog.component', '../directives/file-select.directive', '../directives/file-draggable.directive'], function(exports_1, context_1) {
+ "use strict";
+ var __moduleName = context_1 && context_1.id;
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
+ };
+ var __metadata = (this && this.__metadata) || function (k, v) {
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
+ };
+ var core_1, upload_service_1, file_uploading_dialog_component_1, file_select_directive_1, file_draggable_directive_1;
+ var UploadComponent;
+ return {
+ setters:[
+ function (core_1_1) {
+ core_1 = core_1_1;
+ },
+ function (upload_service_1_1) {
+ upload_service_1 = upload_service_1_1;
+ },
+ function (file_uploading_dialog_component_1_1) {
+ file_uploading_dialog_component_1 = file_uploading_dialog_component_1_1;
+ },
+ function (file_select_directive_1_1) {
+ file_select_directive_1 = file_select_directive_1_1;
+ },
+ function (file_draggable_directive_1_1) {
+ file_draggable_directive_1 = file_draggable_directive_1_1;
+ }],
+ execute: function() {
+ UploadComponent = (function () {
+ function UploadComponent(el) {
+ this.el = el;
+ this.method = 'GET';
+ this.filesUploadingList = [];
+ console.log('UploadComponent constructor', el);
+ this._uploaderService = new upload_service_1.UploadService({
+ url: 'http://192.168.99.100:8080/alfresco/service/api/upload',
+ withCredentials: true,
+ authToken: btoa('admin:admin'),
+ authTokenPrefix: 'Basic',
+ fieldName: 'filedata',
+ formFields: {
+ siteid: 'swsdp',
+ containerid: 'documentLibrary'
+ }
+ });
+ }
+ UploadComponent.prototype.onFilesAdded = function (files) {
+ var latestFilesAdded = [];
+ if (componentHandler) {
+ componentHandler.upgradeAllRegistered();
+ }
+ if (files.length) {
+ latestFilesAdded = this._uploaderService.addToQueue(files);
+ this.filesUploadingList = this._uploaderService.getQueue();
+ this.showDialog();
+ this.showUndoNotificationBar(latestFilesAdded);
+ }
+ };
+ UploadComponent.prototype.showUndoNotificationBar = function (latestFilesAdded) {
+ this.snackbarContainer.nativeElement.MaterialSnackbar.showSnackbar({
+ message: 'Upload in progress...',
+ timeout: 5000,
+ actionHandler: function () {
+ latestFilesAdded.forEach(function (uploadingFileModel) {
+ uploadingFileModel.setAbort();
+ });
+ },
+ actionText: 'Undo'
+ });
+ };
+ UploadComponent.prototype.showDialog = function () {
+ this.fileUploadingDialogComponent.showDialog();
+ };
+ __decorate([
+ core_1.Input(),
+ __metadata('design:type', String)
+ ], UploadComponent.prototype, "method", void 0);
+ __decorate([
+ core_1.ViewChild('undoNotificationBar'),
+ __metadata('design:type', Object)
+ ], UploadComponent.prototype, "undoNotificationBar", void 0);
+ __decorate([
+ core_1.ViewChild('fileUploadingDialog'),
+ __metadata('design:type', file_uploading_dialog_component_1.FileUploadingDialogComponent)
+ ], UploadComponent.prototype, "fileUploadingDialogComponent", void 0);
+ UploadComponent = __decorate([
+ core_1.Component({
+ selector: 'alfresco-upload',
+ moduleId: __moduleName,
+ directives: [file_select_directive_1.FileSelectDirective, file_draggable_directive_1.FileDraggableDirective, file_uploading_dialog_component_1.FileUploadingDialogComponent],
+ templateUrl: './upload.component.html',
+ styleUrls: ['./upload.component.css']
+ }),
+ __metadata('design:paramtypes', [core_1.ElementRef])
+ ], UploadComponent);
+ return UploadComponent;
+ }());
+ exports_1("UploadComponent", UploadComponent);
+ }
+ }
+});
+//# sourceMappingURL=upload.component.js.map
\ No newline at end of file
diff --git a/ng2-components/ng2-alfresco-upload/src/components/upload.component.js.map b/ng2-components/ng2-alfresco-upload/src/components/upload.component.js.map
new file mode 100644
index 0000000000..69b18b2b59
--- /dev/null
+++ b/ng2-components/ng2-alfresco-upload/src/components/upload.component.js.map
@@ -0,0 +1 @@
+{"version":3,"file":"upload.component.js","sourceRoot":"","sources":["upload.component.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YAqBH;gBAeI,yBAAmB,EAAa;oBAAb,OAAE,GAAF,EAAE,CAAW;oBAVhC,WAAM,GAAU,KAAK,CAAC;oBAQtB,uBAAkB,GAAgB,EAAE,CAAC;oBAGjC,OAAO,CAAC,GAAG,CAAC,6BAA6B,EAAE,EAAE,CAAC,CAAC;oBAE/C,IAAI,CAAC,gBAAgB,GAAG,IAAI,8BAAa,CAAC;wBACtC,GAAG,EAAE,wDAAwD;wBAC7D,eAAe,EAAE,IAAI;wBACrB,SAAS,EAAE,IAAI,CAAC,aAAa,CAAC;wBAC9B,eAAe,EAAE,OAAO;wBACxB,SAAS,EAAE,UAAU;wBACrB,UAAU,EAAE;4BACR,MAAM,EAAE,OAAO;4BACf,WAAW,EAAE,iBAAiB;yBACjC;qBACJ,CAAC,CAAC;gBACP,CAAC;gBAED,sCAAY,GAAZ,UAAa,KAAK;oBACd,IAAI,gBAAgB,GAAgB,EAAE,CAAC;oBACvC,EAAE,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC;wBACnB,gBAAgB,CAAC,oBAAoB,EAAE,CAAC;oBAC5C,CAAC;oBAED,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;wBACf,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;wBAC3D,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,CAAC;wBAC3D,IAAI,CAAC,UAAU,EAAE,CAAC;wBAClB,IAAI,CAAC,uBAAuB,CAAC,gBAAgB,CAAC,CAAC;oBACnD,CAAC;gBACL,CAAC;gBAED,iDAAuB,GAAvB,UAAwB,gBAAgB;oBACpC,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,gBAAgB,CAAC,YAAY,CAAC;wBAC/D,OAAO,EAAE,uBAAuB;wBAChC,OAAO,EAAE,IAAI;wBACb,aAAa,EAAE;4BACX,gBAAgB,CAAC,OAAO,CAAC,UAAC,kBAAkB;gCACxC,kBAAkB,CAAC,QAAQ,EAAE,CAAC;4BAClC,CAAC,CAAC,CAAC;wBACP,CAAC;wBACD,UAAU,EAAE,MAAM;qBACrB,CAAC,CAAC;gBACP,CAAC;gBAED,oCAAU,GAAV;oBACI,IAAI,CAAC,4BAA4B,CAAC,UAAU,EAAE,CAAC;gBACnD,CAAC;gBAxDD;oBAAC,YAAK,EAAE;;+DAAA;gBAGR;oBAAC,gBAAS,CAAC,qBAAqB,CAAC;;4EAAA;gBAGjC;oBAAC,gBAAS,CAAC,qBAAqB,CAAC;;qFAAA;gBAjBrC;oBAAC,gBAAS,CAAC;wBACP,QAAQ,EAAE,iBAAiB;wBAC3B,QAAQ,EAAE,YAAY;wBACtB,UAAU,EAAE,CAAC,2CAAmB,EAAE,iDAAsB,EAAE,8DAA4B,CAAC;wBACvF,WAAW,EAAE,yBAAyB;wBACtC,SAAS,EAAE,CAAC,wBAAwB,CAAC;qBACxC,CAAC;;mCAAA;gBA8DF,sBAAC;YAAD,CAAC,AA7DD,IA6DC;YA7DD,6CA6DC,CAAA"}
\ No newline at end of file
diff --git a/ng2-components/ng2-alfresco-upload/src/components/upload.component.ts b/ng2-components/ng2-alfresco-upload/src/components/upload.component.ts
new file mode 100644
index 0000000000..6d68e4e1da
--- /dev/null
+++ b/ng2-components/ng2-alfresco-upload/src/components/upload.component.ts
@@ -0,0 +1,98 @@
+/**
+ * @license
+ * Copyright 2016 Alfresco Software, Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+
+import {Component, Input, ViewChild, ElementRef} from 'angular2/core';
+import {UploadService} from '../services/upload.service';
+import {FileModel} from '../models/file.model';
+import {FileUploadingDialogComponent} from './file-uploading-dialog.component';
+import {FileSelectDirective} from '../directives/file-select.directive';
+import {FileDraggableDirective} from '../directives/file-draggable.directive';
+
+declare let componentHandler;
+declare let dialogPolyfill;
+declare let __moduleName:string;
+
+@Component({
+ selector: 'alfresco-upload',
+ moduleId: __moduleName,
+ directives: [FileSelectDirective, FileDraggableDirective, FileUploadingDialogComponent],
+ templateUrl: './upload.component.html',
+ styleUrls: ['./upload.component.css']
+})
+export class UploadComponent {
+
+ private _uploaderService:UploadService;
+
+ @Input()
+ method:string = 'GET';
+
+ @ViewChild('undoNotificationBar')
+ undoNotificationBar;
+
+ @ViewChild('fileUploadingDialog')
+ fileUploadingDialogComponent:FileUploadingDialogComponent;
+
+ filesUploadingList:FileModel [] = [];
+
+ constructor(public el:ElementRef) {
+ console.log('UploadComponent constructor', el);
+
+ this._uploaderService = new UploadService({
+ url: 'http://192.168.99.100:8080/alfresco/service/api/upload',
+ withCredentials: true,
+ authToken: btoa('admin:admin'),
+ authTokenPrefix: 'Basic',
+ fieldName: 'filedata',
+ formFields: {
+ siteid: 'swsdp',
+ containerid: 'documentLibrary'
+ }
+ });
+ }
+
+ onFilesAdded(files):void {
+ let latestFilesAdded:FileModel [] = [];
+ if (componentHandler) {
+ componentHandler.upgradeAllRegistered();
+ }
+
+ if (files.length) {
+ latestFilesAdded = this._uploaderService.addToQueue(files);
+ this.filesUploadingList = this._uploaderService.getQueue();
+ this.showDialog();
+ this.showUndoNotificationBar(latestFilesAdded);
+ }
+ }
+
+ showUndoNotificationBar(latestFilesAdded){
+ this.snackbarContainer.nativeElement.MaterialSnackbar.showSnackbar({
+ message: 'Upload in progress...',
+ timeout: 5000,
+ actionHandler: function () {
+ latestFilesAdded.forEach((uploadingFileModel) => {
+ uploadingFileModel.setAbort();
+ });
+ },
+ actionText: 'Undo'
+ });
+ }
+
+ showDialog():void {
+ this.fileUploadingDialogComponent.showDialog();
+ }
+}
diff --git a/ng2-components/ng2-alfresco-upload/src/directives/file-draggable.directive.d.ts b/ng2-components/ng2-alfresco-upload/src/directives/file-draggable.directive.d.ts
new file mode 100644
index 0000000000..9e00f4f99b
--- /dev/null
+++ b/ng2-components/ng2-alfresco-upload/src/directives/file-draggable.directive.d.ts
@@ -0,0 +1,29 @@
+/**
+ * @license
+ * Copyright 2016 Alfresco Software, Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+import { ElementRef, EventEmitter } from 'angular2/core';
+export declare class FileDraggableDirective {
+ el: ElementRef;
+ onFilesAdded: EventEmitter;
+ files: File[];
+ private _inputFocusClass;
+ constructor(el: ElementRef);
+ private _onDropFiles($event);
+ private _traverseFileTree(item, x);
+ private _onDragEnter($event);
+ private _onDragLeave($event);
+ private _preventDefault($event);
+}
diff --git a/ng2-components/ng2-alfresco-upload/src/directives/file-draggable.directive.js b/ng2-components/ng2-alfresco-upload/src/directives/file-draggable.directive.js
new file mode 100644
index 0000000000..8cb16e4313
--- /dev/null
+++ b/ng2-components/ng2-alfresco-upload/src/directives/file-draggable.directive.js
@@ -0,0 +1,115 @@
+/**
+ * @license
+ * Copyright 2016 Alfresco Software, Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+System.register(['angular2/core'], function(exports_1, context_1) {
+ "use strict";
+ var __moduleName = context_1 && context_1.id;
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
+ };
+ var __metadata = (this && this.__metadata) || function (k, v) {
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
+ };
+ var core_1;
+ var FileDraggableDirective;
+ return {
+ setters:[
+ function (core_1_1) {
+ core_1 = core_1_1;
+ }],
+ execute: function() {
+ FileDraggableDirective = (function () {
+ function FileDraggableDirective(el) {
+ this.el = el;
+ this.onFilesAdded = new core_1.EventEmitter();
+ this._inputFocusClass = false;
+ console.log('FileDraggableComponent constructor', el);
+ }
+ FileDraggableDirective.prototype._onDropFiles = function ($event) {
+ this._preventDefault($event);
+ var items = $event.dataTransfer.items;
+ for (var i = 0; i < items.length; i++) {
+ var item = items[i].webkitGetAsEntry();
+ if (item) {
+ this._traverseFileTree(item, -1);
+ }
+ else {
+ var dt = $event.dataTransfer;
+ var files = dt.files;
+ this.onFilesAdded.emit(files);
+ }
+ }
+ this.onFilesAdded.emit([]);
+ this._inputFocusClass = false;
+ };
+ FileDraggableDirective.prototype._traverseFileTree = function (item, x) {
+ if (item.isFile) {
+ var self_1 = this;
+ item.file(function (file) {
+ self_1.onFilesAdded.emit([file]);
+ });
+ }
+ else {
+ if (item.isDirectory) {
+ var self_2 = this;
+ var dirReader = item.createReader();
+ dirReader.readEntries(function (entries) {
+ for (var i = 0; i < entries.length; i++) {
+ self_2._traverseFileTree(entries[i], i);
+ }
+ });
+ }
+ }
+ };
+ FileDraggableDirective.prototype._onDragEnter = function ($event) {
+ this._preventDefault($event);
+ this._inputFocusClass = true;
+ };
+ FileDraggableDirective.prototype._onDragLeave = function ($event) {
+ this._preventDefault($event);
+ this._inputFocusClass = false;
+ };
+ FileDraggableDirective.prototype._preventDefault = function ($event) {
+ $event.stopPropagation();
+ $event.preventDefault();
+ };
+ __decorate([
+ core_1.Output(),
+ __metadata('design:type', core_1.EventEmitter)
+ ], FileDraggableDirective.prototype, "onFilesAdded", void 0);
+ FileDraggableDirective = __decorate([
+ core_1.Directive({
+ selector: '[file-draggable]',
+ host: {
+ '(drop)': '_onDropFiles($event)',
+ '(dragenter)': '_onDragEnter($event)',
+ '(dragleave)': '_onDragLeave($event)',
+ '(dragover)': '_preventDefault($event)',
+ '[class.input-focus]': '_inputFocusClass'
+ }
+ }),
+ __metadata('design:paramtypes', [core_1.ElementRef])
+ ], FileDraggableDirective);
+ return FileDraggableDirective;
+ }());
+ exports_1("FileDraggableDirective", FileDraggableDirective);
+ }
+ }
+});
+//# sourceMappingURL=file-draggable.directive.js.map
\ No newline at end of file
diff --git a/ng2-components/ng2-alfresco-upload/src/directives/file-draggable.directive.js.map b/ng2-components/ng2-alfresco-upload/src/directives/file-draggable.directive.js.map
new file mode 100644
index 0000000000..44187b2e01
--- /dev/null
+++ b/ng2-components/ng2-alfresco-upload/src/directives/file-draggable.directive.js.map
@@ -0,0 +1 @@
+{"version":3,"file":"file-draggable.directive.js","sourceRoot":"","sources":["file-draggable.directive.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/ng2-components/ng2-alfresco-upload/src/directives/file-draggable.directive.ts b/ng2-components/ng2-alfresco-upload/src/directives/file-draggable.directive.ts
new file mode 100644
index 0000000000..a404cb1877
--- /dev/null
+++ b/ng2-components/ng2-alfresco-upload/src/directives/file-draggable.directive.ts
@@ -0,0 +1,94 @@
+/**
+ * @license
+ * Copyright 2016 Alfresco Software, Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+import {Directive, ElementRef, EventEmitter, Output} from 'angular2/core';
+
+@Directive({
+ selector: '[file-draggable]',
+ host: {
+ '(drop)': '_onDropFiles($event)',
+ '(dragenter)': '_onDragEnter($event)',
+ '(dragleave)': '_onDragLeave($event)',
+ '(dragover)': '_preventDefault($event)',
+ '[class.input-focus]': '_inputFocusClass'
+ }
+})
+export class FileDraggableDirective {
+ @Output()
+ onFilesAdded:EventEmitter = new EventEmitter();
+ files:File [];
+ private _inputFocusClass:boolean = false;
+
+ constructor(public el:ElementRef) {
+ console.log('FileDraggableComponent constructor', el);
+ }
+
+ private _onDropFiles($event):void {
+ this._preventDefault($event);
+
+ var items = $event.dataTransfer.items;
+ for (var i = 0; i < items.length; i++) {
+ var item = items[i].webkitGetAsEntry();
+ if (item) {
+ this._traverseFileTree(item, -1);
+ } else {
+ let dt = $event.dataTransfer;
+ let files = dt.files;
+ this.onFilesAdded.emit(files);
+ }
+ }
+ this.onFilesAdded.emit([]);
+
+ this._inputFocusClass = false;
+ }
+
+ private _traverseFileTree(item, x):void {
+ if (item.isFile) {
+ let self = this;
+ item.file(function (file) {
+ self.onFilesAdded.emit([file]);
+ });
+ } else {
+ if (item.isDirectory) {
+ let self = this;
+ let dirReader = item.createReader();
+ dirReader.readEntries(function (entries) {
+ for (var i = 0; i < entries.length; i++) {
+ self._traverseFileTree(entries[i], i);
+ }
+ });
+ }
+ }
+ }
+
+ private _onDragEnter($event):void {
+ this._preventDefault($event);
+
+ this._inputFocusClass = true;
+ }
+
+ private _onDragLeave($event):void {
+ this._preventDefault($event);
+
+ this._inputFocusClass = false;
+ }
+
+ private _preventDefault($event):void {
+ $event.stopPropagation();
+ $event.preventDefault();
+ }
+}
\ No newline at end of file
diff --git a/ng2-components/ng2-alfresco-upload/src/directives/file-select.directive.d.ts b/ng2-components/ng2-alfresco-upload/src/directives/file-select.directive.d.ts
new file mode 100644
index 0000000000..b7d33a7a95
--- /dev/null
+++ b/ng2-components/ng2-alfresco-upload/src/directives/file-select.directive.d.ts
@@ -0,0 +1,23 @@
+/**
+ * @license
+ * Copyright 2016 Alfresco Software, Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+import { ElementRef, EventEmitter } from 'angular2/core';
+export declare class FileSelectDirective {
+ el: ElementRef;
+ onFilesAdded: EventEmitter;
+ constructor(el: ElementRef);
+ private _onAdd();
+}
diff --git a/ng2-components/ng2-alfresco-upload/src/directives/file-select.directive.js b/ng2-components/ng2-alfresco-upload/src/directives/file-select.directive.js
new file mode 100644
index 0000000000..ebe296472c
--- /dev/null
+++ b/ng2-components/ng2-alfresco-upload/src/directives/file-select.directive.js
@@ -0,0 +1,64 @@
+/**
+ * @license
+ * Copyright 2016 Alfresco Software, Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+System.register(['angular2/core'], function(exports_1, context_1) {
+ "use strict";
+ var __moduleName = context_1 && context_1.id;
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
+ };
+ var __metadata = (this && this.__metadata) || function (k, v) {
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
+ };
+ var core_1;
+ var FileSelectDirective;
+ return {
+ setters:[
+ function (core_1_1) {
+ core_1 = core_1_1;
+ }],
+ execute: function() {
+ FileSelectDirective = (function () {
+ function FileSelectDirective(el) {
+ this.el = el;
+ this.onFilesAdded = new core_1.EventEmitter();
+ console.log('FileSelectComponent constructor', el);
+ }
+ FileSelectDirective.prototype._onAdd = function () {
+ var files = this.el.nativeElement.files;
+ this.onFilesAdded.emit(files);
+ };
+ __decorate([
+ core_1.Output(),
+ __metadata('design:type', core_1.EventEmitter)
+ ], FileSelectDirective.prototype, "onFilesAdded", void 0);
+ FileSelectDirective = __decorate([
+ core_1.Directive({
+ selector: '[file-select]',
+ host: { '(change)': '_onAdd()' }
+ }),
+ __metadata('design:paramtypes', [core_1.ElementRef])
+ ], FileSelectDirective);
+ return FileSelectDirective;
+ }());
+ exports_1("FileSelectDirective", FileSelectDirective);
+ }
+ }
+});
+//# sourceMappingURL=file-select.directive.js.map
\ No newline at end of file
diff --git a/ng2-components/ng2-alfresco-upload/src/directives/file-select.directive.js.map b/ng2-components/ng2-alfresco-upload/src/directives/file-select.directive.js.map
new file mode 100644
index 0000000000..dfa8c9be6f
--- /dev/null
+++ b/ng2-components/ng2-alfresco-upload/src/directives/file-select.directive.js.map
@@ -0,0 +1 @@
+{"version":3,"file":"file-select.directive.js","sourceRoot":"","sources":["file-select.directive.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;;;;;;;;;;;;;;;;;;;;;YAQH;gBAKI,6BAAmB,EAAa;oBAAb,OAAE,GAAF,EAAE,CAAW;oBAFhC,iBAAY,GAAqB,IAAI,mBAAY,EAAE,CAAC;oBAGhD,OAAO,CAAC,GAAG,CAAC,iCAAiC,EAAE,EAAE,CAAC,CAAC;gBACvD,CAAC;gBAEO,oCAAM,GAAd;oBACI,IAAI,KAAK,GAAG,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC;oBACxC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAClC,CAAC;gBAVD;oBAAC,aAAM,EAAE;;yEAAA;gBANb;oBAAC,gBAAS,CAAC;wBACP,QAAQ,EAAE,eAAe;wBACzB,IAAI,EAAE,EAAC,UAAU,EAAE,UAAU,EAAC;qBACjC,CAAC;;uCAAA;gBAcF,0BAAC;YAAD,CAAC,AAbD,IAaC;YAbD,qDAaC,CAAA"}
\ No newline at end of file
diff --git a/ng2-components/ng2-alfresco-upload/src/directives/file-select.directive.ts b/ng2-components/ng2-alfresco-upload/src/directives/file-select.directive.ts
new file mode 100644
index 0000000000..cff4abb817
--- /dev/null
+++ b/ng2-components/ng2-alfresco-upload/src/directives/file-select.directive.ts
@@ -0,0 +1,37 @@
+/**
+ * @license
+ * Copyright 2016 Alfresco Software, Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+import {Directive, ElementRef, EventEmitter, Output} from 'angular2/core';
+
+@Directive({
+ selector: '[file-select]',
+ host: {'(change)': '_onAdd()'}
+})
+export class FileSelectDirective {
+
+ @Output()
+ onFilesAdded:EventEmitter = new EventEmitter();
+
+ constructor(public el:ElementRef) {
+ console.log('FileSelectComponent constructor', el);
+ }
+
+ private _onAdd():void {
+ let files = this.el.nativeElement.files;
+ this.onFilesAdded.emit(files);
+ }
+}
diff --git a/ng2-components/ng2-alfresco-upload/src/models/file.model.d.ts b/ng2-components/ng2-alfresco-upload/src/models/file.model.d.ts
new file mode 100644
index 0000000000..8628ebbe85
--- /dev/null
+++ b/ng2-components/ng2-alfresco-upload/src/models/file.model.d.ts
@@ -0,0 +1,40 @@
+/**
+ * @license
+ * Copyright 2016 Alfresco Software, Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+export declare class FileModel {
+ id: string;
+ status: number;
+ statusText: string;
+ progress: Object;
+ name: string;
+ size: string;
+ response: string;
+ done: boolean;
+ error: boolean;
+ abort: boolean;
+ uploading: boolean;
+ file: any;
+ _xmlHttpRequest: XMLHttpRequest;
+ constructor(file: any);
+ setProgres(progress: any): void;
+ setError(): void;
+ setUploading(): void;
+ setXMLHttpRequest(xmlHttpRequest: XMLHttpRequest): void;
+ setAbort(): void;
+ onFinished(status: number, statusText: string, response: string): void;
+ private _getFileSize(sizeinbytes);
+ private _generateId();
+}
diff --git a/ng2-components/ng2-alfresco-upload/src/models/file.model.js b/ng2-components/ng2-alfresco-upload/src/models/file.model.js
new file mode 100644
index 0000000000..371000d53b
--- /dev/null
+++ b/ng2-components/ng2-alfresco-upload/src/models/file.model.js
@@ -0,0 +1,88 @@
+/**
+ * @license
+ * Copyright 2016 Alfresco Software, Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+System.register([], function(exports_1, context_1) {
+ "use strict";
+ var __moduleName = context_1 && context_1.id;
+ var FileModel;
+ return {
+ setters:[],
+ execute: function() {
+ FileModel = (function () {
+ function FileModel(file) {
+ this.done = false;
+ this.error = false;
+ this.abort = false;
+ this.uploading = false;
+ this.file = file;
+ this.id = this._generateId();
+ this.name = file.name;
+ this.size = this._getFileSize(file.size);
+ this.progress = {
+ loaded: 0,
+ total: 0,
+ percent: 0
+ };
+ }
+ FileModel.prototype.setProgres = function (progress) {
+ this.progress = progress;
+ };
+ FileModel.prototype.setError = function () {
+ this.error = true;
+ };
+ FileModel.prototype.setUploading = function () {
+ this.uploading = true;
+ };
+ FileModel.prototype.setXMLHttpRequest = function (xmlHttpRequest) {
+ this._xmlHttpRequest = xmlHttpRequest;
+ };
+ FileModel.prototype.setAbort = function () {
+ if (!this.done && !this.error) {
+ this.abort = true;
+ this.uploading = false;
+ this._xmlHttpRequest.abort();
+ }
+ };
+ FileModel.prototype.onFinished = function (status, statusText, response) {
+ this.status = status;
+ this.statusText = statusText;
+ this.response = response;
+ this.done = true;
+ this.uploading = false;
+ };
+ FileModel.prototype._getFileSize = function (sizeinbytes) {
+ var fSExt = new Array('Bytes', 'KB', 'MB', 'GB');
+ var size = sizeinbytes;
+ var i = 0;
+ while (size > 900) {
+ size /= 1000;
+ i++;
+ }
+ return Math.round((Math.round(size * 100) / 100)) + ' ' + fSExt[i];
+ };
+ FileModel.prototype._generateId = function () {
+ return 'uploading-' + 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {
+ var r = Math.random() * 16 | 0, v = c == 'x' ? r : (r & 0x3 | 0x8);
+ return v.toString(16);
+ });
+ };
+ return FileModel;
+ }());
+ exports_1("FileModel", FileModel);
+ }
+ }
+});
+//# sourceMappingURL=file.model.js.map
\ No newline at end of file
diff --git a/ng2-components/ng2-alfresco-upload/src/models/file.model.js.map b/ng2-components/ng2-alfresco-upload/src/models/file.model.js.map
new file mode 100644
index 0000000000..766ae76a2b
--- /dev/null
+++ b/ng2-components/ng2-alfresco-upload/src/models/file.model.js.map
@@ -0,0 +1 @@
+{"version":3,"file":"file.model.js","sourceRoot":"","sources":["file.model.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/ng2-components/ng2-alfresco-upload/src/models/file.model.ts b/ng2-components/ng2-alfresco-upload/src/models/file.model.ts
new file mode 100644
index 0000000000..295e0ffb32
--- /dev/null
+++ b/ng2-components/ng2-alfresco-upload/src/models/file.model.ts
@@ -0,0 +1,95 @@
+/**
+ * @license
+ * Copyright 2016 Alfresco Software, Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+
+export class FileModel {
+ id:string;
+ status:number;
+ statusText:string;
+ progress:Object;
+ name:string;
+ size:string;
+ response:string;
+ done:boolean = false;
+ error:boolean = false;
+ abort:boolean = false;
+ uploading:boolean = false;
+ file:any;
+ _xmlHttpRequest:XMLHttpRequest;
+
+ constructor(file:any) {
+ this.file = file;
+ this.id = this._generateId();
+ this.name = file.name;
+ this.size = this._getFileSize(file.size);
+ this.progress = {
+ loaded: 0,
+ total: 0,
+ percent: 0
+ };
+ }
+
+ setProgres(progress:any):void {
+ this.progress = progress;
+ }
+
+ setError():void {
+ this.error = true;
+ }
+
+ setUploading(){
+ this.uploading = true;
+ }
+
+ setXMLHttpRequest(xmlHttpRequest:XMLHttpRequest){
+ this._xmlHttpRequest = xmlHttpRequest;
+ }
+
+ setAbort():void {
+ if(!this.done && !this.error){
+ this.abort = true;
+ this.uploading = false;
+ this._xmlHttpRequest.abort();
+ }
+ }
+
+ onFinished(status:number, statusText:string, response:string):void {
+ this.status = status;
+ this.statusText = statusText;
+ this.response = response;
+ this.done = true;
+ this.uploading = false;
+ }
+
+ private _getFileSize(sizeinbytes):string {
+ let fSExt = new Array('Bytes', 'KB', 'MB', 'GB');
+ let size = sizeinbytes;
+ let i = 0;
+ while (size > 900) {
+ size /= 1000;
+ i++;
+ }
+ return Math.round((Math.round(size * 100) / 100)) + ' ' + fSExt[i];
+ }
+
+ private _generateId():string {
+ return 'uploading-' + 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {
+ let r = Math.random() * 16 | 0, v = c == 'x' ? r : (r & 0x3 | 0x8);
+ return v.toString(16);
+ });
+ }
+}
diff --git a/ng2-components/ng2-alfresco-upload/src/services/upload.service.d.ts b/ng2-components/ng2-alfresco-upload/src/services/upload.service.d.ts
new file mode 100644
index 0000000000..5d6189ce5e
--- /dev/null
+++ b/ng2-components/ng2-alfresco-upload/src/services/upload.service.d.ts
@@ -0,0 +1,33 @@
+/**
+ * @license
+ * Copyright 2016 Alfresco Software, Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+import { FileModel } from '../models/file.model';
+export declare class UploadService {
+ private _url;
+ private _method;
+ private _authTokenPrefix;
+ private _authToken;
+ private _fieldName;
+ private _formFields;
+ private _withCredentials;
+ _queue: FileModel[];
+ constructor(options: any);
+ addToQueue(files: any[]): FileModel[];
+ private _uploadFilesInTheQueue();
+ uploadFile(uploadingFileModel: any): void;
+ getQueue(): FileModel[];
+ private _isFile(file);
+}
diff --git a/ng2-components/ng2-alfresco-upload/src/services/upload.service.js b/ng2-components/ng2-alfresco-upload/src/services/upload.service.js
new file mode 100644
index 0000000000..238982e7f9
--- /dev/null
+++ b/ng2-components/ng2-alfresco-upload/src/services/upload.service.js
@@ -0,0 +1,117 @@
+/**
+ * @license
+ * Copyright 2016 Alfresco Software, Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+System.register(['../models/file.model'], function(exports_1, context_1) {
+ "use strict";
+ var __moduleName = context_1 && context_1.id;
+ var file_model_1;
+ var UploadService;
+ return {
+ setters:[
+ function (file_model_1_1) {
+ file_model_1 = file_model_1_1;
+ }],
+ execute: function() {
+ UploadService = (function () {
+ function UploadService(options) {
+ this._method = 'POST';
+ this._authTokenPrefix = 'Basic';
+ this._authToken = undefined;
+ this._fieldName = 'file';
+ this._formFields = {};
+ this._queue = [];
+ console.log('UploadService constructor');
+ this._withCredentials = options.withCredentials != null ? options.withCredentials : this._withCredentials;
+ this._url = options.url != null ? options.url : this._url;
+ this._authTokenPrefix = options.authTokenPrefix != null ? options.authTokenPrefix : this._authTokenPrefix;
+ this._authToken = options.authToken != null ? options.authToken : this._authToken;
+ this._fieldName = options.fieldName != null ? options.fieldName : this._fieldName;
+ this._formFields = options.formFields != null ? options.formFields : this._formFields;
+ }
+ UploadService.prototype.addToQueue = function (files) {
+ var latestFilesAdded = [];
+ for (var _i = 0, files_1 = files; _i < files_1.length; _i++) {
+ var file = files_1[_i];
+ if (this._isFile(file)) {
+ var uploadingFileModel = new file_model_1.FileModel(file);
+ latestFilesAdded.push(uploadingFileModel);
+ this._queue.push(uploadingFileModel);
+ }
+ }
+ this._uploadFilesInTheQueue();
+ return latestFilesAdded;
+ };
+ UploadService.prototype._uploadFilesInTheQueue = function () {
+ var _this = this;
+ var filesToUpload = this._queue.filter(function (uploadingFileModel) {
+ return !uploadingFileModel.uploading && !uploadingFileModel.done && !uploadingFileModel.abort && !uploadingFileModel.error;
+ });
+ filesToUpload.forEach(function (uploadingFileModel) {
+ uploadingFileModel.setUploading();
+ _this.uploadFile(uploadingFileModel);
+ });
+ };
+ ;
+ UploadService.prototype.uploadFile = function (uploadingFileModel) {
+ var _this = this;
+ var form = new FormData();
+ form.append(this._fieldName, uploadingFileModel.file, uploadingFileModel.name);
+ Object.keys(this._formFields).forEach(function (key) {
+ form.append(key, _this._formFields[key]);
+ });
+ var xmlHttpRequest = new XMLHttpRequest();
+ uploadingFileModel.setXMLHttpRequest(xmlHttpRequest);
+ xmlHttpRequest.upload.onprogress = function (e) {
+ if (e.lengthComputable) {
+ var percent = Math.round(e.loaded / e.total * 100);
+ uploadingFileModel.setProgres({
+ total: e.total,
+ loaded: e.loaded,
+ percent: percent
+ });
+ }
+ };
+ xmlHttpRequest.upload.onabort = function (e) {
+ uploadingFileModel.setAbort();
+ };
+ xmlHttpRequest.upload.onerror = function (e) {
+ uploadingFileModel.setError();
+ };
+ xmlHttpRequest.onreadystatechange = function () {
+ if (xmlHttpRequest.readyState === XMLHttpRequest.DONE) {
+ uploadingFileModel.onFinished(xmlHttpRequest.status, xmlHttpRequest.statusText, xmlHttpRequest.response);
+ }
+ };
+ xmlHttpRequest.open(this._method, this._url, true);
+ xmlHttpRequest.withCredentials = this._withCredentials;
+ if (this._authToken) {
+ xmlHttpRequest.setRequestHeader('Authorization', this._authTokenPrefix + " " + this._authToken);
+ }
+ xmlHttpRequest.send(form);
+ };
+ UploadService.prototype.getQueue = function () {
+ return this._queue;
+ };
+ UploadService.prototype._isFile = function (file) {
+ return file !== null && (file instanceof Blob || (file.name && file.size));
+ };
+ return UploadService;
+ }());
+ exports_1("UploadService", UploadService);
+ }
+ }
+});
+//# sourceMappingURL=upload.service.js.map
\ No newline at end of file
diff --git a/ng2-components/ng2-alfresco-upload/src/services/upload.service.js.map b/ng2-components/ng2-alfresco-upload/src/services/upload.service.js.map
new file mode 100644
index 0000000000..f9cf69d39e
--- /dev/null
+++ b/ng2-components/ng2-alfresco-upload/src/services/upload.service.js.map
@@ -0,0 +1 @@
+{"version":3,"file":"upload.service.js","sourceRoot":"","sources":["upload.service.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/ng2-components/ng2-alfresco-upload/src/services/upload.service.ts b/ng2-components/ng2-alfresco-upload/src/services/upload.service.ts
new file mode 100644
index 0000000000..d3bb4d7472
--- /dev/null
+++ b/ng2-components/ng2-alfresco-upload/src/services/upload.service.ts
@@ -0,0 +1,124 @@
+/**
+ * @license
+ * Copyright 2016 Alfresco Software, Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+
+import {FileModel} from '../models/file.model';
+
+export class UploadService {
+ private _url:string;
+ private _method:string = 'POST';
+ private _authTokenPrefix:string = 'Basic';
+ private _authToken:string = undefined;
+ private _fieldName:string = 'file';
+ private _formFields:Object = {};
+ private _withCredentials:boolean;
+
+ _queue:FileModel[] = [];
+
+ constructor(options:any) {
+ console.log('UploadService constructor');
+
+ this._withCredentials = options.withCredentials != null ? options.withCredentials : this._withCredentials;
+ this._url = options.url != null ? options.url : this._url;
+ this._authTokenPrefix = options.authTokenPrefix != null ? options.authTokenPrefix : this._authTokenPrefix;
+ this._authToken = options.authToken != null ? options.authToken : this._authToken;
+ this._fieldName = options.fieldName != null ? options.fieldName : this._fieldName;
+ this._formFields = options.formFields != null ? options.formFields : this._formFields;
+ }
+
+ addToQueue(files:any[]):FileModel[] {
+ let latestFilesAdded:FileModel[] = [];
+
+ for (let file of files) {
+ if (this._isFile(file)) {
+ let uploadingFileModel = new FileModel(file)
+ latestFilesAdded.push(uploadingFileModel)
+ this._queue.push(uploadingFileModel);
+ }
+ }
+ this._uploadFilesInTheQueue();
+
+ return latestFilesAdded;
+ }
+
+ private _uploadFilesInTheQueue():void {
+ let filesToUpload = this._queue.filter((uploadingFileModel) => {
+ return !uploadingFileModel.uploading && !uploadingFileModel.done && !uploadingFileModel.abort && !uploadingFileModel.error;
+ });
+ filesToUpload.forEach((uploadingFileModel) => {
+ uploadingFileModel.setUploading();
+ this.uploadFile(uploadingFileModel);
+ });
+ };
+
+ uploadFile(uploadingFileModel:any):void {
+ let form = new FormData();
+ form.append(this._fieldName, uploadingFileModel.file, uploadingFileModel.name);
+ Object.keys(this._formFields).forEach((key) => {
+ form.append(key, this._formFields[key]);
+ });
+
+ let xmlHttpRequest = new XMLHttpRequest();
+ uploadingFileModel.setXMLHttpRequest(xmlHttpRequest);
+
+ xmlHttpRequest.upload.onprogress = (e) => {
+ if (e.lengthComputable) {
+ let percent = Math.round(e.loaded / e.total * 100);
+ uploadingFileModel.setProgres({
+ total: e.total,
+ loaded: e.loaded,
+ percent: percent
+ });
+ }
+ };
+
+ xmlHttpRequest.upload.onabort = (e) => {
+ uploadingFileModel.setAbort();
+ };
+
+ xmlHttpRequest.upload.onerror = (e) => {
+ uploadingFileModel.setError();
+ };
+
+ xmlHttpRequest.onreadystatechange = () => {
+ if (xmlHttpRequest.readyState === XMLHttpRequest.DONE) {
+ uploadingFileModel.onFinished(
+ xmlHttpRequest.status,
+ xmlHttpRequest.statusText,
+ xmlHttpRequest.response
+ );
+ }
+ };
+
+ xmlHttpRequest.open(this._method, this._url, true);
+ xmlHttpRequest.withCredentials = this._withCredentials;
+
+ if (this._authToken) {
+ xmlHttpRequest.setRequestHeader('Authorization', `${this._authTokenPrefix} ${this._authToken}`);
+ }
+
+ xmlHttpRequest.send(form);
+ }
+
+ getQueue():FileModel[] {
+ return this._queue;
+ }
+
+ private _isFile(file:any):boolean {
+ return file !== null && (file instanceof Blob || (file.name && file.size));
+ }
+}
diff --git a/ng2-components/ng2-alfresco-upload/tests-runner.html b/ng2-components/ng2-alfresco-upload/tests-runner.html
new file mode 100644
index 0000000000..849371cb70
--- /dev/null
+++ b/ng2-components/ng2-alfresco-upload/tests-runner.html
@@ -0,0 +1,53 @@
+
+
+
+
+ Alfresco Login component Tests
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/ng2-components/ng2-alfresco-upload/tsconfig.json b/ng2-components/ng2-alfresco-upload/tsconfig.json
new file mode 100644
index 0000000000..10ac8b1494
--- /dev/null
+++ b/ng2-components/ng2-alfresco-upload/tsconfig.json
@@ -0,0 +1,18 @@
+{
+ "compilerOptions": {
+ "target": "es5",
+ "module": "system",
+ "moduleResolution": "node",
+ "sourceMap": true,
+ "emitDecoratorMetadata": true,
+ "experimentalDecorators": true,
+ "removeComments": false,
+ "noImplicitAny": false,
+ "declaration": true
+ },
+ "exclude": [
+ "node_modules",
+ "typings/main",
+ "typings/main.d.ts"
+ ]
+}
diff --git a/ng2-components/ng2-alfresco-upload/tslint.json b/ng2-components/ng2-alfresco-upload/tslint.json
new file mode 100644
index 0000000000..ce80085e69
--- /dev/null
+++ b/ng2-components/ng2-alfresco-upload/tslint.json
@@ -0,0 +1,122 @@
+{
+ "rules": {
+ "align": [
+ true,
+ "parameters",
+ "arguments",
+ "statements"
+ ],
+ "ban": false,
+ "class-name": true,
+ "comment-format": [
+ true,
+ "check-space",
+ "check-lowercase"
+ ],
+ "curly": true,
+ "eofline": true,
+ "forin": true,
+ "indent": [
+ true,
+ "spaces"
+ ],
+ "interface-name": false,
+ "jsdoc-format": true,
+ "label-position": true,
+ "label-undefined": true,
+ "max-line-length": [
+ true,
+ 140
+ ],
+ "member-ordering": [
+ true,
+ "public-before-private",
+ "static-before-instance",
+ "variables-before-functions"
+ ],
+ "no-any": false,
+ "no-arg": true,
+ "no-bitwise": true,
+ "no-conditional-assignment": true,
+ "no-consecutive-blank-lines": false,
+ "no-console": [
+ true,
+ "debug",
+ "info",
+ "time",
+ "timeEnd",
+ "trace"
+ ],
+ "no-construct": true,
+ "no-constructor-vars": false,
+ "no-debugger": true,
+ "no-duplicate-key": true,
+ "no-duplicate-variable": true,
+ "no-empty": true,
+ "no-eval": true,
+ "no-inferrable-types": false,
+ "no-internal-module": true,
+ "no-require-imports": true,
+ "no-shadowed-variable": true,
+ "no-switch-case-fall-through": true,
+ "no-trailing-whitespace": true,
+ "no-unreachable": true,
+ "no-unused-expression": true,
+ "no-unused-variable": true,
+ "no-use-before-declare": true,
+ "no-var-keyword": true,
+ "no-var-requires": true,
+ "object-literal-sort-keys": false,
+ "one-line": [
+ true,
+ "check-open-brace",
+ "check-catch",
+ "check-else",
+ "check-whitespace"
+ ],
+ "quotemark": [
+ true,
+ "single",
+ "avoid-escape"
+ ],
+ "radix": true,
+ "semicolon": true,
+ "switch-default": true,
+ "trailing-comma": [
+ true,
+ {
+ "multiline": "never",
+ "singleline": "never"
+ }
+ ],
+ "triple-equals": [
+ true,
+ "allow-null-check"
+ ],
+ "typedef": false,
+ "typedef-whitespace": [
+ true,
+ {
+ "call-signature": "nospace",
+ "index-signature": "nospace",
+ "parameter": "nospace",
+ "property-declaration": "nospace",
+ "variable-declaration": "nospace"
+ }
+ ],
+ "use-strict": false,
+ "variable-name": [
+ true,
+ "check-format",
+ "allow-leading-underscore",
+ "ban-keywords"
+ ],
+ "whitespace": [
+ true,
+ "check-branch",
+ "check-decl",
+ "check-operator",
+ "check-separator"
+ ]
+ }
+}
diff --git a/ng2-components/ng2-alfresco-upload/typings.json b/ng2-components/ng2-alfresco-upload/typings.json
new file mode 100644
index 0000000000..d6a258cfb6
--- /dev/null
+++ b/ng2-components/ng2-alfresco-upload/typings.json
@@ -0,0 +1,6 @@
+{
+ "ambientDependencies": {
+ "es6-shim": "github:DefinitelyTyped/DefinitelyTyped/es6-shim/es6-shim.d.ts#7de6c3dd94feaeb21f20054b9f30d5dabc5efabd",
+ "jasmine": "github:DefinitelyTyped/DefinitelyTyped/jasmine/jasmine.d.ts#5c182b9af717f73146399c2485f70f1e2ac0ff2b"
+ }
+}