diff --git a/i18n/en/code.json b/i18n/en/code.json index 53694cf3f7..322c22afb7 100644 --- a/i18n/en/code.json +++ b/i18n/en/code.json @@ -261,6 +261,33 @@ "home_page.categories": { "message": "Categories" }, + "home_page.select_platform": { + "message": "Select platform" + }, + "home_page.select_platform_2": { + "message": "Get documentation based on the AI Unlimited platform." + }, + "home_page.edition_cloud": { + "message": "Cloud Service Provider" + }, + "home_page.edition_ms_fabric": { + "message": "Microsoft Fabric" + }, + "home_page.description.get_started":{ + "message": "Find the AI Unlimited Workload in Fabric, and prepare a notebook for trying your first use case." + }, + "home_page.ms_fabric_use_case": { + "message": "Try the use case" + }, + "home_page.description.use_cases":{ + "message": "Try the data preparation use case to start. Later you can try the financial customer journey and user segmentation use cases." + }, + "home_page.ms_fabric_analytic_function": { + "message": "Analytic functions" + }, + "home_page.description.analytic_function":{ + "message": "Review our full list of in-database analytics with links to resources on how to use them." + }, "home_page.featured_event": { "message": "Featured event" }, @@ -569,5 +596,8 @@ }, "theme.docs.breadcrumbs.home": { "message": "Home page" + }, + "fabric.subjeting": { + "message": "Microsoft Fabric" } } diff --git a/package-lock.json b/package-lock.json index 1736808d1c..1811520ae1 100644 --- a/package-lock.json +++ b/package-lock.json @@ -15,11 +15,12 @@ "@docusaurus/preset-classic": "3.2.0", "@docusaurus/theme-mermaid": "3.2.0", "@mdx-js/react": "^3.0.0", - "@teradata-web/react-components": "^1.12.3", + "@teradata-web/react-components": "^1.14.0", "clsx": "^2.0.0", "prism-react-renderer": "^2.3.0", "react": "^18.0.0", "react-dom": "^18.0.0", + "react-select": "^5.9.0", "redocusaurus": "^2.1.1" }, "devDependencies": { @@ -5689,6 +5690,74 @@ "node": ">=18.0" } }, + "node_modules/@emotion/babel-plugin": { + "version": "11.13.5", + "resolved": "https://registry.npmjs.org/@emotion/babel-plugin/-/babel-plugin-11.13.5.tgz", + "integrity": "sha512-pxHCpT2ex+0q+HH91/zsdHkw/lXd468DIN2zvfvLtPKLLMo6gQj7oLObq8PhkrxOZb/gGCq03S3Z7PDhS8pduQ==", + "dependencies": { + "@babel/helper-module-imports": "^7.16.7", + "@babel/runtime": "^7.18.3", + "@emotion/hash": "^0.9.2", + "@emotion/memoize": "^0.9.0", + "@emotion/serialize": "^1.3.3", + "babel-plugin-macros": "^3.1.0", + "convert-source-map": "^1.5.0", + "escape-string-regexp": "^4.0.0", + "find-root": "^1.1.0", + "source-map": "^0.5.7", + "stylis": "4.2.0" + } + }, + "node_modules/@emotion/babel-plugin/node_modules/@emotion/memoize": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.9.0.tgz", + "integrity": "sha512-30FAj7/EoJ5mwVPOWhAyCX+FPfMDrVecJAM+Iw9NRoSl4BBAQeqj4cApHHUXOVvIPgLVDsCFoz/hGD+5QQD1GQ==" + }, + "node_modules/@emotion/babel-plugin/node_modules/convert-source-map": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==" + }, + "node_modules/@emotion/babel-plugin/node_modules/source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@emotion/babel-plugin/node_modules/stylis": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.2.0.tgz", + "integrity": "sha512-Orov6g6BB1sDfYgzWfTHDOxamtX1bE/zo104Dh9e6fqJ3PooipYyfJ0pUmrZO2wAvO8YbEyeFrkV91XTsGMSrw==" + }, + "node_modules/@emotion/cache": { + "version": "11.14.0", + "resolved": "https://registry.npmjs.org/@emotion/cache/-/cache-11.14.0.tgz", + "integrity": "sha512-L/B1lc/TViYk4DcpGxtAVbx0ZyiKM5ktoIyafGkH6zg/tj+mA+NE//aPYKG0k8kCHSHVJrpLpcAlOBEXQ3SavA==", + "dependencies": { + "@emotion/memoize": "^0.9.0", + "@emotion/sheet": "^1.4.0", + "@emotion/utils": "^1.4.2", + "@emotion/weak-memoize": "^0.4.0", + "stylis": "4.2.0" + } + }, + "node_modules/@emotion/cache/node_modules/@emotion/memoize": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.9.0.tgz", + "integrity": "sha512-30FAj7/EoJ5mwVPOWhAyCX+FPfMDrVecJAM+Iw9NRoSl4BBAQeqj4cApHHUXOVvIPgLVDsCFoz/hGD+5QQD1GQ==" + }, + "node_modules/@emotion/cache/node_modules/stylis": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.2.0.tgz", + "integrity": "sha512-Orov6g6BB1sDfYgzWfTHDOxamtX1bE/zo104Dh9e6fqJ3PooipYyfJ0pUmrZO2wAvO8YbEyeFrkV91XTsGMSrw==" + }, + "node_modules/@emotion/hash": { + "version": "0.9.2", + "resolved": "https://registry.npmjs.org/@emotion/hash/-/hash-0.9.2.tgz", + "integrity": "sha512-MyqliTZGuOm3+5ZRSaaBGP3USLw6+EGykkwZns2EPC5g8jJ4z9OrdZY9apkl3+UP9+sdz76YYkwCKP5gh8iY3g==" + }, "node_modules/@emotion/is-prop-valid": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-1.2.2.tgz", @@ -5702,16 +5771,106 @@ "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.8.1.tgz", "integrity": "sha512-W2P2c/VRW1/1tLox0mVUalvnWXxavmv/Oum2aPsRcoDJuob75FC3Y8FbpfLwUegRcxINtGUMPq0tFCvYNTBXNA==" }, + "node_modules/@emotion/react": { + "version": "11.14.0", + "resolved": "https://registry.npmjs.org/@emotion/react/-/react-11.14.0.tgz", + "integrity": "sha512-O000MLDBDdk/EohJPFUqvnp4qnHeYkVP5B0xEG0D/L7cOKP9kefu2DXn8dj74cQfsEzUqh+sr1RzFqiL1o+PpA==", + "dependencies": { + "@babel/runtime": "^7.18.3", + "@emotion/babel-plugin": "^11.13.5", + "@emotion/cache": "^11.14.0", + "@emotion/serialize": "^1.3.3", + "@emotion/use-insertion-effect-with-fallbacks": "^1.2.0", + "@emotion/utils": "^1.4.2", + "@emotion/weak-memoize": "^0.4.0", + "hoist-non-react-statics": "^3.3.1" + }, + "peerDependencies": { + "react": ">=16.8.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@emotion/serialize": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/@emotion/serialize/-/serialize-1.3.3.tgz", + "integrity": "sha512-EISGqt7sSNWHGI76hC7x1CksiXPahbxEOrC5RjmFRJTqLyEK9/9hZvBbiYn70dw4wuwMKiEMCUlR6ZXTSWQqxA==", + "dependencies": { + "@emotion/hash": "^0.9.2", + "@emotion/memoize": "^0.9.0", + "@emotion/unitless": "^0.10.0", + "@emotion/utils": "^1.4.2", + "csstype": "^3.0.2" + } + }, + "node_modules/@emotion/serialize/node_modules/@emotion/memoize": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.9.0.tgz", + "integrity": "sha512-30FAj7/EoJ5mwVPOWhAyCX+FPfMDrVecJAM+Iw9NRoSl4BBAQeqj4cApHHUXOVvIPgLVDsCFoz/hGD+5QQD1GQ==" + }, + "node_modules/@emotion/serialize/node_modules/@emotion/unitless": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.10.0.tgz", + "integrity": "sha512-dFoMUuQA20zvtVTuxZww6OHoJYgrzfKM1t52mVySDJnMSEa08ruEvdYQbhvyu6soU+NeLVd3yKfTfT0NeV6qGg==" + }, + "node_modules/@emotion/sheet": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@emotion/sheet/-/sheet-1.4.0.tgz", + "integrity": "sha512-fTBW9/8r2w3dXWYM4HCB1Rdp8NLibOw2+XELH5m5+AkWiL/KqYX6dc0kKYlaYyKjrQ6ds33MCdMPEwgs2z1rqg==" + }, "node_modules/@emotion/unitless": { "version": "0.8.1", "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.8.1.tgz", "integrity": "sha512-KOEGMu6dmJZtpadb476IsZBclKvILjopjUii3V+7MnXIQCYh8W3NgNcgwo21n9LXZX6EDIKvqfjYxXebDwxKmQ==" }, + "node_modules/@emotion/use-insertion-effect-with-fallbacks": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.2.0.tgz", + "integrity": "sha512-yJMtVdH59sxi/aVJBpk9FQq+OR8ll5GT8oWd57UpeaKEVGab41JWaCFA7FRLoMLloOZF/c/wsPoe+bfGmRKgDg==", + "peerDependencies": { + "react": ">=16.8.0" + } + }, + "node_modules/@emotion/utils": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/@emotion/utils/-/utils-1.4.2.tgz", + "integrity": "sha512-3vLclRofFziIa3J2wDh9jjbkUz9qk5Vi3IZ/FSTKViB0k+ef0fPV7dYrUIugbgupYDx7v9ud/SjrtEP8Y4xLoA==" + }, + "node_modules/@emotion/weak-memoize": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/@emotion/weak-memoize/-/weak-memoize-0.4.0.tgz", + "integrity": "sha512-snKqtPW01tN0ui7yu9rGv69aJXr/a/Ywvl11sUjNtEcRc+ng/mQriFL0wLXMef74iHa/EkftbDzU9F8iFbH+zg==" + }, "node_modules/@exodus/schemasafe": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/@exodus/schemasafe/-/schemasafe-1.3.0.tgz", "integrity": "sha512-5Aap/GaRupgNx/feGBwLLTVv8OQFfv3pq2lPRzPg9R+IOBnDgghTGW7l7EuVXOvg5cc/xSAlRW8rBrjIC3Nvqw==" }, + "node_modules/@floating-ui/core": { + "version": "1.6.8", + "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.6.8.tgz", + "integrity": "sha512-7XJ9cPU+yI2QeLS+FCSlqNFZJq8arvswefkZrYI1yQBbftw6FyrZOxYSh+9S7z7TpeWlRt9zJ5IhM1WIL334jA==", + "dependencies": { + "@floating-ui/utils": "^0.2.8" + } + }, + "node_modules/@floating-ui/dom": { + "version": "1.6.12", + "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.6.12.tgz", + "integrity": "sha512-NP83c0HjokcGVEMeoStg317VD9W7eDlGK7457dMBANbKA6GJZdc7rjujdgqzTaz93jkGgc5P/jeWbaCHnMNc+w==", + "dependencies": { + "@floating-ui/core": "^1.6.0", + "@floating-ui/utils": "^0.2.8" + } + }, + "node_modules/@floating-ui/utils": { + "version": "0.2.8", + "resolved": "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.2.8.tgz", + "integrity": "sha512-kym7SodPp8/wloecOpcmSnWJsK7M0E5Wg8UcFA+uO4B9s5d0ywXOEro/8HM9x0rW+TljRzul/14UYz3TleT3ig==" + }, "node_modules/@hapi/hoek": { "version": "9.3.0", "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-9.3.0.tgz", @@ -6352,9 +6511,9 @@ } }, "node_modules/@teradata-web/react-components": { - "version": "1.12.3", - "resolved": "https://registry.npmjs.org/@teradata-web/react-components/-/react-components-1.12.3.tgz", - "integrity": "sha512-t3lWmRFbP/dvDbAhFWGIrxnsMbZtSJA44JbXAiTnFpmL6tmJQhsqO0gTpRl+JwfEBJ964flu6pAvmdi+Q6GgRQ==" + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@teradata-web/react-components/-/react-components-1.14.1.tgz", + "integrity": "sha512-UfMHWlpAExNesLfcS9y224DPbMfVsT2/3a7qpGywOm9jQZ57H9i16mRVn0ylXmlnTOPaCGB+GVKfM7m56ShYVg==" }, "node_modules/@trysound/sax": { "version": "0.2.0", @@ -6654,6 +6813,14 @@ "@types/react-router": "*" } }, + "node_modules/@types/react-transition-group": { + "version": "4.4.12", + "resolved": "https://registry.npmjs.org/@types/react-transition-group/-/react-transition-group-4.4.12.tgz", + "integrity": "sha512-8TV6R3h2j7a91c+1DXdJi3Syo69zzIZbz7Lg5tORM5LEJG7X/E6a1V3drRyBRZq7/utz7A+c4OgYLiLcYGHG6w==", + "peerDependencies": { + "@types/react": "*" + } + }, "node_modules/@types/retry": { "version": "0.12.0", "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.0.tgz", @@ -7332,6 +7499,20 @@ "object.assign": "^4.1.0" } }, + "node_modules/babel-plugin-macros": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-3.1.0.tgz", + "integrity": "sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg==", + "dependencies": { + "@babel/runtime": "^7.12.5", + "cosmiconfig": "^7.0.0", + "resolve": "^1.19.0" + }, + "engines": { + "node": ">=10", + "npm": ">=6" + } + }, "node_modules/babel-plugin-polyfill-corejs2": { "version": "0.4.10", "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.10.tgz", @@ -9629,6 +9810,15 @@ "utila": "~0.4" } }, + "node_modules/dom-helpers": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/dom-helpers/-/dom-helpers-5.2.1.tgz", + "integrity": "sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA==", + "dependencies": { + "@babel/runtime": "^7.8.7", + "csstype": "^3.0.2" + } + }, "node_modules/dom-serializer": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", @@ -10554,6 +10744,11 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/find-root": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz", + "integrity": "sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==" + }, "node_modules/find-up": { "version": "6.3.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-6.3.0.tgz", @@ -13248,6 +13443,11 @@ "node": ">= 4.0.0" } }, + "node_modules/memoize-one": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/memoize-one/-/memoize-one-6.0.0.tgz", + "integrity": "sha512-rkpe71W0N0c0Xz6QD0eJETuWAJGnJ9afsl1srmwPrI+yBCkge5EycXXbYRyvL29zZVUWQCY7InPRCv3GDXuZNw==" + }, "node_modules/merge-descriptors": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", @@ -18564,6 +18764,26 @@ "react": ">=15" } }, + "node_modules/react-select": { + "version": "5.9.0", + "resolved": "https://registry.npmjs.org/react-select/-/react-select-5.9.0.tgz", + "integrity": "sha512-nwRKGanVHGjdccsnzhFte/PULziueZxGD8LL2WojON78Mvnq7LdAMEtu2frrwld1fr3geixg3iiMBIc/LLAZpw==", + "dependencies": { + "@babel/runtime": "^7.12.0", + "@emotion/cache": "^11.4.0", + "@emotion/react": "^11.8.1", + "@floating-ui/dom": "^1.0.1", + "@types/react-transition-group": "^4.4.0", + "memoize-one": "^6.0.0", + "prop-types": "^15.6.0", + "react-transition-group": "^4.3.0", + "use-isomorphic-layout-effect": "^1.2.0" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0", + "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" + } + }, "node_modules/react-shallow-renderer": { "version": "16.15.0", "resolved": "https://registry.npmjs.org/react-shallow-renderer/-/react-shallow-renderer-16.15.0.tgz", @@ -18588,6 +18808,21 @@ "react": "^18.0.0" } }, + "node_modules/react-transition-group": { + "version": "4.4.5", + "resolved": "https://registry.npmjs.org/react-transition-group/-/react-transition-group-4.4.5.tgz", + "integrity": "sha512-pZcd1MCJoiKiBR2NRxeCRg13uCXbydPnmB4EOeRrY7480qNWO8IIgQG6zlDkm6uRMsURXPuKq0GWtiM59a5Q6g==", + "dependencies": { + "@babel/runtime": "^7.5.5", + "dom-helpers": "^5.0.1", + "loose-envify": "^1.4.0", + "prop-types": "^15.6.2" + }, + "peerDependencies": { + "react": ">=16.6.0", + "react-dom": ">=16.6.0" + } + }, "node_modules/read-cache": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", @@ -21271,6 +21506,19 @@ "resolved": "https://registry.npmjs.org/url-template/-/url-template-2.0.8.tgz", "integrity": "sha512-XdVKMF4SJ0nP/O7XIPB0JwAEuT9lDIYnNsK8yGVe43y0AWoKeJNdv3ZNWh7ksJ6KqQFjOO6ox/VEitLnaVNufw==" }, + "node_modules/use-isomorphic-layout-effect": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/use-isomorphic-layout-effect/-/use-isomorphic-layout-effect-1.2.0.tgz", + "integrity": "sha512-q6ayo8DWoPZT0VdG4u3D3uxcgONP3Mevx2i2b0434cwWBoL+aelL1DzkXI6w3PhTZzUeR2kaVlZn70iCiseP6w==", + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, "node_modules/use-sync-external-store": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.2.2.tgz", diff --git a/package.json b/package.json index 6a156cb509..f7f4ac1d47 100644 --- a/package.json +++ b/package.json @@ -23,11 +23,12 @@ "@docusaurus/preset-classic": "3.2.0", "@docusaurus/theme-mermaid": "3.2.0", "@mdx-js/react": "^3.0.0", - "@teradata-web/react-components": "^1.12.3", + "@teradata-web/react-components": "^1.14.0", "clsx": "^2.0.0", "prism-react-renderer": "^2.3.0", "react": "^18.0.0", "react-dom": "^18.0.0", + "react-select": "^5.9.0", "redocusaurus": "^2.1.1" }, "devDependencies": { diff --git a/src/components/HomepageFeatures/Editions.js b/src/components/HomepageFeatures/Editions.js new file mode 100644 index 0000000000..9c2fd89b7e --- /dev/null +++ b/src/components/HomepageFeatures/Editions.js @@ -0,0 +1,19 @@ +import React from 'react'; +import { TabBar, Tab } from '@teradata-web/react-components'; +import { translate } from '@docusaurus/Translate'; +import Cloud from './cloud'; +import MicrosoftFabric from './MicrosoftFabric'; + +export default function Editions() { + return ( + + + + + + + + + + ); +} diff --git a/src/components/HomepageFeatures/MicrosoftFabric.js b/src/components/HomepageFeatures/MicrosoftFabric.js new file mode 100644 index 0000000000..f1bbc3ed13 --- /dev/null +++ b/src/components/HomepageFeatures/MicrosoftFabric.js @@ -0,0 +1,54 @@ +import clsx from 'clsx'; +import Heading from '@theme/Heading'; +import styles from './styles.module.css'; +import Link from '@docusaurus/Link'; +import { Typography } from '@teradata-web/react-components'; +import { translate } from '@docusaurus/Translate'; + +const FeatureList = [ + { + head: 'home_page.edition_ms_fabric', + title: 'home_page.get_started', + description: 'home_page.description.get_started', + href: '/ai-unlimited/fabric/get-started/', + }, + { + head: 'home_page.edition_ms_fabric', + title: 'home_page.ms_fabric_use_case', + description: 'home_page.description.use_cases', + href: '/ai-unlimited/fabric/first-use-case/', + }, + { + head: 'home_page.edition_ms_fabric', + title: 'home_page.ms_fabric_analytic_function', + description: 'home_page.description.analytic_function', + href: '/ai-unlimited/fabric/in-db-functions/', + }, +]; + + +function Feature({ head, title, description, href }) { + return ( + +
+ + {translate({ message: head })} + + {translate({ message: title })} + {description &&

{translate({ message: description })}

} +
+ + ); +} + +export default function MicrosoftFabric() { + return ( +
+
+ {FeatureList.map((props, idx) => ( + + ))} +
+
+ ); +} diff --git a/src/components/HomepageFeatures/cloud.js b/src/components/HomepageFeatures/cloud.js new file mode 100644 index 0000000000..d1047620aa --- /dev/null +++ b/src/components/HomepageFeatures/cloud.js @@ -0,0 +1,90 @@ +import clsx from 'clsx'; +import Heading from '@theme/Heading'; +import styles from './styles.module.css'; +import Link from '@docusaurus/Link'; +import { Card, Typography } from '@teradata-web/react-components'; +import { translate } from '@docusaurus/Translate'; + +const FeatureList = [ + { + head: 'home_page.edition_cloud', + title: 'home_page.get_started', + description: 'feature.description.get_started', + href: 'install-ai-unlimited/', + }, + { + head: 'home_page.edition_cloud', + title: 'feature.title.sample_use_cases', + description: 'feature.description.sample_use_cases', + href: '/ai-unlimited/explore-and-analyze-data/use-cases/', + }, + { + head: 'home_page.edition_cloud', + title: 'feature.title.whats_new', + description: 'feature.description.whats_new', + href: '/ai-unlimited/whats-new/', + }, + { + head: 'home_page.edition_cloud', + title: 'feature.title.explore_data', + description: 'feature.description.explore_data', + href: '/ai-unlimited/explore-and-analyze-data/', + }, + { + head: 'home_page.edition_cloud', + title: 'feature.title.analytic_functions', + description: 'feature.description.analytic_functions', + href: 'https://docs.teradata.com/r/Teradata-VantageCloud-Lake/Analyzing-Your-Data', + }, + { + head: 'home_page.edition_cloud', + title: 'feature.title.manage_projects', + description: 'feature.description.manage_projects', + href: '/ai-unlimited/manage-ai-unlimited/', + }, + { + head: 'home_page.edition_cloud', + title: 'feature.title.other_resources', + description: 'feature.description.other_resources', + href: '/ai-unlimited/resources/', + }, + { + head: 'home_page.edition_cloud', + title: 'feature.title.faq', + description: 'feature.description.faq', + href: '/ai-unlimited/faq/', + }, + { + head: 'home_page.edition_cloud', + title: 'feature.title.glossary', + description: 'feature.description.glossary', + href: '/ai-unlimited/glossary/', + }, +]; + + +function Feature({ head, title, description, href }) { + return ( + +
+ + {translate({ message: head })} + + {translate({ message: title })} + {description &&

{translate({ message: description })}

} +
+ + ); +} + +export default function Cloud() { + return ( +
+
+ {FeatureList.map((props, idx) => ( + + ))} +
+
+ ); +} diff --git a/src/components/HomepageFeatures/index.js b/src/components/HomepageFeatures/index.js index a24e4bf919..40b4ac5a13 100644 --- a/src/components/HomepageFeatures/index.js +++ b/src/components/HomepageFeatures/index.js @@ -1,132 +1,18 @@ import clsx from 'clsx'; -import Heading from '@theme/Heading'; import styles from './styles.module.css'; -import Link from '@docusaurus/Link'; -import PossibleImageUrl from '@site/static/img/possible_img.webp'; -import { Card, Typography } from '@teradata-web/react-components'; import { translate } from '@docusaurus/Translate'; +import Editions from './Editions'; -const FeatureTitle = 'home_page.categories'; - -const FeatureList = [ - { - title: 'home_page.get_started', - description: 'feature.description.get_started', - href: 'install-ai-unlimited/', - }, - { - title: 'feature.title.sample_use_cases', - description: 'feature.description.sample_use_cases', - href: '/ai-unlimited/explore-and-analyze-data/use-cases/', - }, - { - title: 'feature.title.whats_new', - description: 'feature.description.whats_new', - href: '/ai-unlimited/whats-new/', - }, - { - title: 'feature.title.explore_data', - description: 'feature.description.explore_data', - href: '/ai-unlimited/explore-and-analyze-data/', - }, - { - title: 'feature.title.analytic_functions', - description: 'feature.description.analytic_functions', - href: 'https://docs.teradata.com/r/Teradata-VantageCloud-Lake/Analyzing-Your-Data', - }, - { - title: 'feature.title.manage_projects', - description: 'feature.description.manage_projects', - href: '/ai-unlimited/manage-ai-unlimited/', - }, - { - title: 'feature.title.other_resources', - description: 'feature.description.other_resources', - href: '/ai-unlimited/resources/', - }, - { - title: 'feature.title.faq', - description: 'feature.description.faq', - href: '/ai-unlimited/faq/', - }, - { - title: 'feature.title.glossary', - description: 'feature.description.glossary', - href: '/ai-unlimited/glossary/', - }, -]; - -export function PossibleBanner() { - return ( - <> -
- - } - /> - -
- - ); -} - -function BannerContent() { - return ( -
-
- - - {translate({ message: 'home_page.featured_event' })} - - - - - {translate({ message: 'home_page.possible_banner_title' })} - - -
- -
- {translate({ message: 'home_page.register_now' })} -
-
-
- ); -} - -function Feature({ title, description, href }) { - return ( - -
- {translate({ message: title })} - {description &&

{translate({ message: description })}

} -
- - ); -} +const FeatureTitle = 'home_page.select_platform'; +const FeatureSubTitle = 'home_page.select_platform_2'; export default function HomepageFeatures() { return (
-

{translate({ message: FeatureTitle })}

-
- {FeatureList.map((props, idx) => ( - - ))} -
+

{translate({ message: FeatureTitle })}

+

{translate({ message: FeatureSubTitle })}

+
); diff --git a/src/components/HomepageFeatures/styles.module.css b/src/components/HomepageFeatures/styles.module.css index 1523042e2b..9703bf987e 100644 --- a/src/components/HomepageFeatures/styles.module.css +++ b/src/components/HomepageFeatures/styles.module.css @@ -8,7 +8,7 @@ .features h2 { color: hsl(205, 100%, 12%); - margin-bottom: 40px; + margin-bottom: 0px; /* Desktop/H2 */ font-family: "Inter", sans-serif; @@ -152,3 +152,8 @@ a.col { max-width: 1440px; } } + +.m{ + margin-top: 16px; + margin-bottom: 8px; +} \ No newline at end of file diff --git a/src/components/SelectComponent/SelectComponent.js b/src/components/SelectComponent/SelectComponent.js new file mode 100644 index 0000000000..11a4e0d05a --- /dev/null +++ b/src/components/SelectComponent/SelectComponent.js @@ -0,0 +1,46 @@ +import React, { useState } from 'react'; +import { Select, CvListItem } from '@teradata-web/react-components'; +import { useLocation } from 'react-router-dom'; +import styles from './styles.module.css'; + +export default function SelectComponent() { + const [selectedOption, setSelectedOption] = useState(''); + const location = useLocation(); + + const normalizePath = (path) => path.replace(/\/$/, ''); + const pathsNoAlert = normalizePath(`/quickstarts/`); + const currentPath = normalizePath(location.pathname); + const shouldDisplayAlert = !currentPath.includes(pathsNoAlert); + + const handleSelection = (event) => { + const selectedIndex = event.detail.index; + setSelectedOption(selectedIndex); + + if (selectedIndex === 0) { + window.location.href = '/ai-unlimited/install-ai-unlimited/'; + } else if (selectedIndex === 1) { + window.location.href = '/ai-unlimited/fabric/get-started/'; + } + }; + + if (!shouldDisplayAlert) return null; + + return ( +
+ +
+ ); +} diff --git a/src/components/SelectComponent/styles.module.css b/src/components/SelectComponent/styles.module.css new file mode 100644 index 0000000000..367857b1d0 --- /dev/null +++ b/src/components/SelectComponent/styles.module.css @@ -0,0 +1,9 @@ +.customContainer { + position: relative; + margin-top: 130px; + margin-bottom: -120px; +} + +.selectInput{ + display: inline; +} diff --git a/src/theme/DocSidebar/index.tsx b/src/theme/DocSidebar/index.tsx new file mode 100644 index 0000000000..aa6517c0c7 --- /dev/null +++ b/src/theme/DocSidebar/index.tsx @@ -0,0 +1,16 @@ +import React from 'react'; +import DocSidebar from '@theme-original/DocSidebar'; +import type DocSidebarType from '@theme/DocSidebar'; +import type { WrapperProps } from '@docusaurus/types'; +import SelectComponent from '../../components/SelectComponent/SelectComponent'; + +type Props = WrapperProps; + +export default function DocSidebarWrapper(props: Props): JSX.Element { + return ( + <> + + + + ); +} \ No newline at end of file