Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Added Algolia Docsearch to docs website #1365

Merged
merged 28 commits into from
Aug 4, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
28 commits
Select commit Hold shift + click to select a range
fcfc8b2
Added Algolia Docsearch
r100-stack Jun 16, 2023
7614a21
yarn lock
r100-stack Jun 25, 2023
bb5be19
Merge remote-tracking branch 'origin/main' into rohan/algolia-docsearch
r100-stack Jun 25, 2023
fe497ca
.gitignore
r100-stack Jul 12, 2023
9d30415
docsearch custom styling
r100-stack Jul 12, 2023
77428b1
Use yarn docsearch packages
r100-stack Jul 12, 2023
c427145
yarn.lock
r100-stack Jul 12, 2023
d4ad754
Prefixed Algolia env variables with PUBLIC_
r100-stack Jul 12, 2023
2517a8a
Merge branch 'dev' into rohan/algolia-docsearch
r100-stack Jul 13, 2023
bb3a7c3
Merge branch 'dev' into rohan/algolia-docsearch
r100-stack Jul 13, 2023
0b07023
Merge branch 'dev' into rohan/algolia-docsearch
r100-stack Jul 13, 2023
9156577
Merge branch 'dev' into rohan/algolia-docsearch
r100-stack Jul 13, 2023
814e2e9
Revert back some test images
r100-stack Jul 13, 2023
09ff2ad
Readded algolia yarn packages
r100-stack Jul 13, 2023
a16f453
Added .env to root .gitignore instead of apps/website/.gitignore
r100-stack Jul 13, 2023
5a6d195
yarn.lock
r100-stack Jul 13, 2023
3f5a944
Added a separate AlgoliaSearch component. Also tried cascade layers, …
r100-stack Jul 13, 2023
05eea2d
Removed testing code
r100-stack Jul 13, 2023
5b1dacf
Merge branch 'dev' into rohan/algolia-docsearch
r100-stack Aug 1, 2023
7c9e00d
Fixed Algolia search incorrect light theme styles. Used body instead …
r100-stack Aug 1, 2023
232ed8c
Changed some styles
r100-stack Aug 1, 2023
3236957
Added transformItems to remove the base url from the link of an Algol…
r100-stack Aug 1, 2023
fa7f566
Removed box shadow from docsearch hit
r100-stack Aug 1, 2023
89f9c8e
Merge branch 'dev' into rohan/algolia-docsearch
r100-stack Aug 1, 2023
82507a9
Merge branch 'dev' into rohan/algolia-docsearch
r100-stack Aug 3, 2023
9632db7
Changed layer name from algolia to thirdparty.algolia
r100-stack Aug 4, 2023
76d31b1
Merge branch 'dev' into rohan/algolia-docsearch
r100-stack Aug 4, 2023
ba09a7b
Changed from semver 7.5.3 to 7.5.4
r100-stack Aug 4, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,13 @@ build
yarn-debug.log*
yarn-error.log*

# env files
.env

# local env files
.env.local
.env.development.local
.env.test.local
.env.production.local

features/search
2 changes: 2 additions & 0 deletions apps/website/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,8 @@
"@astrojs/mdx": "^0.19.7",
"@astrojs/react": "^2.2.1",
"@astrojs/sitemap": "^1.3.3",
"@docsearch/css": "3",
"@docsearch/js": "3",
"@fontsource/noto-sans": "^4.5.11",
"@fontsource/noto-sans-mono": "^4.5.11",
"@itwin/itwinui-react": "3.0.0-dev.6",
Expand Down
43 changes: 43 additions & 0 deletions apps/website/src/components/AlgoliaSearch.astro
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
---
---

<algolia-searchbox></algolia-searchbox>

<script>
import docsearch from '@docsearch/js';

docsearch({
appId: import.meta.env.PUBLIC_ALGOLIA_APP_ID,
apiKey: import.meta.env.PUBLIC_ALGOLIA_API_KEY,
indexName: import.meta.env.PUBLIC_ALGOLIA_INDEX_NAME,
container: 'algolia-searchbox',
transformItems: (items) => {
return items.map((item) => {
// Absolute URL -> Relative URL to work better on localhost, preview URLs, etc.
const url = new URL(item.url);
return {
...item,
url: url.href.replace(url.origin, ''),
};
});
},
});
</script>

<style lang='scss'>
@import '@docsearch/css' layer(thirdparty.algolia);

