github.com/Jeffail/benthos/v3@v3.65.0/website/src/plugins/redirects/index.js (about)

     1  const {docuHash} = require('@docusaurus/utils');
     2  
     3  const redirects = [
     4    ["/docs/", "/docs/about", false],
     5    ["/buffers", "/docs/components/buffers/", true],
     6    ["/caches", "/docs/components/caches/", true],
     7    ["/conditions", "/docs/components/conditions/", true],
     8    ["/inputs", "/docs/components/inputs/", true],
     9    ["/logger", "/docs/components/logger/about", false],
    10    ["/metrics", "/docs/components/metrics/", true],
    11    ["/outputs", "/docs/components/outputs/", true],
    12    ["/processors", "/docs/components/processors/", true],
    13    ["/rate_limits", "/docs/components/rate_limits/", true],
    14    ["/tracers", "/docs/components/tracers/", true],
    15    ["/examples/kafka-delayed-retry", "/cookbooks/joining-streams#adding-a-retry-queue", false],
    16    ["/getting_started", "/docs/guides/getting_started", false],
    17    ["/serverless", "/docs/guides/serverless/about", false],
    18    ["/configuration", "/docs/configuration/about", false],
    19    ["/configuration_testing", "/docs/configuration/unit_testing", false],
    20    ["/config_interpolation", "/docs/configuration/interpolation", false],
    21    ["/pipeline", "/docs/configuration/processing_pipelines", false],
    22    ["/batching", "/docs/configuration/batching", false],
    23    ["/error_handling", "/docs/configuration/error_handling", false],
    24    ["/performance_tuning", "/docs/guides/performance_tuning", false],
    25    ["/monitoring", "/docs/guides/monitoring", false],
    26    ["/sync_responses", "/docs/guides/sync_responses", false],
    27    ["/workflows", "/docs/configuration/workflows", false],
    28    ["/streams", "/docs/guides/streams_mode/about", false],
    29    ["/docs/configuration/workflows", "/docs/components/processors/workflow", false],
    30    ["/docs/guides/aws", "/docs/guides/cloud/aws", false],
    31    ["/docs/guides/gcp", "/docs/guides/cloud/gcp", false],
    32  ];
    33  
    34  module.exports = function() {
    35    return {
    36      name: 'docusaurus-plugin',
    37      async contentLoaded({actions}) {
    38        const {addRoute, createData} = actions;
    39  
    40        await Promise.all(
    41          redirects.map(async redirect => {
    42            const dest = JSON.stringify({to: redirect[1], forComponent: redirect[2]});
    43            const destPath = await createData(`${docuHash(redirect[0])}.json`, dest);
    44  
    45            addRoute({
    46              path: redirect[0],
    47              component: '@site/src/exports/redirect.js',
    48              modules: {
    49                dest: destPath,
    50              },
    51              exact: true,
    52            });
    53          }),
    54        );
    55      },
    56    };
    57  };