"use strict";(self.webpackChunktimetrex=self.webpackChunktimetrex||[]).push([["document-DocumentRevisionViewController"],{4120:(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"DocumentRevisionViewController\": () => (/* binding */ DocumentRevisionViewController)\n/* harmony export */ });\n/* provided dependency */ var _ = __webpack_require__(9050);\n/* provided dependency */ var $ = __webpack_require__(9755);\nclass DocumentRevisionViewController extends BaseViewController {\n\tconstructor( options = {} ) {\n\t\t_.defaults( options, {\n\t\t\tel: '#document_revision_view_container'\n\t\t} );\n\n\t\tsuper( options );\n\t}\n\n\tinit( options ) {\n\n\t\t//this._super('initialize', options );\n\t\tthis.edit_view_tpl = 'DocumentRevisionEditView.html';\n\t\tthis.permission_id = 'document';\n\t\tthis.viewId = 'DocumentRevision';\n\t\tthis.script_name = 'DocumentRevisionView';\n\t\tthis.table_name_key = 'document_revision';\n\t\tthis.context_menu_name = $.i18n._( 'Revisions' );\n\t\tthis.navigation_label = $.i18n._( 'Revision' );\n\t\tthis.api = TTAPI.APIDocumentRevision;\n\t\tthis.render();\n\n\t\tif ( this.sub_view_mode ) {\n\t\t\tthis.buildContextMenu( true );\n\t\t} else {\n\t\t\tthis.buildContextMenu();\n\t\t}\n\n\t\t//call init data in parent view\n\t\tif ( !this.sub_view_mode ) {\n\t\t\tthis.initData();\n\t\t}\n\t}\n\n\tgetCustomContextMenuModel() {\n\t\tvar context_menu_model = {\n\t\t\tgroups: {\n\t\t\t\tdownload: {\n\t\t\t\t\tlabel: $.i18n._( 'Download' ),\n\t\t\t\t\tid: this.script_name + 'download'\n\t\t\t\t}\n\t\t\t},\n\t\t\texclude: [\n\t\t\t\t'export_excel',\n\t\t\t\t'mass_edit',\n\t\t\t\t'copy'\n\t\t\t],\n\t\t\tinclude: [\n\t\t\t\t{\n\t\t\t\t\tlabel: $.i18n._( 'Download' ),\n\t\t\t\t\tid: 'download',\n\t\t\t\t\tgroup: 'download',\n\t\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tlabel: $.i18n._( 'View' ),\n\t\t\t\t\tid: 'view_file',\n\t\t\t\t\tgroup: 'download',\n\t\t\t\t\t}\n\t\t\t]\n\t\t};\n\n\t\treturn context_menu_model;\n\t}\n\n\tsetCustomDefaultMenuIcon( id, context_btn, grid_selected_length ) {\n\t\tswitch ( id ) {\n\t\t\tcase 'download':\n\t\t\tcase 'view_file':\n\t\t\t\tthis.setDefaultMenuDownIcon( context_btn, grid_selected_length );\n\t\t\t\tbreak;\n\t\t}\n\t}\n\n\tsetDefaultMenuDownIcon( context_btn, grid_selected_length, pId ) {\n\n\t\tif ( grid_selected_length === 1 ) {\n\t\t\tContextMenuManager.disableMenuItem( this.determineContextMenuMountAttributes().id, context_btn.id, true );\n\t\t} else {\n\t\t\tContextMenuManager.disableMenuItem( this.determineContextMenuMountAttributes().id, context_btn.id, false );\n\t\t}\n\t}\n\n\t//\n\t// setDefaultMenuCancelIcon( context_btn, grid_selected_length, pId ) {\n\t// \tif ( this.sub_view_mode ) {\n\t// \t\tcontext_btn.addClass( 'disable-image' );\n\t// \t}\n\t// },\n\n\tsetCustomEditMenuIcon( id, context_btn ) {\n\t\tswitch ( id ) {\n\t\t\tcase 'download':\n\t\t\tcase 'view_file':\n\t\t\t\tthis.setEditMenuDownloadIcon( context_btn );\n\t\t\t\tbreak;\n\t\t}\n\t}\n\n\tonCustomContextClick( id ) {\n\t\tswitch ( id ) {\n\t\t\tcase 'download':\n\t\t\t\tthis.onDownloadClick();\n\t\t\t\tbreak;\n\t\t}\n\t}\n\n\tonAddClick() {\n\t\tvar $this = this;\n\t\tthis.setCurrentEditViewState( 'new' );\n\t\t$this.openEditView();\n\n\t\tif ( this.sub_view_mode ) {\n\t\t\tif ( this.parent_key === 'document_id' ) {\n\n\t\t\t\tvar args = this.parent_value;\n\n\t\t\t\t$this.api['get' + $this.api.key_name + 'DefaultData']( args, {\n\t\t\t\t\tonResult: function( result ) {\n\t\t\t\t\t\t$this.onAddResult( result );\n\n\t\t\t\t\t}\n\t\t\t\t} );\n\t\t\t}\n\n\t\t} else {\n\n\t\t\t$this.api['get' + $this.api.key_name + 'DefaultData']( {\n\t\t\t\tonResult: function( result ) {\n\t\t\t\t\t$this.onAddResult( result );\n\n\t\t\t\t}\n\t\t\t} );\n\t\t}\n\t}\n\n\tsetEditMenuDownloadIcon( context_btn, pId ) {\n\t\tif ( !this.current_edit_record || !this.current_edit_record.id ) {\n\t\t\tContextMenuManager.disableMenuItem( this.determineContextMenuMountAttributes().id, context_btn.id, false );\n\t\t}\n\t}\n\n\thandleSaveResult( document_revision_result, super_fun_name ) {\n\t\tvar $this = this;\n\t\tvar document_revision_id = ( document_revision_result.getResult() === true && this.current_edit_record.id ) ? this.current_edit_record.id : document_revision_result.getResult();\n\n\t\tvar file_data = $this.file_browser.getValue();\n\n\t\t//Save a document revision data if has upload file, otherwise don't\n\t\tif ( file_data ) {\n\n\t\t\t$this.api.uploadFile( file_data, 'object_type=document_revision&object_id=' + document_revision_id, {\n\t\t\t\tonResult: ( upload_file_result ) => {\n\t\t\t\t\tsuper[super_fun_name]( document_revision_result );\n\t\t\t\t}\n\t\t\t} );\n\n\t\t} else {\n\t\t\tsuper[super_fun_name]( document_revision_result );\n\t\t}\n\t}\n\n\tonSaveResult( result ) {\n\t\treturn this.handleSaveResult( result, 'onSaveResult' );\n\t}\n\n\tonSaveAndContinueResult( result ) {\n\t\treturn this.handleSaveResult( result, 'onSaveAndContinueResult' );\n\t}\n\n\tonSaveAndNewResult( result ) {\n\t\treturn this.handleSaveResult( result, 'onSaveAndNewResult' );\n\t}\n\n\tonSaveAndCopyResult( result ) {\n\t\treturn this.handleSaveResult( result, 'onSaveAndCopyResult' );\n\t}\n\n\tonCustomContextClick( id ) {\n\t\tswitch ( id ) {\n\t\t\tcase 'download':\n\t\t\tcase 'view_file':\n\t\t\t\tthis.onDownloadClick();\n\t\t\t\tbreak;\n\t\t}\n\t}\n\n\tdoFormIFrameCall() {\n\t\tvar url = ServiceCaller.getURLByObjectType( 'file_download' ) + '&object_type=document&parent_id=' + this.current_edit_record.document_id + '&object_id=' + this.current_edit_record.id;\n\t\tGlobal.APIFileDownload( null, null, null, url );\n\t}\n\n\tonDownloadClick() {\n\t\tvar $this = this;\n\t\tif ( this.edit_view && this.current_edit_record.id ) {\n\t\t\tthis.doFormIFrameCall();\n\n\t\t} else {\n\n\t\t\tvar filter = {};\n\n\t\t\tvar selectedId;\n\t\t\tvar grid_selected_id_array = this.getGridSelectIdArray();\n\t\t\tvar grid_selected_length = grid_selected_id_array.length;\n\t\t\tif ( grid_selected_length > 0 ) {\n\t\t\t\tselectedId = grid_selected_id_array[0];\n\t\t\t}\n\t\t\tfilter.filter_data = {};\n\t\t\tfilter.filter_data.id = [selectedId];\n\n\t\t\tvar result = this.api['get' + this.api.key_name]( filter, { async: false } );\n\t\t\tvar result_data = result.getResult();\n\n\t\t\tif ( !result_data ) {\n\t\t\t\tresult_data = [];\n\t\t\t}\n\n\t\t\tresult_data = result_data[0];\n\n\t\t\t$this.current_edit_record = result_data;\n\n\t\t\t$this.doFormIFrameCall();\n\n\t\t}\n\t}\n\n\tbuildEditViewUI() {\n\n\t\tsuper.buildEditViewUI();\n\n\t\tvar $this = this;\n\n\t\tvar tab_model = {\n\t\t\t'tab_revision': { 'label': $.i18n._( 'Revision' ) },\n\t\t};\n\t\tthis.setTabModel( tab_model );\n\n\t\tthis.navigation.AComboBox( {\n\t\t\tapi_class: TTAPI.APIDocumentRevision,\n\t\t\tid: this.script_name + '_navigation',\n\t\t\tallow_multiple_selection: false,\n\t\t\tlayout_name: 'global_document_revison',\n\t\t\tnavigation_mode: true,\n\t\t\tshow_search_inputs: true\n\t\t} );\n\n\t\tthis.setNavigation();\n\n\t\t//Tab 0 start\n\n\t\tvar tab_revision = this.edit_view_tab.find( '#tab_revision' );\n\n\t\tvar tab_revision_column1 = tab_revision.find( '.first-column' );\n\n\t\tthis.edit_view_tabs[0] = [];\n\n\t\tthis.edit_view_tabs[0].push( tab_revision_column1 );\n\n\t\t// Revision\n\n\t\tvar form_item_input = Global.loadWidgetByName( FormItemType.TEXT_INPUT );\n\n\t\tform_item_input.TTextInput( { field: 'revision', width: 114 } );\n\t\tthis.addEditFieldToColumn( $.i18n._( 'Revision' ), form_item_input, tab_revision_column1, '' );\n\n\t\t// File\n\t\tform_item_input = Global.loadWidgetByName( FormItemType.FILE_BROWSER );\n\n\t\tthis.file_browser = form_item_input.TImageBrowser( { field: '', name: 'filedata', accept_filter: '*' } );\n\n\t\tthis.addEditFieldToColumn( $.i18n._( 'File' ), form_item_input, tab_revision_column1, '', null, false, true );\n\n\t\t// Change log\n\t\tform_item_input = Global.loadWidgetByName( FormItemType.TEXT_AREA );\n\t\tform_item_input.TTextArea( { field: 'change_log' } );\n\t\tthis.addEditFieldToColumn( $.i18n._( 'Change Log' ), form_item_input, tab_revision_column1, '', null, false, true );\n\n\t}\n\n}\n\nDocumentRevisionViewController.loadSubView = function( container, beforeViewLoadedFun, afterViewLoadedFun ) {\n\n\tGlobal.loadViewSource( 'DocumentRevision', 'SubDocumentRevisionView.html', function( result ) {\n\t\tvar args = {};\n\t\tvar template = _.template( result );\n\n\t\tif ( Global.isSet( beforeViewLoadedFun ) ) {\n\t\t\tbeforeViewLoadedFun();\n\t\t}\n\n\t\tif ( Global.isSet( container ) ) {\n\t\t\tcontainer.html( template( args ) );\n\t\t\tif ( Global.isSet( afterViewLoadedFun ) ) {\n\t\t\t\tTTPromise.wait( 'BaseViewController', 'initialize', function() {\n\t\t\t\t\tafterViewLoadedFun( sub_document_revision_view_controller );\n\t\t\t\t} );\n\t\t\t}\n\t\t}\n\t} );\n};//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNDEyMC5qcyIsIm1hcHBpbmdzIjoiOzs7Ozs7QUFBTztBQUNQLDJCQUEyQjtBQUMzQixFQUFFLENBQUM7QUFDSDtBQUNBLElBQUk7O0FBRUo7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwyQkFBMkIsQ0FBQztBQUM1QiwwQkFBMEIsQ0FBQztBQUMzQjtBQUNBOztBQUVBO0FBQ0E7QUFDQSxJQUFJO0FBQ0o7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsWUFBWSxDQUFDO0FBQ2I7QUFDQTtBQUNBLElBQUk7QUFDSjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFlBQVksQ0FBQztBQUNiO0FBQ0E7QUFDQSxNQUFNO0FBQ047QUFDQSxZQUFZLENBQUM7QUFDYjtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0EsSUFBSTtBQUNKO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsS0FBSzs7QUFFTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0EsTUFBTTtBQUNOOztBQUVBLElBQUk7O0FBRUo7QUFDQTtBQUNBOztBQUVBO0FBQ0EsS0FBSztBQUNMO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7O0FBRUwsSUFBSTtBQUNKO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQSxJQUFJOztBQUVKOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsK0RBQStELGVBQWU7QUFDOUU7O0FBRUE7QUFDQTtBQUNBOztBQUVBOztBQUVBOztBQUVBOztBQUVBO0FBQ0E7O0FBRUE7O0FBRUE7O0FBRUE7O0FBRUE7QUFDQSxxQkFBcUIsU0FBUyxDQUFDLHVCQUF1QjtBQUN0RDtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSTs7QUFFSjs7QUFFQTs7QUFFQTs7QUFFQTs7QUFFQTs7QUFFQTs7QUFFQTs7QUFFQTs7QUFFQSxnQ0FBZ0MsZ0NBQWdDO0FBQ2hFLDZCQUE2QixDQUFDOztBQUU5QjtBQUNBOztBQUVBLHVEQUF1RCxrREFBa0Q7O0FBRXpHLDZCQUE2QixDQUFDOztBQUU5QjtBQUNBO0FBQ0EsK0JBQStCLHNCQUFzQjtBQUNyRCw2QkFBNkIsQ0FBQzs7QUFFOUI7O0FBRUE7O0FBRUE7O0FBRUE7QUFDQTtBQUNBLGlCQUFpQixDQUFDOztBQUVsQjtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE1BQU07QUFDTjtBQUNBO0FBQ0EsR0FBRztBQUNIIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vaW50ZXJmYWNlL2h0bWw1L3ZpZXdzL2RvY3VtZW50L0RvY3VtZW50UmV2aXNpb25WaWV3Q29udHJvbGxlci5qcz80Mjg2Il0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjbGFzcyBEb2N1bWVudFJldmlzaW9uVmlld0NvbnRyb2xsZXIgZXh0ZW5kcyBCYXNlVmlld0NvbnRyb2xsZXIge1xuXHRjb25zdHJ1Y3Rvciggb3B0aW9ucyA9IHt9ICkge1xuXHRcdF8uZGVmYXVsdHMoIG9wdGlvbnMsIHtcblx0XHRcdGVsOiAnI2RvY3VtZW50X3JldmlzaW9uX3ZpZXdfY29udGFpbmVyJ1xuXHRcdH0gKTtcblxuXHRcdHN1cGVyKCBvcHRpb25zICk7XG5cdH1cblxuXHRpbml0KCBvcHRpb25zICkge1xuXG5cdFx0Ly90aGlzLl9zdXBlcignaW5pdGlhbGl6ZScsIG9wdGlvbnMgKTtcblx0XHR0aGlzLmVkaXRfdmlld190cGwgPSAnRG9jdW1lbnRSZXZpc2lvbkVkaXRWaWV3Lmh0bWwnO1xuXHRcdHRoaXMucGVybWlzc2lvbl9pZCA9ICdkb2N1bWVudCc7XG5cdFx0dGhpcy52aWV3SWQgPSAnRG9jdW1lbnRSZXZpc2lvbic7XG5cdFx0dGhpcy5zY3JpcHRfbmFtZSA9ICdEb2N1bWVudFJldmlzaW9uVmlldyc7XG5cdFx0dGhpcy50YWJsZV9uYW1lX2tleSA9ICdkb2N1bWVudF9yZXZpc2lvbic7XG5cdFx0dGhpcy5jb250ZXh0X21lbnVfbmFtZSA9ICQuaTE4bi5fKCAnUmV2aXNpb25zJyApO1xuXHRcdHRoaXMubmF2aWdhdGlvbl9sYWJlbCA9ICQuaTE4bi5fKCAnUmV2aXNpb24nICk7XG5cdFx0dGhpcy5hcGkgPSBUVEFQSS5BUElEb2N1bWVudFJldmlzaW9uO1xuXHRcdHRoaXMucmVuZGVyKCk7XG5cblx0XHRpZiAoIHRoaXMuc3ViX3ZpZXdfbW9kZSApIHtcblx0XHRcdHRoaXMuYnVpbGRDb250ZXh0TWVudSggdHJ1ZSApO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHR0aGlzLmJ1aWxkQ29udGV4dE1lbnUoKTtcblx0XHR9XG5cblx0XHQvL2NhbGwgaW5pdCBkYXRhIGluIHBhcmVudCB2aWV3XG5cdFx0aWYgKCAhdGhpcy5zdWJfdmlld19tb2RlICkge1xuXHRcdFx0dGhpcy5pbml0RGF0YSgpO1xuXHRcdH1cblx0fVxuXG5cdGdldEN1c3RvbUNvbnRleHRNZW51TW9kZWwoKSB7XG5cdFx0dmFyIGNvbnRleHRfbWVudV9tb2RlbCA9IHtcblx0XHRcdGdyb3Vwczoge1xuXHRcdFx0XHRkb3dubG9hZDoge1xuXHRcdFx0XHRcdGxhYmVsOiAkLmkxOG4uXyggJ0Rvd25sb2FkJyApLFxuXHRcdFx0XHRcdGlkOiB0aGlzLnNjcmlwdF9uYW1lICsgJ2Rvd25sb2FkJ1xuXHRcdFx0XHR9XG5cdFx0XHR9LFxuXHRcdFx0ZXhjbHVkZTogW1xuXHRcdFx0XHQnZXhwb3J0X2V4Y2VsJyxcblx0XHRcdFx0J21hc3NfZWRpdCcsXG5cdFx0XHRcdCdjb3B5J1xuXHRcdFx0XSxcblx0XHRcdGluY2x1ZGU6IFtcblx0XHRcdFx0e1xuXHRcdFx0XHRcdGxhYmVsOiAkLmkxOG4uXyggJ0Rvd25sb2FkJyApLFxuXHRcdFx0XHRcdGlkOiAnZG93bmxvYWQnLFxuXHRcdFx0XHRcdGdyb3VwOiAnZG93bmxvYWQnLFxuXHRcdFx0XHRcdH0sXG5cdFx0XHRcdHtcblx0XHRcdFx0XHRsYWJlbDogJC5pMThuLl8oICdWaWV3JyApLFxuXHRcdFx0XHRcdGlkOiAndmlld19maWxlJyxcblx0XHRcdFx0XHRncm91cDogJ2Rvd25sb2FkJyxcblx0XHRcdFx0XHR9XG5cdFx0XHRdXG5cdFx0fTtcblxuXHRcdHJldHVybiBjb250ZXh0X21lbnVfbW9kZWw7XG5cdH1cblxuXHRzZXRDdXN0b21EZWZhdWx0TWVudUljb24oIGlkLCBjb250ZXh0X2J0biwgZ3JpZF9zZWxlY3RlZF9sZW5ndGggKSB7XG5cdFx0c3dpdGNoICggaWQgKSB7XG5cdFx0XHRjYXNlICdkb3dubG9hZCc6XG5cdFx0XHRjYXNlICd2aWV3X2ZpbGUnOlxuXHRcdFx0XHR0aGlzLnNldERlZmF1bHRNZW51RG93bkljb24oIGNvbnRleHRfYnRuLCBncmlkX3NlbGVjdGVkX2xlbmd0aCApO1xuXHRcdFx0XHRicmVhaztcblx0XHR9XG5cdH1cblxuXHRzZXREZWZhdWx0TWVudURvd25JY29uKCBjb250ZXh0X2J0biwgZ3JpZF9zZWxlY3RlZF9sZW5ndGgsIHBJZCApIHtcblxuXHRcdGlmICggZ3JpZF9zZWxlY3RlZF9sZW5ndGggPT09IDEgKSB7XG5cdFx0XHRDb250ZXh0TWVudU1hbmFnZXIuZGlzYWJsZU1lbnVJdGVtKCB0aGlzLmRldGVybWluZUNvbnRleHRNZW51TW91bnRBdHRyaWJ1dGVzKCkuaWQsIGNvbnRleHRfYnRuLmlkLCB0cnVlICk7XG5cdFx0fSBlbHNlIHtcblx0XHRcdENvbnRleHRNZW51TWFuYWdlci5kaXNhYmxlTWVudUl0ZW0oIHRoaXMuZGV0ZXJtaW5lQ29udGV4dE1lbnVNb3VudEF0dHJpYnV0ZXMoKS5pZCwgY29udGV4dF9idG4uaWQsIGZhbHNlICk7XG5cdFx0fVxuXHR9XG5cblx0Ly9cblx0Ly8gc2V0RGVmYXVsdE1lbnVDYW5jZWxJY29uKCBjb250ZXh0X2J0biwgZ3JpZF9zZWxlY3RlZF9sZW5ndGgsIHBJZCApIHtcblx0Ly8gXHRpZiAoIHRoaXMuc3ViX3ZpZXdfbW9kZSApIHtcblx0Ly8gXHRcdGNvbnRleHRfYnRuLmFkZENsYXNzKCAnZGlzYWJsZS1pbWFnZScgKTtcblx0Ly8gXHR9XG5cdC8vIH0sXG5cblx0c2V0Q3VzdG9tRWRpdE1lbnVJY29uKCBpZCwgY29udGV4dF9idG4gKSB7XG5cdFx0c3dpdGNoICggaWQgKSB7XG5cdFx0XHRjYXNlICdkb3dubG9hZCc6XG5cdFx0XHRjYXNlICd2aWV3X2ZpbGUnOlxuXHRcdFx0XHR0aGlzLnNldEVkaXRNZW51RG93bmxvYWRJY29uKCBjb250ZXh0X2J0biApO1xuXHRcdFx0XHRicmVhaztcblx0XHR9XG5cdH1cblxuXHRvbkN1c3RvbUNvbnRleHRDbGljayggaWQgKSB7XG5cdFx0c3dpdGNoICggaWQgKSB7XG5cdFx0XHRjYXNlICdkb3dubG9hZCc6XG5cdFx0XHRcdHRoaXMub25Eb3dubG9hZENsaWNrKCk7XG5cdFx0XHRcdGJyZWFrO1xuXHRcdH1cblx0fVxuXG5cdG9uQWRkQ2xpY2soKSB7XG5cdFx0dmFyICR0aGlzID0gdGhpcztcblx0XHR0aGlzLnNldEN1cnJlbnRFZGl0Vmlld1N0YXRlKCAnbmV3JyApO1xuXHRcdCR0aGlzLm9wZW5FZGl0VmlldygpO1xuXG5cdFx0aWYgKCB0aGlzLnN1Yl92aWV3X21vZGUgKSB7XG5cdFx0XHRpZiAoIHRoaXMucGFyZW50X2tleSA9PT0gJ2RvY3VtZW50X2lkJyApIHtcblxuXHRcdFx0XHR2YXIgYXJncyA9IHRoaXMucGFyZW50X3ZhbHVlO1xuXG5cdFx0XHRcdCR0aGlzLmFwaVsnZ2V0JyArICR0aGlzLmFwaS5rZXlfbmFtZSArICdEZWZhdWx0RGF0YSddKCBhcmdzLCB7XG5cdFx0XHRcdFx0b25SZXN1bHQ6IGZ1bmN0aW9uKCByZXN1bHQgKSB7XG5cdFx0XHRcdFx0XHQkdGhpcy5vbkFkZFJlc3VsdCggcmVzdWx0ICk7XG5cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH0gKTtcblx0XHRcdH1cblxuXHRcdH0gZWxzZSB7XG5cblx0XHRcdCR0aGlzLmFwaVsnZ2V0JyArICR0aGlzLmFwaS5rZXlfbmFtZSArICdEZWZhdWx0RGF0YSddKCB7XG5cdFx0XHRcdG9uUmVzdWx0OiBmdW5jdGlvbiggcmVzdWx0ICkge1xuXHRcdFx0XHRcdCR0aGlzLm9uQWRkUmVzdWx0KCByZXN1bHQgKTtcblxuXHRcdFx0XHR9XG5cdFx0XHR9ICk7XG5cdFx0fVxuXHR9XG5cblx0c2V0RWRpdE1lbnVEb3dubG9hZEljb24oIGNvbnRleHRfYnRuLCBwSWQgKSB7XG5cdFx0aWYgKCAhdGhpcy5jdXJyZW50X2VkaXRfcmVjb3JkIHx8ICF0aGlzLmN1cnJlbnRfZWRpdF9yZWNvcmQuaWQgKSB7XG5cdFx0XHRDb250ZXh0TWVudU1hbmFnZXIuZGlzYWJsZU1lbnVJdGVtKCB0aGlzLmRldGVybWluZUNvbnRleHRNZW51TW91bnRBdHRyaWJ1dGVzKCkuaWQsIGNvbnRleHRfYnRuLmlkLCBmYWxzZSApO1xuXHRcdH1cblx0fVxuXG5cdGhhbmRsZVNhdmVSZXN1bHQoIGRvY3VtZW50X3JldmlzaW9uX3Jlc3VsdCwgc3VwZXJfZnVuX25hbWUgKSB7XG5cdFx0dmFyICR0aGlzID0gdGhpcztcblx0XHR2YXIgZG9jdW1lbnRfcmV2aXNpb25faWQgPSAoIGRvY3VtZW50X3JldmlzaW9uX3Jlc3VsdC5nZXRSZXN1bHQoKSA9PT0gdHJ1ZSAmJiB0aGlzLmN1cnJlbnRfZWRpdF9yZWNvcmQuaWQgKSA/IHRoaXMuY3VycmVudF9lZGl0X3JlY29yZC5pZCA6IGRvY3VtZW50X3JldmlzaW9uX3Jlc3VsdC5nZXRSZXN1bHQoKTtcblxuXHRcdHZhciBmaWxlX2RhdGEgPSAkdGhpcy5maWxlX2Jyb3dzZXIuZ2V0VmFsdWUoKTtcblxuXHRcdC8vU2F2ZSBhIGRvY3VtZW50IHJldmlzaW9uIGRhdGEgaWYgaGFzIHVwbG9hZCBmaWxlLCBvdGhlcndpc2UgZG9uJ3Rcblx0XHRpZiAoIGZpbGVfZGF0YSApIHtcblxuXHRcdFx0JHRoaXMuYXBpLnVwbG9hZEZpbGUoIGZpbGVfZGF0YSwgJ29iamVjdF90eXBlPWRvY3VtZW50X3JldmlzaW9uJm9iamVjdF9pZD0nICsgZG9jdW1lbnRfcmV2aXNpb25faWQsIHtcblx0XHRcdFx0b25SZXN1bHQ6ICggdXBsb2FkX2ZpbGVfcmVzdWx0ICkgPT4ge1xuXHRcdFx0XHRcdHN1cGVyW3N1cGVyX2Z1bl9uYW1lXSggZG9jdW1lbnRfcmV2aXNpb25fcmVzdWx0ICk7XG5cdFx0XHRcdH1cblx0XHRcdH0gKTtcblxuXHRcdH0gZWxzZSB7XG5cdFx0XHRzdXBlcltzdXBlcl9mdW5fbmFtZV0oIGRvY3VtZW50X3JldmlzaW9uX3Jlc3VsdCApO1xuXHRcdH1cblx0fVxuXG5cdG9uU2F2ZVJlc3VsdCggcmVzdWx0ICkge1xuXHRcdHJldHVybiB0aGlzLmhhbmRsZVNhdmVSZXN1bHQoIHJlc3VsdCwgJ29uU2F2ZVJlc3VsdCcgKTtcblx0fVxuXG5cdG9uU2F2ZUFuZENvbnRpbnVlUmVzdWx0KCByZXN1bHQgKSB7XG5cdFx0cmV0dXJuIHRoaXMuaGFuZGxlU2F2ZVJlc3VsdCggcmVzdWx0LCAnb25TYXZlQW5kQ29udGludWVSZXN1bHQnICk7XG5cdH1cblxuXHRvblNhdmVBbmROZXdSZXN1bHQoIHJlc3VsdCApIHtcblx0XHRyZXR1cm4gdGhpcy5oYW5kbGVTYXZlUmVzdWx0KCByZXN1bHQsICdvblNhdmVBbmROZXdSZXN1bHQnICk7XG5cdH1cblxuXHRvblNhdmVBbmRDb3B5UmVzdWx0KCByZXN1bHQgKSB7XG5cdFx0cmV0dXJuIHRoaXMuaGFuZGxlU2F2ZVJlc3VsdCggcmVzdWx0LCAnb25TYXZlQW5kQ29weVJlc3VsdCcgKTtcblx0fVxuXG5cdG9uQ3VzdG9tQ29udGV4dENsaWNrKCBpZCApIHtcblx0XHRzd2l0Y2ggKCBpZCApIHtcblx0XHRcdGNhc2UgJ2Rvd25sb2FkJzpcblx0XHRcdGNhc2UgJ3ZpZXdfZmlsZSc6XG5cdFx0XHRcdHRoaXMub25Eb3dubG9hZENsaWNrKCk7XG5cdFx0XHRcdGJyZWFrO1xuXHRcdH1cblx0fVxuXG5cdGRvRm9ybUlGcmFtZUNhbGwoKSB7XG5cdFx0dmFyIHVybCA9IFNlcnZpY2VDYWxsZXIuZ2V0VVJMQnlPYmplY3RUeXBlKCAnZmlsZV9kb3dubG9hZCcgKSArICcmb2JqZWN0X3R5cGU9ZG9jdW1lbnQmcGFyZW50X2lkPScgKyB0aGlzLmN1cnJlbnRfZWRpdF9yZWNvcmQuZG9jdW1lbnRfaWQgKyAnJm9iamVjdF9pZD0nICsgdGhpcy5jdXJyZW50X2VkaXRfcmVjb3JkLmlkO1xuXHRcdEdsb2JhbC5BUElGaWxlRG93bmxvYWQoIG51bGwsIG51bGwsIG51bGwsIHVybCApO1xuXHR9XG5cblx0b25Eb3dubG9hZENsaWNrKCkge1xuXHRcdHZhciAkdGhpcyA9IHRoaXM7XG5cdFx0aWYgKCB0aGlzLmVkaXRfdmlldyAmJiB0aGlzLmN1cnJlbnRfZWRpdF9yZWNvcmQuaWQgKSB7XG5cdFx0XHR0aGlzLmRvRm9ybUlGcmFtZUNhbGwoKTtcblxuXHRcdH0gZWxzZSB7XG5cblx0XHRcdHZhciBmaWx0ZXIgPSB7fTtcblxuXHRcdFx0dmFyIHNlbGVjdGVkSWQ7XG5cdFx0XHR2YXIgZ3JpZF9zZWxlY3RlZF9pZF9hcnJheSA9IHRoaXMuZ2V0R3JpZFNlbGVjdElkQXJyYXkoKTtcblx0XHRcdHZhciBncmlkX3NlbGVjdGVkX2xlbmd0aCA9IGdyaWRfc2VsZWN0ZWRfaWRfYXJyYXkubGVuZ3RoO1xuXHRcdFx0aWYgKCBncmlkX3NlbGVjdGVkX2xlbmd0aCA+IDAgKSB7XG5cdFx0XHRcdHNlbGVjdGVkSWQgPSBncmlkX3NlbGVjdGVkX2lkX2FycmF5WzBdO1xuXHRcdFx0fVxuXHRcdFx0ZmlsdGVyLmZpbHRlcl9kYXRhID0ge307XG5cdFx0XHRmaWx0ZXIuZmlsdGVyX2RhdGEuaWQgPSBbc2VsZWN0ZWRJZF07XG5cblx0XHRcdHZhciByZXN1bHQgPSB0aGlzLmFwaVsnZ2V0JyArIHRoaXMuYXBpLmtleV9uYW1lXSggZmlsdGVyLCB7IGFzeW5jOiBmYWxzZSB9ICk7XG5cdFx0XHR2YXIgcmVzdWx0X2RhdGEgPSByZXN1bHQuZ2V0UmVzdWx0KCk7XG5cblx0XHRcdGlmICggIXJlc3VsdF9kYXRhICkge1xuXHRcdFx0XHRyZXN1bHRfZGF0YSA9IFtdO1xuXHRcdFx0fVxuXG5cdFx0XHRyZXN1bHRfZGF0YSA9IHJlc3VsdF9kYXRhWzBdO1xuXG5cdFx0XHQkdGhpcy5jdXJyZW50X2VkaXRfcmVjb3JkID0gcmVzdWx0X2RhdGE7XG5cblx0XHRcdCR0aGlzLmRvRm9ybUlGcmFtZUNhbGwoKTtcblxuXHRcdH1cblx0fVxuXG5cdGJ1aWxkRWRpdFZpZXdVSSgpIHtcblxuXHRcdHN1cGVyLmJ1aWxkRWRpdFZpZXdVSSgpO1xuXG5cdFx0dmFyICR0aGlzID0gdGhpcztcblxuXHRcdHZhciB0YWJfbW9kZWwgPSB7XG5cdFx0XHQndGFiX3JldmlzaW9uJzogeyAnbGFiZWwnOiAkLmkxOG4uXyggJ1JldmlzaW9uJyApIH0sXG5cdFx0fTtcblx0XHR0aGlzLnNldFRhYk1vZGVsKCB0YWJfbW9kZWwgKTtcblxuXHRcdHRoaXMubmF2aWdhdGlvbi5BQ29tYm9Cb3goIHtcblx0XHRcdGFwaV9jbGFzczogVFRBUEkuQVBJRG9jdW1lbnRSZXZpc2lvbixcblx0XHRcdGlkOiB0aGlzLnNjcmlwdF9uYW1lICsgJ19uYXZpZ2F0aW9uJyxcblx0XHRcdGFsbG93X211bHRpcGxlX3NlbGVjdGlvbjogZmFsc2UsXG5cdFx0XHRsYXlvdXRfbmFtZTogJ2dsb2JhbF9kb2N1bWVudF9yZXZpc29uJyxcblx0XHRcdG5hdmlnYXRpb25fbW9kZTogdHJ1ZSxcblx0XHRcdHNob3dfc2VhcmNoX2lucHV0czogdHJ1ZVxuXHRcdH0gKTtcblxuXHRcdHRoaXMuc2V0TmF2aWdhdGlvbigpO1xuXG5cdFx0Ly9UYWIgMCBzdGFydFxuXG5cdFx0dmFyIHRhYl9yZXZpc2lvbiA9IHRoaXMuZWRpdF92aWV3X3RhYi5maW5kKCAnI3RhYl9yZXZpc2lvbicgKTtcblxuXHRcdHZhciB0YWJfcmV2aXNpb25fY29sdW1uMSA9IHRhYl9yZXZpc2lvbi5maW5kKCAnLmZpcnN0LWNvbHVtbicgKTtcblxuXHRcdHRoaXMuZWRpdF92aWV3X3RhYnNbMF0gPSBbXTtcblxuXHRcdHRoaXMuZWRpdF92aWV3X3RhYnNbMF0ucHVzaCggdGFiX3JldmlzaW9uX2NvbHVtbjEgKTtcblxuXHRcdC8vIFJldmlzaW9uXG5cblx0XHR2YXIgZm9ybV9pdGVtX2lucHV0ID0gR2xvYmFsLmxvYWRXaWRnZXRCeU5hbWUoIEZvcm1JdGVtVHlwZS5URVhUX0lOUFVUICk7XG5cblx0XHRmb3JtX2l0ZW1faW5wdXQuVFRleHRJbnB1dCggeyBmaWVsZDogJ3JldmlzaW9uJywgd2lkdGg6IDExNCB9ICk7XG5cdFx0dGhpcy5hZGRFZGl0RmllbGRUb0NvbHVtbiggJC5pMThuLl8oICdSZXZpc2lvbicgKSwgZm9ybV9pdGVtX2lucHV0LCB0YWJfcmV2aXNpb25fY29sdW1uMSwgJycgKTtcblxuXHRcdC8vIEZpbGVcblx0XHRmb3JtX2l0ZW1faW5wdXQgPSBHbG9iYWwubG9hZFdpZGdldEJ5TmFtZSggRm9ybUl0ZW1UeXBlLkZJTEVfQlJPV1NFUiApO1xuXG5cdFx0dGhpcy5maWxlX2Jyb3dzZXIgPSBmb3JtX2l0ZW1faW5wdXQuVEltYWdlQnJvd3NlciggeyBmaWVsZDogJycsIG5hbWU6ICdmaWxlZGF0YScsIGFjY2VwdF9maWx0ZXI6ICcqJyB9ICk7XG5cblx0XHR0aGlzLmFkZEVkaXRGaWVsZFRvQ29sdW1uKCAkLmkxOG4uXyggJ0ZpbGUnICksIGZvcm1faXRlbV9pbnB1dCwgdGFiX3JldmlzaW9uX2NvbHVtbjEsICcnLCBudWxsLCBmYWxzZSwgdHJ1ZSApO1xuXG5cdFx0Ly8gQ2hhbmdlIGxvZ1xuXHRcdGZvcm1faXRlbV9pbnB1dCA9IEdsb2JhbC5sb2FkV2lkZ2V0QnlOYW1lKCBGb3JtSXRlbVR5cGUuVEVYVF9BUkVBICk7XG5cdFx0Zm9ybV9pdGVtX2lucHV0LlRUZXh0QXJlYSggeyBmaWVsZDogJ2NoYW5nZV9sb2cnIH0gKTtcblx0XHR0aGlzLmFkZEVkaXRGaWVsZFRvQ29sdW1uKCAkLmkxOG4uXyggJ0NoYW5nZSBMb2cnICksIGZvcm1faXRlbV9pbnB1dCwgdGFiX3JldmlzaW9uX2NvbHVtbjEsICcnLCBudWxsLCBmYWxzZSwgdHJ1ZSApO1xuXG5cdH1cblxufVxuXG5Eb2N1bWVudFJldmlzaW9uVmlld0NvbnRyb2xsZXIubG9hZFN1YlZpZXcgPSBmdW5jdGlvbiggY29udGFpbmVyLCBiZWZvcmVWaWV3TG9hZGVkRnVuLCBhZnRlclZpZXdMb2FkZWRGdW4gKSB7XG5cblx0R2xvYmFsLmxvYWRWaWV3U291cmNlKCAnRG9jdW1lbnRSZXZpc2lvbicsICdTdWJEb2N1bWVudFJldmlzaW9uVmlldy5odG1sJywgZnVuY3Rpb24oIHJlc3VsdCApIHtcblx0XHR2YXIgYXJncyA9IHt9O1xuXHRcdHZhciB0ZW1wbGF0ZSA9IF8udGVtcGxhdGUoIHJlc3VsdCApO1xuXG5cdFx0aWYgKCBHbG9iYWwuaXNTZXQoIGJlZm9yZVZpZXdMb2FkZWRGdW4gKSApIHtcblx0XHRcdGJlZm9yZVZpZXdMb2FkZWRGdW4oKTtcblx0XHR9XG5cblx0XHRpZiAoIEdsb2JhbC5pc1NldCggY29udGFpbmVyICkgKSB7XG5cdFx0XHRjb250YWluZXIuaHRtbCggdGVtcGxhdGUoIGFyZ3MgKSApO1xuXHRcdFx0aWYgKCBHbG9iYWwuaXNTZXQoIGFmdGVyVmlld0xvYWRlZEZ1biApICkge1xuXHRcdFx0XHRUVFByb21pc2Uud2FpdCggJ0Jhc2VWaWV3Q29udHJvbGxlcicsICdpbml0aWFsaXplJywgZnVuY3Rpb24oKSB7XG5cdFx0XHRcdFx0YWZ0ZXJWaWV3TG9hZGVkRnVuKCBzdWJfZG9jdW1lbnRfcmV2aXNpb25fdmlld19jb250cm9sbGVyICk7XG5cdFx0XHRcdH0gKTtcblx0XHRcdH1cblx0XHR9XG5cdH0gKTtcbn07Il0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///4120\n")}}]);