????
Current Path : C:/inetpub/vhost/dbadm.gdtsolutions.vn/web/js/ |
Current File : C:/inetpub/vhost/dbadm.gdtsolutions.vn/web/js/plugin-data-viewer-cc98f2b55febef7eea2d.js |
/*! For license information please see ../license.txt */ "use strict";(self.webpackChunk_cloudbeaver_product_default=self.webpackChunk_cloudbeaver_product_default||[]).push([[63190],{70199:(e,t,s)=>{s.d(t,{B:()=>ContainerDataSource});var a=s(94866),i=s(43974),n=s(35721),r=s(84941),o=s(78186),l=s(63641);class ContainerDataSource extends l.b{get canCancel(){return this.currentTask?.cancellable||!1}get cancelled(){return this.currentTask?.cancelled||!1}constructor(e,t,s,i){super(e,t,s),this.connectionExecutionContextService=i,this.currentTask=null,this.executionContext=null,(0,a.Gn)(this,{currentTask:a.sH.ref,canCancel:a.EW})}isReadonly(e){return super.isReadonly(e)||!1===this.getResult(e)?.data?.hasRowIdentifier}isDisabled(e){return!this.getResult(e)?.data&&null===this.error}async cancel(){await super.cancel(),await(this.currentTask?.cancel())}async request(e){const t=await this.ensureContextCreated(),s=t.context,a=this.count,i=await this.getRequestTask(e,s);this.currentTask=t.run((async()=>{const e=await this.asyncTaskInfoService.run(i),{result:t}=await this.graphQLService.sdk.getSqlExecuteTaskResults({taskId:e.id});return t}),(()=>this.asyncTaskInfoService.cancel(i.id)),(()=>this.asyncTaskInfoService.remove(i.id)));try{const e=await this.currentTask;return this.requestInfo={originalQuery:e.fullQuery||"",requestDuration:e.duration||0,requestMessage:e.statusMessage||"",requestFilter:e.filterText||"",source:null},this.clearError(),this.transformResults(t.context,e.results,a)}catch(e){throw this.error=e,e}}async save(e){const t=await this.ensureContextCreated();try{for(const s of e){if(null===s.id)continue;const e=t.context,a=e.projectId,l=e.connectionId,c=e.id,d={projectId:a,connectionId:l,contextId:c,resultsId:s.id};let u;s.dataFormat===i.fev.Resultset?u=this.actions.get(s,o.G):s.dataFormat===i.fev.Document&&(u=this.actions.get(s,r.q));let h=[];u instanceof o.G&&(h=u.getBlobsToUpload());for(const e of h){const t=(0,n.u)();await this.graphQLService.sdk.uploadBlobResultSet(t,e.blob),e.fileId=t}u&&u.fillBatch(d);const p=await this.graphQLService.sdk.updateResultsDataBatch(d);if(u){const t=this.transformResults(e,p.result.results,0).find((e=>e.id===s.id));t&&u.applyUpdate(t)}this.requestInfo={...this.requestInfo,requestDuration:p.result.duration,requestMessage:"Saved successfully",source:null}}this.clearError()}catch(e){throw this.error=e,e}return e}getConfig(e,t){const s=this.options;if(!s)throw new Error("Options must be provided");const a=this.offset,i=this.count,n=this.getResultId(e,t);return{projectId:t.projectId,connectionId:t.connectionId,contextId:t.id,containerNodePath:s.containerNodePath,resultId:n,filter:{offset:a,limit:i,constraints:s.constraints,where:s.whereFilter||void 0},dataFormat:this.dataFormat}}async getRequestTask(e,t){return this.asyncTaskInfoService.create((async()=>{const s=this.getConfig(e,t),{taskInfo:a}=await this.graphQLService.sdk.asyncReadDataFromContainer(s);return a}))}getResultId(e,t){let s;return 1===e.length&&e[0].contextId===t.id&&e[0].connectionId===t.connectionId&&null!==e[0].id&&(s=e[0].id),s}transformResults(e,t,s){return t.map(((t,a)=>({id:t.resultSet?.id||"0",uniqueResultId:`${e.connectionId}_${e.id}_${a}`,projectId:e.projectId,connectionId:e.connectionId,contextId:e.id,dataFormat:t.dataFormat,updateRowCount:t.updateRowCount||0,loadedFully:(t.resultSet?.rowsWithMetaData?.length||0)<s,count:t.resultSet?.rowsWithMetaData?.length||0,totalCount:null,data:t.resultSet})))}async ensureContextCreated(){const e=this.executionContext?.context;if(!e){if(!this.options)throw new Error("Options must be provided");const e=await this.connectionExecutionContextService.create(this.options.connectionKey,this.options.catalog,this.options.schema);this.setExecutionContext(e)}return this.executionContext}}},64413:(e,t,s)=>{s.d(t,{n:()=>a});const a=s(93424).P.createSubGroup("plugin_data_viewer_data_viewer_settings_group")},84658:(e,t,s)=>{s.r(t),s.d(t,{DataPresentationService:()=>r,DataPresentationType:()=>a});var a,i=s(1118),n=s(5576);!function(e){e[e.main=0]="main",e[e.toolsPanel=1]="toolsPanel"}(a||(a={}));let r=class DataPresentationService{constructor(){this.dataPresentations=new Map}get(e){return this.dataPresentations.get(e)}getSupportedList(e,t,s,a,i){return Array.from(this.dataPresentations.values()).filter((n=>!(void 0!==n.dataFormat&&!t.includes(n.dataFormat))&&(n.type===e&&!n.hidden?.(s,a,i))))}getSupported(e,t,s,a,i){if(s){const e=this.dataPresentations.get(s);if(e)return e.hidden?.(t,a,i)?null:e}for(const s of this.dataPresentations.values())if((void 0===s.dataFormat||s.dataFormat===t)&&s.type===e&&!s.hidden?.(t,a,i))return s;return null}add(e){this.dataPresentations.set(e.id,{...e,type:e.type||a.main})}};r=(0,i.Cg)([(0,n._)(),(0,i.Sn)("design:paramtypes",[])],r)},51933:(e,t,s)=>{s.r(t),s.d(t,{DataViewerBootstrap:()=>c});var a=s(1118),i=s(82103),n=s(5576),r=s(17015),o=s(90675),l=s(24768);let c=class DataViewerBootstrap extends i.j{constructor(e,t,s){super(),this.dataViewerTabService=e,this.tableFooterMenuService=t,this.resultSetTableFooterMenuService=s}register(){this.dataViewerTabService.registerTabHandler(),this.dataViewerTabService.register(),this.tableFooterMenuService.register(),this.resultSetTableFooterMenuService.register()}};c=(0,a.Cg)([(0,n._)(),(0,a.Sn)("design:paramtypes",[r.DataViewerTabService,l.TableFooterMenuService,o.ResultSetTableFooterMenuService])],c)},38799:(e,t,s)=>{s.r(t),s.d(t,{DataViewerDataChangeConfirmationService:()=>u});var a=s(1118),i=s(26533),n=s(5576),r=s(71635),o=s(14452),l=s(86764),c=s(35173),d=s(72286);let u=class DataViewerDataChangeConfirmationService{constructor(e,t,s){this.commonDialogService=e,this.dataViewerTableService=t,this.notificationService=s,this.checkUnsavedData=this.checkUnsavedData.bind(this)}trackTableDataUpdate(e){const t=this.dataViewerTableService.get(e);t&&!t.onRequest.hasHandler(this.checkUnsavedData)&&t.onRequest.addHandler(this.checkUnsavedData)}async checkUnsavedData({type:e,model:t},s){if("before"===e){const e=s.getContext(SaveConfirmedContext);if(!1===e.confirmed)return;const a=t.getResults();try{for(let n=0;n<a.length;n++){const a=t.source.getActionImplementation(n,c.M);if(a?.isEdited()&&t.source.executionContext?.context)if(e.confirmed)await t.save();else{const e=await this.commonDialogService.open(i.K,{title:"data_viewer_result_edited_title",subTitle:t.name||void 0,message:"data_viewer_result_edited_message",confirmActionText:"ui_yes",extraStatus:"no"});e===r.DialogueStateResult.Rejected?l.a.interrupt(s):e===r.DialogueStateResult.Resolved?await t.save():a.clear()}}}catch(e){l.a.interrupt(s),this.notificationService.logException(e,"data_viewer_data_save_error_title")}}}};function SaveConfirmedContext(){let e=null;return{get confirmed(){return e},setConfirmed(t){e=t}}}u=(0,a.Cg)([(0,n._)(),(0,a.Sn)("design:paramtypes",[r.CommonDialogService,d.TableViewerStorageService,o.NotificationService])],u)},93652:(e,t,s)=>{s.r(t),s.d(t,{DataViewerService:()=>l});var a=s(1118),i=s(5576),n=s(72755),r=s(19462),o=s(71423);let l=class DataViewerService{get canCopyData(){return!!this.sessionPermissionsResource.has(n.y.admin)||!this.dataViewerSettingsService.disableCopyData}constructor(e,t){this.dataViewerSettingsService=e,this.sessionPermissionsResource=t}isDataEditable(e){if(e.readOnly)return!1;const t=this.sessionPermissionsResource.has(n.y.admin),s=this.dataViewerSettingsService.disableEdit;return t||!s}};l=(0,a.Cg)([(0,i._)(),(0,a.Sn)("design:paramtypes",[o.DataViewerSettingsService,r.SessionPermissionsResource])],l)},71423:(e,t,s)=>{s.r(t),s.d(t,{DataViewerSettingsService:()=>f});var a=s(1118),i=s(63716),n=s(5576),r=s(8674),o=s(76761),l=s(70446),c=s(83625),d=s(83916),u=s(80625),h=s(82607),p=s(3065),m=s(31038),g=s(64413);const v=p.Ik({"plugin.data-viewer.disableEdit":m.W.stringedBoolean().default(!1),"plugin.data-viewer.disableCopyData":m.W.stringedBoolean().default(!1),"plugin.data-viewer.fetchMin":p.au.number().min(10).default(200),"plugin.data-viewer.fetchMax":p.au.number().min(10).default(5e3),"resultset.maxrows":p.au.number().min(10).max(5e3).default(200)});let f=class DataViewerSettingsService extends i.O{get disableEdit(){return this.settings.getValue("plugin.data-viewer.disableEdit")}get disableCopyData(){return this.settings.getValue("plugin.data-viewer.disableCopyData")}get maxFetchSize(){return this.settings.getValue("plugin.data-viewer.fetchMax")}get minFetchSize(){return this.settings.getValue("plugin.data-viewer.fetchMin")}get defaultFetchSize(){return this.settings.getValue("resultset.maxrows")}constructor(e,t,s,a){super(),this.settingsProviderService=e,this.settingsManagerService=t,this.settingsResolverService=s,this.serverSettingsManagerService=a,this.settings=this.settingsProviderService.createSettings(v),this.settingsResolverService.addResolver(o.T,(0,l.q)(this.settingsResolverService,this.settings,{"plugin.data-viewer.disableEdit":"core.app.dataViewer.disableEdit","plugin.data-viewer.disableCopyData":"core.app.dataViewer.disableCopyData","plugin.data-viewer.fetchMin":"core.app.dataViewer.fetchMin","plugin.data-viewer.fetchMax":"core.app.dataViewer.fetchMax","resultset.maxrows":"core.app.dataViewer.fetchDefault"}),(0,l.q)(this.settingsResolverService,this.settings,{"resultset.maxrows":"plugin.data-viewer.fetchDefault"})),this.registerSettings()}getDefaultRowsCount(e){return"number"==typeof e&&Number.isNaN(e)&&(e=0),void 0!==e?Math.max(this.minFetchSize,Math.min(e,this.maxFetchSize)):this.defaultFetchSize}registerSettings(){this.serverSettingsManagerService.setSettingTransformer("resultset.maxrows",(e=>({...e,name:"settings_data_editor_fetch_default_name",description:"settings_data_editor_fetch_default_description",group:g.n}))),this.settingsManagerService.registerSettings(this.settings,(()=>{const e=[{key:"plugin.data-viewer.disableEdit",access:{scope:["server"]},type:c.E.Checkbox,name:"settings_data_editor_disable_edit_name",description:"settings_data_editor_disable_edit_description",group:g.n},{key:"plugin.data-viewer.disableCopyData",access:{scope:["server"]},type:c.E.Checkbox,name:"settings_data_editor_disable_data_copy_name",description:"settings_data_editor_disable_data_copy_description",group:g.n},{key:"plugin.data-viewer.fetchMin",access:{scope:["server"]},type:c.E.Input,name:"settings_data_editor_fetch_min_name",description:"settings_data_editor_fetch_min_description",group:g.n},{key:"plugin.data-viewer.fetchMax",access:{scope:["server"]},type:c.E.Input,name:"settings_data_editor_fetch_max_name",description:"settings_data_editor_fetch_max_description",group:g.n}];return this.serverSettingsManagerService.providedSettings.has("resultset.maxrows")||e.push({key:"resultset.maxrows",access:{scope:["server"]},type:c.E.Input,name:"settings_data_editor_fetch_default_name",description:"settings_data_editor_fetch_default_description",group:g.n}),e}))}};f=(0,a.Cg)([(0,n._)(),(0,a.Sn)("design:paramtypes",[d.SettingsProviderService,u.SettingsManagerService,h.SettingsResolverService,r.ServerSettingsManagerService])],f)},17015:(e,t,s)=>{s.r(t),s.d(t,{DataViewerTabService:()=>N});var a=s(1118),i=s(34906),n=s(49690),r=s(5576),o=s(14452),l=s(86764),c=s(64809),d=s(7278),u=s(33901),h=s(59113),p=s(34756),m=s(41773),g=s(7838),v=s(15993),f=s(17675),w=s(15280),x=s(14249),b=s(18861);const y="tableViewerLoader___jzPt0";var _=s(18699),S=s(84658),C=s(38799),I=s(51072),D=s(72286),R=s(94866),F=s(84383),T=s(28347),A=s(86233);function useDataViewerModel(e,t,s){const a=(0,_.h)(D.TableViewerStorageService),i=(0,F.q)(useDataViewerModel,n.ConnectionInfoResource,e??null);return(0,T.G)((()=>({_exception:null,_loading:!1,get exception(){return(0,A.rp)(i.exception)?i.exception:this._exception},isLoading(){return i.isLoading()||this._loading},isLoaded(){return i.isLoaded()&&void 0!==this.tableViewerStorageService.get(this.tableId||"")},isError(){return(0,A.rp)(this.exception)},async reload(){(0,A.rp)(i.exception)&&i.reload(),this._init()},async load(){(0,A.rp)(this.exception)||await this._init()},resetException(){this._exception=null},async _init(){if(!this._loading){this._loading=!0;try{if(!this.connectionKey)return void(this._exception=null);await this.init(),this._exception=null}catch(e){this._exception=e}finally{this._loading=!1}}}})),{exception:R.EW,_loading:R.sH.ref,_exception:R.sH.ref,isLoaded:R.XI.bound,isLoading:R.XI.bound,isError:R.XI.bound,reload:R.XI.bound},{connectionKey:e,tableId:s,tableViewerStorageService:a,init:t})}const E=(0,g.PA)((function DataViewerPanel({tab:e,page:t}){const s=(0,f.W)(),a=function useDataViewerPanel(e){const t=(0,_.h)(I.DataViewerTableService),s=(0,_.h)(D.TableViewerStorageService),a=(0,_.h)(c.NavNodeManagerService),i=(0,_.h)(N),r=(0,_.h)(n.ConnectionInfoResource),o=(0,_.h)(S.DataPresentationService),l=(0,_.h)(C.DataViewerDataChangeConfirmationService);return useDataViewerModel(e.handlerState.connectionKey,(async()=>{const n=a.getNode({nodeId:e.handlerState.objectId,parentId:e.handlerState.parentId});if(!a.isNodeHasData(n))return;let c=s.get(e.handlerState.tableId||"");if(c&&!c.source.executionContext?.context&&c.source.results.length>0&&c.resetData(),!c){await r.waitLoad();const s=r.get(e.handlerState.connectionKey);if(!s)throw new Error("Connection doesn't exists");c=t.create(s,n),e.handlerState.tableId=c.id,c.source.setOutdated(),l.trackTableDataUpdate(c.id);const a=i.page.getState(e);if(a){const e=o.get(a.presentationId);void 0!==e?.dataFormat&&c.setDataFormat(e.dataFormat)}}n?.name&&c.setName(n.name)}),e.handlerState.tableId)}(e),i=t.getState(e),r=(0,v.useCallback)((s=>{const a=t.getState(e);a?a.presentationId=s:t.setState(e,{presentationId:s,resultIndex:0,valuePresentationId:null})}),[t,e]),o=(0,v.useCallback)((s=>{const a=t.getState(e);a?a.valuePresentationId=s:t.setState(e,{presentationId:"",resultIndex:0,valuePresentationId:s})}),[t,e]);return(0,w.X)(DataViewerPanel,a),e.handlerState.tableId?(0,m.jsx)(b.U,{className:y,tableId:e.handlerState.tableId,resultIndex:i?.resultIndex,presentationId:i?.presentationId,valuePresentationId:i?.valuePresentationId,onPresentationChange:r,onValuePresentationChange:o}):(0,m.jsx)(x.x,{children:s("data_viewer_model_not_loaded")})}));var V=s(70500),P=s(43659),j=s(48522),k=s(19259);const M=(0,g.PA)((function DataViewerTab({tab:e,page:t,onSelect:s}){return(0,_.h)(c.NavNodeManagerService).isNodeHasData(e.handlerState.objectId)?(0,m.jsxs)(P.o,{tabId:t.key,onOpen:s,children:[(0,m.jsx)(j.$,{icon:"table-icon"}),(0,m.jsx)(k.I,{children:(0,m.jsx)(V.H,{token:"data_viewer_tab_title"})})]}):null}));let N=class DataViewerTabService{constructor(e,t,s,a,i,n,r,o){this.navNodeManagerService=e,this.objectViewerTabService=t,this.dbObjectPageService=s,this.notificationService=a,this.connectionsManagerService=i,this.navigationTabsService=n,this.connectionInfoResource=r,this.tableViewerStorageService=o,this.page=this.dbObjectPageService.register({key:"data_viewer_data",priority:2,order:2,getTabComponent:()=>M,getPanelComponent:()=>E,onRestore:this.handleTabRestore.bind(this),canClose:this.handleTabCanClose.bind(this),onClose:this.handleTabClose.bind(this)})}register(){this.connectionsManagerService.onDisconnect.addHandler(this.disconnectHandler.bind(this))}registerTabHandler(){this.navNodeManagerService.navigator.addHandler(this.navigationHandler.bind(this))}async disconnectHandler(e,t){const s=(0,d.OU)(e.connections);if("before"===e.state){const e=Array.from(this.navigationTabsService.findTabs((0,h.isObjectViewerTab)((e=>!!e.handlerState.connectionKey&&this.connectionInfoResource.isIntersect(s,e.handlerState.connectionKey)))));for(const s of e){if(!await this.handleTabCanClose(s))return void l.a.interrupt(t)}}}async navigationHandler(e,t){try{const{nodeInfo:e,tabInfo:s,initTab:a,trySwitchPage:i}=t.getContext(this.objectViewerTabService.objectViewerTabContext),n=await this.navNodeManagerService.loadNode(e);if(!this.navNodeManagerService.isNodeHasData(n))return;await a(),s.isNewlyCreated&&i(this.page)}catch(e){this.notificationService.logException(e,"Data Viewer Error","Error in Data Viewer while processing action with database node")}}async handleTabRestore(e){return!0}async handleTabCanClose(e){const t=this.tableViewerStorageService.get(e.handlerState.tableId||"");if(t){let e=!1;try{await t.requestDataAction((()=>{e=!0}))}catch{}return e}return!0}async handleTabClose(e){const t=e.handlerState.tableId;if(t){const e=this.tableViewerStorageService.get(t);e&&(this.tableViewerStorageService.remove(t),await e.dispose())}}};N=(0,a.Cg)([(0,r._)(),(0,a.Sn)("design:paramtypes",[c.NavNodeManagerService,h.ObjectViewerTabService,p.DBObjectPageService,o.NotificationService,i.ConnectionsManagerService,u.NavigationTabsService,n.ConnectionInfoResource,D.TableViewerStorageService])],N)},51072:(e,t,s)=>{s.r(t),s.d(t,{DataViewerTableService:()=>w});var a=s(1118),i=s(49690),n=s(13225),r=s(5576),o=s(48138),l=s(3942),c=s(64809),d=s(83336),u=s(45764),h=s(70199),p=s(72078),m=s(93979),g=s(93652),v=s(71423),f=s(72286);let w=class DataViewerTableService{constructor(e,t,s,a,i,n,r,o){this.app=e,this.navNodeManagerService=t,this.tableViewerStorageService=s,this.graphQLService=a,this.asyncTaskInfoService=i,this.connectionExecutionContextService=n,this.dataViewerService=r,this.dataViewerSettingsService=o}create(e,t){const s=this.navNodeManagerService.getNodeContainerInfo(t?.id??""),a=new h.B(this.app.getServiceInjector(),this.graphQLService,this.asyncTaskInfoService,this.connectionExecutionContextService);a.setOptions({connectionKey:(0,i.createConnectionParam)(e),containerNodePath:t?.id??"",schema:s.schemaId,catalog:s.catalogId,constraints:[],whereFilter:""}).setSupportedDataFormats(e.supportedDataFormats).setConstraintsAvailable(t?.objectFeatures.includes(l.v.supportsDataFilter)??!0);const n=this.dataViewerService.isDataEditable(e);return this.tableViewerStorageService.add(new p.j(a)).setCountGain(this.dataViewerSettingsService.getDefaultRowsCount()).setSlice(0).setAccess(n?m.J.Default:m.J.Readonly)}};w=(0,a.Cg)([(0,r._)(),(0,a.Sn)("design:paramtypes",[o.q,c.NavNodeManagerService,f.TableViewerStorageService,d.GraphQLService,u.AsyncTaskInfoService,n.ConnectionExecutionContextService,g.DataViewerService,v.DataViewerSettingsService])],w)},13080:(e,t,s)=>{s.d(t,{W:()=>getDependingDataActions,Y:()=>databaseDataAction});const a="custom:data-viewer/action/params";function databaseDataAction(){return e=>{if(Reflect.hasOwnMetadata(a,e))throw new Error("Duplicate databaseDataAction() decorator");const t=Reflect.getMetadata("design:paramtypes",e)||[];return Reflect.defineMetadata(a,t,e),e}}function getDependingDataActions(e){return Reflect.getMetadata(a,e)||[]}},15084:(e,t,s)=>{s.d(t,{R:()=>r});var a=s(1118),i=s(45477),n=s(13080);let r=class DatabaseDataResultAction extends i.o{static{this.dataFormat=null}constructor(e){super(e)}};r=(0,a.Cg)([(0,n.Y)(),(0,a.Sn)("design:paramtypes",[Object])],r)},35173:(e,t,s)=>{s.d(t,{M:()=>o});var a=s(1118),i=s(44017),n=s(45477),r=s(13080);let o=class DatabaseEditAction extends n.o{static{this.dataFormat=null}constructor(e){super(e),this.action=new i.H,this.applyAction=new i.H,this.features=[]}hasFeature(e){return this.features.includes(e)}};o=(0,a.Cg)([(0,r.Y)(),(0,a.Sn)("design:paramtypes",[Object])],o)},50704:(e,t,s)=>{s.d(t,{R:()=>o});var a=s(1118),i=s(31324),n=s(45477),r=s(13080);let o=class DatabaseMetadataAction extends n.o{static{this.dataFormat=null}constructor(e){super(e),this.metadata=new i.C}has(e){return this.metadata.has(e)}get(e,t){return this.metadata.get(e,t)}set(e,t){this.metadata.set(e,t)}delete(e){this.metadata.delete(e)}};o=(0,a.Cg)([(0,r.Y)(),(0,a.Sn)("design:paramtypes",[Object])],o)},83753:(e,t,s)=>{s.d(t,{C:()=>o});var a=s(1118),i=s(44017),n=s(45477),r=s(13080);let o=class DatabaseSelectAction extends n.o{static{this.dataFormat=null}constructor(e){super(e),this.actions=new i.H}};o=(0,a.Cg)([(0,r.Y)(),(0,a.Sn)("design:paramtypes",[Object])],o)},84941:(e,t,s)=>{s.d(t,{q:()=>u});var a=s(1118),i=s(94866),n=s(43974),r=s(13080),o=s(35173),l=s(20816),c=s(15084);let d=class DocumentDataAction extends c.R{static{this.dataFormat=[n.fev.Document]}get documents(){return this.result.data?.rowsWithMetaData?.map((e=>e.data[0]))||[]}get count(){return this.result.data?.rowsWithMetaData?.length||0}constructor(e){super(e),(0,i.Gn)(this,{documents:i.EW,count:i.EW})}getMetadataForDocument(e){const t=this.result.data?.rowsWithMetaData?.find((t=>t.data[0]?.id===e));return t?.metaData}getIdentifier(e){return e.index.toString()}serialize(e){return e.index.toString()}get(e){if(!(this.documents.length<=e))return this.documents[e]}set(e,t){if(this.result.data?.rowsWithMetaData){const s=this.result.data.rowsWithMetaData[e];s.data&&(s.data[0]=t)}}};d=(0,a.Cg)([(0,r.Y)(),(0,a.Sn)("design:paramtypes",[Object])],d);let u=class DocumentEditAction extends o.M{static{this.dataFormat=[n.fev.Document]}constructor(e,t){super(e),this.editedElements=new Map,this.data=t,(0,i.Gn)(this,{editedElements:i.sH})}isEdited(){return this.editedElements.size>0}isElementEdited(e){if(!this.editedElements.has(e.index))return!1;const t=this.data.get(e.index);return!this.compare(t,this.get(e))}getElementState(e){return this.isElementEdited(e)?l.e.update:null}get(e){return this.editedElements.get(e.index)}set(e,t,s){s||(s=this.get(e))||(s=this.data.get(e.index)),this.editedElements.set(e.index,t),this.action.execute({type:l.e.update,revert:!1,resultId:this.result.id,value:[{key:e,prevValue:s,value:t}]}),this.removeUnchanged(e)}add(e){throw new Error("Not implemented")}duplicate(e){throw new Error("Not implemented")}delete(e){throw new Error("Not implemented")}setData(e,t){let s=this.get(e);if(s||(s=this.data.get(e.index)),!s)throw new Error("Source value not found");this.set(e,{...s,data:t},s)}applyPartialUpdate(e){let t=0;for(const[s,a]of this.editedElements){const a=e.data?.rowsWithMetaData?.[t],i=a?.data;void 0!==i&&this.data.set(s,i[0]),t++}}applyUpdate(e){let t=0;for(const[s,a]of this.editedElements){const a=e.data?.rowsWithMetaData?.[t],i=a?.data;void 0!==i&&this.data.set(s,i[0]),t++}this.clear()}revert(e){this.editedElements.delete(e.index),this.action.execute({revert:!0,resultId:this.result.id,value:[{key:e}]})}clear(){this.editedElements.clear(),this.action.execute({revert:!0,resultId:this.result.id})}dispose(){this.clear()}fillBatch(e){for(const[t,s]of this.editedElements){void 0===e.updatedRows&&(e.updatedRows=[]);e.updatedRows.push({data:[this.data.get(t)],metaData:this.data.getMetadataForDocument(s.id),updateValues:{0:s}})}}removeUnchanged(e){this.isElementEdited(e)||this.revert(e)}compare(e,t){return e?.data===t?.data}};u=(0,a.Cg)([(0,r.Y)(),(0,a.Sn)("design:paramtypes",[Object,d])],u)},20816:(e,t,s)=>{var a;s.d(t,{e:()=>a}),function(e){e[e.update=0]="update",e[e.add=1]="add",e[e.delete=2]="delete"}(a||(a={}))},44446:(e,t,s)=>{s.d(t,{j:()=>a});const a=(0,s(44745).M)("data-viewer-database-data-model-result-set-column-key")},9874:(e,t,s)=>{s.d(t,{Ri:()=>u,SK:()=>isFilterConstraint,TV:()=>c,Vn:()=>d,Yp:()=>nullOperationsFilter,cu:()=>getNextOrder,hk:()=>wrapOperationArgument});var a=s(1118),i=s(94866),n=s(43974),r=s(45477),o=s(40620),l=s(13080);const c="IS_NULL",d="IS_NOT_NULL";let u=class ResultSetConstraintAction extends r.o{static{this.dataFormat=[n.fev.Resultset,n.fev.Document]}get supported(){return this.source.constraintsAvailable&&this.source.results.length<2}get orderConstraints(){if(!this.source.options)throw new Error("Options must be provided");return this.source.options.constraints.filter(isOrderConstraint)}get filterConstraints(){if(!this.source.options)throw new Error("Options must be provided");return this.source.options.constraints.filter(isFilterConstraint)}constructor(e){super(e),(0,i.Gn)(this,{orderConstraints:i.EW,filterConstraints:i.EW})}deleteConstraint(e){this.source.options&&(this.source.options.constraints=this.source.options.constraints.filter((t=>t.attributePosition!==e)))}deleteEmptyConstraint(e){const t=this.get(e);!t||isFilterConstraint(t)||isOrderConstraint(t)||this.deleteConstraint(e)}getMaxOrderPosition(){return Math.max(0,...this.orderConstraints.map((e=>void 0!==e.orderPosition?e.orderPosition+1:-1)))}get(e){if(!this.source.options)throw new Error("Options must be provided");return this.source.options.constraints.find((t=>t.attributePosition===e))}deleteAll(){this.source.options&&(this.source.options.constraints=[])}deleteFilter(e){const t=this.get(e);t&&(deleteLogicalOperationFromConstraint(t),this.deleteEmptyConstraint(e))}deleteFilters(){if(!this.source.options)throw new Error("Options must be provided");const e=[];for(const t of this.source.options.constraints)deleteLogicalOperationFromConstraint(t),isOrderConstraint(t)&&e.push(t);this.source.options.constraints=e}deleteOrders(){if(!this.source.options)throw new Error("Options must be provided");const e=[];for(const t of this.source.options.constraints)deleteOrderFromConstraint(t),isFilterConstraint(t)&&e.push(t);this.source.options.constraints=e}deleteOrder(e){const t=this.get(e);t&&(deleteOrderFromConstraint(t),this.deleteEmptyConstraint(e))}deleteDataFilters(){if(!this.source.options)throw new Error("Options must be provided");this.deleteFilters(),this.resetWhereFilter()}deleteData(){if(!this.source.options)throw new Error("Options must be provided");this.deleteAll(),this.resetWhereFilter()}setWhereFilter(e){if(!this.source.options)throw new Error("Options must be provided");this.source.options.whereFilter=e}resetWhereFilter(){this.setWhereFilter("")}setFilter(e,t,s){if(!this.source.options)throw new Error("Options must be provided");const a=this.get(e);if(a)return a.operator=t,void(void 0!==s?a.value=s:void 0!==a.value&&delete a.value);const i={attributePosition:e,operator:t};void 0!==s&&(i.value=s),this.source.options.constraints.push(i)}setOrder(e,t,s){if(!this.source.options)throw new Error("Options must be provided");const a=null===t;s||this.deleteOrders();const i=this.get(e);i?a?isFilterConstraint(i)?deleteOrderFromConstraint(i):this.deleteConstraint(i.attributePosition):(isOrderConstraint(i)||(i.orderPosition=this.getMaxOrderPosition()),i.orderAsc=t===o.c.asc):a||this.source.options.constraints.push({attributePosition:e,orderPosition:this.getMaxOrderPosition(),orderAsc:t===o.c.asc})}getOrder(e){if(!this.source.options)throw new Error("Options must be provided");const t=this.get(e);return t&&isOrderConstraint(t)?t.orderAsc?o.c.asc:o.c.desc:null}updateResults(e){const t=e[this.resultIndex];if(this.source.options&&e.length===this.source.results.length&&t)for(const e of this.source.options.constraints){const s=this.result.data?.columns?.find((t=>t.position===e.attributePosition));if(!s)return;let a=t.data?.columns?.find((e=>e.position===s.position));if(a&&a.label===s.label||(a=t.data?.columns?.find((e=>e.label===s.label))),a&&s.position!==a.position){const t=this.source.prevOptions?.constraints.find((t=>t.attributePosition===e.attributePosition));e.attributePosition=a.position,t&&(t.attributePosition=e.attributePosition)}}}};function nullOperationsFilter(e){return e.id===c||e.id===d}function getNextOrder(e){switch(e){case o.c.asc:return o.c.desc;case o.c.desc:return null;default:return o.c.asc}}function wrapOperationArgument(e,t){return"LIKE"===e?`%${t}%`:t}function isFilterConstraint(e){return void 0!==e.operator}function isOrderConstraint(e){return void 0!==e.orderAsc}function deleteOrderFromConstraint(e){return delete e.orderAsc,delete e.orderPosition,e}function deleteLogicalOperationFromConstraint(e){return delete e.operator,delete e.value,e}u=(0,a.Cg)([(0,l.Y)(),(0,a.Sn)("design:paramtypes",[Object])],u)},19385:(e,t,s)=>{s.d(t,{i:()=>d});var a=s(1118),i=s(94866),n=s(43974),r=s(13080),o=s(15084),l=s(11905),c=s(26998);let d=class ResultSetDataAction extends o.R{static{this.dataFormat=[n.fev.Resultset]}get rows(){return this.result.data?.rowsWithMetaData||[]}get columns(){return this.result.data?.columns||[]}constructor(e){super(e),(0,i.Gn)(this,{rows:i.EW,columns:i.EW})}getIdentifier(e){return c.D.serialize(e.column)}serialize(e){return c.D.serializeElementKey(e)}serializeRowKey(e){return c.D.serialize(e)}getDefaultKey(){return{row:{index:0,subIndex:0},column:{index:0}}}insertRow(e,t,s=0){if(this.result.data?.rowsWithMetaData){const a=e.index+s;return this.result.data.rowsWithMetaData.splice(a,0,{data:t,metaData:{}}),{index:a,subIndex:0}}}removeRow(e,t=0){if(this.result.data?.rowsWithMetaData){const s=e.index+t;return this.result.data.rowsWithMetaData.splice(s,1),{index:s-1,subIndex:0}}}setRowValue(e,t,s=0){this.result.data?.rowsWithMetaData&&(this.result.data.rowsWithMetaData[e.index+s]={data:t,metaData:this.getRowMetadata(e)})}getRowValue(e){if(!(e.index>=this.rows.length))return this.rows[e.index].data}getRowMetadata(e){if(!(e.index>=this.rows.length))return this.rows[e.index].metaData}getCellValue(e){if(!(void 0===e.row||void 0===e.column||e.row.index>=this.rows.length||e.column.index>=this.columns.length))return this.rows[e.row.index].data?.[e.column.index]}getContent(e){const t=this.getCellValue(e);return(0,l.m)(t)?t:null}findColumnKey(e){const t=this.columns.findIndex(e);return-1===t?void 0:{index:t}}getColumn(e){if(!(e.index>=this.columns.length))return this.columns[e.index]}getColumnOperations(e){const t=this.getColumn(e);return t?t.supportedOperations.filter((e=>1===e.argumentCount||0===e.argumentCount)):[]}};d=(0,a.Cg)([(0,r.Y)(),(0,a.Sn)("design:paramtypes",[Object])],d)},69365:(e,t,s)=>{s.d(t,{T:()=>b});var a=s(1118),i=s(94866),n=s(28444),r=s(43974),o=s(83336),l=s(42),c=s(9724),d=s(77580),u=s(36221),h=s(56191),p=s(45477),m=s(13080),g=s(11905),v=s(19385);let f=class ResultSetCacheAction extends p.o{static{this.dataFormat=[r.fev.Resultset]}constructor(e,t){super(e),this.data=t,this.cache=new Map,(0,i.Gn)(this,{cache:i.sH,set:i.XI,setRow:i.XI,delete:i.XI,deleteAll:i.XI,deleteRow:i.XI})}get(e,t){const s=this.getKeyCache(e);if(s)return s.get(t)}getRow(e,t){const s=this.getRowCache(e);if(s)return s.get(t)}has(e,t){const s=this.getKeyCache(e);return!!s&&s.has(t)}hasRow(e,t){const s=this.getRowCache(e);return!!s&&s.has(t)}set(e,t,s){this.getOrCreateKeyCache(e).set(t,s)}setRow(e,t,s){this.getOrCreateRowKeyCache(e).set(t,s)}delete(e,t){const s=this.getKeyCache(e);s&&s.delete(t)}deleteAll(e){for(const[,t]of this.cache)t.delete(e)}deleteRow(e,t){const s=this.getRowCache(e);s&&s.delete(t)}afterResultUpdate(){this.cache.clear()}dispose(){this.cache.clear()}serializeRowKey(e){return"row:"+this.data.serializeRowKey(e)}serializeKey(e){return this.data.serialize(e)}getKeyCache(e){return this.cache.get(this.serializeKey(e))}getRowCache(e){return this.cache.get(this.serializeRowKey(e))}getOrCreateKeyCache(e){let t=this.getKeyCache(e);return t||(t=(0,i.sH)(new Map),this.cache.set(this.serializeKey(e),t)),t}getOrCreateRowKeyCache(e){let t=this.getRowCache(e);return t||(t=(0,i.sH)(new Map),this.cache.set(this.serializeRowKey(e),t)),t}};f=(0,a.Cg)([(0,m.Y)(),(0,a.Sn)("design:paramtypes",[Object,v.i])],f);var w=s(33582);const x=Symbol("content-cache-key");let b=class ResultSetDataContentAction extends p.o{static{this.dataFormat=[r.fev.Resultset]}constructor(e,t,s,a,n,r){super(e),this.data=t,this.format=s,this.graphQLService=a,this.quotasService=n,this.cache=r,(0,i.Gn)(this,{cache:i.sH})}getLimitInfo(e){const t=this.format.isText(e),s=this.format.isBinary(e),a={limit:void 0,limitWithSize:void 0};return t&&(a.limit=this.quotasService.getQuota("sqlTextPreviewMaxLength")),s&&(a.limit=this.quotasService.getQuota("sqlBinaryPreviewMaxLength")),a.limit&&(a.limitWithSize=(0,l.C)(a.limit)),a}isLoading(e){return this.getCache(e)?.loading??!1}isBlobTruncated(e){const t=this.getLimitInfo(e).limit,s=this.format.get(e);return!!((0,c.K)(t)&&(0,g.m)(s)&&this.format.isBinary(e))&&(s.contentLength??0)>t}isTextTruncated(e){const t=this.getLimitInfo(e).limit,s=this.format.get(e);return!(!(0,c.K)(t)||!(0,g.m)(s))&&(s.contentLength??0)>t}isDownloadable(e){return!!this.result.data?.hasRowIdentifier&&(0,g.m)(this.format.get(e))}retrieveFullTextFromCache(e){return this.getCache(e)?.fullText}retrieveBlobFromCache(e){return this.getCache(e)?.blob}async getFileFullText(e){const t=this.data.getColumn(e.column),s=this.data.getRowValue(e.row),a=this.retrieveFullTextFromCache(e);if(a)return a;if(!s||!t)throw new Error("Failed to get value metadata information");const i=await this.source.runTask((async()=>{try{return this.updateCache(e,{loading:!0}),await this.loadFileFullText(this.result,t.position,s)}finally{this.updateCache(e,{loading:!1})}}));return this.updateCache(e,{fullText:i}),i}async resolveFileDataUrl(e){const t=this.retrieveBlobFromCache(e);if(t)return t;const s=await this.getFileDataUrl(e),a=await(0,d.W)(s);return this.updateCache(e,{blob:a}),a}async downloadFileData(e){const t=await this.getFileDataUrl(e);(0,u.R)(t)}clearCache(){this.cache.deleteAll(x)}dispose(){this.clearCache()}async getFileDataUrl(e){const t=this.data.getColumn(e.column),s=this.data.getRowValue(e.row);if(!s||!t)throw new Error("Failed to get value metadata information");return await this.source.runTask((async()=>{try{return this.updateCache(e,{loading:!0}),await this.loadDataURL(this.result,t.position,s)}finally{this.updateCache(e,{loading:!1})}}))}async loadFileFullText(e,t,s){if(!e.id)throw new Error("Result's id must be provided");return(await this.graphQLService.sdk.sqlReadStringValue({resultsId:e.id,projectId:e.projectId,connectionId:e.connectionId,contextId:e.contextId,columnIndex:t,row:{data:s}})).text}updateCache(e,t){const s=this.getCache(e)??{};this.setCache(e,{...s,...t})}getCache(e){return this.cache.get(e,x)}setCache(e,t){this.cache.set(e,x,t)}async loadDataURL(e,t,s){if(!e.id)throw new Error("Result's id must be provided");const{url:a}=await this.graphQLService.sdk.getResultsetDataURL({resultsId:e.id,projectId:e.projectId,connectionId:e.connectionId,contextId:e.contextId,lobColumnIndex:t,row:{data:s}});return`${h.b.serviceURI}/sql-result-value/${a}`}};b=(0,a.Cg)([(0,m.Y)(),(0,a.Sn)("design:paramtypes",[Object,v.i,w.h,o.GraphQLService,n.QuotasService,f])],b)},26998:(e,t,s)=>{s.d(t,{D:()=>a});const a={serializeElementKey(e){return this.serialize(e.column)+"."+this.serialize(e.row)},isElementsKeyEqual(e,t){return this.isEqual(e.column,t.column)&&this.isEqual(e.row,t.row)},serialize(e){let t=`${e.index}`;return"subIndex"in e&&(t+=`.${e.subIndex}`),t},isEqual(e,t){if(e.index!==t.index)return!1;const s="subIndex"in e;return s==="subIndex"in t&&(!s||e.subIndex===t.subIndex)}}},78186:(e,t,s)=>{s.d(t,{G:()=>x});var a=s(1118),i=s(94866),n=s(44017),r=s(43974),o=s(23448),l=s(13080),c=s(35173),d=s(20816),u=s(61050);var h=s(40632),p=s(3443),m=s(10074),g=s(11905),v=s(968),f=s(19385),w=s(26998);let x=class ResultSetEditAction extends c.M{static{this.dataFormat=[r.fev.Resultset]}constructor(e,t){super(e),this.applyAction=new n.H,this.editorData=new Map,this.data=t,this.features=[],(0,i.Gn)(this,{editorData:i.sH,set:i.XI,add:i.XI,addRow:i.XI,delete:i.XI,deleteRow:i.XI,revert:i.XI,applyUpdate:i.XI,applyPartialUpdate:i.XI})}get addRows(){return Array.from(this.editorData.values()).filter((e=>e.type===d.e.add)).map((e=>e.row))}get updates(){return Array.from(this.editorData.values()).sort(((e,t)=>e.type!==t.type?e.type-t.type:e.row.index-t.row.index))}isEdited(){return this.editorData.size>0}isElementEdited(e){const t=this.editorData.get(w.D.serialize(e.row));return!!t&&(void 0===t.source||t.type===d.e.delete||!this.compareCellValue(t.source[e.column.index],t.update[e.column.index]))}isRowEdited(e){return!!this.editorData.get(w.D.serialize(e))}getElementState(e){const t=this.editorData.get(w.D.serialize(e.row));return t?void 0===t.source||t.type!==d.e.update?t.type:this.compareCellValue(t.source[e.column.index],t.update[e.column.index])?null:t.type:null}get(e){return this.editorData.get(w.D.serialize(e.row))?.update[e.column.index]}set(e,t){const[s]=this.getOrCreateUpdate(e.row,d.e.update),a=s.source?.[e.column.index];(0,g.m)(a)&&!(0,m.L)(t)&&"text"in a&&!(0,o.kZ)(t)&&(t=function createResultSetContentValue(e){return{$type:"content",...e}}({text:String(t),contentLength:String(t).length,contentType:a.contentType??"text/plain"})),s.update[e.column.index]=t,this.action.execute({resultId:this.result.id,type:s.type,revert:!1,value:[{key:e,prevValue:a,value:t}]}),this.removeEmptyUpdate(s)}add(e){this.addRow(e?.row,void 0,e?.column)}addRow(e,t,s){e||(e=this.data.getDefaultKey().row),void 0===t&&(t=this.data.columns.map((()=>null))),e=this.getNextRowAdd(e),s||(s=this.data.getDefaultKey().column);const[a,i]=this.getOrCreateUpdate(e,d.e.add,t);i&&this.action.execute({resultId:this.result.id,type:a.type,revert:!1,value:[{key:{column:s,row:e}}]})}duplicate(...e){const t=[],s=new Set;for(const a of e){const e=w.D.serialize(a.row);s.has(e)||(t.push(a.row),s.add(e))}this.duplicateRow(...t)}duplicateRow(...e){for(const t of e){let e=this.data.getRowValue(t);const s=this.editorData.get(w.D.serialize(t));s&&(e=s.update),this.addRow(t,JSON.parse(JSON.stringify(e)))}}delete(...e){const t=[],s=[];for(const a of e){const e=w.D.serialize(a.row),i=this.editorData.get(e);i?.type===d.e.add?(t.push({key:a}),this.editorData.delete(e)):(this.deleteRow(a.row,a.column,!0),s.push({key:a}))}t.length>0&&this.action.execute({resultId:this.result.id,type:d.e.add,revert:!0,value:t}),s.length>0&&this.action.execute({resultId:this.result.id,type:d.e.delete,revert:!1,value:s})}deleteRow(e,t,s){const a=w.D.serialize(e),i=this.editorData.get(a);if(0===e.subIndex||i)if(i&&i.type!==d.e.delete&&this.editorData.delete(a),t||(t=this.data.getDefaultKey().column),i?.type!==d.e.add){const[a,i]=this.getOrCreateUpdate(e,d.e.delete);i&&!s&&this.action.execute({resultId:this.result.id,type:a.type,revert:!1,value:[{key:{column:t,row:e}}]})}else s||this.action.execute({resultId:this.result.id,type:i.type,revert:!0,value:[{key:{column:t,row:e}}]})}applyPartialUpdate(e){e.data?.rowsWithMetaData?.length!==this.updates.length&&console.warn("ResultSetEditAction: returned data differs from performed update");const t=[],s=this.updates.map(((e,t)=>({rowIndex:e.type===d.e.delete?-1:t,update:e}))).sort(((e,t)=>(0,u.j)(t.update.row,e.update.row)));let a=s.reduce(((e,{update:t})=>t.type===d.e.add?e+1:t.type===d.e.delete?e-1:e),0);for(const i of s){const s=e.data?.rowsWithMetaData?.[i.rowIndex]?.data,n=i.update.row,r=i.update.type;switch(i.update.type){case d.e.update:s&&this.data.setRowValue(i.update.row,s),applyResultToUpdate(i.update,s),this.shiftRow(i.update.row,a),this.removeEmptyUpdate(i.update);break;case d.e.add:s&&this.data.insertRow(i.update.row,s,1),applyResultToUpdate(i.update,s),this.shiftRow(i.update.row,a),this.removeEmptyUpdate(i.update),a--;break;case d.e.delete:this.revert({row:i.update.row,column:{index:0}}),this.data.removeRow(i.update.row),a++}t.push({type:r,row:n,newRow:i.update.row})}t.length>0&&this.applyAction.execute({resultId:e.id,updates:t})}applyUpdate(e){this.applyPartialUpdate(e),this.clear()}revert(...e){const t=[],s=[],a=[];for(const i of e){const e=w.D.serialize(i.row),n=this.editorData.get(e);if(!n)continue;let r,o;n.type===d.e.delete?(s.push({key:i}),this.editorData.delete(e)):(r=n.update[i.column.index],o=n.source?.[i.column.index]??null,n.update[i.column.index]=o,n.type===d.e.add?a.push({key:i,prevValue:r,value:o}):t.push({key:i,prevValue:r,value:o})),this.removeEmptyUpdate(n)}t.length>0&&this.action.execute({resultId:this.result.id,type:d.e.update,revert:!0,value:t}),s.length>0&&this.action.execute({resultId:this.result.id,type:d.e.delete,revert:!0,value:s}),a.length>0&&this.action.execute({resultId:this.result.id,type:d.e.add,revert:!0,value:a})}getBlobsToUpload(){const e=[];for(const t of this.updates)if(t.type!==d.e.delete)for(let s=0;s<t.update.length;s++){const a=t.update[s];(0,p.I)(a)&&null===a.fileId&&e.push(a)}return e}fillBatch(e){for(const s of this.updates)switch(s.type){case d.e.update:{void 0===e.updatedRows&&(e.updatedRows=[]);const t=e.updatedRows;s.source&&t.push({data:s.source,updateValues:s.update.reduce(((e,t,a)=>((0,p.I)(t)?null!==t.fileId&&(e[a]=(0,h.L)(t.fileId,t.contentType,t.contentLength)):t!==s.source[a]&&(e[a]=t),e)),{}),metaData:this.data.getRowMetadata(s.row)});break}case d.e.add:void 0===e.addedRows&&(e.addedRows=[]);e.addedRows.push({data:(t=s.update,t.map((e=>(0,p.I)(e)?null!==e.fileId?(0,h.L)(e.fileId,e.contentType,e.contentLength):null:e)))});break;case d.e.delete:void 0===e.deletedRows&&(e.deletedRows=[]);e.deletedRows.push({data:replaceBlobsWithNull(s.update),metaData:this.data.getRowMetadata(s.row)});break}var t}updateResult(e,t){super.updateResult(e,t),e.data?.singleEntity&&(this.features=["add","delete","revert"])}clear(){this.editorData.clear(),this.action.execute({resultId:this.result.id,revert:!0})}getNextRowAdd(e){let t=e.subIndex+1;for(;this.editorData.has(w.D.serialize({...e,subIndex:t}));)t++;return{...e,subIndex:t}}shiftRow(e,t){const s=w.D.serialize(e),a=this.editorData.get(w.D.serialize(e));a&&(a.row={index:a.row.index+t,subIndex:0},this.editorData.delete(s),this.editorData.set(w.D.serialize(a.row),a))}removeEmptyUpdate(e){e.type!==d.e.add&&e.source&&!e.source.some(((t,s)=>!this.compareCellValue(t,e.update[s])))&&this.editorData.delete(w.D.serialize(e.row))}getOrCreateUpdate(e,t,s){const a=w.D.serialize(e);let n=!1;if(!this.editorData.has(a)){let r;r=t!==d.e.add?this.data.getRowValue(e):[...s||[]],this.editorData.set(a,{row:e,type:t,source:r,update:(0,i.sH)([...r||s||[]])}),n=!0}return[this.editorData.get(a),n]}compareCellValue(e,t){return t=void 0===t?"":t,"number"==typeof(e=void 0===e?"":e)||"number"==typeof t?String(e)===String(t):"boolean"==typeof e||"boolean"==typeof t?String(e).toLowerCase()===String(t).toLowerCase():(0,g.m)(e)&&(0,g.m)(t)&&"text"in e&&"text"in t?e.text===t.text:e===t}};function replaceBlobsWithNull(e){return e.map((e=>(0,p.I)(e)?null:e))}function applyResultToUpdate(e,t){t&&(e.source=t,e.update=e.update.map(((t,s)=>{const a=e.source[s];return(0,g.m)(a)&&(0,v.T)(t)&&t.fileId&&t.contentLength===a.contentLength?JSON.parse(JSON.stringify(a)):t}))),e.type===d.e.add&&(e.type=d.e.update)}x=(0,a.Cg)([(0,l.Y)(),(0,a.Sn)("design:paramtypes",[Object,f.i])],x)},33582:(e,t,s)=>{s.d(t,{h:()=>m});var a=s(1118),i=s(43974),n=s(45477),r=s(13080),o=s(20816),l=s(10074),c=s(11905),d=s(968),u=s(43198),h=s(78186),p=s(44044);let m=class ResultSetFormatAction extends n.o{static{this.dataFormat=[i.fev.Resultset]}constructor(e,t,s){super(e),this.view=t,this.edit=s}isReadOnly(e){let t=!1;return e.column&&(t=this.view.getColumn(e.column)?.readOnly||!1),e.column&&e.row&&(t||(t=this.edit.getElementState(e)===o.e.delete)),t}isNull(e){return null===this.get(e)}isBinary(e){if(!e.column)return!1;const t=this.view.getColumn(e.column);if("binary"===t?.dataKind?.toLocaleLowerCase())return!0;if(e.row){const t=this.get(e);if((0,d.T)(t))return!0;if((0,c.m)(t))return void 0!==t.binary}return!1}isGeometry(e){if(e.column){const t=this.view.getColumn(e.column);if("geometry"===t?.dataKind?.toLocaleLowerCase())return!0}if(e.row){const t=this.get(e);return(0,l.L)(t)&&"geometry"===t.$type}return!1}isText(e){if(!e?.column)return!1;const t=this.view.getColumn(e.column);if("string"===t?.dataKind?.toLocaleLowerCase())return!0;if(e.row&&!this.isBinary(e)){const t=this.get(e);if((0,c.m)(t))return void 0!==t.text}return!1}getHeaders(){return this.view.columns.map((e=>e.name)).filter((e=>void 0!==e))}getLongestCells(e,t=0,s){const a=[],i=e?[e]:this.view.columnKeys;s??=this.view.rowKeys.length;for(let e=t;e<t+s;e++)for(let t=0;t<i.length;t++){const s={row:this.view.rowKeys[e],column:i[t]},n=this.getDisplayString(s),r=a[t]??"";n.length>r.length&&(a[t]=n)}return a}get(e){return this.view.getCellValue(e)}getText(e){const t=this.get(e);return null===t?"":(0,c.m)(t)||(0,u.h)(t)?void 0!==t.text?t.text:"":(0,l.L)(t)?void 0!==t.value?"object"==typeof t.value&&null!==t.value?JSON.stringify(t.value):String(t.value):"":this.isBinary(e)?"":null!==t&&"object"==typeof t?JSON.stringify(t):"number"==typeof t||"boolean"==typeof t?String(t):t}getDisplayString(e){const t=this.get(e);return null===t?"[null]":(0,u.h)(t)?void 0!==t.text?this.truncateText(String(t.text),200):"[null]":this.isBinary(e)?(0,c.m)(t)&&"null"===t.text?"[null]":"[blob]":(0,c.m)(t)?void 0!==t.text?this.truncateText(String(t.text),200):"[null]":(0,l.L)(t)?void 0!==t.value?"object"==typeof t.value&&null!==t.value?JSON.stringify(t.value):String(t.value):"[null]":this.truncateText(String(t),200)}truncateText(e,t){return e.slice(0,t).split("").map((e=>e.charCodeAt(0)<32?" ":e)).join("")}};m=(0,a.Cg)([(0,r.Y)(),(0,a.Sn)("design:paramtypes",[Object,p.Z,h.G])],m)},27209:(e,t,s)=>{s.d(t,{u:()=>m});var a=s(1118),i=s(94866),n=s(44017),r=s(43974),o=s(13080),l=s(83753),c=s(20816),d=s(19385),u=s(26998),h=s(78186),p=s(44044);let m=class ResultSetSelectAction extends l.C{static{this.dataFormat=[r.fev.Resultset]}get elements(){return Array.from(this.selectedElements.values()).flat()}constructor(e,t,s,a){super(e),this.view=t,this.edit=s,this.data=a,this.actions=new n.H,this.selectedElements=new Map,this.focusedElement=null,(0,i.Gn)(this,{selectedElements:i.sH,focusedElement:i.sH.ref,elements:i.EW,set:i.XI,focus:i.XI,clear:i.XI}),this.validationDisposer=(0,i.mJ)((()=>this.view.rowKeys),((e,t)=>{if(this.focusedElement){const s=this.focusedElement,a=e.findIndex((e=>u.D.isEqual(e,s.row))),i=t.findIndex((e=>u.D.isEqual(e,s.row)));if(a>=0&&-1===i)return;if(-1===i||0===e.length)return void this.focus(null);if(!e.some((e=>u.D.isEqual(e,s.row)))){for(let s=i;s>=0;s--){const a=t[s],i=e.find((e=>u.D.isEqual(e,a)));if(i)return void this.focus({...this.focusedElement,row:i})}for(let s=i;s<=t.length;s++){const a=t[s],i=e.find((e=>u.D.isEqual(e,a)));if(i)return void this.focus({...this.focusedElement,row:i})}this.focus({...this.focusedElement,row:e[e.length-1]})}}})),this.edit.action.addHandler(this.syncFocus.bind(this)),this.edit.applyAction.addHandler(this.syncFocusOnUpdate.bind(this))}isSelected(){return this.selectedElements.size>0}isFocused(e){return!!this.focusedElement&&(u.D.isEqual(e.column,this.focusedElement.column)&&u.D.isEqual(e.row,this.focusedElement.row))}isElementSelected(e){if(void 0===e.row){for(const t of this.view.rowKeys)if(!this.isElementSelected({row:t,column:e.column}))return!1;return!0}const t=this.selectedElements.get(u.D.serialize(e.row));return!!t&&(void 0!==e.column?this.isColumnSelected(t,e.column):t.length===this.view.columnKeys.length)}getFocusedElement(){return this.focusedElement}getRowSelection(e){return this.selectedElements.get(u.D.serialize(e))||[]}getSelectedElements(){return Array.from(this.selectedElements.values()).flat()}getActiveElements(){const e=this.getSelectedElements(),t=this.getFocusedElement();return 0===e.length&&t?[t]:e}getSelectedRows(){const e=[],t=new Set,s=this.getSelectedElements();for(const a of s){const s=u.D.serialize(a.row);t.has(s)||(e.push(a),t.add(s))}return e}getActiveRows(){const e=this.getSelectedRows(),t=this.getFocusedElement();return 0===e.length&&t?[t]:e}set(e,t,s){if(void 0!==e.row)if(void 0!==e.column)try{if(!this.selectedElements.has(u.D.serialize(e.row))){if(!t)return;this.selectedElements.set(u.D.serialize(e.row),[])}const s=this.selectedElements.get(u.D.serialize(e.row));t?this.isColumnSelected(s,e.column)||s.push(e):(this.removeColumnSelection(s,e.column),0===s.length&&this.selectedElements.delete(u.D.serialize(e.row)))}finally{s||this.actions.execute({type:"select",resultId:this.result.id,key:e,selected:t})}else{for(const s of this.view.columnKeys)this.set({row:e.row,column:s},t,!0);s||this.actions.execute({type:"select",resultId:this.result.id,key:e,selected:t})}else{for(const s of this.view.rowKeys)this.set({row:s,column:e.column},t,!0);s||this.actions.execute({type:"select",resultId:this.result.id,key:e,selected:t})}}focus(e){e&&!this.view.has(e)&&(e=null),e&&this.isFocused(e)||e===this.focusedElement||(e&&(e=JSON.parse(JSON.stringify((0,i.HO)(e)))),this.focusedElement=e,this.actions.execute({type:"focus",resultId:this.result.id,key:e}))}clear(){this.selectedElements.clear(),this.actions.execute({type:"clear",resultId:this.result.id})}afterResultUpdate(){this.validateSelection()}dispose(){this.validationDisposer()}validateSelection(){let e=this.focusedElement;e&&!this.view.has(e)&&(e=null);const t=[],s=this.selectedElements.entries();for(const[e,a]of s)for(const e of a)e&&!this.view.has(e)&&t.push(e);this.focus(e);for(const e of t)this.set(e,!1,!0)}syncFocusOnUpdate(e){let t={...this.data.getDefaultKey(),...this.focusedElement};for(const s of e.updates)switch(s.type){case c.e.add:(null===t||u.D.isEqual(s.row,t.row))&&(t={...t,row:s.newRow});break;case c.e.delete:(null===t||u.D.isEqual(s.row,t.row))&&(t={...t,row:s.newRow}),this.set({row:s.row},!1,!0)}this.focus(t)}syncFocus(e){switch(e.type){case c.e.add:e.value&&(e.revert||e.value.length>0&&this.focus(e.value[e.value.length-1].key),this.clear());break;case c.e.delete:e.value&&e.value.length>0&&(this.focus(e.value[0].key),this.clear());break;case c.e.update:e.value&&e.value.length>0&&this.focus(e.value[e.value.length-1].key)}}isColumnSelected(e,t){return e.some((e=>u.D.isEqual(e.column,t)))}removeColumnSelection(e,t){const s=e.findIndex((e=>u.D.isEqual(e.column,t)));s>=0&&e.splice(s,1)}};m=(0,a.Cg)([(0,o.Y)(),(0,a.Sn)("design:paramtypes",[Object,p.Z,h.G,d.i])],m)},44044:(e,t,s)=>{s.d(t,{Z:()=>p});var a=s(1118),i=s(94866),n=s(43974),r=s(45477),o=s(13080),l=s(61050),c=s(11905),d=s(19385),u=s(26998),h=s(78186);let p=class ResultSetViewAction extends r.o{static{this.dataFormat=[n.fev.Resultset]}get rowKeys(){return[...this.editor.addRows,...this.data.rows.map(((e,t)=>({index:t,subIndex:0})))].sort(l.j)}get columnKeys(){return this.columns.map((e=>({index:this.data.columns.indexOf(e)})))}get rows(){return this.data.rows.map((e=>e.data||[]))}get columns(){return this.columnsOrder.map((e=>this.data.columns[e]))}constructor(e,t,s){super(e),this.columnsOrder=[],this.data=t,this.editor=s,(0,i.Gn)(this,{columnsOrder:i.sH,setColumnOrder:i.XI,rows:i.EW,rowKeys:i.EW,columns:i.EW,columnKeys:i.EW})}has(e){return!!this.hasColumn(e.column)&&this.hasRow(e.row)}hasRow(e){return-1!==this.rowIndex(e)}hasColumn(e){return-1!==this.columnIndex(e)}rowIndex(e){return this.rowKeys.findIndex((t=>u.D.isEqual(t,e)))}setColumnOrder(e,t){const s=this.columnDataIndex(e);-1!==s&&(this.columnsOrder.splice(this.columnsOrder.indexOf(s),1),this.columnsOrder.splice(t,0,s))}columnIndex(e){return this.columnKeys.findIndex((t=>u.D.isEqual(t,e)))}columnDataIndex(e){return this.data.columns.findIndex(((t,s)=>u.D.isEqual({index:s},e)))}nextKey(e){let t=e.row,s=e.column;const a=this.rowIndex(t),i=this.columnIndex(s);return-1===a&&t&&(t=this.rowKeys.find((e=>e.index>=t.index)),!t&&this.rowKeys.length>0&&(t=this.rowKeys[this.rowKeys.length-1])),-1===i&&s&&(s=this.columnKeys.find((e=>e.index>=s.index)),!s&&this.columnKeys.length>0&&(s=this.columnKeys[this.columnKeys.length-1])),t&&s?{row:t,column:s}:null}getCellValue(e){const t=this.editor.get(e);if(void 0!==t)return t;if(e.row.index>=this.rows.length||e.column.index>=this.columns.length)throw new Error("Cell is out of range");return this.rows[e.row.index][e.column.index]}getContent(e){const t=this.getCellValue(e);return(0,c.m)(t)?t:null}getColumn(e){if(!(e.index>=this.columns.length))return this.columns[e.index]}getColumnOperations(e){const t=this.getColumn(e);return t?t.supportedOperations.filter((e=>1===e.argumentCount||0===e.argumentCount)):[]}updateResult(e,t){super.updateResult(e,t),this.columnsOrder.length!==this.data.columns.length&&(this.columnsOrder=this.data.columns.map(((e,t)=>t)))}};p=(0,a.Cg)([(0,o.Y)(),(0,a.Sn)("design:paramtypes",[Object,d.i,h.G])],p)},61050:(e,t,s)=>{function compareResultSetRowKeys(e,t){return e.index+e.subIndex/10-t.index-t.subIndex/10}s.d(t,{j:()=>compareResultSetRowKeys})},74051:(e,t,s)=>{s.d(t,{S:()=>createResultSetBlobValue});var a=s(40632);function createResultSetBlobValue(e,t){return{...(0,a.L)(t??null,e.type,e.size),blob:e}}},40632:(e,t,s)=>{function createResultSetFileValue(e,t,s){return{$type:"file",fileId:e,contentType:t,contentLength:s}}s.d(t,{L:()=>createResultSetFileValue})},62385:(e,t,s)=>{s.d(t,{Y:()=>isResultSetBinaryValue});var a=s(11905);function isResultSetBinaryValue(e){return(0,a.m)(e)&&"binary"in e}},3443:(e,t,s)=>{s.d(t,{I:()=>isResultSetBlobValue});var a=s(968);function isResultSetBlobValue(e){return(0,a.T)(e)&&"blob"in e&&e.blob instanceof Blob}},10074:(e,t,s)=>{function isResultSetComplexValue(e){return null!==e&&"object"==typeof e&&"$type"in e&&"string"==typeof e.$type}s.d(t,{L:()=>isResultSetComplexValue})},11905:(e,t,s)=>{s.d(t,{m:()=>isResultSetContentValue});var a=s(10074);function isResultSetContentValue(e){return(0,a.L)(e)&&"content"===e.$type}},968:(e,t,s)=>{s.d(t,{T:()=>isResultSetFileValue});var a=s(10074);function isResultSetFileValue(e){return(0,a.L)(e)&&"file"===e.$type}},43198:(e,t,s)=>{s.d(t,{h:()=>isResultSetGeometryValue});var a=s(10074);function isResultSetGeometryValue(e){return(0,a.L)(e)&&"geometry"===e.$type}},84823:(e,t,s)=>{s.d(t,{i:()=>a});const a=(0,s(44745).M)("data-viewer-database-data-model")},26500:(e,t,s)=>{s.d(t,{$:()=>a});const a=(0,s(44745).M)("data-viewer-database-data-model-result-index")},49418:(e,t,s)=>{s.d(t,{$:()=>n,N:()=>a});var a,i=s(44745);!function(e){e[e.Data=0]="Data",e[e.Analytical=1]="Analytical"}(a||(a={}));const n=(0,i.M)("data-viewer-presentation")},45477:(e,t,s)=>{s.d(t,{M:()=>isDatabaseDataAction,o:()=>DatabaseDataAction});var a=s(94866);class DatabaseDataAction{get empty(){return!this.result.data}constructor(e){this.source=e,this.result=void 0,this.resultIndex=-1,(0,a.Gn)(this,{result:a.sH.ref,resultIndex:a.sH.ref})}updateResult(e,t){this.result=e,this.resultIndex=t}updateResults(e){}afterResultUpdate(){}tryGetAction(e){return this.source.actions.tryGet(this.result,e)}getAction(e){return this.source.actions.get(this.result,e)}getActionImplementation(e){return this.source.actions.getImplementation(this.result,e)}dispose(){}}function isDatabaseDataAction(e){return e.prototype instanceof DatabaseDataAction}},72078:(e,t,s)=>{s.d(t,{j:()=>DatabaseDataModel});var a=s(94866),i=s(29606),n=s(86764),r=s(35721);class DatabaseDataModel{get requestInfo(){return this.source.requestInfo}get supportedDataFormats(){return this.source.supportedDataFormats}constructor(e){this.id=(0,r.u)(),this.name=null,this.source=e,this.countGain=0,this.onDispose=new i.Q,this.onOptionsChange=new i.Q,this.onRequest=new i.Q,this.currentTask=null,(0,a.Gn)(this,{countGain:a.sH})}isLoading(){return this.source.isLoading()}isDisabled(e){return this.source.isDisabled(e)}isReadonly(e){return this.source.isReadonly(e)}isDataAvailable(e,t){return this.source.offset<=e&&this.source.count>=t}getResults(){return this.source.results}getResult(e){return this.source.getResult(e)}setName(e){return this.name=e,this}setResults(e){return this.source.setResults(e),this}setAccess(e){return this.source.setAccess(e),this}setCountGain(e){return this.countGain=e,this}setSlice(e,t=this.countGain){return this.source.setSlice(e,t),this}setDataFormat(e){return this.source.setDataFormat(e),this}setSupportedDataFormats(e){return this.source.setSupportedDataFormats(e),this}setOptions(e){return this.source.setOptions(e),this}async requestOptionsChange(){const e=await this.onOptionsChange.execute();return!n.a.isInterrupted(e)}async save(){await this.requestSaveAction((()=>this.source.saveData()))}async retry(){await this.requestDataAction((()=>this.source.retry()))}async refresh(e){e?await this.source.refreshData():await this.requestDataAction((()=>this.source.refreshData()))}async request(e){e?await this.source.requestData():await this.requestDataAction((()=>this.source.requestData()))}async reload(){await this.requestDataAction((()=>this.source.setSlice(0,this.countGain).requestData()))}async requestDataPortion(e,t){this.isDataAvailable(e,t)||await this.requestDataAction((()=>this.source.setSlice(e,t).requestData()))}async cancel(){await this.source.cancel()}resetData(){this.source.resetData()}async dispose(e=!1){await this.onDispose.execute(),await this.source.dispose(e)}async requestSaveAction(e){return e()}async requestDataAction(e){if(this.currentTask)return this.currentTask;try{return this.currentTask=this.requestDataActionTask(e),await this.currentTask}finally{this.currentTask=null}}async requestDataActionTask(e){let t=await this.onRequest.execute({type:"on",model:this});n.a.isInterrupted(t)||(t=await this.onRequest.execute({type:"before",model:this}),n.a.isInterrupted(t)||(await e(),await this.onRequest.execute({type:"after",model:this})))}}},93979:(e,t,s)=>{var a;s.d(t,{J:()=>a}),function(e){e[e.Default=0]="Default",e[e.Readonly=1]="Readonly"}(a||(a={}))},40620:(e,t,s)=>{var a;s.d(t,{c:()=>a}),function(e){e.asc="asc",e.desc="desc"}(a||(a={}))},41048:(e,t,s)=>{s.r(t),s.d(t,{LocaleService:()=>o});var a=s(1118),i=s(82103),n=s(5576),r=s(34227);let o=class LocaleService extends i.j{constructor(e){super(),this.localizationService=e}register(){this.localizationService.addProvider(this.provider.bind(this))}load(){}async provider(e){switch(e){case"ru":return(await Promise.all([s.e(92436),s.e(18120)]).then(s.bind(s,97660))).default;case"it":return(await Promise.all([s.e(32756),s.e(95739)]).then(s.bind(s,93084))).default;case"zh":return(await Promise.all([s.e(52041),s.e(73358)]).then(s.bind(s,21559))).default;case"fr":return(await Promise.all([s.e(29671),s.e(50977)]).then(s.bind(s,10237))).default;case"de":return(await Promise.all([s.e(57698),s.e(28596)]).then(s.bind(s,2798))).default;default:return(await Promise.all([s.e(41114),s.e(6215)]).then(s.bind(s,24402))).default}}};o=(0,a.Cg)([(0,n._)(),(0,a.Sn)("design:paramtypes",[r.LocalizationService])],o)},90675:(e,t,s)=>{s.r(t),s.d(t,{ResultSetTableFooterMenuService:()=>v});var a=s(1118),i=s(5576),n=s(14452),r=s(43974),o=s(77495),l=s(79023),c=s(72877),d=s(50704),u=s(9874),h=s(84823),p=s(26500),m=s(33399);const g=(0,s(19102).V)("data-count-total-elements",{label:"ui_count_total_elements",tooltip:"data_viewer_total_count_tooltip",icon:"/icons/data_row_count.svg"});let v=class ResultSetTableFooterMenuService{constructor(e,t,s){this.actionService=e,this.menuService=t,this.notificationService=s}register(){this.menuService.addCreator({menus:[m.N],contexts:[h.i,p.$],isApplicable(e){const t=e.get(h.i),s=e.get(p.$),a=t.getResult(s);return!!a&&a.dataFormat===r.fev.Resultset},getItems:(e,t)=>[g,...t],orderItems:(e,t)=>[...(0,o.H)(t,[g]),...t]}),this.actionService.addHandler({id:"result-set-data-base-handler",menus:[m.N],actions:[g],contexts:[h.i,p.$],isActionApplicable(e,t){const s=e.get(h.i),a=e.get(p.$),i=s.getResult(a);if(!i||i.dataFormat!==r.fev.Resultset)return!1;const n=s.source.tryGetAction(a,u.Ri);return t!==g||!!n?.supported},isDisabled:(e,t)=>{const s=e.get(h.i),a=e.get(p.$);if(s.isLoading()||s.isDisabled(a)||!s.getResult(a))return!0;if(t===g){return this.getState(e).totalCount.loading&&Boolean(s.source.totalCountRequestTask?.cancelled)}return!1},isLoading:(e,t)=>{const s=this.getState(e);return t===g&&s.totalCount.loading},getActionInfo:(e,t)=>{const s=e.get(h.i),a=e.get(p.$),i=this.getState(e);if(t===g){const e=s.getResult(a);if(!e)return t.info;let n=t.info.label,r=t.info.icon;if(i.totalCount.loading){n=Boolean(s.source.totalCountRequestTask?.cancelled)?"ui_processing_canceling":"ui_processing_cancel",r="cross"}else{const t=e.loadedFully?e.count:`${e.count}+`;n=String(e.totalCount??t)}return{...t.info,label:n,icon:r}}return t.info},handler:async(e,t)=>{const s=e.get(h.i),a=e.get(p.$),i=this.getState(e);if(t===g)if(i.totalCount.loading){if(s.source.totalCountRequestTask?.cancelled)return;try{await s.source.cancelLoadTotalCount()}catch(e){s.source.totalCountRequestTask?.cancelled||this.notificationService.logException(e)}}else try{i.totalCount.loading=!0,await s.source.loadTotalCount(a)}catch(e){s.source.totalCountRequestTask?.cancelled?this.notificationService.logInfo({title:"data_viewer_total_count_canceled_title",message:"data_viewer_total_count_canceled_message"}):this.notificationService.logException(e,"data_viewer_total_count_failed")}finally{i.totalCount.loading=!1}}})}getState(e){const t=e.get(h.i),s=e.get(p.$);return t.source.getAction(s,d.R).get("result-set-database-metadata",(()=>({totalCount:{loading:!1}})))}};v=(0,a.Cg)([(0,i._)(),(0,a.Sn)("design:paramtypes",[l.ActionService,c.MenuService,n.NotificationService])],v)},63641:(e,t,s)=>{s.d(t,{b:()=>ResultSetDataSource});var a=s(94866),i=s(29905),n=s(43974),r=s(31324),o=s(13080),l=s(45477);class DatabaseDataActions{constructor(e){this.actions=new r.C((()=>[])),this.source=e,(0,a.Gn)(this,{updateResults:a.XI})}tryGet(e,t){if(!t.dataFormat||t.dataFormat.includes(e.dataFormat))return this.get(e,t)}get(e,t){if(!isActionSupportsFormat(t,e.dataFormat))throw new Error("DataFormat unsupported");let s=this.actions.get(e.uniqueResultId).find((s=>s instanceof t&&isActionSupportsFormat(s,e.dataFormat)));return s||(0,a.h5)((()=>{const a=(0,o.W)(t).slice(1),i=[];for(const t of a)(0,l.M)(t)?i.push(this.get(e,t)):i.push(this.source.serviceInjector.getServiceByClass(t));if(a.length!==i.length)throw new Error("Unsupported inject in: "+t.name);s=new t(this.source,...i),s.updateResult(e,this.source.results.indexOf(e)),this.actions.set(e.uniqueResultId,[...this.actions.get(e.uniqueResultId),s])})),s}getImplementation(e,t){const s=this.actions.get(e.uniqueResultId),a=s?.find((s=>s instanceof t&&isActionSupportsFormat(s,e.dataFormat)));return a}updateResults(e){let t=Array.from(this.actions.entries());for(const[s,a]of t){const t=e.find((e=>e.uniqueResultId===s));for(const s of a)s.updateResults(e),t?s.updateResult(t,e.indexOf(t)):s.dispose();t||this.actions.delete(s)}t=Array.from(this.actions.entries());for(const[,e]of t)for(const t of e)t.afterResultUpdate()}}function isActionSupportsFormat(e,t){if("dataFormat"in e)return!e.dataFormat||e.dataFormat.includes(t);const s=e.constructor;return!s.dataFormat||s.dataFormat.includes(t)}var c=s(93979);class DatabaseDataSource{get canCancel(){return this.activeTask instanceof i.Y&&this.activeTask.cancellable}get cancelled(){return this.activeTask instanceof i.Y&&this.activeTask.cancelled}constructor(e){this.serviceInjector=e,this.totalCountRequestTask=null,this.actions=new DatabaseDataActions(this),this.access=c.J.Default,this.results=[],this.offset=0,this.count=0,this.prevOptions=null,this.options=null,this.disabled=!1,this.outdated=!1,this.constraintsAvailable=!0,this.activeRequest=null,this.activeSave=null,this.activeTask=null,this.executionContext=null,this.dataFormat=n.fev.Resultset,this.supportedDataFormats=[],this.requestInfo={originalQuery:"",requestDuration:0,requestMessage:"",requestFilter:"",source:null},this.error=null,this.lastAction=this.requestData.bind(this),(0,a.Gn)(this,{access:a.sH,dataFormat:a.sH,supportedDataFormats:a.sH,results:a.sH,offset:a.sH,count:a.sH,prevOptions:a.sH,options:a.sH,requestInfo:a.sH,totalCountRequestTask:a.sH.ref,error:a.sH.ref,executionContext:a.sH,disabled:a.sH,constraintsAvailable:a.sH.ref,activeRequest:a.sH.ref,activeSave:a.sH.ref,activeTask:a.sH.ref,outdated:a.sH.ref,setResults:a.XI,setSupportedDataFormats:a.XI,resetData:a.XI})}tryGetAction(e,t){if("number"==typeof e){if(!this.hasResult(e))return;return this.actions.tryGet(this.results[e],t)}return this.actions.tryGet(e,t)}getAction(e,t){if("number"==typeof e){if(!this.hasResult(e))throw new Error("Result index out of range");return this.actions.get(this.results[e],t)}return this.actions.get(e,t)}getActionImplementation(e,t){if("number"==typeof e){if(!this.hasResult(e))return;return this.actions.getImplementation(this.results[e],t)}return this.actions.getImplementation(e,t)}async cancel(){this.activeTask instanceof i.Y&&await this.activeTask.cancel()}hasResult(e){return e<this.results.length}getResult(e){return this.results.length>e?this.results[e]:null}setOutdated(){return this.outdated=!0,this}setResults(e){return e=(0,a.sH)(e),this.actions.updateResults(e),this.results=e,this}isLoadable(){return!this.isLoading()&&!this.disabled}isReadonly(e){return this.access===c.J.Readonly||this.results.length>1||!this.executionContext?.context||this.disabled}isLoading(){return!!this.activeRequest||!!this.activeSave||!!this.activeTask}isDisabled(e){return this.isLoading()||this.disabled}setAccess(e){return this.access=e,this}setSlice(e,t){return this.offset=e,this.count=t,this}setOptions(e){return this.options=e,this}setDataFormat(e){return this.dataFormat=e,this}setSupportedDataFormats(e){return this.supportedDataFormats=e,this.supportedDataFormats.includes(this.dataFormat)||(this.dataFormat=e[0]),this}setConstraintsAvailable(e){return this.constraintsAvailable=e,this}setExecutionContext(e){return this.executionContext=e,this}setTotalCount(e,t){const s=this.getResult(e);return s&&(s.totalCount=t),this}async retry(){await this.lastAction()}async runTask(e){if(this.activeTask)try{await this.activeTask}catch{}if(this.activeSave)try{await this.activeSave}catch{}if(this.activeRequest)try{await this.activeRequest}catch{}this.activeTask=e();try{return await this.activeTask}finally{this.activeTask=null}}async requestData(){if(this.activeSave)try{await this.activeSave}finally{}if(this.activeRequest)await this.activeRequest;else{this.lastAction=this.requestData.bind(this);try{this.activeRequest=this.requestDataAction();const e=await this.activeRequest;this.outdated=!1,null!==e&&this.setResults(e)}finally{this.activeRequest=null}}}async refreshData(){this.prevOptions&&(this.options=(0,a.HO)(this.prevOptions)),await this.requestData()}async saveData(){if(this.activeRequest)try{await this.activeRequest}finally{}if(this.activeSave)await this.activeSave;else{this.lastAction=this.saveData.bind(this);try{const e=this.save(this.results);e instanceof Promise&&(this.activeSave=e),this.setResults(await e)}finally{this.activeSave=null}}}clearError(){return this.error=null,this}resetData(){return this.clearError(),this.setResults([]),this.setOutdated(),this}async dispose(e=!1){await this.cancel(),e||await(this.executionContext?.destroy())}async requestDataAction(){return this.prevOptions=(0,a.HO)(this.options),this.request(this.results)}}class ResultSetDataSource extends DatabaseDataSource{constructor(e,t,s){super(e),this.serviceInjector=e,this.graphQLService=t,this.asyncTaskInfoService=s}async cancel(){await super.cancel(),await this.cancelLoadTotalCount()}async cancelLoadTotalCount(){return await(this.totalCountRequestTask?.cancel()),this.totalCountRequestTask}async loadTotalCount(e){const t=this.executionContext,s=this.executionContext?.context;if(!t||!s)throw new Error("Context must be provided");const a=this.getResult(e);if(!a?.id)throw new Error("Result id must be provided");const i=this.asyncTaskInfoService.create((async()=>{const{taskInfo:e}=await this.graphQLService.sdk.asyncSqlRowDataCount({resultsId:a.id,connectionId:s.connectionId,contextId:s.id,projectId:s.projectId});return e})),n=t.run((async()=>{const e=await this.asyncTaskInfoService.run(i),{count:t}=await this.graphQLService.sdk.getSqlRowDataCountResult({taskId:e.id});return t}),(()=>this.asyncTaskInfoService.cancel(i.id)),(()=>this.asyncTaskInfoService.remove(i.id)));this.totalCountRequestTask=n;const r=await n;return this.setTotalCount(e,r),this.totalCountRequestTask}setResults(e){return this.closeResults(this.results.filter((t=>!e.some((e=>e.id===t.id))))),super.setResults(e)}async dispose(e){return e&&await this.closeResults(this.results),super.dispose(e)}async closeResults(e){if(this.executionContext?.context)for(const t of e)if(null!==t.id&&t.contextId===this.executionContext.context.id)try{await this.graphQLService.sdk.closeResult({projectId:t.projectId,connectionId:t.connectionId,contextId:t.contextId,resultId:t.id})}catch(e){console.log(`Error closing result (${t.id}):`,e)}}}},42786:(e,t,s)=>{s.r(t),s.d(t,{DataViewerViewService:()=>d});var a=s(1118),i=s(5576),n=s(37136),r=s(48995),o=s(19697),l=s(26160),c=s(33901);let d=class DataViewerViewService extends n.S{constructor(e){super(),this.navigationTabsService=e,this.registerAction(r.u,o.O,l.t)}getView(){return this.navigationTabsService.getView()}};d=(0,a.Cg)([(0,i._)(),(0,a.Sn)("design:paramtypes",[c.NavigationTabsService])],d)},33399:(e,t,s)=>{s.d(t,{N:()=>a});const a=(0,s(85240).E)("data-viewer-data-model-actions","Data viewer data model actions menu")},24768:(e,t,s)=>{s.r(t),s.d(t,{TableFooterMenuService:()=>b});var a=s(1118),i=s(5576),n=s(88294),r=s(79311),o=s(43858),l=s(81007),c=s(26160),d=s(56291),u=s(79023),h=s(72877),p=s(35173),m=s(83753),g=s(20816),v=s(84823),f=s(26500),w=s(49418),x=s(33399);let b=class TableFooterMenuService{constructor(e,t){this.actionService=e,this.menuService=t}register(){this.menuService.addCreator({menus:[x.N],contexts:[v.i,f.$],isApplicable(e){const t=e.get(v.i),s=e.get(f.$),a=e.get(w.$);return!(t.isReadonly(s)||a?.readonly||a&&a.type!==w.N.Data)},getItems:(e,t)=>[n.t,r.n,o.n,l.k,c.t,d.y,...t]}),this.actionService.addHandler({id:"data-base-handler",contexts:[v.i,f.$],menus:[x.N],actions:[n.t,r.n,o.n,l.k,c.t,d.y],isActionApplicable(e,t){const s=e.get(v.i),a=e.get(f.$);if(s.isReadonly(a))return!1;const i=s.source.getActionImplementation(a,p.M);if(!i)return!1;switch(t){case r.n:case n.t:return i.hasFeature("add");case o.n:return i.hasFeature("delete");case l.k:return i.hasFeature("revert")}return!0},isDisabled(e,t){const s=e.get(v.i),a=e.get(f.$);if(s.isLoading()||s.isDisabled(a)||!s.getResult(a))return!0;switch(t){case r.n:return 0===getActiveElements(s,a).length;case o.n:{const e=s.source.getActionImplementation(a,p.M);if(!e)return!0;const t=getActiveElements(s,a);return 0===t.length||!t.some((t=>e.getElementState(t)!==g.e.delete))}case l.k:{const e=s.source.getActionImplementation(a,p.M);if(!e)return!0;const t=getActiveElements(s,a);return 0===t.length||!t.some((t=>{const s=e.getElementState(t);return s===g.e.add?e.isElementEdited(t):null!==s}))}case c.t:case d.y:{const e=s.source.getActionImplementation(a,p.M);return!e?.isEdited()}}return!1},getActionInfo(e,t){switch(t){case n.t:return{...t.info,label:"",icon:"/icons/data_add_sm.svg",tooltip:"data_viewer_action_edit_add"};case r.n:return{...t.info,label:"",icon:"/icons/data_add_copy_sm.svg",tooltip:"data_viewer_action_edit_add_copy"};case o.n:return{...t.info,label:"",icon:"/icons/data_delete_sm.svg",tooltip:"data_viewer_action_edit_delete"};case l.k:return{...t.info,label:"",icon:"/icons/data_revert_sm.svg",tooltip:"data_viewer_action_edit_revert"};case c.t:return{...t.info,icon:"table-save"};case d.y:return{...t.info,icon:"/icons/data_revert_all_sm.svg",tooltip:"data_viewer_value_revert_title"}}return t.info},handler:(e,t)=>{const s=e.get(v.i),a=e.get(f.$),i=s.source.getActionImplementation(a,p.M);if(!i)return;const u=s.source.getActionImplementation(a,m.C),h=getActiveElements(s,a);switch(t){case n.t:i.add(u?.getFocusedElement());break;case r.n:i.duplicate(...h);break;case o.n:i.delete(...h);break;case l.k:i.revert(...h);break;case c.t:s.save().catch((()=>{}));break;case d.y:i.clear()}}})}};function getActiveElements(e,t){const s=e.source.getActionImplementation(t,m.C);return s?.getActiveElements()??[]}b=(0,a.Cg)([(0,i._)(),(0,a.Sn)("design:paramtypes",[u.ActionService,h.MenuService])],b)},71509:(e,t,s)=>{s.d(t,{M:()=>a});const a=(0,s(44745).M)("data-viewer-database-simple")},41986:(e,t,s)=>{s.d(t,{f:()=>a});const a=(0,s(85240).E)("data-viewer-data-model-tools","Data viewer data model tools menu")},97996:(e,t,s)=>{s.d(t,{TableHeaderMenu:()=>g});var a=s(41773),i=s(7838),n=s(64928),r=s(90398),o=s(68768),l=s(26339),c=s(21252),d=s(12483),u=s(84823),h=s(26500),p=s(71509),m=s(41986);const g=(0,i.PA)((function TableHeaderMenu({model:e,simple:t,resultIndex:s}){const i=(0,d.b)({menu:m.f}),g=(0,n.d)(o.A,l.A);return(0,r.Z)(i.context,((a,i)=>{a.set(u.i,e,i),a.set(h.$,s,i),a.set(p.M,t,i)})),(0,a.jsx)(c.R,{className:g.floating,menu:i})}))},77864:(e,t,s)=>{s.r(t),s.d(t,{TableHeaderMenu:()=>f,TableHeaderService:()=>w,TableWhereFilter:()=>v});var a=s(1118),i=s(15993),n=s(46210),r=s(82103),o=s(5576),l=s(41273),c=s(72877),d=s(79023);const u=(0,s(19102).V)("data-viewer-constraints-delete",{label:"data_grid_table_delete_filters_and_orders",tooltip:"data_grid_table_delete_filters_and_orders",icon:"erase"});var h=s(9874),p=s(84823),m=s(26500),g=s(41986);const v=i.lazy((async()=>{const{TableWhereFilter:e}=await Promise.all([s.e(11502),s.e(97493),s.e(67557),s.e(63190),s.e(9977)]).then(s.bind(s,31564));return{default:e}})),f=i.lazy((async()=>{const{TableHeaderMenu:e}=await Promise.all([s.e(63190),s.e(16006)]).then(s.bind(s,97996));return{default:e}}));let w=class TableHeaderService extends r.j{constructor(e,t){super(),this.menuService=e,this.actionService=t,this.tableHeaderPlaceholder=new n.B}register(){this.tableHeaderPlaceholder.add(v,1),this.tableHeaderPlaceholder.add(f,2),this.actionService.addHandler({id:"table-header-menu-base-handler",contexts:[p.i,m.$],isActionApplicable:e=>!!e.hasValue(l.F,g.f),handler:async(e,t)=>{switch(t){case u:{const t=e.get(p.i),s=e.get(m.$),a=t.source.tryGetAction(s,h.Ri);a&&(a.deleteData(),await t.request());break}}},getActionInfo:(e,t)=>e.get(l.F)===g.f?{...t.info,label:""}:t.info,isDisabled:(e,t)=>{const s=e.get(p.i),a=e.get(m.$);if(s.isLoading()||s.isDisabled(a))return!0;if(t===u){const e=s.source.tryGetAction(a,h.Ri);if(s.source.options?.whereFilter)return!1;if(e)return 0===e.filterConstraints.length&&0===e.orderConstraints.length}return!0}}),this.menuService.addCreator({menus:[g.f],getItems:(e,t)=>[...t,u]})}};w=(0,a.Cg)([(0,o._)(),(0,a.Sn)("design:paramtypes",[c.MenuService,d.ActionService])],w)},31564:(e,t,s)=>{s.d(t,{TableWhereFilter:()=>p});var a=s(41773),i=s(7838),n=s(17675),r=s(76652),o=s(47768);const l="inlineEditor___uHuz_ theme-background-surface theme-text-on-surface",c="imbeddedEditor___jcIcr";var d=s(94866),u=s(28347),h=s(9874);const p=(0,i.PA)((function TableWhereFilter({model:e,resultIndex:t}){const s=(0,n.W)(),i=function useWhereFilter(e,t){return(0,u.G)((()=>({get filter(){return this.constraints?.filterConstraints.length&&this.model.source.requestInfo.requestFilter?this.model.requestInfo.requestFilter:this.model.source.options?.whereFilter??""},get constraints(){return this.model.source.hasResult(this.resultIndex)?this.model.source.tryGetAction(this.resultIndex,h.Ri)??null:null},get disabled(){return!this.constraints?.supported||this.model.isLoading()||this.model.isDisabled(t)},get applicableFilter(){return this.model.source.prevOptions?.whereFilter!==this.model.source.options?.whereFilter||this.model.source.options?.whereFilter!==this.model.source.requestInfo.requestFilter},set(e){this.constraints&&(this.constraints.deleteFilters(),this.constraints.setWhereFilter(e))},async apply(){!this.applicableFilter||this.model.isLoading()||this.model.isDisabled(this.resultIndex)||await this.model.request()}})),{model:d.sH.ref,resultIndex:d.sH.ref,filter:d.EW,constraints:d.EW,disabled:d.EW,applicableFilter:d.EW,set:d.XI.bound,apply:d.XI.bound},{model:e,resultIndex:t})}(e,t);return(0,a.jsx)(r.m,{className:c,children:(0,a.jsx)(o.h,{className:l,name:"data_where",value:i.filter,placeholder:s(i.constraints?.supported?"table_header_sql_expression":"table_header_sql_expression_not_supported"),controlsPosition:"inside",edited:!!i.filter,disableSave:!i.applicableFilter,disabled:i.disabled,simple:!0,onSave:i.apply,onChange:i.set})})}))},5455:(e,t,s)=>{s.d(t,{TableViewer:()=>Be});var a=s(41773),i=s(94866),n=s(7838),r=s(15993),o=s(17675),l=s(64928),c=s(67590),d=s(77337),u=s(28347),h=s(34685),p=s(69519),m=s(14249),g=s(7167),v=s(51565),f=s(18662),w=s(16796),x=s(18699),b=s(43974),y=s(82592),_=s(9874),S=s(84658);const C={presentation:"presentation___EBVUq"},I={statistics:"statistics____nP6a theme-typography--caption"},D=(0,n.PA)((function TableStatistics({model:e,resultIndex:t}){const s=(0,l.d)(I),i=(0,o.W)(),n=e.source,r=e.getResult(t);return(0,a.jsxs)("div",{className:(0,g.s)(s,{statistics:!0}),children:[i("data_viewer_statistics_status")," ",n.requestInfo.requestMessage,(0,a.jsx)("br",{}),i("data_viewer_statistics_duration")," ",n.requestInfo.requestDuration," ms",(0,a.jsx)("br",{}),i("data_viewer_statistics_updated_rows")," ",r?.updateRowCount||0,(0,a.jsx)("br",{}),(0,a.jsx)("br",{}),(0,a.jsx)("pre",{children:n.requestInfo.source})]})})),R=(0,n.PA)((function DataPresentation({model:e,actions:t,dataFormat:s,presentation:i,resultIndex:n,simple:r,isStatistics:o}){if(void 0!==i.dataFormat&&s!==i.dataFormat||!e.source.hasResult(n))return e.isLoading()?null:(0,a.jsx)(m.x,{children:"Current data can't be displayed by selected presentation"});const l=i.getPresentationComponent();return o?(0,a.jsx)(D,{model:e,resultIndex:n}):(0,a.jsx)(l,{dataFormat:s,model:e,actions:t,resultIndex:n,simple:r,className:(0,g.s)(C,{presentation:!0})})}));var F=s(42786),T=s(90447),A=s(84833),E=s(39755),V=s(89232),P=s(86718),j=s(87518);const k={error:"error___TgEZP theme-background-surface theme-text-on-surface",errorBody:"errorBody___jQFur",errorMessage:"errorMessage___wbtLG",iconOrImage:"iconOrImage___eVBwI",controls:"controls___S_ZOP",button:"button___VOpo8",collapsed:"collapsed___Kil11",animated:"animated___GMyM4",errorHidden:"errorHidden___ubBvE"},M=(0,n.PA)((function TableError({model:e,loading:t,className:s}){const n=(0,o.W)(),c=(0,l.d)(k),d=(0,u.G)((()=>({error:null,display:!1,hide(){this.display=!1},show(){this.display=!0}})),{display:i.sH.ref},!1),h=(0,j.M)(e.source.error,P.B),p=(0,T.s)(e.source.error),m=(0,A.O)(!!d.error&&!t,1),v=null===d.error;let f="/icons/error_icon.svg";h?.errorType===P.i.QUOTE_EXCEEDED&&(f="/icons/info_icon.svg");let onRetry=()=>e.retry();if(p.refresh){const e=onRetry,t=p.refresh;onRetry=async()=>{t(),await e()}}return(0,r.useEffect)((()=>{d.error!==e.source.error&&(d.error=e.source.error||null,d.display=!!e.source.error)}),[d,e.source.error]),(0,a.jsxs)("div",{role:"status","aria-label":p.message,tabIndex:0,className:(0,g.s)(c,{error:!0,animated:m,collapsed:!d.display,errorHidden:v},s),children:[(0,a.jsxs)("div",{className:(0,g.s)(c,{errorBody:!0}),children:[(0,a.jsx)(E.O,{className:(0,g.s)(c,{iconOrImage:!0}),icon:f,title:p.message,onClick:()=>d.show()}),(0,a.jsx)("div",{className:(0,g.s)(c,{errorMessage:!0}),children:p.message})]}),(0,a.jsxs)("div",{className:(0,g.s)(c,{controls:!0}),children:[(0,a.jsx)(V.$,{className:(0,g.s)(c,{button:!0}),type:"button",mod:["outlined"],onClick:()=>d.hide(),children:n("ui_error_close")}),p.hasDetails&&(0,a.jsx)(V.$,{className:(0,g.s)(c,{button:!0}),type:"button",mod:["outlined"],onClick:p.open,children:n("ui_errors_details")}),(0,a.jsx)(V.$,{className:(0,g.s)(c,{button:!0}),type:"button",mod:["unelevated"],onClick:onRetry,children:n("ui_processing_retry")})]})]})}));var N=s(37797),O=s(84972),q=s(71423),L=s(84237),H=s(81595),B=s(19780),W=s(25334),z=s(75924),G=s(49083);const K={autoReload:"autoReload___ssVLB theme-text-primary theme-ripple",iconBox:"iconBox___pRCl7",icon:"icon___QleNI",arrowBox:"arrowBox___kjenx"};var U=s(32623),$=s(71635),X=s(51477),Q=s(62204),Y=s(92659),J=s(76652),Z=s(16101),ee=s(39865),te=s(15380),se=s(9428),ae=s(68426);const ie={footerContainer:"footerContainer___VR8Fc",buttons:"buttons___SJiHJ",wrapper:"wrapper___PI1wb"},ne=(0,n.PA)((function AutoRefreshSettingsDialog({rejectDialog:e,resolveDialog:t,payload:s}){const i=(0,o.W)(),n=(0,l.d)(ie),c=(0,r.useRef)(null);function resolve(){c.current?.focus();const e=c.current?.checkValidity();c.current?.reportValidity(),e&&t()}return(0,a.jsxs)(X.n,{size:"small",children:[(0,a.jsx)(Q.D,{title:"data_viewer_auto_refresh_settings",icon:"/icons/settings_cog_m.svg",onReject:e}),(0,a.jsx)(Y.a,{noBodyPadding:!0,noOverflow:!0,children:(0,a.jsx)("div",{className:(0,g.s)(n,{wrapper:!0}),children:(0,a.jsx)(O.l,{ref:c,onSubmit:()=>resolve(),children:(0,a.jsx)(J.m,{children:(0,a.jsxs)(Z.Y,{form:!0,gap:!0,children:[(0,a.jsx)(ee.F,{name:"interval",state:s.settings,type:"number",min:5,max:3600,children:i("ui_interval")}),(0,a.jsx)(te.G,{id:"dataViewer.tableViewer.autoRefresh.stopOnError",name:"stopOnError",state:s.settings,children:i("data_viewer_auto_refresh_settings_stop_on_error")})]})})})})}),(0,a.jsx)(se.Z,{children:(0,a.jsx)("div",{className:(0,g.s)(n,{footerContainer:!0}),children:(0,a.jsxs)("div",{className:(0,g.s)(n,{buttons:!0}),children:[(0,a.jsx)(V.$,{mod:["outlined"],onClick:()=>e(),children:i("ui_processing_cancel")}),(0,a.jsx)(ae.S,{}),(0,a.jsx)(V.$,{mod:["unelevated"],onClick:()=>resolve(),children:i("ui_processing_ok")})]})})})]})}));const re=[5,10,15,30,60],oe=(0,n.PA)((function AutoRefreshButton({model:e,disabled:t}){const s=(0,o.W)(),n=function useAutoRefresh(e){const t=(0,x.h)($.CommonDialogService),s=(0,u.G)((()=>({interval:null,stopOnError:!0})),{interval:i.sH,stopOnError:i.sH},!1);return(0,U.$)((async()=>{try{await e.refresh()}catch{}e.source.error&&s.stopOnError&&(s.interval=null)}),null!==s.interval?1e3*s.interval:null),(0,d.U)((()=>({async configure(){const e=(0,i.sH)({...this.settings});if(await t.open(ne,{settings:e})===$.DialogueStateResult.Resolved){let t=e.interval;"string"==typeof t&&(t=Number.parseInt(t)),Number.isInteger(t)||(t=null),Object.assign(this.settings,{...e,interval:t})}},setInterval(e){this.settings.interval=e},stop(){this.settings.interval=null}})),{settings:s},["configure","setInterval","stop"])}(e),r=n.settings.interval,c=[],h=(0,l.d)(K),p=s(null===r?"data_viewer_action_refresh":"data_viewer_action_auto_refresh_stop");for(let e of re){let t=["ui_second_first_form","ui_second_second_form","ui_second_third_form"];e>=60&&(t=["ui_minute_first_form","ui_minute_second_form","ui_minute_third_form"],e=Math.round(e/60)),c.push(s((0,G.h)(e,t),void 0,{interval:e}))}return(0,a.jsxs)("div",{className:(0,g.s)(h,{autoReload:!0}),"aria-disabled":t,children:[(0,a.jsx)("div",{className:(0,g.s)(h,{iconBox:!0}),title:p,onClick:function handleClick(){t||(null===r?e.refresh():n.stop())},children:null===r?(0,a.jsx)(L.I,{className:(0,g.s)(h,{icon:!0}),name:"/icons/refresh_m.svg#root",viewBox:"0 0 24 24"}):(0,a.jsx)(H.x,{state:"stop",interval:r})}),(0,a.jsx)(B.W,{label:"Auto refresh",items:(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(W.D,{"aria-label":s("ui_custom"),close:!0,onClick:n.configure,children:(0,a.jsx)(z.B,{label:s("ui_custom")})}),re.map(((e,t)=>(0,a.jsx)(W.D,{"aria-label":c[t],selected:r===e,close:!0,onClick:()=>n.setInterval(e),children:(0,a.jsx)(z.B,{label:c[t]})},e))),(0,a.jsx)(W.D,{"aria-label":s("ui_processing_stop"),selected:null===r,close:!0,onClick:n.stop,children:(0,a.jsx)(z.B,{label:s("ui_processing_stop")})})]}),disabled:t,modal:!0,disclosure:!0,children:(0,a.jsx)("div",{className:(0,g.s)(h,{arrowBox:!0}),title:s("data_viewer_action_auto_refresh"),children:(0,a.jsx)(L.I,{className:(0,g.s)(h,{icon:!0}),name:"arrow",viewBox:"0 0 16 16"})})})]})})),le={count:"count___gRWhP",input:"input___JmY5p",time:"time___pAOtN theme-typography--caption"};var ce=s(13720),de=s(90398),ue=s(26339),he=s(21252),pe=s(12483),me=s(84823),ge=s(26500),ve=s(71509),fe=s(33399);const we={wrapper:"wrapper___mpf6H"},xe={tableFooterMenu:"tableFooterMenu___XPEyq",menuBarItem:"menuBarItem___wlUDJ",menuBarItemLabel:"menuBarItemLabel___cvr7h",menuBarItemIcon:"menuBarItemIcon___AVLvV"},be=[[ue.A,{mode:"append",styles:[xe]}]],ye=(0,n.PA)((function TableFooterMenu({resultIndex:e,model:t,simple:s,className:i}){const n=(0,l.d)(we,xe),r=(0,pe.b)({menu:fe.N});return(0,de.Z)(r.context,((a,i)=>{a.set(me.i,t,i),a.set(ge.$,e,i),a.set(ve.M,s,i)})),(0,a.jsx)("div",{className:(0,g.s)(n,{wrapper:!0,tableFooterMenu:!0},i),children:(0,a.jsx)(ce.Z,{registry:be,children:(0,a.jsx)(he.R,{menu:r})})})})),_e=(0,n.PA)((function TableFooter({resultIndex:e,model:t,simple:s}){const i=(0,r.useRef)(null),[n,o]=(0,r.useState)(t.countGain+""),c=(0,x.h)(q.DataViewerSettingsService),d=(0,l.d)(le),u=(0,r.useCallback)((async()=>{if(!i.current)return;const e=c.getDefaultRowsCount(parseInt(i.current.value,10));o(e+""),t.countGain!==e&&await t.setCountGain(e).reload()}),[t]);(0,r.useEffect)((()=>{n!==t.countGain+""&&o(t.countGain+"")}),[t.countGain]);const p=(0,h.u)((()=>t.isLoading()||t.isDisabled(e)));return(0,a.jsxs)(N.i,{type:"secondary",center:!0,minHeight:!0,children:[(0,a.jsx)(oe,{model:t,disabled:p}),(0,a.jsx)("div",{className:(0,g.s)(d,{count:!0}),children:(0,a.jsx)(O.l,{onSubmit:u,children:(0,a.jsx)("input",{ref:i,className:(0,g.s)(d,{input:!0}),type:"number",value:n,disabled:p,min:c.minFetchSize,max:c.maxFetchSize,onChange:e=>o(e.target.value),onBlur:u})})}),(0,a.jsx)(ye,{model:t,resultIndex:e,simple:s}),t.source.requestInfo.requestMessage.length>0&&(0,a.jsxs)("div",{className:(0,g.s)(d,{time:!0}),children:[t.source.requestInfo.requestMessage," - ",t.source.requestInfo.requestDuration,"ms"]})]})}));var Se=s(42157);const Ce={tableHeader:"tableHeader___HMK4n"};var Ie=s(77864);const De=(0,n.PA)((function TableHeader({model:e,resultIndex:t,simple:s,className:i}){const n=(0,l.d)(Ce),r=(0,x.h)(Ie.TableHeaderService);return(0,a.jsx)("header",{className:(0,g.s)(n,{tableHeader:!0},i),children:(0,a.jsx)(Se.O,{container:r.tableHeaderPlaceholder,model:e,resultIndex:t,simple:s})})}));var Re=s(98098),Fe=s(20458),Te=s(22321),Ae=s(44451),Ee=s(43659),Ve=s(48522),Pe=s(19259);const je=(0,n.PA)((function PresentationTab({model:e,presentation:t,className:s,onClick:i}){const n=(0,o.W)();if(t.getTabComponent){const n=t.getTabComponent();return(0,a.jsx)(n,{tabId:t.id,className:s,model:e,presentation:t,disabled:e.isLoading(),onClick:i})}return(0,a.jsxs)(Ee.o,{tabId:t.id,disabled:e.isLoading(),onClick:i,children:[t.icon&&(0,a.jsx)(Ve.$,{icon:t.icon}),t.title&&(0,a.jsx)(Pe.I,{children:n(t.title)})]})})),ke={tableLeftBar:"tableLeftBar___dfH7w",tabListFlexible:"tabListFlexible___pmcRL",tabOuter:"tabOuter___RTfea"},Me=[[Re.A,{mode:"append",styles:[{tabList:"tabList___AALhc theme-background-secondary theme-text-on-secondary"}]}],[Fe.A,{mode:"append",styles:[{tab:"tab___zCNgx theme-ripple theme-background-background theme-text-text-primary-on-light theme-typography--body2"}]}]],Ne=(0,n.PA)((function TablePresentationBar({type:e,presentationId:t,supportedDataFormat:s,dataFormat:i,model:n,resultIndex:r,className:o,onPresentationChange:c,onClose:d}){const u=(0,l.d)(ke),h=(0,x.h)(S.DataPresentationService).getSupportedList(e,s,i,n,r),p=je,handleClick=e=>{e===t?d?.():c(e)},m=e===S.DataPresentationType.main;return h.length<=1&&m?null:(0,a.jsx)("div",{className:(0,g.s)(u,{tableLeftBar:!0},o),children:(0,a.jsx)(Te._,{currentTabId:t,autoSelect:m,children:(0,a.jsx)(ce.Z,{registry:Me,children:(0,a.jsx)(Ae.w,{className:(0,g.s)(u,{tabListFlexible:m}),"aria-label":"Data Presentations",vertical:!0,rotated:!0,children:h.map((e=>(0,a.jsx)(p,{presentation:e,model:n,resultIndex:r,onClick:handleClick},e.id)))})})})})})),Oe={presentation:"presentation___oCFCF"},qe=(0,n.PA)((function TableToolsPanel({model:e,actions:t,dataFormat:s,presentation:i,resultIndex:n,simple:r}){const c=(0,o.W)(),d=(0,l.d)(Oe),u=e.getResult(n);if(!i||void 0!==i.dataFormat&&s!==i.dataFormat)return e.isLoading()?null:(0,a.jsx)(m.x,{children:"Current data can't be displayed by selected presentation"});const h=i.getPresentationComponent();return u?.loadedFully&&!u.data?(0,a.jsx)(m.x,{children:c("data_viewer_nodata_message")}):(0,a.jsx)(h,{className:(0,g.s)(d,{presentation:!0}),dataFormat:s,model:e,actions:t,resultIndex:n,simple:r})})),Le={split:"split___BXIBF",disabled:"disabled___JJ7J7",paneContent:"paneContent___DEzDl theme-background-surface theme-text-on-surface",grid:"grid___opsga",captureView:"captureView___Bu65B",tableViewer:"tableViewer___vAdkV theme-background-secondary theme-text-on-secondary",tableContent:"tableContent___j3ooy",tableData:"tableData___BRCXw",pane:"pane___iDsFU",tablePresentationBar:"tablePresentationBar___7gXmU",loader:"loader___snION"};var He=s(72286);const Be=(0,n.PA)((0,r.forwardRef)((function TableViewer({tableId:e,resultIndex:t=0,presentationId:s,valuePresentationId:n,simple:C=!1,className:I,onPresentationChange:D,onValuePresentationChange:T},A){const E=(0,o.W)(),V=(0,l.d)(Le),P=(0,x.h)(F.DataViewerViewService),j=(0,x.h)(S.DataPresentationService),k=(0,x.h)(He.TableViewerStorageService).get(e),N=k?.getResult(t),O=k?.isLoading()??!0,q=N?.dataFormat||b.fev.Resultset,L=(0,c.s)("table-viewer"),H=(0,d.U)({clearConstraints(){const e=k?.source.tryGetAction(t,_.Ri);e&&e.deleteAll()}}),B=(0,u.G)((()=>({setPresentation(e){const t=j.get(e);t&&(void 0!==t.dataFormat&&t.dataFormat!==this.dataModel?.source.dataFormat&&(H.clearConstraints(),this.dataModel?.setDataFormat(t.dataFormat).reload()),this.onPresentationChange(e))},setValuePresentation(e){if(e===this.valuePresentationId)return;if(null===e)return void this.onValuePresentationChange(null);let t=j.get(e);!t&&this.dataModel&&(t=j.getSupported(S.DataPresentationType.toolsPanel,this.dataFormat,void 0,this.dataModel,this.resultIndex)??void 0),t&&this.onValuePresentationChange(t.id)},switchValuePresentation(e){e!==this.valuePresentationId?this.setValuePresentation(e):this.onValuePresentationChange(null)},closeValuePresentation(){this.onValuePresentationChange(null)}})),{presentationId:i.sH,valuePresentationId:i.sH,dataFormat:i.sH,resultIndex:i.sH,dataModel:i.sH.ref},{presentationId:s,valuePresentationId:n,dataModel:k,resultIndex:t,dataFormat:q,onPresentationChange:D,onValuePresentationChange:T},["setPresentation","setValuePresentation","switchValuePresentation","closeValuePresentation"]),W=(0,h.u)((()=>null===k?.source.error&&0===k.source.results.length&&k.source.outdated&&k.source.isLoadable()));if((0,r.useEffect)((()=>{W&&k?.request()}),[W]),!k)return(0,a.jsx)(p.a,{});const z=j.getSupported(S.DataPresentationType.main,q,s,k,t);if(!z)return(0,a.jsx)(m.x,{children:E("plugin_data_viewer_no_available_presentation")});const G=n?j.getSupported(S.DataPresentationType.toolsPanel,q,n,k,t):null,K=N?.loadedFully&&!N.data,U=k.source.hasResult(t),$=k.source.results.length>0&&z.dataFormat===q,X=G&&(void 0===G.dataFormat||G.dataFormat===q)&&$&&U&&!C;return(0,a.jsx)(y.G,{className:(0,g.s)(V,{captureView:!0}),view:P,children:(0,a.jsxs)("div",{ref:A,className:(0,g.s)(V,{tableViewer:!0},I),children:[(0,a.jsxs)("div",{className:(0,g.s)(V,{tableContent:!0}),children:[!K&&(0,a.jsx)(Ne,{className:(0,g.s)(V,{tablePresentationBar:!0}),type:S.DataPresentationType.main,presentationId:z.id,dataFormat:q,supportedDataFormat:k.supportedDataFormats,model:k,resultIndex:t,onPresentationChange:B.setPresentation}),(0,a.jsxs)("div",{className:(0,g.s)(V,{tableData:!0}),children:[(0,a.jsx)(De,{model:k,resultIndex:t,simple:C}),(0,a.jsxs)(v.B,{className:(0,g.s)(V,{split:!0,disabled:!X}),...L,sticky:30,mode:X?L.mode:"minimize",disable:!X,keepRatio:!0,disableAutoMargin:!0,children:[(0,a.jsx)(f.Z,{className:(0,g.s)(V,{pane:!0}),children:(0,a.jsxs)("div",{className:(0,g.s)(V,{paneContent:!0,grid:!0}),children:[(0,a.jsx)(p.a,{className:(0,g.s)(V,{loader:!0}),suspense:!0,children:(0,a.jsx)(R,{model:k,actions:B,dataFormat:q,presentation:z,resultIndex:t,simple:C,isStatistics:K})}),(0,a.jsx)(M,{model:k,loading:O}),(0,a.jsx)(p.a,{loading:O,cancelDisabled:!k.source.canCancel,overlay:$,onCancel:()=>k.source.cancel()})]})}),(0,a.jsx)(w.$,{}),(0,a.jsx)(f.Z,{className:(0,g.s)(V,{pane:!0}),basis:"30%",main:!0,children:(0,a.jsx)(p.a,{className:(0,g.s)(V,{loader:!0}),suspense:!0,children:(0,a.jsx)("div",{className:(0,g.s)(V,{paneContent:!0}),children:U&&(0,a.jsx)(qe,{model:k,actions:B,dataFormat:q,presentation:G,resultIndex:t,simple:C})})})})]})]}),!C&&!K&&(0,a.jsx)(Ne,{type:S.DataPresentationType.toolsPanel,className:(0,g.s)(V,{tablePresentationBar:!0}),presentationId:n??null,dataFormat:q,supportedDataFormat:[q],model:k,resultIndex:t,onPresentationChange:B.setValuePresentation,onClose:B.closeValuePresentation})]}),(0,a.jsx)(_e,{model:k,resultIndex:t,simple:C})]})})})))},18861:(e,t,s)=>{s.d(t,{U:()=>a});const a=s(15993).lazy((async()=>{const{TableViewer:e}=await Promise.all([s.e(11502),s.e(7542),s.e(97493),s.e(67557),s.e(64435),s.e(73676),s.e(88273),s.e(63190),s.e(18682),s.e(11116),s.e(62570),s.e(95860),s.e(63786)]).then(s.bind(s,5455));return{default:e}}))},72286:(e,t,s)=>{s.r(t),s.d(t,{TableViewerStorageService:()=>o});var a=s(1118),i=s(94866),n=s(5576),r=s(44017);let o=class TableViewerStorageService{get values(){return Array.from(this.tableModelMap.values())}constructor(){this.tableModelMap=new Map,this.onChange=new r.H,(0,i.Gn)(this,{tableModelMap:i.sH.shallow,values:i.EW})}has(e){return this.tableModelMap.has(e)}get(e){return this.tableModelMap.get(e)}add(e){return this.tableModelMap.has(e.id)||(this.tableModelMap.set(e.id,e),this.onChange.execute({type:"add",model:e})),e}remove(e){const t=this.get(e);t&&(this.onChange.execute({type:"remove",model:t}),this.tableModelMap.delete(e))}};o=(0,a.Cg)([(0,n._)(),(0,a.Sn)("design:paramtypes",[])],o)},62513:(e,t,s)=>{s.r(t),s.d(t,{DataValuePanelBootstrap:()=>u,ValuePanel:()=>d});var a=s(1118),i=s(15993),n=s(82103),r=s(5576),o=s(19385),l=s(84658),c=s(86928);const d=i.lazy((async()=>{const{ValuePanel:e}=await Promise.all([s.e(11502),s.e(97493),s.e(63190),s.e(61453)]).then(s.bind(s,98945));return{default:e}}));let u=class DataValuePanelBootstrap extends n.j{constructor(e,t){super(),this.dataPresentationService=e,this.dataValuePanelService=t}register(){this.dataPresentationService.add({id:"value-text-presentation",type:l.DataPresentationType.toolsPanel,title:"data_viewer_presentation_value_title",icon:"value-panel",hidden:(e,t,s)=>{if(!t.source.hasResult(s))return!0;const a=t.source.tryGetAction(s,o.i);return a?.empty||0===this.dataValuePanelService.getDisplayed({model:t,resultIndex:s,dataFormat:e}).length},getPresentationComponent:()=>d})}load(){}};u=(0,a.Cg)([(0,r._)(),(0,a.Sn)("design:paramtypes",[l.DataPresentationService,c.DataValuePanelService])],u)},86928:(e,t,s)=>{s.r(t),s.d(t,{DataValuePanelService:()=>r});var a=s(1118),i=s(5576),n=s(68356);let r=class DataValuePanelService{constructor(){this.tabs=new n.a("Value Panel")}get(e){return this.tabs.getTabInfo(e)}getDisplayed(e){return this.tabs.tabInfoList.filter((t=>(void 0===e?.dataFormat||null===e.dataFormat||t.options?.dataFormat.includes(e.dataFormat))&&!t.isHidden?.(t.key,e)))}add(e){this.tabs.add(e)}};r=(0,a.Cg)([(0,i._)(),(0,a.Sn)("design:paramtypes",[])],r)},98945:(e,t,s)=>{s.d(t,{ValuePanel:()=>S});var a=s(41773),i=s(94866),n=s(7838),r=s(64928),o=s(13720),l=s(7167),c=s(18699),d=s(20458),u=s(35090),h=s(22321),p=s(44451),m=s(52843),g=s(31324),v=s(15084),f=s(50704),w=s(83753),x=s(86928);const b={tabList:"tabList___a56zM theme-background-secondary theme-border-color-background theme-text-on-secondary"},y=[[d.A,{mode:"append",styles:[{tabOuter:"tabOuter___R6xJu"}]}]],_=[[d.A,{mode:"append",styles:[{tab:"tab___pu8oQ"}]}],[u.A,{mode:"append",styles:[{tabPanel:"tabPanel___zAvXC theme-background-secondary theme-text-on-secondary"}]}]],S=(0,n.PA)((function ValuePanel({dataFormat:e,model:t,resultIndex:s}){const n=(0,c.h)(x.DataValuePanelService),d=t.source.getActionImplementation(s,w.C),u=t.source.getActionImplementation(s,v.R),S=t.source.getAction(s,f.R),C=d?.getActiveElements();let I=null;const D=(0,r.d)(b);u&&C&&C.length>0&&(I=u.getIdentifier(C[0]));const R=S.get(`value-panel-${I}`,(()=>(0,i.sH)({currentTabId:"",tabsState:new g.C,setCurrentTabId(e){this.currentTabId=e}},{tabsState:!1},{}))),F=n.getDisplayed({dataFormat:e,model:t,resultIndex:s});let T=R.currentTabId;const A=T&&F.some((e=>e.key===T));return F.length>0&&!A&&(T=F[0].key),(0,a.jsxs)(h._,{currentTabId:T,container:n.tabs,dataFormat:e,model:t,resultIndex:s,localState:R.tabsState,lazy:!0,onChange:e=>R.setCurrentTabId(e.tabId),children:[(0,a.jsx)(o.Z,{registry:y,children:(0,a.jsx)(p.w,{className:(0,l.s)(D,{tabList:!0}),underline:!0})}),(0,a.jsx)(o.Z,{registry:_,children:(0,a.jsx)(m.A,{})})]})}))},74586:(e,t,s)=>{s.r(t),s.d(t,{BooleanValuePresentationBootstrap:()=>_});var a=s(1118),i=s(82103),n=s(5576),r=s(43974),o=s(27209),l=s(44044),c=s(86928),d=s(41773),u=s(7838),h=s(17675),p=s(14249),m=s(47434),g=s(82636),v=s(78186),f=s(33582);const w="container___orIwY",x="radio___BpRWP";var b=s(59549);const y=(0,u.PA)((function BooleanValuePresentation({model:e,resultIndex:t}){const s=(0,h.W)(),a=e.source.getAction(t,o.u),i=e.source.getAction(t,l.Z),n=e.source.getAction(t,v.G),r=e.source.getAction(t,f.h),c=a.getActiveElements();if(0===c.length)return(0,d.jsx)(p.x,{children:s("data_viewer_presentation_value_no_active_elements")});const u=c[0],y=function preprocessBooleanValue(e){return"string"==typeof e&&(0,b.P)(e)?"true"===e.toLowerCase():"boolean"==typeof e||null===e?e:void 0}(i.getCellValue(u));if(!(0,g.O)(y))return(0,d.jsx)(p.x,{children:s("data_viewer_presentation_value_boolean_placeholder")});const _=i.getColumn(u.column),S=!1===_?.required,C=e.isReadonly(t)||e.isDisabled(t)||r.isReadOnly(u);return(0,d.jsxs)("div",{className:w,children:[(0,d.jsx)(m.s,{className:x,id:"true_value",mod:["primary"],checked:!0===y,disabled:C,onClick:()=>n.set(u,!0),children:"TRUE"}),(0,d.jsx)(m.s,{className:x,id:"false_value",mod:["primary"],checked:!1===y,disabled:C,onClick:()=>n.set(u,!1),children:"FALSE"}),S&&(0,d.jsx)(m.s,{className:x,id:"null_value",mod:["primary"],checked:null===y,disabled:C,onClick:()=>n.set(u,null),children:"NULL"})]})}));let _=class BooleanValuePresentationBootstrap extends i.j{constructor(e){super(),this.dataValuePanelService=e}register(){this.dataValuePanelService.add({key:"boolean-presentation",options:{dataFormat:[r.fev.Resultset]},name:"boolean",order:1,panel:()=>y,isHidden:(e,t)=>{if(!t||!t.model.source.hasResult(t.resultIndex))return!0;const s=t.model.source.getAction(t.resultIndex,o.u).getActiveElements();if(s.length>0){const e=t.model.source.getAction(t.resultIndex,l.Z),a=s[0],i=e.getCellValue(a),n=e.getColumn(a.column);return void 0===i||void 0===n||!(0,b.L)(i,n)}return!0}})}load(){}};_=(0,a.Cg)([(0,n._)(),(0,a.Sn)("design:paramtypes",[c.DataValuePanelService])],_)},59549:(e,t,s)=>{function isStringifiedBoolean(e){return["false","true"].includes(e.toLowerCase())}function isBooleanValuePresentationAvailable(e,t){return"boolean"===t.dataKind?.toLowerCase()&&("boolean"==typeof e||null===e||"string"==typeof e&&isStringifiedBoolean(e))}s.d(t,{L:()=>isBooleanValuePresentationAvailable,P:()=>isStringifiedBoolean})},79217:(e,t,s)=>{s.r(t),s.d(t,{ImageValuePresentationBootstrap:()=>U});var a=s(1118),i=s(82103),n=s(5576),r=s(43974),o=s(27209),l=s(44044),c=s(86928),d=s(41773),u=s(94866),h=s(7838),p=s(15993),m=s(17675),g=s(41345),v=s(64928),f=s(76652),w=s(69519),x=s(7167),b=s(89232),y=s(74508),_=s(68426),S=s(46133),C=s(42),I=s(8385),D=s(60612),R=s(11905),F=s(46401);const T={img:"img___v9U_d",stretch:"stretch___CA0ay"};var A=s(28347),E=s(34793),V=s(18699),P=s(14452),j=s(86393),k=s(4154),M=s(94203),N=s(36221),O=s(74051),q=s(62385),L=s(3443),H=s(968),B=s(69365),W=s(78186),z=s(33582);const G=(0,h.PA)((function ImageValuePresentation({model:e,resultIndex:t}){const s=(0,m.W)(),a=(0,g.Q)(),i=(0,v.d)(T),n=(0,S.n)((()=>(0,u.sH)({stretch:!1,toggleStretch(){this.stretch=!this.stretch}},{stretch:u.sH.ref,toggleStretch:u.XI.bound}))),r=function useValuePanelImageValue({model:e,resultIndex:t}){const s=(0,V.h)(P.NotificationService),a=e.source.getAction(t,o.u),i=e.source.getAction(t,z.h),n=e.source.getAction(t,B.T),r=e.source.getAction(t,W.G);return(0,A.G)((()=>({get selectedCell(){return this.selectAction.getActiveElements()?.[0]},get cellValue(){return void 0===this.selectedCell?null:this.formatAction.get(this.selectedCell)},get src(){return(0,L.I)(this.cellValue)?this.cellValue.blob:this.staticSrc?this.staticSrc:this.cacheBlob?this.cacheBlob:null},get staticSrc(){return this.truncated?null:(0,q.Y)(this.cellValue)?`data:${(0,j.f)(this.cellValue.binary)};base64,${this.cellValue.binary}`:"string"==typeof this.cellValue&&(0,k.A)(this.cellValue)&&(0,M.v)(this.cellValue)?this.cellValue:null},get cacheBlob(){return this.selectedCell?this.contentAction.retrieveBlobFromCache(this.selectedCell):null},get canSave(){return this.truncated&&this.selectedCell?this.contentAction.isDownloadable(this.selectedCell):this.staticSrc&&!this.truncated},get canUpload(){return!!this.selectedCell&&this.formatAction.isBinary(this.selectedCell)},get truncated(){return!(0,H.T)(this.cellValue)&&this.selectedCell&&this.contentAction.isBlobTruncated(this.selectedCell)},async download(){try{if(this.src)return void(0,N.R)(this.src,"",!0);if(this.selectedCell)return void await this.contentAction.downloadFileData(this.selectedCell);throw new Error("Can't save image")}catch(e){this.notificationService.logException(e,"data_viewer_presentation_value_content_download_error")}},async upload(){(0,E.A)((e=>{const t=e?.[0];t&&this.selectedCell&&this.editAction.set(this.selectedCell,(0,O.S)(t))}))},async loadFullImage(){if(this.selectedCell)try{await this.contentAction.resolveFileDataUrl(this.selectedCell)}catch(e){this.notificationService.logException(e,"data_viewer_presentation_value_content_download_error")}}})),{selectedCell:u.EW,cellValue:u.EW,canUpload:u.EW,src:u.EW,cacheBlob:u.EW,canSave:u.EW,truncated:u.EW,model:u.sH.ref,resultIndex:u.sH.ref,download:u.XI.bound,upload:u.XI.bound,loadFullImage:u.XI.bound},{model:e,resultIndex:t,notificationService:s,selectAction:a,formatAction:i,contentAction:n,editAction:r})}({model:e,resultIndex:t}),l=e.isLoading(),c=(0,C.C)((0,R.m)(r.cellValue)?r.cellValue.contentLength??0:0),h=!!r.truncated&&!r.src,G=h&&!!r.selectedCell&&r.contentAction.isDownloadable(r.selectedCell),U=G&&r.contentAction.isLoading(r.selectedCell),$=(0,p.useMemo)((()=>(0,I.n)((()=>r.download()),1e3,!1)),[]),X=a.observedValue("src",(()=>r.src),(async e=>e instanceof Blob?await(0,D.S)(e):e));return(0,d.jsxs)(f.m,{vertical:!0,children:[(0,d.jsx)(f.m,{fill:!0,overflow:!0,center:!0,children:(0,d.jsxs)(w.a,{suspense:!0,children:[r.src&&(0,d.jsx)(K,{srcGetter:X,className:(0,x.s)(i,{img:!0,stretch:n.stretch})}),h&&(0,d.jsx)(F.q,{model:r.model,resultIndex:r.resultIndex,elementKey:r.selectedCell,children:G&&(0,d.jsx)(b.$,{disabled:l,loading:U,loader:!0,onClick:r.loadFullImage,children:`${s("ui_view")} (${c})`})})]})}),(0,d.jsxs)(f.m,{gap:!0,dense:!0,keepSize:!0,children:[(0,d.jsxs)(f.m,{keepSize:!0,flexStart:!0,noWrap:!0,children:[r.canSave&&(0,d.jsx)(y.G,{title:s("ui_download"),name:"/icons/export.svg",disabled:l,img:!0,onClick:$}),r.canUpload&&(0,d.jsx)(y.G,{title:s("ui_upload"),name:"/icons/import.svg",disabled:l,img:!0,onClick:r.upload})]}),(0,d.jsx)(_.S,{}),(0,d.jsx)(f.m,{keepSize:!0,flexEnd:!0,children:(0,d.jsx)(y.G,{title:s(n.stretch?"data_viewer_presentation_value_image_original_size":"data_viewer_presentation_value_image_fit"),name:n.stretch?"img-original-size":"img-fit-size",onClick:n.toggleStretch})})]})]})})),K=(0,h.PA)((function ImageRenderer({srcGetter:e,className:t}){const s=e();return s?(0,d.jsx)("img",{src:s,className:t}):null}));let U=class ImageValuePresentationBootstrap extends i.j{constructor(e){super(),this.dataValuePanelService=e}register(){this.dataValuePanelService.add({key:"image-presentation",options:{dataFormat:[r.fev.Resultset]},name:"data_viewer_presentation_value_image_title",order:1,panel:()=>G,isHidden:(e,t)=>{if(!t?.model.source.hasResult(t.resultIndex))return!0;const s=t.model.source.getAction(t.resultIndex,o.u).getActiveElements();if(s.length>0){const e=t.model.source.getAction(t.resultIndex,l.Z),a=s[0];return!function isImageValuePresentationAvailable(e){let t=null;return(0,q.Y)(e)?t=(0,j.f)(e.binary):((0,R.m)(e)||(0,L.I)(e))&&(t=e?.contentType??null),!!t?.startsWith("image/")||"string"==typeof e&&(0,k.A)(e)&&(0,M.v)(e)}(e.getCellValue(a))}return!0}})}load(){}};U=(0,a.Cg)([(0,n._)(),(0,a.Sn)("design:paramtypes",[c.DataValuePanelService])],U)},46401:(e,t,s)=>{s.d(t,{q:()=>m});var a=s(41773),i=s(7838),n=s(17675),r=s(3094),o=s(64928),l=s(76652),c=s(7167),d=s(27863),u=s(72755),h=s(69365);const p={limitWord:"limitWord____s89K"},m=(0,i.PA)((function QuotaPlaceholder({className:e,children:t,keepSize:s=!1,elementKey:i,model:m,resultIndex:g}){const v=(0,n.W)(),f=(0,r.J)(u.y.admin),w=(0,o.d)(p),x=m.source.getAction(g,h.T),b=i?x.getLimitInfo(i):null;return(0,a.jsxs)(l.m,{className:e,keepSize:s,vertical:!0,center:!0,children:[(0,a.jsxs)(l.m,{center:!0,vertical:!0,children:[v("data_viewer_presentation_value_content_truncated_placeholder")," ",(0,a.jsx)("span",{className:(0,c.s)(w,{limitWord:!0}),children:f?(0,a.jsx)(d.N,{title:b?.limitWithSize,href:"https://dbeaver.com/docs/cloudbeaver/Server-configuration/#resource-quotas",target:"_blank",indicator:!0,children:v("ui_limit")}):v("ui_limit")})]}),(0,a.jsx)(l.m,{children:t})]})}))},9164:(e,t,s)=>{s.d(t,{TextValuePresentation:()=>Q});var a=s(41773),i=s(94866),n=s(7838),r=s(17675),o=s(64928),l=s(76652),c=s(13720),d=s(7167),u=s(69519),h=s(16101),p=s(74508),m=s(18699),g=s(14452),v=s(20458),f=s(46133),w=s(22321),x=s(44451),b=s(69365),y=s(78186),_=s(33582),S=s(27209),C=s(83094);const I={tabList:"tabList___IgGmj theme-border-color-background theme-background-background"},D={tab:"tab___mTSbr theme-ripple theme-background-surface theme-text-text-primary-on-light",textValuePresentationTab:"textValuePresentationTab___g8F2j",underline:"underline___LI1wi"};var R=s(15993),F=s(42453),T=s(94302),A=s(93652),E=s(40017),V=s(8431),P=s(71408);const j=(0,n.PA)((function TextValueEditor({contentType:e,valueGetter:t,readonly:s,lineWrapping:i,onChange:n}){const r=t(),o=(0,R.useMemo)((()=>function getTypeExtension(e){switch(e){case"application/json":return(0,E.Pq)();case"text/html":return(0,V.qy)();case"text/xml":return(0,P._n)();default:return}}(e)??[]),[e]),l=(0,F.s)(void 0,o),c=(0,m.h)(A.DataViewerService);return(0,a.jsx)(T.Z,{value:r,lineWrapping:i,readonly:s,extensions:l,disableCopy:!c.canCopyData,onChange:n})}));var k=s(8713),M=s(89232),N=s(9724),O=s(42),q=s(3443),L=s(11905),H=s(46401);const B=(0,n.PA)((function TextValueTruncatedMessage({model:e,resultIndex:t,elementKey:s}){const i=(0,r.W)(),n=(0,m.h)(g.NotificationService),o=e.source.getAction(t,b.T),c=e.source.getAction(t,_.h),d=c.get(s);let u=o.isTextTruncated(s);const h=!!o.retrieveFullTextFromCache(s),p=s?o.getLimitInfo(s):null;if((0,q.I)(d)&&(u||=d.blob.size>(p?.limit??10240)),!u||h)return null;const v=c.isText(s),f=(0,L.m)(d)&&(0,N.K)(d.contentLength)?(0,O.C)(d.contentLength):void 0;return(0,a.jsx)(H.q,{model:e,resultIndex:t,elementKey:s,keepSize:!0,children:v&&(0,a.jsx)(l.m,{keepSize:!0,children:(0,a.jsx)(M.$,{disabled:e.isLoading(),onClick:async function pasteFullText(){try{await o.getFileFullText(s)}catch(e){n.logException(e,"data_viewer_presentation_value_content_paste_error")}},children:`${i("ui_show_more")} (${f})`})})})})),W="text/plain";function useAutoContentType({dataFormat:e,model:t,formatAction:s,resultIndex:a,currentContentType:i,elementKey:n}){const r=(0,m.h)(k.TextValuePresentationService).tabs.getDisplayed({dataFormat:e,model:t,resultIndex:a}),o=function getContentTypeFromResultSetValue(e){return(0,L.m)(e)?e.contentType:(0,q.I)(e)?e.blob.type:null}(n?s.get(n):null),l=function preprocessDefaultContentType(e){if(e)switch(e){case"text/json":return"application/json";case"application/octet-stream":return"application/octet-stream;type=base64";default:return e}return W}(o);return null===i&&(i=l),r.length>0&&!r.some((e=>e.key===i))&&(i=r[0].key),i}var z=s(41345),G=s(28347),K=s(60612),U=s(98207),$=s(37550);function useTextValueGetter({contentType:e,elementKey:t,formatAction:s,contentAction:a,editAction:n}){const r=(0,z.Q)(),o=t?s.get(t):null,l=t?a.getLimitInfo(t):null,c=(0,G.G)({contentValue:o,limitInfo:l},{contentValue:i.sH.ref,limitInfo:i.sH.ref}),d=r.observedValue("value-blob",(()=>({blob:(0,q.I)(c.contentValue)?c.contentValue.blob:null,limit:c.limitInfo?.limit})),(async({blob:e,limit:t})=>{if(!e)return null;const s=await(0,K.S)(e,t??10240);return s?(0,U.v)(s):null}));return function valueGetter(){let i="";if(!(0,N.K)(t))return i;const r=s.get(t),o=s.isBinary(t),l=a.retrieveFullTextFromCache(t);return o&&(0,L.m)(r)?r.binary?i=atob(r.binary):r.text&&(i=r.text):i=(0,q.I)(r)?atob(d()??""):l||s.getText(t),n.isElementEdited(t)&&!o||(i=function formatText(e,t){try{switch(e){case"application/json":return JSON.stringify(JSON.parse(t),null,2);case"text/xml":case"text/html":default:return t;case"application/octet-stream;type=hex":return(0,$.E)(t);case"application/octet-stream;type=base64":case"application/octet-stream":return btoa(t)}}catch{return t}}(e,i)),i}}const X=[[v.A,{mode:"append",styles:[D]}]],Q=(0,n.PA)((function TextValuePresentation({model:e,resultIndex:t,dataFormat:s}){const n=(0,r.W)(),v=(0,m.h)(g.NotificationService),R=(0,m.h)(k.TextValuePresentationService),F=(0,o.d)(I,D),T=e.source.getAction(t,S.u),A=e.source.getAction(t,_.h),E=T.getActiveElements(),V=E.length?E[0]:void 0,P=e.source.getAction(t,b.T),M=e.source.getAction(t,y.G),N=(0,f.n)((()=>(0,i.sH)({lineWrapping:null,currentContentType:null,setContentType(e){this.currentContentType=e},setLineWrapping(e){this.lineWrapping=e}}))),O=useAutoContentType({dataFormat:s,model:e,resultIndex:t,currentContentType:N.currentContentType,elementKey:V,formatAction:A}),q=useTextValueGetter({contentAction:P,editAction:M,formatAction:A,dataFormat:s,contentType:O,elementKey:V}),L=function getDefaultLineWrapping(e){return(0,C.G)(e).essence,!0}(O),H=N.lineWrapping??L,W=function isTextValueReadonly({contentAction:e,formatAction:t,model:s,resultIndex:a,cell:i}){return!i||t.isReadOnly(i)||t.isBinary(i)||t.isGeometry(i)||e.isTextTruncated(i)||s.isReadonly(a)||s.isDisabled(a)}({model:e,resultIndex:t,contentAction:P,cell:V,formatAction:A}),z=V&&P.isDownloadable(V);return(0,a.jsxs)(l.m,{vertical:!0,gap:!0,dense:!0,overflow:!0,children:[(0,a.jsx)(l.m,{keepSize:!0,center:!0,overflow:!0,children:(0,a.jsx)(l.m,{keepSize:!0,children:(0,a.jsx)(w._,{dataFormat:s,resultIndex:t,container:R.tabs,currentTabId:O,model:e,lazy:!0,onChange:e=>async function selectTabHandler(e){e!==O&&N.setContentType(e)}(e.tabId),children:(0,a.jsx)(c.Z,{registry:X,children:(0,a.jsx)(x.w,{className:(0,d.s)(F,{tabList:!0,textValuePresentationTab:!0,underline:!0}),underline:!0})})})})}),(0,a.jsx)(u.a,{suspense:!0,children:(0,a.jsx)(h.Y,{overflow:!0,maximum:!0,box:!0,children:(0,a.jsx)(j,{contentType:O,lineWrapping:H,readonly:W,valueGetter:q,onChange:function valueChangeHandler(e){V&&!W&&M.set(V,e)}})})}),V&&(0,a.jsx)(B,{model:e,resultIndex:t,elementKey:V}),(0,a.jsx)(l.m,{keepSize:!0,overflow:!0,children:(0,a.jsxs)(l.m,{keepSize:!0,noWrap:!0,children:[z&&(0,a.jsx)(p.G,{title:n("ui_download"),name:"/icons/export.svg",disabled:e.isLoading(),img:!0,onClick:async function saveHandler(){if(V)try{await P.downloadFileData(V)}catch(e){v.logException(e,"data_viewer_presentation_value_content_download_error")}}}),(0,a.jsx)(p.G,{title:n(H?"data_viewer_presentation_value_text_line_wrapping_no_wrap":"data_viewer_presentation_value_text_line_wrapping_wrap"),name:`/icons/plugin_data_viewer_${H?"no_wrap":"wrap"}_lines.svg`,img:!0,onClick:function toggleLineWrappingHandler(){N.setLineWrapping(!H)}})]})})]})}))},29842:(e,t,s)=>{s.r(t),s.d(t,{TextValuePresentationBootstrap:()=>g});var a=s(1118),i=s(15993),n=s(82103),r=s(5576),o=s(43974),l=s(86928),c=s(62385),d=s(3443),u=s(27209),h=s(44044);function isBlobPresentationAvailable(e){if(!e?.model.source.hasResult(e.resultIndex))return!0;const t=e.model.source.getAction(e.resultIndex,u.u).getActiveElements();if(t.length>0){const s=e.model.source.getAction(e.resultIndex,h.Z),a=t[0],i=s.getCellValue(a);return(0,c.Y)(i)||(0,d.I)(i)}return!1}var p=s(8713);const m=(0,i.lazy)((async()=>{const{TextValuePresentation:e}=await Promise.all([s.e(11502),s.e(7542),s.e(97493),s.e(67557),s.e(64435),s.e(63190),s.e(88761),s.e(11116),s.e(62570),s.e(95860),s.e(83834)]).then(s.bind(s,9164));return{default:e}}));let g=class TextValuePresentationBootstrap extends n.j{constructor(e,t){super(),this.textValuePresentationService=e,this.dataValuePanelService=t}register(){this.dataValuePanelService.add({key:"text-presentation",options:{dataFormat:[o.fev.Resultset]},name:"data_viewer_presentation_value_text_title",order:Number.MAX_SAFE_INTEGER,panel:()=>m}),this.textValuePresentationService.add({key:"text/plain",name:"data_viewer_presentation_value_text_plain_title",order:Number.MAX_SAFE_INTEGER,panel:()=>i.Fragment}),this.textValuePresentationService.add({key:"text/html",name:"data_viewer_presentation_value_text_html_title",order:Number.MAX_SAFE_INTEGER,panel:()=>i.Fragment}),this.textValuePresentationService.add({key:"text/xml",name:"data_viewer_presentation_value_text_xml_title",order:Number.MAX_SAFE_INTEGER,panel:()=>i.Fragment}),this.textValuePresentationService.add({key:"application/json",name:"data_viewer_presentation_value_text_json_title",order:Number.MAX_SAFE_INTEGER,panel:()=>i.Fragment}),this.textValuePresentationService.add({key:"application/octet-stream;type=hex",name:"data_viewer_presentation_value_text_hex_title",order:Number.MAX_SAFE_INTEGER,panel:()=>i.Fragment,isHidden:(e,t)=>!isBlobPresentationAvailable(t)}),this.textValuePresentationService.add({key:"application/octet-stream;type=base64",name:"data_viewer_presentation_value_text_base64_title",order:Number.MAX_SAFE_INTEGER,panel:()=>i.Fragment,isHidden:(e,t)=>!isBlobPresentationAvailable(t)})}load(){}};g=(0,a.Cg)([(0,r._)(),(0,a.Sn)("design:paramtypes",[p.TextValuePresentationService,l.DataValuePanelService])],g)},8713:(e,t,s)=>{s.r(t),s.d(t,{TextValuePresentationService:()=>r});var a=s(1118),i=s(5576),n=s(68356);let r=class TextValuePresentationService{constructor(){this.tabs=new n.a("Value presentation")}get(e){return this.tabs.getTabInfo(e)}add(e){this.tabs.add(e)}};r=(0,a.Cg)([(0,i._)(),(0,a.Sn)("design:paramtypes",[])],r)}}]);