#46 Removed .js .map files

This commit is contained in:
mauriziovitale84
2016-05-13 10:02:35 +01:00
parent f97d31f530
commit ed7cf30de6
4 changed files with 0 additions and 370 deletions

View File

@@ -1,199 +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.
*/
System.register(['angular2/core', '../services/upload.service', './file-uploading-dialog.component', 'ng2-translate/ng2-translate'], 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, ng2_translate_1;
var UploadButtonComponent;
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 (ng2_translate_1_1) {
ng2_translate_1 = ng2_translate_1_1;
}],
execute: function() {
/**
* <alfresco-upload-button [showDialogUpload]="boolean"
* [showUdoNotificationBar]="boolean"
* [uploadFolders]="boolean"
* [multipleFiles]="boolean"
* [acceptedFilesType]="string">
* </alfresco-upload-button>
*
* This component, provide a set of buttons to upload files to alfresco.
*
* @InputParam {boolean} [true] showDialogUpload - hide/show upload dialog.
* @InputParam {boolean} [true] showUdoNotificationBar - hide/show notification bar.
* @InputParam {boolean} [false] uploadFolders - allow/disallow upload folders (only for chrome).
* @InputParam {boolean} [false] multipleFiles - allow/disallow multiple files.
* @InputParam {string} [*] acceptedFilesType - array of allowed file extensions.
*
*
* @returns {UploadDragAreaComponent} .
*/
UploadButtonComponent = (function () {
function UploadButtonComponent(el, translate) {
this.el = el;
this.showUploadDialog = true;
this.showUdoNotificationBar = true;
this.uploadFolders = false;
this.multipleFiles = false;
this.acceptedFilesType = '*';
this.uploaddirectory = '';
this.onSuccess = new core_1.EventEmitter();
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'
}
});
this.translationInit(translate);
}
/**
* Method called when files are dropped in the drag area.
*
* @param {File[]} files - files dropped in the drag area.
*/
UploadButtonComponent.prototype.onFilesAdded = function ($event) {
var files = $event.currentTarget.files;
if (files.length) {
var latestFilesAdded = this._uploaderService.addToQueue(files);
this._uploaderService.uploadFilesInTheQueue(this.uploaddirectory, this.onSuccess);
this.filesUploadingList = this._uploaderService.getQueue();
if (this.showUploadDialog) {
this._showDialog();
}
if (this.showUdoNotificationBar) {
this._showUndoNotificationBar(latestFilesAdded);
}
}
};
/**
* Show undo notification bar.
*
* @param {FileModel[]} latestFilesAdded - files in the upload queue enriched with status flag and xhr object.
*/
UploadButtonComponent.prototype._showUndoNotificationBar = function (latestFilesAdded) {
if (componentHandler) {
componentHandler.upgradeAllRegistered();
}
this.undoNotificationBar.nativeElement.MaterialSnackbar.showSnackbar({
message: this.translate.get('FILE_UPLOAD.MESSAGES.PROGRESS').value,
timeout: 5000,
actionHandler: function () {
latestFilesAdded.forEach(function (uploadingFileModel) {
uploadingFileModel.setAbort();
});
},
actionText: this.translate.get('FILE_UPLOAD.ACTION.UNDO').value
});
};
/**
* Show the upload dialog.
*/
UploadButtonComponent.prototype._showDialog = function () {
this.fileUploadingDialogComponent.showDialog();
};
/**
* Initial configuration for Multi language
* @param translate
*/
UploadButtonComponent.prototype.translationInit = function (translate) {
this.translate = translate;
var userLang = navigator.language.split('-')[0]; // use navigator lang if available
userLang = /(fr|en)/gi.test(userLang) ? userLang : 'en';
this.translate.setDefaultLang(userLang);
this.translate.use(userLang);
};
__decorate([
core_1.ViewChild('undoNotificationBar'),
__metadata('design:type', Object)
], UploadButtonComponent.prototype, "undoNotificationBar", void 0);
__decorate([
core_1.ViewChild('fileUploadingDialog'),
__metadata('design:type', file_uploading_dialog_component_1.FileUploadingDialogComponent)
], UploadButtonComponent.prototype, "fileUploadingDialogComponent", void 0);
__decorate([
core_1.Input(),
__metadata('design:type', Boolean)
], UploadButtonComponent.prototype, "showUploadDialog", void 0);
__decorate([
core_1.Input(),
__metadata('design:type', Boolean)
], UploadButtonComponent.prototype, "showUdoNotificationBar", void 0);
__decorate([
core_1.Input(),
__metadata('design:type', Boolean)
], UploadButtonComponent.prototype, "uploadFolders", void 0);
__decorate([
core_1.Input(),
__metadata('design:type', Boolean)
], UploadButtonComponent.prototype, "multipleFiles", void 0);
__decorate([
core_1.Input(),
__metadata('design:type', String)
], UploadButtonComponent.prototype, "acceptedFilesType", void 0);
__decorate([
core_1.Input(),
__metadata('design:type', String)
], UploadButtonComponent.prototype, "uploaddirectory", void 0);
__decorate([
core_1.Output(),
__metadata('design:type', Object)
], UploadButtonComponent.prototype, "onSuccess", void 0);
UploadButtonComponent = __decorate([
core_1.Component({
selector: 'alfresco-upload-button',
moduleId: __moduleName,
directives: [file_uploading_dialog_component_1.FileUploadingDialogComponent],
templateUrl: './upload-button.component.html',
styleUrls: ['./upload-button.component.css'],
pipes: [ng2_translate_1.TranslatePipe]
}),
__metadata('design:paramtypes', [core_1.ElementRef, ng2_translate_1.TranslateService])
], UploadButtonComponent);
return UploadButtonComponent;
}());
exports_1("UploadButtonComponent", UploadButtonComponent);
}
}
});
//# sourceMappingURL=upload-button.component.js.map

