Skip to content

feat(browser-sdk,react-sdk): Toolbar shows features currently in use on page #326

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

Draft
wants to merge 50 commits into
base: main
Choose a base branch
from

Conversation

roncohen
Copy link
Contributor

This will bring any feature currently in use on the page to the top and color them differently:

Screen.Recording.2025-02-17.at.09.30.42.mov

Any in-use feature will show up regardless of whether it exists in bucket.co.

Need some input on the styling of those "in-use" features :)

pavkam and others added 28 commits January 29, 2025 12:06
…config` option. (#285)

This PR introduces the `config`, which is an user-supplied JSON value
that matches a given feature context (similar to targeting). The
resolved configuration variant is then passed down to the client SDKs
for use.
Was missing in the previous alpha release, which meant that the value of
the `toolbar` prop wasn't correctly configured in the browser SDK.
This PR adds support for remote configuration to the node-sdk.
If typedoc fails, so should the whole script
…/dev/nextjs-flag-demo (#284)

Bumps [next](https://github.com/vercel/next.js) from 14.2.15 to 14.2.21.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/vercel/next.js/releases">next's
releases</a>.</em></p>
<blockquote>
<h2>v14.2.21</h2>
<blockquote>
<p>[!NOTE]<br />
This release is backporting bug fixes. It does <strong>not</strong>
include all pending features/changes on canary.</p>
</blockquote>
<h3>Core Changes</h3>
<ul>
<li>Upgrade React from 14898b6a9 to 178c267a4e: <a
href="https://redirect.github.com/vercel/next.js/pull/74115">vercel/next.js#74115</a></li>
<li>Fix unstable_allowDynamic when used with pnpm: <a
href="https://redirect.github.com/vercel/next.js/pull/73765">vercel/next.js#73765</a></li>
</ul>
<h3>Misc Changes</h3>
<ul>
<li>chore(docs): add missing search: '' on remotePatterns: <a
href="https://redirect.github.com/vercel/next.js/pull/73927">vercel/next.js#73927</a></li>
<li>chore(docs): update version history of next/image: <a
href="https://redirect.github.com/vercel/next.js/pull/73926">vercel/next.js#73926</a></li>
</ul>
<h3>Credits</h3>
<p>Huge thanks to <a
href="https://github.com/unstubbable"><code>@​unstubbable</code></a>, <a
href="https://github.com/ztanner"><code>@​ztanner</code></a>, and <a
href="https://github.com/styfle"><code>@​styfle</code></a> for
helping!</p>
<h2>v14.2.20</h2>
<blockquote>
<p>[!NOTE]<br />
This release is backporting bug fixes. It does <strong>not</strong>
include all pending features/changes on canary.</p>
</blockquote>
<h3>Core Changes</h3>
<ul>
<li>Fix fetch cloning bug (<a
href="https://redirect.github.com/vercel/next.js/pull/73532">vercel/next.js#73532</a>)</li>
</ul>
<h3>Credits</h3>
<p>Huge thanks to <a
href="https://github.com/wyattjoh"><code>@​wyattjoh</code></a> for
helping!</p>
<h2>v14.2.19</h2>
<blockquote>
<p>[!NOTE]<br />
This release is backporting bug fixes. It does <strong>not</strong>
include all pending features/changes on canary.</p>
</blockquote>
<h3>Core Changes</h3>
<ul>
<li>ensure worker exits bubble to parent process (<a
href="https://redirect.github.com/vercel/next.js/issues/73433">#73433</a>)</li>
<li>Increase max cache tags to 128 (<a
href="https://redirect.github.com/vercel/next.js/issues/73125">#73125</a>)</li>
</ul>
<h3>Misc Changes</h3>
<ul>
<li>Update max tag items limit in docs (<a
href="https://redirect.github.com/vercel/next.js/issues/73445">#73445</a>)</li>
</ul>
<h3>Credits</h3>
<p>Huge thanks to <a
href="https://github.com/ztanner"><code>@​ztanner</code></a> and <a
href="https://github.com/ijjk"><code>@​ijjk</code></a> for helping!</p>
<h2>v14.2.18</h2>
<blockquote>
<p>[!NOTE]<br />
This release is backporting bug fixes. It does <strong>not</strong>
include all pending features/changes on canary.</p>
</blockquote>
<h3>Core Changes</h3>
<ul>
<li>Fix: (third-parties) sendGTMEvent not queueing events before GTM
init (<a
href="https://redirect.github.com/vercel/next.js/issues/68683">#68683</a>)
(<a
href="https://redirect.github.com/vercel/next.js/issues/72111">#72111</a>)</li>
<li>Ignore error pages for cache revalidate (<a
href="https://redirect.github.com/vercel/next.js/issues/72412">#72412</a>)
(<a
href="https://redirect.github.com/vercel/next.js/issues/72484">#72484</a>)</li>
</ul>
<h3>Credits</h3>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/vercel/next.js/commit/2655f6efd3379cf68205b3b5c5173399294f7731"><code>2655f6e</code></a>
v14.2.21</li>
<li><a
href="https://github.com/vercel/next.js/commit/8803d2b46e66ad831aec7979f2b7f0243057e48f"><code>8803d2b</code></a>
Backport (v14): Upgrade React from 14898b6a9 to 178c267a4e (<a
href="https://redirect.github.com/vercel/next.js/issues/74115">#74115</a>)</li>
<li><a
href="https://github.com/vercel/next.js/commit/6e35243eae7f876177462b32763b3749d84c7d03"><code>6e35243</code></a>
chore(docs): add missing <code>search: ''</code> on
<code>remotePatterns</code> (<a
href="https://redirect.github.com/vercel/next.js/issues/73925">#73925</a>)
(<a
href="https://redirect.github.com/vercel/next.js/issues/73927">#73927</a>)</li>
<li><a
href="https://github.com/vercel/next.js/commit/54919d2f2829e112a24ab2559a1e71e0d3ab859d"><code>54919d2</code></a>
chore(docs): update version history of <code>next/image</code> (<a
href="https://redirect.github.com/vercel/next.js/issues/73926">#73926</a>)</li>
<li><a
href="https://github.com/vercel/next.js/commit/049a6907af00488a607e958a863fe42328d8cd6a"><code>049a690</code></a>
Backport: Fix <code>unstable_allowDynamic</code> when used with pnpm (<a
href="https://redirect.github.com/vercel/next.js/issues/73765">#73765</a>)</li>
<li><a
href="https://github.com/vercel/next.js/commit/663fa9cb295730b5adfce8f968593f3838228d16"><code>663fa9c</code></a>
Fix SWC and React versions for <code>14-2-1</code> branch (<a
href="https://redirect.github.com/vercel/next.js/issues/73791">#73791</a>)</li>
<li><a
href="https://github.com/vercel/next.js/commit/ed78a4aa673034719d5664536a80d326eebac7e1"><code>ed78a4a</code></a>
v14.2.20</li>
<li><a
href="https://github.com/vercel/next.js/commit/530421d3a2cf00e94a8d68ef5b093bb866f13f14"><code>530421d</code></a>
[backport] Fix/dedupe fetch clone (<a
href="https://redirect.github.com/vercel/next.js/issues/73532">#73532</a>)</li>
<li><a
href="https://github.com/vercel/next.js/commit/cbc62adabae6517b0f848a43a777af9b161cfd97"><code>cbc62ad</code></a>
v14.2.19</li>
<li><a
href="https://github.com/vercel/next.js/commit/92280dc4359c319aaac86e9795d74477b77f09ff"><code>92280dc</code></a>
[backport] Update max tag items limit in docs (<a
href="https://redirect.github.com/vercel/next.js/issues/73445">#73445</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/vercel/next.js/compare/v14.2.15...v14.2.21">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=next&package-manager=npm_and_yarn&previous-version=14.2.15&new-version=14.2.21)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
You can disable automated security fix PRs for this repo from the
[Security Alerts
page](https://github.com/bucketco/bucket-javascript-sdk/network/alerts).

</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Alexandru Ciobanu <alex+git@ciobanu.org>
Co-authored-by: Alexandru Ciobanu <alex+git@ciobanu.org>
…ontexts (#297)

- Updated README files to document new `avatar` attribute
- Added `avatar` to user and company context types in browser and node
SDKs
- Expanded documentation for special attributes in context objects
- Added type definitions for avatar in relevant type files
…ample (#289)

Bumps [nanoid](https://github.com/ai/nanoid) from 3.3.7 to 3.3.8.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/ai/nanoid/blob/main/CHANGELOG.md">nanoid's
changelog</a>.</em></p>
<blockquote>
<h2>3.3.8</h2>
<ul>
<li>Fixed a way to break Nano ID by passing non-integer size (by <a
href="https://github.com/myndzi"><code>@​myndzi</code></a>).</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/ai/nanoid/commit/3044cd5e73f4cf31795f61f6e6b961c8c0a5c744"><code>3044cd5</code></a>
Release 3.3.8 version</li>
<li><a
href="https://github.com/ai/nanoid/commit/4fe34959c34e5b3573889ed4f24fe91d1d3e7231"><code>4fe3495</code></a>
Update size limit</li>
<li><a
href="https://github.com/ai/nanoid/commit/d643045f40d6dc8afa000a644d857da1436ed08c"><code>d643045</code></a>
Fix pool pollution, infinite loop (<a
href="https://redirect.github.com/ai/nanoid/issues/510">#510</a>)</li>
<li>See full diff in <a
href="https://github.com/ai/nanoid/compare/3.3.7...3.3.8">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=nanoid&package-manager=npm_and_yarn&previous-version=3.3.7&new-version=3.3.8)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
You can disable automated security fix PRs for this repo from the
[Security Alerts
page](https://github.com/bucketco/bucket-javascript-sdk/network/alerts).

</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Unable to write a test for this, but tested manually.
No-op release to fix NPM release tag in which latest points to a
prerelease by mistake. Node.js "latest" pointing to a prerelease
was fixed here:
579eb1c
- standardize on `features` for passing a feaure list
- take arguments from the old `features` options and put them in
  at the root options map.
This PR adds the ability to pass the `meta` to `getFeature(s)` and the
bound client.
…k/example (#313)

Bumps
[vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest)
from 2.1.4 to 2.1.9.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/vitest-dev/vitest/releases">vitest's
releases</a>.</em></p>
<blockquote>
<h2>v2.1.9</h2>
<p>This release includes security patches for:</p>
<ul>
<li><a
href="https://github.com/vitest-dev/vitest/security/advisories/GHSA-8gvc-j273-4wm5">Browser
mode serves arbitrary files | CVE-2025-24963</a></li>
<li><a
href="https://github.com/vitest-dev/vitest/security/advisories/GHSA-9crc-q9x8-hgqq">Remote
Code Execution when accessing a malicious website while Vitest API
server is listening | CVE-2025-24964</a></li>
</ul>
<h3>   🐞 Bug Fixes</h3>
<ul>
<li>backport <a
href="https://redirect.github.com/vitest-dev/vitest/issues/7317">vitest-dev/vitest#7317</a>
to v2 - by <a
href="https://github.com/hi-ogawa"><code>@​hi-ogawa</code></a> in <a
href="https://redirect.github.com/vitest-dev/vitest/pull/7318">vitest-dev/vitest#7318</a></li>
<li>(backport <a
href="https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest/issues/7340">#7340</a>
to v2) restrict served files from <code>/__screenshot-error</code> - by
<a href="https://github.com/hi-ogawa"><code>@​hi-ogawa</code></a> in <a
href="https://redirect.github.com/vitest-dev/vitest/pull/7343">vitest-dev/vitest#7343</a></li>
</ul>
<h5>    <a
href="https://github.com/vitest-dev/vitest/compare/v2.1.8...v2.1.9">View
changes on GitHub</a></h5>
<h2>v2.1.8</h2>
<h3>   🐞 Bug Fixes</h3>
<ul>
<li>Support Node 21  -  by <a
href="https://github.com/sheremet-va"><code>@​sheremet-va</code></a> <a
href="https://github.com/vitest-dev/vitest/commit/92f7a2ad"><!-- raw
HTML omitted -->(92f7a)<!-- raw HTML omitted --></a></li>
</ul>
<h5>    <a
href="https://github.com/vitest-dev/vitest/compare/v2.1.7...v2.1.8">View
changes on GitHub</a></h5>
<h2>v2.1.7</h2>
<h3>   🐞 Bug Fixes</h3>
<ul>
<li>Revert support for Vite 6  -  by <a
href="https://github.com/sheremet-va"><code>@​sheremet-va</code></a> <a
href="https://github.com/vitest-dev/vitest/commit/fbe5c39d"><!-- raw
HTML omitted -->(fbe5c)<!-- raw HTML omitted --></a>
<ul>
<li>This introduced some breaking changes (<a
href="https://redirect.github.com/vitest-dev/vitest/issues/6992">vitest-dev/vitest#6992</a>).
We will enable support for it later. In the meantime, you can still use
<code>pnpm.overrides</code> or yarn resolutions to override the
<code>vite</code> version in the <code>vitest</code> package - the APIs
are compatible.</li>
</ul>
</li>
</ul>
<h5>    <a
href="https://github.com/vitest-dev/vitest/compare/v2.1.6...v2.1.7">View
changes on GitHub</a></h5>
<h2>v2.1.6</h2>
<h2>🚀 Features</h2>
<ul>
<li>Support Vite 6</li>
</ul>
<h5>    <a
href="https://github.com/vitest-dev/vitest/compare/v2.1.5...v2.1.6">View
changes on GitHub</a></h5>
<h2>v2.1.5</h2>
<h3>   🐞 Bug Fixes</h3>
<ul>
<li><code>dangerouslyIgnoreUnhandledErrors</code> without base reporter
 -  by <a
href="https://github.com/AriPerkkio"><code>@​AriPerkkio</code></a> in <a
href="https://redirect.github.com/vitest-dev/vitest/issues/6808">vitest-dev/vitest#6808</a>
<a href="https://github.com/vitest-dev/vitest/commit/0bf0ab00"><!-- raw
HTML omitted -->(0bf0a)<!-- raw HTML omitted --></a></li>
<li>Capture <code>unhandledRejection</code> even when base reporter is
not used  -  by <a
href="https://github.com/AriPerkkio"><code>@​AriPerkkio</code></a> in <a
href="https://redirect.github.com/vitest-dev/vitest/issues/6812">vitest-dev/vitest#6812</a>
<a href="https://github.com/vitest-dev/vitest/commit/8878b04d"><!-- raw
HTML omitted -->(8878b)<!-- raw HTML omitted --></a></li>
<li>Don't change the working directory when loading workspace projects
 -  by <a
href="https://github.com/sheremet-va"><code>@​sheremet-va</code></a> in
<a
href="https://redirect.github.com/vitest-dev/vitest/issues/6811">vitest-dev/vitest#6811</a>
<a href="https://github.com/vitest-dev/vitest/commit/f0aeaca8"><!-- raw
HTML omitted -->(f0aea)<!-- raw HTML omitted --></a></li>
<li>Remove <code>sequence.concurrent</code> from the
<code>RuntimeConfig</code> type  -  by <a
href="https://github.com/sheremet-va"><code>@​sheremet-va</code></a> in
<a
href="https://redirect.github.com/vitest-dev/vitest/issues/6880">vitest-dev/vitest#6880</a>
<a href="https://github.com/vitest-dev/vitest/commit/6af73d93"><!-- raw
HTML omitted -->(6af73)<!-- raw HTML omitted --></a></li>
<li>Stop the runner before restarting, restart on workspace config
change  -  by <a
href="https://github.com/sheremet-va"><code>@​sheremet-va</code></a> in
<a
href="https://redirect.github.com/vitest-dev/vitest/issues/6859">vitest-dev/vitest#6859</a>
<a href="https://github.com/vitest-dev/vitest/commit/b01df47d"><!-- raw
HTML omitted -->(b01df)<!-- raw HTML omitted --></a></li>
<li>Don't rerun on Esc or Ctrl-C during watch filter  -  by <a
href="https://github.com/hi-ogawa"><code>@​hi-ogawa</code></a> in <a
href="https://redirect.github.com/vitest-dev/vitest/issues/6895">vitest-dev/vitest#6895</a>
<a href="https://github.com/vitest-dev/vitest/commit/98f76ea7"><!-- raw
HTML omitted -->(98f76)<!-- raw HTML omitted --></a></li>
<li>Print ssrTransform error  -  by <a
href="https://github.com/hi-ogawa"><code>@​hi-ogawa</code></a> in <a
href="https://redirect.github.com/vitest-dev/vitest/issues/6885">vitest-dev/vitest#6885</a>
<a href="https://github.com/vitest-dev/vitest/commit/4c96cce7"><!-- raw
HTML omitted -->(4c96c)<!-- raw HTML omitted --></a></li>
<li>Throw an error and a warning if <code>.poll</code>,
<code>.element</code>, <code>.rejects</code>/<code>.resolves</code>, and
<code>locator.*</code> weren't awaited  -  by <a
href="https://github.com/sheremet-va"><code>@​sheremet-va</code></a> in
<a
href="https://redirect.github.com/vitest-dev/vitest/issues/6877">vitest-dev/vitest#6877</a>
<a href="https://github.com/vitest-dev/vitest/commit/93b67c24"><!-- raw
HTML omitted -->(93b67)<!-- raw HTML omitted --></a></li>
<li><strong>browser</strong>:
<ul>
<li>Don't process the default css styles  -  by <a
href="https://github.com/sheremet-va"><code>@​sheremet-va</code></a> in
<a
href="https://redirect.github.com/vitest-dev/vitest/issues/6861">vitest-dev/vitest#6861</a>
<a href="https://github.com/vitest-dev/vitest/commit/0d67f04b"><!-- raw
HTML omitted -->(0d67f)<!-- raw HTML omitted --></a></li>
<li>Support non US key input  -  by <a
href="https://github.com/hi-ogawa"><code>@​hi-ogawa</code></a> in <a
href="https://redirect.github.com/vitest-dev/vitest/issues/6873">vitest-dev/vitest#6873</a>
<a href="https://github.com/vitest-dev/vitest/commit/5969d8da"><!-- raw
HTML omitted -->(5969d)<!-- raw HTML omitted --></a></li>
</ul>
</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/vitest-dev/vitest/commit/c9e59a089d94642eea29a43f2ee1986a5afb99c6"><code>c9e59a0</code></a>
chore: release v2.1.9</li>
<li><a
href="https://github.com/vitest-dev/vitest/commit/e0fe1d81e2d4bcddb1c6ca3c5c3970d8ba697383"><code>e0fe1d8</code></a>
fix: backport <a
href="https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest/issues/7317">#7317</a>
to v2 (<a
href="https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest/issues/7318">#7318</a>)</li>
<li><a
href="https://github.com/vitest-dev/vitest/commit/d69cc75698dd6dbeaed5c237ebb46ccd41bfb438"><code>d69cc75</code></a>
bump: 2.1.8</li>
<li><a
href="https://github.com/vitest-dev/vitest/commit/92f7a2ad18453343bfef1333af4b4c8191f72ec4"><code>92f7a2a</code></a>
fix: support Node 21</li>
<li><a
href="https://github.com/vitest-dev/vitest/commit/81ed45b3a46759ac5b8aaa3a5fad80767316c4ae"><code>81ed45b</code></a>
chore: release v2.1.7</li>
<li><a
href="https://github.com/vitest-dev/vitest/commit/fbe5c39d8891abcd91dc6b03720ee2b6c7678197"><code>fbe5c39</code></a>
fix: revert support for Vite 6</li>
<li><a
href="https://github.com/vitest-dev/vitest/commit/b936702debce5a9deca637b25950afa485ad3639"><code>b936702</code></a>
bump: 2.1.6</li>
<li><a
href="https://github.com/vitest-dev/vitest/commit/32f23b98b4b1a3708360debc03b6719f5226db87"><code>32f23b9</code></a>
chore: release v2.1.5</li>
<li><a
href="https://github.com/vitest-dev/vitest/commit/417bdb423d7a33d9c8be5b2d0d7027a2c38ded43"><code>417bdb4</code></a>
fix(browser): init browsers eagerly when tests are running (<a
href="https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest/issues/6876">#6876</a>)</li>
<li><a
href="https://github.com/vitest-dev/vitest/commit/93b67c24b1e8297f230d54d953a5c537aa7b9f75"><code>93b67c2</code></a>
fix: throw an error and a warning if <code>.poll</code>,
<code>.element</code>, <code>.rejects</code>/`.resolv...</li>
<li>Additional commits viewable in <a
href="https://github.com/vitest-dev/vitest/commits/v2.1.9/packages/vitest">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=vitest&package-manager=npm_and_yarn&previous-version=2.1.4&new-version=2.1.9)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
You can disable automated security fix PRs for this repo from the
[Security Alerts
page](https://github.com/bucketco/bucket-javascript-sdk/network/alerts).

</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Alexandru Ciobanu <alex+git@ciobanu.org>
This removes the need to pass in a feature list to the SDK in order for
features to show up in the toolbar. Instead, we'll use the
`/features/evaluated` endpoint which returns all features.
…andling (#319)

- Upgrade Bucket Browser SDK to 3.0.0-alpha.2
- Improve context translation with more robust type handling
- Enhance flag resolution methods with detailed error handling
- Add support for more complex object and string flag evaluations
- Update README with comprehensive documentation on flag resolution
methods
- Improve test coverage for various flag resolution scenarios
…efinitions

- Streamline BucketProps by removing redundant properties
- Improve type documentation for BucketProvider props
- Merge InitOptions with BucketProps for cleaner configuration
- Update client initialization to use spread configuration
…ck (#309)

Remove legacy `featureId` option when using the `requestFeedback` and
`feedback` methods

The actual feedback payload can still contain the featureId because
bucket's prompting message do not include the feature key.
If you use `useFeature` or any of the other hooks that rely on the
BucketProvider without actually installing the Provider we should
complain loudly. I went for throwing an error when the provider is
missing because it's a serious mistake and should show up loudly as part
of the development workflow:

<img width="987" alt="Screenshot 2025-02-13 at 14 34 14"
src="https://github.com/user-attachments/assets/a75de6ef-2793-44be-848d-ec9a3fe13e97"
/>
Feature list is pulled from front.bucket.co now so this manual list is
superfluous.
@roncohen roncohen requested review from laander and pavkam February 17, 2025 08:34
@roncohen roncohen changed the title feat(browser-sdk,react-sdk): Show features currently in use on page feat(browser-sdk,react-sdk): Toolbar shows features currently in use on page Feb 17, 2025
Refactor type handling for useFeature to better support different
feature configurations and improve type safety
Event listeners allow capturing different events that happen in the Browser SDK.

They are useful for a number of things like building client side
integrations to analytics or error-logging systems.
Base automatically changed from hooks to browser-react-3.0.alpha February 17, 2025 15:27
@roncohen roncohen changed the base branch from browser-react-3.0.alpha to main February 27, 2025 10:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants