فهرست منبع

Fixes #19622: Allow loading graphql query from URL (#20014)

Marcus Weiner 6 ماه پیش
والد
کامیت
9df0bdcfaf
1فایلهای تغییر یافته به همراه17 افزوده شده و 0 حذف شده
  1. 17 0
      netbox/templates/graphql/graphiql.html

+ 17 - 0
netbox/templates/graphql/graphiql.html

@@ -88,6 +88,21 @@
 #
 #
 `;
 `;
 
 
+      let sharedQuery;
+      const hashArgs = new URLSearchParams(window.location.hash.substring(1));
+      if (hashArgs.has('query')) {
+        sharedQuery = hashArgs.get('query');
+        // reset url to not motivate copying of stale URL
+        hashArgs.delete('query');
+        let remainingHash = "";
+        if (hashArgs.size !== 0) {
+          remainingHash = `#${hashArgs.toString()}`;
+        }
+        history.pushState("", document.title,
+          window.location.pathname + window.location.search + remainingHash
+        );
+      }
+
       const fetchURL = window.location.href;
       const fetchURL = window.location.href;
 
 
       function httpUrlToWebSockeUrl(url) {
       function httpUrlToWebSockeUrl(url) {
@@ -123,6 +138,8 @@
           defaultEditorToolsVisibility: true,
           defaultEditorToolsVisibility: true,
           plugins: [explorerPlugin],
           plugins: [explorerPlugin],
           inputValueDeprecation: true,
           inputValueDeprecation: true,
+          defaultQuery: EXAMPLE_QUERY,
+          query: sharedQuery,
         }),
         }),
       );
       );
     </script>
     </script>