body {
// Algolia DocSearch: https://docsearch.algolia.com/docs/styling/
--docsearch-primary-color: var(--color-highlight-4);
--docsearch-text-color: var(--color-text--dark);
--docsearch-searchbox-background: var(--color-background-1);
--docsearch-searchbox-focus-background: var(--color-background-1);
--docsearch-hit-color: var(--color-text--dark);
--docsearch-muted-color: var(--color-subtext--dark);
--docsearch-hit-background: var(--color-background-1);
--docsearch-hit-shadow: none;
--docsearch-modal-background: var(--color-background-2);
--docsearch-footer-background: var(--color-background-2);
}
</style>
7 changes: 3 additions & 4 deletions apps/website/src/components/Header.astro
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
import SkipLink from './utils/SkipLink.astro';
import SidebarToggle from './SidebarToggle.astro';
import VisuallyHidden from './utils/VisuallyHidden.astro';
import AlgoliaSearch from './AlgoliaSearch.astro';

export type Props = { class?: string };

Expand Down Expand Up @@ -36,6 +37,8 @@ const { pathname } = Astro.url;
<nav aria-label='Global site'>
{pathname === '/' && <a href='/docs'>Documentation</a>}

{pathname.startsWith('/docs') && <AlgoliaSearch />}

<a href='https://www.github.com/iTwin/iTwinUI' class='github-link'>
<VisuallyHidden>GitHub</VisuallyHidden>

Expand Down Expand Up @@ -87,10 +90,6 @@ const { pathname } = Astro.url;
gap: var(--space-2);
align-items: center;
margin-left: auto;

@media (max-width: 50em) {
display: none;
}
}

