@c8y/ngx-components
Version:
Angular modules for Cumulocity IoT applications
88 lines • 19.9 kB
JavaScript
import { NgZone } from '@angular/core';
import { downgradeInjectable } from '@angular/upgrade/static';
import { QueriesUtil } from '@c8y/client';
import * as angular from 'angular';
import { c8yAlertDecorator } from './alert.decorator';
import { appLogsAutoRefreshComponentDowngradedComponent, bootstrapComponentDowngradedComponent, dataGridComponentDowngradedComponent, datapointSelectionListComponentDowngradedComponent, emptyStateComponentDowngradedComponent, helpComponentDowngradedComponent, highlightComponentDowngradedComponent, loadingComponentDowngradedComponent, paginationComponentDowngradedComponent, passwordInputComponentDowngradedComponent, platformConfigurationFormDowngradedComponent, rangeDisplayComponentDowngradedComponent, rolesAssetTreeComponentDowngradedComponent, userTotpComponentDowngradedComponent } from './downgraded.components';
import { absoluteDateServiceDowngradedInjectable, alertsServiceDowngradedInjectable, apiServiceDowngradedInjectable, appStateServiceDowngradedInjectable, assetLinkPipeDowngradedInjectable, authBridgeServiceDowngradedInjectable, bridgeServiceDowngradedInjectable, cachedLocaleDictionaryServiceDowngradedInjectable, datapointSelectorServiceDowngradedInjectable, deviceGridServiceDowngradedInjectable, deviceTypeDetailEditedServiceDowngradedInjectable, docsServiceDowngradedInjectable, filesServiceDowngradedInjectable, gainsightServiceDowngradedInjectable, globalConfigServiceDowngradedInjectable, headerServiceDowngradedInjectable, modalServiceDowngradedInjectable, passwordServiceDowngradedInjectable, propertyValueTransformServiceDowngradedInjectable, serverMessagesServiceDowngradedInjectable, serviceRegistryInjectable, translateServiceDowngradedInjectable, userMenuServiceDowngradedInjectable } from './downgraded.services';
import { gettextCatalogDecorator } from './gettextCatalog.decorator';
import { groupTypesHierarchyNavigatorDecorator } from './groupsHierarchyNavigator.decorator';
import { c8yNg1HttpInterceptor } from './http.interceptor';
import { c8yNavigatorProvider } from './navigator.provider';
import { rootComponent } from './root.component';
import { c8yTitleDecorator } from './title.decorator';
import { c8yViewsProvider } from './views.provider';
const NAME_UPGRADE = 'c8y.upgrade';
window.preventNg1Bootstrap = true;
angular
.module(NAME_UPGRADE, [])
// tslint:disable-next-line:only-arrow-functions
.config(function ($httpProvider) {
'ngInject';
const ng1InterceptorIndex = $httpProvider.interceptors.indexOf('c8yLoadingIndicator');
if (ng1InterceptorIndex > -1) {
$httpProvider.interceptors.splice(ng1InterceptorIndex, 1);
}
$httpProvider.interceptors.push(c8yNg1HttpInterceptor);
})
.component('c8yUiRoot', rootComponent)
.directive('c8yBootstrap', bootstrapComponentDowngradedComponent)
.factory('c8yBridgeService', bridgeServiceDowngradedInjectable)
.factory('c8yAuthBridgeService', authBridgeServiceDowngradedInjectable)
.factory('c8yAppStateService', appStateServiceDowngradedInjectable)
.factory('c8yHeaderService', headerServiceDowngradedInjectable)
.factory('c8yUserMenuService', userMenuServiceDowngradedInjectable)
// tslint:disable-next-line:only-arrow-functions
.service('c8yQueriesUtil', function () {
return new QueriesUtil();
})
.factory('c8yAlert', alertsServiceDowngradedInjectable)
.decorator('c8yAlert', c8yAlertDecorator)
.decorator('groupTypesHierarchyNavigator', groupTypesHierarchyNavigatorDecorator) // prevents loading the groups
.factory('c8yApiService', apiServiceDowngradedInjectable)
.factory('c8yDocs', docsServiceDowngradedInjectable)
.service('c8yPasswordConfirm', passwordServiceDowngradedInjectable)
.service('c8yModalService', modalServiceDowngradedInjectable)
.service('c8yGainsightService', gainsightServiceDowngradedInjectable)
.service('c8yFilesService', filesServiceDowngradedInjectable)
.service('c8yGlobalConfigService', globalConfigServiceDowngradedInjectable)
.service('c8yPropertyValueTransformService', propertyValueTransformServiceDowngradedInjectable)
.service('c8yDatapointSelectorService', datapointSelectorServiceDowngradedInjectable);
angular
.module('c8y.ui')
.filter('absoluteDate', absoluteDateServiceDowngradedInjectable)
.directive('c8yLoading', loadingComponentDowngradedComponent)
.provider('c8yNavigator', c8yNavigatorProvider)
.provider('c8yViews', c8yViewsProvider)
.directive('c8yUserTotpRevoke', userTotpComponentDowngradedComponent)
.directive('c8yAppLogsAutoRefresh', appLogsAutoRefreshComponentDowngradedComponent)
.directive('c8yDataGrid', dataGridComponentDowngradedComponent)
.directive('c8yRangeDisplay', rangeDisplayComponentDowngradedComponent)
.directive('c8yHelp', helpComponentDowngradedComponent)
.directive('c8yUiEmptyState', emptyStateComponentDowngradedComponent)
.directive('c8yDatapointSelectionList', datapointSelectionListComponentDowngradedComponent)
.directive('c8yHighlight', highlightComponentDowngradedComponent)
.directive('c8yPasswordInput', passwordInputComponentDowngradedComponent)
.directive('pagination', paginationComponentDowngradedComponent)
.directive('c8yRolesAssetTreeDowngraded', rolesAssetTreeComponentDowngradedComponent)
.directive('c8yPlatformConfigurationForm', platformConfigurationFormDowngradedComponent)
.factory('c8yTranslate', translateServiceDowngradedInjectable)
.factory('c8yCachedLocaleDictionaryService', cachedLocaleDictionaryServiceDowngradedInjectable)
.decorator('gettextCatalog', gettextCatalogDecorator)
.factory('c8yServerMessages', serverMessagesServiceDowngradedInjectable)
.factory('ngZone', downgradeInjectable(NgZone))
.factory('c8yDeviceTypeDetailEdited', deviceTypeDetailEditedServiceDowngradedInjectable)
.factory('c8yDeviceGridService', deviceGridServiceDowngradedInjectable)
.factory('c8yServiceRegistry', serviceRegistryInjectable)
.factory('assetLink', assetLinkPipeDowngradedInjectable);
angular
.module('c8y.ui')
.decorator('c8yTitle', c8yTitleDecorator)
.run([
'c8yTitle',
function () {
// needed to inject c8yTitle with decorator applied to it, to ensure displaying ng1 titles
}
]);
export const ng1ModulesUpgrade = ['app', NAME_UPGRADE];
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi91cGdyYWRlL25nMS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzlELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDMUMsT0FBTyxLQUFLLE9BQU8sTUFBTSxTQUFTLENBQUM7QUFDbkMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDdEQsT0FBTyxFQUNMLDhDQUE4QyxFQUM5QyxxQ0FBcUMsRUFDckMsb0NBQW9DLEVBQ3BDLGtEQUFrRCxFQUNsRCxzQ0FBc0MsRUFDdEMsZ0NBQWdDLEVBQ2hDLHFDQUFxQyxFQUNyQyxtQ0FBbUMsRUFDbkMsc0NBQXNDLEVBQ3RDLHlDQUF5QyxFQUN6Qyw0Q0FBNEMsRUFDNUMsd0NBQXdDLEVBQ3hDLDBDQUEwQyxFQUMxQyxvQ0FBb0MsRUFDckMsTUFBTSx5QkFBeUIsQ0FBQztBQUNqQyxPQUFPLEVBQ0wsdUNBQXVDLEVBQ3ZDLGlDQUFpQyxFQUNqQyw4QkFBOEIsRUFDOUIsbUNBQW1DLEVBQ25DLGlDQUFpQyxFQUNqQyxxQ0FBcUMsRUFDckMsaUNBQWlDLEVBQ2pDLGlEQUFpRCxFQUNqRCw0Q0FBNEMsRUFDNUMscUNBQXFDLEVBQ3JDLGlEQUFpRCxFQUNqRCwrQkFBK0IsRUFDL0IsZ0NBQWdDLEVBQ2hDLG9DQUFvQyxFQUNwQyx1Q0FBdUMsRUFDdkMsaUNBQWlDLEVBQ2pDLGdDQUFnQyxFQUNoQyxtQ0FBbUMsRUFDbkMsaURBQWlELEVBQ2pELHlDQUF5QyxFQUN6Qyx5QkFBeUIsRUFDekIsb0NBQW9DLEVBQ3BDLG1DQUFtQyxFQUNwQyxNQUFNLHVCQUF1QixDQUFDO0FBQy9CLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3JFLE9BQU8sRUFBRSxxQ0FBcUMsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQzdGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQzNELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzVELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUVwRCxNQUFNLFlBQVksR0FBRyxhQUFhLENBQUM7QUFDbEMsTUFBYyxDQUFDLG1CQUFtQixHQUFHLElBQUksQ0FBQztBQUUzQyxPQUFPO0tBQ0osTUFBTSxDQUFDLFlBQVksRUFBRSxFQUFFLENBQUM7SUFDekIsZ0RBQWdEO0tBQy9DLE1BQU0sQ0FBQyxVQUFVLGFBQWE7SUFDN0IsVUFBVSxDQUFDO0lBRVgsTUFBTSxtQkFBbUIsR0FBRyxhQUFhLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0lBQ3RGLElBQUksbUJBQW1CLEdBQUcsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUM3QixhQUFhLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxtQkFBbUIsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUM1RCxDQUFDO0lBQ0QsYUFBYSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMscUJBQXFCLENBQUMsQ0FBQztBQUN6RCxDQUFDLENBQUM7S0FDRCxTQUFTLENBQUMsV0FBVyxFQUFFLGFBQWEsQ0FBQztLQUNyQyxTQUFTLENBQUMsY0FBYyxFQUFFLHFDQUFxQyxDQUFDO0tBQ2hFLE9BQU8sQ0FBQyxrQkFBa0IsRUFBRSxpQ0FBaUMsQ0FBQztLQUM5RCxPQUFPLENBQUMsc0JBQXNCLEVBQUUscUNBQXFDLENBQUM7S0FDdEUsT0FBTyxDQUFDLG9CQUFvQixFQUFFLG1DQUFtQyxDQUFDO0tBQ2xFLE9BQU8sQ0FBQyxrQkFBa0IsRUFBRSxpQ0FBaUMsQ0FBQztLQUM5RCxPQUFPLENBQUMsb0JBQW9CLEVBQUUsbUNBQW1DLENBQUM7SUFDbkUsZ0RBQWdEO0tBQy9DLE9BQU8sQ0FBQyxnQkFBZ0IsRUFBRTtJQUN6QixPQUFPLElBQUksV0FBVyxFQUFFLENBQUM7QUFDM0IsQ0FBQyxDQUFDO0tBQ0QsT0FBTyxDQUFDLFVBQVUsRUFBRSxpQ0FBaUMsQ0FBQztLQUN0RCxTQUFTLENBQUMsVUFBVSxFQUFFLGlCQUFpQixDQUFDO0tBQ3hDLFNBQVMsQ0FBQyw4QkFBOEIsRUFBRSxxQ0FBcUMsQ0FBQyxDQUFDLDhCQUE4QjtLQUMvRyxPQUFPLENBQUMsZUFBZSxFQUFFLDhCQUE4QixDQUFDO0tBQ3hELE9BQU8sQ0FBQyxTQUFTLEVBQUUsK0JBQStCLENBQUM7S0FDbkQsT0FBTyxDQUFDLG9CQUFvQixFQUFFLG1DQUFtQyxDQUFDO0tBQ2xFLE9BQU8sQ0FBQyxpQkFBaUIsRUFBRSxnQ0FBZ0MsQ0FBQztLQUM1RCxPQUFPLENBQUMscUJBQXFCLEVBQUUsb0NBQW9DLENBQUM7S0FDcEUsT0FBTyxDQUFDLGlCQUFpQixFQUFFLGdDQUFnQyxDQUFDO0tBQzVELE9BQU8sQ0FBQyx3QkFBd0IsRUFBRSx1Q0FBdUMsQ0FBQztLQUMxRSxPQUFPLENBQUMsa0NBQWtDLEVBQUUsaURBQWlELENBQUM7S0FDOUYsT0FBTyxDQUFDLDZCQUE2QixFQUFFLDRDQUE0QyxDQUFDLENBQUM7QUFFeEYsT0FBTztLQUNKLE1BQU0sQ0FBQyxRQUFRLENBQUM7S0FDaEIsTUFBTSxDQUFDLGNBQWMsRUFBRSx1Q0FBdUMsQ0FBQztLQUMvRCxTQUFTLENBQUMsWUFBWSxFQUFFLG1DQUFtQyxDQUFDO0tBQzVELFFBQVEsQ0FBQyxjQUFjLEVBQUUsb0JBQW9CLENBQUM7S0FDOUMsUUFBUSxDQUFDLFVBQVUsRUFBRSxnQkFBZ0IsQ0FBQztLQUN0QyxTQUFTLENBQUMsbUJBQW1CLEVBQUUsb0NBQW9DLENBQUM7S0FDcEUsU0FBUyxDQUFDLHVCQUF1QixFQUFFLDhDQUE4QyxDQUFDO0tBQ2xGLFNBQVMsQ0FBQyxhQUFhLEVBQUUsb0NBQW9DLENBQUM7S0FDOUQsU0FBUyxDQUFDLGlCQUFpQixFQUFFLHdDQUF3QyxDQUFDO0tBQ3RFLFNBQVMsQ0FBQyxTQUFTLEVBQUUsZ0NBQWdDLENBQUM7S0FDdEQsU0FBUyxDQUFDLGlCQUFpQixFQUFFLHNDQUFzQyxDQUFDO0tBQ3BFLFNBQVMsQ0FBQywyQkFBMkIsRUFBRSxrREFBa0QsQ0FBQztLQUMxRixTQUFTLENBQUMsY0FBYyxFQUFFLHFDQUFxQyxDQUFDO0tBQ2hFLFNBQVMsQ0FBQyxrQkFBa0IsRUFBRSx5Q0FBeUMsQ0FBQztLQUN4RSxTQUFTLENBQUMsWUFBWSxFQUFFLHNDQUFzQyxDQUFDO0tBQy9ELFNBQVMsQ0FBQyw2QkFBNkIsRUFBRSwwQ0FBMEMsQ0FBQztLQUNwRixTQUFTLENBQUMsOEJBQThCLEVBQUUsNENBQTRDLENBQUM7S0FDdkYsT0FBTyxDQUFDLGNBQWMsRUFBRSxvQ0FBb0MsQ0FBQztLQUM3RCxPQUFPLENBQUMsa0NBQWtDLEVBQUUsaURBQWlELENBQUM7S0FDOUYsU0FBUyxDQUFDLGdCQUFnQixFQUFFLHVCQUF1QixDQUFDO0tBQ3BELE9BQU8sQ0FBQyxtQkFBbUIsRUFBRSx5Q0FBeUMsQ0FBQztLQUN2RSxPQUFPLENBQUMsUUFBUSxFQUFFLG1CQUFtQixDQUFDLE1BQU0sQ0FBQyxDQUFDO0tBQzlDLE9BQU8sQ0FBQywyQkFBMkIsRUFBRSxpREFBaUQsQ0FBQztLQUN2RixPQUFPLENBQUMsc0JBQXNCLEVBQUUscUNBQXFDLENBQUM7S0FDdEUsT0FBTyxDQUFDLG9CQUFvQixFQUFFLHlCQUF5QixDQUFDO0tBQ3hELE9BQU8sQ0FBQyxXQUFXLEVBQUUsaUNBQWlDLENBQUMsQ0FBQztBQUUzRCxPQUFPO0tBQ0osTUFBTSxDQUFDLFFBQVEsQ0FBQztLQUNoQixTQUFTLENBQUMsVUFBVSxFQUFFLGlCQUFpQixDQUFDO0tBQ3hDLEdBQUcsQ0FBQztJQUNILFVBQVU7SUFDVjtRQUNFLDBGQUEwRjtJQUM1RixDQUFDO0NBQ0YsQ0FBQyxDQUFDO0FBRUwsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUcsQ0FBQyxLQUFLLEVBQUUsWUFBWSxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ1pvbmUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGRvd25ncmFkZUluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci91cGdyYWRlL3N0YXRpYyc7XG5pbXBvcnQgeyBRdWVyaWVzVXRpbCB9IGZyb20gJ0BjOHkvY2xpZW50JztcbmltcG9ydCAqIGFzIGFuZ3VsYXIgZnJvbSAnYW5ndWxhcic7XG5pbXBvcnQgeyBjOHlBbGVydERlY29yYXRvciB9IGZyb20gJy4vYWxlcnQuZGVjb3JhdG9yJztcbmltcG9ydCB7XG4gIGFwcExvZ3NBdXRvUmVmcmVzaENvbXBvbmVudERvd25ncmFkZWRDb21wb25lbnQsXG4gIGJvb3RzdHJhcENvbXBvbmVudERvd25ncmFkZWRDb21wb25lbnQsXG4gIGRhdGFHcmlkQ29tcG9uZW50RG93bmdyYWRlZENvbXBvbmVudCxcbiAgZGF0YXBvaW50U2VsZWN0aW9uTGlzdENvbXBvbmVudERvd25ncmFkZWRDb21wb25lbnQsXG4gIGVtcHR5U3RhdGVDb21wb25lbnREb3duZ3JhZGVkQ29tcG9uZW50LFxuICBoZWxwQ29tcG9uZW50RG93bmdyYWRlZENvbXBvbmVudCxcbiAgaGlnaGxpZ2h0Q29tcG9uZW50RG93bmdyYWRlZENvbXBvbmVudCxcbiAgbG9hZGluZ0NvbXBvbmVudERvd25ncmFkZWRDb21wb25lbnQsXG4gIHBhZ2luYXRpb25Db21wb25lbnREb3duZ3JhZGVkQ29tcG9uZW50LFxuICBwYXNzd29yZElucHV0Q29tcG9uZW50RG93bmdyYWRlZENvbXBvbmVudCxcbiAgcGxhdGZvcm1Db25maWd1cmF0aW9uRm9ybURvd25ncmFkZWRDb21wb25lbnQsXG4gIHJhbmdlRGlzcGxheUNvbXBvbmVudERvd25ncmFkZWRDb21wb25lbnQsXG4gIHJvbGVzQXNzZXRUcmVlQ29tcG9uZW50RG93bmdyYWRlZENvbXBvbmVudCxcbiAgdXNlclRvdHBDb21wb25lbnREb3duZ3JhZGVkQ29tcG9uZW50XG59IGZyb20gJy4vZG93bmdyYWRlZC5jb21wb25lbnRzJztcbmltcG9ydCB7XG4gIGFic29sdXRlRGF0ZVNlcnZpY2VEb3duZ3JhZGVkSW5qZWN0YWJsZSxcbiAgYWxlcnRzU2VydmljZURvd25ncmFkZWRJbmplY3RhYmxlLFxuICBhcGlTZXJ2aWNlRG93bmdyYWRlZEluamVjdGFibGUsXG4gIGFwcFN0YXRlU2VydmljZURvd25ncmFkZWRJbmplY3RhYmxlLFxuICBhc3NldExpbmtQaXBlRG93bmdyYWRlZEluamVjdGFibGUsXG4gIGF1dGhCcmlkZ2VTZXJ2aWNlRG93bmdyYWRlZEluamVjdGFibGUsXG4gIGJyaWRnZVNlcnZpY2VEb3duZ3JhZGVkSW5qZWN0YWJsZSxcbiAgY2FjaGVkTG9jYWxlRGljdGlvbmFyeVNlcnZpY2VEb3duZ3JhZGVkSW5qZWN0YWJsZSxcbiAgZGF0YXBvaW50U2VsZWN0b3JTZXJ2aWNlRG93bmdyYWRlZEluamVjdGFibGUsXG4gIGRldmljZUdyaWRTZXJ2aWNlRG93bmdyYWRlZEluamVjdGFibGUsXG4gIGRldmljZVR5cGVEZXRhaWxFZGl0ZWRTZXJ2aWNlRG93bmdyYWRlZEluamVjdGFibGUsXG4gIGRvY3NTZXJ2aWNlRG93bmdyYWRlZEluamVjdGFibGUsXG4gIGZpbGVzU2VydmljZURvd25ncmFkZWRJbmplY3RhYmxlLFxuICBnYWluc2lnaHRTZXJ2aWNlRG93bmdyYWRlZEluamVjdGFibGUsXG4gIGdsb2JhbENvbmZpZ1NlcnZpY2VEb3duZ3JhZGVkSW5qZWN0YWJsZSxcbiAgaGVhZGVyU2VydmljZURvd25ncmFkZWRJbmplY3RhYmxlLFxuICBtb2RhbFNlcnZpY2VEb3duZ3JhZGVkSW5qZWN0YWJsZSxcbiAgcGFzc3dvcmRTZXJ2aWNlRG93bmdyYWRlZEluamVjdGFibGUsXG4gIHByb3BlcnR5VmFsdWVUcmFuc2Zvcm1TZXJ2aWNlRG93bmdyYWRlZEluamVjdGFibGUsXG4gIHNlcnZlck1lc3NhZ2VzU2VydmljZURvd25ncmFkZWRJbmplY3RhYmxlLFxuICBzZXJ2aWNlUmVnaXN0cnlJbmplY3RhYmxlLFxuICB0cmFuc2xhdGVTZXJ2aWNlRG93bmdyYWRlZEluamVjdGFibGUsXG4gIHVzZXJNZW51U2VydmljZURvd25ncmFkZWRJbmplY3RhYmxlXG59IGZyb20gJy4vZG93bmdyYWRlZC5zZXJ2aWNlcyc7XG5pbXBvcnQgeyBnZXR0ZXh0Q2F0YWxvZ0RlY29yYXRvciB9IGZyb20gJy4vZ2V0dGV4dENhdGFsb2cuZGVjb3JhdG9yJztcbmltcG9ydCB7IGdyb3VwVHlwZXNIaWVyYXJjaHlOYXZpZ2F0b3JEZWNvcmF0b3IgfSBmcm9tICcuL2dyb3Vwc0hpZXJhcmNoeU5hdmlnYXRvci5kZWNvcmF0b3InO1xuaW1wb3J0IHsgYzh5TmcxSHR0cEludGVyY2VwdG9yIH0gZnJvbSAnLi9odHRwLmludGVyY2VwdG9yJztcbmltcG9ydCB7IGM4eU5hdmlnYXRvclByb3ZpZGVyIH0gZnJvbSAnLi9uYXZpZ2F0b3IucHJvdmlkZXInO1xuaW1wb3J0IHsgcm9vdENvbXBvbmVudCB9IGZyb20gJy4vcm9vdC5jb21wb25lbnQnO1xuaW1wb3J0IHsgYzh5VGl0bGVEZWNvcmF0b3IgfSBmcm9tICcuL3RpdGxlLmRlY29yYXRvcic7XG5pbXBvcnQgeyBjOHlWaWV3c1Byb3ZpZGVyIH0gZnJvbSAnLi92aWV3cy5wcm92aWRlcic7XG5cbmNvbnN0IE5BTUVfVVBHUkFERSA9ICdjOHkudXBncmFkZSc7XG4od2luZG93IGFzIGFueSkucHJldmVudE5nMUJvb3RzdHJhcCA9IHRydWU7XG5cbmFuZ3VsYXJcbiAgLm1vZHVsZShOQU1FX1VQR1JBREUsIFtdKVxuICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6b25seS1hcnJvdy1mdW5jdGlvbnNcbiAgLmNvbmZpZyhmdW5jdGlvbiAoJGh0dHBQcm92aWRlcikge1xuICAgICduZ0luamVjdCc7XG5cbiAgICBjb25zdCBuZzFJbnRlcmNlcHRvckluZGV4ID0gJGh0dHBQcm92aWRlci5pbnRlcmNlcHRvcnMuaW5kZXhPZignYzh5TG9hZGluZ0luZGljYXRvcicpO1xuICAgIGlmIChuZzFJbnRlcmNlcHRvckluZGV4ID4gLTEpIHtcbiAgICAgICRodHRwUHJvdmlkZXIuaW50ZXJjZXB0b3JzLnNwbGljZShuZzFJbnRlcmNlcHRvckluZGV4LCAxKTtcbiAgICB9XG4gICAgJGh0dHBQcm92aWRlci5pbnRlcmNlcHRvcnMucHVzaChjOHlOZzFIdHRwSW50ZXJjZXB0b3IpO1xuICB9KVxuICAuY29tcG9uZW50KCdjOHlVaVJvb3QnLCByb290Q29tcG9uZW50KVxuICAuZGlyZWN0aXZlKCdjOHlCb290c3RyYXAnLCBib290c3RyYXBDb21wb25lbnREb3duZ3JhZGVkQ29tcG9uZW50KVxuICAuZmFjdG9yeSgnYzh5QnJpZGdlU2VydmljZScsIGJyaWRnZVNlcnZpY2VEb3duZ3JhZGVkSW5qZWN0YWJsZSlcbiAgLmZhY3RvcnkoJ2M4eUF1dGhCcmlkZ2VTZXJ2aWNlJywgYXV0aEJyaWRnZVNlcnZpY2VEb3duZ3JhZGVkSW5qZWN0YWJsZSlcbiAgLmZhY3RvcnkoJ2M4eUFwcFN0YXRlU2VydmljZScsIGFwcFN0YXRlU2VydmljZURvd25ncmFkZWRJbmplY3RhYmxlKVxuICAuZmFjdG9yeSgnYzh5SGVhZGVyU2VydmljZScsIGhlYWRlclNlcnZpY2VEb3duZ3JhZGVkSW5qZWN0YWJsZSlcbiAgLmZhY3RvcnkoJ2M4eVVzZXJNZW51U2VydmljZScsIHVzZXJNZW51U2VydmljZURvd25ncmFkZWRJbmplY3RhYmxlKVxuICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6b25seS1hcnJvdy1mdW5jdGlvbnNcbiAgLnNlcnZpY2UoJ2M4eVF1ZXJpZXNVdGlsJywgZnVuY3Rpb24gKCkge1xuICAgIHJldHVybiBuZXcgUXVlcmllc1V0aWwoKTtcbiAgfSlcbiAgLmZhY3RvcnkoJ2M4eUFsZXJ0JywgYWxlcnRzU2VydmljZURvd25ncmFkZWRJbmplY3RhYmxlKVxuICAuZGVjb3JhdG9yKCdjOHlBbGVydCcsIGM4eUFsZXJ0RGVjb3JhdG9yKVxuICAuZGVjb3JhdG9yKCdncm91cFR5cGVzSGllcmFyY2h5TmF2aWdhdG9yJywgZ3JvdXBUeXBlc0hpZXJhcmNoeU5hdmlnYXRvckRlY29yYXRvcikgLy8gcHJldmVudHMgbG9hZGluZyB0aGUgZ3JvdXBzXG4gIC5mYWN0b3J5KCdjOHlBcGlTZXJ2aWNlJywgYXBpU2VydmljZURvd25ncmFkZWRJbmplY3RhYmxlKVxuICAuZmFjdG9yeSgnYzh5RG9jcycsIGRvY3NTZXJ2aWNlRG93bmdyYWRlZEluamVjdGFibGUpXG4gIC5zZXJ2aWNlKCdjOHlQYXNzd29yZENvbmZpcm0nLCBwYXNzd29yZFNlcnZpY2VEb3duZ3JhZGVkSW5qZWN0YWJsZSlcbiAgLnNlcnZpY2UoJ2M4eU1vZGFsU2VydmljZScsIG1vZGFsU2VydmljZURvd25ncmFkZWRJbmplY3RhYmxlKVxuICAuc2VydmljZSgnYzh5R2FpbnNpZ2h0U2VydmljZScsIGdhaW5zaWdodFNlcnZpY2VEb3duZ3JhZGVkSW5qZWN0YWJsZSlcbiAgLnNlcnZpY2UoJ2M4eUZpbGVzU2VydmljZScsIGZpbGVzU2VydmljZURvd25ncmFkZWRJbmplY3RhYmxlKVxuICAuc2VydmljZSgnYzh5R2xvYmFsQ29uZmlnU2VydmljZScsIGdsb2JhbENvbmZpZ1NlcnZpY2VEb3duZ3JhZGVkSW5qZWN0YWJsZSlcbiAgLnNlcnZpY2UoJ2M4eVByb3BlcnR5VmFsdWVUcmFuc2Zvcm1TZXJ2aWNlJywgcHJvcGVydHlWYWx1ZVRyYW5zZm9ybVNlcnZpY2VEb3duZ3JhZGVkSW5qZWN0YWJsZSlcbiAgLnNlcnZpY2UoJ2M4eURhdGFwb2ludFNlbGVjdG9yU2VydmljZScsIGRhdGFwb2ludFNlbGVjdG9yU2VydmljZURvd25ncmFkZWRJbmplY3RhYmxlKTtcblxuYW5ndWxhclxuICAubW9kdWxlKCdjOHkudWknKVxuICAuZmlsdGVyKCdhYnNvbHV0ZURhdGUnLCBhYnNvbHV0ZURhdGVTZXJ2aWNlRG93bmdyYWRlZEluamVjdGFibGUpXG4gIC5kaXJlY3RpdmUoJ2M4eUxvYWRpbmcnLCBsb2FkaW5nQ29tcG9uZW50RG93bmdyYWRlZENvbXBvbmVudClcbiAgLnByb3ZpZGVyKCdjOHlOYXZpZ2F0b3InLCBjOHlOYXZpZ2F0b3JQcm92aWRlcilcbiAgLnByb3ZpZGVyKCdjOHlWaWV3cycsIGM4eVZpZXdzUHJvdmlkZXIpXG4gIC5kaXJlY3RpdmUoJ2M4eVVzZXJUb3RwUmV2b2tlJywgdXNlclRvdHBDb21wb25lbnREb3duZ3JhZGVkQ29tcG9uZW50KVxuICAuZGlyZWN0aXZlKCdjOHlBcHBMb2dzQXV0b1JlZnJlc2gnLCBhcHBMb2dzQXV0b1JlZnJlc2hDb21wb25lbnREb3duZ3JhZGVkQ29tcG9uZW50KVxuICAuZGlyZWN0aXZlKCdjOHlEYXRhR3JpZCcsIGRhdGFHcmlkQ29tcG9uZW50RG93bmdyYWRlZENvbXBvbmVudClcbiAgLmRpcmVjdGl2ZSgnYzh5UmFuZ2VEaXNwbGF5JywgcmFuZ2VEaXNwbGF5Q29tcG9uZW50RG93bmdyYWRlZENvbXBvbmVudClcbiAgLmRpcmVjdGl2ZSgnYzh5SGVscCcsIGhlbHBDb21wb25lbnREb3duZ3JhZGVkQ29tcG9uZW50KVxuICAuZGlyZWN0aXZlKCdjOHlVaUVtcHR5U3RhdGUnLCBlbXB0eVN0YXRlQ29tcG9uZW50RG93bmdyYWRlZENvbXBvbmVudClcbiAgLmRpcmVjdGl2ZSgnYzh5RGF0YXBvaW50U2VsZWN0aW9uTGlzdCcsIGRhdGFwb2ludFNlbGVjdGlvbkxpc3RDb21wb25lbnREb3duZ3JhZGVkQ29tcG9uZW50KVxuICAuZGlyZWN0aXZlKCdjOHlIaWdobGlnaHQnLCBoaWdobGlnaHRDb21wb25lbnREb3duZ3JhZGVkQ29tcG9uZW50KVxuICAuZGlyZWN0aXZlKCdjOHlQYXNzd29yZElucHV0JywgcGFzc3dvcmRJbnB1dENvbXBvbmVudERvd25ncmFkZWRDb21wb25lbnQpXG4gIC5kaXJlY3RpdmUoJ3BhZ2luYXRpb24nLCBwYWdpbmF0aW9uQ29tcG9uZW50RG93bmdyYWRlZENvbXBvbmVudClcbiAgLmRpcmVjdGl2ZSgnYzh5Um9sZXNBc3NldFRyZWVEb3duZ3JhZGVkJywgcm9sZXNBc3NldFRyZWVDb21wb25lbnREb3duZ3JhZGVkQ29tcG9uZW50KVxuICAuZGlyZWN0aXZlKCdjOHlQbGF0Zm9ybUNvbmZpZ3VyYXRpb25Gb3JtJywgcGxhdGZvcm1Db25maWd1cmF0aW9uRm9ybURvd25ncmFkZWRDb21wb25lbnQpXG4gIC5mYWN0b3J5KCdjOHlUcmFuc2xhdGUnLCB0cmFuc2xhdGVTZXJ2aWNlRG93bmdyYWRlZEluamVjdGFibGUpXG4gIC5mYWN0b3J5KCdjOHlDYWNoZWRMb2NhbGVEaWN0aW9uYXJ5U2VydmljZScsIGNhY2hlZExvY2FsZURpY3Rpb25hcnlTZXJ2aWNlRG93bmdyYWRlZEluamVjdGFibGUpXG4gIC5kZWNvcmF0b3IoJ2dldHRleHRDYXRhbG9nJywgZ2V0dGV4dENhdGFsb2dEZWNvcmF0b3IpXG4gIC5mYWN0b3J5KCdjOHlTZXJ2ZXJNZXNzYWdlcycsIHNlcnZlck1lc3NhZ2VzU2VydmljZURvd25ncmFkZWRJbmplY3RhYmxlKVxuICAuZmFjdG9yeSgnbmdab25lJywgZG93bmdyYWRlSW5qZWN0YWJsZShOZ1pvbmUpKVxuICAuZmFjdG9yeSgnYzh5RGV2aWNlVHlwZURldGFpbEVkaXRlZCcsIGRldmljZVR5cGVEZXRhaWxFZGl0ZWRTZXJ2aWNlRG93bmdyYWRlZEluamVjdGFibGUpXG4gIC5mYWN0b3J5KCdjOHlEZXZpY2VHcmlkU2VydmljZScsIGRldmljZUdyaWRTZXJ2aWNlRG93bmdyYWRlZEluamVjdGFibGUpXG4gIC5mYWN0b3J5KCdjOHlTZXJ2aWNlUmVnaXN0cnknLCBzZXJ2aWNlUmVnaXN0cnlJbmplY3RhYmxlKVxuICAuZmFjdG9yeSgnYXNzZXRMaW5rJywgYXNzZXRMaW5rUGlwZURvd25ncmFkZWRJbmplY3RhYmxlKTtcblxuYW5ndWxhclxuICAubW9kdWxlKCdjOHkudWknKVxuICAuZGVjb3JhdG9yKCdjOHlUaXRsZScsIGM4eVRpdGxlRGVjb3JhdG9yKVxuICAucnVuKFtcbiAgICAnYzh5VGl0bGUnLFxuICAgIGZ1bmN0aW9uICgpIHtcbiAgICAgIC8vIG5lZWRlZCB0byBpbmplY3QgYzh5VGl0bGUgd2l0aCBkZWNvcmF0b3IgYXBwbGllZCB0byBpdCwgdG8gZW5zdXJlIGRpc3BsYXlpbmcgbmcxIHRpdGxlc1xuICAgIH1cbiAgXSk7XG5cbmV4cG9ydCBjb25zdCBuZzFNb2R1bGVzVXBncmFkZSA9IFsnYXBwJywgTkFNRV9VUEdSQURFXTtcbiJdfQ==