????
Current Path : C:/inetpub/vhost/dbadm.gdtsolutions.vn/web/js/ |
Current File : C:/inetpub/vhost/dbadm.gdtsolutions.vn/web/js/plugin-object-viewer-3fef75908fe6a745bfdf.js |
/*! For license information please see ../license.txt */ "use strict";(self.webpackChunk_cloudbeaver_product_default=self.webpackChunk_cloudbeaver_product_default||[]).push([[15309],{67329:(e,t,n)=>{n.r(t),n.d(t,{default:()=>a});const a={}},85475:(e,t,n)=>{n.r(t),n.d(t,{default:()=>a});const a={}},7107:(e,t,n)=>{n.r(t),n.d(t,{LocaleService:()=>s});var a=n(1118),r=n(82103),o=n(5576),i=n(34227);let s=class LocaleService extends r.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([n.e(92436),n.e(51304)]).then(n.bind(n,42929))).default;case"it":return(await Promise.all([n.e(32756),n.e(95322)]).then(n.bind(n,8821))).default;case"zh":return(await Promise.all([n.e(52041),n.e(72941)]).then(n.bind(n,68142))).default;case"fr":return(await Promise.all([n.e(29671),n.e(40084)]).then(n.bind(n,62016))).default;default:return(await Promise.all([n.e(41114),n.e(17703)]).then(n.bind(n,86983))).default}}};s=(0,a.Cg)([(0,o._)(),(0,a.Sn)("design:paramtypes",[i.LocalizationService])],s)},34756:(e,t,n)=>{n.r(t),n.d(t,{DBObjectPageService:()=>i});var a=n(1118),r=n(94866),o=n(5576);class ObjectPage{constructor(e){this.key=e.key,this.priority=e.priority,this.order=e.order,this.getTabComponent=e.getTabComponent,this.getPanelComponent=e.getPanelComponent,this.onSelect=e.onSelect,this.canClose=e.canClose,this.onClose=e.onClose,this.onUnload=e.onUnload,this.onRestore=e.onRestore,(0,r.Gn)(this,{order:r.sH})}getState(e){return e.handlerState.pagesState[this.key]}setState(e,t){e.handlerState.pagesState[this.key]=t}}let i=class DBObjectPageService{constructor(){this.pages=new Map,(0,r.Gn)(this,{pages:r.sH,orderedPages:r.EW,register:r.XI,selectPage:r.XI.bound})}get orderedPages(){return Array.from(this.pages.values()).sort(this.comparePages.bind(this))}register(e){const t=new ObjectPage(e);return this.pages.set(e.key,t),t}getPage(e){return this.pages.get(e)}getPageState(e,t){const n="string"==typeof t?t:t.key;return e.handlerState.pagesState[n]}canSwitchPage(e,t){return(e.priority||0)<t.priority}trySwitchPage(e,t,n){const a=this.getPage(e.handlerState.pageId);return!(a&&!this.canSwitchPage(a,t))&&(this.selectPage(e,t,n),!0)}selectPage(e,t,n){e.handlerState.pageId=t.key,void 0!==n&&(e.handlerState.pagesState[t.key]=n),this.callHandlerCallback(e,(e=>e.onSelect))}async restorePages(e){for(const t of this.pages.values())if(t.onRestore&&!await t.onRestore(e,this.getPageState(e,t)))return!1;return!0}async canClosePages(e){for(const t of this.pages.values()){if(!1===await(t.canClose?.(e,this.getPageState(e,t))))return!1}return!0}async closePages(e){await this.callHandlerCallback(e,(e=>e.onClose))}async callHandlerCallback(e,t){for(const n of this.pages.values()){const a=t(n);a&&a.call(n,e,this.getPageState(e,n))}}comparePages(e,t){return this.getPageOrder(e)-this.getPageOrder(t)}getPageOrder(e){return e.order||Number.MAX_SAFE_INTEGER}};i=(0,a.Cg)([(0,o._)(),(0,a.Sn)("design:paramtypes",[])],i)},69527:(e,t,n)=>{n.r(t),n.d(t,{NavNodeMetadataViewBootstrap:()=>C});var a=n(1118),r=n(82103),o=n(5576),i=n(46683),s=n(30819),c=n(35778),d=n(41773),l=n(7838),b=n(17675),h=n(84383),u=n(91176),g=n(14249),p=n(71120),v=n(16101),j=n(13359),f=n(13821),S=n(71185);const m=[],x=(0,l.PA)((function ObjectProperties({objectId:e}){const t=(0,b.W)(),n=(0,h.q)(ObjectProperties,S.DBObjectResource,e),{categories:a,isUncategorizedExists:r}=(0,u.y)(n.data?.object?.properties??m),o=n.data?.object?.properties;return(0,d.jsx)(d.Fragment,{children:o&&0!==o.length?(0,d.jsxs)(p.U,{overflow:!0,parent:!0,gap:!0,children:[r&&(0,d.jsx)(v.Y,{gap:!0,large:!0,children:(0,d.jsx)(j.d,{properties:o,category:null,small:!0,readOnly:!0})}),a.map((e=>(0,d.jsxs)(v.Y,{gap:!0,large:!0,children:[(0,d.jsx)(f.U,{children:e}),(0,d.jsx)(j.d,{properties:o,category:e,small:!0,readOnly:!0})]},e)))]}):(0,d.jsx)(g.x,{children:t("plugin_object_viewer_table_no_items")})})})),P=function NavNodeMetadataPanel({nodeId:e}){return(0,d.jsx)(x,{objectId:e})};var I=n(43659),y=n(48522),_=n(19259),T=n(32661);const N=(0,l.PA)((function NavNodeMetadataTab({folderId:e,nodeId:t}){const n=(0,b.W)(),a=(0,T.o)(t),r=n("plugin_object_viewer_object_info_tab");if(!a.node)return null;return(0,d.jsxs)(I.o,{tabId:e,title:r,children:[(0,d.jsx)(y.$,{icon:"platform:/plugin/org.jkiss.dbeaver.model/icons/tree/info.png"}),(0,d.jsx)(_.I,{children:r})]})})),w="object-viewer://metadata";let C=class NavNodeMetadataViewBootstrap extends r.j{constructor(e,t){super(),this.navNodeViewService=e,this.navNodeInfoResource=t}register(){this.navNodeViewService.addTransform({order:1,tab:(e,t)=>{if(t.startsWith(w))return N},panel:(e,t)=>{if(t.startsWith(w))return P},transformer:(e,t)=>{const n=this.navNodeInfoResource.get(e);return n?.features?.includes(i.E.item)||n?.features?.includes(i.E.container)?[w,...t||[]]:t}})}load(){}};C=(0,a.Cg)([(0,o._)(),(0,a.Sn)("design:paramtypes",[c.NavNodeViewService,s.NavNodeInfoResource])],C)},58746:(e,t,n)=>{n.r(t),n.d(t,{VirtualFolderPanel:()=>S});var a=n(41773),r=n(7838),o=n(15993),i=n(17675),s=n(84383),c=n(2088),d=n(14249),l=n(18699),b=n(30819),h=n(6587),u=n(71185),g=n(82636),p=n(35778),v=n(74971);const j="tabWrapper___Arw4_";var f=n(37189);const S=(0,r.PA)((function VirtualFolderPanel({folderId:e,nodeId:t}){const n=(0,i.W)(),r=f.z.getNodeType(e),S=(0,l.h)(p.NavNodeViewService),m=(0,l.h)(b.NavNodeInfoResource),x=(0,s.q)(VirtualFolderPanel,h.NavTreeResource,t),P=(0,c.v)(u.DBObjectResource,{key:(0,u.DBObjectParentKey)(t),pageSize:x.resource.childrenLimit}),I=(0,s.q)(VirtualFolderPanel,u.DBObjectResource,P.key),{nodes:y,duplicates:_}=S.filterDuplicates(I.data.filter(g.O).map((e=>e?.id))||[]),T=I.data.filter((e=>e&&y.includes(e.id)&&m.get(e.id)?.nodeType===r));return(0,o.useEffect)((()=>{S.logDuplicates(t,_)})),(0,a.jsx)(a.Fragment,{children:0===T.length?(0,a.jsx)(d.x,{children:n("plugin_object_viewer_table_no_items")}):(0,a.jsx)("div",{className:j,children:(0,a.jsx)(v.e,{objects:T,hasNextPage:P?.hasNextPage??!1,loadMore:P.loadMore})})})}))},79231:(e,t,n)=>{n.r(t),n.d(t,{VirtualFolderTab:()=>c});var a=n(41773),r=n(43659),o=n(48522),i=n(19259),s=n(37189);const c=function VirtualFolderTab({folderId:e}){const t=s.z.getNodeType(e);return(0,a.jsxs)(r.o,{tabId:e,title:t,children:[(0,a.jsx)(o.$,{icon:"platform:/plugin/org.jkiss.dbeaver.model/icons/tree/folder.png"}),(0,a.jsx)(i.I,{children:t})]})}},37189:(e,t,n)=>{n.d(t,{z:()=>a});const a={prefix:"object-viewer://virtual-folder/",getFolderId(e){return this.prefix+e},getNodeType(e){return e.replace(this.prefix,"")},isVirtualFolder(e){return e.startsWith(this.prefix)}}},71973:(e,t,n)=>{n.r(t),n.d(t,{VirtualFolderViewBootstrap:()=>h});var a=n(1118),r=n(50420),o=n(82103),i=n(5576),s=n(30819),c=n(35778),d=n(37189);const l=(0,r.j)((()=>Promise.all([n.e(97493),n.e(15309),n.e(96066)]).then(n.bind(n,79231)).then((e=>e.VirtualFolderTab)))),b=(0,r.j)((()=>Promise.all([n.e(11502),n.e(67557),n.e(44134),n.e(15309),n.e(28923)]).then(n.bind(n,58746)).then((e=>e.VirtualFolderPanel))));let h=class VirtualFolderViewBootstrap extends o.j{constructor(e,t){super(),this.navNodeViewService=e,this.navNodeInfoResource=t}register(){this.navNodeViewService.addTransform({order:2,tab:(e,t)=>{if(d.z.isVirtualFolder(t))return l},panel:(e,t)=>{if(d.z.isVirtualFolder(t))return b},transformer:(e,t)=>{if(!t)return t;const n=[],a=[];for(const e of t){const t=this.navNodeInfoResource.get(e);if(!t||t.folder)a.push(e);else if(t.nodeType){const e=d.z.getFolderId(t.nodeType);n.includes(e)||n.push(e)}}return a.push(...n),a}})}load(){}};h=(0,a.Cg)([(0,i._)(),(0,a.Sn)("design:paramtypes",[c.NavNodeViewService,s.NavNodeInfoResource])],h)},89414:(e,t,n)=>{n.r(t),n.d(t,{ObjectPropertiesPageService:()=>te});var a=n(1118),r=n(5576),o=n(14452),i=n(64809),s=n(34756),c=n(59113),d=n(41773),l=n(7838),b=n(64928),h=n(7167),u=n(15993),g=n(17675),p=n(84383),v=n(13720),j=n(14249),f=n(18699),S=n(6587),m=n(20458),x=n(98098),P=n(35090),I=n(28626),y=n(46133),_=n(22321),T=n(44451),N=n(12195),w=n(31324),C=n(35778),O=n(32661),V=n(2088),R=n(71185),k=n(82636);const A={box:"box___eo_yO"};var E=n(74971);const D=(0,l.PA)((function ObjectPropertyTable({objectId:e,parentId:t,className:n}){const a=(0,g.W)(),r=(0,f.h)(C.NavNodeViewService),o=(0,p.q)(ObjectPropertyTable,S.NavTreeResource,e,{forceSuspense:!0}),i=(0,V.v)(R.DBObjectResource,{key:(0,R.DBObjectParentKey)(e),pageSize:o.resource.childrenLimit}),s=(0,p.q)(ObjectPropertyTable,R.DBObjectResource,i.key),{nodes:c,duplicates:l}=r.filterDuplicates(s.data.filter(k.O).map((e=>e?.id))||[]),b=s.data.filter((e=>c.includes(e?.id||"")));return(0,u.useEffect)((()=>{r.logDuplicates(e,l)})),(0,d.jsx)(d.Fragment,{children:0===c.length?(0,d.jsx)(j.x,{children:a("plugin_object_viewer_table_no_items")}):(0,d.jsx)("div",{className:(0,h.s)(A,{box:!0},n),children:(0,d.jsx)(E.e,{objects:b,hasNextPage:i.hasNextPage,loadMore:i.loadMore})})})})),F=(0,l.PA)((function FolderPanelRenderer({nodeId:e,folderId:t,parents:n}){const a=(0,f.h)(C.NavNodeViewService);for(const r of a.panels){const a=r(e,t,n);if(a)return(0,d.jsx)(a,{nodeId:e,folderId:t,parents:n})}return(0,d.jsx)(H,{nodeId:t,parents:n})})),H=(0,l.PA)((function NavNodeTab({nodeId:e}){const t=(0,O.o)(e);return t.node?(0,d.jsx)(D,{objectId:e,parentId:t.node.parentId}):null}));var B=n(84833),M=n(34685),L=n(69519),K=n(7278),W=n(43659),z=n(48522),U=n(19259),G=n(78426);const q={tabLoader:"tabLoader___dyqFe"},X=(0,l.PA)((function NavNodeTab({nodeId:e}){const t=(0,O.o)(e),n=(0,G.P)(e),a=(0,f.h)(R.DBObjectResource),r=(0,K.OU)(n.children||[]),o=(0,b.d)(q),i=(0,B.O)((0,M.u)((()=>t.isLoaded()&&t.isLoading()||n.isLoaded()&&n.isLoading()||a.isLoaded(r)&&a.isLoading(r))),300);return(0,d.jsxs)(W.o,{tabId:e,title:t.node?.name,children:[t.node?.icon&&(0,d.jsx)(z.$,{icon:t.node.icon}),(0,d.jsx)(U.I,{children:t.node?.name}),(0,d.jsx)("div",{className:(0,h.s)(o,{tabLoader:!0}),children:(0,d.jsx)(L.a,{loading:i,small:!0})})]})})),Z=(0,l.PA)((function FolderTabRenderer({nodeId:e,folderId:t,parents:n}){const a=(0,f.h)(C.NavNodeViewService);for(const r of a.tabs){const a=r(e,t,n);if(a)return(0,d.jsx)(a,{nodeId:e,folderId:t,parents:n})}return(0,d.jsx)(X,{nodeId:t})})),Y=[[q,{mode:"append",styles:[{tabLoader:"tabLoader___yoWNg"}]}],[m.A,{mode:"append",styles:[{tab:"tab___bbIAR theme-ripple theme-background-background theme-ripple-selectable"}]}],[x.A,{mode:"append",styles:[{tabList:"tabList___GG0KD theme-background-surface theme-text-on-surface theme-border-color-background"}]}],[P.A,{mode:"append",styles:[{tabPanel:"tabPanel___tXbNe theme-border-color-background"}]}],[I.A,{mode:"append",styles:[{tabTitle:"tabTitle___P6DRh"}]}]],$=(0,l.PA)((function ObjectFolders({tab:e}){const t=(0,g.W)(),n=(0,f.h)(i.NavNodeManagerService),a=(0,f.h)(C.NavNodeViewService),r=(0,y.n)((()=>new w.C)),o=e.handlerState.objectId,s=e.handlerState.parentId,c=e.handlerState.parents;let l=e.handlerState.folderId;const b=(0,p.q)(ObjectFolders,S.NavTreeResource,o),h=a.getFolders(o,b.data)||[],m=!h.includes(l)&&h.length>0&&b.isLoaded()&&!b.isLoading()&&!b.isOutdated();return m&&(l=h[0]),(0,u.useEffect)((()=>{m&&n.navToNode(o,s,l)})),h.length>0?(0,d.jsx)(_._,{currentTabId:l,orientation:"vertical",localState:r,lazy:!0,onChange:function openFolder(e){e.tabId!==l&&n.navToNode(o,s,e.tabId)},children:(0,d.jsxs)(v.Z,{registry:Y,children:[(0,d.jsx)(T.w,{"aria-label":"Object folders",vertical:!0,children:h.map((e=>(0,d.jsx)(Z,{nodeId:o,folderId:e,parents:c},e)))}),h.map((e=>(0,d.jsx)(N.K,{tabId:e,children:(0,d.jsx)(F,{nodeId:o,folderId:e,parents:c},e)},e)))]})}):(0,d.jsx)(j.x,{children:t("plugin_object_viewer_table_no_items")})})),J={wrapper:"wrapper___Xi5qd theme-background-surface"},Q=(0,l.PA)((function ObjectPropertiesPagePanel({tab:e}){const t=(0,b.d)(J);return(0,d.jsx)("div",{className:(0,h.s)(t,{wrapper:!0}),children:(0,d.jsx)($,{tab:e})})})),ee=(0,l.PA)((function ObjectPropertiesPageTab({page:e,onSelect:t}){const n=(0,g.W)();return(0,d.jsxs)(W.o,{tabId:e.key,onOpen:t,children:[(0,d.jsx)(z.$,{icon:"/icons/properties.svg",viewBox:"0 0 16 16"}),(0,d.jsx)(U.I,{children:n("plugin_object_viewer_properties_tab")})]})}));let te=class ObjectPropertiesPageService{constructor(e,t,n,a){this.navNodeManagerService=e,this.notificationService=t,this.objectViewerTabService=n,this.dbObjectPageService=a}registerDBObjectPage(){this.page=this.dbObjectPageService.register({key:"properties",priority:1,order:1,getTabComponent:()=>ee,getPanelComponent:()=>Q}),this.navNodeManagerService.navigator.addHandler(this.navigationHandler.bind(this))}async navigationHandler(e,t){if(this.page)try{const e=t.getContext(this.objectViewerTabService.objectViewerTabContext);await e.initTab(),e.trySwitchPage(this.page)}catch(e){this.notificationService.logException(e,"Object Viewer Error","Error in Object Viewer while processing action with database node")}}};te=(0,a.Cg)([(0,r._)(),(0,a.Sn)("design:paramtypes",[i.NavNodeManagerService,o.NotificationService,c.ObjectViewerTabService,s.DBObjectPageService])],te)},22343:(e,t,n)=>{n.d(t,{Z:()=>a});const a=(0,n(85240).E)("object-viewer-footer","Object viewer footer menu")},78199:(e,t,n)=>{n.r(t),n.d(t,{ObjectPropertyTableFooterService:()=>p});var a=n(1118),r=n(5576),o=n(14452),i=n(63772),s=n(46683),c=n(6587),d=n(45910),l=n(7278),b=n(43858),h=n(72877),u=n(79023),g=n(22343);let p=class ObjectPropertyTableFooterService{constructor(e,t,n,a,r){this.navTreeResource=e,this.notificationService=t,this.navTreeSettingsService=n,this.menuService=a,this.actionService=r}registerFooterActions(){this.menuService.addCreator({menus:[g.Z],contexts:[i.T],isApplicable:()=>this.navTreeSettingsService.deleting,getItems:(e,t)=>[...t,b.n]}),this.actionService.addHandler({id:"object-viewer-footer-base",menus:[g.Z],contexts:[i.T],actions:[b.n],getActionInfo:(e,t)=>t===b.n?{...t.info,icon:"delete"}:t.info,isDisabled:(e,t)=>{if(t===b.n){return!e.get(i.T)().some((e=>e.features?.includes(s.E.canDelete)))||this.navTreeResource.isLoading()}return!0},handler:async(e,t)=>{if(t===b.n){const t=e.get(i.T)().filter((e=>e.features?.includes(s.E.canDelete)));try{await this.navTreeResource.deleteNode((0,l.OU)(t.map((e=>e.id))))}catch(e){this.notificationService.logException(e,"plugin_object_viewer_delete_object_fail")}}}})}};p=(0,a.Cg)([(0,r._)(),(0,a.Sn)("design:paramtypes",[c.NavTreeResource,o.NotificationService,d.NavTreeSettingsService,h.MenuService,u.ActionService])],p)},57150:(e,t,n)=>{n.d(t,{Table:()=>te});var a=n(41773),r=n(7838),o=n(15993),i=n(64928),s=n(17675),c=n(82664),d=n(61450),l=n(91184),b=n(7167),h=n(27863),u=n(18699),g=n(6587),p=n(46133),v=n(82636),j=n(6919),f=n(36403);n(2050);function getValue(e){if(null==e)return"";switch(typeof e){case"string":return e;case"object":return Array.isArray(e)?e.join(", "):e.displayName;default:return""}}var S=n(90398),m=n(30819),x=n(63772),P=n(7278),I=n(21252),y=n(12483),_=n(22343);const T=(0,r.PA)((function ObjectPropertyTableFooter({state:e,className:t}){const n=(0,u.h)(m.NavNodeInfoResource),r=(0,y.b)({menu:_.Z});function getSelected(){return n.get((0,P.OU)(e.selectedList)).filter(Boolean)}return(0,S.Z)(r.context,((e,t)=>{e.set(x.T,getSelected,t)})),(0,a.jsx)(I.R,{className:t,menu:r})}));var N=n(66866),w=n(84833),C=n(34685),O=n(84237),V=n(49690),R=n(91135),k=n(64809),A=n(14841),E=n(23439),D=n(93358),F=n(32661);const H={container:"container___oGXTg",empty:"empty___iojof",value:"value___X_HF_",box:"box___S73ZU",icon:"icon___W_CU4",cell:"cell___yxt52",cellValue:"cellValue___XcN8N"},B=(0,o.createContext)({tableData:null,tableState:null}),M=(0,r.PA)((function Menu({value:e,node:t}){const n=(0,i.d)(H),r=(0,u.h)(k.NavNodeManagerService),s=(0,u.h)(V.ConnectionInfoResource),c=(0,y.b)({menu:D.N}),d=(0,N.N)(),[l,h]=(0,o.useState)(!1),g=s.getConnectionForNode(t.id);(0,S.Z)(c.context,((e,n)=>{e.set(A.G,t,n),g&&e.set(R.A,g,n)}));const p=(0,w.O)(d.state.mouseEnter,33),v=!l&&(0,C.u)((()=>!p||!c.available));return(0,a.jsx)("div",{ref:d.reference,className:(0,b.s)(n,{container:!0,empty:v}),onDoubleClick:function openNode(){r.navToNode(t.id,t.parentId)},children:(0,a.jsxs)("div",{className:H.box,children:[(0,a.jsx)("div",{className:(0,b.s)(n,{value:!0,cellValue:!0}),title:e,children:e}),!v&&(0,a.jsx)(E.t,{menu:c,modal:!0,disclosure:!0,onVisibleSwitch:h,children:(0,a.jsx)("div",{children:(0,a.jsx)(O.I,{className:H.icon,name:"snack",viewBox:"0 0 16 10"})})})]})})})),L=(0,r.PA)((function CellFormatter(e){const t=(0,o.useContext)(B);if(!t.tableData)throw new Error("Table data must be provided");const{node:n}=(0,F.o)(e.row.id),r=t.tableData.getColumnIdx(e.column),i=e.row.object?.properties?.[r],s=i?getValue(i.value):"";return(0,a.jsx)("div",{className:H.cell,title:s,children:0===r&&n?(0,a.jsx)(M,{node:n,value:s}):(0,a.jsx)("span",{className:H.cellValue,children:s})})}));var K=n(7994);const W={icon:"icon___XCROd",staticImage:"staticImage___v0Wzu"},z=(0,r.PA)((function IconFormatter(e){const{node:t}=(0,F.o)(e.row.id),n=(0,i.d)(W);return(0,a.jsx)("div",{className:(0,b.s)(n,{icon:!0}),children:t?.icon&&(0,a.jsx)(K.i,{icon:t.icon,className:(0,b.s)(n,{staticImage:!0})})})})),U={key:"columnIcon",name:"",width:40,maxWidth:40,minWidth:40,frozen:!0,renderCell:e=>(0,a.jsx)(z,{...e}),order:1};var G=n(86162);const q={container:"container___unq67",checkbox:"checkbox___yQXGi"},X=(0,r.PA)((function SelectorFormatter(e){const t=(0,o.useContext)(B),n=e.row.id,r=(0,C.u)((()=>t.tableState?.selected.get(n))),s=(0,i.d)(q),c=(0,o.useCallback)((()=>{t.tableState?.selected.set(n,!r)}),[n,r]);return(0,a.jsx)("div",{className:(0,b.s)(s,{container:!0}),children:(0,a.jsx)(G.S,{className:(0,b.s)(s,{checkbox:!0}),checked:r,onClick:c})})})),Z={key:"columnSelector",name:"",width:40,maxWidth:40,minWidth:40,frozen:!0,renderCell:e=>(0,a.jsx)(X,{...e}),order:0},Y="header___RUmQf",$=(0,r.PA)((function HeaderRenderer(e){const t=(0,o.useContext)(B),n=t.tableData?.columns.find((t=>t.key===e.column.key));return(0,a.jsx)("div",{className:Y,title:n?.description,children:e.column.name})})),tableStyles=async e=>{let t;if("dark"===e)t=await Promise.all([n.e(11502),n.e(15309),n.e(57920)]).then(n.bind(n,67329));else t=await Promise.all([n.e(11502),n.e(15309),n.e(90777)]).then(n.bind(n,85475));return[t.default]},J={container:"container___bLe24 theme-typography--body2",dataGrid:"dataGrid___RfhzY",info:"info___J08_2",objectPropertyTableFooter:"objectPropertyTableFooter___H8wEe theme-background-secondary theme-text-on-secondary theme-border-color-background"};var Q=n(77337);const ee=[Z,U],te=(0,r.PA)((function Table({objects:e,hasNextPage:t,loadMore:n}){const r=(0,i.d)(J,tableStyles),S=(0,u.h)(g.NavTreeResource),[m,x]=(0,o.useState)(null),P=(0,s.W)(),I=(0,c.K)(),y=(0,p.n)((()=>({scrollTop:0,scrollLeft:0}))),_=m?.firstChild??null;(0,d.V)(_,y);const N=e.slice().sort(((e,t)=>(t.object?.properties?.length||0)-(e.object?.properties?.length||0))),w=N[0]?.object?.properties??[],C=function getMeasuredCells(e,t){const n=e.map((e=>e.displayName?.toUpperCase())).filter(v.O),a=Array(e.length).fill("");for(const e of t.slice(0,100))if(e.object?.properties)for(let t=0;t<e.object.properties.length;t++){const n=getValue(e.object.properties[t].value);n.length>a[t].length&&(a[t]=n)}const r=j.B.getWidth({font:"700 12px Roboto",text:n}).map((e=>e+16+2)),o=j.B.getWidth({font:"400 12px Roboto",text:a}).map((e=>e+16+2));return n.map(((e,t)=>Math.max(r[t],o[t]??0)))}(w,e),O=function useTableData(e,t){return(0,Q.U)((()=>({get columns(){return this.customColumns.slice().sort(((e,t)=>(e.order??0)-(t.order??0))).concat(this.dataColumns)},isCustomColumn(e){return this.customColumns.some((t=>t.key===e.key))},getColumnIdx(e){return this.isCustomColumn(e)?e.idx:e.idx-this.customColumns.length}})),{dataColumns:e,customColumns:t})}(w.map(((e,t)=>({key:e.id,name:e.displayName??"",description:e.description,columnDataIndex:null,width:Math.min(300,C[t]),minWidth:40,resizable:!0,renderCell:e=>(0,a.jsx)(L,{...e}),renderHeaderCell:e=>(0,a.jsx)($,{...e})}))),ee),V=(0,o.useCallback)((async e=>{(function isAtBottom(e){const t=e.target;return t.clientHeight+t.scrollTop+.3*t.clientHeight>t.scrollHeight})(e)&&n()}),[n]);return(0,l.H)({executor:S.onItemDelete,handlers:[function handleNodeDelete(e){I.unselect(e)}]}),0===e.length?null:(0,a.jsx)(B.Provider,{value:{tableData:O,tableState:I},children:(0,a.jsxs)("div",{ref:x,className:(0,b.s)(r,{container:!0},"metadata-grid-container"),children:[(0,a.jsx)(f.Ay,{className:(0,b.s)(r,{dataGrid:!0},"cb-metadata-grid-theme"),rows:e,rowKeyGetter:e=>e.id,columns:O.columns,rowHeight:40,onScroll:V}),t&&(0,a.jsx)("div",{className:(0,b.s)(r,{info:!0}),children:(0,a.jsx)(h.N,{title:P("app_navigationTree_limited"),onClick:n,children:P("ui_load_more")})}),(0,a.jsx)(T,{className:(0,b.s)(r,{objectPropertyTableFooter:!0}),state:I})]})})}))},74971:(e,t,n)=>{n.d(t,{e:()=>i});var a=n(41773),r=n(38857);const o=(0,r.mC)((async function loader(){const{Table:e}=await Promise.all([n.e(11502),n.e(7542),n.e(97493),n.e(67557),n.e(70639),n.e(89814),n.e(44134),n.e(95218),n.e(15309),n.e(62570),n.e(95860),n.e(40828)]).then(n.bind(n,57150));return{Table:e}})),i=function TableLoader(e){return(0,a.jsx)(r.CW,{loader:o,children:({Table:t})=>(0,a.jsx)(t,{...e})})}},32191:(e,t,n)=>{n.r(t),n.d(t,{ObjectViewerBootstrap:()=>d});var a=n(1118),r=n(82103),o=n(5576),i=n(89414),s=n(78199),c=n(59113);let d=class ObjectViewerBootstrap extends r.j{constructor(e,t,n){super(),this.objectViewerTabService=e,this.objectPropertiesPageService=t,this.objectPropertyTableFooterService=n}register(){this.objectViewerTabService.registerTabHandler(),this.objectPropertiesPageService.registerDBObjectPage(),this.objectPropertyTableFooterService.registerFooterActions()}load(){}};d=(0,a.Cg)([(0,o._)(),(0,a.Sn)("design:paramtypes",[c.ObjectViewerTabService,i.ObjectPropertiesPageService,s.ObjectPropertyTableFooterService])],d)},31512:(e,t,n)=>{n.r(t),n.d(t,{ObjectViewerPanel:()=>N});var a=n(41773),r=n(94866),o=n(7838),i=n(17675),s=n(64928),c=n(84383),d=n(14249),l=n(7167),b=n(13720),h=n(49690),u=n(18699),g=n(30819),p=n(20458),v=n(46133),j=n(68347),f=n(12195),S=n(31324),m=n(39926);const x=(0,o.PA)((function DBObjectPagePanel({tab:e,page:t}){const n=t.getPanelComponent();return(0,a.jsx)(n,{tab:e,page:t})}));var P=n(34756),I=n(15993);const y=(0,o.PA)((function DBObjectPageTab({tab:e,page:t,onSelect:n}){const r=(0,I.useCallback)((()=>n(e,t)),[e,t,n]),o=t.getTabComponent();return(0,a.jsx)(o,{tab:e,page:t,onSelect:r})})),_={tabs:"tabs___YLb2E theme-background-background theme-text-text-primary-on-light"},T=[[p.A,{mode:"append",styles:[{tab:"tab___uEZJY theme-ripple theme-background-surface theme-text-text-primary-on-light",tabOuter:"tabOuter___b6uGL"}]}]],N=(0,o.PA)((function ObjectViewerPanel({tab:e}){const t=(0,i.W)(),n=(0,u.h)(P.DBObjectPageService),o=(0,u.h)(g.NavNodeInfoResource),p=(0,v.n)((()=>new S.C)),I=(0,s.d)(_),N=e.handlerState.objectId,w=e.handlerState.connectionKey||null,C=(0,c.q)(ObjectViewerPanel,h.ConnectionInfoResource,w),O=(0,c.q)(ObjectViewerPanel,o,N,{onData(t){(0,r.h5)((()=>{e.handlerState.tabIcon=t.icon,e.handlerState.tabTitle=t.name}))},active:!C.isLoading()&&C.data?.connected}),V=n.orderedPages;return e.handlerState.error?(0,a.jsx)(d.x,{children:t("plugin_object_viewer_error")}):(0,a.jsx)(m.K,{connectionKey:w,children:O.data?(0,a.jsx)(j.W,{currentTabId:e.handlerState.pageId,tabsClassName:(0,l.s)(I,{tabs:!0}),tabs:(0,a.jsx)(b.Z,{registry:T,children:V.map((t=>(0,a.jsx)(y,{tab:e,page:t,onSelect:n.selectPage},t.key)))}),localState:p,children:V.map((t=>(0,a.jsx)(f.K,{tabId:t.key,lazy:!0,children:(0,a.jsx)(x,{tab:e,page:t})},t.key)))}):(0,a.jsx)(d.x,{children:t("plugin_object_viewer_table_no_items")})})}))},570:(e,t,n)=>{n.r(t),n.d(t,{ObjectViewerTab:()=>h});var a=n(41773),r=n(7838),o=n(15993),i=n(92674),s=n(43659),c=n(48522),d=n(19259),l=n(91751),b=n(32661);const h=(0,r.PA)((function ObjectViewerTab({tab:e,onSelect:t,onClose:n}){const r=(0,o.useContext)(l.b),h=(0,i.f)(r),{node:u}=(0,b.o)(e.handlerState.objectId),g=n?({tabId:e})=>n(e):void 0,p=u?.name||e.handlerState.tabTitle;return(0,a.jsxs)(s.o,{tabId:e.id,title:p,menuContext:h,onOpen:({tabId:e})=>t(e),onClose:g,children:[(0,a.jsx)(c.$,{icon:u?.icon||e.handlerState.tabIcon}),(0,a.jsx)(d.I,{children:p})]})}))},59113:(e,t,n)=>{n.r(t),n.d(t,{ObjectViewerTabService:()=>N,isObjectViewerTab:()=>isObjectViewerTab});var a=n(1118),r=n(94866),o=n(50420),i=n(49690),s=n(9390),c=n(97748),d=n(81886),l=n(84847),b=n(71361),h=n(30606),u=n(5576),g=n(14452),p=n(86888),v=n(7137),j=n(64809),f=n(6587),S=n(38396),m=n(7278),x=n(85213),P=n(33901),I=n(34756);const y="object_viewer_properties",_=(0,o.j)((()=>Promise.all([n.e(11502),n.e(97493),n.e(67557),n.e(11450),n.e(15309),n.e(86167)]).then(n.bind(n,31512)).then((e=>e.ObjectViewerPanel)))),T=(0,o.j)((()=>Promise.all([n.e(97493),n.e(95218),n.e(15309),n.e(8548)]).then(n.bind(n,570)).then((e=>e.ObjectViewerTab))));let N=class ObjectViewerTabService{constructor(e,t,n,a,o,b,h,u){this.navNodeManagerService=e,this.dbObjectPageService=t,this.notificationService=n,this.navigationTabsService=a,this.connectionInfoResource=o,this.connectionNavNodeService=b,this.navTreeResource=h,this.connectionExecutionContextResource=u,this.objectViewerTabContext=(e,t)=>{const n=e.getContext(this.navigationTabsService.navigationTabContext),a=e.getContext(this.navNodeManagerService.navigationNavNodeContext),o=this.navigationTabsService.findTab(isObjectViewerTab((e=>e.handlerState.objectId===a.nodeId)));function isSupported(){return p.n.isDatabaseObject(t.nodeId)}o&&((0,r.h5)((()=>{o.handlerState.tabIcon=a.icon,o.handlerState.tabTitle=a.name})),n.registerTab(o)),isSupported()&&a.markOpen();const getPage=()=>{if(!n.tab)return;const e=n.tab.handlerState?.pageId;return e?this.dbObjectPageService.getPage(e):void 0};let s={page:getPage()};return{get isSupported(){return isSupported()},get tab(){return n.tab},get page(){return getPage()},tabInfo:n,nodeInfo:a,initTab:async()=>{if(!n.tab&&isSupported()){const t=await e.getContext(this.connectionNavNodeService.navigationNavNodeConnectionContext);return n.openNewTab({projectId:a.projectId??null,handlerId:y,handlerState:{projectId:a.projectId,connectionKey:t&&(0,i.createConnectionParam)(t),objectId:a.nodeId,parentId:a.parentId,parents:a.getParents(),folderId:a.folderId,pageId:"",childrenError:!1,error:!1,pagesState:{},tabIcon:a.icon,tabTitle:a.name}}),n.tab}return n.tab},isPageActive:e=>e===getPage(),trySwitchPage:(e,t)=>!(s.page&&!this.dbObjectPageService.canSwitchPage(s.page,e))&&(s={page:e,state:t},!0),canSwitchPage:e=>!s.page||this.dbObjectPageService.canSwitchPage(s.page,e),switchPage:(e,t)=>!(!n.tab||!e&&!s.page)&&this.dbObjectPageService.trySwitchPage(n.tab,e||s.page,t||s.state)}},this.tabHandler=this.navigationTabsService.registerTabHandler({key:y,getTabComponent:()=>T,getPanelComponent:()=>_,onRestore:this.restoreObjectTab.bind(this),onSelect:this.selectObjectTab.bind(this),onClose:this.closeObjectTab.bind(this),canClose:this.canCloseObjectTab.bind(this),extensions:[(0,S.r)(this.getProject.bind(this)),(0,v.U)(this.getNavNode.bind(this)),(0,s.U)(this.getConnection.bind(this)),(0,c.W)(this.getDBObjectCatalog.bind(this)),(0,d.I)(this.getDBObjectSchema.bind(this)),(0,l.P)(this.getExecutionContext.bind(this))]}),(0,r.Gn)(this,{updateConnectionTabs:r.XI,selectObjectTab:r.XI})}registerTabHandler(){this.navNodeManagerService.onCanOpen.addHandler(this.canOpenHandler.bind(this)),this.navNodeManagerService.navigator.addHandler(this.navigationHandler.bind(this)),this.navNodeManagerService.navigator.addPostHandler(this.navigationPostHandler.bind(this)),this.connectionInfoResource.onItemUpdate.addHandler(this.updateConnectionTabs.bind(this)),this.connectionInfoResource.onConnectionClose.addHandler(this.closeConnectionTabs.bind(this)),this.connectionInfoResource.onItemDelete.addHandler(this.closeConnectionTabs.bind(this)),this.navNodeManagerService.navTree.onItemDelete.addHandler(this.removeTabs.bind(this)),this.navTreeResource.onNodeRename.addHandler(this.handleNodeRename.bind(this))}handleNodeRename(e,t){(0,r.h5)((()=>{const n=t.getContext(this.objectViewerTabContext);n.tab&&(n.tab.handlerState.objectId=e.newNodeId)}))}isPageActive(e,t){return e.handlerState.pageId===t.key}closeConnectionTabs(e){const t=Array.from(this.navigationTabsService.findTabs(isObjectViewerTab((t=>void 0!==t.handlerState.connectionKey&&this.connectionInfoResource.isIntersect(e,t.handlerState.connectionKey))))).map((e=>e.id));this.navigationTabsService.closeTabSilent((0,m.OU)(t),!0)}updateConnectionTabs(e){x.F.forEach(e,(e=>{const t=this.navigationTabsService.findTab(isObjectViewerTab((t=>t.id===this.navigationTabsService.currentTabId&&void 0!==t.handlerState.connectionKey&&this.connectionInfoResource.isKeyEqual(t.handlerState.connectionKey,e))));t&&this.navigationTabsService.selectTab(t.id)}))}async removeTabs(e){const t=[];await this.connectionInfoResource.load(i.ConnectionInfoActiveProjectKey),x.F.forEach(e,(e=>{const n=this.navigationTabsService.findTab(isObjectViewerTab((t=>t.handlerState.objectId===e)));if(n){if(n.handlerState.connectionKey){const e=this.connectionInfoResource.get(n.handlerState.connectionKey);if(e&&!e.connected)return}t.push(n.id)}})),this.navigationTabsService.closeTabSilent((0,m.OU)(t),!0)}getProject({handlerState:e}){return e.projectId}getNavNode({handlerState:e}){if(e.connectionKey){const t=this.connectionInfoResource.get(e.connectionKey);if(!t?.connected)return}return{nodeId:e.objectId,path:e.parents}}getConnection(e){return e.handlerState.connectionKey}getDBObjectCatalog(e){const t=this.navNodeManagerService.getNodeContainerInfo(e.handlerState.objectId);if(t.catalogId)return t.catalogId}getDBObjectSchema(e){const t=this.navNodeManagerService.getNodeContainerInfo(e.handlerState.objectId);if(t.schemaId)return t.schemaId}getExecutionContext(e){const t=e.handlerState.connectionKey;if(t)return this.connectionExecutionContextResource.values.find((e=>(0,i.isConnectionInfoParamEqual)(e,t)))}selectObjectTab(e){if(!e.handlerState.error)try{const t=this.dbObjectPageService.getPage(e.handlerState.pageId);if(t&&this.dbObjectPageService.selectPage(e,t),e.handlerState.childrenError)return}catch(t){e.handlerState.error=!0,this.notificationService.logException(t,"Object Viewer Error","Error in Object Viewer while tab selecting")}}async restoreObjectTab(e){return!(!("string"==typeof e.handlerState.folderId&&["string","undefined"].includes(typeof e.handlerState.parentId)&&["object","undefined"].includes(typeof e.handlerState.connectionKey)&&["string","undefined"].includes(typeof e.handlerState.projectId)&&Array.isArray(e.handlerState.parents)&&"string"==typeof e.handlerState.objectId&&"object"==typeof e.handlerState.pagesState&&"boolean"==typeof e.handlerState.error&&"boolean"==typeof e.handlerState.childrenError)||e.handlerState.tabIcon&&"string"!=typeof e.handlerState.tabIcon||e.handlerState.tabTitle&&"string"!=typeof e.handlerState.tabTitle)&&(!(e.handlerState.connectionKey&&(await this.connectionInfoResource.load(i.ConnectionInfoActiveProjectKey),!this.connectionInfoResource.has(e.handlerState.connectionKey)))&&((0,r.h5)((()=>{e.handlerState.error=!1,e.handlerState.childrenError=!1})),this.dbObjectPageService.restorePages(e)))}async canCloseObjectTab(e){return await this.dbObjectPageService.canClosePages(e)}async closeObjectTab(e){await this.dbObjectPageService.closePages(e)}canOpenHandler(e,t){t.getContext(this.objectViewerTabContext)}async navigationHandler(e,t){try{const{nodeInfo:n,initTab:a}=t.getContext(this.objectViewerTabContext),o=await a();o&&(0,r.h5)((()=>{(!o.handlerState.folderId||e.folderId&&o.handlerState.folderId!==e.folderId||o.handlerState.folderId!==n.folderId)&&(o.handlerState.childrenError=!1,o.handlerState.folderId=e.folderId||n.folderId),this.navigationTabsService.selectTab(o.id)}))}catch(e){this.notificationService.logException(e,"Object Viewer Error","Error in Object Viewer while processing action with database node")}}navigationPostHandler(e,t){if(t.hasContext(this.objectViewerTabContext))try{const{switchPage:e}=t.getContext(this.objectViewerTabContext);e()}catch(e){this.notificationService.logException(e,"Object Viewer Error","Error in Object Viewer while processing action with database node")}}};function isObjectViewerTab(e){if("function"==typeof e){const t=e;return e=>{const n=e.handlerId===y;return t&&n?t(e):n}}return e.handlerId===y}N=(0,a.Cg)([(0,u._)(),(0,a.Sn)("design:paramtypes",[j.NavNodeManagerService,I.DBObjectPageService,g.NotificationService,P.NavigationTabsService,i.ConnectionInfoResource,b.ConnectionNavNodeService,f.NavTreeResource,h.ConnectionExecutionContextResource])],N)}}]);