angular-material-datatransfer-lib
Version:
A HTML5 datatransfer UI for handling upload and download of multiple simultaneous files.
132 lines • 15.6 kB
JavaScript
/**
* @fileoverview added by tsickle
* Generated from: lib/enums/custom-event-type.enum.ts
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
/** @enum {number} */
var CustomEventType = {
UNKNOWN: 0,
// This event can be used to bootstrap the app module. An IAppConfig can be passed as detail payload.
CREATE: 1,
// This event can be used to trigger an item download. The filename, url and size can be passed as detail payload.
DOWNLOAD_ITEM: 2,
// This event can be used to update the app configuration. An IAppConfig can be passed as detail payload.
UPDATE_CONFIG: 3,
// Indicates that the app has been initialized.
INIT: 4,
// Indicates that the overall upload has been completed.
UPLOAD_COMPLETED: 5,
// Indicates that the overall download has been completed.
DOWNLOAD_COMPLETED: 6,
// Indicates that an item has been added. It will be passed a IDatatransferItem as detail payload.
ITEM_ADDED: 7,
// Indicates that an item has been removed. It will be passed a IDatatransferItem as detail payload.
ITEM_REMOVED: 8,
// Indicates that an item has been completed.
ITEM_COMPLETED: 9,
// Indicates that all items have been cleared.
ITEMS_CLEARED: 10,
};
export { CustomEventType };
CustomEventType[CustomEventType.UNKNOWN] = 'UNKNOWN';
CustomEventType[CustomEventType.CREATE] = 'CREATE';
CustomEventType[CustomEventType.DOWNLOAD_ITEM] = 'DOWNLOAD_ITEM';
CustomEventType[CustomEventType.UPDATE_CONFIG] = 'UPDATE_CONFIG';
CustomEventType[CustomEventType.INIT] = 'INIT';
CustomEventType[CustomEventType.UPLOAD_COMPLETED] = 'UPLOAD_COMPLETED';
CustomEventType[CustomEventType.DOWNLOAD_COMPLETED] = 'DOWNLOAD_COMPLETED';
CustomEventType[CustomEventType.ITEM_ADDED] = 'ITEM_ADDED';
CustomEventType[CustomEventType.ITEM_REMOVED] = 'ITEM_REMOVED';
CustomEventType[CustomEventType.ITEM_COMPLETED] = 'ITEM_COMPLETED';
CustomEventType[CustomEventType.ITEMS_CLEARED] = 'ITEMS_CLEARED';
// tslint:disable-next-line: no-namespace
export var CustomEventTypeExtensions;
(function (CustomEventTypeExtensions) {
/** @type {?} */
var CUSTOM_EVENT_TYPE_NS = 'github:niklr/angular-material-datatransfer.';
/** @type {?} */
var CUSTOM_EVENT_TYPE_UNKNOWN = CUSTOM_EVENT_TYPE_NS + 'unknown';
/** @type {?} */
var CUSTOM_EVENT_TYPE_CREATE = CUSTOM_EVENT_TYPE_NS + 'create';
/** @type {?} */
var CUSTOM_EVENT_TYPE_DOWNLOAD_ITEM = CUSTOM_EVENT_TYPE_NS + 'download-item';
/** @type {?} */
var CUSTOM_EVENT_TYPE_UPDATE_CONFIG = CUSTOM_EVENT_TYPE_NS + 'update-config';
/** @type {?} */
var CUSTOM_EVENT_TYPE_INIT = CUSTOM_EVENT_TYPE_NS + 'init';
/** @type {?} */
var CUSTOM_EVENT_TYPE_UPLOAD_COMPLETED = CUSTOM_EVENT_TYPE_NS + 'upload-completed';
/** @type {?} */
var CUSTOM_EVENT_TYPE_DOWNLOAD_COMPLETED = CUSTOM_EVENT_TYPE_NS + 'download-completed';
/** @type {?} */
var CUSTOM_EVENT_TYPE_ITEM_ADDED = CUSTOM_EVENT_TYPE_NS + 'item-added';
/** @type {?} */
var CUSTOM_EVENT_TYPE_ITEM_REMOVED = CUSTOM_EVENT_TYPE_NS + 'item-removed';
/** @type {?} */
var CUSTOM_EVENT_TYPE_ITEM_COMPLETED = CUSTOM_EVENT_TYPE_NS + 'item-completed';
/** @type {?} */
var CUSTOM_EVENT_TYPE_ITEMS_CLEARED = CUSTOM_EVENT_TYPE_NS + 'items-cleared';
/**
* @param {?} type
* @return {?}
*/
function toString(type) {
switch (type) {
case CustomEventType.CREATE:
return CUSTOM_EVENT_TYPE_CREATE;
case CustomEventType.DOWNLOAD_ITEM:
return CUSTOM_EVENT_TYPE_DOWNLOAD_ITEM;
case CustomEventType.UPDATE_CONFIG:
return CUSTOM_EVENT_TYPE_UPDATE_CONFIG;
case CustomEventType.INIT:
return CUSTOM_EVENT_TYPE_INIT;
case CustomEventType.UPLOAD_COMPLETED:
return CUSTOM_EVENT_TYPE_UPLOAD_COMPLETED;
case CustomEventType.DOWNLOAD_COMPLETED:
return CUSTOM_EVENT_TYPE_DOWNLOAD_COMPLETED;
case CustomEventType.ITEM_ADDED:
return CUSTOM_EVENT_TYPE_ITEM_ADDED;
case CustomEventType.ITEM_REMOVED:
return CUSTOM_EVENT_TYPE_ITEM_REMOVED;
case CustomEventType.ITEM_COMPLETED:
return CUSTOM_EVENT_TYPE_ITEM_COMPLETED;
case CustomEventType.ITEMS_CLEARED:
return CUSTOM_EVENT_TYPE_ITEMS_CLEARED;
default:
return CUSTOM_EVENT_TYPE_UNKNOWN;
}
}
CustomEventTypeExtensions.toString = toString;
/**
* @param {?} type
* @return {?}
*/
function toEnum(type) {
switch (type) {
case CUSTOM_EVENT_TYPE_CREATE:
return CustomEventType.CREATE;
case CUSTOM_EVENT_TYPE_DOWNLOAD_ITEM:
return CustomEventType.DOWNLOAD_ITEM;
case CUSTOM_EVENT_TYPE_UPDATE_CONFIG:
return CustomEventType.UPDATE_CONFIG;
case CUSTOM_EVENT_TYPE_INIT:
return CustomEventType.INIT;
case CUSTOM_EVENT_TYPE_UPLOAD_COMPLETED:
return CustomEventType.UPLOAD_COMPLETED;
case CUSTOM_EVENT_TYPE_DOWNLOAD_COMPLETED:
return CustomEventType.DOWNLOAD_COMPLETED;
case CUSTOM_EVENT_TYPE_ITEM_ADDED:
return CustomEventType.ITEM_ADDED;
case CUSTOM_EVENT_TYPE_ITEM_REMOVED:
return CustomEventType.ITEM_REMOVED;
case CUSTOM_EVENT_TYPE_ITEM_COMPLETED:
return CustomEventType.ITEM_COMPLETED;
case CUSTOM_EVENT_TYPE_ITEMS_CLEARED:
return CustomEventType.ITEMS_CLEARED;
default:
return CustomEventType.UNKNOWN;
}
}
CustomEventTypeExtensions.toEnum = toEnum;
})(CustomEventTypeExtensions || (CustomEventTypeExtensions = {}));
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tLWV2ZW50LXR5cGUuZW51bS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2FuZ3VsYXItbWF0ZXJpYWwtZGF0YXRyYW5zZmVyLWxpYi8iLCJzb3VyY2VzIjpbImxpYi9lbnVtcy9jdXN0b20tZXZlbnQtdHlwZS5lbnVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLElBQVksZUFBZTtJQUN2QixPQUFPLEdBQUE7SUFDUCxxR0FBcUc7SUFDckcsTUFBTSxHQUFBO0lBQ04sa0hBQWtIO0lBQ2xILGFBQWEsR0FBQTtJQUNiLHlHQUF5RztJQUN6RyxhQUFhLEdBQUE7SUFDYiwrQ0FBK0M7SUFDL0MsSUFBSSxHQUFBO0lBQ0osd0RBQXdEO0lBQ3hELGdCQUFnQixHQUFBO0lBQ2hCLDBEQUEwRDtJQUMxRCxrQkFBa0IsR0FBQTtJQUNsQixrR0FBa0c7SUFDbEcsVUFBVSxHQUFBO0lBQ1Ysb0dBQW9HO0lBQ3BHLFlBQVksR0FBQTtJQUNaLDZDQUE2QztJQUM3QyxjQUFjLEdBQUE7SUFDZCw4Q0FBOEM7SUFDOUMsYUFBYSxJQUFBO0VBQ2hCOzs7Ozs7Ozs7Ozs7OztBQUdELE1BQU0sS0FBVyx5QkFBeUIsQ0FpRXpDO0FBakVELFdBQWlCLHlCQUF5Qjs7UUFDaEMsb0JBQW9CLEdBQUcsNkNBQTZDOztRQUNwRSx5QkFBeUIsR0FBRyxvQkFBb0IsR0FBRyxTQUFTOztRQUM1RCx3QkFBd0IsR0FBRyxvQkFBb0IsR0FBRyxRQUFROztRQUMxRCwrQkFBK0IsR0FBRyxvQkFBb0IsR0FBRyxlQUFlOztRQUN4RSwrQkFBK0IsR0FBRyxvQkFBb0IsR0FBRyxlQUFlOztRQUN4RSxzQkFBc0IsR0FBRyxvQkFBb0IsR0FBRyxNQUFNOztRQUN0RCxrQ0FBa0MsR0FBRyxvQkFBb0IsR0FBRyxrQkFBa0I7O1FBQzlFLG9DQUFvQyxHQUFHLG9CQUFvQixHQUFHLG9CQUFvQjs7UUFDbEYsNEJBQTRCLEdBQUcsb0JBQW9CLEdBQUcsWUFBWTs7UUFDbEUsOEJBQThCLEdBQUcsb0JBQW9CLEdBQUcsY0FBYzs7UUFDdEUsZ0NBQWdDLEdBQUcsb0JBQW9CLEdBQUcsZ0JBQWdCOztRQUMxRSwrQkFBK0IsR0FBRyxvQkFBb0IsR0FBRyxlQUFlOzs7OztJQUM5RSxTQUFnQixRQUFRLENBQUMsSUFBcUI7UUFDMUMsUUFBUSxJQUFJLEVBQUU7WUFDVixLQUFLLGVBQWUsQ0FBQyxNQUFNO2dCQUN2QixPQUFPLHdCQUF3QixDQUFDO1lBQ3BDLEtBQUssZUFBZSxDQUFDLGFBQWE7Z0JBQzlCLE9BQU8sK0JBQStCLENBQUM7WUFDM0MsS0FBSyxlQUFlLENBQUMsYUFBYTtnQkFDOUIsT0FBTywrQkFBK0IsQ0FBQztZQUMzQyxLQUFLLGVBQWUsQ0FBQyxJQUFJO2dCQUNyQixPQUFPLHNCQUFzQixDQUFDO1lBQ2xDLEtBQUssZUFBZSxDQUFDLGdCQUFnQjtnQkFDakMsT0FBTyxrQ0FBa0MsQ0FBQztZQUM5QyxLQUFLLGVBQWUsQ0FBQyxrQkFBa0I7Z0JBQ25DLE9BQU8sb0NBQW9DLENBQUM7WUFDaEQsS0FBSyxlQUFlLENBQUMsVUFBVTtnQkFDM0IsT0FBTyw0QkFBNEIsQ0FBQztZQUN4QyxLQUFLLGVBQWUsQ0FBQyxZQUFZO2dCQUM3QixPQUFPLDhCQUE4QixDQUFDO1lBQzFDLEtBQUssZUFBZSxDQUFDLGNBQWM7Z0JBQy9CLE9BQU8sZ0NBQWdDLENBQUM7WUFDNUMsS0FBSyxlQUFlLENBQUMsYUFBYTtnQkFDOUIsT0FBTywrQkFBK0IsQ0FBQztZQUMzQztnQkFDSSxPQUFPLHlCQUF5QixDQUFDO1NBQ3hDO0lBQ0wsQ0FBQztJQXpCZSxrQ0FBUSxXQXlCdkIsQ0FBQTs7Ozs7SUFDRCxTQUFnQixNQUFNLENBQUMsSUFBWTtRQUMvQixRQUFRLElBQUksRUFBRTtZQUNWLEtBQUssd0JBQXdCO2dCQUN6QixPQUFPLGVBQWUsQ0FBQyxNQUFNLENBQUM7WUFDbEMsS0FBSywrQkFBK0I7Z0JBQ2hDLE9BQU8sZUFBZSxDQUFDLGFBQWEsQ0FBQztZQUN6QyxLQUFLLCtCQUErQjtnQkFDaEMsT0FBTyxlQUFlLENBQUMsYUFBYSxDQUFDO1lBQ3pDLEtBQUssc0JBQXNCO2dCQUN2QixPQUFPLGVBQWUsQ0FBQyxJQUFJLENBQUM7WUFDaEMsS0FBSyxrQ0FBa0M7Z0JBQ25DLE9BQU8sZUFBZSxDQUFDLGdCQUFnQixDQUFDO1lBQzVDLEtBQUssb0NBQW9DO2dCQUNyQyxPQUFPLGVBQWUsQ0FBQyxrQkFBa0IsQ0FBQztZQUM5QyxLQUFLLDRCQUE0QjtnQkFDN0IsT0FBTyxlQUFlLENBQUMsVUFBVSxDQUFDO1lBQ3RDLEtBQUssOEJBQThCO2dCQUMvQixPQUFPLGVBQWUsQ0FBQyxZQUFZLENBQUM7WUFDeEMsS0FBSyxnQ0FBZ0M7Z0JBQ2pDLE9BQU8sZUFBZSxDQUFDLGNBQWMsQ0FBQztZQUMxQyxLQUFLLCtCQUErQjtnQkFDaEMsT0FBTyxlQUFlLENBQUMsYUFBYSxDQUFDO1lBQ3pDO2dCQUNJLE9BQU8sZUFBZSxDQUFDLE9BQU8sQ0FBQztTQUN0QztJQUNMLENBQUM7SUF6QmUsZ0NBQU0sU0F5QnJCLENBQUE7QUFDTCxDQUFDLEVBakVnQix5QkFBeUIsS0FBekIseUJBQXlCLFFBaUV6QyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIEN1c3RvbUV2ZW50VHlwZSB7XHJcbiAgICBVTktOT1dOLFxyXG4gICAgLy8gVGhpcyBldmVudCBjYW4gYmUgdXNlZCB0byBib290c3RyYXAgdGhlIGFwcCBtb2R1bGUuIEFuIElBcHBDb25maWcgY2FuIGJlIHBhc3NlZCBhcyBkZXRhaWwgcGF5bG9hZC5cclxuICAgIENSRUFURSxcclxuICAgIC8vIFRoaXMgZXZlbnQgY2FuIGJlIHVzZWQgdG8gdHJpZ2dlciBhbiBpdGVtIGRvd25sb2FkLiBUaGUgZmlsZW5hbWUsIHVybCBhbmQgc2l6ZSBjYW4gYmUgcGFzc2VkIGFzIGRldGFpbCBwYXlsb2FkLlxyXG4gICAgRE9XTkxPQURfSVRFTSxcclxuICAgIC8vIFRoaXMgZXZlbnQgY2FuIGJlIHVzZWQgdG8gdXBkYXRlIHRoZSBhcHAgY29uZmlndXJhdGlvbi4gQW4gSUFwcENvbmZpZyBjYW4gYmUgcGFzc2VkIGFzIGRldGFpbCBwYXlsb2FkLlxyXG4gICAgVVBEQVRFX0NPTkZJRyxcclxuICAgIC8vIEluZGljYXRlcyB0aGF0IHRoZSBhcHAgaGFzIGJlZW4gaW5pdGlhbGl6ZWQuXHJcbiAgICBJTklULFxyXG4gICAgLy8gSW5kaWNhdGVzIHRoYXQgdGhlIG92ZXJhbGwgdXBsb2FkIGhhcyBiZWVuIGNvbXBsZXRlZC5cclxuICAgIFVQTE9BRF9DT01QTEVURUQsXHJcbiAgICAvLyBJbmRpY2F0ZXMgdGhhdCB0aGUgb3ZlcmFsbCBkb3dubG9hZCBoYXMgYmVlbiBjb21wbGV0ZWQuXHJcbiAgICBET1dOTE9BRF9DT01QTEVURUQsXHJcbiAgICAvLyBJbmRpY2F0ZXMgdGhhdCBhbiBpdGVtIGhhcyBiZWVuIGFkZGVkLiBJdCB3aWxsIGJlIHBhc3NlZCBhIElEYXRhdHJhbnNmZXJJdGVtIGFzIGRldGFpbCBwYXlsb2FkLlxyXG4gICAgSVRFTV9BRERFRCxcclxuICAgIC8vIEluZGljYXRlcyB0aGF0IGFuIGl0ZW0gaGFzIGJlZW4gcmVtb3ZlZC4gSXQgd2lsbCBiZSBwYXNzZWQgYSBJRGF0YXRyYW5zZmVySXRlbSBhcyBkZXRhaWwgcGF5bG9hZC5cclxuICAgIElURU1fUkVNT1ZFRCxcclxuICAgIC8vIEluZGljYXRlcyB0aGF0IGFuIGl0ZW0gaGFzIGJlZW4gY29tcGxldGVkLlxyXG4gICAgSVRFTV9DT01QTEVURUQsXHJcbiAgICAvLyBJbmRpY2F0ZXMgdGhhdCBhbGwgaXRlbXMgaGF2ZSBiZWVuIGNsZWFyZWQuXHJcbiAgICBJVEVNU19DTEVBUkVEXHJcbn1cclxuXHJcbi8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTogbm8tbmFtZXNwYWNlXHJcbmV4cG9ydCBuYW1lc3BhY2UgQ3VzdG9tRXZlbnRUeXBlRXh0ZW5zaW9ucyB7XHJcbiAgICBjb25zdCBDVVNUT01fRVZFTlRfVFlQRV9OUyA9ICdnaXRodWI6bmlrbHIvYW5ndWxhci1tYXRlcmlhbC1kYXRhdHJhbnNmZXIuJztcclxuICAgIGNvbnN0IENVU1RPTV9FVkVOVF9UWVBFX1VOS05PV04gPSBDVVNUT01fRVZFTlRfVFlQRV9OUyArICd1bmtub3duJztcclxuICAgIGNvbnN0IENVU1RPTV9FVkVOVF9UWVBFX0NSRUFURSA9IENVU1RPTV9FVkVOVF9UWVBFX05TICsgJ2NyZWF0ZSc7XHJcbiAgICBjb25zdCBDVVNUT01fRVZFTlRfVFlQRV9ET1dOTE9BRF9JVEVNID0gQ1VTVE9NX0VWRU5UX1RZUEVfTlMgKyAnZG93bmxvYWQtaXRlbSc7XHJcbiAgICBjb25zdCBDVVNUT01fRVZFTlRfVFlQRV9VUERBVEVfQ09ORklHID0gQ1VTVE9NX0VWRU5UX1RZUEVfTlMgKyAndXBkYXRlLWNvbmZpZyc7XHJcbiAgICBjb25zdCBDVVNUT01fRVZFTlRfVFlQRV9JTklUID0gQ1VTVE9NX0VWRU5UX1RZUEVfTlMgKyAnaW5pdCc7XHJcbiAgICBjb25zdCBDVVNUT01fRVZFTlRfVFlQRV9VUExPQURfQ09NUExFVEVEID0gQ1VTVE9NX0VWRU5UX1RZUEVfTlMgKyAndXBsb2FkLWNvbXBsZXRlZCc7XHJcbiAgICBjb25zdCBDVVNUT01fRVZFTlRfVFlQRV9ET1dOTE9BRF9DT01QTEVURUQgPSBDVVNUT01fRVZFTlRfVFlQRV9OUyArICdkb3dubG9hZC1jb21wbGV0ZWQnO1xyXG4gICAgY29uc3QgQ1VTVE9NX0VWRU5UX1RZUEVfSVRFTV9BRERFRCA9IENVU1RPTV9FVkVOVF9UWVBFX05TICsgJ2l0ZW0tYWRkZWQnO1xyXG4gICAgY29uc3QgQ1VTVE9NX0VWRU5UX1RZUEVfSVRFTV9SRU1PVkVEID0gQ1VTVE9NX0VWRU5UX1RZUEVfTlMgKyAnaXRlbS1yZW1vdmVkJztcclxuICAgIGNvbnN0IENVU1RPTV9FVkVOVF9UWVBFX0lURU1fQ09NUExFVEVEID0gQ1VTVE9NX0VWRU5UX1RZUEVfTlMgKyAnaXRlbS1jb21wbGV0ZWQnO1xyXG4gICAgY29uc3QgQ1VTVE9NX0VWRU5UX1RZUEVfSVRFTVNfQ0xFQVJFRCA9IENVU1RPTV9FVkVOVF9UWVBFX05TICsgJ2l0ZW1zLWNsZWFyZWQnO1xyXG4gICAgZXhwb3J0IGZ1bmN0aW9uIHRvU3RyaW5nKHR5cGU6IEN1c3RvbUV2ZW50VHlwZSk6IHN0cmluZyB7XHJcbiAgICAgICAgc3dpdGNoICh0eXBlKSB7XHJcbiAgICAgICAgICAgIGNhc2UgQ3VzdG9tRXZlbnRUeXBlLkNSRUFURTpcclxuICAgICAgICAgICAgICAgIHJldHVybiBDVVNUT01fRVZFTlRfVFlQRV9DUkVBVEU7XHJcbiAgICAgICAgICAgIGNhc2UgQ3VzdG9tRXZlbnRUeXBlLkRPV05MT0FEX0lURU06XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gQ1VTVE9NX0VWRU5UX1RZUEVfRE9XTkxPQURfSVRFTTtcclxuICAgICAgICAgICAgY2FzZSBDdXN0b21FdmVudFR5cGUuVVBEQVRFX0NPTkZJRzpcclxuICAgICAgICAgICAgICAgIHJldHVybiBDVVNUT01fRVZFTlRfVFlQRV9VUERBVEVfQ09ORklHO1xyXG4gICAgICAgICAgICBjYXNlIEN1c3RvbUV2ZW50VHlwZS5JTklUOlxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIENVU1RPTV9FVkVOVF9UWVBFX0lOSVQ7XHJcbiAgICAgICAgICAgIGNhc2UgQ3VzdG9tRXZlbnRUeXBlLlVQTE9BRF9DT01QTEVURUQ6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gQ1VTVE9NX0VWRU5UX1RZUEVfVVBMT0FEX0NPTVBMRVRFRDtcclxuICAgICAgICAgICAgY2FzZSBDdXN0b21FdmVudFR5cGUuRE9XTkxPQURfQ09NUExFVEVEOlxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIENVU1RPTV9FVkVOVF9UWVBFX0RPV05MT0FEX0NPTVBMRVRFRDtcclxuICAgICAgICAgICAgY2FzZSBDdXN0b21FdmVudFR5cGUuSVRFTV9BRERFRDpcclxuICAgICAgICAgICAgICAgIHJldHVybiBDVVNUT01fRVZFTlRfVFlQRV9JVEVNX0FEREVEO1xyXG4gICAgICAgICAgICBjYXNlIEN1c3RvbUV2ZW50VHlwZS5JVEVNX1JFTU9WRUQ6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gQ1VTVE9NX0VWRU5UX1RZUEVfSVRFTV9SRU1PVkVEO1xyXG4gICAgICAgICAgICBjYXNlIEN1c3RvbUV2ZW50VHlwZS5JVEVNX0NPTVBMRVRFRDpcclxuICAgICAgICAgICAgICAgIHJldHVybiBDVVNUT01fRVZFTlRfVFlQRV9JVEVNX0NPTVBMRVRFRDtcclxuICAgICAgICAgICAgY2FzZSBDdXN0b21FdmVudFR5cGUuSVRFTVNfQ0xFQVJFRDpcclxuICAgICAgICAgICAgICAgIHJldHVybiBDVVNUT01fRVZFTlRfVFlQRV9JVEVNU19DTEVBUkVEO1xyXG4gICAgICAgICAgICBkZWZhdWx0OlxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIENVU1RPTV9FVkVOVF9UWVBFX1VOS05PV047XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgZXhwb3J0IGZ1bmN0aW9uIHRvRW51bSh0eXBlOiBzdHJpbmcpOiBDdXN0b21FdmVudFR5cGUge1xyXG4gICAgICAgIHN3aXRjaCAodHlwZSkge1xyXG4gICAgICAgICAgICBjYXNlIENVU1RPTV9FVkVOVF9UWVBFX0NSRUFURTpcclxuICAgICAgICAgICAgICAgIHJldHVybiBDdXN0b21FdmVudFR5cGUuQ1JFQVRFO1xyXG4gICAgICAgICAgICBjYXNlIENVU1RPTV9FVkVOVF9UWVBFX0RPV05MT0FEX0lURU06XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gQ3VzdG9tRXZlbnRUeXBlLkRPV05MT0FEX0lURU07XHJcbiAgICAgICAgICAgIGNhc2UgQ1VTVE9NX0VWRU5UX1RZUEVfVVBEQVRFX0NPTkZJRzpcclxuICAgICAgICAgICAgICAgIHJldHVybiBDdXN0b21FdmVudFR5cGUuVVBEQVRFX0NPTkZJRztcclxuICAgICAgICAgICAgY2FzZSBDVVNUT01fRVZFTlRfVFlQRV9JTklUOlxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIEN1c3RvbUV2ZW50VHlwZS5JTklUO1xyXG4gICAgICAgICAgICBjYXNlIENVU1RPTV9FVkVOVF9UWVBFX1VQTE9BRF9DT01QTEVURUQ6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gQ3VzdG9tRXZlbnRUeXBlLlVQTE9BRF9DT01QTEVURUQ7XHJcbiAgICAgICAgICAgIGNhc2UgQ1VTVE9NX0VWRU5UX1RZUEVfRE9XTkxPQURfQ09NUExFVEVEOlxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIEN1c3RvbUV2ZW50VHlwZS5ET1dOTE9BRF9DT01QTEVURUQ7XHJcbiAgICAgICAgICAgIGNhc2UgQ1VTVE9NX0VWRU5UX1RZUEVfSVRFTV9BRERFRDpcclxuICAgICAgICAgICAgICAgIHJldHVybiBDdXN0b21FdmVudFR5cGUuSVRFTV9BRERFRDtcclxuICAgICAgICAgICAgY2FzZSBDVVNUT01fRVZFTlRfVFlQRV9JVEVNX1JFTU9WRUQ6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gQ3VzdG9tRXZlbnRUeXBlLklURU1fUkVNT1ZFRDtcclxuICAgICAgICAgICAgY2FzZSBDVVNUT01fRVZFTlRfVFlQRV9JVEVNX0NPTVBMRVRFRDpcclxuICAgICAgICAgICAgICAgIHJldHVybiBDdXN0b21FdmVudFR5cGUuSVRFTV9DT01QTEVURUQ7XHJcbiAgICAgICAgICAgIGNhc2UgQ1VTVE9NX0VWRU5UX1RZUEVfSVRFTVNfQ0xFQVJFRDpcclxuICAgICAgICAgICAgICAgIHJldHVybiBDdXN0b21FdmVudFR5cGUuSVRFTVNfQ0xFQVJFRDtcclxuICAgICAgICAgICAgZGVmYXVsdDpcclxuICAgICAgICAgICAgICAgIHJldHVybiBDdXN0b21FdmVudFR5cGUuVU5LTk9XTjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIl19