1
0
Fork 0
Commit graph

44 commits

Author SHA1 Message Date
Rami Yushuvaev
40380d6c43
feat(a11y): respect reduced-motion preferences (#2805)
* feat(a11y): respect reduced-motion preferences

* Update

* fix style lint errors

* fix style lint errors

---------

Co-authored-by: Paul Jankowski <8bittitan@gmail.com>
2026-08-07 10:55:30 -04:00
Rami Yushuvaev
f75b94c63e
feat(a11y): visual hint for keyboard navigation (#2806)
* feat(a11y): visual hint for keyboard navigation

* updaet

* updaet

* update

---------

Co-authored-by: Paul Jankowski <8bittitan@gmail.com>
2026-08-07 10:21:02 -04:00
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
Dylan Tientcheu
3f2b6e2fdf
chore: release v4.7.0 (#2934) 2026-07-27 18:36:34 +02:00
Dylan Tientcheu
e7633444f0
chore: release v4.6.3 (#2879) 2026-04-27 17:45:07 +02:00
Dylan Tientcheu
45ba8d2175
chore: release v4.6.2 (#2875) 2026-03-26 13:52:48 +01:00
Dylan Tientcheu
f83f5a911c feat: agent studio feedback integration (#2868)
Cherry-picked from v5 branch.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-26 12:32:15 +01:00
Dylan Tientcheu
f86785218c
chore: release v4.6.0 (#2861) 2026-02-17 22:39:09 +01:00
Dylan Tientcheu
7c36039b10
chore: release v4.5.4 (#2854)
* chore: release v4.5.4

* upgrade

* fix: lock
2026-02-05 14:28:54 +01:00
Dylan Tientcheu
104f7d1a98
chore: release v4.5.3 (#2849) 2026-01-21 20:23:06 +01:00
Dylan Tientcheu
e50a55da86
chore: release v4.5.2 (#2846) 2026-01-21 14:45:22 +01:00
Dylan Tientcheu
7bf4521339
chore: release v4.5.1 (#2845) 2026-01-20 17:16:59 +01:00
Dylan Tientcheu
65d5b79dae
chore: release v4.5.0 (#2844) 2026-01-20 12:29:56 +01:00
Dylan Tientcheu
1674dbd55b
chore: release v4.5.0-beta.3 (#2843) 2026-01-16 17:31:56 +01:00
Paul Jankowski
f1aaf911d7
feat(askai): Allow Agent Studio specific search params (#2842)
* feat(askai): Allow Agent Studio specific search params

* Simplify DocSearchProps types definitions

* Revert "Simplify DocSearchProps types definitions"

This reverts commit b53bc97688.

* fix: types
2026-01-16 10:06:04 -05:00
Dylan Tientcheu
55db6e9053
chore: release v4.5.0-beta.2 (#2841) 2026-01-13 19:52:12 +01:00
Dylan Tientcheu
021613587f
chore: release v4.5.0-beta.1 (#2840) 2026-01-13 18:48:33 +01:00
Paul Jankowski
ffa2835194
feat(askai): Allow use of Agent Studio for chat backend (#2832)
* feat(askai): Allow use of Agent Studio for chat backend

* feat(askai): Remove feedback actions if using Agent Studio

* feat(askai): Document agentStudio param

* Remove module resolution

* Update packages/website/docs/api.mdx

Co-authored-by: Dylan Tientcheu <dylan.tientcheu@algolia.com>

* Use css var for sidepanel button background

---------

Co-authored-by: Natan Yagudayev <natanyagudayev@gmail.com>
Co-authored-by: Dylan Tientcheu <dylan.tientcheu@algolia.com>
2026-01-13 10:58:11 -05:00
Dylan Tientcheu
13db25fe58
chore: release v4.5.0-beta.0 (#2834) 2026-01-08 20:32:06 +01:00
Paul Jankowski
3ffd9f6f29
chore: Allow using staging env on DocSearch website (#2829) 2026-01-08 11:27:42 -05:00
Paul Jankowski
ded5d44f5b
chore: release v4.4.0 (#2820)
* chore: release v4.4.0

* fix: changelog

* fix(ci): Split dts building to own process for all packages

* fix: remove unused import

* fix: remove unused import

* update yarn cache key

* fix: better dependency management
2025-12-19 12:56:58 -05:00
Paul Jankowski
a98294a4fc
Revert "chore: release v4.4.0 (#2818)" (#2819)
This reverts commit 79c17f5fc2.
2025-12-19 11:37:09 -05:00
Paul Jankowski
79c17f5fc2
chore: release v4.4.0 (#2818)
* chore: release v4.4.0

* fix: changelog
2025-12-19 10:16:11 -05:00
Paul Jankowski
171c504f11
feat(sidepanel): Introduce Ask AI Sidepanel (#2816)
* feat(sidepanel): Add sidepanel component for Ask AI (#2792)

* feat(sidepanel): Initial working Sidepanel implementation

* fix: circleci config

* fix: set proper sidepanel export

* Sidepanel props updates, conversation screen updates

* Started mobile work

* Style prompt input and header for mobile

* fixes prompt input height, adds more translations, mobile updates, fixes panel height calculations

* finish mobile, adds dark theme, minor fixes

* fix: lock

* Add missing titles to buttons

* Have most recent conversation be at the bottom of the exchange list, scroll to newest conversation

* fix: versions

* move to floating variant being default for Sidepanel

---------

Co-authored-by: Dylan Tientcheu <dylantientcheu@gmail.com>

* feat(sidepanel): Sidepanel/Modal hybrid mode (#2799)

* feat(sidepanel): Initial working Sidepanel implementation

* fix: circleci config

* fix: set proper sidepanel export

* Sidepanel props updates, conversation screen updates

* Started mobile work

* Style prompt input and header for mobile

* fixes prompt input height, adds more translations, mobile updates, fixes panel height calculations

* finish mobile, adds dark theme, minor fixes

* fix: lock

* Add missing titles to buttons

* Have most recent conversation be at the bottom of the exchange list, scroll to newest conversation

* feat(sidepanel): Allow hybrid mode for Sidepanel and Modal

* fix: yarn.lock

* fix: tests - dont send new chat message from modal while in hybrid mode

* Make docsearch core a true dependency

* Cleanup handling the registered views Set

---------

Co-authored-by: Dylan Tientcheu <dylantientcheu@gmail.com>

* feat(sidepanel): Add sidepanel-js package for CDN (#2800)

* feat(sidepanel): Initial working Sidepanel implementation

* fix: circleci config

* fix: set proper sidepanel export

* Sidepanel props updates, conversation screen updates

* Started mobile work

* Style prompt input and header for mobile

* fixes prompt input height, adds more translations, mobile updates, fixes panel height calculations

* finish mobile, adds dark theme, minor fixes

* fix: lock

* Add missing titles to buttons

* Have most recent conversation be at the bottom of the exchange list, scroll to newest conversation

* feat(sidepanel): Add sidepanel-js package for CDN

* fix: ci

* fix: yarn.lock

---------

Co-authored-by: Dylan Tientcheu <dylantientcheu@gmail.com>

* feat(sidepanel): Sidepanel UI/UX tweaks (#2808)

* fix(umd): Fixes global names for packages in UMD builds

* chore: Update tsdeclaration files, update directory field in package json files

* feat(sidepanel): Add Sidepanel documentation (#2811)

* feat(sidepanel): Add Sidepanel documentation

* Minor fixes and updates

* Hybrid mode update

* fix: hardcode yarn cache key for now

---------

Co-authored-by: Dylan Tientcheu <dylantientcheu@gmail.com>
2025-12-17 13:25:50 -05:00
Paul Jankowski
b0a28f57f7
fix(button): Fixes default button styling accessibility (#2814) 2025-12-05 16:20:46 -05:00
Rami Yushuvaev
9ed6c5a9ba
feat: Native RTL support (#2802) 2025-11-20 11:09:21 +01:00
Paul Jankowski
98067b58a2
chore: release v4.3.2 (#2798) 2025-11-10 16:24:42 -05:00
Paul Jankowski
d9c4220457
fix(suggested-questions): Fixes Suggested Questions on dark theme (#2797) 2025-11-10 16:08:24 -05:00
Paul Jankowski
82a0083c75
chore: release v4.3.1 (#2796)
* chore: release v4.3.1

* Manually bump version numbers
2025-11-04 14:42:36 -05:00
Dylan Tientcheu
4d951ccc93
chore: release v4.3.0 (#2794) 2025-11-04 12:42:21 -05:00
Paul Jankowski
e5ae33fe90
feat(composable-api): Document Composable API (#2793) 2025-11-04 09:40:05 -05: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
Vasco Bettencourt
5381e76126
fix(docsearch-js): resultsFooterComponent not working in JS CDN version (#2786)
* fix: resultsFooterComponent not working in JS CDN version

* fix: ci

* feat: implement htm templates

* fix: ci

* fix

* fix

* fix: ci

* fix: types

* fix: rollup

* fix: ci

* fix

* feat: add hitComponent updated docs

* fix: formatting
2025-10-15 09:57:00 +01:00
Dylan Tientcheu
4e0fc72f4d
chore: release v4.2.0 (#2781) 2025-10-08 17:51:15 +02:00
Vasco Bettencourt
9986cbf426
feat: update Ask AI docs (#2775)
* feat: add link to Ask AI Algolia docs

* docs: add dual SDK support to Ask AI API docs

* fix: ci

* docs: uniformize Ask AI copy

* fix
2025-10-05 23:43:03 +01:00
Dylan Tientcheu
2ff6353cb2
chore: release v4.1.0 (#2770) 2025-09-22 23:01:57 +02:00
Dylan Tientcheu
e76e07e9f4
chore: release v4.0.1 (#2762) 2025-09-16 16:03:46 +02:00
Dylan Tientcheu
7f97f5c6f6
chore: release v4.0.0 (#2757) 2025-09-15 17:44:14 +02:00
Paul Jankowski
905e26d693
feat(v4): Add support for multi-index search (#2736)
* feat(v4): Add support for multi-index search

* feat(docs): Document new indices property and mark indeName and searchParameters as deprecated

---------

Co-authored-by: Dylan Tientcheu <dylan.tientcheu@algolia.com>
2025-09-02 11:18:38 -04:00
Dylan Tientcheu
47be73da2c
chore: release v4.0.0-beta.8 (#2739) 2025-08-28 15:52:04 +02:00
Dylan Tientcheu
bdb5d907e8
chore: release v4.0.0-beta.7 (#2717) 2025-08-14 21:00:32 +02:00
Dylan Tientcheu
d5c9c527d7
feat: a11y and ux tweaks (#2712)
Co-authored-by: Natan Yagudayev <natanyagudayev@gmail.com>
2025-08-14 20:04:30 +02:00
Dylan Tientcheu
dfe6cd5ab3
chore: release v4.0.0-beta.6 (#2707) 2025-08-11 09:19:43 +02:00
Dylan Tientcheu
3478262b3e
fix: cater for transformItems to use DS with custom indices (#2705) 2025-08-08 16:24:24 +02:00