Skip to content

Commit

Permalink
Reworked version nav to add preciseVersion setting.
Browse files Browse the repository at this point in the history
Signed-off-by: Dj Walker-Morgan <[email protected]>
  • Loading branch information
djw-m committed Jan 14, 2025
1 parent 94b970c commit 34d82c5
Show file tree
Hide file tree
Showing 6 changed files with 180 additions and 5 deletions.
4 changes: 4 additions & 0 deletions gatsby-node.js
Original file line number Diff line number Diff line change
Expand Up @@ -197,6 +197,7 @@ exports.createPages = async ({ actions, graphql, reporter }) => {
hideToC
deepToC
hideKBLink
preciseVersion
katacodaPages {
scenario
account
Expand Down Expand Up @@ -224,6 +225,7 @@ exports.createPages = async ({ actions, graphql, reporter }) => {
hideKBLink
hideVersion
hidePDF
preciseVersion
pdfExclude
displayBanner
}
Expand Down Expand Up @@ -556,6 +558,7 @@ exports.createSchemaCustomization = ({ actions }) => {
showInteractiveBadge: Boolean
hideToC: Boolean
deepToC: Boolean
preciseVersion: String
katacodaPages: DemoPage
katacodaPanel: DemoPanel
hideVersion: Boolean
Expand Down Expand Up @@ -602,6 +605,7 @@ exports.createSchemaCustomization = ({ actions }) => {
showInteractiveBadge: Boolean
hideVersion: Boolean
hidePDF: Boolean
preciseVersion: String
pdfExclude: Boolean
hideKBLink: Boolean
displayBanner: String
Expand Down
2 changes: 2 additions & 0 deletions product_docs/docs/pgd/5/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,8 @@ navigation:
- "#Reference"
- reference
pdf: true
directoryDefaults:
preciseVersion: "5.6.1"
---


Expand Down
144 changes: 144 additions & 0 deletions product_docs/docs/pgd/beforeworkdiff.diff
Original file line number Diff line number Diff line change
@@ -1,3 +1,147 @@
Only in 5.6: .DS_Store
Files 5/appusage/behavior.mdx and 5.6/appusage/behavior.mdx differ
Files 5/appusage/feature-compatibility.mdx and 5.6/appusage/feature-compatibility.mdx differ
Files 5/appusage/timing.mdx and 5.6/appusage/timing.mdx differ
Files 5/backup.mdx and 5.6/backup.mdx differ
Files 5/cli/command_ref/index.mdx and 5.6/cli/command_ref/index.mdx differ
Files 5/cli/command_ref/pgd_check-health.mdx and 5.6/cli/command_ref/pgd_check-health.mdx differ
Files 5/cli/command_ref/pgd_create-proxy.mdx and 5.6/cli/command_ref/pgd_create-proxy.mdx differ
Files 5/cli/command_ref/pgd_delete-proxy.mdx and 5.6/cli/command_ref/pgd_delete-proxy.mdx differ
Files 5/cli/command_ref/pgd_set-group-options.mdx and 5.6/cli/command_ref/pgd_set-group-options.mdx differ
Files 5/cli/command_ref/pgd_set-node-options.mdx and 5.6/cli/command_ref/pgd_set-node-options.mdx differ
Files 5/cli/command_ref/pgd_set-proxy-options.mdx and 5.6/cli/command_ref/pgd_set-proxy-options.mdx differ
Files 5/cli/command_ref/pgd_show-clockskew.mdx and 5.6/cli/command_ref/pgd_show-clockskew.mdx differ
Files 5/cli/command_ref/pgd_show-events.mdx and 5.6/cli/command_ref/pgd_show-events.mdx differ
Files 5/cli/command_ref/pgd_show-groups.mdx and 5.6/cli/command_ref/pgd_show-groups.mdx differ
Files 5/cli/command_ref/pgd_show-nodes.mdx and 5.6/cli/command_ref/pgd_show-nodes.mdx differ
Files 5/cli/command_ref/pgd_show-proxies.mdx and 5.6/cli/command_ref/pgd_show-proxies.mdx differ
Files 5/cli/command_ref/pgd_show-raft.mdx and 5.6/cli/command_ref/pgd_show-raft.mdx differ
Files 5/cli/command_ref/pgd_show-replslots.mdx and 5.6/cli/command_ref/pgd_show-replslots.mdx differ
Files 5/cli/command_ref/pgd_show-subscriptions.mdx and 5.6/cli/command_ref/pgd_show-subscriptions.mdx differ
Files 5/cli/command_ref/pgd_show-version.mdx and 5.6/cli/command_ref/pgd_show-version.mdx differ
Files 5/cli/command_ref/pgd_switchover.mdx and 5.6/cli/command_ref/pgd_switchover.mdx differ
Files 5/cli/command_ref/pgd_verify-cluster.mdx and 5.6/cli/command_ref/pgd_verify-cluster.mdx differ
Files 5/cli/command_ref/pgd_verify-settings.mdx and 5.6/cli/command_ref/pgd_verify-settings.mdx differ
Files 5/cli/index.mdx and 5.6/cli/index.mdx differ
Files 5/cli/installing/index.mdx and 5.6/cli/installing/index.mdx differ
Only in 5.6: commit-scopes
Files 5/compatibility.mdx and 5.6/compatibility.mdx differ
Only in 5.6: conflict-management
Only in 5: consistency
Files 5/ddl/ddl-command-handling.mdx and 5.6/ddl/ddl-command-handling.mdx differ
Files 5/ddl/ddl-locking.mdx and 5.6/ddl/ddl-locking.mdx differ
Files 5/ddl/ddl-managing-with-pgd-replication.mdx and 5.6/ddl/ddl-managing-with-pgd-replication.mdx differ
Files 5/ddl/ddl-overview.mdx and 5.6/ddl/ddl-overview.mdx differ
Files 5/ddl/ddl-pgd-functions-like-ddl.mdx and 5.6/ddl/ddl-pgd-functions-like-ddl.mdx differ
Files 5/ddl/ddl-replication-options.mdx and 5.6/ddl/ddl-replication-options.mdx differ
Files 5/ddl/ddl-role-manipulation.mdx and 5.6/ddl/ddl-role-manipulation.mdx differ
Files 5/ddl/ddl-workarounds.mdx and 5.6/ddl/ddl-workarounds.mdx differ
Only in 5.6: decoding_worker.mdx
Only in 5/deploy-config: deploy-biganimal
Only in 5.6/deploy-config: deploy-cloudservice
Files 5/deploy-config/deploy-kubernetes/index.mdx and 5.6/deploy-config/deploy-kubernetes/index.mdx differ
Files 5/deploy-config/deploy-manual/deploying/01-provisioning-hosts.mdx and 5.6/deploy-config/deploy-manual/deploying/01-provisioning-hosts.mdx differ
Files 5/deploy-config/deploy-manual/deploying/02-install-postgres.mdx and 5.6/deploy-config/deploy-manual/deploying/02-install-postgres.mdx differ
Files 5/deploy-config/deploy-manual/deploying/03-configuring-repositories.mdx and 5.6/deploy-config/deploy-manual/deploying/03-configuring-repositories.mdx differ
Files 5/deploy-config/deploy-manual/deploying/04-installing-software.mdx and 5.6/deploy-config/deploy-manual/deploying/04-installing-software.mdx differ
Files 5/deploy-config/deploy-manual/deploying/05-creating-cluster.mdx and 5.6/deploy-config/deploy-manual/deploying/05-creating-cluster.mdx differ
Files 5/deploy-config/deploy-manual/deploying/06-check-cluster.mdx and 5.6/deploy-config/deploy-manual/deploying/06-check-cluster.mdx differ
Files 5/deploy-config/deploy-manual/deploying/07-configure-proxies.mdx and 5.6/deploy-config/deploy-manual/deploying/07-configure-proxies.mdx differ
Files 5/deploy-config/deploy-manual/deploying/08-using-pgd-cli.mdx and 5.6/deploy-config/deploy-manual/deploying/08-using-pgd-cli.mdx differ
Files 5/deploy-config/deploy-manual/deploying/index.mdx and 5.6/deploy-config/deploy-manual/deploying/index.mdx differ
Files 5/deploy-config/deploy-tpa/deploying/01-configuring.mdx and 5.6/deploy-config/deploy-tpa/deploying/01-configuring.mdx differ
Files 5/deploy-config/deploy-tpa/deploying/02-deploying.mdx and 5.6/deploy-config/deploy-tpa/deploying/02-deploying.mdx differ
Files 5/deploy-config/deploy-tpa/deploying/index.mdx and 5.6/deploy-config/deploy-tpa/deploying/index.mdx differ
Files 5/deploy-config/deploy-tpa/index.mdx and 5.6/deploy-config/deploy-tpa/index.mdx differ
Files 5/deploy-config/index.mdx and 5.6/deploy-config/index.mdx differ
Only in 5: durability
Files 5/index.mdx and 5.6/index.mdx differ
Files 5/known_issues.mdx and 5.6/known_issues.mdx differ
Files 5/monitoring/sql.mdx and 5.6/monitoring/sql.mdx differ
Files 5/node_management/creating_and_joining.mdx and 5.6/node_management/creating_and_joining.mdx differ
Only in 5.6/node_management: creating_nodes.mdx
Only in 5/node_management: decoding_worker.mdx
Files 5/node_management/groups_and_subgroups.mdx and 5.6/node_management/groups_and_subgroups.mdx differ
Files 5/node_management/heterogeneous_clusters.mdx and 5.6/node_management/heterogeneous_clusters.mdx differ
Files 5/node_management/index.mdx and 5.6/node_management/index.mdx differ
Only in 5/node_management: logical_standby_nodes.mdx
Files 5/node_management/maintainance_with_proxies.mdx and 5.6/node_management/maintainance_with_proxies.mdx differ
Files 5/node_management/node_recovery.mdx and 5.6/node_management/node_recovery.mdx differ
Only in 5/node_management: node_types.mdx
Files 5/node_management/removing_nodes_and_groups.mdx and 5.6/node_management/removing_nodes_and_groups.mdx differ
Files 5/node_management/replication_slots.mdx and 5.6/node_management/replication_slots.mdx differ
Only in 5/node_management: subscriber_only.mdx
Files 5/node_management/viewing_topology.mdx and 5.6/node_management/viewing_topology.mdx differ
Only in 5/node_management: witness_nodes.mdx
Only in 5.6: nodes
Only in 5.6/overview: architecture-and-performance.mdx
Only in 5.6/overview: basic-architecture.mdx
Only in 5.6/overview: compared.mdx
Files 5/overview/index.mdx and 5.6/overview/index.mdx differ
Files 5/parallelapply.mdx and 5.6/parallelapply.mdx differ
Files 5/planning/architectures.mdx and 5.6/planning/architectures.mdx differ
Files 5/planning/choosing_server.mdx and 5.6/planning/choosing_server.mdx differ
Files 5/planning/deployments.mdx and 5.6/planning/deployments.mdx differ
Files 5/planning/limitations.mdx and 5.6/planning/limitations.mdx differ
Files 5/planning/other_considerations.mdx and 5.6/planning/other_considerations.mdx differ
Files 5/postgres-configuration.mdx and 5.6/postgres-configuration.mdx differ
Files 5/quickstart/connecting_applications.mdx and 5.6/quickstart/connecting_applications.mdx differ
Files 5/quickstart/further_explore_conflicts.mdx and 5.6/quickstart/further_explore_conflicts.mdx differ
Files 5/quickstart/quick_start_aws.mdx and 5.6/quickstart/quick_start_aws.mdx differ
Files 5/quickstart/quick_start_cloud.mdx and 5.6/quickstart/quick_start_cloud.mdx differ
Files 5/quickstart/quick_start_docker.mdx and 5.6/quickstart/quick_start_docker.mdx differ
Files 5/quickstart/quick_start_linux.mdx and 5.6/quickstart/quick_start_linux.mdx differ
Files 5/reference/autopartition.mdx and 5.6/reference/autopartition.mdx differ
Files 5/reference/catalogs-internal.mdx and 5.6/reference/catalogs-internal.mdx differ
Files 5/reference/catalogs-visible.mdx and 5.6/reference/catalogs-visible.mdx differ
Files 5/reference/commit-scopes.mdx and 5.6/reference/commit-scopes.mdx differ
Files 5/reference/conflict_functions.mdx and 5.6/reference/conflict_functions.mdx differ
Files 5/reference/conflicts.mdx and 5.6/reference/conflicts.mdx differ
Files 5/reference/functions-internal.mdx and 5.6/reference/functions-internal.mdx differ
Files 5/reference/functions.mdx and 5.6/reference/functions.mdx differ
Files 5/reference/index.json and 5.6/reference/index.json differ
Files 5/reference/index.mdx and 5.6/reference/index.mdx differ
Files 5/reference/nodes-management-interfaces.mdx and 5.6/reference/nodes-management-interfaces.mdx differ
Files 5/reference/nodes.mdx and 5.6/reference/nodes.mdx differ
Files 5/reference/pgd-settings.mdx and 5.6/reference/pgd-settings.mdx differ
Files 5/reference/sequences.mdx and 5.6/reference/sequences.mdx differ
Files 5/reference/streamtriggers/rowfunctions.mdx and 5.6/reference/streamtriggers/rowfunctions.mdx differ
Only in 5.6/rel_notes: .DS_Store
Files 5/rel_notes/index.mdx and 5.6/rel_notes/index.mdx differ
Only in 5/rel_notes: pgd_5.0.0_rel_notes.mdx
Only in 5/rel_notes: pgd_5.0.1_rel_notes.mdx
Only in 5/rel_notes: pgd_5.1.0_rel_notes.mdx
Only in 5/rel_notes: pgd_5.2.0_rel_notes.mdx
Only in 5/rel_notes: pgd_5.3.0_rel_notes.mdx
Only in 5/rel_notes: pgd_5.4.0_rel_notes.mdx
Only in 5/rel_notes: pgd_5.4.1_rel_notes.mdx
Only in 5/rel_notes: pgd_5.5.0_rel_notes.mdx
Only in 5/rel_notes: pgd_5.5.1_rel_notes.mdx
Only in 5.6/rel_notes: pgd_5.6.0_rel_notes.mdx
Only in 5.6/rel_notes: pgd_5.6.1_rel_notes.mdx
Only in 5.6/rel_notes: src
Files 5/repsets.mdx and 5.6/repsets.mdx differ
Files 5/routing/administering.mdx and 5.6/routing/administering.mdx differ
Files 5/routing/configuration.mdx and 5.6/routing/configuration.mdx differ
Files 5/routing/index.mdx and 5.6/routing/index.mdx differ
Files 5/routing/monitoring.mdx and 5.6/routing/monitoring.mdx differ
Files 5/routing/proxy.mdx and 5.6/routing/proxy.mdx differ
Files 5/scaling.mdx and 5.6/scaling.mdx differ
Files 5/security/pgd-predefined-roles.mdx and 5.6/security/pgd-predefined-roles.mdx differ
Files 5/security/role-management.mdx and 5.6/security/role-management.mdx differ
Files 5/security/roles.mdx and 5.6/security/roles.mdx differ
Files 5/sequences.mdx and 5.6/sequences.mdx differ
Files 5/terminology.mdx and 5.6/terminology.mdx differ
Files 5/testingandtuning.mdx and 5.6/testingandtuning.mdx differ
Files 5/transaction-streaming.mdx and 5.6/transaction-streaming.mdx differ
Files 5/twophase.mdx and 5.6/twophase.mdx differ
Files 5/upgrades/compatibility.mdx and 5.6/upgrades/compatibility.mdx differ
Files 5/upgrades/manual_overview.mdx and 5.6/upgrades/manual_overview.mdx differ
Files 5/upgrades/upgrade_paths.mdx and 5.6/upgrades/upgrade_paths.mdx differ
Files 5/upgrades/upgrading_major_rolling.mdx and 5.6/upgrades/upgrading_major_rolling.mdx differ

-----------------------

Only in 5.6: .DS_Store
diff -r 5/appusage/behavior.mdx 5.6/appusage/behavior.mdx
59c59
Expand Down
11 changes: 9 additions & 2 deletions src/components/left-nav.js
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,7 @@ const SectionHeadingWithVersions = ({
versionArray,
iconName,
product,
preciseVersion,
hideVersion,
}) => {
return (
Expand All @@ -72,8 +73,12 @@ const SectionHeadingWithVersions = ({
{navTree.title}
</Link>
{!navTree.hideVersion && versionArray.length > 1 ? (
<div>
<VersionDropdown versionArray={versionArray} path={path} />
<div style={{ "white-space": "nowrap" }}>
<VersionDropdown
versionArray={versionArray}
preciseVersion={preciseVersion}
path={path}
/>
</div>
) : !navTree.hideVersion ? (
<div className="text-muted">Version {versionArray[0].version}</div>
Expand All @@ -94,6 +99,7 @@ const LeftNav = ({
hideEmptySections = false,
hideVersion = false,
hidePDF = false,
preciseVersion,
}) => {
return (
<ul className="list-unstyled mt-0">
Expand All @@ -105,6 +111,7 @@ const LeftNav = ({
iconName={iconName}
product={product}
hideVersion={hideVersion}
preciseVersion={preciseVersion}
/>
) : (
<SectionHeading
Expand Down
20 changes: 17 additions & 3 deletions src/components/version-dropdown.js
Original file line number Diff line number Diff line change
Expand Up @@ -8,13 +8,24 @@ const DropdownItem = ({ to, active, children }) => (
</Link>
);

const VersionDropdown = ({ versionArray, pathVersions, path }) => {
const VersionDropdown = ({
versionArray,
pathVersions,
preciseVersion,
path,
}) => {
const activeVersion = path.split("/")[2];
let roundedVersion = "";
if (!preciseVersion) {
roundedVersion = activeVersion;
} else {
roundedVersion = preciseVersion.split(".")[0];
}

return (
<Dropdown>
<Dropdown.Toggle variant="outline-primary" size="sm">
Version {activeVersion}&nbsp;
Version {preciseVersion ? preciseVersion : activeVersion}&nbsp;
{
// must be a better way to get space between the text and caret
}
Expand All @@ -27,7 +38,10 @@ const VersionDropdown = ({ versionArray, pathVersions, path }) => {
key={version.url}
active={activeVersion === version.version}
>
Version {version.version}
Version {version.version}{" "}
{version.version == roundedVersion && preciseVersion
? `(${preciseVersion})`
: ""}
</DropdownItem>
))}
</Dropdown.Menu>
Expand Down
4 changes: 4 additions & 0 deletions src/templates/doc.js
Original file line number Diff line number Diff line change
Expand Up @@ -150,6 +150,7 @@ const DocTemplate = ({ data, pageContext }) => {
navTree,
prevNext,
} = pageContext;

const navRoot = findDescendent(navTree, (n) => n.path === pagePath);
const versionArray = makeVersionArray(
versions,
Expand Down Expand Up @@ -226,6 +227,8 @@ const DocTemplate = ({ data, pageContext }) => {
? frontmatter.showInteractiveBadge
: !!katacodaPanel;

let preciseVersion = frontmatter.preciseVersion;

return (
<Layout pageMeta={pageMeta} katacodaPanelData={katacodaPanel}>
<Container fluid className="p-0 d-flex bg-white">
Expand All @@ -240,6 +243,7 @@ const DocTemplate = ({ data, pageContext }) => {
hidePDF={hidePDF}
product={product}
version={version}
preciseVersion={preciseVersion}
/>
</SideNavigation>
<MainContent searchProduct={product} searchVersion={version}>
Expand Down

0 comments on commit 34d82c5

Please sign in to comment.