This is an automated email from the ASF dual-hosted git repository.

urfree pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/pulsar-site.git

commit adf965b701847372599ff5aaea7b27e30650896b
Author: LiLi <[email protected]>
AuthorDate: Mon Jan 24 17:26:37 2022 +0800

    update
    
    Signed-off-by: LiLi <[email protected]>
---
 site2/website-next/package.json              |  2 +-
 site2/website-next/src/components/CLI.js     | 19 ++++++---
 site2/website-next/src/components/RestApi.js | 64 +++++++++++++++++++---------
 site2/website-next/src/theme/Navbar/index.js | 51 ++++++++--------------
 site2/website-next/src/utils/index.js        | 26 +++++++++++
 site2/website-next/versions.json             | 29 +------------
 6 files changed, 102 insertions(+), 89 deletions(-)

diff --git a/site2/website-next/package.json b/site2/website-next/package.json
index f6fd558..947beea 100644
--- a/site2/website-next/package.json
+++ b/site2/website-next/package.json
@@ -4,7 +4,7 @@
   "private": true,
   "scripts": {
     "docusaurus": "docusaurus",
-    "start": "NODE_OPTIONS=--max_old_space_size=8192 docusaurus start",
+    "start": "NODE_OPTIONS=--max_old_space_size=8192 node 
scripts/split-swagger-by-version.js && docusaurus start",
     "build": "NODE_OPTIONS=--max_old_space_size=8192 docusaurus build",
     "preview": "npm run build && git checkout . && sh scripts/docker.sh",
     "swizzle": "docusaurus swizzle",
diff --git a/site2/website-next/src/components/CLI.js 
b/site2/website-next/src/components/CLI.js
index 6bca478..5c25245 100644
--- a/site2/website-next/src/components/CLI.js
+++ b/site2/website-next/src/components/CLI.js
@@ -1,21 +1,29 @@
 const React = require("react");
 import Layout from "@theme/Layout";
 const versionList = require("../../versions.json");
+import { setVersion, getVersion, getApiVersion } from "../utils/index.js";
+
+function parseVersion() {}
 
 class CLI extends React.Component {
   componentDidMount() {
+    let version = getVersion();
+
     let params = window.location.search;
     let latestVersion = versionList[0];
     let clientModule = this.props.module || "pulsar-admin";
     params = params.replace("?", "");
     const paramsList = params.split("&");
-    let version = "master";
-    for (let i in paramsList) {
-      let param = paramsList[i].split("=");
-      if (param[0] === "version") {
-        version = param[1];
+
+    if (paramsList && paramsList.length > 0) {
+      for (let i in paramsList) {
+        let param = paramsList[i].split("=");
+        if (param[0] === "version") {
+          version = param[1];
+        }
       }
     }
+
     if (version === "master") {
       let latestVersionSplit = latestVersion.split(".");
       version =
@@ -24,6 +32,7 @@ class CLI extends React.Component {
         (parseInt(latestVersionSplit[1]) + 1) +
         ".0";
     }
+
     let versions = version.split(".");
     let majorVersion = parseInt(versions[0]);
     let minorVersion = parseInt(versions[1]);
diff --git a/site2/website-next/src/components/RestApi.js 
b/site2/website-next/src/components/RestApi.js
index 01513cc..ee5c190 100644
--- a/site2/website-next/src/components/RestApi.js
+++ b/site2/website-next/src/components/RestApi.js
@@ -1,31 +1,53 @@
 const React = require("react");
 import Layout from "@theme/Layout";
+import { setVersion, getVersion, getApiVersion } from "../utils/index.js";
+
+function parseVersion() {
+  let swagger = "swagger";
+  if (pathName.indexOf("functions") > -1) {
+    swagger = "swaggerfunctions";
+  } else if (pathName.indexOf("source") > -1) {
+    swagger = "swaggersource";
+  } else if (pathName.indexOf("sink") > -1) {
+    swagger = "swaggersink";
+  } else if (pathName.indexOf("packages") > -1) {
+    swagger = "swaggerpackages";
+  }
+  let version = getVersion();
+  let apiversion = getApiVersion(swagger);
+
+  if (version !== "master") {
+    var versions = version.split(".");
+    var majorVersion = parseInt(versions[0]);
+    var minorVersion = parseInt(versions[1]);
+    if (majorVersion < 2) {
+      version = "2.3.0";
+    } else if (minorVersion < 3) {
+      version = "2.3.0";
+    }
+  }
+
+  return [version, apiversion];
+}
 class RestApi extends React.Component {
   componentDidMount() {
-    var params = window.location.search;
+    let [version, apiversion] = parseVersion();
+
     var pathName = window.location.pathname;
+    var params = window.location.search;
     params = params.replace("?", "");
     const paramsList = params.split("&");
-    var version = "master";
-    var apiversion = "";
-    for (var i in paramsList) {
-      var param = paramsList[i].split("=");
-      if (param[0] === "version") {
-        version = param[1];
-      }
-      if (param[0] === "apiversion") {
-        apiversion = param[1];
-      }
-    }
-
-    if (version !== "master") {
-      var versions = version.split(".");
-      var majorVersion = parseInt(versions[0]);
-      var minorVersion = parseInt(versions[1]);
-      if (majorVersion < 2) {
-        version = "2.3.0";
-      } else if (minorVersion < 3) {
-        version = "2.3.0";
+    if (paramsList && paramsList.length > 0) {
+      var version = "master";
+      var apiversion = "";
+      for (var i in paramsList) {
+        var param = paramsList[i].split("=");
+        if (param[0] === "version") {
+          version = param[1];
+        }
+        if (param[0] === "apiversion") {
+          apiversion = param[1];
+        }
       }
     }
 
diff --git a/site2/website-next/src/theme/Navbar/index.js 
b/site2/website-next/src/theme/Navbar/index.js
index 8f02543..6d0fe16 100644
--- a/site2/website-next/src/theme/Navbar/index.js
+++ b/site2/website-next/src/theme/Navbar/index.js
@@ -25,34 +25,9 @@ import Logo from "@theme/Logo";
 import IconMenu from "@theme/IconMenu";
 import IconClose from "@theme/IconClose";
 import styles from "./styles.module.css"; // retrocompatible with v1
-import { docUrl, getCache } from "../../utils/index.js";
+import { setVersion, getVersion, getApiVersion } from "../../utils/index.js";
 
 const DefaultNavItemPosition = "right";
-const versions = require("../../../versions.json");
-const restApiVersions = 
require("../../../static/swagger/restApiVersions.json");
-const latestStableVersion = versions[0];
-
-function setVersion(version) {
-  getCache().setItem("version", version == "next" ? "master" : version);
-}
-
-function getVersion() {
-  if (!getCache()) {
-    return latestStableVersion;
-  }
-  return getCache().getItem("version") || latestStableVersion;
-}
-
-function getApiVersion(anchor) {
-  let version = getVersion();
-  let apiVersion = "";
-  if (restApiVersions[version][0]["fileName"].indexOf(anchor) == 0) {
-    apiVersion = restApiVersions[version][0]["version"];
-  } else {
-    apiVersion = restApiVersions[version][1]["version"];
-  }
-  return apiVersion;
-}
 
 function getLauguage() {
   return "";
@@ -244,7 +219,14 @@ function NavbarMobileSidebar({ sidebarShown, toggleSidebar 
}) {
                 });
               }
               return (
-                <NavbarItem mobile {...item} onClick={toggleSidebar} key={i} />
+                <NavbarItem
+                  mobile
+                  {...item}
+                  onClick={(item) => {
+                    toggleSidebar(item);
+                  }}
+                  key={i}
+                />
               );
             })}
           </ul>
@@ -334,19 +316,20 @@ function Navbar() {
                 }
                 return {
                   ...e,
-                  link:
-                    e.to +
-                    "?version=" +
-                    getVersion() +
-                    "&apiversion=" +
-                    getApiVersion(param),
+                  link: e.to,
+                  // +
+                  // "?version=" +
+                  // getVersion() +
+                  // "&apiversion=" +
+                  // getApiVersion(param),
                 };
               });
             } else if (item.label == "CLI") {
               item.items = item.items.map((e) => {
                 return {
                   ...e,
-                  link: e.to + "?version=" + getVersion(),
+                  link: e.to,
+                  // + "?version=" + getVersion(),
                 };
               });
             } else if (item.label == "Community") {
diff --git a/site2/website-next/src/utils/index.js 
b/site2/website-next/src/utils/index.js
index 6c964b5..c8b7321 100644
--- a/site2/website-next/src/utils/index.js
+++ b/site2/website-next/src/utils/index.js
@@ -2,6 +2,10 @@ const users = require(`../../data/users.js`);
 const featuredUsers = users.filter((x) => x.hasOwnProperty("featured"));
 featuredUsers.sort((a, b) => (a.featured > b.featured ? 1 : -1));
 
+const versions = require("../../versions.json");
+const restApiVersions = require("../../static/swagger/restApiVersions.json");
+const latestStableVersion = versions[0];
+
 const siteConfig = require(`../../docusaurus.config.js`);
 
 export function imgUrl(img) {
@@ -33,3 +37,25 @@ export function getCache() {
   }
   return windowGlobal.localStorage;
 }
+
+export function setVersion(version) {
+  getCache().setItem("version", version == "next" ? "master" : version);
+}
+
+export function getVersion() {
+  if (!getCache()) {
+    return latestStableVersion;
+  }
+  return getCache().getItem("version") || latestStableVersion;
+}
+
+export function getApiVersion(anchor) {
+  let version = getVersion();
+  let apiVersion = "";
+  if (restApiVersions[version][0]["fileName"].indexOf(anchor) == 0) {
+    apiVersion = restApiVersions[version][0]["version"];
+  } else {
+    apiVersion = restApiVersions[version][1]["version"];
+  }
+  return apiVersion;
+}
diff --git a/site2/website-next/versions.json b/site2/website-next/versions.json
index 5ba060d..f829e1e 100644
--- a/site2/website-next/versions.json
+++ b/site2/website-next/versions.json
@@ -1,28 +1 @@
-[
-  "2.9.1",
-  "2.9.0",
-  "2.8.2",
-  "2.8.1",
-  "2.8.0",
-  "2.7.3",
-  "2.7.2",
-  "2.7.1",
-  "2.7.0",
-  "2.6.4",
-  "2.6.3",
-  "2.6.2",
-  "2.6.1",
-  "2.6.0",
-  "2.5.2",
-  "2.5.1",
-  "2.5.0",
-  "2.4.2",
-  "2.4.1",
-  "2.4.0",
-  "2.3.2",
-  "2.3.1",
-  "2.3.0",
-  "2.2.1",
-  "2.2.0",
-  "2.1.1-incubating"
-]
+["2.9.1"]

Reply via email to