a {
Expand Down
185 changes: 182 additions & 3 deletions yarn.lock
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,137 @@
resolved "https://registry.yarnpkg.com/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz#bd9154aec9983f77b3a034ecaa015c2e4201f6cf"
integrity sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==

"@algolia/[email protected]":
version "1.9.3"
resolved "https://registry.yarnpkg.com/@algolia/autocomplete-core/-/autocomplete-core-1.9.3.tgz#1d56482a768c33aae0868c8533049e02e8961be7"
integrity sha512-009HdfugtGCdC4JdXUbVJClA0q0zh24yyePn+KUGk3rP7j8FEe/m5Yo/z65gn6nP/cM39PxpzqKrL7A6fP6PPw==
dependencies:
"@algolia/autocomplete-plugin-algolia-insights" "1.9.3"
"@algolia/autocomplete-shared" "1.9.3"

"@algolia/[email protected]":
version "1.9.3"
resolved "https://registry.yarnpkg.com/@algolia/autocomplete-plugin-algolia-insights/-/autocomplete-plugin-algolia-insights-1.9.3.tgz#9b7f8641052c8ead6d66c1623d444cbe19dde587"
integrity sha512-a/yTUkcO/Vyy+JffmAnTWbr4/90cLzw+CC3bRbhnULr/EM0fGNvM13oQQ14f2moLMcVDyAx/leczLlAOovhSZg==
dependencies:
"@algolia/autocomplete-shared" "1.9.3"

"@algolia/[email protected]":
version "1.9.3"
resolved "https://registry.yarnpkg.com/@algolia/autocomplete-preset-algolia/-/autocomplete-preset-algolia-1.9.3.tgz#64cca4a4304cfcad2cf730e83067e0c1b2f485da"
integrity sha512-d4qlt6YmrLMYy95n5TB52wtNDr6EgAIPH81dvvvW8UmuWRgxEtY0NJiPwl/h95JtG2vmRM804M0DSwMCNZlzRA==
dependencies:
"@algolia/autocomplete-shared" "1.9.3"

"@algolia/[email protected]":
version "1.9.3"
resolved "https://registry.yarnpkg.com/@algolia/autocomplete-shared/-/autocomplete-shared-1.9.3.tgz#2e22e830d36f0a9cf2c0ccd3c7f6d59435b77dfa"
integrity sha512-Wnm9E4Ye6Rl6sTTqjoymD+l8DjSTHsHboVRYrKgEt8Q7UHm9nYbqhN/i0fhUYA3OAEH7WA8x3jfpnmJm3rKvaQ==

"@algolia/[email protected]":
version "4.19.1"
resolved "https://registry.yarnpkg.com/@algolia/cache-browser-local-storage/-/cache-browser-local-storage-4.19.1.tgz#d29f42775ed4d117182897ac164519c593faf399"
integrity sha512-FYAZWcGsFTTaSAwj9Std8UML3Bu8dyWDncM7Ls8g+58UOe4XYdlgzXWbrIgjaguP63pCCbMoExKr61B+ztK3tw==
dependencies:
"@algolia/cache-common" "4.19.1"

"@algolia/[email protected]":
version "4.19.1"
resolved "https://registry.yarnpkg.com/@algolia/cache-common/-/cache-common-4.19.1.tgz#faa5eeacaffd6023c2cf26e9866bdb06193f9b26"
integrity sha512-XGghi3l0qA38HiqdoUY+wvGyBsGvKZ6U3vTiMBT4hArhP3fOGLXpIINgMiiGjTe4FVlTa5a/7Zf2bwlIHfRqqg==

"@algolia/[email protected]":
version "4.19.1"
resolved "https://registry.yarnpkg.com/@algolia/cache-in-memory/-/cache-in-memory-4.19.1.tgz#afe4f0f21149800358379871089e0141fb72415b"
integrity sha512-+PDWL+XALGvIginigzu8oU6eWw+o76Z8zHbBovWYcrtWOEtinbl7a7UTt3x3lthv+wNuFr/YD1Gf+B+A9V8n5w==
dependencies:
"@algolia/cache-common" "4.19.1"

"@algolia/[email protected]":
version "4.19.1"
resolved "https://registry.yarnpkg.com/@algolia/client-account/-/client-account-4.19.1.tgz#1fa65881baab79ad35af6bcf44646a13b8d5edc9"
integrity sha512-Oy0ritA2k7AMxQ2JwNpfaEcgXEDgeyKu0V7E7xt/ZJRdXfEpZcwp9TOg4TJHC7Ia62gIeT2Y/ynzsxccPw92GA==
dependencies:
"@algolia/client-common" "4.19.1"
"@algolia/client-search" "4.19.1"
"@algolia/transporter" "4.19.1"

"@algolia/[email protected]":
version "4.19.1"
resolved "https://registry.yarnpkg.com/@algolia/client-analytics/-/client-analytics-4.19.1.tgz#e6ed79acd4de5a0284c9696bf4e1c25278ba34db"
integrity sha512-5QCq2zmgdZLIQhHqwl55ZvKVpLM3DNWjFI4T+bHr3rGu23ew2bLO4YtyxaZeChmDb85jUdPDouDlCumGfk6wOg==
dependencies:
"@algolia/client-common" "4.19.1"
"@algolia/client-search" "4.19.1"
"@algolia/requester-common" "4.19.1"
"@algolia/transporter" "4.19.1"

"@algolia/[email protected]":
version "4.19.1"
resolved "https://registry.yarnpkg.com/@algolia/client-common/-/client-common-4.19.1.tgz#40a8387316fa61d62ad1091beb3a8e227f008e75"
integrity sha512-3kAIVqTcPrjfS389KQvKzliC559x+BDRxtWamVJt8IVp7LGnjq+aVAXg4Xogkur1MUrScTZ59/AaUd5EdpyXgA==
dependencies:
"@algolia/requester-common" "4.19.1"
"@algolia/transporter" "4.19.1"

"@algolia/[email protected]":
version "4.19.1"
resolved "https://registry.yarnpkg.com/@algolia/client-personalization/-/client-personalization-4.19.1.tgz#fe362e0684dc74c3504c3641c5a7488c6ae02e07"
integrity sha512-8CWz4/H5FA+krm9HMw2HUQenizC/DxUtsI5oYC0Jxxyce1vsr8cb1aEiSJArQT6IzMynrERif1RVWLac1m36xw==
dependencies:
"@algolia/client-common" "4.19.1"
"@algolia/requester-common" "4.19.1"
"@algolia/transporter" "4.19.1"

"@algolia/[email protected]":
version "4.19.1"
resolved "https://registry.yarnpkg.com/@algolia/client-search/-/client-search-4.19.1.tgz#5e54601aa5f5cea790cec3f2cde4af9d6403871e"
integrity sha512-mBecfMFS4N+yK/p0ZbK53vrZbL6OtWMk8YmnOv1i0LXx4pelY8TFhqKoTit3NPVPwoSNN0vdSN9dTu1xr1XOVw==
dependencies:
"@algolia/client-common" "4.19.1"
"@algolia/requester-common" "4.19.1"
"@algolia/transporter" "4.19.1"

"@algolia/[email protected]":
version "4.19.1"
resolved "https://registry.yarnpkg.com/@algolia/logger-common/-/logger-common-4.19.1.tgz#0e46a11510f3e94e1afc0ac780ae52e9597be78f"
integrity sha512-i6pLPZW/+/YXKis8gpmSiNk1lOmYCmRI6+x6d2Qk1OdfvX051nRVdalRbEcVTpSQX6FQAoyeaui0cUfLYW5Elw==

"@algolia/[email protected]":
version "4.19.1"
resolved "https://registry.yarnpkg.com/@algolia/logger-console/-/logger-console-4.19.1.tgz#656a6f4ebb5de39af6ef7095c398d9ab3cceb87d"
integrity sha512-jj72k9GKb9W0c7TyC3cuZtTr0CngLBLmc8trzZlXdfvQiigpUdvTi1KoWIb2ZMcRBG7Tl8hSb81zEY3zI2RlXg==
dependencies:
"@algolia/logger-common" "4.19.1"

"@algolia/[email protected]":
version "4.19.1"
resolved "https://registry.yarnpkg.com/@algolia/requester-browser-xhr/-/requester-browser-xhr-4.19.1.tgz#7341ea2f980b8980a2976110142026721e452187"
integrity sha512-09K/+t7lptsweRTueHnSnmPqIxbHMowejAkn9XIcJMLdseS3zl8ObnS5GWea86mu3vy4+8H+ZBKkUN82Zsq/zg==
dependencies:
"@algolia/requester-common" "4.19.1"

"@algolia/[email protected]":
version "4.19.1"
resolved "https://registry.yarnpkg.com/@algolia/requester-common/-/requester-common-4.19.1.tgz#f3396c77631b9d36e8d4d6f819a2c27f9ddbf7a1"
integrity sha512-BisRkcWVxrDzF1YPhAckmi2CFYK+jdMT60q10d7z3PX+w6fPPukxHRnZwooiTUrzFe50UBmLItGizWHP5bDzVQ==

"@algolia/[email protected]":
version "4.19.1"
resolved "https://registry.yarnpkg.com/@algolia/requester-node-http/-/requester-node-http-4.19.1.tgz#ea210de9642628b3bdda1dd7fcd1fcb686da442e"
integrity sha512-6DK52DHviBHTG2BK/Vv2GIlEw7i+vxm7ypZW0Z7vybGCNDeWzADx+/TmxjkES2h15+FZOqVf/Ja677gePsVItA==
dependencies:
"@algolia/requester-common" "4.19.1"

"@algolia/[email protected]":
version "4.19.1"
resolved "https://registry.yarnpkg.com/@algolia/transporter/-/transporter-4.19.1.tgz#b5787299740c4bec9ba05502d98c14b5999860c8"
integrity sha512-nkpvPWbpuzxo1flEYqNIbGz7xhfhGOKGAZS7tzC+TELgEmi7z99qRyTfNSUlW7LZmB3ACdnqAo+9A9KFBENviQ==
dependencies:
"@algolia/cache-common" "4.19.1"
"@algolia/logger-common" "4.19.1"
"@algolia/requester-common" "4.19.1"

"@ampproject/remapping@^2.2.0":
version "2.2.0"
resolved "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz"
Expand Down Expand Up @@ -1598,6 +1729,29 @@
resolved "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz"
integrity sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==

"@docsearch/css@3", "@docsearch/[email protected]":
version "3.5.1"
resolved "https://registry.yarnpkg.com/@docsearch/css/-/css-3.5.1.tgz#4adf9884735bbfea621c3716e80ea97baa419b73"
integrity sha512-2Pu9HDg/uP/IT10rbQ+4OrTQuxIWdKVUEdcw9/w7kZJv9NeHS6skJx1xuRiFyoGKwAzcHXnLp7csE99sj+O1YA==

"@docsearch/js@3":
version "3.5.1"
resolved "https://registry.yarnpkg.com/@docsearch/js/-/js-3.5.1.tgz#6d8de3b4fcf7de94462c0e592e333efa9ebbbabd"
integrity sha512-EXi8de5njxgP6TV3N9ytnGRLG9zmBNTEZjR4VzwPcpPLbZxxTLG2gaFyJyKiFVQxHW/DPlMrDJA3qoRRGEkgZw==
dependencies:
"@docsearch/react" "3.5.1"
preact "^10.0.0"

"@docsearch/[email protected]":
version "3.5.1"
resolved "https://registry.yarnpkg.com/@docsearch/react/-/react-3.5.1.tgz#35f4a75f948211d8bb6830d2147c575f96a85274"
integrity sha512-t5mEODdLzZq4PTFAm/dvqcvZFdPDMdfPE5rJS5SC8OUq9mPzxEy6b+9THIqNM9P0ocCb4UC5jqBrxKclnuIbzQ==
dependencies:
"@algolia/autocomplete-core" "1.9.3"
"@algolia/autocomplete-preset-algolia" "1.9.3"
"@docsearch/css" "3.5.1"
algoliasearch "^4.0.0"

"@emmetio/abbreviation@^2.2.3":
version "2.2.3"
resolved "https://registry.npmjs.org/@emmetio/abbreviation/-/abbreviation-2.2.3.tgz"
Expand Down Expand Up @@ -4483,6 +4637,26 @@ ajv@^8.0.1:
require-from-string "^2.0.2"
uri-js "^4.2.2"

algoliasearch@^4.0.0:
version "4.19.1"
resolved "https://registry.yarnpkg.com/algoliasearch/-/algoliasearch-4.19.1.tgz#18111fb422eaf841737adb92d5ab12133d244218"
integrity sha512-IJF5b93b2MgAzcE/tuzW0yOPnuUyRgGAtaPv5UUywXM8kzqfdwZTO4sPJBzoGz1eOy6H9uEchsJsBFTELZSu+g==
dependencies:
"@algolia/cache-browser-local-storage" "4.19.1"
"@algolia/cache-common" "4.19.1"
"@algolia/cache-in-memory" "4.19.1"
"@algolia/client-account" "4.19.1"
"@algolia/client-analytics" "4.19.1"
"@algolia/client-common" "4.19.1"
"@algolia/client-personalization" "4.19.1"
"@algolia/client-search" "4.19.1"
"@algolia/logger-common" "4.19.1"
"@algolia/logger-console" "4.19.1"
"@algolia/requester-browser-xhr" "4.19.1"
"@algolia/requester-common" "4.19.1"
"@algolia/requester-node-http" "4.19.1"
"@algolia/transporter" "4.19.1"

ansi-align@^3.0.0, ansi-align@^3.0.1:
version "3.0.1"
resolved "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.1.tgz"
Expand Down Expand Up @@ -12097,6 +12271,11 @@ [email protected], [email protected], postcss@^7, postcss@^8.3.11, postcss@^8.4.21, po
picocolors "^1.0.0"
source-map-js "^1.0.2"

preact@^10.0.0:
version "10.16.0"
resolved "https://registry.yarnpkg.com/preact/-/preact-10.16.0.tgz#68a06d70b191b8a313ea722d61e09c6b2a79a37e"
integrity sha512-XTSj3dJ4roKIC93pald6rWuB2qQJO9gO2iLLyTe87MrjQN+HklueLsmskbywEWqCHlclgz3/M4YLL2iBr9UmMA==

preferred-pm@^3.0.0, preferred-pm@^3.0.3:
version "3.0.3"
resolved "https://registry.npmjs.org/preferred-pm/-/preferred-pm-3.0.3.tgz"
Expand Down Expand Up @@ -13257,9 +13436,9 @@ semver-truncate@^3.0.0:
semver "^7.3.5"

"semver@2 || 3 || 4 || 5", semver@^5.4.1, semver@^5.5.0, semver@^5.6.0, semver@^6.0.0, semver@^6.1.1, semver@^6.1.2, semver@^6.3.0, semver@^7.3.4, semver@^7.3.5, semver@^7.3.7, semver@^7.3.8, semver@^7.5.2, semver@^7.5.3, semver@~7.0.0:
version "7.5.3"
resolved "https://registry.yarnpkg.com/semver/-/semver-7.5.3.tgz#161ce8c2c6b4b3bdca6caadc9fa3317a4c4fe88e"
integrity sha512-QBlUtyVk/5EeHbi7X0fw6liDZc7BBmEaSYn01fMU1OUYbf6GPsbTtd8WmnqbI20SeycoHSeiybkE/q1Q+qlThQ==
version "7.5.4"
resolved "https://registry.yarnpkg.com/semver/-/semver-7.5.4.tgz#483986ec4ed38e1c6c48c34894a9182dbff68a6e"
integrity sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==
dependencies:
lru-cache "^6.0.0"

Expand Down
Loading