View File

@@ -1 +0,0 @@
{"version":3,"file":"upload-button.component.js","sourceRoot":"","sources":["upload-button.component.ts"],"names":[],"mappings":"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"}

View File

@@ -1,169 +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.
*/
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 keep the queue of the file to upload and uploads them.
*
* @returns {UploadService} .
*/
UploadService = (function () {
function UploadService(options) {
this.options = 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;
}
/**
* Add files to the uploading queue to be uploaded.
*
* @param {File[]} - files to add to the upload queue.
*
* return {FileModel[]} - return the file added to the queue in this call.
*/
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);
}
}
return latestFilesAdded;
};
/**
* Pick all the files in the queue that are not been uploaded yet and upload it into the directory folder.
*/
UploadService.prototype.uploadFilesInTheQueue = function (directory, elementEmit) {
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, directory, elementEmit);
});
};
;
/**
* The method create a new XMLHttpRequest instance if doesn't exist
*/
UploadService.prototype._configureXMLHttpRequest = function (uploadingFileModel, elementEmit) {
var _this = this;
if (this._xmlHttpRequest == undefined) {
this._xmlHttpRequest = new XMLHttpRequest();
this._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
});
}
};
this._xmlHttpRequest.upload.onabort = function (e) {
uploadingFileModel.setAbort();
};
this._xmlHttpRequest.upload.onerror = function (e) {
uploadingFileModel.setError();
};
this._xmlHttpRequest.onreadystatechange = function () {
if (_this._xmlHttpRequest.readyState === XMLHttpRequest.DONE) {
elementEmit.emit({
value: 'File uploaded'
});
uploadingFileModel.onFinished(_this._xmlHttpRequest.status, _this._xmlHttpRequest.statusText, _this._xmlHttpRequest.response);
}
};
}
};
/**
* Upload a file into the directory folder, and enrich it with the xhr.
*
* @param {FileModel} - files to be uploaded.
*
*/
UploadService.prototype.uploadFile = function (uploadingFileModel, directory, elementEmit) {
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]);
});
form.append('uploaddirectory', directory);
this._configureXMLHttpRequest(uploadingFileModel, elementEmit);
uploadingFileModel.setXMLHttpRequest(this._xmlHttpRequest);
this._xmlHttpRequest.open(this._method, this._url, true);
this._xmlHttpRequest.withCredentials = this._withCredentials;
if (this._authToken) {
this._xmlHttpRequest.setRequestHeader('Authorization', this._authTokenPrefix + " " + this._authToken);
}
this._xmlHttpRequest.send(form);
};
/**
* Return all the files in the uploading queue.
*
* @return {FileModel[]} - files in the upload queue.
*/
UploadService.prototype.getQueue = function () {
return this._queue;
};
/**
* Check if an item is a file.
*
* @return {boolean}
*/
UploadService.prototype._isFile = function (file) {
return file !== null && (file instanceof Blob || (file.name && file.size));
};
/**
* Set XMLHttpRequest method
* @param xhr
*/
UploadService.prototype.setXMLHttpRequest = function (xhr) {
this._xmlHttpRequest = xhr;
};
return UploadService;
}());
exports_1("UploadService", UploadService);
}
}
});
//# sourceMappingURL=upload.service.js.map

