diff --git a/components/layouts/globalTemplate.js b/components/layouts/globalTemplate.js
index 12361fe1a..2eb1a2e44 100644
--- a/components/layouts/globalTemplate.js
+++ b/components/layouts/globalTemplate.js
@@ -1,6 +1,6 @@
import React, { useState, useEffect } from "react";
import Header from "../navigation/header";
-import ChatSticky from "../navigation/chatSticky";
+import Assistant from "../utilities/assistant";
import styles from "./globalTemplate.module.css";
@@ -26,7 +26,7 @@ const Layout = ({ children }) => {
© {new Date().getFullYear()} Snowflake Inc.
+
);
}
diff --git a/components/utilities/cookieSettingsModal.module.css b/components/utilities/cookieSettingsModal.module.css
index 825ba029a..0bc9feebb 100644
--- a/components/utilities/cookieSettingsModal.module.css
+++ b/components/utilities/cookieSettingsModal.module.css
@@ -2,6 +2,10 @@
@apply text-gray-90 grid grid-cols-1 gap-4 text-base leading-loose;
}
+.Content {
+ @apply overflow-y-auto;
+}
+
.Container h1,
.Container h2,
.Container h3,
diff --git a/components/utilities/kapa.js b/components/utilities/kapa.js
deleted file mode 100644
index 31ebafe8e..000000000
--- a/components/utilities/kapa.js
+++ /dev/null
@@ -1,67 +0,0 @@
-import styles from "./kapa.module.css";
-
-const Kapa = () => {
- const showTooltip = () => {
- let tips = document.getElementsByClassName(styles.Tooltip);
- if (tips.length > 0) {
- tips[0].style.display = "block";
- }
- };
-
- const hideTooltip = () => {
- let tips = document.getElementsByClassName(styles.Tooltip);
- if (tips.length > 0) {
- tips[0].style.display = "none";
- }
- };
- let kapaWidget = (
-
-
-
- forum Ask AI
-
- {/*
-
Try our new docs assistant!
-
*/}
-
-
-
- );
-
- return kapaWidget;
-};
-
-export default Kapa;
diff --git a/components/utilities/kapaModal.css b/components/utilities/kapaModal.css
deleted file mode 100644
index ed2d91488..000000000
--- a/components/utilities/kapaModal.css
+++ /dev/null
@@ -1,128 +0,0 @@
-.mantine-Modal-overlay {
- background-color: rgba(166, 168, 184, 0.6) !important;
-}
-
-.mantine-Paper-root {
- @apply bg-white dark:bg-gray-90;
-}
-
-.mantine-Modal-header,
-.mantine-Modal-header h3 {
- @apply bg-white dark:bg-gray-90 text-gray-90 dark:text-gray-40 border-b-0 font-normal tracking-wide;
-}
-
-.mantine-Modal-header > .mantine-Group-root:first-child .mantine-Image-root {
- @apply hidden;
-}
-
-.mantine-Modal-body,
-.mantine-Modal-body a,
-.mantine-Modal-body .mantine-List-root,
-.mantine-Modal-body .mantine-List-item {
- @apply bg-white dark:bg-gray-90;
- @apply text-gray-90 dark:text-gray-40;
-}
-
-.mantine-Paper-root
- > .mantine-Modal-body
- > .mantine-Modal-body
- > div:first-child
- > div:first-child:has(.mantine-Text-root) {
- @apply bg-gray-20 dark:bg-gray-80;
-}
-
-.mantine-Paper-root
- > .mantine-Modal-body
- > .mantine-Modal-body
- > div:first-child
- > div:first-child
- .mantine-Text-root {
- @apply text-gray-70 dark:text-gray-50;
-}
-
-.mantine-Group-root button {
- @apply text-gray-70;
-}
-
-.mantine-Group-root button:hover {
- @apply bg-gray-20 dark:bg-gray-80;
-}
-
-.mantine-Input-input {
- @apply bg-white dark:bg-gray-90 border-gray-70 focus:border-orange-70 text-gray-90 dark:text-gray-40;
-}
-
-.mantine-Input-rightSection > .mantine-Group-root > .mantine-ActionIcon-root {
- @apply bg-white dark:bg-gray-90 border-none text-orange-70 !important;
-}
-
-.mantine-Input-rightSection
- > .mantine-Group-root
- > .mantine-ActionIcon-root
- svg {
- @apply scale-150 hover:scale-[1.6];
-}
-
-.mantine-Code-root {
- @apply bg-transparent border border-gray-40 dark:border-gray-80 rounded-md text-red-70 px-1 mx-1;
-}
-
-.mantine-Grid-root .mantine-Grid-col a {
- @apply border-gray-20 dark:border-gray-80 bg-transparent;
-}
-
-.mantine-Grid-root .mantine-Grid-col a:hover {
- @apply bg-gray-20 dark:bg-gray-80;
-}
-
-.mantine-Grid-root .mantine-Grid-col div {
- @apply text-gray-90 dark:text-gray-40;
-}
-
-.mantine-Grid-root .mantine-Grid-col div.mantine-Tooltip-tooltip {
- @apply bg-gray-80 dark:bg-gray-20 text-gray-50 dark:text-gray-70;
-}
-
-.mantine-Popover-dropdown,
-.mantine-Popover-arrow {
- @apply bg-white dark:bg-gray-90 text-gray-90 dark:text-gray-40;
-}
-
-.mantine-Popover-dropdown .mantine-Button-root {
- @apply text-white;
-}
-
-.mantine-Popover-dropdown h5 {
- @apply text-gray-90 dark:text-gray-40;
-}
-
-.mantine-Checkbox-input {
- @apply bg-gray-20 dark:bg-gray-80 border-gray-70;
-}
-
-.mantine-Checkbox-label {
- @apply text-gray-90 dark:text-gray-40;
-}
-
-.mantine-Paper-root
- > .mantine-Modal-body
- > .mantine-Modal-body
- > div:last-child {
- @apply text-gray-70;
-}
-
-.mantine-Paper-root
- > .mantine-Modal-body
- > .mantine-Modal-body
- > div:last-child
- a {
- @apply text-gray-70;
-}
-
-.mantine-Button-icon:has(.tabler-icon-player-stop) {
- @apply hidden;
-}
-
-.mantine-Button-root:has(.tabler-icon-player-stop) {
- @apply py-0 px-4;
-}
diff --git a/content/cookie-settings.md b/content/cookie-settings.md
index b422adc73..94268f1df 100644
--- a/content/cookie-settings.md
+++ b/content/cookie-settings.md
@@ -2,8 +2,6 @@
visible: false
---
-### Cookie settings
-
##### Strictly necessary cookies
These cookies are necessary for the website to function and cannot be switched off. They are usually only set in response to actions made by you which amount to a request for services, such as setting your privacy preferences, logging in or filling in forms.
diff --git a/netlify.toml b/netlify.toml
index 287030946..9222f6e4a 100644
--- a/netlify.toml
+++ b/netlify.toml
@@ -25,7 +25,6 @@ connect-src \
https://px.ads.linkedin.com/ \
https://*.algolia.net/ \
https://*.algolianet.com/ \
- https://kapa-widget-proxy-la7dkmplpq-uc.a.run.app/ \
; \
default-src 'none' ; \
font-src 'self' ; \
@@ -54,10 +53,6 @@ script-src \
https://connect.facebook.net/ \
https://*.algolia.net/ \
https://*.algolianet.com/ \
- https://widget.kapa.ai/kapa-widget.bundle.js \
- https://www.google.com/recaptcha/api.js \
- https://www.gstatic.com/recaptcha/releases/ \
- https://www.google.com/recaptcha/enterprise.js \
; \
style-src \
'self' \
diff --git a/next.config.js b/next.config.js
index 525b6f3ab..b695a6206 100644
--- a/next.config.js
+++ b/next.config.js
@@ -1,5 +1,15 @@
const IS_DEV = process.env.NODE_ENV === "development";
+const PROD_OPTIMIZATIONS = IS_DEV
+ ? {}
+ : {
+ experimental: {
+ workerThreads: true,
+ cpus: 2,
+ sharedPool: true,
+ },
+ };
+
// IMPORTANT: Keep this in sync with netlify.toml
// prettier-ignore
const CSP_HEADER = [
@@ -23,11 +33,6 @@ const CSP_HEADER = [
"https://px.ads.linkedin.com/", // LinkedIn ad pixel
"https://*.algolia.net/", // Search
"https://*.algolianet.com/", // Search
- "https://widget.kapa.ai/kapa-widget.bundle.js", // Kapa.ai
- "https://kapa-widget-proxy-la7dkmplpq-uc.a.run.app/", // Kapa.ai
- "https://www.google.com/recaptcha/api.js", // Recaptcha for Kapa.ai
- "https://www.gstatic.com/recaptcha/releases/", // Recaptchas for Kapa.ai
- "https://www.google.com/recaptcha/enterprise.js", // Recaptchas for Kapa.ai
";",
"default-src 'none';",
"font-src 'self';",
@@ -56,11 +61,6 @@ const CSP_HEADER = [
"https://connect.facebook.net/", // Facebook ad pixel
"https://*.algolia.net/", // Search
"https://*.algolianet.com/", // Search
- "https://widget.kapa.ai/kapa-widget.bundle.js", // Kapa.ai
- "https://kapa-widget-proxy-la7dkmplpq-uc.a.run.app/", // Kapa.ai
- "https://www.google.com/recaptcha/api.js", // Recaptcha for Kapa.ai
- "https://www.gstatic.com/recaptcha/releases/", // Recaptchas for Kapa.ai
- "https://www.google.com/recaptcha/enterprise.js", // Recaptchas for Kapa.ai
";",
"style-src",
"'self'",
@@ -75,6 +75,8 @@ const CSP_HEADER = [
module.exports = {
output: "export",
+ ...PROD_OPTIMIZATIONS,
+
webpack: (configuration) => {
// Don't try to polyfill the fs module.
configuration.resolve.fallback = { fs: false };
diff --git a/pages/_app.js b/pages/_app.js
index 0eb7a1725..924745a84 100644
--- a/pages/_app.js
+++ b/pages/_app.js
@@ -2,7 +2,6 @@ import { debounce } from "lodash";
import "../styles/globals.css";
import "../components/utilities/searchModal.css";
-import "../components/utilities/kapaModal.css";
import "../styles/main.scss";
import "../public/fonts/styles.css";