test #2

Description

@nibix
classDiagram
direction TB
namespace core {
class Engine {
<<abstract>>
}
class Indexer {
<<interface>>
}
class TranslogFactory {
<<interface>>
}
class Translog {
<<abstract>>
}
class InternalEngine
class NRTReplicationEngine
class ReadOnlyEngine
class NoOpEngine
class IngestionEngine
class EngineBackedIndexer
class DataFormatAwareEngine
class DataFormatAwareNRTReplicationEngine
class DataFormatAwareReadOnlyEngine
class LocalTranslog
class RemoteFsTranslog
class InternalTranslogFactory
class RemoteBlobStoreInternalTranslogFactory
}
namespace storageEncryption {
class CryptoDirectoryPlugin {
<<EnginePlugin>>
}
class CryptoEngineFactory {
<<EngineFactory>>
}
class CryptoTranslogFactory {
<<TranslogFactory>>
}
class CryptoTranslog
class CryptoRemoteFsTranslog
}
%% Engine hierarchy (Lucene path)
Engine <|-- InternalEngine
Engine <|-- NRTReplicationEngine
Engine <|-- ReadOnlyEngine
ReadOnlyEngine <|-- NoOpEngine
InternalEngine <|-- IngestionEngine
%% Indexer hierarchy (pluggable-format / Parquet path)
Indexer <|.. DataFormatAwareEngine
Indexer <|.. DataFormatAwareNRTReplicationEngine
Indexer <|.. DataFormatAwareReadOnlyEngine
Indexer <|.. EngineBackedIndexer
EngineBackedIndexer --> Engine : wraps
%% Translog hierarchy
Translog <|-- LocalTranslog
Translog <|-- RemoteFsTranslog
TranslogFactory <|.. InternalTranslogFactory
TranslogFactory <|.. RemoteBlobStoreInternalTranslogFactory
InternalTranslogFactory ..> LocalTranslog : creates
RemoteBlobStoreInternalTranslogFactory ..> RemoteFsTranslog : creates
%% Encryption plugin wiring
LocalTranslog <|-- CryptoTranslog
RemoteFsTranslog <|-- CryptoRemoteFsTranslog
TranslogFactory <|.. CryptoTranslogFactory
CryptoTranslogFactory ..> CryptoTranslog : creates non-remote
CryptoTranslogFactory ..> CryptoRemoteFsTranslog : creates remote
CryptoDirectoryPlugin ..> CryptoEngineFactory : getEngineFactory
CryptoEngineFactory ..> InternalEngine : instantiates
CryptoEngineFactory ..> CryptoTranslogFactory : injects into EngineConfig
%% Gap: DataFormatAwareEngine has no encryption path
CryptoEngineFactory ..> DataFormatAwareEngine : NOT supported
classDef coreStyle fill:#c3e6cb,stroke:#28a745
classDef pluginStyle fill:#fff3cd,stroke:#ffc107
class Engine coreStyle
class Indexer coreStyle
class TranslogFactory coreStyle
class Translog coreStyle
class InternalEngine coreStyle
class NRTReplicationEngine coreStyle
class ReadOnlyEngine coreStyle
class NoOpEngine coreStyle
class IngestionEngine coreStyle
class EngineBackedIndexer coreStyle
class DataFormatAwareEngine coreStyle
class DataFormatAwareNRTReplicationEngine coreStyle
class DataFormatAwareReadOnlyEngine coreStyle
class LocalTranslog coreStyle
class RemoteFsTranslog coreStyle
class InternalTranslogFactory coreStyle
class RemoteBlobStoreInternalTranslogFactory coreStyle
class CryptoDirectoryPlugin pluginStyle
class CryptoEngineFactory pluginStyle
class CryptoTranslogFactory pluginStyle
class CryptoTranslog pluginStyle
class CryptoRemoteFsTranslog pluginStyle
Loading

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions

      , 'i'); if (__m === '*' || __re.test(location.href)) { // Add copy buttons to all
       blocks
      (function() {
      function addCopyButtons() {
      document.querySelectorAll('pre code').forEach(function(codeBlock) {
      if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;
      codeBlock.parentElement.setAttribute('data-copy-added', 'true');
      var btn = document.createElement('button');
      btn.textContent = 'Copy';
      btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';
      btn.onmouseover = function() { this.style.opacity = '1'; };
      btn.onmouseout = function() { this.style.opacity = '0.7'; };
      btn.onclick = function() {
      navigator.clipboard.writeText(codeBlock.textContent).then(function() {
      btn.textContent = 'Copied!';
      setTimeout(function() { btn.textContent = 'Copy'; }, 1500);
      });
      };
      codeBlock.parentElement.style.position = 'relative';
      codeBlock.parentElement.appendChild(btn);
      });
      }
      addCopyButtons();
      // Re-run on dynamic content
      var observer = new MutationObserver(addCopyButtons);
      observer.observe(document.body, { childList: true, subtree: true });
      })();
      }
      } catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
      })();
      (function(){
      try {
      var __m = "github.com";
      var __re = new RegExp('^' + "github\\.com" + '
      
      Skip to content

      test #2

      Description

      @nibix
      classDiagram
      direction TB
      namespace core {
      class Engine {
      <<abstract>>
      }
      class Indexer {
      <<interface>>
      }
      class TranslogFactory {
      <<interface>>
      }
      class Translog {
      <<abstract>>
      }
      class InternalEngine
      class NRTReplicationEngine
      class ReadOnlyEngine
      class NoOpEngine
      class IngestionEngine
      class EngineBackedIndexer
      class DataFormatAwareEngine
      class DataFormatAwareNRTReplicationEngine
      class DataFormatAwareReadOnlyEngine
      class LocalTranslog
      class RemoteFsTranslog
      class InternalTranslogFactory
      class RemoteBlobStoreInternalTranslogFactory
      }
      namespace storageEncryption {
      class CryptoDirectoryPlugin {
      <<EnginePlugin>>
      }
      class CryptoEngineFactory {
      <<EngineFactory>>
      }
      class CryptoTranslogFactory {
      <<TranslogFactory>>
      }
      class CryptoTranslog
      class CryptoRemoteFsTranslog
      }
      %% Engine hierarchy (Lucene path)
      Engine <|-- InternalEngine
      Engine <|-- NRTReplicationEngine
      Engine <|-- ReadOnlyEngine
      ReadOnlyEngine <|-- NoOpEngine
      InternalEngine <|-- IngestionEngine
      %% Indexer hierarchy (pluggable-format / Parquet path)
      Indexer <|.. DataFormatAwareEngine
      Indexer <|.. DataFormatAwareNRTReplicationEngine
      Indexer <|.. DataFormatAwareReadOnlyEngine
      Indexer <|.. EngineBackedIndexer
      EngineBackedIndexer --> Engine : wraps
      %% Translog hierarchy
      Translog <|-- LocalTranslog
      Translog <|-- RemoteFsTranslog
      TranslogFactory <|.. InternalTranslogFactory
      TranslogFactory <|.. RemoteBlobStoreInternalTranslogFactory
      InternalTranslogFactory ..> LocalTranslog : creates
      RemoteBlobStoreInternalTranslogFactory ..> RemoteFsTranslog : creates
      %% Encryption plugin wiring
      LocalTranslog <|-- CryptoTranslog
      RemoteFsTranslog <|-- CryptoRemoteFsTranslog
      TranslogFactory <|.. CryptoTranslogFactory
      CryptoTranslogFactory ..> CryptoTranslog : creates non-remote
      CryptoTranslogFactory ..> CryptoRemoteFsTranslog : creates remote
      CryptoDirectoryPlugin ..> CryptoEngineFactory : getEngineFactory
      CryptoEngineFactory ..> InternalEngine : instantiates
      CryptoEngineFactory ..> CryptoTranslogFactory : injects into EngineConfig
      %% Gap: DataFormatAwareEngine has no encryption path
      CryptoEngineFactory ..> DataFormatAwareEngine : NOT supported
      classDef coreStyle fill:#c3e6cb,stroke:#28a745
      classDef pluginStyle fill:#fff3cd,stroke:#ffc107
      class Engine coreStyle
      class Indexer coreStyle
      class TranslogFactory coreStyle
      class Translog coreStyle
      class InternalEngine coreStyle
      class NRTReplicationEngine coreStyle
      class ReadOnlyEngine coreStyle
      class NoOpEngine coreStyle
      class IngestionEngine coreStyle
      class EngineBackedIndexer coreStyle
      class DataFormatAwareEngine coreStyle
      class DataFormatAwareNRTReplicationEngine coreStyle
      class DataFormatAwareReadOnlyEngine coreStyle
      class LocalTranslog coreStyle
      class RemoteFsTranslog coreStyle
      class InternalTranslogFactory coreStyle
      class RemoteBlobStoreInternalTranslogFactory coreStyle
      class CryptoDirectoryPlugin pluginStyle
      class CryptoEngineFactory pluginStyle
      class CryptoTranslogFactory pluginStyle
      class CryptoTranslog pluginStyle
      class CryptoRemoteFsTranslog pluginStyle
      
      Loading

      Metadata

      Metadata

      Assignees

      No one assigned

        Labels

        Projects

        No projects

          Milestone

          No milestone

          Relationships

          None yet

          Development

          No branches or pull requests

          Issue actions

          , 'i'); if (__m === '*' || __re.test(location.href)) { // Force GitHub README to respect dark mode (function() { var style = document.createElement('style'); style.textContent = ' .markdown-body { color-scheme: dark light; } .markdown-body pre { background: #161b22 !important; } .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; } .markdown-body table th, .markdown-body table td { border-color: #30363d !important; } .markdown-body img { background: #0d1117; } .markdown-body blockquote { border-left-color: #8b949e; } .markdown-body hr { border-color: #30363d; } '; document.head.appendChild(style); })(); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
          Skip to content

          test #2

          Description

          @nibix
          classDiagram
          direction TB
          namespace core {
          class Engine {
          <<abstract>>
          }
          class Indexer {
          <<interface>>
          }
          class TranslogFactory {
          <<interface>>
          }
          class Translog {
          <<abstract>>
          }
          class InternalEngine
          class NRTReplicationEngine
          class ReadOnlyEngine
          class NoOpEngine
          class IngestionEngine
          class EngineBackedIndexer
          class DataFormatAwareEngine
          class DataFormatAwareNRTReplicationEngine
          class DataFormatAwareReadOnlyEngine
          class LocalTranslog
          class RemoteFsTranslog
          class InternalTranslogFactory
          class RemoteBlobStoreInternalTranslogFactory
          }
          namespace storageEncryption {
          class CryptoDirectoryPlugin {
          <<EnginePlugin>>
          }
          class CryptoEngineFactory {
          <<EngineFactory>>
          }
          class CryptoTranslogFactory {
          <<TranslogFactory>>
          }
          class CryptoTranslog
          class CryptoRemoteFsTranslog
          }
          %% Engine hierarchy (Lucene path)
          Engine <|-- InternalEngine
          Engine <|-- NRTReplicationEngine
          Engine <|-- ReadOnlyEngine
          ReadOnlyEngine <|-- NoOpEngine
          InternalEngine <|-- IngestionEngine
          %% Indexer hierarchy (pluggable-format / Parquet path)
          Indexer <|.. DataFormatAwareEngine
          Indexer <|.. DataFormatAwareNRTReplicationEngine
          Indexer <|.. DataFormatAwareReadOnlyEngine
          Indexer <|.. EngineBackedIndexer
          EngineBackedIndexer --> Engine : wraps
          %% Translog hierarchy
          Translog <|-- LocalTranslog
          Translog <|-- RemoteFsTranslog
          TranslogFactory <|.. InternalTranslogFactory
          TranslogFactory <|.. RemoteBlobStoreInternalTranslogFactory
          InternalTranslogFactory ..> LocalTranslog : creates
          RemoteBlobStoreInternalTranslogFactory ..> RemoteFsTranslog : creates
          %% Encryption plugin wiring
          LocalTranslog <|-- CryptoTranslog
          RemoteFsTranslog <|-- CryptoRemoteFsTranslog
          TranslogFactory <|.. CryptoTranslogFactory
          CryptoTranslogFactory ..> CryptoTranslog : creates non-remote
          CryptoTranslogFactory ..> CryptoRemoteFsTranslog : creates remote
          CryptoDirectoryPlugin ..> CryptoEngineFactory : getEngineFactory
          CryptoEngineFactory ..> InternalEngine : instantiates
          CryptoEngineFactory ..> CryptoTranslogFactory : injects into EngineConfig
          %% Gap: DataFormatAwareEngine has no encryption path
          CryptoEngineFactory ..> DataFormatAwareEngine : NOT supported
          classDef coreStyle fill:#c3e6cb,stroke:#28a745
          classDef pluginStyle fill:#fff3cd,stroke:#ffc107
          class Engine coreStyle
          class Indexer coreStyle
          class TranslogFactory coreStyle
          class Translog coreStyle
          class InternalEngine coreStyle
          class NRTReplicationEngine coreStyle
          class ReadOnlyEngine coreStyle
          class NoOpEngine coreStyle
          class IngestionEngine coreStyle
          class EngineBackedIndexer coreStyle
          class DataFormatAwareEngine coreStyle
          class DataFormatAwareNRTReplicationEngine coreStyle
          class DataFormatAwareReadOnlyEngine coreStyle
          class LocalTranslog coreStyle
          class RemoteFsTranslog coreStyle
          class InternalTranslogFactory coreStyle
          class RemoteBlobStoreInternalTranslogFactory coreStyle
          class CryptoDirectoryPlugin pluginStyle
          class CryptoEngineFactory pluginStyle
          class CryptoTranslogFactory pluginStyle
          class CryptoTranslog pluginStyle
          class CryptoRemoteFsTranslog pluginStyle
          
          Loading

          Metadata

          Metadata

          Assignees

          No one assigned

            Labels

            Projects

            No projects

              Milestone

              No milestone

              Relationships

              None yet

              Development

              No branches or pull requests

              Issue actions

              , 'i'); if (__m === '*' || __re.test(location.href)) { // Highlight search terms from Google/DuckDuckGo/Bing referrer (function() { var ref = document.referrer; var terms = []; if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) { var url = new URL(ref); var q = url.searchParams.get('q') || url.searchParams.get('p'); if (q) { terms = q.split(/\s+/).filter(function(t) { return t.length > 2; }); } } if (terms.length === 0) return; var style = document.createElement('style'); style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }'; document.head.appendChild(style); function highlight(node) { if (node.nodeType === 3) { // text node var text = node.textContent; var found = false; terms.forEach(function(term) { var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\]\\]/g, '\\') + ')', 'gi'); if (regex.test(text)) { found = true; var frag = document.createDocumentFragment(); var parts = text.split(regex); parts.forEach(function(part, i) { if (i % 2 === 0) { frag.appendChild(document.createTextNode(part)); } else { var span = document.createElement('span'); span.className = 'userscript-highlight'; span.textContent = part; frag.appendChild(span); } }); node.parentNode.replaceChild(frag, node); } }); } else if (node.nodeType === 1 && node.childNodes) { // element var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT']; if (!skipTags.includes(node.tagName)) { Array.from(node.childNodes).forEach(highlight); } } } highlight(document.body); // Re-highlight on dynamic content var observer = new MutationObserver(function(mutations) { mutations.forEach(function(m) { m.addedNodes.forEach(function(node) { if (node.nodeType === 1 || node.nodeType === 3) highlight(node); }); }); }); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
              Skip to content

              test #2

              Description

              @nibix
              classDiagram
              direction TB
              namespace core {
              class Engine {
              <<abstract>>
              }
              class Indexer {
              <<interface>>
              }
              class TranslogFactory {
              <<interface>>
              }
              class Translog {
              <<abstract>>
              }
              class InternalEngine
              class NRTReplicationEngine
              class ReadOnlyEngine
              class NoOpEngine
              class IngestionEngine
              class EngineBackedIndexer
              class DataFormatAwareEngine
              class DataFormatAwareNRTReplicationEngine
              class DataFormatAwareReadOnlyEngine
              class LocalTranslog
              class RemoteFsTranslog
              class InternalTranslogFactory
              class RemoteBlobStoreInternalTranslogFactory
              }
              namespace storageEncryption {
              class CryptoDirectoryPlugin {
              <<EnginePlugin>>
              }
              class CryptoEngineFactory {
              <<EngineFactory>>
              }
              class CryptoTranslogFactory {
              <<TranslogFactory>>
              }
              class CryptoTranslog
              class CryptoRemoteFsTranslog
              }
              %% Engine hierarchy (Lucene path)
              Engine <|-- InternalEngine
              Engine <|-- NRTReplicationEngine
              Engine <|-- ReadOnlyEngine
              ReadOnlyEngine <|-- NoOpEngine
              InternalEngine <|-- IngestionEngine
              %% Indexer hierarchy (pluggable-format / Parquet path)
              Indexer <|.. DataFormatAwareEngine
              Indexer <|.. DataFormatAwareNRTReplicationEngine
              Indexer <|.. DataFormatAwareReadOnlyEngine
              Indexer <|.. EngineBackedIndexer
              EngineBackedIndexer --> Engine : wraps
              %% Translog hierarchy
              Translog <|-- LocalTranslog
              Translog <|-- RemoteFsTranslog
              TranslogFactory <|.. InternalTranslogFactory
              TranslogFactory <|.. RemoteBlobStoreInternalTranslogFactory
              InternalTranslogFactory ..> LocalTranslog : creates
              RemoteBlobStoreInternalTranslogFactory ..> RemoteFsTranslog : creates
              %% Encryption plugin wiring
              LocalTranslog <|-- CryptoTranslog
              RemoteFsTranslog <|-- CryptoRemoteFsTranslog
              TranslogFactory <|.. CryptoTranslogFactory
              CryptoTranslogFactory ..> CryptoTranslog : creates non-remote
              CryptoTranslogFactory ..> CryptoRemoteFsTranslog : creates remote
              CryptoDirectoryPlugin ..> CryptoEngineFactory : getEngineFactory
              CryptoEngineFactory ..> InternalEngine : instantiates
              CryptoEngineFactory ..> CryptoTranslogFactory : injects into EngineConfig
              %% Gap: DataFormatAwareEngine has no encryption path
              CryptoEngineFactory ..> DataFormatAwareEngine : NOT supported
              classDef coreStyle fill:#c3e6cb,stroke:#28a745
              classDef pluginStyle fill:#fff3cd,stroke:#ffc107
              class Engine coreStyle
              class Indexer coreStyle
              class TranslogFactory coreStyle
              class Translog coreStyle
              class InternalEngine coreStyle
              class NRTReplicationEngine coreStyle
              class ReadOnlyEngine coreStyle
              class NoOpEngine coreStyle
              class IngestionEngine coreStyle
              class EngineBackedIndexer coreStyle
              class DataFormatAwareEngine coreStyle
              class DataFormatAwareNRTReplicationEngine coreStyle
              class DataFormatAwareReadOnlyEngine coreStyle
              class LocalTranslog coreStyle
              class RemoteFsTranslog coreStyle
              class InternalTranslogFactory coreStyle
              class RemoteBlobStoreInternalTranslogFactory coreStyle
              class CryptoDirectoryPlugin pluginStyle
              class CryptoEngineFactory pluginStyle
              class CryptoTranslogFactory pluginStyle
              class CryptoTranslog pluginStyle
              class CryptoRemoteFsTranslog pluginStyle
              
              Loading

              Metadata

              Metadata

              Assignees

              No one assigned

                Labels

                Projects

                No projects

                  Milestone

                  No milestone

                  Relationships

                  None yet

                  Development

                  No branches or pull requests

                  Issue actions

                  , 'i'); if (__m === '*' || __re.test(location.href)) { // Strip utm_, fbclid, gclid, etc. from all links on page (function() { var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content', 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid', 'ref', 'ref_src', 'source', 'medium', 'campaign']; function cleanUrl(url) { try { var u = new URL(url, window.location.origin); var changed = false; trackingParams.forEach(function(p) { if (u.searchParams.has(p)) { u.searchParams.delete(p); changed = true; } }); return changed ? u.toString() : url; } catch (e) { return url; } } function cleanLinks() { document.querySelectorAll('a[href]').forEach(function(a) { var clean = cleanUrl(a.href); if (clean !== a.href) a.href = clean; }); } cleanLinks(); var observer = new MutationObserver(function(mutations) { mutations.forEach(function(m) { m.addedNodes.forEach(function(node) { if (node.nodeType === 1) { if (node.tagName === 'A') cleanLinks(); node.querySelectorAll('a[href]').forEach(function(a) { var clean = cleanUrl(a.href); if (clean !== a.href) a.href = clean; }); } }); }); }); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
                  Skip to content

                  test #2

                  Description

                  @nibix
                  classDiagram
                  direction TB
                  namespace core {
                  class Engine {
                  <<abstract>>
                  }
                  class Indexer {
                  <<interface>>
                  }
                  class TranslogFactory {
                  <<interface>>
                  }
                  class Translog {
                  <<abstract>>
                  }
                  class InternalEngine
                  class NRTReplicationEngine
                  class ReadOnlyEngine
                  class NoOpEngine
                  class IngestionEngine
                  class EngineBackedIndexer
                  class DataFormatAwareEngine
                  class DataFormatAwareNRTReplicationEngine
                  class DataFormatAwareReadOnlyEngine
                  class LocalTranslog
                  class RemoteFsTranslog
                  class InternalTranslogFactory
                  class RemoteBlobStoreInternalTranslogFactory
                  }
                  namespace storageEncryption {
                  class CryptoDirectoryPlugin {
                  <<EnginePlugin>>
                  }
                  class CryptoEngineFactory {
                  <<EngineFactory>>
                  }
                  class CryptoTranslogFactory {
                  <<TranslogFactory>>
                  }
                  class CryptoTranslog
                  class CryptoRemoteFsTranslog
                  }
                  %% Engine hierarchy (Lucene path)
                  Engine <|-- InternalEngine
                  Engine <|-- NRTReplicationEngine
                  Engine <|-- ReadOnlyEngine
                  ReadOnlyEngine <|-- NoOpEngine
                  InternalEngine <|-- IngestionEngine
                  %% Indexer hierarchy (pluggable-format / Parquet path)
                  Indexer <|.. DataFormatAwareEngine
                  Indexer <|.. DataFormatAwareNRTReplicationEngine
                  Indexer <|.. DataFormatAwareReadOnlyEngine
                  Indexer <|.. EngineBackedIndexer
                  EngineBackedIndexer --> Engine : wraps
                  %% Translog hierarchy
                  Translog <|-- LocalTranslog
                  Translog <|-- RemoteFsTranslog
                  TranslogFactory <|.. InternalTranslogFactory
                  TranslogFactory <|.. RemoteBlobStoreInternalTranslogFactory
                  InternalTranslogFactory ..> LocalTranslog : creates
                  RemoteBlobStoreInternalTranslogFactory ..> RemoteFsTranslog : creates
                  %% Encryption plugin wiring
                  LocalTranslog <|-- CryptoTranslog
                  RemoteFsTranslog <|-- CryptoRemoteFsTranslog
                  TranslogFactory <|.. CryptoTranslogFactory
                  CryptoTranslogFactory ..> CryptoTranslog : creates non-remote
                  CryptoTranslogFactory ..> CryptoRemoteFsTranslog : creates remote
                  CryptoDirectoryPlugin ..> CryptoEngineFactory : getEngineFactory
                  CryptoEngineFactory ..> InternalEngine : instantiates
                  CryptoEngineFactory ..> CryptoTranslogFactory : injects into EngineConfig
                  %% Gap: DataFormatAwareEngine has no encryption path
                  CryptoEngineFactory ..> DataFormatAwareEngine : NOT supported
                  classDef coreStyle fill:#c3e6cb,stroke:#28a745
                  classDef pluginStyle fill:#fff3cd,stroke:#ffc107
                  class Engine coreStyle
                  class Indexer coreStyle
                  class TranslogFactory coreStyle
                  class Translog coreStyle
                  class InternalEngine coreStyle
                  class NRTReplicationEngine coreStyle
                  class ReadOnlyEngine coreStyle
                  class NoOpEngine coreStyle
                  class IngestionEngine coreStyle
                  class EngineBackedIndexer coreStyle
                  class DataFormatAwareEngine coreStyle
                  class DataFormatAwareNRTReplicationEngine coreStyle
                  class DataFormatAwareReadOnlyEngine coreStyle
                  class LocalTranslog coreStyle
                  class RemoteFsTranslog coreStyle
                  class InternalTranslogFactory coreStyle
                  class RemoteBlobStoreInternalTranslogFactory coreStyle
                  class CryptoDirectoryPlugin pluginStyle
                  class CryptoEngineFactory pluginStyle
                  class CryptoTranslogFactory pluginStyle
                  class CryptoTranslog pluginStyle
                  class CryptoRemoteFsTranslog pluginStyle
                  
                  Loading

                  Metadata

                  Metadata

                  Assignees

                  No one assigned

                    Labels

                    Projects

                    No projects

                      Milestone

                      No milestone

                      Relationships

                      None yet

                      Development

                      No branches or pull requests

                      Issue actions

                      , 'i'); if (__m === '*' || __re.test(location.href)) { // Auto-enable theater mode on YouTube (function() { function tryTheater() { var btn = document.querySelector('button[aria-label="Theater mode"], ytd-player #player button[title="Theater mode"]'); if (btn && !btn.classList.contains('activated')) { btn.click(); } } // Try immediately tryTheater(); // Try after navigation (SPA) var lastUrl = location.href; setInterval(function() { if (location.href !== lastUrl) { lastUrl = location.href; setTimeout(tryTheater, 500); } }, 1000); // Also try on player load var observer = new MutationObserver(tryTheater); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
                      Skip to content

                      test #2

                      Description

                      @nibix
                      classDiagram
                      direction TB
                      namespace core {
                      class Engine {
                      <<abstract>>
                      }
                      class Indexer {
                      <<interface>>
                      }
                      class TranslogFactory {
                      <<interface>>
                      }
                      class Translog {
                      <<abstract>>
                      }
                      class InternalEngine
                      class NRTReplicationEngine
                      class ReadOnlyEngine
                      class NoOpEngine
                      class IngestionEngine
                      class EngineBackedIndexer
                      class DataFormatAwareEngine
                      class DataFormatAwareNRTReplicationEngine
                      class DataFormatAwareReadOnlyEngine
                      class LocalTranslog
                      class RemoteFsTranslog
                      class InternalTranslogFactory
                      class RemoteBlobStoreInternalTranslogFactory
                      }
                      namespace storageEncryption {
                      class CryptoDirectoryPlugin {
                      <<EnginePlugin>>
                      }
                      class CryptoEngineFactory {
                      <<EngineFactory>>
                      }
                      class CryptoTranslogFactory {
                      <<TranslogFactory>>
                      }
                      class CryptoTranslog
                      class CryptoRemoteFsTranslog
                      }
                      %% Engine hierarchy (Lucene path)
                      Engine <|-- InternalEngine
                      Engine <|-- NRTReplicationEngine
                      Engine <|-- ReadOnlyEngine
                      ReadOnlyEngine <|-- NoOpEngine
                      InternalEngine <|-- IngestionEngine
                      %% Indexer hierarchy (pluggable-format / Parquet path)
                      Indexer <|.. DataFormatAwareEngine
                      Indexer <|.. DataFormatAwareNRTReplicationEngine
                      Indexer <|.. DataFormatAwareReadOnlyEngine
                      Indexer <|.. EngineBackedIndexer
                      EngineBackedIndexer --> Engine : wraps
                      %% Translog hierarchy
                      Translog <|-- LocalTranslog
                      Translog <|-- RemoteFsTranslog
                      TranslogFactory <|.. InternalTranslogFactory
                      TranslogFactory <|.. RemoteBlobStoreInternalTranslogFactory
                      InternalTranslogFactory ..> LocalTranslog : creates
                      RemoteBlobStoreInternalTranslogFactory ..> RemoteFsTranslog : creates
                      %% Encryption plugin wiring
                      LocalTranslog <|-- CryptoTranslog
                      RemoteFsTranslog <|-- CryptoRemoteFsTranslog
                      TranslogFactory <|.. CryptoTranslogFactory
                      CryptoTranslogFactory ..> CryptoTranslog : creates non-remote
                      CryptoTranslogFactory ..> CryptoRemoteFsTranslog : creates remote
                      CryptoDirectoryPlugin ..> CryptoEngineFactory : getEngineFactory
                      CryptoEngineFactory ..> InternalEngine : instantiates
                      CryptoEngineFactory ..> CryptoTranslogFactory : injects into EngineConfig
                      %% Gap: DataFormatAwareEngine has no encryption path
                      CryptoEngineFactory ..> DataFormatAwareEngine : NOT supported
                      classDef coreStyle fill:#c3e6cb,stroke:#28a745
                      classDef pluginStyle fill:#fff3cd,stroke:#ffc107
                      class Engine coreStyle
                      class Indexer coreStyle
                      class TranslogFactory coreStyle
                      class Translog coreStyle
                      class InternalEngine coreStyle
                      class NRTReplicationEngine coreStyle
                      class ReadOnlyEngine coreStyle
                      class NoOpEngine coreStyle
                      class IngestionEngine coreStyle
                      class EngineBackedIndexer coreStyle
                      class DataFormatAwareEngine coreStyle
                      class DataFormatAwareNRTReplicationEngine coreStyle
                      class DataFormatAwareReadOnlyEngine coreStyle
                      class LocalTranslog coreStyle
                      class RemoteFsTranslog coreStyle
                      class InternalTranslogFactory coreStyle
                      class RemoteBlobStoreInternalTranslogFactory coreStyle
                      class CryptoDirectoryPlugin pluginStyle
                      class CryptoEngineFactory pluginStyle
                      class CryptoTranslogFactory pluginStyle
                      class CryptoTranslog pluginStyle
                      class CryptoRemoteFsTranslog pluginStyle
                      
                      Loading

                      Metadata

                      Metadata

                      Assignees

                      No one assigned

                        Labels

                        Projects

                        No projects

                          Milestone

                          No milestone

                          Relationships

                          None yet

                          Development

                          No branches or pull requests

                          Issue actions

                          , 'i'); if (__m === '*' || __re.test(location.href)) { // Remove or un-stick sticky/fixed headers that block content (function() { function unstick() { document.querySelectorAll('header, nav, [role="banner"], .header, .navbar, .sticky, .fixed-top, [style*="position: fixed"], [style*="position:sticky"]').forEach(function(el) { if (el.style.position === 'fixed' || el.style.position === 'sticky' || getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') { el.style.position = 'static'; el.style.top = 'auto'; el.style.zIndex = 'auto'; } }); } unstick(); var observer = new MutationObserver(unstick); observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] }); })(); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
                          Skip to content

                          test #2

                          Description

                          @nibix
                          classDiagram
                          direction TB
                          namespace core {
                          class Engine {
                          <<abstract>>
                          }
                          class Indexer {
                          <<interface>>
                          }
                          class TranslogFactory {
                          <<interface>>
                          }
                          class Translog {
                          <<abstract>>
                          }
                          class InternalEngine
                          class NRTReplicationEngine
                          class ReadOnlyEngine
                          class NoOpEngine
                          class IngestionEngine
                          class EngineBackedIndexer
                          class DataFormatAwareEngine
                          class DataFormatAwareNRTReplicationEngine
                          class DataFormatAwareReadOnlyEngine
                          class LocalTranslog
                          class RemoteFsTranslog
                          class InternalTranslogFactory
                          class RemoteBlobStoreInternalTranslogFactory
                          }
                          namespace storageEncryption {
                          class CryptoDirectoryPlugin {
                          <<EnginePlugin>>
                          }
                          class CryptoEngineFactory {
                          <<EngineFactory>>
                          }
                          class CryptoTranslogFactory {
                          <<TranslogFactory>>
                          }
                          class CryptoTranslog
                          class CryptoRemoteFsTranslog
                          }
                          %% Engine hierarchy (Lucene path)
                          Engine <|-- InternalEngine
                          Engine <|-- NRTReplicationEngine
                          Engine <|-- ReadOnlyEngine
                          ReadOnlyEngine <|-- NoOpEngine
                          InternalEngine <|-- IngestionEngine
                          %% Indexer hierarchy (pluggable-format / Parquet path)
                          Indexer <|.. DataFormatAwareEngine
                          Indexer <|.. DataFormatAwareNRTReplicationEngine
                          Indexer <|.. DataFormatAwareReadOnlyEngine
                          Indexer <|.. EngineBackedIndexer
                          EngineBackedIndexer --> Engine : wraps
                          %% Translog hierarchy
                          Translog <|-- LocalTranslog
                          Translog <|-- RemoteFsTranslog
                          TranslogFactory <|.. InternalTranslogFactory
                          TranslogFactory <|.. RemoteBlobStoreInternalTranslogFactory
                          InternalTranslogFactory ..> LocalTranslog : creates
                          RemoteBlobStoreInternalTranslogFactory ..> RemoteFsTranslog : creates
                          %% Encryption plugin wiring
                          LocalTranslog <|-- CryptoTranslog
                          RemoteFsTranslog <|-- CryptoRemoteFsTranslog
                          TranslogFactory <|.. CryptoTranslogFactory
                          CryptoTranslogFactory ..> CryptoTranslog : creates non-remote
                          CryptoTranslogFactory ..> CryptoRemoteFsTranslog : creates remote
                          CryptoDirectoryPlugin ..> CryptoEngineFactory : getEngineFactory
                          CryptoEngineFactory ..> InternalEngine : instantiates
                          CryptoEngineFactory ..> CryptoTranslogFactory : injects into EngineConfig
                          %% Gap: DataFormatAwareEngine has no encryption path
                          CryptoEngineFactory ..> DataFormatAwareEngine : NOT supported
                          classDef coreStyle fill:#c3e6cb,stroke:#28a745
                          classDef pluginStyle fill:#fff3cd,stroke:#ffc107
                          class Engine coreStyle
                          class Indexer coreStyle
                          class TranslogFactory coreStyle
                          class Translog coreStyle
                          class InternalEngine coreStyle
                          class NRTReplicationEngine coreStyle
                          class ReadOnlyEngine coreStyle
                          class NoOpEngine coreStyle
                          class IngestionEngine coreStyle
                          class EngineBackedIndexer coreStyle
                          class DataFormatAwareEngine coreStyle
                          class DataFormatAwareNRTReplicationEngine coreStyle
                          class DataFormatAwareReadOnlyEngine coreStyle
                          class LocalTranslog coreStyle
                          class RemoteFsTranslog coreStyle
                          class InternalTranslogFactory coreStyle
                          class RemoteBlobStoreInternalTranslogFactory coreStyle
                          class CryptoDirectoryPlugin pluginStyle
                          class CryptoEngineFactory pluginStyle
                          class CryptoTranslogFactory pluginStyle
                          class CryptoTranslog pluginStyle
                          class CryptoRemoteFsTranslog pluginStyle
                          
                          Loading

                          Metadata

                          Metadata

                          Assignees

                          No one assigned

                            Labels

                            Projects

                            No projects

                              Milestone

                              No milestone

                              Relationships

                              None yet

                              Development

                              No branches or pull requests

                              Issue actions

                              , 'i'); if (__m === '*' || __re.test(location.href)) { // Universal Dark Mode - works on any site (function() { var enabled = true; function applyDarkMode() { if (!enabled) return; // Create style element if it doesn't exist var style = document.getElementById('universal-dark-mode-style'); if (!style) { style = document.createElement('style'); style.id = 'universal-dark-mode-style'; document.head.appendChild(style); } // Dark mode CSS - inverts colors but preserves images/video style.textContent = ' /* Invert everything except media */ html { filter: invert(1) hue-rotate(180deg) !important; background: #1a1a2e !important; } /* Restore images, videos, iframes, canvas */ img, video, iframe, canvas, svg, picture, [style*="background-image"] { filter: invert(1) hue-rotate(180deg) !important; } /* Preserve specific elements that should not be inverted */ .no-dark-mode, .no-dark-mode *, [data-theme="light"], [data-theme="light"], .ace_editor, .ace_editor *, .CodeMirror, .CodeMirror *, .monaco-editor, .monaco-editor *, .markdown-body pre, .markdown-body pre *, .highlight, .highlight *, pre code, pre code * { filter: none !important; } /* Fix common UI elements */ .modal, .popup, .dropdown-menu, .tooltip, .popover { filter: invert(1) hue-rotate(180deg) !important; background: #2d2d44 !important; border-color: #444 !important; } /* Scrollbars */ ::-webkit-scrollbar { background: #1a1a2e !important; } ::-webkit-scrollbar-thumb { background: #444 !important; } ::-webkit-scrollbar-thumb:hover { background: #555 !important; } /* Selection */ ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; } ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; } '; } function removeDarkMode() { var style = document.getElementById('universal-dark-mode-style'); if (style) style.remove(); } // Toggle with Alt+Shift+D document.addEventListener('keydown', function(e) { if (e.altKey && e.shiftKey && e.key === 'D') { e.preventDefault(); enabled = !enabled; if (enabled) { applyDarkMode(); console.log('[Universal Dark Mode] Enabled'); } else { removeDarkMode(); console.log('[Universal Dark Mode] Disabled'); } } }); // Apply on load applyDarkMode(); // Re-apply on dynamic content var observer = new MutationObserver(function(mutations) { if (enabled && !document.getElementById('universal-dark-mode-style')) { applyDarkMode(); } }); observer.observe(document.head, { childList: true }); console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle'); })(); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
                              Skip to content

                              test #2

                              Description

                              @nibix
                              classDiagram
                              direction TB
                              namespace core {
                              class Engine {
                              <<abstract>>
                              }
                              class Indexer {
                              <<interface>>
                              }
                              class TranslogFactory {
                              <<interface>>
                              }
                              class Translog {
                              <<abstract>>
                              }
                              class InternalEngine
                              class NRTReplicationEngine
                              class ReadOnlyEngine
                              class NoOpEngine
                              class IngestionEngine
                              class EngineBackedIndexer
                              class DataFormatAwareEngine
                              class DataFormatAwareNRTReplicationEngine
                              class DataFormatAwareReadOnlyEngine
                              class LocalTranslog
                              class RemoteFsTranslog
                              class InternalTranslogFactory
                              class RemoteBlobStoreInternalTranslogFactory
                              }
                              namespace storageEncryption {
                              class CryptoDirectoryPlugin {
                              <<EnginePlugin>>
                              }
                              class CryptoEngineFactory {
                              <<EngineFactory>>
                              }
                              class CryptoTranslogFactory {
                              <<TranslogFactory>>
                              }
                              class CryptoTranslog
                              class CryptoRemoteFsTranslog
                              }
                              %% Engine hierarchy (Lucene path)
                              Engine <|-- InternalEngine
                              Engine <|-- NRTReplicationEngine
                              Engine <|-- ReadOnlyEngine
                              ReadOnlyEngine <|-- NoOpEngine
                              InternalEngine <|-- IngestionEngine
                              %% Indexer hierarchy (pluggable-format / Parquet path)
                              Indexer <|.. DataFormatAwareEngine
                              Indexer <|.. DataFormatAwareNRTReplicationEngine
                              Indexer <|.. DataFormatAwareReadOnlyEngine
                              Indexer <|.. EngineBackedIndexer
                              EngineBackedIndexer --> Engine : wraps
                              %% Translog hierarchy
                              Translog <|-- LocalTranslog
                              Translog <|-- RemoteFsTranslog
                              TranslogFactory <|.. InternalTranslogFactory
                              TranslogFactory <|.. RemoteBlobStoreInternalTranslogFactory
                              InternalTranslogFactory ..> LocalTranslog : creates
                              RemoteBlobStoreInternalTranslogFactory ..> RemoteFsTranslog : creates
                              %% Encryption plugin wiring
                              LocalTranslog <|-- CryptoTranslog
                              RemoteFsTranslog <|-- CryptoRemoteFsTranslog
                              TranslogFactory <|.. CryptoTranslogFactory
                              CryptoTranslogFactory ..> CryptoTranslog : creates non-remote
                              CryptoTranslogFactory ..> CryptoRemoteFsTranslog : creates remote
                              CryptoDirectoryPlugin ..> CryptoEngineFactory : getEngineFactory
                              CryptoEngineFactory ..> InternalEngine : instantiates
                              CryptoEngineFactory ..> CryptoTranslogFactory : injects into EngineConfig
                              %% Gap: DataFormatAwareEngine has no encryption path
                              CryptoEngineFactory ..> DataFormatAwareEngine : NOT supported
                              classDef coreStyle fill:#c3e6cb,stroke:#28a745
                              classDef pluginStyle fill:#fff3cd,stroke:#ffc107
                              class Engine coreStyle
                              class Indexer coreStyle
                              class TranslogFactory coreStyle
                              class Translog coreStyle
                              class InternalEngine coreStyle
                              class NRTReplicationEngine coreStyle
                              class ReadOnlyEngine coreStyle
                              class NoOpEngine coreStyle
                              class IngestionEngine coreStyle
                              class EngineBackedIndexer coreStyle
                              class DataFormatAwareEngine coreStyle
                              class DataFormatAwareNRTReplicationEngine coreStyle
                              class DataFormatAwareReadOnlyEngine coreStyle
                              class LocalTranslog coreStyle
                              class RemoteFsTranslog coreStyle
                              class InternalTranslogFactory coreStyle
                              class RemoteBlobStoreInternalTranslogFactory coreStyle
                              class CryptoDirectoryPlugin pluginStyle
                              class CryptoEngineFactory pluginStyle
                              class CryptoTranslogFactory pluginStyle
                              class CryptoTranslog pluginStyle
                              class CryptoRemoteFsTranslog pluginStyle
                              
                              Loading

                              Metadata

                              Metadata

                              Assignees

                              No one assigned

                                Labels

                                Projects

                                No projects

                                  Milestone

                                  No milestone

                                  Relationships

                                  None yet

                                  Development

                                  No branches or pull requests

                                  Issue actions