1
0
Fork 0
Commit graph

33 commits

Author SHA1 Message Date
Paul Jankowski
ecd905d440
feat: promote DocSearch v5 to main (#2968)
* feat(askai): add compatibility with algolia mcp search tool [DASH-2294] (#2862)

## Summary
Fixes DASH-2294
Add compatibility with the Algolia MCP search tool (`algolia_search_index_${string}`) in AskAI.

## Changes
- Add `AlgoliaMCPSearchTool` type to handle the Algolia MCP server search tool
- Refactor how number of hits are retrieved in `ToolCall` into a `getNumberOfHits` helper

## Test plan
- Added unit tests for modified code 

* chore: Update to use tsdown for build system (#2824)

* chore: Update to use tsdown for build system

* fix: docsearch-react build

* fix: lint

* fix: glob resolved to incorrect version

* chore: migrate to from yarn, lerna and shipjs to bun & changesets (#2827)

* chore: add tool-versions file for node and bun versions (#2866)

* chore: watch in parallel (#2867)

* feat: agent studio feedback integration (#2868)

* feat(askai): Split Ask AI modal into own component (#2884)

* feat(askai): Split Ask AI modal into own component

* refactor(react): share modal utilities

* refactor(react): share search box form

* refactor(react): extract start screen sections

* refactor(react): extract shared modal hooks

* fix: lint adapter

* refactor(react): reorganize modal files

* fix: type error in examples

* fix: remove ai modal from adapter for now, fix import paths of react package

* feat(askai): Agent Studio core tools (#2886)

* feat(askai): Implement dynamic tool calls

* move ToolCall to components dir

* Converge Agent Studio search tools to same definition, fix client side tools breaking UI state

* add examples for custom tools

* fix: lint & types

* feat(askai): add Agent Studio memory support (#2888)

* feat(askai): remove Ask AI transport layer (#2889)

* feat(askai): add Agent Studio memory support

* refactor(askai): remove Ask AI transport abstraction

* feat(askai): Feedback notes and tags (#2890)

* feat(askai): add Agent Studio memory support

* refactor(askai): remove Ask AI transport abstraction

* feat(askai): Feedback notes and tags

* fix: bump css bundle size limit

* move feedback actions to components

* chore: fix deploys for v5 branch

* feat(askai): Aggregate MCP search tool calls (#2891)

* feat(askai): add Agent Studio memory support

* refactor(askai): remove Ask AI transport abstraction

* feat(askai): Feedback notes and tags

* fix: bump css bundle size limit

* move feedback actions to components

* feat(askai): Aggregate MCP search tool calls

* feat(askai): Allow dynamic indices for Agent Studio (#2893)

* feat(v5): UI updates (#2896)

* feat(v5): UI updates

* fix: css file size

* fix: e2e tests

* fix: e2e tests

* fix: e2e tests

* chore: add theme toggle to react demo example

* Update sources panel display, update dark theme

* fix: lint

* fix(askai): address ui review feedback

* fix: pin icon positioning

* fix(askai): improve a11y and dark-mode shimmer for thinking and error states

- add role=alert/status and aria-hidden on error/thinking UI
- support dark-mode shimmer gradients via CSS variables
- respect prefers-reduced-motion for shimmer
- handle null date in useRelativeFormattedDate with fallback translation

* feat(v5): Add hit breadcrumbs (#2897)

* feat(v5): UI updates

* fix: css file size

* fix: e2e tests

* fix: e2e tests

* fix: e2e tests

* chore: add theme toggle to react demo example

* Update sources panel display, update dark theme

* fix: lint

* fix(askai): address ui review feedback

* fix: pin icon positioning

* fix(askai): improve a11y and dark-mode shimmer for thinking and error states

- add role=alert/status and aria-hidden on error/thinking UI
- support dark-mode shimmer gradients via CSS variables
- respect prefers-reduced-motion for shimmer
- handle null date in useRelativeFormattedDate with fallback translation

* feat(v5): Add hit breadcrumbs

* fix: bump css bundle size limit

* Fix after conflicts

* chore: move CSS building to lightning css (#2898)

* feat: Facet filters for search (#2899)

* feat(v5): Initial facet filters work

* Perf updates, dark theme, facet chips, a11y improvements

* fix: bump css bundle size limit

* Dedupe facet filters, refetch facets on searchParameters changes

* Add chevron flourish

* fix(askai): Fix new conversation causing thread depth errors (#2900)

* feat(v5): Add hit result badge (#2901)

* feat(v5): Add hit result badge

* Add background to hit result badge

* feat(v5): Add follow up prompt suggestions (#2902)

* feat(v5): Add follow up prompt suggestions

* fix: bump css bundle size limit

* docs(agents): document Cursor Cloud dev environment setup for v5 (Bun) (#2903)

Co-authored-by: Cursor Agent <cursoragent@cursor.com>

* feat(mcp): setup mcp plugins (#2895)

* feat(v5): Add prompt suggestions to keyword search (#2912)

* feat(v5): Add prompt suggestions to keyword search

* cleanup: Move consistent object to reusable constant

* chore(v5): Split Ask AI related CSS into own bundle (#2913)

* chore(v5): Split Ask AI related CSS into own bundle

* move style.css to include modal and askai

* fix: Ensure stage level and watch level scripts use bun runtime (#2915)

* fix: Ensure stage level and watch level scripts use bun runtime

* chore: move to node@24 update imports

* fix: lint

* feat(js): Document JS based hybrid mode, fix JS packages (#2916)

* feat(js): Document JS based hybrid mode, fix JS packages

* update: add model onOpen to docs

* feat(cli): add @docsearch/cli for MCP setup and search (#2911)

* chore(tsdown): Bump to latest tsdown version (#2918)

* chore(tsdown): Bump to latest tsdown version

* fix: bump nvmrc node version

* fix: cli tsconfig

* fix: website build

* fix: example build

* fix: circleci install bun

* fix: lint

* fix: circleci install bun

* fix: circleci install bun

* fix: circleci install bun

* refactor(docusaurus-adapter): rework theme config for v5 and modularize SearchPage (#2904)

Co-authored-by: Paul Jankowski <8BitTitan@gmail.com>

* feat(askai): Move askai related props under root askai (#2919)

* feat(askai): Move askai related props under root askai

* fix: playwright test case

* fix(docusaurus): validate Ask AI options

* feat(js): Split JS bundles for search only (#2920)

* chore: Move to oxlint and oxfmt (#2923)

* chore: Get NPM OIDC token before publishing (#2924)

* chore: Enter v5 beta (#2925)

* chore: Enter pre release mode for v5

* chore: update release summary

* chore: version bump

* fix: Remove NPM_ID_TOKEN for release

* fix: Try setting blank NPM_TOKEN

* fix: Try blank NPM_AUTH_TOKEN

* chore: bump node and npm for release job

* docs(mcp): add service disclaimer (#2921)

* fix: Agent Studio MCP search tool (#2927)

* fix: Agent Studio MCP search tool

* Add changeset

* chore: Update stylelint (#2926)

* chore: stylelint update

* bun.lock

* Add changeset

* fix(website): use bare @import for tailwindcss (#2933)

Tailwind's build-time `@import` cannot be written with `url()` notation,
so `@import url('tailwindcss')` was passed through as a plain CSS import
instead of being processed by Tailwind.

Also syncs bun.lock with the 5.0.0-beta.0 versions already committed to
package.json.

* chore: version v5.0.0-beta.1 (#2932)

* feat(react): remove deprecated index props (#2936)

* feat(mcp): add ChatGPT and Codex DocSearch plugin package (#2938)

* fix: cleanup claude

* feat: website redesign (#2930)

Co-authored-by: Cursor <cursoragent@cursor.com>

* fix: lint

* fix: crash on the demo (#2940)

* feat(docs): Document v5 beta (#2935)

* chore(docs): v5 documentation

* Writing style clean up

* fix: website after conflicts

* fix: reported issues on mobile (#2944)

* chore: Introduce a11y smoke tests (#2943)

* chore: Add Lorris as codeowner (#2946)

* fix(askai): Ask AI fixes for v5 (#2945)

* fix: General v5 fixes (#2947)

- Fix `ref` console error for a `FacetMenu`
- Whitespace only search/conversation input does not trigger requests
- Fix flash of no results page on search

* feat: v5 general improvements (#2948)

* feat(v5): General fixes and improvements

* add changeset

* fix: bundlesize

* feat(v5): UI and DX improvements (#2949)

* feat: Rename assistantId to agentId

* feat: Allow reading default facet values from index searchParameters

* feat: Remove indexName prop from Sidepanel, cleanup documentation pages

* feat: Move appId and apiKey up into @docsearch/core

* feat: Add back nested grouping of search results

* add changeset

* revert changes to example demo

* fix: e2e tests

* chore: push git tags on version release (#2951)

* chore: release v5.0.0-beta.2 (#2950)

* chore: Fix pushing git tags (#2953)

* fix(askai): sanitize markdown HTML in v5 (#2954)

Backport of #2929.\n\nOriginal commit: 681cbfec03

Co-authored-by: Vasco Bettencourt <32492444+vascobettencourt@users.noreply.github.com>

* fix(v5): stop truncating mobile snippets (#2958)

* fix(v5): stop truncating mobile snippets

Backport of #2907.\n\nOriginal commit: 9ad6d169fe

* fix(v5): allow mobile hit text to wrap

Completes the v5 adaptation of #2907 by overriding later v5 child-level truncation rules.\n\nOriginal commit: 9ad6d169fe

* chore(v5): account for mobile wrapping CSS

Updates the CSS size budget for the v5 adaptation of #2907.\n\nOriginal commit: 9ad6d169fe

---------

Co-authored-by: Divyansh Singh <40380293+brc-dd@users.noreply.github.com>

* feat(v5): Add new footerAction prop (#2952)

* feat(v5): Add new footerAction prop

* Resolve PR comments

* fix(v5): recognize conversation depth errors (#2957)

Backport of #2881.\n\nOriginal commit: f68e52251c

Co-authored-by: Felipe Bermudez <felipeberm@gmail.com>

* fix(v5): expose Sidepanel search parameter types (#2956)

* fix(v5): expose Sidepanel search parameter types

Backport of #2906.\n\nOriginal commit: 4710d0ca77

* Delete sidepanel.test.ts

Had a pointless test case in it.

---------

Co-authored-by: Divyansh Singh <40380293+brc-dd@users.noreply.github.com>

* fix(v5): ignore slash shortcut on focused buttons (#2955)

Backport of #2871.\n\nOriginal commit: 0e41a78c44

Co-authored-by: Sigmabro <122412346+Sigmabrogz@users.noreply.github.com>

* fix(agentStudio): agents dynamic mode enabled (#2959)

* fix(agentStudio): agents dynamic mode enabled

* fix(askai): use string[] for dynamic agentStudio indices

* feat(docs): add Ask AI to Agent Studio migration guide (#2931)

* feat(docs): add Ask AI to Agent Studio migration guide

* feat(docs): agentStudio migrating from askAI

* feat(docs): renaming agentId

* feat(agentStudio): dynamic mode indices updated

* fix: Docusaurus adapter styling, DocSearch website fixes (#2960)

* chore: release v5.0.0-beta.3 (#2961)

* feat(website): Launch updates (#2964)

* fix(website): Fix font loading (#2966)

* feat(v5): Back port cost control errors (#2965)

* chore: release v5.0.0-beta.4 (#2967)

---------

Co-authored-by: Vincent Lemeunier <vincentlemeunier+git@gmail.com>
Co-authored-by: Dylan Tientcheu <dylan.tientcheu@algolia.com>
Co-authored-by: Lorris Saint-Genez <lorrissaintgenez@gmail.com>
Co-authored-by: Cursor Agent <cursoragent@cursor.com>
Co-authored-by: Dylan Tientcheu <dylantientcheu@gmail.com>
Co-authored-by: Vasco Bettencourt <32492444+vascobettencourt@users.noreply.github.com>
Co-authored-by: Divyansh Singh <40380293+brc-dd@users.noreply.github.com>
Co-authored-by: Felipe Bermudez <felipeberm@gmail.com>
Co-authored-by: Sigmabro <122412346+Sigmabrogz@users.noreply.github.com>
2026-08-06 15:31:45 -04:00
Vasco Bettencourt
fd0de3d16f
feat(askai): add thread depth limit logic (#2812) 2025-12-16 08:59:28 +00:00
Paul Jankowski
5e9bdfed70
feat(composable-api): Introduce new Composable API (#2779)
* feat(composable-api): Step 1, new core package, pull basic state up higer (#2771)

* feat(composable-api): Step 1, new core package, pull basic state up higher

* Package cleanup, update core Readme

* Cleanup to fix weird import behavior

* Fix dependencies

* Try fixing deps again

* Track new package dist in CI

* Make sure to restore core package

* feat(composable-api): Step 2, composable DocSearchButton (#2772)

* feat(composable-api): Step 1, new core package, pull basic state up higher

* Package cleanup, update core Readme

* Cleanup to fix weird import behavior

* Fix dependencies

* Try fixing deps again

* Track new package dist in CI

* Make sure to restore core package

* feat(composable-api): Step 2, move DocSearchButton to be composable

* Implement keyboard shortcuts props

* Set modal package version

* Render new DocSearchButton in react package

* Bump allowed bundle size for now

* feat(composable-api): Step 3, composable DocSearchModal (#2774)

* feat(composable-api): Step 1, new core package, pull basic state up higher

* Package cleanup, update core Readme

* Cleanup to fix weird import behavior

* Fix dependencies

* Try fixing deps again

* Track new package dist in CI

* Make sure to restore core package

* feat(composable-api): Step 2, move DocSearchButton to be composable

* Implement keyboard shortcuts props

* Set modal package version

* Render new DocSearchButton in react package

* Bump allowed bundle size for now

* feat(composable-api): Step 3, make DocSearchModal composable

* Clean up needed dependencies, add more bundle checks

* fix: CI

* add test cases to core package

* add test cases to modal package

* fixes after rebase

* fix: lint

* Memoize modal props to stabalize rendering

* Dont track isModalActive in props

* bump @docsearch/modal bundlesize

* remove icons dir from @docsearch-modal

* update version definition for @docsearch-react and @docsearch-modal

* fix: lint
2025-10-20 16:22:53 -04:00
Paul Jankowski
0267f55453
feat: Modal and AskAI UX tweaks (#2765)
* feat: UX tweaks for Modal

* Prepare new conversation screen to accept suggested questions

* Add conversation history screen

* Reset basic askai config

* Reset askai api url

* Document new translations

* Remove unused CSS

* Add translation for stopped streaming text

* Add rest of translations

* Bump allowed bundle size

* Bump allowed bundle size
2025-09-23 11:44:23 -04:00
Paul Jankowski
40112944e8
fix(deps): Adds zod to dependency list (#2759) 2025-09-16 08:54:50 -04:00
Paul Jankowski
df20e6c791
feat(askai): ai-sdk v5 (#2746)
* feat(askai): Initial ai-sdk v5 work

* Add sdk version header, code cleanup

* feat(askai): Get ai sdk v5 working

* fix: tests bundlesize

* fix: not all streaming states were showing

* fix: Show reasoning state, fix CSS issues, extract link sources for multiple text parts

* Remove important for removing text decoration
2025-09-11 10:53:10 -04:00
Dylan Tientcheu
3478262b3e
fix: cater for transformItems to use DS with custom indices (#2705) 2025-08-08 16:24:24 +02:00
Dylan Tientcheu
19c1ef9192
feat(v4): release v4 (#2555) (#2666)
* feat(v4): add new UI (#2555)

* feat: add new footer ui

* feat: add new search box ui

* feat: add searchbox actions

* feat: add start screen

* feat: add no results screen

* feat: add new card ui

* feat: add new icons

* feat: add new key press class

* fix: cypress tests

* fix: circleci

* fix: circleci

* fix: close aria label

* fix: circleci

* fix: remove unused classes

* fix: circleci

* feat: update version

* feat: add new dark mode ui

* fix: colors

* fix: design review

* fix: hit title length

* fix: improve accessibility

* fix: ci

* chore: increase bundle size threshold

* fix: css

* feat(v4): ask-ai foundations  (#2574)

* feat(v4): docsearch askAI context (#2587)

* fix(v4): ask ai updates (#2654)

* feat(v4): update beta documentation (#2659)

* chore: release v4.0.0-beta.0 (#2660)

* fix: make release run on branches like v4

* chore: release v4.0.0-beta.0

* hotfix: closing on askai error

* chore: release v4.0.0-beta.1 (#2661)

* fix: add a section on models

* fix: update to `<package>@beta`

* feat(docsearch-website): Updated docs (#2662)

* feat(v4): update the landing page (#2665)

* fix: beta in readme

* feat: added glow around the search bar and a little copy above the keyboard

* feat: add glow around the search bar and copy above the keyboard

* fix: Add more styling

* fix: polishing v4 (#2667)

* chore: release v4.0.0-beta.2 (#2668)

* fix: update docusaurus tarballs

* fix(website): update docusaurus tarballs

* fix: mobile search bar

---------

Co-authored-by: Vasco Bettencourt <32492444+vascobettencourt@users.noreply.github.com>
Co-authored-by: Natan Yagudayev <natanyagudayev@gmail.com>
2025-07-17 15:53:46 +02:00
Pierre Millot
db8edeb818
fix(ui): compensate for scrollbar (#2413)
fixes #2378
2025-01-21 09:41:27 +01:00
Blake V.
44aa7dcf38
feat(a11y): add hotkeys to search input aria-label (#2337) 2024-11-12 11:25:27 +01:00
Pierre Millot
aa666deccc
chore(deps): dependencies 2024-11-04 (#2335)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-04 18:15:51 +01:00
Pierre Millot
93578a4de0
fix: upgrade algoliasearch to v5 (#2326)
We can use the new generated client to stay up to date and upgrade packages that depends on docsearch.

---------

Co-authored-by: shortcuts <vannicattec@gmail.com>
2024-10-30 15:46:38 +01:00
Heather Buchel
df60b8ebe8
fix: add accessible label to SearchBox input (#2193) 2024-02-28 11:14:04 +01:00
Doma
4c82640022
feat: add keypress effect to DocSearchButton (#2087)
* feat: add keypress effect to DocSearchButton

* Bump expected bundle sizes

---------

Co-authored-by: Paul Jankowski <8BitTitan@gmail.com>
Co-authored-by: Paul Jankowski <33367713+8bittitan@users.noreply.github.com>
2023-10-05 10:57:27 -04:00
Paul Jankowski
cc90789290
chore: Prepare for Docusaurus update (#2007)
* chore: Prepare for Docusaurus update

* Bump package sizes
2023-08-11 11:41:58 -04:00
Paul Jankowski
cacade4c65
feat (api): Adds ability for click insights events to be triggered (#1916)
* Adds ability for click insights events to be triggered

* Bump bundlesize

* Cleanup insights click defenition

* Update packages/docsearch-react/src/DocSearchModal.tsx

Co-authored-by: François Chalifour <francoischalifour@users.noreply.github.com>

* Inline creating insights event parameters


---------

Co-authored-by: François Chalifour <francoischalifour@users.noreply.github.com>
2023-06-15 10:44:00 -04:00
Paul Jankowski
26691a5c8a
feat(api): allow insights options to be forwarded to Autocomplete (#1904)
* Allow insights options to be forwarded to Autocomplete

* Add autocomplete params to hits for insights

* Fixes TS errors after Autocomplete update

* Bump bundlesize after Autocomplete update

* Cleanup checking if insights is active

* Add documentation for sending events with DocSearch

* Move insights boolean casting to inside of getSources

* Update packages/docsearch-react/src/DocSearchModal.tsx

Co-authored-by: François Chalifour <francoischalifour@users.noreply.github.com>

---------

Co-authored-by: François Chalifour <francoischalifour@users.noreply.github.com>
2023-06-08 10:47:42 -04:00
Daiki Nishikawa
448192e07b
fix(searchbutton): fix react production hydration error (#1384)
Co-authored-by: Clément Vannicatte <vannicattec@gmail.com>
2022-06-24 14:59:27 +02:00
Clément Vannicatte
716b515f39
chore: update deps and CI config (#1388) 2022-05-17 16:41:26 +02:00
Clément Vannicatte
eb372f2743
feat(deps): bump peer to React 18 (#1385) 2022-05-17 12:32:50 +02:00
Clément Vannicatte
59a3ebf5ec
fix(footer): make SVG accessible (#1306) 2022-02-22 10:53:16 +01:00
renovate[bot]
aa309f54af
fix(deps): update algoliasearch-autocomplete monorepo to v1.5.2 (#1225)
Co-authored-by: Clément Vannicatte <vannicattec@gmail.com>
2022-02-03 17:52:19 +01:00
Clément Vannicatte
ef13dea393
feat(translations): expose Button and Modal translations (#1183) 2021-11-22 14:24:07 +01:00
renovate[bot]
a2a7db71e5
chore(deps): update dependency rollup-plugin-terser to v7 (#1137)
* chore(deps): update dependency rollup-plugin-terser to v7

* increase a bit for rollup

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Samuel Bodin <1637651+bodinsamuel@users.noreply.github.com>
2021-11-18 17:21:09 +01:00
renovate[bot]
18781ef121
chore(deps): update dependency algoliasearch to v4.11.0 (#1112)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Clément Vannicatte <vannicattec@gmail.com>
2021-11-03 09:33:51 +01:00
Clément Vannicatte
9300cb4bd6
fix(dependencies): upgrade dependencies (#1015) 2021-07-09 10:48:33 +02:00
Clément Vannicatte
117228b19b
fix(results): unescaped lvl0 (#1001)
* fix(results): unescaped lvl0

* upgrade bundlesize
2021-04-07 11:04:14 +02:00
Clément Vannicatte
1421077637
fix(deps): Update and pin Autocomplete to the latest version (#999)
* Update DocSearch to the latest Autocomplete version

Co-authored-by: François Chalifour <francoischalifour@users.noreply.github.com>
2021-03-08 16:43:16 +01:00
François Chalifour
c12517986f chore: update TypeScript 2020-11-25 11:37:58 +01:00
François Chalifour
9a388427ca feat: update Autocomplete version 2020-11-24 12:08:46 +01:00
François Chalifour
ad44f0edc4 chore: update tooling 2020-09-01 14:24:58 +02:00
François Chalifour
701935e45c chore: remove autocomplete references 2020-09-01 12:01:48 +02:00
François Chalifour
fc08ef3e12 chore: more files to root 2020-09-01 11:54:48 +02:00