├── .gitignore
├── Dockerfile
├── LICENSE
├── README.md
├── buildxDocker.sh
├── dist
├── afterParse
│ ├── addCSINodeToNode.js
│ ├── addEventRoot.js
│ ├── addParentFnum.js
│ ├── addVolumeAttachmentToCSI.js
│ ├── buildAdditionalServerData.js
│ ├── buildVolumeAttachmentInfo.js
│ ├── clusterSummary.js
│ ├── eventMessageGraphic.js
│ ├── flipRepoFirst.js
│ ├── hogsReport.js
│ ├── processAfterParse.js
│ ├── ripEndpointSlices.js
│ ├── ripEndpoints.js
│ ├── ripIPs.js
│ ├── ripNetwork.js
│ ├── ripNodes.js
│ ├── ripPods.js
│ ├── ripServiceInPods.js
│ ├── ripServices.js
│ ├── searchVpK.js
│ ├── securityRelatedInfo.js
│ ├── setEvtTimes.js
│ └── sortByKey.js
├── filehandler
│ ├── dirdate.js
│ ├── formatdir.js
│ ├── getclusterdir.js
│ ├── makedir.js
│ ├── processcomponents.js
│ ├── processexplains.js
│ ├── processreadyz.js
│ ├── processversion.js
│ ├── readconfig.js
│ ├── readlicensefile.js
│ ├── readresource.js
│ ├── remdir.js
│ └── saveconfigfile.js
├── fileio
│ ├── buildIndexes.js
│ ├── checkNetIno.js
│ ├── fileio.js
│ ├── loadresources.js
│ ├── populate.js
│ ├── processContainer.js
│ ├── processYAML.js
│ └── validYAML.js
├── help
│ ├── buildDocs.js
│ ├── fileProcessor.js
│ └── helpers.js
├── kube
│ ├── driver.js
│ ├── getAPIs.js
│ ├── getKubeInfo.js
│ ├── kubeReadyZ.js
│ ├── kubeStatus.js
│ ├── kubeapis.js
│ ├── kubeget.js
│ ├── kubeversion.js
│ ├── parseAPIs.js
│ ├── parseStatus.js
│ └── runCommand.js
├── labels
│ ├── checkLabels.js
│ └── checkMatchLabels.js
├── lib
│ ├── appURLRoutes.js
│ ├── buildStorage.js
│ ├── checkAnnotations.js
│ ├── checkOwnerReferences.js
│ ├── clientIO.js
│ ├── vpk.js
│ ├── vpkReset.js
│ └── vpkSpan.js
├── ownerRefs
│ ├── chkUidChain.js
│ ├── getChildUid.js
│ └── getOwnerRefLinks.js
├── parsers
│ ├── controllerRevision
│ │ └── parseControllerRevision.js
│ ├── crd
│ │ └── parseCRD.js
│ ├── csi
│ │ └── parseCSI.js
│ ├── endpointSlice
│ │ └── parseEndpointSlice.js
│ ├── endpoints
│ │ └── parseEndpoints.js
│ ├── events
│ │ └── parseEvent.js
│ ├── generic
│ │ └── parseGeneric.js
│ ├── hpa
│ │ └── parseHPA.js
│ ├── node
│ │ └── parseNode.js
│ ├── persistentVolume
│ │ └── parsePersistentVolume.js
│ ├── persistentVolumeClaim
│ │ └── parsePersistentVolumeClaim.js
│ ├── role
│ │ └── parseRole.js
│ ├── roleBinding
│ │ └── parseRoleBinding.js
│ ├── secret
│ │ └── parseSecret.js
│ ├── service
│ │ └── parseService.js
│ ├── serviceAccount
│ │ └── parseServiceAccount.js
│ ├── storageClass
│ │ └── parseStorageClass.js
│ ├── time
│ │ └── parseTimes.js
│ ├── volume
│ │ └── parseVolume.js
│ ├── volumeAttachments
│ │ └── parseVolumeAttachment.js
│ ├── volumeClaimTemplate
│ │ └── parseVolumeClaimTemplate.js
│ └── workloads
│ │ ├── addToVolumeCounts.js
│ │ ├── containerImages.js
│ │ ├── getMounts.js
│ │ ├── getVolumes.js
│ │ ├── handleJobWorkload.js
│ │ ├── handleOtherWorkloads.js
│ │ ├── handlePodWorkload.js
│ │ ├── parse.js
│ │ ├── parseWorkload.js
│ │ ├── parseWorkloadContainers.js
│ │ ├── saveEnvironments.js
│ │ ├── saveImageInfo.js
│ │ ├── savePorts.js
│ │ └── saveResources.js
├── schematic
│ ├── data
│ │ ├── checkEvents.js
│ │ ├── checkType.js
│ │ ├── checkUsage.js
│ │ ├── clusterLevel.js
│ │ ├── namespaceLevel.js
│ │ ├── parseSchematic.js
│ │ ├── populateBaseContainer.js
│ │ ├── populateContainer.js
│ │ ├── populateControllerRevision.js
│ │ ├── populateDaemonSetPods.js
│ │ ├── populateEndpointSlice.js
│ │ ├── populateEndpoints.js
│ │ ├── populateHPA.js
│ │ ├── populateNetwork.js
│ │ ├── populateOwnerChain.js
│ │ ├── populatePodsToShow.js
│ │ ├── populateServiceAccountSecrets.js
│ │ ├── populateServices.js
│ │ ├── populateStorage.js
│ │ └── schematicParse.js
│ └── html
│ │ ├── bldEvents.js
│ │ ├── buildCSVG.js
│ │ ├── buildContainerStatus.js
│ │ ├── buildNoPods.js
│ │ ├── buildSvgInfo.js
│ │ ├── buildTipContent.js
│ │ ├── checkImage.js
│ │ ├── formatDate.js
│ │ ├── formatJSON.js
│ │ ├── getRequestedData.js
│ │ ├── nsChange.js
│ │ ├── processF.js
│ │ ├── schematicHtml.js
│ │ ├── svgConfig.js
│ │ ├── svgGenerators.js
│ │ ├── svgHeader.js
│ │ ├── svgIAM.js
│ │ ├── svgNetwork.js
│ │ ├── svgPVC.js
│ │ └── svgPod.js
├── search
│ ├── buildReturn.js
│ ├── checkEntireResource.js
│ ├── checkKeyValue.js
│ ├── checkNsOrKind.js
│ ├── parseValueFilter.js
│ ├── processSearch.js
│ ├── processSelected.js
│ ├── reduceKV.js
│ └── search.js
├── security
│ ├── buildResourceHierarchy.js
│ ├── buildsubjectHierarchy.js
│ ├── createResourceHierarchy.js
│ ├── createSubjectHierarchy.js
│ ├── filterViewData.js
│ └── getSecurityViewData.js
├── server
│ ├── public
│ │ ├── ace
│ │ │ ├── ace.js
│ │ │ ├── css
│ │ │ │ ├── ace.css
│ │ │ │ ├── chrome-1.png
│ │ │ │ ├── chrome-2.png
│ │ │ │ ├── merbivore-1.png
│ │ │ │ ├── merbivore-2.png
│ │ │ │ └── theme
│ │ │ │ │ ├── chrome.css
│ │ │ │ │ └── merbivore.css
│ │ │ ├── ext-command_bar.js
│ │ │ ├── ext-keybinding_menu.js
│ │ │ ├── ext-options.js
│ │ │ ├── ext-searchbox.js
│ │ │ ├── ext-split.js
│ │ │ ├── ext-textarea.js
│ │ │ ├── keybinding-emacs.js
│ │ │ ├── keybinding-sublime.js
│ │ │ ├── keybinding-vim.js
│ │ │ ├── keybinding-vscode.js
│ │ │ ├── mode-yaml.js
│ │ │ ├── theme-chrome.js
│ │ │ ├── theme-merbivore.js
│ │ │ └── worker-yaml.js
│ │ ├── docs
│ │ │ ├── cluster.md
│ │ │ ├── containerimages.md
│ │ │ ├── docimages
│ │ │ │ ├── about.png
│ │ │ │ ├── config.png
│ │ │ │ ├── config_action.png
│ │ │ │ ├── config_cluster.png
│ │ │ │ ├── config_confirm.png
│ │ │ │ ├── help_close_config.png
│ │ │ │ ├── help_toc.png
│ │ │ │ ├── overview_container.png
│ │ │ │ ├── overview_local.png
│ │ │ │ ├── resource.png
│ │ │ │ ├── resource_dark.png
│ │ │ │ ├── resource_light.png
│ │ │ │ ├── snapshot_DropDown.png
│ │ │ │ ├── snapshot_Name.png
│ │ │ │ ├── snapshot_dropdown_container.png
│ │ │ │ ├── snapshot_previous.png
│ │ │ │ ├── snapshot_ssh_parms.png
│ │ │ │ ├── splash_log.png
│ │ │ │ ├── splash_vpk_2.png
│ │ │ │ ├── tab_cluster.png
│ │ │ │ ├── tab_cluster_drill_down1.png
│ │ │ │ ├── tab_cluster_drill_down2.png
│ │ │ │ ├── tab_cluster_drill_down3.png
│ │ │ │ ├── tab_cluster_drill_down4.png
│ │ │ │ ├── tab_cluster_legend.png
│ │ │ │ ├── tab_cluster_report.png
│ │ │ │ ├── tab_cluster_timelapse.png
│ │ │ │ ├── tab_cluster_timelapse_controls.png
│ │ │ │ ├── tab_cluster_timelapse_detail.png
│ │ │ │ ├── tab_container_images_graph.png
│ │ │ │ ├── tab_container_images_legend.png
│ │ │ │ ├── tab_container_images_table.png
│ │ │ │ ├── tab_event_msgs.png
│ │ │ │ ├── tab_event_msgs_action.png
│ │ │ │ ├── tab_event_msgs_graph.png
│ │ │ │ ├── tab_event_msgs_table.png
│ │ │ │ ├── tab_event_msgs_timeline.png
│ │ │ │ ├── tab_network_filter.png
│ │ │ │ ├── tab_network_nodes.png
│ │ │ │ ├── tab_network_nodes_detail.png
│ │ │ │ ├── tab_network_nodes_detail2.png
│ │ │ │ ├── tab_network_services.png
│ │ │ │ ├── tab_ownerref.png
│ │ │ │ ├── tab_ownerref2.png
│ │ │ │ ├── tab_ownerref_filter.png
│ │ │ │ ├── tab_ownerref_filter_results.png
│ │ │ │ ├── tab_search.png
│ │ │ │ ├── tab_search_table.png
│ │ │ │ ├── tab_security.png
│ │ │ │ ├── tab_security2.png
│ │ │ │ ├── tab_security_filter.png
│ │ │ │ ├── tab_security_legend.png
│ │ │ │ ├── tab_stats_reportView.png
│ │ │ │ ├── tab_stats_treeMap.png
│ │ │ │ ├── tab_storage.png
│ │ │ │ ├── tab_storage_by_namespace.png
│ │ │ │ ├── tab_storage_by_node.png
│ │ │ │ ├── tab_storage_by_type.png
│ │ │ │ ├── tab_workloadschematics.png
│ │ │ │ ├── tab_workloadschematics_decode.png
│ │ │ │ ├── tab_workloadschematics_filter.png
│ │ │ │ ├── tab_workloadschematics_namespace.png
│ │ │ │ ├── tab_workloadschematics_resources.png
│ │ │ │ ├── tab_workloadschematics_rollover.png
│ │ │ │ ├── tab_workloadschematics_source.png
│ │ │ │ ├── ui_no_data.png
│ │ │ │ ├── ui_shutdown_complete.png
│ │ │ │ ├── ui_shutdown_confirm.png
│ │ │ │ ├── ui_startup.png
│ │ │ │ ├── ui_top.png
│ │ │ │ └── vpk.png
│ │ │ ├── eventmsgs.md
│ │ │ ├── helpcloseconfig.md
│ │ │ ├── installing.md
│ │ │ ├── introduction.md
│ │ │ ├── network.md
│ │ │ ├── ownerref.md
│ │ │ ├── schematics.md
│ │ │ ├── search.md
│ │ │ ├── security.md
│ │ │ ├── snapshots.md
│ │ │ ├── stats.md
│ │ │ ├── storage.md
│ │ │ ├── toc.md
│ │ │ └── ui.md
│ │ ├── images
│ │ │ ├── 3d
│ │ │ │ ├── 3d-3rdParty-Plane.png
│ │ │ │ ├── 3d-csi.png
│ │ │ │ ├── 3d-docker-container-init.png
│ │ │ │ ├── 3d-docker-container.png
│ │ │ │ ├── 3d-docker-image.png
│ │ │ │ ├── 3d-ep.png
│ │ │ │ ├── 3d-ingress.png
│ │ │ │ ├── 3d-kubelet.png
│ │ │ │ ├── 3d-mstNode.png
│ │ │ │ ├── 3d-podBlue.png
│ │ │ │ ├── 3d-podGreen.png
│ │ │ │ ├── 3d-podGrey.png
│ │ │ │ ├── 3d-podMagenta.png
│ │ │ │ ├── 3d-podRed.png
│ │ │ │ ├── 3d-podYellow.png
│ │ │ │ ├── 3d-pv.png
│ │ │ │ ├── 3d-pvc.png
│ │ │ │ ├── 3d-repository.png
│ │ │ │ ├── 3d-sc.png
│ │ │ │ ├── 3d-svc.png
│ │ │ │ ├── 3d-volume.png
│ │ │ │ └── 3d-wrkNode.png
│ │ │ ├── clouds.jpg
│ │ │ ├── imagesLegendGraph.png
│ │ │ ├── imagesLegendTable.png
│ │ │ ├── k8
│ │ │ │ ├── api.svg
│ │ │ │ ├── c-c-m.svg
│ │ │ │ ├── c-m.svg
│ │ │ │ ├── c-rev-orig.svg
│ │ │ │ ├── c-rev.svg
│ │ │ │ ├── c-role.svg
│ │ │ │ ├── cert.svg
│ │ │ │ ├── certReq.svg
│ │ │ │ ├── certSignReq.svg
│ │ │ │ ├── cm.svg
│ │ │ │ ├── control-plane.svg
│ │ │ │ ├── crb.svg
│ │ │ │ ├── crd.svg
│ │ │ │ ├── cronjob.svg
│ │ │ │ ├── csidriver.svg
│ │ │ │ ├── csinode.svg
│ │ │ │ ├── deploy.svg
│ │ │ │ ├── ds.svg
│ │ │ │ ├── ep.svg
│ │ │ │ ├── eps.svg
│ │ │ │ ├── etcd.svg
│ │ │ │ ├── evt.svg
│ │ │ │ ├── group.svg
│ │ │ │ ├── hpa.svg
│ │ │ │ ├── ing.svg
│ │ │ │ ├── job.svg
│ │ │ │ ├── k-proxy.svg
│ │ │ │ ├── k8.svg
│ │ │ │ ├── kubelet.svg
│ │ │ │ ├── limits.svg
│ │ │ │ ├── master.svg
│ │ │ │ ├── netpol.svg
│ │ │ │ ├── node.svg
│ │ │ │ ├── ns.svg
│ │ │ │ ├── pod.svg
│ │ │ │ ├── psp.svg
│ │ │ │ ├── pv.svg
│ │ │ │ ├── pvc.svg
│ │ │ │ ├── quota.svg
│ │ │ │ ├── rb.svg
│ │ │ │ ├── rc.svg
│ │ │ │ ├── role.svg
│ │ │ │ ├── rs.svg
│ │ │ │ ├── sa.svg
│ │ │ │ ├── sc.svg
│ │ │ │ ├── sched.svg
│ │ │ │ ├── secret.svg
│ │ │ │ ├── security.svg
│ │ │ │ ├── sts.svg
│ │ │ │ ├── subjects.svg
│ │ │ │ ├── svc.svg
│ │ │ │ ├── user.svg
│ │ │ │ ├── va.svg
│ │ │ │ ├── vol.svg
│ │ │ │ └── volumeattachment.svg
│ │ │ ├── loading.gif
│ │ │ ├── other
│ │ │ │ ├── ceph.svg
│ │ │ │ ├── coreDNS.svg
│ │ │ │ ├── coreDNS2.svg
│ │ │ │ ├── fluentd.svg
│ │ │ │ ├── helm.svg
│ │ │ │ ├── ibm.svg
│ │ │ │ ├── ibmold.svg
│ │ │ │ ├── kong.svg
│ │ │ │ ├── launch-box.svg
│ │ │ │ ├── ocp.svg
│ │ │ │ ├── rancher.svg
│ │ │ │ ├── redhat.svg
│ │ │ │ ├── rook.svg
│ │ │ │ ├── rook2.svg
│ │ │ │ ├── unk.svg
│ │ │ │ ├── uparrow.svg
│ │ │ │ └── vpk.png
│ │ │ ├── stars.jpg
│ │ │ ├── vpk.png
│ │ │ └── wow
│ │ │ │ ├── pic-cluster.png
│ │ │ │ ├── pic-containerimages.png
│ │ │ │ ├── pic-eventmsgs.png
│ │ │ │ ├── pic-network.png
│ │ │ │ ├── pic-ownerref.png
│ │ │ │ ├── pic-schematic.png
│ │ │ │ ├── pic-searchview.png
│ │ │ │ ├── pic-security.png
│ │ │ │ ├── pic-stats.png
│ │ │ │ └── pic-storage.png
│ │ ├── javascript
│ │ │ ├── 3rdparty
│ │ │ │ ├── all.js
│ │ │ │ ├── babylon.current.js
│ │ │ │ ├── babylon.js
│ │ │ │ ├── babylon.old.js
│ │ │ │ ├── bootstrap-table.min.js
│ │ │ │ ├── bootstrap-toggle.min.js
│ │ │ │ ├── bootstrap.min.js
│ │ │ │ ├── bootstrap.new.min.js
│ │ │ │ ├── d3-graphviz.js
│ │ │ │ ├── d3.v7.min.js
│ │ │ │ ├── fontawesome-f62fcc73b5.js
│ │ │ │ ├── graphviz.js
│ │ │ │ ├── graphvizlib.wasm
│ │ │ │ ├── index.js
│ │ │ │ ├── jquery-3.4.1.min.js
│ │ │ │ ├── jspdf.min.js
│ │ │ │ ├── jspdf.plugin.autotable.js
│ │ │ │ ├── popper.min.js
│ │ │ │ ├── popper.orig.min.js
│ │ │ │ ├── select2.min.4.1.0.js
│ │ │ │ └── tableExport.min.js
│ │ │ ├── extensions
│ │ │ │ ├── export
│ │ │ │ │ ├── bootstrap-table-export.js
│ │ │ │ │ └── bootstrap-table-export.min.js
│ │ │ │ └── print
│ │ │ │ │ ├── bootstrap-table-print.js
│ │ │ │ │ └── bootstrap-table-print.min.js
│ │ │ ├── socket.io.js
│ │ │ ├── vpk3dCluster.js
│ │ │ ├── vpk3dCommon.js
│ │ │ ├── vpk3dData.js
│ │ │ ├── vpk3dFilter.js
│ │ │ ├── vpk3dTimeLapse.js
│ │ │ ├── vpkCommon.js
│ │ │ ├── vpkEdit.js
│ │ │ ├── vpkGetDefs.js
│ │ │ ├── vpkGraphvizManager.js
│ │ │ ├── vpkIconImage.js
│ │ │ ├── vpkLoadSnapshot.js
│ │ │ ├── vpkMain.js
│ │ │ ├── vpkModalHandlers.js
│ │ │ ├── vpkPrintDiv.js
│ │ │ ├── vpkSelectLists.js
│ │ │ ├── vpkTabCluster.js
│ │ │ ├── vpkTabClusterRpt.js
│ │ │ ├── vpkTabContainerImages.js
│ │ │ ├── vpkTabEvtMsgs.js
│ │ │ ├── vpkTabNetwork.js
│ │ │ ├── vpkTabOwnerRef.js
│ │ │ ├── vpkTabSchematics.js
│ │ │ ├── vpkTabSearch.js
│ │ │ ├── vpkTabSecurity.js
│ │ │ ├── vpkTabStats.js
│ │ │ ├── vpkTabStorage.js
│ │ │ ├── vpkTipsInfo.js
│ │ │ ├── vpkTopScreen.js
│ │ │ └── vpkUsage.js
│ │ ├── routes
│ │ │ └── index.js
│ │ ├── sounds
│ │ │ ├── GunShot.wav
│ │ │ └── LowDing.wav
│ │ ├── stylesheets
│ │ │ ├── all.min.css
│ │ │ ├── all.min.orig.css
│ │ │ ├── bootstrap-select.css
│ │ │ ├── bootstrap-table.min.css
│ │ │ ├── bootstrap-toggle.min.css
│ │ │ ├── bootstrap.min.css
│ │ │ ├── bootstrap.min.new.css
│ │ │ ├── select2.min.4.1.0.css
│ │ │ ├── vpk.css
│ │ │ ├── vpk.orig.css
│ │ │ └── vpk3D.css
│ │ ├── textures
│ │ │ ├── clouds_nx.jpg
│ │ │ ├── clouds_ny.jpg
│ │ │ ├── clouds_nz.jpg
│ │ │ ├── clouds_px.jpg
│ │ │ ├── clouds_py.jpg
│ │ │ ├── clouds_pz.jpg
│ │ │ ├── stars_nx.jpg
│ │ │ ├── stars_ny.jpg
│ │ │ ├── stars_nz.jpg
│ │ │ ├── stars_px.jpg
│ │ │ ├── stars_py.jpg
│ │ │ └── stars_pz.jpg
│ │ ├── views
│ │ │ ├── index.ejs
│ │ │ └── partials
│ │ │ │ ├── README.md
│ │ │ │ ├── banner.ejs
│ │ │ │ ├── head.ejs
│ │ │ │ ├── modal-about.ejs
│ │ │ │ ├── modal-chgDir.ejs
│ │ │ │ ├── modal-closeVpk.ejs
│ │ │ │ ├── modal-cluster.ejs
│ │ │ │ ├── modal-clusterLegend.ejs
│ │ │ │ ├── modal-command.ejs
│ │ │ │ ├── modal-config.ejs
│ │ │ │ ├── modal-decode.ejs
│ │ │ │ ├── modal-docs.ejs
│ │ │ │ ├── modal-editor.ejs
│ │ │ │ ├── modal-evtMsgs.ejs
│ │ │ │ ├── modal-explain.ejs
│ │ │ │ ├── modal-imagesLegend.ejs
│ │ │ │ ├── modal-message.ejs
│ │ │ │ ├── modal-multi.ejs
│ │ │ │ ├── modal-networkFilter.ejs
│ │ │ │ ├── modal-networkInfo.ejs
│ │ │ │ ├── modal-ownerRefFilter.ejs
│ │ │ │ ├── modal-schem.ejs
│ │ │ │ ├── modal-schematicFilter.ejs
│ │ │ │ ├── modal-search.ejs
│ │ │ │ ├── modal-secInfo.ejs
│ │ │ │ ├── modal-securityFilter.ejs
│ │ │ │ ├── modal-securityLegend.ejs
│ │ │ │ ├── modal-splashVpk.ejs
│ │ │ │ ├── modal-timeLapse.ejs
│ │ │ │ ├── modal-yaml.ejs
│ │ │ │ ├── modal-yes-no.ejs
│ │ │ │ ├── scripts.ejs
│ │ │ │ ├── tab-cluster.ejs
│ │ │ │ ├── tab-containerImages.ejs
│ │ │ │ ├── tab-eventMsgs.ejs
│ │ │ │ ├── tab-instructions.ejs
│ │ │ │ ├── tab-network.ejs
│ │ │ │ ├── tab-ownerRef.ejs
│ │ │ │ ├── tab-schematic.ejs
│ │ │ │ ├── tab-search.ejs
│ │ │ │ ├── tab-security.ejs
│ │ │ │ ├── tab-stats.ejs
│ │ │ │ ├── tab-storage.ejs
│ │ │ │ ├── tab-tabs.ejs
│ │ │ │ ├── tab-views.ejs
│ │ │ │ └── tooltip.ejs
│ │ └── webfonts
│ │ │ ├── fa-brands-400.eot
│ │ │ ├── fa-brands-400.svg
│ │ │ ├── fa-brands-400.ttf
│ │ │ ├── fa-brands-400.woff
│ │ │ ├── fa-brands-400.woff2
│ │ │ ├── fa-regular-400.eot
│ │ │ ├── fa-regular-400.svg
│ │ │ ├── fa-regular-400.ttf
│ │ │ ├── fa-regular-400.woff
│ │ │ ├── fa-regular-400.woff2
│ │ │ ├── fa-solid-900.eot
│ │ │ ├── fa-solid-900.svg
│ │ │ ├── fa-solid-900.ttf
│ │ │ ├── fa-solid-900.woff
│ │ │ └── fa-solid-900.woff2
│ └── server.js
├── snapshot
│ ├── checkForOldData.js
│ ├── getSnapshot.js
│ ├── processDir.js
│ ├── reloadSnapshot.js
│ ├── removeOldFiles.js
│ ├── returnData.js
│ ├── saveK8sData.js
│ ├── saveStatMsg.js
│ └── stats.js
├── splash
│ └── splash.js
└── utils
│ ├── calcsize.js
│ ├── checkdefinednamespace.js
│ ├── checkkind.js
│ ├── checklabel.js
│ ├── checktype.js
│ ├── chgp2.js
│ ├── cidnamelookup.js
│ ├── containerlink.js
│ ├── countresources.js
│ ├── formatbytes.js
│ ├── getptime.js
│ ├── logging.js
│ ├── redactsecret.js
│ ├── resetvpkobject.js
│ ├── showprops.js
│ ├── showtimedif.js
│ ├── sortjsonbykeys.js
│ ├── spacecalc.js
│ └── timediff.js
├── eslint.config.js
├── jsconfig.json
├── package.json
├── src
├── afterParse
│ ├── addCSINodeToNode.ts
│ ├── addEventRoot.ts
│ ├── addParentFnum.ts
│ ├── addVolumeAttachmentToCSI.ts
│ ├── buildAdditionalServerData.ts
│ ├── buildVolumeAttachmentInfo.ts
│ ├── clusterSummary.ts
│ ├── eventMessageGraphic.ts
│ ├── flipRepoFirst.ts
│ ├── hogsReport.ts
│ ├── processAfterParse.ts
│ ├── ripEndpointSlices.ts
│ ├── ripEndpoints.ts
│ ├── ripIPs.ts
│ ├── ripNetwork.ts
│ ├── ripNodes.ts
│ ├── ripPods.ts
│ ├── ripServiceInPods.ts
│ ├── ripServices.ts
│ ├── searchVpK.ts
│ ├── securityRelatedInfo.ts
│ ├── setEvtTimes.ts
│ └── sortByKey.ts
├── filehandler
│ ├── dirdate.ts
│ ├── formatdir.ts
│ ├── getclusterdir.ts
│ ├── makedir.ts
│ ├── processcomponents.ts
│ ├── processexplains.ts
│ ├── processreadyz.ts
│ ├── processversion.ts
│ ├── readconfig.ts
│ ├── readlicensefile.ts
│ ├── readresource.ts
│ ├── remdir.ts
│ └── saveconfigfile.ts
├── fileio
│ ├── buildIndexes.ts
│ ├── checkNetIno.ts
│ ├── fileio.ts
│ ├── loadresources.ts
│ ├── populate.ts
│ ├── processContainer.ts
│ ├── processYAML.ts
│ └── validYAML.ts
├── help
│ ├── buildDocs.ts
│ ├── fileProcessor.ts
│ ├── helpers.ts
│ └── index.ts
├── kube
│ ├── driver.ts
│ ├── getAPIs.ts
│ ├── getKubeInfo.ts
│ ├── kubeReadyZ.ts
│ ├── kubeStatus.ts
│ ├── kubeapis.ts
│ ├── kubeget.ts
│ ├── kubeversion.ts
│ ├── parseAPIs.ts
│ ├── parseStatus.ts
│ └── runCommand.ts
├── labels
│ ├── checkLabels.ts
│ └── checkMatchLabels.ts
├── lib
│ ├── appURLRoutes.ts
│ ├── buildStorage.ts
│ ├── checkAnnotations.ts
│ ├── checkOwnerReferences.ts
│ ├── clientIO.ts
│ ├── vpk.ts
│ ├── vpkReset.ts
│ └── vpkSpan.ts
├── ownerRefs
│ ├── chkUidChain.ts
│ ├── getChildUid.ts
│ └── getOwnerRefLinks.ts
├── parsers
│ ├── binding
│ │ └── parseBinding.ts
│ ├── container
│ │ └── parseContainer.ts
│ ├── controllerRevision
│ │ └── parseControllerRevision.ts
│ ├── crd
│ │ └── parseCRD.ts
│ ├── csi
│ │ └── parseCSI.ts
│ ├── endpointSlice
│ │ └── parseEndpointSlice.ts
│ ├── endpoints
│ │ └── parseEndpoints.ts
│ ├── events
│ │ └── parseEvent.ts
│ ├── generic
│ │ └── parseGeneric.ts
│ ├── hpa
│ │ └── parseHPA.ts
│ ├── node
│ │ └── parseNode.ts
│ ├── nodeSelector
│ │ └── parseNodeSelector.ts
│ ├── persistentVolume
│ │ └── parsePersistentVolume.ts
│ ├── persistentVolumeClaim
│ │ └── parsePersistentVolumeClaim.ts
│ ├── role
│ │ └── parseRole.ts
│ ├── roleBinding
│ │ ├── parseRoleBinding.ts
│ │ └── parseRoleBinding2.ts
│ ├── secret
│ │ └── parseSecret.ts
│ ├── service
│ │ └── parseService.ts
│ ├── serviceAccount
│ │ └── parseServiceAccount.ts
│ ├── storageClass
│ │ └── parseStorageClass.ts
│ ├── time
│ │ └── parseTimes.ts
│ ├── volume
│ │ └── parseVolume.ts
│ ├── volumeAttachments
│ │ └── parseVolumeAttachment.ts
│ ├── volumeClaimTemplate
│ │ └── parseVolumeClaimTemplate.ts
│ └── workloads
│ │ ├── addToVolumeCounts.ts
│ │ ├── containerImages.ts
│ │ ├── getMounts.ts
│ │ ├── getVolumes.ts
│ │ ├── handleJobWorkload.ts
│ │ ├── handleOtherWorkloads.ts
│ │ ├── handlePodWorkload.ts
│ │ ├── parse.ts
│ │ ├── parseWorkload.ts
│ │ ├── parseWorkloadContainers.ts
│ │ ├── saveEnvironments.ts
│ │ ├── saveImageInfo.ts
│ │ ├── savePorts.ts
│ │ ├── saveResources.ts
│ │ └── sharedData.ts
├── schematic
│ ├── data
│ │ ├── checkEvents.ts
│ │ ├── checkType.ts
│ │ ├── checkUsage.ts
│ │ ├── clusterLevel.ts
│ │ ├── namespaceLevel.ts
│ │ ├── parseSchematic.ts
│ │ ├── populateBaseContainer.ts
│ │ ├── populateContainer.ts
│ │ ├── populateControllerRevision.ts
│ │ ├── populateDaemonSetPods.ts
│ │ ├── populateEndpointSlice.ts
│ │ ├── populateEndpoints.ts
│ │ ├── populateHPA.ts
│ │ ├── populateNetwork.ts
│ │ ├── populateOwnerChain.ts
│ │ ├── populatePodsToShow.ts
│ │ ├── populateServiceAccountSecrets.ts
│ │ ├── populateServices.ts
│ │ ├── populateStorage.ts
│ │ └── schematicParse.ts
│ └── html
│ │ ├── bldEvents.ts
│ │ ├── buildCSVG.ts
│ │ ├── buildContainerStatus.ts
│ │ ├── buildNoPods.ts
│ │ ├── buildSvgInfo.ts
│ │ ├── buildTipContent.ts
│ │ ├── checkImage.ts
│ │ ├── formatDate.ts
│ │ ├── formatJSON.ts
│ │ ├── getRequestedData.ts
│ │ ├── nsChange.ts
│ │ ├── processF.ts
│ │ ├── schematicHtml.ts
│ │ ├── svgConfig.ts
│ │ ├── svgGenerators.ts
│ │ ├── svgHeader.ts
│ │ ├── svgIAM.ts
│ │ ├── svgNetwork.ts
│ │ ├── svgPVC.ts
│ │ └── svgPod.ts
├── search
│ ├── buildReturn.ts
│ ├── checkEntireResource.ts
│ ├── checkKeyValue.ts
│ ├── checkNsOrKind.ts
│ ├── parseValueFilter.ts
│ ├── processSearch.ts
│ ├── processSelected.ts
│ ├── reduceKV.ts
│ └── search.ts
├── security
│ ├── buildResourceHierarchy.ts
│ ├── buildSubjectHierarchy.ts
│ ├── createResourceHierarchy.ts
│ ├── createSubjectHierarchy.ts
│ ├── filterSecurityRules.ts
│ ├── filterViewData.ts
│ ├── getSecurityRules.ts
│ └── getSecurityViewData.ts
├── server
│ ├── public
│ │ ├── ace
│ │ │ ├── ace.js
│ │ │ ├── css
│ │ │ │ ├── ace.css
│ │ │ │ ├── chrome-1.png
│ │ │ │ ├── chrome-2.png
│ │ │ │ ├── merbivore-1.png
│ │ │ │ ├── merbivore-2.png
│ │ │ │ └── theme
│ │ │ │ │ ├── chrome.css
│ │ │ │ │ └── merbivore.css
│ │ │ ├── ext-command_bar.js
│ │ │ ├── ext-keybinding_menu.js
│ │ │ ├── ext-options.js
│ │ │ ├── ext-searchbox.js
│ │ │ ├── ext-split.js
│ │ │ ├── ext-textarea.js
│ │ │ ├── keybinding-emacs.js
│ │ │ ├── keybinding-sublime.js
│ │ │ ├── keybinding-vim.js
│ │ │ ├── keybinding-vscode.js
│ │ │ ├── mode-yaml.js
│ │ │ ├── theme-chrome.js
│ │ │ ├── theme-merbivore.js
│ │ │ └── worker-yaml.js
│ │ ├── docs
│ │ │ ├── cluster.md
│ │ │ ├── containerimages.md
│ │ │ ├── docimages
│ │ │ │ ├── about.png
│ │ │ │ ├── config.png
│ │ │ │ ├── config_action.png
│ │ │ │ ├── config_cluster.png
│ │ │ │ ├── config_confirm.png
│ │ │ │ ├── help_close_config.png
│ │ │ │ ├── help_toc.png
│ │ │ │ ├── overview_container.png
│ │ │ │ ├── overview_local.png
│ │ │ │ ├── resource.png
│ │ │ │ ├── resource_dark.png
│ │ │ │ ├── resource_light.png
│ │ │ │ ├── snapshot_DropDown.png
│ │ │ │ ├── snapshot_Name.png
│ │ │ │ ├── snapshot_dropdown_container.png
│ │ │ │ ├── snapshot_previous.png
│ │ │ │ ├── snapshot_ssh_parms.png
│ │ │ │ ├── splash_log.png
│ │ │ │ ├── splash_vpk_2.png
│ │ │ │ ├── tab_cluster.png
│ │ │ │ ├── tab_cluster_drill_down1.png
│ │ │ │ ├── tab_cluster_drill_down2.png
│ │ │ │ ├── tab_cluster_drill_down3.png
│ │ │ │ ├── tab_cluster_drill_down4.png
│ │ │ │ ├── tab_cluster_legend.png
│ │ │ │ ├── tab_cluster_report.png
│ │ │ │ ├── tab_cluster_timelapse.png
│ │ │ │ ├── tab_cluster_timelapse_controls.png
│ │ │ │ ├── tab_cluster_timelapse_detail.png
│ │ │ │ ├── tab_container_images_graph.png
│ │ │ │ ├── tab_container_images_legend.png
│ │ │ │ ├── tab_container_images_table.png
│ │ │ │ ├── tab_event_msgs.png
│ │ │ │ ├── tab_event_msgs_action.png
│ │ │ │ ├── tab_event_msgs_graph.png
│ │ │ │ ├── tab_event_msgs_table.png
│ │ │ │ ├── tab_event_msgs_timeline.png
│ │ │ │ ├── tab_network_filter.png
│ │ │ │ ├── tab_network_nodes.png
│ │ │ │ ├── tab_network_nodes_detail.png
│ │ │ │ ├── tab_network_nodes_detail2.png
│ │ │ │ ├── tab_network_services.png
│ │ │ │ ├── tab_ownerref.png
│ │ │ │ ├── tab_ownerref2.png
│ │ │ │ ├── tab_ownerref_filter.png
│ │ │ │ ├── tab_ownerref_filter_results.png
│ │ │ │ ├── tab_search.png
│ │ │ │ ├── tab_search_table.png
│ │ │ │ ├── tab_security.png
│ │ │ │ ├── tab_security2.png
│ │ │ │ ├── tab_security_filter.png
│ │ │ │ ├── tab_security_legend.png
│ │ │ │ ├── tab_stats_reportView.png
│ │ │ │ ├── tab_stats_treeMap.png
│ │ │ │ ├── tab_storage.png
│ │ │ │ ├── tab_storage_by_namespace.png
│ │ │ │ ├── tab_storage_by_node.png
│ │ │ │ ├── tab_storage_by_type.png
│ │ │ │ ├── tab_workloadschematics.png
│ │ │ │ ├── tab_workloadschematics_decode.png
│ │ │ │ ├── tab_workloadschematics_filter.png
│ │ │ │ ├── tab_workloadschematics_namespace.png
│ │ │ │ ├── tab_workloadschematics_resources.png
│ │ │ │ ├── tab_workloadschematics_rollover.png
│ │ │ │ ├── tab_workloadschematics_source.png
│ │ │ │ ├── ui_no_data.png
│ │ │ │ ├── ui_shutdown_complete.png
│ │ │ │ ├── ui_shutdown_confirm.png
│ │ │ │ ├── ui_startup.png
│ │ │ │ ├── ui_top.png
│ │ │ │ └── vpk.png
│ │ │ ├── eventmsgs.md
│ │ │ ├── helpcloseconfig.md
│ │ │ ├── installing.md
│ │ │ ├── introduction.md
│ │ │ ├── network.md
│ │ │ ├── ownerref.md
│ │ │ ├── schematics.md
│ │ │ ├── search.md
│ │ │ ├── security.md
│ │ │ ├── snapshots.md
│ │ │ ├── stats.md
│ │ │ ├── storage.md
│ │ │ ├── toc.md
│ │ │ └── ui.md
│ │ ├── images
│ │ │ ├── 3d
│ │ │ │ ├── 3d-3rdParty-Plane.png
│ │ │ │ ├── 3d-csi.png
│ │ │ │ ├── 3d-docker-container-init.png
│ │ │ │ ├── 3d-docker-container.png
│ │ │ │ ├── 3d-docker-image.png
│ │ │ │ ├── 3d-ep.png
│ │ │ │ ├── 3d-ingress.png
│ │ │ │ ├── 3d-kubelet.png
│ │ │ │ ├── 3d-mstNode.png
│ │ │ │ ├── 3d-podBlue.png
│ │ │ │ ├── 3d-podGreen.png
│ │ │ │ ├── 3d-podGrey.png
│ │ │ │ ├── 3d-podMagenta.png
│ │ │ │ ├── 3d-podRed.png
│ │ │ │ ├── 3d-podYellow.png
│ │ │ │ ├── 3d-pv.png
│ │ │ │ ├── 3d-pvc.png
│ │ │ │ ├── 3d-repository.png
│ │ │ │ ├── 3d-sc.png
│ │ │ │ ├── 3d-svc.png
│ │ │ │ ├── 3d-volume.png
│ │ │ │ └── 3d-wrkNode.png
│ │ │ ├── clouds.jpg
│ │ │ ├── imagesLegendGraph.png
│ │ │ ├── imagesLegendTable.png
│ │ │ ├── k8
│ │ │ │ ├── api.svg
│ │ │ │ ├── c-c-m.svg
│ │ │ │ ├── c-m.svg
│ │ │ │ ├── c-rev-orig.svg
│ │ │ │ ├── c-rev.svg
│ │ │ │ ├── c-role.svg
│ │ │ │ ├── cert.svg
│ │ │ │ ├── certReq.svg
│ │ │ │ ├── certSignReq.svg
│ │ │ │ ├── cm.svg
│ │ │ │ ├── control-plane.svg
│ │ │ │ ├── crb.svg
│ │ │ │ ├── crd.svg
│ │ │ │ ├── cronjob.svg
│ │ │ │ ├── csidriver.svg
│ │ │ │ ├── csinode.svg
│ │ │ │ ├── deploy.svg
│ │ │ │ ├── ds.svg
│ │ │ │ ├── ep.svg
│ │ │ │ ├── eps.svg
│ │ │ │ ├── etcd.svg
│ │ │ │ ├── evt.svg
│ │ │ │ ├── group.svg
│ │ │ │ ├── hpa.svg
│ │ │ │ ├── ing.svg
│ │ │ │ ├── job.svg
│ │ │ │ ├── k-proxy.svg
│ │ │ │ ├── k8.svg
│ │ │ │ ├── kubelet.svg
│ │ │ │ ├── limits.svg
│ │ │ │ ├── master.svg
│ │ │ │ ├── netpol.svg
│ │ │ │ ├── node.svg
│ │ │ │ ├── ns.svg
│ │ │ │ ├── pod.svg
│ │ │ │ ├── psp.svg
│ │ │ │ ├── pv.svg
│ │ │ │ ├── pvc.svg
│ │ │ │ ├── quota.svg
│ │ │ │ ├── rb.svg
│ │ │ │ ├── rc.svg
│ │ │ │ ├── role.svg
│ │ │ │ ├── rs.svg
│ │ │ │ ├── sa.svg
│ │ │ │ ├── sc.svg
│ │ │ │ ├── sched.svg
│ │ │ │ ├── secret.svg
│ │ │ │ ├── security.svg
│ │ │ │ ├── sts.svg
│ │ │ │ ├── subjects.svg
│ │ │ │ ├── svc.svg
│ │ │ │ ├── user.svg
│ │ │ │ ├── va.svg
│ │ │ │ ├── vol.svg
│ │ │ │ └── volumeattachment.svg
│ │ │ ├── loading.gif
│ │ │ ├── other
│ │ │ │ ├── ceph.svg
│ │ │ │ ├── coreDNS.svg
│ │ │ │ ├── coreDNS2.svg
│ │ │ │ ├── fluentd.svg
│ │ │ │ ├── helm.svg
│ │ │ │ ├── ibm.svg
│ │ │ │ ├── ibmold.svg
│ │ │ │ ├── kong.svg
│ │ │ │ ├── launch-box.svg
│ │ │ │ ├── ocp.svg
│ │ │ │ ├── rancher.svg
│ │ │ │ ├── redhat.svg
│ │ │ │ ├── rook.svg
│ │ │ │ ├── rook2.svg
│ │ │ │ ├── unk.svg
│ │ │ │ ├── uparrow.svg
│ │ │ │ └── vpk.png
│ │ │ ├── stars.jpg
│ │ │ ├── vpk.png
│ │ │ └── wow
│ │ │ │ ├── pic-cluster.png
│ │ │ │ ├── pic-containerimages.png
│ │ │ │ ├── pic-eventmsgs.png
│ │ │ │ ├── pic-network.png
│ │ │ │ ├── pic-ownerref.png
│ │ │ │ ├── pic-schematic.png
│ │ │ │ ├── pic-searchview.png
│ │ │ │ ├── pic-security.png
│ │ │ │ ├── pic-stats.png
│ │ │ │ └── pic-storage.png
│ │ ├── javascript
│ │ │ ├── 3rdparty
│ │ │ │ ├── all.js
│ │ │ │ ├── babylon.current.js
│ │ │ │ ├── babylon.js
│ │ │ │ ├── babylon.old.js
│ │ │ │ ├── bootstrap-table.min.js
│ │ │ │ ├── bootstrap-toggle.min.js
│ │ │ │ ├── bootstrap.min.js
│ │ │ │ ├── bootstrap.new.min.js
│ │ │ │ ├── d3-graphviz.js
│ │ │ │ ├── d3.v7.min.js
│ │ │ │ ├── fontawesome-f62fcc73b5.js
│ │ │ │ ├── graphviz.js
│ │ │ │ ├── graphvizlib.wasm
│ │ │ │ ├── index.js
│ │ │ │ ├── jquery-3.4.1.min.js
│ │ │ │ ├── jspdf.min.js
│ │ │ │ ├── jspdf.plugin.autotable.js
│ │ │ │ ├── popper.min.js
│ │ │ │ ├── popper.orig.min.js
│ │ │ │ ├── select2.min.4.1.0.js
│ │ │ │ └── tableExport.min.js
│ │ │ ├── extensions
│ │ │ │ ├── export
│ │ │ │ │ ├── bootstrap-table-export.js
│ │ │ │ │ └── bootstrap-table-export.min.js
│ │ │ │ └── print
│ │ │ │ │ ├── bootstrap-table-print.js
│ │ │ │ │ └── bootstrap-table-print.min.js
│ │ │ ├── socket.io.js
│ │ │ ├── vpk3dCluster.js
│ │ │ ├── vpk3dCommon.js
│ │ │ ├── vpk3dData.js
│ │ │ ├── vpk3dFilter.js
│ │ │ ├── vpk3dTimeLapse.js
│ │ │ ├── vpkCommon.js
│ │ │ ├── vpkEdit.js
│ │ │ ├── vpkGetDefs.js
│ │ │ ├── vpkGraphvizManager.js
│ │ │ ├── vpkIconImage.js
│ │ │ ├── vpkLoadSnapshot.js
│ │ │ ├── vpkMain.js
│ │ │ ├── vpkModalHandlers.js
│ │ │ ├── vpkPrintDiv.js
│ │ │ ├── vpkSelectLists.js
│ │ │ ├── vpkTabCluster.js
│ │ │ ├── vpkTabClusterRpt.js
│ │ │ ├── vpkTabContainerImages.js
│ │ │ ├── vpkTabEvtMsgs.js
│ │ │ ├── vpkTabNetwork.js
│ │ │ ├── vpkTabOwnerRef.js
│ │ │ ├── vpkTabSchematics.js
│ │ │ ├── vpkTabSearch.js
│ │ │ ├── vpkTabSecurity.js
│ │ │ ├── vpkTabStats.js
│ │ │ ├── vpkTabStorage.js
│ │ │ ├── vpkTipsInfo.js
│ │ │ ├── vpkTopScreen.js
│ │ │ └── vpkUsage.js
│ │ ├── routes
│ │ │ └── index.js
│ │ ├── sounds
│ │ │ ├── GunShot.wav
│ │ │ └── LowDing.wav
│ │ ├── stylesheets
│ │ │ ├── all.min.css
│ │ │ ├── all.min.orig.css
│ │ │ ├── bootstrap-select.css
│ │ │ ├── bootstrap-table.min.css
│ │ │ ├── bootstrap-toggle.min.css
│ │ │ ├── bootstrap.min.css
│ │ │ ├── bootstrap.min.new.css
│ │ │ ├── select2.min.4.1.0.css
│ │ │ ├── vpk.css
│ │ │ ├── vpk.orig.css
│ │ │ └── vpk3D.css
│ │ ├── textures
│ │ │ ├── clouds_nx.jpg
│ │ │ ├── clouds_ny.jpg
│ │ │ ├── clouds_nz.jpg
│ │ │ ├── clouds_px.jpg
│ │ │ ├── clouds_py.jpg
│ │ │ ├── clouds_pz.jpg
│ │ │ ├── stars_nx.jpg
│ │ │ ├── stars_ny.jpg
│ │ │ ├── stars_nz.jpg
│ │ │ ├── stars_px.jpg
│ │ │ ├── stars_py.jpg
│ │ │ └── stars_pz.jpg
│ │ ├── views
│ │ │ ├── index.ejs
│ │ │ └── partials
│ │ │ │ ├── README.md
│ │ │ │ ├── banner.ejs
│ │ │ │ ├── head.ejs
│ │ │ │ ├── modal-about.ejs
│ │ │ │ ├── modal-chgDir.ejs
│ │ │ │ ├── modal-closeVpk.ejs
│ │ │ │ ├── modal-cluster.ejs
│ │ │ │ ├── modal-clusterLegend.ejs
│ │ │ │ ├── modal-command.ejs
│ │ │ │ ├── modal-config.ejs
│ │ │ │ ├── modal-decode.ejs
│ │ │ │ ├── modal-docs.ejs
│ │ │ │ ├── modal-editor.ejs
│ │ │ │ ├── modal-evtMsgs.ejs
│ │ │ │ ├── modal-explain.ejs
│ │ │ │ ├── modal-imagesLegend.ejs
│ │ │ │ ├── modal-message.ejs
│ │ │ │ ├── modal-multi.ejs
│ │ │ │ ├── modal-networkFilter.ejs
│ │ │ │ ├── modal-networkInfo.ejs
│ │ │ │ ├── modal-ownerRefFilter.ejs
│ │ │ │ ├── modal-schem.ejs
│ │ │ │ ├── modal-schematicFilter.ejs
│ │ │ │ ├── modal-search.ejs
│ │ │ │ ├── modal-secInfo.ejs
│ │ │ │ ├── modal-securityFilter.ejs
│ │ │ │ ├── modal-securityLegend.ejs
│ │ │ │ ├── modal-splashVpk.ejs
│ │ │ │ ├── modal-timeLapse.ejs
│ │ │ │ ├── modal-yaml.ejs
│ │ │ │ ├── modal-yes-no.ejs
│ │ │ │ ├── scripts.ejs
│ │ │ │ ├── tab-cluster.ejs
│ │ │ │ ├── tab-containerImages.ejs
│ │ │ │ ├── tab-eventMsgs.ejs
│ │ │ │ ├── tab-instructions.ejs
│ │ │ │ ├── tab-network.ejs
│ │ │ │ ├── tab-ownerRef.ejs
│ │ │ │ ├── tab-schematic.ejs
│ │ │ │ ├── tab-search.ejs
│ │ │ │ ├── tab-security.ejs
│ │ │ │ ├── tab-stats.ejs
│ │ │ │ ├── tab-storage.ejs
│ │ │ │ ├── tab-tabs.ejs
│ │ │ │ ├── tab-views.ejs
│ │ │ │ └── tooltip.ejs
│ │ └── webfonts
│ │ │ ├── fa-brands-400.eot
│ │ │ ├── fa-brands-400.svg
│ │ │ ├── fa-brands-400.ttf
│ │ │ ├── fa-brands-400.woff
│ │ │ ├── fa-brands-400.woff2
│ │ │ ├── fa-regular-400.eot
│ │ │ ├── fa-regular-400.svg
│ │ │ ├── fa-regular-400.ttf
│ │ │ ├── fa-regular-400.woff
│ │ │ ├── fa-regular-400.woff2
│ │ │ ├── fa-solid-900.eot
│ │ │ ├── fa-solid-900.svg
│ │ │ ├── fa-solid-900.ttf
│ │ │ ├── fa-solid-900.woff
│ │ │ └── fa-solid-900.woff2
│ └── server.ts
├── snapshot
│ ├── checkForOldData.ts
│ ├── getSnapshot.ts
│ ├── processDir.ts
│ ├── reloadSnapshot.ts
│ ├── removeOldFiles.ts
│ ├── returnData.ts
│ ├── saveK8sData.ts
│ ├── saveStatMsg.ts
│ └── stats.ts
├── splash
│ └── splash.ts
└── utils
│ ├── calcsize.ts
│ ├── checkdefinednamespace.ts
│ ├── checkkind.ts
│ ├── checklabel.ts
│ ├── checktype.ts
│ ├── chgp2.ts
│ ├── cidnamelookup.ts
│ ├── containerlink.ts
│ ├── countresources.ts
│ ├── formatbytes.ts
│ ├── getptime.ts
│ ├── index.ts
│ ├── logging.ts
│ ├── redactsecret.ts
│ ├── resetvpkobject.ts
│ ├── showprops.ts
│ ├── showtimedif.ts
│ ├── sortjsonbykeys.ts
│ ├── spacecalc.ts
│ └── timediff.ts
├── tsconfig.json
└── vpkconfig.json
/.gitignore:
--------------------------------------------------------------------------------
1 | #==== Directories and Files to exclude ====
2 |
3 | # VpK created runtime directories
4 | cluster/*
5 | usage/*
6 |
7 | #Developer files
8 | testing/*
9 | changes.txt
10 | githubInfo.txt
11 |
12 | # Node packages and other libs
13 | node_modules/*
14 |
15 | # Optional npm cache directory
16 | .npm
17 |
18 | # Optional REPL history
19 | .node_repl_history
20 |
21 | # VSCode
22 | .vscode/*
23 |
24 | # eslint
25 | .eslintrc.js
26 |
27 | # Logs
28 | logs
29 | *.log
30 | npm-debug.log*
31 |
32 | # node package
33 | package-lock.json
34 |
35 | # DS_Store
36 | .DS_Store
37 | public/.DS_Store
38 | public/docs/.DS_Store
39 | public/docs/docimages/.DS_Store
40 | public/images/.DS_Store
41 | results*
42 |
43 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | Copyright (c) 2018-2025 Dave Weilert
2 |
3 | Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
4 |
5 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
6 |
7 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
--------------------------------------------------------------------------------
/dist/afterParse/buildAdditionalServerData.js:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------------
2 | // common routines
3 | //-----------------------------------------------------------------------------
4 | 'use strict';
5 | import { schematicParse } from '../schematic/data/schematicParse.js';
6 | import { schematicHtml } from '../schematic/html/schematicHtml.js';
7 | import { buildStorage } from '../lib/buildStorage.js';
8 | import { logMessage } from '../utils/logging.js';
9 | export function buildAdditionalServerData(client) {
10 | try {
11 | logMessage('AFT005 - Building schematic information ');
12 | schematicParse();
13 | schematicHtml();
14 | buildStorage();
15 | client.emit('getKStatus', { msg: 'Building schematic information, press "Close" button.' });
16 | }
17 | catch (err) {
18 | logMessage('AFT006 - Error processing schematic, message: ' + err);
19 | logMessage('AFT006 - Stack: ' + err.stack);
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/dist/afterParse/clusterSummary.js:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------------
2 | // common routines
3 | //-----------------------------------------------------------------------------
4 | 'use strict';
5 | import vpk from '../lib/vpk.js';
6 | export function clusterSummary() {
7 | vpk.clusterSummary = {};
8 | vpk.clusterSummary['hogs'] = vpk.hogs;
9 | vpk.clusterSummary['nodes'] = vpk.nodesFnum;
10 | vpk.clusterSummary['stats'] = vpk.stats;
11 | vpk.clusterSummary['csiNode'] = vpk.csiNodeFnum;
12 | vpk.clusterSummary['csiDriver'] = vpk.csiDriverName;
13 | }
14 |
--------------------------------------------------------------------------------
/dist/afterParse/flipRepoFirst.js:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------------
2 | // Flip the data to the fnum of the key and the repository for the data
3 | //-----------------------------------------------------------------------------
4 | 'use strict';
5 | import vpk from '../lib/vpk.js';
6 | import { logMessage } from '../utils/logging.js';
7 | export function flipRepoFirst() {
8 | try {
9 | let keys = Object.keys(vpk.imageRepositoryFirst);
10 | let newD = {};
11 | for (let i = 0; i < keys.length; i++) {
12 | if (typeof newD[vpk.imageRepositoryFirst[keys[i]]] === 'undefined') {
13 | newD[vpk.imageRepositoryFirst[keys[i]]] = [];
14 | }
15 | newD[vpk.imageRepositoryFirst[keys[i]]].push(keys[i]);
16 | }
17 | vpk.imageRepositoryFirst = newD;
18 | }
19 | catch (err) {
20 | logMessage('AFT267 - Error processing flipRepoFirst, message: ' + err);
21 | logMessage('AFT267 - Stack: ' + err.stack);
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/dist/afterParse/ripIPs.js:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------------
2 | // ???
3 | //-----------------------------------------------------------------------------
4 | 'use strict';
5 | export function ripIPS(data) {
6 | let ipArray = {};
7 | let base;
8 | for (let i = 0; i < data.length; i++) {
9 | base = data[i].substring(0, data[i].lastIndexOf('.'));
10 | if (typeof ipArray[base] === 'undefined') {
11 | ipArray[base] = 1;
12 | }
13 | else {
14 | ipArray[base] = ipArray[base] + 1;
15 | }
16 | }
17 | return ipArray;
18 | }
19 |
--------------------------------------------------------------------------------
/dist/afterParse/sortByKey.js:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------------
2 | // Generic sorting function//-----------------------------------------------------------------------------
3 | 'use strict';
4 | export function sortByKey(array, sortKey) {
5 | return array.sort((a, b) => {
6 | if (a[sortKey] < b[sortKey]) {
7 | return -1;
8 | }
9 | else if (a[sortKey] > b[sortKey]) {
10 | return 1;
11 | }
12 | else {
13 | return 0;
14 | }
15 | });
16 | }
17 |
--------------------------------------------------------------------------------
/dist/filehandler/dirdate.js:
--------------------------------------------------------------------------------
1 | //------------------------------------------------------------------------------
2 | // build date and time string
3 | //------------------------------------------------------------------------------
4 | export function dirDate() {
5 | var dStr = new Date().toISOString();
6 | var fp;
7 | fp = dStr.indexOf('T');
8 | if (fp > -1) {
9 | dStr = dStr.substring(0, fp) + '-' + dStr.substring(fp + 1);
10 | }
11 | fp = dStr.indexOf(':');
12 | if (fp > -1) {
13 | dStr = dStr.substring(0, fp) + 'h-' + dStr.substring(fp + 1);
14 | }
15 | fp = dStr.indexOf(':');
16 | if (fp > -1) {
17 | dStr = dStr.substring(0, fp) + 'm-' + dStr.substring(fp + 1);
18 | }
19 | fp = dStr.indexOf('.');
20 | if (fp > -1) {
21 | dStr = dStr.substring(0, fp) + 's';
22 | }
23 | return dStr;
24 | }
25 |
--------------------------------------------------------------------------------
/dist/filehandler/formatdir.js:
--------------------------------------------------------------------------------
1 | //------------------------------------------------------------------------------
2 | // format byte amount appending alpha category
3 | //------------------------------------------------------------------------------
4 | export function formatDir(dir) {
5 | let os = process.platform;
6 | let nd = '';
7 | let c = '';
8 | if (os.startsWith('win')) {
9 | for (let i = 0; i < dir.length; i++) {
10 | c = dir.substring(i, i);
11 | if (c === '/') {
12 | nd = nd + '\\';
13 | }
14 | else {
15 | nd = nd + c;
16 | }
17 | }
18 | }
19 | else {
20 | for (let i = 0; i < dir.length; i++) {
21 | c = dir.substring(i, i + 1);
22 | if (c === '\\') {
23 | nd = nd + '/';
24 | }
25 | else {
26 | nd = nd + c;
27 | }
28 | }
29 | }
30 | return nd;
31 | }
32 |
--------------------------------------------------------------------------------
/dist/filehandler/makedir.js:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------------
2 | // create a directory
3 | //-----------------------------------------------------------------------------
4 | import { logMessage } from '../utils/logging.js';
5 | import fs from 'node:fs';
6 | export function makedir(dir) {
7 | try {
8 | if (!fs.existsSync(dir)) {
9 | fs.mkdirSync(dir);
10 | logMessage(`FHL158 - Created directory: ${dir}`);
11 | }
12 | else {
13 | logMessage(`FHL159 - Directory: ${dir} exists`);
14 | }
15 | return 'PASS';
16 | }
17 | catch (e) {
18 | logMessage(`FHL160 - Failed to create directory: ${dir} error message: ${e}`);
19 | return 'FAIL';
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/dist/filehandler/readlicensefile.js:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------------
2 | // read the license file and put content in memory var
3 | //-----------------------------------------------------------------------------
4 | import vpk from '../lib/vpk.js';
5 | import { logMessage } from '../utils/logging.js';
6 | import fs from 'node:fs';
7 | export function readLicenseFile() {
8 | let base = process.cwd();
9 | let fn = base + '/LICENSE';
10 | let found = false;
11 | try {
12 | if (fs.existsSync(fn)) {
13 | found = true;
14 | }
15 | if (found) {
16 | let content = fs.readFileSync(fn);
17 | content = content.toString();
18 | vpk.LICENSE = content;
19 | return;
20 | }
21 | else {
22 | vpk.LICENSE = 'Open source software, MIT license';
23 | }
24 | }
25 | catch (err) {
26 | logMessage(`FHL834 - Failed to read LICENSE file, message: ${err}`);
27 | return 'Open source software, MIT license';
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/dist/filehandler/remdir.js:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------------
2 | // remove a directory
3 | //-----------------------------------------------------------------------------
4 | import { logMessage } from '../utils/logging.js';
5 | import fs from 'node:fs';
6 | export function remdir(dir) {
7 | try {
8 | // remove the directory if it already exists;
9 | if (fs.existsSync(dir)) {
10 | fs.unlinkSync(dir);
11 | }
12 | // create the directory
13 | fs.mkdirSync(dir);
14 | logMessage(`FHL164 - Creating directory: ${dir}`);
15 | }
16 | catch (err) {
17 | logMessage(`FHL155 - Unable to create snapshot directory: ${dir} error message: ${err}`);
18 | logMessage(`FHL155 - ${err.stack}`);
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/dist/fileio/buildIndexes.js:
--------------------------------------------------------------------------------
1 | //------------------------------------------------------------------------------
2 | // create index entries in the global vpk
3 | //------------------------------------------------------------------------------
4 | 'use strict';
5 | import vpk from '../lib/vpk.js';
6 | export function buildIndexes(fnum, kind, ns, name) {
7 | //console.log(typeof (fnum))
8 | vpk.idxFnum[fnum] = { ns: ns, kind: kind, name: name };
9 | if (typeof vpk.idxKind[kind] === 'undefined') {
10 | vpk.idxKind[kind] = [];
11 | }
12 | vpk.idxKind[kind].push(fnum);
13 | if (typeof vpk.idxNS[ns] === 'undefined') {
14 | vpk.idxNS[ns] = [];
15 | }
16 | vpk.idxNS[ns].push(fnum);
17 | if (typeof vpk.idxName[name] === 'undefined') {
18 | vpk.idxName[name] = [];
19 | }
20 | vpk.idxName[name].push(fnum);
21 | if (typeof vpk.idxFullName[ns + '.' + kind + '.' + name] === 'undefined') {
22 | vpk.idxFullName[ns + '.' + kind + '.' + name] = [];
23 | }
24 | vpk.idxFullName[ns + '.' + kind + '.' + name].push(fnum);
25 | }
26 |
--------------------------------------------------------------------------------
/dist/fileio/processContainer.js:
--------------------------------------------------------------------------------
1 | // workload processing logic
2 | //------------------------------------------------------------------------------
3 | // create index entries in the global vpk
4 | //------------------------------------------------------------------------------
5 | 'use strict';
6 | import vpk from '../lib/vpk.js';
7 | import { workloadParser } from '../parsers/workloads/parse.js';
8 | export function processContainer(y_ns, y_kind, y_name, fn, part, y_node, fnum, oRef, cStatus, statusPhase) {
9 | workloadParser(y_ns, y_kind, y_name, vpk.yaml, fnum, y_node, fn, oRef, cStatus, statusPhase);
10 | }
11 |
--------------------------------------------------------------------------------
/dist/help/buildDocs.js:
--------------------------------------------------------------------------------
1 | // src/documentation/buildDocs.ts
2 | import vpk from '../lib/vpk.js';
3 | import { logMessage } from '../utils/logging.js';
4 | import { processFiles } from './fileProcessor.js';
5 | //import * as fs from 'fs';
6 | import fs from 'node:fs';
7 | const cwd = process.cwd();
8 | let docPath;
9 | /**
10 | * Initiates the documentation build process.
11 | */
12 | export function buildDocumentation() {
13 | vpk.documentation = {};
14 | const files = readDocsDirectory();
15 | if (files !== '') {
16 | processFiles(files);
17 | }
18 | }
19 | /**
20 | * Reads the documentation directory and returns a list of files.
21 | */
22 | function readDocsDirectory() {
23 | try {
24 | docPath = `${cwd}/dist/server/public/docs`;
25 | return fs.readdirSync(docPath);
26 | }
27 | catch (err) {
28 | logMessage(`DOC011 - Error getting file names in the documentation directory ${docPath}, message: ${err}`);
29 | return [];
30 | }
31 | }
32 | export { docPath };
33 |
--------------------------------------------------------------------------------
/dist/help/helpers.js:
--------------------------------------------------------------------------------
1 | // src/documentation/helpers.ts
2 | import vpk from '../lib/vpk.js';
3 | let docCnt = 1000;
4 | /**
5 | * Formats the image path line to ensure it points to the correct directory.
6 | * @param line The markdown line containing an image.
7 | */
8 | export function formatImagePath(line) {
9 | // Add your specific image path formatting logic here
10 | return line;
11 | }
12 | /**
13 | * Formats the topic key line and generates a unique topic key.
14 | * @param line The line containing the topic key.
15 | */
16 | export function formatTopicKey(line) {
17 | let rtn = '';
18 | const parts = line.split(' ');
19 | if (parts.length > 1 && parts[1] !== null && parts[1] !== 'undefined') {
20 | rtn = parts[1].substring(0, parts[1].length - 2);
21 | if (typeof vpk.documentation[rtn] !== 'undefined') {
22 | docCnt++;
23 | rtn = `${rtn}:${docCnt}`;
24 | }
25 | }
26 | else {
27 | docCnt++;
28 | rtn = `topic:${docCnt}`;
29 | }
30 | return rtn;
31 | }
32 |
--------------------------------------------------------------------------------
/dist/kube/driver.js:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------------
2 | // Get the K8s resource type and emit message after processing
3 | //-----------------------------------------------------------------------------
4 | 'use strict';
5 | import { getSnapshot } from '../snapshot/getSnapshot.js';
6 | export async function driver(data, kga, client, dynDir) {
7 | await getSnapshot(data, kga, client, dynDir);
8 | }
9 |
--------------------------------------------------------------------------------
/dist/kube/kubeversion.js:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------------
2 | // Issue command to get the cluster version
3 | //-----------------------------------------------------------------------------
4 | 'use strict';
5 | import { logMessage } from '../utils/logging.js';
6 | import { execSync } from 'child_process';
7 | export function kubeversion(glbGet, glbSSH) {
8 | try {
9 | let cmd = '';
10 | const getParts = glbGet.split(' ');
11 | cmd = getParts.length > 1 ? getParts[0] + ' version -o json' : glbGet + ' version -o json';
12 | logMessage('KUB052 - ' + cmd);
13 | if (glbSSH !== '') {
14 | cmd = glbSSH + "'" + cmd + "'";
15 | logMessage('KUB054 - Command modified to use SSH to call Host machine');
16 | }
17 | const out = execSync(cmd).toString();
18 | return JSON.parse(out);
19 | }
20 | catch (err) {
21 | logMessage('KUB053 - Error getting version information. message: ' + err);
22 | return { items: [], error: err };
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/dist/kube/runCommand.js:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------------
2 | // Issue command from UI
3 | //-----------------------------------------------------------------------------
4 | 'use strict';
5 | import { execSync } from 'child_process';
6 | import { logMessage } from '../utils/logging.js';
7 | export function runCommand(cmd) {
8 | try {
9 | logMessage('KUB101 - Command to run: ' + cmd);
10 | const out = execSync(cmd).toString();
11 | const result = out.length > 0 ? out.split('\n') : ['OK'];
12 | return { output: result, status: 'pass' };
13 | }
14 | catch (err) {
15 | logMessage('KUB102 - Error from command, message: ' + err);
16 | const errorMsg = typeof err.message !== 'undefined' ? [err.message] : ['Command failed to run properly'];
17 | return { output: errorMsg, status: 'fail' };
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/dist/lib/buildStorage.js:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------------
2 | // ??
3 | //-----------------------------------------------------------------------------
4 | import vpk from './vpk.js';
5 | import { logMessage } from '../utils/logging.js';
6 | export function buildStorage() {
7 | vpk.storageInfo = {};
8 | try {
9 | vpk.storageInfo.StorageClass = vpk.storageClassName;
10 | vpk.storageInfo.PVinfo = vpk.pvFnum;
11 | vpk.storageInfo.PVCinfo = vpk.pvcFnum;
12 | vpk.storageInfo.CSIDriver = vpk.csiDriverName;
13 | vpk.storageInfo.CSINode = vpk.csiNodeFnum;
14 | vpk.storageInfo.SpaceReqSC = vpk.spaceReqSC;
15 | vpk.storageInfo.SpaceReqPVC = vpk.spaceReqPVC;
16 | return;
17 | }
18 | catch (err) {
19 | logMessage('STO001 - Error building storageInfo, message: ' + err);
20 | logMessage('STO001 - Stack: ' + err.stack);
21 | return '';
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/dist/lib/vpkSpan.js:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------------
2 | // VPK objects that are not reset when new snapshot is loaded.
3 | // These data varaibles need to 'span' the reset.
4 | //-----------------------------------------------------------------------------
5 | let vpkSpan = {
6 | readyz: {},
7 | do_not_delete: 'do not delete',
8 | };
9 | export default vpkSpan;
10 |
--------------------------------------------------------------------------------
/dist/parsers/workloads/saveImageInfo.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Extracts volume information from the workload and updates relevant data structures.
3 | * @param c_name Container name
4 | * @param c_image Container image name
5 | * @param ctyoe Container type
6 | * @param fnum File number identifier
7 | */
8 | import vpk from '../../lib/vpk.js';
9 | export function saveImageInfo(c_name, c_image, ctype, fnum) {
10 | // save image data
11 | vpk.pods[fnum].containerNames.push({
12 | c_name: c_name,
13 | c_image: c_image,
14 | });
15 | // Update container type counts
16 | if (ctype === 'I') {
17 | vpk.pods[fnum].typeIcnt = vpk.pods[fnum].typeIcnt + 1;
18 | }
19 | else {
20 | vpk.pods[fnum].typeCcnt = vpk.pods[fnum].typeCcnt + 1;
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/dist/parsers/workloads/savePorts.js:
--------------------------------------------------------------------------------
1 | import vpk from '../../lib/vpk.js';
2 | import { containerLink } from '../../utils/containerlink.js';
3 | export function savePorts(obj, e, fnum) {
4 | if (typeof obj[e].ports === 'undefined') {
5 | return;
6 | }
7 | for (let p = 0; p < obj[e].ports.length; p++) {
8 | if (typeof obj[e].ports[p].containerPort !== 'undefined') {
9 | containerLink(fnum, 'Ports', obj[e].ports[p].containerPort, '', obj[e].ports[p]);
10 | vpk.pods[fnum].ports.push(obj[e].ports[p].containerPort);
11 | }
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/dist/schematic/data/checkEvents.js:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------------
2 | // ???
3 | //-----------------------------------------------------------------------------
4 | import vpk from '../../lib/vpk.js';
5 | export function checkEvents(container) {
6 | let key = container.kind + '.' + container.namespace + '.' + container.name;
7 | let events = [];
8 | let hl = vpk.eventMessage.length;
9 | for (let e = 0; e < hl; e++) {
10 | if (vpk.eventMessage[e].key === key) {
11 | events.push(vpk.eventMessage[e]);
12 | vpk.eventMessage[e].used = true;
13 | continue;
14 | }
15 | if (vpk.eventMessage[e].involvedName === container.name) {
16 | events.push(vpk.eventMessage[e]);
17 | vpk.eventMessage[e].used = true;
18 | continue;
19 | }
20 | }
21 | container.Events = events;
22 | }
23 |
--------------------------------------------------------------------------------
/dist/schematic/data/checkUsage.js:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------------
2 | // ???
3 | //-----------------------------------------------------------------------------
4 | import { namespaceLevel } from './namespaceLevel.js';
5 | import { clusterLevel } from './clusterLevel.js';
6 | export function checkUsage(data, fnum) {
7 | if (data.kind === 'RoleBinding' || data.kind === 'Role') {
8 | return;
9 | }
10 | if (typeof data.namespace === 'undefined') {
11 | data.namespace = 'cluster-level';
12 | }
13 | if (data.namespace === '' || data.namespace === 'cluster-level') {
14 | clusterLevel(data, data.kind, fnum);
15 | }
16 | else {
17 | namespaceLevel(data, data.kind, fnum);
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/dist/schematic/data/populateBaseContainer.js:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------------
2 | // ???
3 | //-----------------------------------------------------------------------------
4 | import vpk from '../../lib/vpk.js';
5 | import { logMessage } from '../../utils/logging.js';
6 | import { populateContainer } from './populateContainer.js';
7 | import { checkUsage } from './checkUsage.js';
8 | export function populateBaseContainer(data) {
9 | let e;
10 | let fnum;
11 | try {
12 | for (e = 0; e < data.length; e++) {
13 | fnum = data[e].fnum;
14 | checkUsage(data[e], fnum);
15 | if (typeof vpk.pods[fnum] !== 'undefined') {
16 | populateContainer(vpk.pods[fnum], fnum);
17 | }
18 | }
19 | }
20 | catch (err) {
21 | logMessage('SCM001 - Error processing schematic, fnum: ' + fnum + ' message: ' + err);
22 | logMessage('SCM101 - Stack: ' + err.stack);
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/dist/schematic/data/populateContainer.js:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------------
2 | // ???
3 | //-----------------------------------------------------------------------------
4 | import { checkEvents } from './checkEvents.js';
5 | import { checkType } from './checkType.js';
6 | export function populateContainer(container, fnum) {
7 | container = checkType(container, 'Secret', fnum);
8 | container = checkType(container, 'ConfigMap', fnum);
9 | container = checkType(container, 'PersistentVolumeClaim', fnum);
10 | container = checkType(container, 'ServiceAccount', fnum);
11 | container = checkEvents(container);
12 | }
13 |
--------------------------------------------------------------------------------
/dist/schematic/data/populateDaemonSetPods.js:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------------
2 | // ???
3 | //-----------------------------------------------------------------------------
4 | import vpk from '../../lib/vpk.js';
5 | export function populateDaemonSetPods() {
6 | let keys = Object.keys(vpk.pods);
7 | let key;
8 | for (let k = 0; k < keys.length; k++) {
9 | key = keys[k];
10 | if (!key.startsWith('0000')) {
11 | if (vpk.daemonSetPods.includes(key)) {
12 | vpk.pods[key].daemonSetPod = true;
13 | }
14 | else {
15 | vpk.pods[key].daemonSetPod = false;
16 | }
17 | }
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/dist/schematic/data/populateNetwork.js:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------------
2 | // ???
3 | //-----------------------------------------------------------------------------
4 | import { logMessage } from '../../utils/logging.js';
5 | import { populateEndpoints } from './populateEndpoints.js';
6 | import { populateEndpointSlice } from './populateEndpointSlice.js';
7 | export function populateNetwork() {
8 | try {
9 | populateEndpoints();
10 | populateEndpointSlice();
11 | }
12 | catch (err) {
13 | logMessage('SCM005 - Error processing schematic, message: ' + err);
14 | logMessage('SCM105 - Stack: ' + err.stack);
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/dist/schematic/data/populatePodsToShow.js:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------------
2 | // ???
3 | //-----------------------------------------------------------------------------
4 | import vpk from '../../lib/vpk.js';
5 | import { logMessage } from '../../utils/logging.js';
6 | export function populatePodsToShow(podNS) {
7 | let ns;
8 | let key;
9 | try {
10 | for (let i = 0; i < podNS.length; i++) {
11 | ns = podNS[i];
12 | key = '0000-' + ns;
13 | if (typeof vpk.pods[key].Pods === 'undefined') {
14 | vpk.pods[key].Pods = true;
15 | }
16 | }
17 | podNS = null;
18 | }
19 | catch (err) {
20 | logMessage('SCM830 - Error building container Pods flag, message: ' + err);
21 | logMessage(err.stack);
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/dist/schematic/data/schematicParse.js:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------------
2 | // ???
3 | //-----------------------------------------------------------------------------
4 | import { logMessage } from '../../utils/logging.js';
5 | import { showTimeDiff } from '../../utils/showtimedif.js';
6 | import { getPTime } from '../../utils/getptime.js';
7 | import { parseSchematic } from './parseSchematic.js';
8 | export function schematicParse() {
9 | let startT = getPTime();
10 | logMessage('SCM001 - svgSchematic invoked');
11 | parseSchematic();
12 | let stopT = getPTime();
13 | showTimeDiff(startT, stopT, 'svgSchematic.parseSchematic()');
14 | return;
15 | }
16 |
--------------------------------------------------------------------------------
/dist/schematic/html/buildSvgInfo.js:
--------------------------------------------------------------------------------
1 | import vpk from '../../lib/vpk.js';
2 | import { buildTipContent } from './buildTipContent.js';
3 | export function buildSvgInfo(data, fnum, type) {
4 | let id = fnum + '.' + type;
5 | let tName = type;
6 | if (typeof vpk.svgInfo[id] === 'undefined') {
7 | vpk.svgInfo[id] = [];
8 | }
9 | let content = buildTipContent(data, type, fnum);
10 | if (type === 'Phase') {
11 | tName = 'Pod Phase / IPs';
12 | }
13 | if (type === 'CRD') {
14 | tName = 'CustomResourceDefinition';
15 | }
16 | // check if an entry already exists, if so skip
17 | if (typeof vpk.svgInfo[id][0] === 'undefined') {
18 | vpk.svgInfo[id].push('' +
19 | tName +
20 | '
' +
21 | content +
22 | '');
23 | }
24 | return id;
25 | }
26 |
--------------------------------------------------------------------------------
/dist/schematic/html/formatDate.js:
--------------------------------------------------------------------------------
1 | export function formatDate(data) {
2 | if (typeof data === 'undefined' || data === null) {
3 | return 'Unknown date';
4 | }
5 | let mydate = new Date(data);
6 | let fDate = mydate.toDateString();
7 | let tPart = data.split('T');
8 | if (typeof tPart[1] !== 'undefined') {
9 | fDate = fDate + ' ' + tPart[1];
10 | if (fDate.endsWith('Z')) {
11 | fDate = fDate.substring(0, fDate.length - 1) + ' GMT';
12 | }
13 | }
14 | return fDate;
15 | }
16 |
--------------------------------------------------------------------------------
/dist/schematic/html/formatJSON.js:
--------------------------------------------------------------------------------
1 | export function formatJSON(content) {
2 | let cData = JSON.stringify(content, null, 2);
3 | cData = cData.split('\n');
4 | let nLine = '';
5 | let rtn = '';
6 | let pttrn = /^\s*/;
7 | let spc = 0;
8 | for (let i = 0; i < cData.length; i++) {
9 | nLine = '';
10 | spc = cData[i].match(pttrn)[0].length;
11 | if (spc > 0) {
12 | for (let s = 0; s < spc; s++) {
13 | nLine = nLine + ' ';
14 | }
15 | }
16 | rtn = rtn + nLine + cData[i].substring(spc) + '
';
17 | }
18 | return rtn;
19 | }
20 |
--------------------------------------------------------------------------------
/dist/schematic/html/getRequestedData.js:
--------------------------------------------------------------------------------
1 | import vpk from '../../lib/vpk.js';
2 | export function getRequestedData(ns) {
3 | if (ns === ':all-namespaces:') {
4 | return vpk.schematicSVGs;
5 | }
6 | let keys = ns.split(':');
7 | let rtn = {};
8 | for (let i = 0; i < keys.length; i++) {
9 | if (keys[i] === '') {
10 | continue;
11 | }
12 | rtn[keys[i]] = vpk.schematicSVGs[keys[i]];
13 | }
14 | return rtn;
15 | }
16 |
--------------------------------------------------------------------------------
/dist/search/buildReturn.js:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------------
2 | // ??
3 | //-----------------------------------------------------------------------------
4 | import { logMessage } from '../utils/logging.js';
5 | export function buildReturn(fnumBase) {
6 | try {
7 | let keys = Object.keys(fnumBase);
8 | let key;
9 | let rtn = [];
10 | let item;
11 | let fn;
12 | for (let i = 0; i < keys.length; i++) {
13 | key = keys[i];
14 | fn = fnumBase[key];
15 | item = {
16 | namespace: fn.ns,
17 | kind: fn.kind,
18 | name: fn.name,
19 | fnum: key,
20 | };
21 | rtn.push(item);
22 | }
23 | return rtn;
24 | }
25 | catch (err) {
26 | logMessage('SCH005 - Error processing, message: ' + err);
27 | logMessage('SCH005 - Stack: ' + err.stack);
28 | return [];
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/dist/search/processSelected.js:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------------
2 | // ??
3 | //-----------------------------------------------------------------------------
4 | export function processSelected(keep, fnumBase) {
5 | let keys = Object.keys(fnumBase);
6 | let key;
7 | for (let i = 0; i < keys.length; i++) {
8 | key = keys[i];
9 | if (keep.includes(key)) {
10 | continue;
11 | }
12 | else {
13 | delete fnumBase[key];
14 | }
15 | }
16 | return;
17 | }
18 |
--------------------------------------------------------------------------------
/dist/search/reduceKV.js:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------------
2 | // ??
3 | //-----------------------------------------------------------------------------
4 | export function reduceKV(keys, values) {
5 | let rtn = [];
6 | let key;
7 | for (key of keys) {
8 | if (values.includes(key)) {
9 | rtn.push(key);
10 | }
11 | }
12 | return rtn;
13 | }
14 |
--------------------------------------------------------------------------------
/dist/security/buildResourceHierarchy.js:
--------------------------------------------------------------------------------
1 | //------------------------------------------------------------------------------
2 | // common routines
3 | //------------------------------------------------------------------------------
4 | import { createResourceHierarchy } from './createResourceHierarchy.js';
5 | export function buildResourceHierarchy() {
6 | return createResourceHierarchy();
7 | }
8 |
--------------------------------------------------------------------------------
/dist/security/buildsubjectHierarchy.js:
--------------------------------------------------------------------------------
1 | //------------------------------------------------------------------------------
2 | // common routines
3 | //------------------------------------------------------------------------------
4 | import { createSubjectHierarchy } from './createSubjectHierarchy.js';
5 | export function buildSubjectHierarchy() {
6 | return createSubjectHierarchy();
7 | }
8 |
--------------------------------------------------------------------------------
/dist/security/getSecurityViewData.js:
--------------------------------------------------------------------------------
1 | //------------------------------------------------------------------------------
2 | // common routines
3 | //------------------------------------------------------------------------------
4 | import { filterViewData } from './filterViewData.js';
5 | export function getSecurityViewData(parms) {
6 | return filterViewData(parms);
7 | }
8 |
--------------------------------------------------------------------------------
/dist/server/public/ace/css/chrome-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/ace/css/chrome-1.png
--------------------------------------------------------------------------------
/dist/server/public/ace/css/chrome-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/ace/css/chrome-2.png
--------------------------------------------------------------------------------
/dist/server/public/ace/css/merbivore-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/ace/css/merbivore-1.png
--------------------------------------------------------------------------------
/dist/server/public/ace/css/merbivore-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/ace/css/merbivore-2.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/about.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/about.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/config.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/config.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/config_action.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/config_action.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/config_cluster.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/config_cluster.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/config_confirm.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/config_confirm.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/help_close_config.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/help_close_config.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/help_toc.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/help_toc.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/overview_container.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/overview_container.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/overview_local.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/overview_local.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/resource.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/resource.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/resource_dark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/resource_dark.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/resource_light.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/resource_light.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/snapshot_DropDown.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/snapshot_DropDown.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/snapshot_Name.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/snapshot_Name.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/snapshot_dropdown_container.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/snapshot_dropdown_container.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/snapshot_previous.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/snapshot_previous.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/snapshot_ssh_parms.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/snapshot_ssh_parms.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/splash_log.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/splash_log.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/splash_vpk_2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/splash_vpk_2.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/tab_cluster.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/tab_cluster.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/tab_cluster_drill_down1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/tab_cluster_drill_down1.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/tab_cluster_drill_down2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/tab_cluster_drill_down2.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/tab_cluster_drill_down3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/tab_cluster_drill_down3.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/tab_cluster_drill_down4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/tab_cluster_drill_down4.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/tab_cluster_legend.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/tab_cluster_legend.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/tab_cluster_report.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/tab_cluster_report.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/tab_cluster_timelapse.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/tab_cluster_timelapse.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/tab_cluster_timelapse_controls.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/tab_cluster_timelapse_controls.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/tab_cluster_timelapse_detail.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/tab_cluster_timelapse_detail.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/tab_container_images_graph.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/tab_container_images_graph.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/tab_container_images_legend.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/tab_container_images_legend.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/tab_container_images_table.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/tab_container_images_table.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/tab_event_msgs.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/tab_event_msgs.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/tab_event_msgs_action.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/tab_event_msgs_action.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/tab_event_msgs_graph.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/tab_event_msgs_graph.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/tab_event_msgs_table.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/tab_event_msgs_table.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/tab_event_msgs_timeline.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/tab_event_msgs_timeline.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/tab_network_filter.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/tab_network_filter.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/tab_network_nodes.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/tab_network_nodes.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/tab_network_nodes_detail.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/tab_network_nodes_detail.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/tab_network_nodes_detail2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/tab_network_nodes_detail2.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/tab_network_services.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/tab_network_services.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/tab_ownerref.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/tab_ownerref.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/tab_ownerref2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/tab_ownerref2.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/tab_ownerref_filter.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/tab_ownerref_filter.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/tab_ownerref_filter_results.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/tab_ownerref_filter_results.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/tab_search.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/tab_search.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/tab_search_table.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/tab_search_table.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/tab_security.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/tab_security.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/tab_security2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/tab_security2.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/tab_security_filter.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/tab_security_filter.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/tab_security_legend.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/tab_security_legend.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/tab_stats_reportView.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/tab_stats_reportView.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/tab_stats_treeMap.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/tab_stats_treeMap.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/tab_storage.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/tab_storage.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/tab_storage_by_namespace.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/tab_storage_by_namespace.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/tab_storage_by_node.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/tab_storage_by_node.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/tab_storage_by_type.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/tab_storage_by_type.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/tab_workloadschematics.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/tab_workloadschematics.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/tab_workloadschematics_decode.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/tab_workloadschematics_decode.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/tab_workloadschematics_filter.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/tab_workloadschematics_filter.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/tab_workloadschematics_namespace.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/tab_workloadschematics_namespace.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/tab_workloadschematics_resources.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/tab_workloadschematics_resources.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/tab_workloadschematics_rollover.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/tab_workloadschematics_rollover.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/tab_workloadschematics_source.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/tab_workloadschematics_source.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/ui_no_data.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/ui_no_data.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/ui_shutdown_complete.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/ui_shutdown_complete.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/ui_shutdown_confirm.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/ui_shutdown_confirm.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/ui_startup.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/ui_startup.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/ui_top.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/ui_top.png
--------------------------------------------------------------------------------
/dist/server/public/docs/docimages/vpk.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/docs/docimages/vpk.png
--------------------------------------------------------------------------------
/dist/server/public/images/3d/3d-3rdParty-Plane.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/images/3d/3d-3rdParty-Plane.png
--------------------------------------------------------------------------------
/dist/server/public/images/3d/3d-csi.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/images/3d/3d-csi.png
--------------------------------------------------------------------------------
/dist/server/public/images/3d/3d-docker-container-init.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/images/3d/3d-docker-container-init.png
--------------------------------------------------------------------------------
/dist/server/public/images/3d/3d-docker-container.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/images/3d/3d-docker-container.png
--------------------------------------------------------------------------------
/dist/server/public/images/3d/3d-docker-image.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/images/3d/3d-docker-image.png
--------------------------------------------------------------------------------
/dist/server/public/images/3d/3d-ep.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/images/3d/3d-ep.png
--------------------------------------------------------------------------------
/dist/server/public/images/3d/3d-ingress.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/images/3d/3d-ingress.png
--------------------------------------------------------------------------------
/dist/server/public/images/3d/3d-kubelet.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/images/3d/3d-kubelet.png
--------------------------------------------------------------------------------
/dist/server/public/images/3d/3d-mstNode.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/images/3d/3d-mstNode.png
--------------------------------------------------------------------------------
/dist/server/public/images/3d/3d-podBlue.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/images/3d/3d-podBlue.png
--------------------------------------------------------------------------------
/dist/server/public/images/3d/3d-podGreen.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/images/3d/3d-podGreen.png
--------------------------------------------------------------------------------
/dist/server/public/images/3d/3d-podGrey.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/images/3d/3d-podGrey.png
--------------------------------------------------------------------------------
/dist/server/public/images/3d/3d-podMagenta.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/images/3d/3d-podMagenta.png
--------------------------------------------------------------------------------
/dist/server/public/images/3d/3d-podRed.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/images/3d/3d-podRed.png
--------------------------------------------------------------------------------
/dist/server/public/images/3d/3d-podYellow.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/images/3d/3d-podYellow.png
--------------------------------------------------------------------------------
/dist/server/public/images/3d/3d-pv.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/images/3d/3d-pv.png
--------------------------------------------------------------------------------
/dist/server/public/images/3d/3d-pvc.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/images/3d/3d-pvc.png
--------------------------------------------------------------------------------
/dist/server/public/images/3d/3d-repository.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/images/3d/3d-repository.png
--------------------------------------------------------------------------------
/dist/server/public/images/3d/3d-sc.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/images/3d/3d-sc.png
--------------------------------------------------------------------------------
/dist/server/public/images/3d/3d-svc.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/images/3d/3d-svc.png
--------------------------------------------------------------------------------
/dist/server/public/images/3d/3d-volume.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/images/3d/3d-volume.png
--------------------------------------------------------------------------------
/dist/server/public/images/3d/3d-wrkNode.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/images/3d/3d-wrkNode.png
--------------------------------------------------------------------------------
/dist/server/public/images/clouds.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/images/clouds.jpg
--------------------------------------------------------------------------------
/dist/server/public/images/imagesLegendGraph.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/images/imagesLegendGraph.png
--------------------------------------------------------------------------------
/dist/server/public/images/imagesLegendTable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/images/imagesLegendTable.png
--------------------------------------------------------------------------------
/dist/server/public/images/loading.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/images/loading.gif
--------------------------------------------------------------------------------
/dist/server/public/images/other/ibmold.svg:
--------------------------------------------------------------------------------
1 |
9 |
--------------------------------------------------------------------------------
/dist/server/public/images/other/kong.svg:
--------------------------------------------------------------------------------
1 |
10 |
--------------------------------------------------------------------------------
/dist/server/public/images/other/launch-box.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/dist/server/public/images/other/ocp.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/dist/server/public/images/other/redhat.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/dist/server/public/images/other/uparrow.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/dist/server/public/images/other/vpk.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/images/other/vpk.png
--------------------------------------------------------------------------------
/dist/server/public/images/stars.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/images/stars.jpg
--------------------------------------------------------------------------------
/dist/server/public/images/vpk.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/images/vpk.png
--------------------------------------------------------------------------------
/dist/server/public/images/wow/pic-cluster.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/images/wow/pic-cluster.png
--------------------------------------------------------------------------------
/dist/server/public/images/wow/pic-containerimages.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/images/wow/pic-containerimages.png
--------------------------------------------------------------------------------
/dist/server/public/images/wow/pic-eventmsgs.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/images/wow/pic-eventmsgs.png
--------------------------------------------------------------------------------
/dist/server/public/images/wow/pic-network.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/images/wow/pic-network.png
--------------------------------------------------------------------------------
/dist/server/public/images/wow/pic-ownerref.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/images/wow/pic-ownerref.png
--------------------------------------------------------------------------------
/dist/server/public/images/wow/pic-schematic.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/images/wow/pic-schematic.png
--------------------------------------------------------------------------------
/dist/server/public/images/wow/pic-searchview.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/images/wow/pic-searchview.png
--------------------------------------------------------------------------------
/dist/server/public/images/wow/pic-security.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/images/wow/pic-security.png
--------------------------------------------------------------------------------
/dist/server/public/images/wow/pic-stats.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/images/wow/pic-stats.png
--------------------------------------------------------------------------------
/dist/server/public/images/wow/pic-storage.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/images/wow/pic-storage.png
--------------------------------------------------------------------------------
/dist/server/public/javascript/3rdparty/graphvizlib.wasm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/javascript/3rdparty/graphvizlib.wasm
--------------------------------------------------------------------------------
/dist/server/public/routes/index.js:
--------------------------------------------------------------------------------
1 | // const express = require('express');
2 | // const router = express.Router();
3 | // // Welcome Page
4 | // router.get('/', (req, res) => res.render('index'));
5 | // module.exports = router;
6 | import express from 'express';
7 | const router = express.Router();
8 | // Welcome Page
9 | router.get('/', (req, res) => res.render('index'));
10 | export default router;
11 |
--------------------------------------------------------------------------------
/dist/server/public/sounds/GunShot.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/sounds/GunShot.wav
--------------------------------------------------------------------------------
/dist/server/public/sounds/LowDing.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/sounds/LowDing.wav
--------------------------------------------------------------------------------
/dist/server/public/textures/clouds_nx.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/textures/clouds_nx.jpg
--------------------------------------------------------------------------------
/dist/server/public/textures/clouds_ny.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/textures/clouds_ny.jpg
--------------------------------------------------------------------------------
/dist/server/public/textures/clouds_nz.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/textures/clouds_nz.jpg
--------------------------------------------------------------------------------
/dist/server/public/textures/clouds_px.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/textures/clouds_px.jpg
--------------------------------------------------------------------------------
/dist/server/public/textures/clouds_py.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/textures/clouds_py.jpg
--------------------------------------------------------------------------------
/dist/server/public/textures/clouds_pz.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/textures/clouds_pz.jpg
--------------------------------------------------------------------------------
/dist/server/public/textures/stars_nx.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/textures/stars_nx.jpg
--------------------------------------------------------------------------------
/dist/server/public/textures/stars_ny.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/textures/stars_ny.jpg
--------------------------------------------------------------------------------
/dist/server/public/textures/stars_nz.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/textures/stars_nz.jpg
--------------------------------------------------------------------------------
/dist/server/public/textures/stars_px.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/textures/stars_px.jpg
--------------------------------------------------------------------------------
/dist/server/public/textures/stars_py.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/textures/stars_py.jpg
--------------------------------------------------------------------------------
/dist/server/public/textures/stars_pz.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/k8svisual/vpk/fa074e2a3752e2c83a64c0230cd5351c892f5c98/dist/server/public/textures/stars_pz.jpg
--------------------------------------------------------------------------------
/dist/server/public/views/partials/modal-decode.ejs:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |