text: new Crawler({
    appId: "",
    apiKey: "",
    rateLimit: 8,
    startUrls: ["https://v3.vuejs.org/"],
    renderJavaScript: false,
    sitemaps: [],
    exclusionPatterns: ["**/**^((?!.html).)*"],
    ignoreCanonicalTo: false,
    discoveryPatterns: ["https://v3.vuejs.org/**"],
    schedule: "at 05:40 on Saturday",
    actions: [
      {
        indexName: "vuejs-v3",
        pathsToMatch: ["https://v3.vuejs.org/**"],
        recordExtractor: ({ $, helpers }) => {
          // Removing DOM elements we don't want to crawl
          const toRemove = "h1 + blockquote";
          $(toRemove).remove();
  
          return helpers.docsearch({
            recordProps: {
              lvl1: ".content__default h1",
              content: ".content__default p, .content__default li",
              lvl0: {
                selectors:
                  ".depth-0 > .sidebar-heading.open > span, aside > .sidebar-links > li > .active",
                defaultValue: "Documentation",
              },
              lvl2: ".content__default h2",
              lvl3: ".content__default h3",
              lvl4: ".content__default h4",
              lvl5: ".content__default h5",
              lvl6: ".content__default h6",
            },
            indexHeadings: true,
          });
        },
      },
    ],
    initialIndexSettings: {
      "vuejs-v3": {
        attributesForFaceting: ["type", "lang", "language"],
        attributesToRetrieve: [
          "hierarchy",
          "content",
          "anchor",
          "url",
          "url_without_anchor",
          "type",
        ],
        attributesToHighlight: ["hierarchy", "hierarchy_camel", "content"],
        attributesToSnippet: ["content:10"],
        camelCaseAttributes: ["hierarchy", "hierarchy_radio", "content"],
        searchableAttributes: [
          "unordered(hierarchy_radio_camel.lvl0)",
          "unordered(hierarchy_radio.lvl0)",
          "unordered(hierarchy_radio_camel.lvl1)",
          "unordered(hierarchy_radio.lvl1)",
          "unordered(hierarchy_radio_camel.lvl2)",
          "unordered(hierarchy_radio.lvl2)",
          "unordered(hierarchy_radio_camel.lvl3)",
          "unordered(hierarchy_radio.lvl3)",
          "unordered(hierarchy_radio_camel.lvl4)",
          "unordered(hierarchy_radio.lvl4)",
          "unordered(hierarchy_radio_camel.lvl5)",
          "unordered(hierarchy_radio.lvl5)",
          "unordered(hierarchy_radio_camel.lvl6)",
          "unordered(hierarchy_radio.lvl6)",
          "unordered(hierarchy_camel.lvl0)",
          "unordered(hierarchy.lvl0)",
          "unordered(hierarchy_camel.lvl1)",
          "unordered(hierarchy.lvl1)",
          "unordered(hierarchy_camel.lvl2)",
          "unordered(hierarchy.lvl2)",
          "unordered(hierarchy_camel.lvl3)",
          "unordered(hierarchy.lvl3)",
          "unordered(hierarchy_camel.lvl4)",
          "unordered(hierarchy.lvl4)",
          "unordered(hierarchy_camel.lvl5)",
          "unordered(hierarchy.lvl5)",
          "unordered(hierarchy_camel.lvl6)",
          "unordered(hierarchy.lvl6)",
          "content",
        ],
        distinct: true,
        attributeForDistinct: "url",
        customRanking: [
          "desc(weight.pageRank)",
          "desc(weight.level)",
          "asc(weight.position)",
        ],
        ranking: [
          "words",
          "filters",
          "typo",
          "attribute",
          "proximity",
          "exact",
          "custom",
        ],
        highlightPreTag: '<span class="algolia-docsearch-suggestion--highlight">',
        highlightPostTag: "</span>",
        minWordSizefor1Typo: 3,
        minWordSizefor2Typos: 7,
        allowTyposOnNumericTokens: false,
        minProximity: 1,
        ignorePlurals: true,
        advancedSyntax: true,
        attributeCriteriaComputedByMinProximity: true,
        removeWordsIfNoResults: "allOptional",
      },
    },
  });