View File

@@ -1 +0,0 @@
{"version":3,"file":"upload.service.js","sourceRoot":"","sources":["upload.service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;;;;;;;;;;;;YAOH;;;;;eAKG;YACH;gBAYI,uBAAoB,OAAY;oBAAZ,YAAO,GAAP,OAAO,CAAK;oBAVxB,YAAO,GAAW,MAAM,CAAC;oBACzB,qBAAgB,GAAW,OAAO,CAAC;oBACnC,eAAU,GAAW,SAAS,CAAC;oBAC/B,eAAU,GAAW,MAAM,CAAC;oBAC5B,gBAAW,GAAW,EAAE,CAAC;oBAIzB,WAAM,GAAgB,EAAE,CAAC;oBAG7B,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC;oBAEzC,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC,eAAe,IAAI,IAAI,GAAG,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC,gBAAgB,CAAC;oBAC1G,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,GAAG,IAAI,IAAI,GAAG,OAAO,CAAC,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC;oBAC1D,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC,eAAe,IAAI,IAAI,GAAG,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC,gBAAgB,CAAC;oBAC1G,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,SAAS,IAAI,IAAI,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC;oBAClF,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,SAAS,IAAI,IAAI,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC;oBAClF,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,UAAU,IAAI,IAAI,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC;gBAC1F,CAAC;gBAED;;;;;;mBAMG;gBACH,kCAAU,GAAV,UAAW,KAAY;oBACnB,IAAI,gBAAgB,GAAgB,EAAE,CAAC;oBAEvC,GAAG,CAAC,CAAa,UAAK,EAAL,eAAK,EAAL,mBAAK,EAAL,IAAK,CAAC;wBAAlB,IAAI,IAAI,cAAA;wBACT,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;4BACrB,IAAI,kBAAkB,GAAG,IAAI,sBAAS,CAAC,IAAI,CAAC,CAAA;4BAC5C,gBAAgB,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAA;4BACzC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;wBACzC,CAAC;qBACJ;oBACD,MAAM,CAAC,gBAAgB,CAAC;gBAC5B,CAAC;gBAED;;mBAEG;gBACI,6CAAqB,GAA5B,UAA6B,SAAiB,EAAE,WAAyB;oBAAzE,iBAQC;oBAPG,IAAI,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,UAAC,kBAAkB;wBACtD,MAAM,CAAC,CAAC,kBAAkB,CAAC,SAAS,IAAI,CAAC,kBAAkB,CAAC,IAAI,IAAI,CAAC,kBAAkB,CAAC,KAAK,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC;oBAC/H,CAAC,CAAC,CAAC;oBACH,aAAa,CAAC,OAAO,CAAC,UAAC,kBAAkB;wBACrC,kBAAkB,CAAC,YAAY,EAAE,CAAC;wBAClC,KAAI,CAAC,UAAU,CAAC,kBAAkB,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;oBAChE,CAAC,CAAC,CAAC;gBACP,CAAC;;gBAED;;mBAEG;gBACK,gDAAwB,GAAhC,UAAiC,kBAAuB,EAAE,WAAyB;oBAAnF,iBAmCC;oBAlCG,EAAE,CAAC,CAAC,IAAI,CAAC,eAAe,IAAI,SAAS,CAAC,CAAC,CAAC;wBACpC,IAAI,CAAC,eAAe,GAAG,IAAI,cAAc,EAAE,CAAC;wBAC5C,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,UAAU,GAAG,UAAC,CAAC;4BACvC,EAAE,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC;gCACrB,IAAI,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC;gCACnD,kBAAkB,CAAC,UAAU,CAAC;oCAC1B,KAAK,EAAE,CAAC,CAAC,KAAK;oCACd,MAAM,EAAE,CAAC,CAAC,MAAM;oCAChB,OAAO,EAAE,OAAO;iCACnB,CAAC,CAAC;4BACP,CAAC;wBACL,CAAC,CAAC;wBAEF,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,OAAO,GAAG,UAAC,CAAC;4BACpC,kBAAkB,CAAC,QAAQ,EAAE,CAAC;wBAClC,CAAC,CAAC;wBAEF,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,OAAO,GAAG,UAAC,CAAC;4BACpC,kBAAkB,CAAC,QAAQ,EAAE,CAAC;wBAClC,CAAC,CAAC;wBAEF,IAAI,CAAC,eAAe,CAAC,kBAAkB,GAAG;4BACtC,EAAE,CAAC,CAAC,KAAI,CAAC,eAAe,CAAC,UAAU,KAAK,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC;gCAC1D,WAAW,CAAC,IAAI,CAAC;oCACb,KAAK,EAAE,eAAe;iCACzB,CAAC,CAAC;gCACH,kBAAkB,CAAC,UAAU,CACzB,KAAI,CAAC,eAAe,CAAC,MAAM,EAC3B,KAAI,CAAC,eAAe,CAAC,UAAU,EAC/B,KAAI,CAAC,eAAe,CAAC,QAAQ,CAChC,CAAC;4BACN,CAAC;wBACL,CAAC,CAAC;oBACN,CAAC;gBACL,CAAC;gBAED;;;;;mBAKG;gBACH,kCAAU,GAAV,UAAW,kBAAuB,EAAE,SAAiB,EAAE,WAAyB;oBAAhF,iBAoBC;oBAnBG,IAAI,IAAI,GAAG,IAAI,QAAQ,EAAE,CAAC;oBAC1B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,kBAAkB,CAAC,IAAI,EAAE,kBAAkB,CAAC,IAAI,CAAC,CAAC;oBAC/E,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,UAAC,GAAG;wBACtC,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,KAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;oBAC5C,CAAC,CAAC,CAAC;oBAEH,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,SAAS,CAAC,CAAC;oBAE1C,IAAI,CAAC,wBAAwB,CAAC,kBAAkB,EAAE,WAAW,CAAC,CAAC;oBAC/D,kBAAkB,CAAC,iBAAiB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;oBAE3D,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;oBACzD,IAAI,CAAC,eAAe,CAAC,eAAe,GAAG,IAAI,CAAC,gBAAgB,CAAC;oBAE7D,EAAE,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;wBAClB,IAAI,CAAC,eAAe,CAAC,gBAAgB,CAAC,eAAe,EAAK,IAAI,CAAC,gBAAgB,SAAI,IAAI,CAAC,UAAY,CAAC,CAAC;oBAC1G,CAAC;oBAED,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACpC,CAAC;gBAED;;;;mBAIG;gBACH,gCAAQ,GAAR;oBACI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC;gBACvB,CAAC;gBAED;;;;mBAIG;gBACK,+BAAO,GAAf,UAAgB,IAAS;oBACrB,MAAM,CAAC,IAAI,KAAK,IAAI,IAAI,CAAC,IAAI,YAAY,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;gBAC/E,CAAC;gBAED;;;mBAGG;gBACI,yCAAiB,GAAxB,UAAyB,GAAmB;oBACxC,IAAI,CAAC,eAAe,GAAG,GAAG,CAAC;gBAC/B,CAAC;gBACL,oBAAC;YAAD,CAAC,AArJD,IAqJC;YArJD,yCAqJC,CAAA"}