1
0
mirror of https://github.com/Unleash/unleash.git synced 2024-10-18 20:09:08 +02:00
Commit Graph

3876 Commits

Author SHA1 Message Date
Mateusz Kwasniewski
e380d28924
feat: up and down arrow navigation for filter items (#5673) 2023-12-18 14:13:32 +01:00
andreas-unleash
75bdd73c15
feat: add plausible tracking to scheduling (#5668)
Adds plausible tracking with actions:
- scheduled-created
- scheduled-updated
- scheduled-rejected
- scheduled-applied

Closes #
[1-1630](https://linear.app/unleash/issue/1-1630/add-plausible-metrics)

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2023-12-18 15:06:58 +02:00
Paulo Miranda
fd34f35e0e
feat: add reset password to user manager (#5580)
## About the changes
This PR adds a reset password functionality to user table (only available to admins). This makes it possible to reset passwords without configuring the email service.

![Screenshot from 2023-12-10
20-41-22](https://github.com/Unleash/unleash/assets/32435715/0209525a-4f3a-4998-b9de-7299469e1a68)

![Screenshot from 2023-12-16
16-40-36](https://github.com/Unleash/unleash/assets/32435715/556e324c-c0b0-4bb9-b2b5-3bd653f4d329)

![Screenshot from 2023-12-16
16-40-48](https://github.com/Unleash/unleash/assets/32435715/b0249e9d-9e1a-4cfe-a5ee-0ab22f45ce28)

---------

Co-authored-by: Ivar Conradi Østhus <ivarconr@gmail.com>
Co-authored-by: Thomas Heartman <thomasheartman+github@gmail.com>
2023-12-18 13:54:04 +01:00
Mateusz Kwasniewski
c5b3058890
fix: date filter item missing key (#5674) 2023-12-18 13:51:27 +01:00
Mateusz Kwasniewski
6bf54a2f24
feat: keyboard navigation filter item (#5667) 2023-12-18 12:36:00 +01:00
Mateusz Kwasniewski
5ba588f59a
feat: Multi highlighter (#5666) 2023-12-18 10:58:07 +01:00
andreas-unleash
7fdd720aa3
feat: show failure in cr overview (#5660)
Show failure reason in change request overview

Closes
[1-1769](https://linear.app/unleash/issue/1-1769/add-reason-and-icon-to-change-request-overview)
<img width="771" alt="Screenshot 2023-12-15 at 10 37 03"
src="https://github.com/Unleash/unleash/assets/104830839/898b6ac9-bd44-442f-92a4-9b4d5754fea7">

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2023-12-18 11:37:56 +02:00
Jaanus Sellin
2da919fee9
fix: disable sort (#5665)
'
2023-12-18 10:25:10 +02:00
Mateusz Kwasniewski
cc01971ff0
feat: update message with no feature toggles (#5663) 2023-12-18 09:05:58 +01:00
Tymoteusz Czech
50ff36cbce
feat: feature table tags (#5659)
- tags on project overview
- refactor of tags cell
2023-12-15 16:22:19 +01:00
Mateusz Kwasniewski
d429f51cbd
feat: filter chips icons (#5658) 2023-12-15 13:42:09 +00:00
Fredrik Strand Oseberg
864ae4530b
Feat/new strategy configuration header (#5655)
This PR adds more information to the header of the strategy according to
the new designs:

<img width="1298" alt="Skjermbilde 2023-12-15 kl 13 31 26"
src="https://github.com/Unleash/unleash/assets/16081982/73a3bc6b-c78b-4f24-b9f3-8a4b2c14e39c">
2023-12-15 14:09:47 +01:00
Mateusz Kwasniewski
8283edfc0a
feat: Sort by stale (#5653) 2023-12-15 11:56:06 +00:00
Mateusz Kwasniewski
bf4d37fded
feat: disable sorting on selected columns (#5652) 2023-12-15 12:47:00 +01:00
Fredrik Strand Oseberg
cbd6aa1324
Feat/new strategy variants tab (#5649)
This PR sets up the variants tab for the new strategy configuration.
Also some minor adjustments to the new form:

* Change where padding is controlled to allow us to have more granular
control over how the buttons width and border should look and have the
tabs have full-width borders across the form
* Move the buttons to be absolutely positioned at the bottom of the page
* Move where we display banners to avoid clutter

<img width="1284" alt="Skjermbilde 2023-12-14 kl 21 17 53"
src="https://github.com/Unleash/unleash/assets/16081982/45e6a364-e4aa-47ac-b420-f3be9b39a15e">
2023-12-15 12:26:13 +01:00
Jaanus Sellin
848415c5ca
feat: add history for search (#5651)
This is simple refactor. Just moving history part out of suggestions
component.
2023-12-15 13:22:19 +02:00
Tymoteusz Czech
203d6ac848
refactor: paginated project table cleanup (#5646)
- added `getRowId` - fix row selection
- move and rename paginated table
2023-12-15 11:37:49 +01:00
Nuno Góis
8be09510e8
chore: clean up banners feature flag (#5648)
Cleans up some leftover references to the `banners` feature flag. 

Related to https://github.com/Unleash/unleash/pull/5348
2023-12-15 10:16:13 +00:00
Nuno Góis
f84fa81ebe
chore: add incomingWebhooks feature flag (#5647)
https://linear.app/unleash/issue/2-1683/feature-flag-add-a-new-incomingwebhooks-feature-flag-for-this-feature

Adds a new `incomingWebhooks` feature flag.
2023-12-15 10:15:52 +00:00
Mateusz Kwasniewski
0726887bb8
feat: reset persistent table offset on change (#5650) 2023-12-15 10:20:55 +01:00
Fredrik Strand Oseberg
53b32db278
Feat/new strategy configuration targeting tab (#5643)
This PR sets up the new targeting tab for strategy configuration:

<img width="1292" alt="Skjermbilde 2023-12-14 kl 11 24 11"
src="https://github.com/Unleash/unleash/assets/16081982/5c2d8f02-b3ec-49d4-b8bd-90f93ef3931c">
2023-12-15 10:20:34 +01:00
Gastón Fournier
1338496445
chore: enable manual testing of migrations (#5645)
## About the changes
This adds a Makefile to make it easy to test migrations from one version
of Unleash to another.

The script depends on [docker compose
V2](https://docs.docker.com/compose/migrate/)

**Before starting**: make sure you're inside test-migrations folder and
run `make clean` to be in a clean state.

We can run 2 versions of Unleash side by side with a shared database
(the second version will apply migrations to the DB):
```shell
UNLEASH_DOCKER_IMAGE=unleashorg/unleash-server:5.6.10 make start-unleash # defaults to port 4242
UNLEASH_DOCKER_IMAGE=unleashorg/unleash-server:latest make start-another-unleash # defaults to port 4243
make test # run basic UI tests against port 4242 (first image)
EXPOSED_PORT=4243 make test # run basic UI tests against port 4243
```

This also enables us to test our local repository with our code of
Unleash server running at port 4244 (`EXPOSE_PORT=4444 make run-current`
if you want to change it):
```shell
UNLEASH_DOCKER_IMAGE=unleashorg/unleash-server:5.6.10 make start-unleash # defaults to port 4242
make run-current # exposes the current backend at 4244
```

You can also connect the latest UI to any of the ports specified above,
starting the UI at port 3000:
```shell
EXPOSED_PORT=4242 make run-current-ui # exposed port defaults to 4244 which is the port of the current backend
```
2023-12-14 15:12:13 +01:00
Jaanus Sellin
fbb5dd9022
feat: add icons to filters (#5640) 2023-12-14 15:06:26 +02:00
Mateusz Kwasniewski
772682176e
feat: pagination reset on feature list (#5644) 2023-12-14 13:44:27 +01:00
andreas-unleash
a595c0fbcc
feat: show failure reason for scheduled requests in timeline (#5639)
Adds an icon with a tooltip and changes the dot color to red for
scheduled change requests

Closes #
[1-1768](https://linear.app/unleash/issue/1-1768/add-reason-and-icon-to-timeline)
<img width="1668" alt="Screenshot 2023-12-14 at 10 20 27"
src="https://github.com/Unleash/unleash/assets/104830839/dcf54834-ea9f-4e78-b69d-15d6179ffce3">

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2023-12-14 11:49:14 +02:00
andreas-unleash
cbd50ac0f5
Feat: show status of scheduled change request (#5630)
Modifies the ChangeRequestStatusBadge to display the failed execution

Closes #
[1-1767](https://linear.app/unleash/issue/1-1767/add-status-to-scheduled-badge)
![Screenshot 2023-12-13 at 13 10
42](https://github.com/Unleash/unleash/assets/104830839/5aab83b4-a3d8-4a88-8f17-628cb37d7850)
![Screenshot 2023-12-13 at 13 15
26](https://github.com/Unleash/unleash/assets/104830839/799e4bbe-b469-4cee-a3df-f0b6efcca33a)

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2023-12-14 11:49:03 +02:00
Mateusz Kwasniewski
176e22ed40
feat: adjust filter chips styling (#5638) 2023-12-14 10:40:12 +01:00
Tymoteusz Czech
29bd636273
Feat: row actions (#5635)
- add table placeholder back
- add row actions column
- refactor actions into hook
- batch actions
2023-12-14 09:04:56 +01:00
Mateusz Kwasniewski
adb9ba5c09
test: filter selection avoid duplicates (#5636) 2023-12-13 15:57:49 +01:00
Jaanus Sellin
d00d27a9ac
fix: last seen now will not break (#5634) 2023-12-13 16:05:54 +02:00
Jaanus Sellin
1191094981
feat: add tests for filters component (#5632) 2023-12-13 16:05:09 +02:00
Mateusz Kwasniewski
bcf0e6b7a3
fix: avoid duplicate unselected filters (#5633) 2023-12-13 13:01:55 +01:00
Fredrik Strand Oseberg
c552f3ae72
Feat/new strategy configuration general tab (#5628)
* Adds the new general tab settings behind a feature flag
* Adds a test for the FlexibleStrategy component
2023-12-13 12:34:43 +01:00
Mateusz Kwasniewski
54316cace3
feat: project filter names (#5627) 2023-12-13 11:34:30 +01:00
Jaanus Sellin
92dd3feec2
refactor: project overview using filters component (#5626) 2023-12-13 11:56:08 +02:00
Jaanus Sellin
ed4a182e7e
refactor: filter abstraction (#5625) 2023-12-13 11:43:02 +02:00
Tymoteusz Czech
17b747ea8f
feat: project features - new columns visibility handling (#5605)
In `ExperimentalProjectTable.tsx`, changes have been made to the columns
configuration in order to handle column visibiilty. This includes adding
id property to every column. Logic responsible for dynamically adjusts
column visibility based on screen size was moved to new hook,
`useDefaultColumnVisibility`
2023-12-13 10:08:16 +01:00
Jaanus Sellin
c0c1dba9b0
refactor: simplify configuration for filters (#5622)
This is building block of abstraction for filters.
2023-12-13 10:23:59 +02:00
Mateusz Kwasniewski
11b477d872
test: scrollable filter options and sticky search (#5623) 2023-12-13 09:23:20 +01:00
Mateusz Kwasniewski
2b7e127680
test: feature toggle list table (#5618) 2023-12-13 08:13:19 +01:00
Jaanus Sellin
4f207f18e6
feat: filters for project overview (#5620) 2023-12-12 22:50:49 +02:00
Jaanus Sellin
1c95029319
feat: add plausible tracking (#5614) 2023-12-12 15:46:48 +02:00
Jaanus Sellin
8961a6e1db
fix: paginated project overview now returns single project (#5615) 2023-12-12 15:46:08 +02:00
andreas-unleash
4376697250
feat: show Changes scheduled in feature variants even when CR are dis… (#5613)
show Changes scheduled in feature variants even when CR are disabled

Modifies existing hook to call the new `change-requests/scheduled`
endpoint that returns the relevant scheduled change requests even when
change requests are disabled

Rename the ChangeRequestIdentityData to ScheduledChangeRequestViewModel
for consistency (finalised schemas will replace the BE and FE types in a
follow up PR)

Closes #
[1-1746](https://linear.app/unleash/issue/1-1746/show-change-scheduled-badge-in-feature-environment-variants-even-if)

<img width="1486" alt="Screenshot 2023-12-12 at 14 24 44"
src="https://github.com/Unleash/unleash/assets/104830839/7c4e92ef-81d8-423e-8b78-9015ede59952">

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2023-12-12 15:34:32 +02:00
Tymoteusz Czech
bc62a98f51
update withTableState (#5603)
## About the changes
Handle column visibility from table state in URL and local storage.
2023-12-12 14:01:04 +01:00
Tymoteusz Czech
8a5a73ad7d
feat: new columns visibility menu (#5604)
New `<ColumnsMenu />` is using it's own list of elements instead of
inferring it from table columns definition. This component doesn't need
it's internal structure to depend on react-table and it's interface.
2023-12-12 13:41:25 +01:00
Jaanus Sellin
386c4baa86
feat: keep filters ordered based on user selection (#5609) 2023-12-12 13:01:23 +02:00
Mateusz Kwasniewski
850b78a699
fix: show popover on empty state (#5611) 2023-12-12 11:40:00 +01:00
Mateusz Kwasniewski
eebe43fcb1
feat: show dropdown immediately (#5606) 2023-12-12 09:27:50 +01:00
Mateusz Kwasniewski
e88beff2b2
feat: do not cache old search and filter results (#5600) 2023-12-12 08:47:57 +01:00
andreas-unleash
e02c252636
fix: show Changes scheduled badge for strategies even if change reque… (#5599)
show Changes scheduled badge for strategies even if change requests are
disabled

Closes #
[1-1745](https://linear.app/unleash/issue/1-1745/show-changes-scheduled-badge-in-strategy-item-even-if-change-requests)

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2023-12-12 09:30:57 +02:00
Jaanus Sellin
74f6f15247
feat: do not show project if not multiple projects exist (#5598) 2023-12-11 16:02:10 +02:00
Fredrik Strand Oseberg
9dbb7ea9a9
feat: add initial setup for tabs (#5586)
This PR sets up the initial tab structure for the new strategy form
2023-12-11 13:39:21 +01:00
Tymoteusz Czech
d11aedc12f
Project Overview with react-table v8 (#5571) 2023-12-11 13:33:11 +01:00
Mateusz Kwasniewski
ba50d1ef69
feat: adjust styling for search filters (#5587) 2023-12-11 13:11:26 +01:00
Jaanus Sellin
9bae14a2cc
feat: add tags filter (#5584) 2023-12-11 14:10:03 +02:00
Fredrik Strand Oseberg
ec670450fd
feat: initial setup (#5583)
This PR sets up the feature flag for the new strategy configuration and
duplicates the components for the new setup
2023-12-11 12:23:18 +01:00
andreas-unleash
2322e1149a
feat: more info on staleness in health report (#5582)
Adds an info tooltip for potentially stale and a link to configure
feature toggle type lifetime


Closes
[UNL-215](https://linear.app/unleash/issue/UNL-215/improve-health-page-with-some-guidance-about-staleness)
<img width="1323" alt="Screenshot 2023-12-11 at 11 39 36"
src="https://github.com/Unleash/unleash/assets/104830839/386ec6e6-55df-42ca-b5e0-ef3e75448452">

<img width="1316" alt="Screenshot 2023-12-11 at 11 43 07"
src="https://github.com/Unleash/unleash/assets/104830839/5bf7df15-ff87-4ce0-be25-0c031c881d05">

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2023-12-11 13:11:28 +02:00
Jaanus Sellin
5d80f5fa4d
feat: test filter date item (#5576) 2023-12-11 12:22:00 +02:00
Thomas Heartman
879e4c98e5
feat: show potential schedule conflicts when you archive flags (#5575)
Show change requests that would be impacted by an archive operation


![image](https://github.com/Unleash/unleash/assets/17786332/7b2af89a-7292-4b90-b7a4-768df375e0fb)
2023-12-11 10:45:45 +01:00
Tymoteusz Czech
e5c865b716
fix: menu routes for new features page - mobile option (#5566)
Remove duplicated option in the menu.
2023-12-08 14:53:10 +02:00
Thomas Heartman
cd731cef03
refactor: update the API url for getting scheduled change requests with a strategy (#5573)
Relates to enterprise PR 889; update the API url
2023-12-08 12:29:54 +01:00
Jaanus Sellin
166432bcb0
feat: support localization in date filter (#5572) 2023-12-08 13:20:39 +02:00
Jaanus Sellin
1173b664da
feat: add created date filter component (#5569) 2023-12-08 10:07:57 +02:00
dependabot[bot]
896202e5ae
chore(deps): bump @adobe/css-tools from 4.3.1 to 4.3.2 in /frontend (#5517)
Bumps [@adobe/css-tools](https://github.com/adobe/css-tools) from 4.3.1
to 4.3.2.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/adobe/css-tools/blob/main/History.md"><code>@​adobe/css-tools</code>'s
changelog</a>.</em></p>
<blockquote>
<h1>4.3.2 / 2023-11-28</h1>
<ul>
<li>Fix redos vulnerability with specific crafted css string -
CVE-2023-48631</li>
<li>Fix Problem parsing with :is() and nested :nth-child() <a
href="https://redirect.github.com/adobe/css-tools/issues/211">#211</a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a
href="https://github.com/adobe/css-tools/commits">compare view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=@adobe/css-tools&package-manager=npm_and_yarn&previous-version=4.3.1&new-version=4.3.2)](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/Unleash/unleash/network/alerts).

</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-12-07 13:00:07 +01:00
Simon Hornby
0e5861ac33
chore: use explicit images for inverted operator rather than a boolean not operator (#5565) 2023-12-07 13:03:19 +02:00
Jaanus Sellin
e89ebf358e
refactor: split filter configuration with filter visibility state (#5563)
This PR splits the filter configuration with filter visibility state.
This will simplify adding different filter types in future, for example
date filters.
2023-12-07 11:59:35 +02:00
Mateusz Kwasniewski
38d02e1a85
feat: segments operators (#5562) 2023-12-06 17:38:36 +02:00
Thomas Heartman
a228f54344
feat: show scheduled CRs using strategies when removing it (#5560)
Show a warning about how deleting a strategy might mess up scheduled
change requests.

If there are change requests, list them. If there are no conflicts, show
nothing. If we don't know (because of no successful response from the
API), say that it might cause issues.


![image](https://github.com/Unleash/unleash/assets/17786332/2c6a4257-69f5-458a-ab6f-9b2ea2f5d550)
2023-12-06 15:39:17 +01:00
Mateusz Kwasniewski
87ebbb0fa2
feat: segments filter (#5558)
Co-authored-by: sjaanus <sellinjaanus@gmail.com>
2023-12-06 14:50:18 +02:00
Jaanus Sellin
eda4186a6c
fix: state now persist to filters (#5559)
When navigating to features list, now it will respect the query params.
2023-12-06 14:17:49 +02:00
Jaanus Sellin
d9648de08d
chore: rename is not any of to is none of (#5544) 2023-12-06 12:53:51 +02:00
Jaanus Sellin
eb43d37379
feat: segment cell and orval types (#5543) 2023-12-06 12:51:00 +02:00
Jaanus Sellin
b8fabbd726
feat: add new filter button with state (#5556)
[Screencast from 2023-12-05
16-59-28.webm](https://github.com/Unleash/unleash/assets/964450/793c771b-6246-4e28-8c13-920696a48bd5)

---------

Co-authored-by: kwasniew <kwasniewski.mateusz@gmail.com>
2023-12-06 12:50:33 +02:00
Mateusz Kwasniewski
da1a9d4036
test: Filter item test (#5557) 2023-12-06 09:10:15 +01:00
renovate[bot]
55e8073e3c
chore(deps): update dependency vite to v4.5.1 [security] (#5554)
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [vite](https://vitejs.dev)
([source](https://togithub.com/vitejs/vite/tree/HEAD/packages/vite)) |
[`4.5.0` -> `4.5.1`](https://renovatebot.com/diffs/npm/vite/4.5.0/4.5.1)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/vite/4.5.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/vite/4.5.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/vite/4.5.0/4.5.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/vite/4.5.0/4.5.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

### GitHub Vulnerability Alerts

####
[CVE-2023-49293](https://togithub.com/vitejs/vite/security/advisories/GHSA-92r3-m2mg-pj97)

### Summary
When Vite's HTML transformation is invoked manually via
`server.transformIndexHtml`, the original request URL is passed in
unmodified, and the `html` being transformed contains inline module
scripts (`<script type="module">...</script>`), it is possible to inject
arbitrary HTML into the transformed output by supplying a malicious URL
query string to `server.transformIndexHtml`.

### Impact
Only apps using `appType: 'custom'` and using the default Vite HTML
middleware are affected. The HTML entry must also contain an inline
script. The attack requires a user to click on a malicious URL while
running the dev server. Restricted files aren't exposed to the attacker.

### Patches
Fixed in vite@5.0.5, vite@4.5.1, vite@4.4.12

### Details
Suppose `index.html` contains an inline module script:

```html
<script type="module">
  // Inline script
</script>
```

This script is transformed into a proxy script like

```html
<script type="module" src="/index.html?html-proxy&index=0.js"></script>
```

due to Vite's HTML plugin:


7fd7c6cebf/packages/vite/src/node/plugins/html.ts (L429-L465)

When `appType: 'spa' | 'mpa'`, Vite serves HTML itself, and
`htmlFallbackMiddleware` rewrites `req.url` to the canonical path of
`index.html`,


73ef074b80/packages/vite/src/node/server/middlewares/htmlFallback.ts (L44-L47)

so the `url` passed to `server.transformIndexHtml` is `/index.html`.

However, if `appType: 'custom'`, HTML is served manually, and if
`server.transformIndexHtml` is called with the unmodified request URL
(as the SSR docs suggest), then the path of the transformed `html-proxy`
script varies with the request URL. For example, a request with path `/`
produces

```html
<script type="module" src="/@&#8203;id/__x00__/index.html?html-proxy&index=0.js"></script>
```

It is possible to abuse this behavior by crafting a request URL to
contain a malicious payload like

```
"></script><script>alert('boom')</script>
```

so a request to
http://localhost:5173/?%22%3E%3C/script%3E%3Cscript%3Ealert(%27boom%27)%3C/script%3E
produces HTML output like

```html
<script type="module" src="/@&#8203;id/__x00__/?"></script><script>alert("boom")</script>?html-proxy&index=0.js"></script>
```

which demonstrates XSS.

### PoC

- Example 1. Serving HTML from `vite dev` middleware with `appType:
'custom'`
- Go to
https://stackblitz.com/edit/vitejs-vite-9xhma4?file=main.js&terminal=dev-html
    - "Open in New Tab"
- Edit URL to set query string to
`?%22%3E%3C/script%3E%3Cscript%3Ealert(%27boom%27)%3C/script%3E` and
navigate
    - Witness XSS:
-
![image](https://user-images.githubusercontent.com/2456381/287434281-13757894-7a63-4a73-b1e9-d2b024c19d14.png)
- Example 2. Serving HTML from SSR-style Express server (Vite dev server
runs in middleware mode):
- Go to
https://stackblitz.com/edit/vitejs-vite-9xhma4?file=main.js&terminal=server
    - (Same steps as above)
- Example 3. Plain `vite dev` (this shows that vanilla `vite dev` is
_not_ vulnerable, provided `htmlFallbackMiddleware` is used)
- Go to
https://stackblitz.com/edit/vitejs-vite-9xhma4?file=main.js&terminal=dev
    - (Same steps as above)
    - You should _not_ see the alert box in this case

### Detailed Impact

This will probably predominantly affect [development-mode
SSR](https://vitejs.dev/guide/ssr#setting-up-the-dev-server), where
`vite.transformHtml` is called using the original `req.url`, per the
docs:


7fd7c6cebf/docs/guide/ssr.md (L114-L126)

However, since this vulnerability affects `server.transformIndexHtml`,
the scope of impact may be higher to also include other ad-hoc calls to
`server.transformIndexHtml` from outside of Vite's own codebase.

My best guess at bisecting which versions are vulnerable involves the
following test script

```js
import fs from 'node:fs/promises';
import * as vite from 'vite';

const html = `
<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
  </head>
  <body>
    <script type="module">
      // Inline script
    </script>
  </body>
</html>
`;
const server = await vite.createServer({ appType: 'custom' });
const transformed = await server.transformIndexHtml('/?%22%3E%3C/script%3E%3Cscript%3Ealert(%27boom%27)%3C/script%3E', html);
console.log(transformed);
await server.close();
```

and using it I was able to narrow down to #&#8203;13581. If this is
correct, then vulnerable Vite versions are 4.4.0-beta.2 and higher
(which includes 4.4.0).

---

### Release Notes

<details>
<summary>vitejs/vite (vite)</summary>

### [`v4.5.1`](https://togithub.com/vitejs/vite/releases/tag/v4.5.1)

[Compare
Source](https://togithub.com/vitejs/vite/compare/v4.5.0...v4.5.1)

Please refer to
[CHANGELOG.md](https://togithub.com/vitejs/vite/blob/v4.5.1/packages/vite/CHANGELOG.md)
for details.

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "" in timezone Europe/Madrid,
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/Unleash/unleash).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy44MS4zIiwidXBkYXRlZEluVmVyIjoiMzcuODEuMyIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-12-06 00:30:39 +00:00
Mateusz Kwasniewski
2dcf4af7b1
feat: filter persisted in url (#5549) 2023-12-05 17:31:23 +01:00
Nuno Góis
f348acb3b9
feat: improve role form validation (#5548)
https://linear.app/unleash/issue/2-1717/improve-the-ux-when-all-the-required-fields-are-not-filled-in

Improves role form validation behavior.
We may want to look into a form validation library, like
[react-hook-form](https://react-hook-form.com/), for future
implementations.
2023-12-05 12:39:30 +00:00
Saeed Akasteh
fa9d38fc22
fix(removeapitokenbutton.tsx): add environment name in delete token modal (#5469)
add environment name in delete token modal
2023-12-05 13:17:31 +01:00
Tymoteusz Czech
b5122a74e7
refactor: table state management in withTableState (#5531) 2023-12-05 12:16:58 +01:00
Tymoteusz Czech
795c67306c
fix: features sidebar scroll (#5524)
Feature toggle overview screen - the sidebar getting sticky was making it hard to see many environments
2023-12-05 09:08:02 +01:00
renovate[bot]
2f92ea3d75
chore(deps): update dependency @uiw/react-codemirror to v4.21.21 (#5534)
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@uiw/react-codemirror](https://uiwjs.github.io/react-codemirror)
([source](https://togithub.com/uiwjs/react-codemirror)) | [`4.21.20` ->
`4.21.21`](https://renovatebot.com/diffs/npm/@uiw%2freact-codemirror/4.21.20/4.21.21)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@uiw%2freact-codemirror/4.21.21?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@uiw%2freact-codemirror/4.21.21?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@uiw%2freact-codemirror/4.21.20/4.21.21?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@uiw%2freact-codemirror/4.21.20/4.21.21?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>uiwjs/react-codemirror (@&#8203;uiw/react-codemirror)</summary>

###
[`v4.21.21`](https://togithub.com/uiwjs/react-codemirror/releases/tag/v4.21.21)

[Compare
Source](https://togithub.com/uiwjs/react-codemirror/compare/v4.21.20...v4.21.21)

[![Buy me a
coffee](https://img.shields.io/badge/Buy%20me%20a%20coffee-048754?logo=buymeacoffee)](https://jaywcjlove.github.io/#/sponsor)
[![](https://img.shields.io/badge/Open%20in-unpkg-blue)](https://uiwjs.github.io/npm-unpkg/#/pkg/@&#8203;uiw/react-codemirror@4.21.21/file/README.md)

Documentation v4.21.21:
https://raw.githack.com/uiwjs/react-codemirror/61699f4/index.html\
Comparing Changes:
https://github.com/uiwjs/react-codemirror/compare/v4.21.20...v4.21.21

```shell
npm i @&#8203;uiw/react-codemirror@4.21.21
```

- 🌍 website: Remove margin from Example.tsx causing it do be cut off
([#&#8203;599](https://togithub.com/uiwjs/react-codemirror/issues/599))
[`31bacb8`](https://togithub.com/uiwjs/react-codemirror/commit/31bacb8)
[@&#8203;JohnnyDeuss](https://togithub.com/JohnnyDeuss)
- 🌟 feat(langs): add `liquid` extensions.
[`c68d27d`](https://togithub.com/uiwjs/react-codemirror/commit/c68d27d)
[@&#8203;jaywcjlove](https://togithub.com/jaywcjlove)
- 🎨 style(theme): modify xcode selection color.
([#&#8203;609](https://togithub.com/uiwjs/react-codemirror/issues/609))
[`62d9763`](https://togithub.com/uiwjs/react-codemirror/commit/62d9763)
[@&#8203;jaywcjlove](https://togithub.com/jaywcjlove)
- 💄 chore: add sponsor badge.
[`14fb085`](https://togithub.com/uiwjs/react-codemirror/commit/14fb085)
[@&#8203;jaywcjlove](https://togithub.com/jaywcjlove)
- 💄 chore: fix failed to parse source map & update dependency.
[`12448d8`](https://togithub.com/uiwjs/react-codemirror/commit/12448d8)
[@&#8203;jaywcjlove](https://togithub.com/jaywcjlove)
- 🌍 website: fix markdown type error.
[`33e1b98`](https://togithub.com/uiwjs/react-codemirror/commit/33e1b98)
[@&#8203;jaywcjlove](https://togithub.com/jaywcjlove)
- 🎨 style(theme): modify white/tokyo/tomorrow selection color.
([#&#8203;609](https://togithub.com/uiwjs/react-codemirror/issues/609))
[`04f21fc`](https://togithub.com/uiwjs/react-codemirror/commit/04f21fc)
[@&#8203;jaywcjlove](https://togithub.com/jaywcjlove)
- 🎨 style(theme): modify okaidia/quietlight/solarized selection color.
([#&#8203;609](https://togithub.com/uiwjs/react-codemirror/issues/609))
[`fd8b344`](https://togithub.com/uiwjs/react-codemirror/commit/fd8b344)
[@&#8203;jaywcjlove](https://togithub.com/jaywcjlove)
- 🎨 style(theme): modify kimbie/material/monokai/nord/noctis selection
color.
([#&#8203;609](https://togithub.com/uiwjs/react-codemirror/issues/609))
[`4dcc32b`](https://togithub.com/uiwjs/react-codemirror/commit/4dcc32b)
[@&#8203;jaywcjlove](https://togithub.com/jaywcjlove)
- 🎨 style(theme): modify duotone/eclipse/gruvbox selection color.
([#&#8203;609](https://togithub.com/uiwjs/react-codemirror/issues/609))
[`399d127`](https://togithub.com/uiwjs/react-codemirror/commit/399d127)
[@&#8203;jaywcjlove](https://togithub.com/jaywcjlove)
- 🎨 style(theme): modify basic/copilot/bespin selection color.
([#&#8203;609](https://togithub.com/uiwjs/react-codemirror/issues/609))
[`eb3af94`](https://togithub.com/uiwjs/react-codemirror/commit/eb3af94)
[@&#8203;jaywcjlove](https://togithub.com/jaywcjlove)
- 🎨 style(theme): modify
abcdef/abyss/androidstudio/andromeda/atomone/aura/basic selection color.
([#&#8203;609](https://togithub.com/uiwjs/react-codemirror/issues/609))
[`d233183`](https://togithub.com/uiwjs/react-codemirror/commit/d233183)
[@&#8203;jaywcjlove](https://togithub.com/jaywcjlove)
- 💢 ci: update workflows config.
[`f4b11c5`](https://togithub.com/uiwjs/react-codemirror/commit/f4b11c5)
[@&#8203;jaywcjlove](https://togithub.com/jaywcjlove)
- 🌟 feat: add .github/FUNDING.yml
[`5d7a372`](https://togithub.com/uiwjs/react-codemirror/commit/5d7a372)
[@&#8203;jaywcjlove](https://togithub.com/jaywcjlove)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "after 7pm every weekday,before 5am
every weekday" in timezone Europe/Madrid, Automerge - At any time (no
schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/Unleash/unleash).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy44MS4zIiwidXBkYXRlZEluVmVyIjoiMzcuODEuMyIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-12-04 22:43:58 +00:00
Jaanus Sellin
6b2b7a3388
chore: generate new models from openapi (#5528) 2023-12-04 21:49:49 +02:00
renovate[bot]
0481661a6f
chore(deps): update dependency @uiw/codemirror-theme-duotone to v4.21.21 (#5533)
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
|
[@uiw/codemirror-theme-duotone](https://uiwjs.github.io/react-codemirror/#/theme/data/duotone/light)
([source](https://togithub.com/uiwjs/react-codemirror)) | [`4.21.20` ->
`4.21.21`](https://renovatebot.com/diffs/npm/@uiw%2fcodemirror-theme-duotone/4.21.20/4.21.21)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@uiw%2fcodemirror-theme-duotone/4.21.21?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@uiw%2fcodemirror-theme-duotone/4.21.21?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@uiw%2fcodemirror-theme-duotone/4.21.20/4.21.21?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@uiw%2fcodemirror-theme-duotone/4.21.20/4.21.21?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>uiwjs/react-codemirror
(@&#8203;uiw/codemirror-theme-duotone)</summary>

###
[`v4.21.21`](https://togithub.com/uiwjs/react-codemirror/releases/tag/v4.21.21)

[Compare
Source](https://togithub.com/uiwjs/react-codemirror/compare/v4.21.20...v4.21.21)

[![Buy me a
coffee](https://img.shields.io/badge/Buy%20me%20a%20coffee-048754?logo=buymeacoffee)](https://jaywcjlove.github.io/#/sponsor)
[![](https://img.shields.io/badge/Open%20in-unpkg-blue)](https://uiwjs.github.io/npm-unpkg/#/pkg/@&#8203;uiw/react-codemirror@4.21.21/file/README.md)

Documentation v4.21.21:
https://raw.githack.com/uiwjs/react-codemirror/61699f4/index.html\
Comparing Changes:
https://github.com/uiwjs/react-codemirror/compare/v4.21.20...v4.21.21

```shell
npm i @&#8203;uiw/react-codemirror@4.21.21
```

- 🌍 website: Remove margin from Example.tsx causing it do be cut off
([#&#8203;599](https://togithub.com/uiwjs/react-codemirror/issues/599))
[`31bacb8`](https://togithub.com/uiwjs/react-codemirror/commit/31bacb8)
[@&#8203;JohnnyDeuss](https://togithub.com/JohnnyDeuss)
- 🌟 feat(langs): add `liquid` extensions.
[`c68d27d`](https://togithub.com/uiwjs/react-codemirror/commit/c68d27d)
[@&#8203;jaywcjlove](https://togithub.com/jaywcjlove)
- 🎨 style(theme): modify xcode selection color.
([#&#8203;609](https://togithub.com/uiwjs/react-codemirror/issues/609))
[`62d9763`](https://togithub.com/uiwjs/react-codemirror/commit/62d9763)
[@&#8203;jaywcjlove](https://togithub.com/jaywcjlove)
- 💄 chore: add sponsor badge.
[`14fb085`](https://togithub.com/uiwjs/react-codemirror/commit/14fb085)
[@&#8203;jaywcjlove](https://togithub.com/jaywcjlove)
- 💄 chore: fix failed to parse source map & update dependency.
[`12448d8`](https://togithub.com/uiwjs/react-codemirror/commit/12448d8)
[@&#8203;jaywcjlove](https://togithub.com/jaywcjlove)
- 🌍 website: fix markdown type error.
[`33e1b98`](https://togithub.com/uiwjs/react-codemirror/commit/33e1b98)
[@&#8203;jaywcjlove](https://togithub.com/jaywcjlove)
- 🎨 style(theme): modify white/tokyo/tomorrow selection color.
([#&#8203;609](https://togithub.com/uiwjs/react-codemirror/issues/609))
[`04f21fc`](https://togithub.com/uiwjs/react-codemirror/commit/04f21fc)
[@&#8203;jaywcjlove](https://togithub.com/jaywcjlove)
- 🎨 style(theme): modify okaidia/quietlight/solarized selection color.
([#&#8203;609](https://togithub.com/uiwjs/react-codemirror/issues/609))
[`fd8b344`](https://togithub.com/uiwjs/react-codemirror/commit/fd8b344)
[@&#8203;jaywcjlove](https://togithub.com/jaywcjlove)
- 🎨 style(theme): modify kimbie/material/monokai/nord/noctis selection
color.
([#&#8203;609](https://togithub.com/uiwjs/react-codemirror/issues/609))
[`4dcc32b`](https://togithub.com/uiwjs/react-codemirror/commit/4dcc32b)
[@&#8203;jaywcjlove](https://togithub.com/jaywcjlove)
- 🎨 style(theme): modify duotone/eclipse/gruvbox selection color.
([#&#8203;609](https://togithub.com/uiwjs/react-codemirror/issues/609))
[`399d127`](https://togithub.com/uiwjs/react-codemirror/commit/399d127)
[@&#8203;jaywcjlove](https://togithub.com/jaywcjlove)
- 🎨 style(theme): modify basic/copilot/bespin selection color.
([#&#8203;609](https://togithub.com/uiwjs/react-codemirror/issues/609))
[`eb3af94`](https://togithub.com/uiwjs/react-codemirror/commit/eb3af94)
[@&#8203;jaywcjlove](https://togithub.com/jaywcjlove)
- 🎨 style(theme): modify
abcdef/abyss/androidstudio/andromeda/atomone/aura/basic selection color.
([#&#8203;609](https://togithub.com/uiwjs/react-codemirror/issues/609))
[`d233183`](https://togithub.com/uiwjs/react-codemirror/commit/d233183)
[@&#8203;jaywcjlove](https://togithub.com/jaywcjlove)
- 💢 ci: update workflows config.
[`f4b11c5`](https://togithub.com/uiwjs/react-codemirror/commit/f4b11c5)
[@&#8203;jaywcjlove](https://togithub.com/jaywcjlove)
- 🌟 feat: add .github/FUNDING.yml
[`5d7a372`](https://togithub.com/uiwjs/react-codemirror/commit/5d7a372)
[@&#8203;jaywcjlove](https://togithub.com/jaywcjlove)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "after 7pm every weekday,before 5am
every weekday" in timezone Europe/Madrid, Automerge - At any time (no
schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/Unleash/unleash).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy44MS4zIiwidXBkYXRlZEluVmVyIjoiMzcuODEuMyIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-12-04 19:36:21 +00:00
renovate[bot]
5ad8e077a6
chore(deps): update dependency @codemirror/state to v6.3.2 (#5532)
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@codemirror/state](https://togithub.com/codemirror/state) | [`6.3.1`
->
`6.3.2`](https://renovatebot.com/diffs/npm/@codemirror%2fstate/6.3.1/6.3.2)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@codemirror%2fstate/6.3.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@codemirror%2fstate/6.3.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@codemirror%2fstate/6.3.1/6.3.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@codemirror%2fstate/6.3.1/6.3.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>codemirror/state (@&#8203;codemirror/state)</summary>

###
[`v6.3.2`](https://togithub.com/codemirror/state/blob/HEAD/CHANGELOG.md#632-2023-11-27)

[Compare
Source](https://togithub.com/codemirror/state/compare/6.3.1...6.3.2)

##### Bug fixes

Make sure transactions cannot add multiple selections when
`allowMultipleSelections` is false.

Fix a bug that caused `Text.iterLines` to not return empty lines at the
end of the iterated ranges.

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "after 7pm every weekday,before 5am
every weekday" in timezone Europe/Madrid, Automerge - At any time (no
schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/Unleash/unleash).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy44MS4zIiwidXBkYXRlZEluVmVyIjoiMzcuODEuMyIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-12-04 19:36:03 +00:00
Tymoteusz Czech
ddca82213a
refactor: project overview table state (#5530)
Use new table state management on project overview and on
project/features
2023-12-04 17:04:28 +01:00
Mateusz Kwasniewski
5c889df9be
test: persistent table state (#5529) 2023-12-04 15:47:53 +01:00
Tymoteusz Czech
a506b92544
feat: Refactor Table State Persistence in Feature Toggle List (#5527)
new custom hook, `usePersistentTableState`

Co-authored-by: Mateusz Kwasniewski <kwasniewski.mateusz@gmail.com>
2023-12-04 13:21:03 +00:00
Thomas Heartman
a0a15416c4
feat: display potential conflicts in existing change requests (#5521)
This update displays schedule conflicts in active change requests (any
CR that isn't applied, canceled, or rejected).


![image](https://github.com/Unleash/unleash/assets/17786332/181c6c0a-f5de-4eed-9093-ac0109e1e8f3)
2023-12-04 13:33:28 +01:00
Mateusz Kwasniewski
a9363efec1
fix: prevent search being stacked on top of the form dropdown (#5523) 2023-12-04 12:27:25 +01:00
Jaanus Sellin
a299885e22
feat: update project overview endpoint (#5518)
1. Created new hook for endpoint
2. Start removing useProject hook, when features not needed.
2023-12-01 20:00:35 +02:00
Tymoteusz Czech
755c22f3b9
feat: features list pagination (#5496)
New paginated table - tested on /features-new behind a flag
2023-12-01 14:53:05 +00:00
Tymoteusz Czech
fba80222de
Frontend OpenAPI types update (#5520) 2023-12-01 13:30:30 +00:00
Gastón Fournier
9f3648dc81
chore: test migration backward compatibility (#5492)
## About the changes
This PR will validate that our current migrations are backward
compatible with the latest stable release of Unleash.
It will do so by starting a database, applying the latest migrations,
and then starting a docker container with the last stable unleash
release and running UI tests against it.

There's a risk that the current version of UI tests will not work with
the previous version of our UI. Because of that we copied the previous
version of cypress tests
(https://github.com/Unleash/unleash/tree/5.6/frontend/cypress) into oss
folder and removed the ones that are enterprise only. We can discuss a
better way of doing this to avoid having to maintain this folder always
in sync with the previous version of Unleash

This action will only run when there are changes in migrations or to
cypress tests.
2023-11-30 18:20:13 +01:00
andreas-unleash
02451baaf2
feat: hide change actions when change request is scheduled (#5514)
Added 'Scheduled' state to the check for non-pending change requests

Closes #
[1-1680](https://linear.app/unleash/issue/1-1680/remove-edit-change-ui-when-cr-is-scheduled)
<img width="868" alt="Screenshot 2023-11-30 at 11 54 44"
src="https://github.com/Unleash/unleash/assets/104830839/8e6afec5-1353-4030-b49b-4a8f3eaee5f6">

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2023-11-30 12:52:29 +02:00
Nuno Góis
44d85c0dcd
fix: UI navigation (reverts #5506) (#5512)
Latest version had a UI navigation bug where we wouldn't correctly
navigate to the tab and instead it would add infinitely to the
breadcrumbs / URL:


https://github.com/Unleash/unleash/assets/14320932/509fa528-7f9e-4476-a945-f74393e99dd5

This fixes the UI navigation by reverting
https://github.com/Unleash/unleash/pull/5506
2023-11-30 09:13:16 +00:00
Mateusz Kwasniewski
2b66ba41dc
fix: groups link (#5511) 2023-11-30 09:42:27 +01:00
renovate[bot]
108a00a98c
chore(deps): update react-router monorepo to v6.20.0 (#5506)
[![Mend Renovate logo
banner](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [react-router](https://togithub.com/remix-run/react-router) |
[`6.16.0` ->
`6.20.0`](https://renovatebot.com/diffs/npm/react-router/6.16.0/6.20.0)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/react-router/6.20.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/react-router/6.20.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/react-router/6.16.0/6.20.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/react-router/6.16.0/6.20.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [react-router-dom](https://togithub.com/remix-run/react-router) |
[`6.16.0` ->
`6.20.0`](https://renovatebot.com/diffs/npm/react-router-dom/6.16.0/6.20.0)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/react-router-dom/6.20.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/react-router-dom/6.20.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/react-router-dom/6.16.0/6.20.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/react-router-dom/6.16.0/6.20.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>remix-run/react-router (react-router)</summary>

###
[`v6.20.0`](https://togithub.com/remix-run/react-router/blob/HEAD/packages/react-router/CHANGELOG.md#6200)

[Compare
Source](https://togithub.com/remix-run/react-router/compare/react-router@6.19.0...react-router@6.20.0)

##### Minor Changes

- Export the `PathParam` type from the public API
([#&#8203;10719](https://togithub.com/remix-run/react-router/pull/10719))

##### Patch Changes

- Fix bug with `resolveTo` in splat routes
([#&#8203;11045](https://togithub.com/remix-run/react-router/pull/11045))
- This is a follow up to
[#&#8203;10983](https://togithub.com/remix-run/react-router/pull/10983)
to handle the few other code paths using `getPathContributingMatches`
- This removes the `UNSAFE_getPathContributingMatches` export from
`@remix-run/router` since we no longer need this in the
`react-router`/`react-router-dom` layers
-   Updated dependencies:
    -   `@remix-run/router@1.13.0`

###
[`v6.19.0`](https://togithub.com/remix-run/react-router/blob/HEAD/packages/react-router/CHANGELOG.md#6190)

[Compare
Source](https://togithub.com/remix-run/react-router/compare/react-router@6.18.0...react-router@6.19.0)

##### Minor Changes

- Add `unstable_flushSync` option to
`useNavigate`/`useSumbit`/`fetcher.load`/`fetcher.submit` to opt-out of
`React.startTransition` and into `ReactDOM.flushSync` for state updates
([#&#8203;11005](https://togithub.com/remix-run/react-router/pull/11005))
- Remove the `unstable_` prefix from the
[`useBlocker`](https://reactrouter.com/en/main/hooks/use-blocker) hook
as it's been in use for enough time that we are confident in the API. We
do not plan to remove the prefix from `unstable_usePrompt` due to
differences in how browsers handle `window.confirm` that prevent React
Router from guaranteeing consistent/correct behavior.
([#&#8203;10991](https://togithub.com/remix-run/react-router/pull/10991))

##### Patch Changes

- Fix `useActionData` so it returns proper contextual action data and
not *any* action data in the tree
([#&#8203;11023](https://togithub.com/remix-run/react-router/pull/11023))

- Fix bug in `useResolvedPath` that would cause `useResolvedPath(".")`
in a splat route to lose the splat portion of the URL path.
([#&#8203;10983](https://togithub.com/remix-run/react-router/pull/10983))

- ⚠️ This fixes a quite long-standing bug specifically for `"."` paths
inside a splat route which incorrectly dropped the splat portion of the
URL. If you are relative routing via `"."` inside a splat route in your
application you should double check that your logic is not relying on
this buggy behavior and update accordingly.

-   Updated dependencies:
    -   `@remix-run/router@1.12.0`

###
[`v6.18.0`](https://togithub.com/remix-run/react-router/blob/HEAD/packages/react-router/CHANGELOG.md#6180)

[Compare
Source](https://togithub.com/remix-run/react-router/compare/react-router@6.17.0...react-router@6.18.0)

##### Patch Changes

- Fix the `future` prop on `BrowserRouter`, `HashRouter` and
`MemoryRouter` so that it accepts a `Partial<FutureConfig>` instead of
requiring all flags to be included.
([#&#8203;10962](https://togithub.com/remix-run/react-router/pull/10962))
-   Updated dependencies:
    -   `@remix-run/router@1.11.0`

###
[`v6.17.0`](https://togithub.com/remix-run/react-router/blob/HEAD/packages/react-router/CHANGELOG.md#6170)

[Compare
Source](https://togithub.com/remix-run/react-router/compare/react-router@6.16.0...react-router@6.17.0)

##### Patch Changes

- Fix `RouterProvider` `future` prop type to be a
`Partial<FutureConfig>` so that not all flags must be specified
([#&#8203;10900](https://togithub.com/remix-run/react-router/pull/10900))
-   Updated dependencies:
    -   `@remix-run/router@1.10.0`

</details>

<details>
<summary>remix-run/react-router (react-router-dom)</summary>

###
[`v6.20.0`](https://togithub.com/remix-run/react-router/blob/HEAD/packages/react-router-dom/CHANGELOG.md#6200)

[Compare
Source](https://togithub.com/remix-run/react-router/compare/react-router-dom@6.19.0...react-router-dom@6.20.0)

##### Minor Changes

- Export the `PathParam` type from the public API
([#&#8203;10719](https://togithub.com/remix-run/react-router/pull/10719))

##### Patch Changes

-   Updated dependencies:
    -   `react-router@6.20.0`
    -   `@remix-run/router@1.13.0`

###
[`v6.19.0`](https://togithub.com/remix-run/react-router/blob/HEAD/packages/react-router-dom/CHANGELOG.md#6190)

[Compare
Source](https://togithub.com/remix-run/react-router/compare/react-router-dom@6.18.0...react-router-dom@6.19.0)

##### Minor Changes

- Add `unstable_flushSync` option to
`useNavigate`/`useSumbit`/`fetcher.load`/`fetcher.submit` to opt-out of
`React.startTransition` and into `ReactDOM.flushSync` for state updates
([#&#8203;11005](https://togithub.com/remix-run/react-router/pull/11005))
- Allow `unstable_usePrompt` to accept a `BlockerFunction` in addition
to a `boolean`
([#&#8203;10991](https://togithub.com/remix-run/react-router/pull/10991))

##### Patch Changes

- Fix issue where a changing fetcher `key` in a `useFetcher` that
remains mounted wasn't getting picked up
([#&#8203;11009](https://togithub.com/remix-run/react-router/pull/11009))
- Fix `useFormAction` which was incorrectly inheriting the `?index`
query param from child route `action` submissions
([#&#8203;11025](https://togithub.com/remix-run/react-router/pull/11025))
- Fix `NavLink` `active` logic when `to` location has a trailing slash
([#&#8203;10734](https://togithub.com/remix-run/react-router/pull/10734))
-   Updated dependencies:
    -   `react-router@6.19.0`
    -   `@remix-run/router@1.12.0`

###
[`v6.18.0`](https://togithub.com/remix-run/react-router/blob/HEAD/packages/react-router-dom/CHANGELOG.md#6180)

[Compare
Source](https://togithub.com/remix-run/react-router/compare/react-router-dom@6.17.0...react-router-dom@6.18.0)

##### Minor Changes

- Add support for manual fetcher key specification via `useFetcher({
key: string })` so you can access the same fetcher instance from
different components in your application without prop-drilling
([RFC](https://togithub.com/remix-run/remix/discussions/7698))
([#&#8203;10960](https://togithub.com/remix-run/react-router/pull/10960))

- Fetcher keys are now also exposed on the fetchers returned from
`useFetchers` so that they can be looked up by `key`

- Add `navigate`/`fetcherKey` params/props to `useSumbit`/`Form` to
support kicking off a fetcher submission under the hood with an
optionally user-specified `key`
([#&#8203;10960](https://togithub.com/remix-run/react-router/pull/10960))

    -   Invoking a fetcher in this way is ephemeral and stateless
- If you need to access the state of one of these fetchers, you will
need to leverage `useFetcher({ key })` to look it up elsewhere

##### Patch Changes

- Adds a fetcher context to `RouterProvider` that holds completed
fetcher data, in preparation for the upcoming future flag that will
change the fetcher persistence/cleanup behavior
([#&#8203;10961](https://togithub.com/remix-run/react-router/pull/10961))
- Fix the `future` prop on `BrowserRouter`, `HashRouter` and
`MemoryRouter` so that it accepts a `Partial<FutureConfig>` instead of
requiring all flags to be included.
([#&#8203;10962](https://togithub.com/remix-run/react-router/pull/10962))
-   Updated dependencies:
    -   `@remix-run/router@1.11.0`
    -   `react-router@6.18.0`

###
[`v6.17.0`](https://togithub.com/remix-run/react-router/blob/HEAD/packages/react-router-dom/CHANGELOG.md#6170)

[Compare
Source](https://togithub.com/remix-run/react-router/compare/react-router-dom@6.16.0...react-router-dom@6.17.0)

##### Minor Changes

- Add experimental support for the [View Transitions
API](https://developer.mozilla.org/en-US/docs/Web/API/ViewTransition)
via `document.startViewTransition` to enable CSS animated transitions on
SPA navigations in your application.
([#&#8203;10916](https://togithub.com/remix-run/react-router/pull/10916))

The simplest approach to enabling a View Transition in your React Router
app is via the new `<Link unstable_viewTransition>` prop. This will
cause the navigation DOM update to be wrapped in
`document.startViewTransition` which will enable transitions for the DOM
update. Without any additional CSS styles, you'll get a basic cross-fade
animation for your page.

If you need to apply more fine-grained styles for your animations, you
can leverage the `unstable_useViewTransitionState` hook which will tell
you when a transition is in progress and you can use that to apply
classes or styles:

    ```jsx
    function ImageLink(to, src, alt) {
      let isTransitioning = unstable_useViewTransitionState(to);
      return (
        <Link to={to} unstable_viewTransition>
          <img
            src={src}
            alt={alt}
            style={{
              viewTransitionName: isTransitioning ? "image-expand" : "",
            }}
          />
        </Link>
      );
    }
    ```

You can also use the `<NavLink unstable_viewTransition>` shorthand which
will manage the hook usage for you and automatically add a
`transitioning` class to the `<a>` during the transition:

    ```css
    a.transitioning img {
      view-transition-name: "image-expand";
    }
    ```

    ```jsx
    <NavLink to={to} unstable_viewTransition>
      <img src={src} alt={alt} />
    </NavLink>
    ```

For an example usage of View Transitions with React Router, check out
[our fork](https://togithub.com/brophdawg11/react-router-records) of the
[Astro Records](https://togithub.com/Charca/astro-records) demo.

For more information on using the View Transitions API, please refer to
the [Smooth and simple transitions with the View Transitions
API](https://developer.chrome.com/docs/web-platform/view-transitions/)
guide from the Google Chrome team.

Please note, that because the `ViewTransition` API is a DOM API, we now
export a specific `RouterProvider` from `react-router-dom` with this
functionality. If you are importing `RouterProvider` from
`react-router`, then it will not support view transitions.
([#&#8203;10928](https://togithub.com/remix-run/react-router/pull/10928)

##### Patch Changes

- Log a warning and fail gracefully in `ScrollRestoration` when
`sessionStorage` is unavailable
([#&#8203;10848](https://togithub.com/remix-run/react-router/pull/10848))
-   Updated dependencies:
    -   `@remix-run/router@1.10.0`
    -   `react-router@6.17.0`

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about these
updates again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/Unleash/unleash).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy41OS44IiwidXBkYXRlZEluVmVyIjoiMzcuNTkuOCIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-11-29 21:35:51 +00:00
renovate[bot]
18fed2ab28
chore(deps): update dependency vite to v4.5.0 (#5504)
[![Mend Renovate logo
banner](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [vite](https://togithub.com/vitejs/vite/tree/main/#readme)
([source](https://togithub.com/vitejs/vite)) | [`4.4.11` ->
`4.5.0`](https://renovatebot.com/diffs/npm/vite/4.4.11/4.5.0) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/vite/4.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/vite/4.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/vite/4.4.11/4.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/vite/4.4.11/4.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>vitejs/vite (vite)</summary>

### [`v4.5.0`](https://togithub.com/vitejs/vite/releases/tag/v4.5.0)

[Compare
Source](https://togithub.com/vitejs/vite/compare/v4.4.11...v4.5.0)

Please refer to
[CHANGELOG.md](https://togithub.com/vitejs/vite/blob/v4.5.0/packages/vite/CHANGELOG.md)
for details.

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/Unleash/unleash).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy41OS44IiwidXBkYXRlZEluVmVyIjoiMzcuNTkuOCIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-11-29 19:30:23 +00:00
renovate[bot]
d90933d098
chore(deps): update dependency vanilla-jsoneditor to ^0.19.0 (#5503)
[![Mend Renovate logo
banner](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [vanilla-jsoneditor](https://togithub.com/josdejong/svelte-jsoneditor)
| [`^0.18.4` ->
`^0.19.0`](https://renovatebot.com/diffs/npm/vanilla-jsoneditor/0.18.10/0.19.0)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/vanilla-jsoneditor/0.19.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/vanilla-jsoneditor/0.19.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/vanilla-jsoneditor/0.18.10/0.19.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/vanilla-jsoneditor/0.18.10/0.19.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>josdejong/svelte-jsoneditor (vanilla-jsoneditor)</summary>

###
[`v0.19.0`](https://togithub.com/josdejong/svelte-jsoneditor/blob/HEAD/CHANGELOG.md#0190-2023-11-21)

[Compare
Source](https://togithub.com/josdejong/svelte-jsoneditor/compare/v0.18.13...v0.19.0)

##### ⚠ BREAKING CHANGES

-   Changes in the package exports

##### Features

- additional classes for improved CSS targeting
([4392f2c](4392f2c652))
- package exports not working in Jest
([77697b3](77697b3962))

##### Bug Fixes

-
[#&#8203;334](https://togithub.com/josdejong/svelte-jsoneditor/issues/334)
package exports not working in Jest
([3058c66](3058c66c65))
- wrong font in table mode
([dd448c5](dd448c5fff))

#####
[0.18.13](https://togithub.com/josdejong/svelte-jsoneditor/compare/v0.18.12...v0.18.13)
(2023-11-13)

##### Features

- update dependencies (`jsonrepair`, `@codemirror/autocomplete`)
([691072a](691072af2f))

#####
[0.18.12](https://togithub.com/josdejong/svelte-jsoneditor/compare/v0.18.11...v0.18.12)
(2023-11-08)

##### Features

- update to `jsonrepair@3.4.0`
([9ede6ea](9ede6ea53c))

##### Bug Fixes

-
[#&#8203;331](https://togithub.com/josdejong/svelte-jsoneditor/issues/331)
changing contents during the `onChange` callback throws a selection
error
([6e511fa](6e511faf3a))
-
[#&#8203;337](https://togithub.com/josdejong/svelte-jsoneditor/issues/337)
some menu styling issues
([2eec4e6](2eec4e6c48))
- `onChange` event not fired after calling `editor.set(...)` (see
[#&#8203;318](https://togithub.com/josdejong/svelte-jsoneditor/issues/318))
([afaca42](afaca42356))
- update codemirror and a couple of devDependencies
([7173333](71733336b6))
- use mono font in JSON Preview
([b07d08d](b07d08d9c6))

#####
[0.18.11](https://togithub.com/josdejong/svelte-jsoneditor/compare/v0.18.10...v0.18.11)
(2023-10-31)

##### Features

- update codemirror, jsonrepair, and other dependencies
([90d1b77](90d1b77453))

##### Bug Fixes

-
[#&#8203;321](https://togithub.com/josdejong/svelte-jsoneditor/issues/321)
editor not accepting JSON created in a different JavaScript realm like
an iframe
([06fb84c](06fb84cced))
- bottom margin of welcome screen in tree and table mode
([7d1eb02](7d1eb027ab))
- editor sometimes losing track on whether it has focus
([410f997](410f997b07))
- svelte giving warnings about creating components with unknown
properties
([627170a](627170a3e6))

#####
[0.18.10](https://togithub.com/josdejong/svelte-jsoneditor/compare/v0.18.9...v0.18.10)
(2023-10-17)

##### Bug Fixes

- rename "whole document" to "document root" and "whole item" to "item
root" to prevent confusion
([2699b71](2699b71f23))

#####
[0.18.9](https://togithub.com/josdejong/svelte-jsoneditor/compare/v0.18.8...v0.18.9)
(2023-10-11)

##### Bug Fixes

- unused CSS selector warnings in Svelte
([23b82cc](23b82cc022))

#####
[0.18.8](https://togithub.com/josdejong/svelte-jsoneditor/compare/v0.18.7...v0.18.8)
(2023-10-02)

##### Bug Fixes

- regression since v0.18.17 not allowing to put the cursor halfway the
value when editing a value
([3e34e8d](3e34e8daaf))

#####
[0.18.7](https://togithub.com/josdejong/svelte-jsoneditor/compare/v0.18.6...v0.18.7)
(2023-09-28)

##### Bug Fixes

-
[#&#8203;315](https://togithub.com/josdejong/svelte-jsoneditor/issues/315)
cannot paste text in the search box input field in tree mode
([a9a2dc3](a9a2dc32e2))

#####
[0.18.6](https://togithub.com/josdejong/svelte-jsoneditor/compare/v0.18.5...v0.18.6)
(2023-09-27)

##### Bug Fixes

- broken import due to missing file extension
([0f734c5](0f734c593e))

#####
[0.18.5](https://togithub.com/josdejong/svelte-jsoneditor/compare/v0.18.4...v0.18.5)
(2023-09-27)

##### Features

- update dependencies, most notably `jsonrepair` and `codemirror`
([f6306b0](f6306b00ef))

##### Bug Fixes

-
[#&#8203;312](https://togithub.com/josdejong/svelte-jsoneditor/issues/312)
"Show me" button throwing an error when no position was provided in the
error message
([d839e95](d839e95c59))
-
[#&#8203;312](https://togithub.com/josdejong/svelte-jsoneditor/issues/312)
the "Show me" button throwing an error when no position was provided in
the error message
([36d7934](36d79345b2))
- minor styling issues with modals
([97d2d94](97d2d9407d))
- update dependencies, most notably `codemirror` and `jsonrepair`
([439eb8a](439eb8ae8a))

#####
[0.18.4](https://togithub.com/josdejong/svelte-jsoneditor/compare/v0.18.3...v0.18.4)
(2023-09-19)

##### Features

- add indentation on wrapped lines
([#&#8203;295](https://togithub.com/josdejong/svelte-jsoneditor/issues/295))
([367accf](367accfa26))
- improve welcome screen with action buttons to create an array or
object
([d4e301f](d4e301fc9d))

##### Bug Fixes

- collapsed items section not removed when empty
([3d3ad45](3d3ad456cf))
- creating an array or object or pasting content in the welcome screen
not working
([7def339](7def339d91))
- editor not getting focus in table mode when clicking inside an empty
area
([609983d](609983d3a6))
- select active element on undo only when existing
([e5beebf](e5beebfdc4))
- selection moving to value after renaming the last key of an object
([ac31282](ac31282161))
- some issues with navigating in `tree` mode using arrow keys
([a3f9c92](a3f9c92346))
- when inserting a new array or object in an empty editor, set selection
inside the array/object
([821933e](821933e3df))
- when inserting a new value by typing somewhere, it doesn't initially
have the right color
([9f6ea35](9f6ea35427))

#####
[0.18.3](https://togithub.com/josdejong/svelte-jsoneditor/compare/v0.18.2...v0.18.3)
(2023-08-30)

##### Bug Fixes

- restore the selection when going back when having multiple JSONEditor
modals
([085a9d3](085a9d31de))
- sometimes multiple cells selected in Table mode
([c7705f6](c7705f6e99))

#####
[0.18.2](https://togithub.com/josdejong/svelte-jsoneditor/compare/v0.18.1...v0.18.2)
(2023-08-25)

##### Bug Fixes

-
[#&#8203;304](https://togithub.com/josdejong/svelte-jsoneditor/issues/304)
`ReadonlyValue.svelte` wrongly importing two moved types
([ed8b058](ed8b05890f))

#####
[0.18.1](https://togithub.com/josdejong/svelte-jsoneditor/compare/v0.18.0...v0.18.1)
(2023-08-25)

##### Bug Fixes

-
[#&#8203;300](https://togithub.com/josdejong/svelte-jsoneditor/issues/300)
change the homepage in package.json to the Github repo
([b1977e5](b1977e5047))
-
[#&#8203;304](https://togithub.com/josdejong/svelte-jsoneditor/issues/304)
missing type `JSONPointer` internally
([e23abbc](e23abbc369))

###
[`v0.18.13`](https://togithub.com/josdejong/svelte-jsoneditor/blob/HEAD/CHANGELOG.md#01813-2023-11-13)

[Compare
Source](https://togithub.com/josdejong/svelte-jsoneditor/compare/v0.18.12...v0.18.13)

###
[`v0.18.12`](https://togithub.com/josdejong/svelte-jsoneditor/blob/HEAD/CHANGELOG.md#01812-2023-11-08)

[Compare
Source](https://togithub.com/josdejong/svelte-jsoneditor/compare/v0.18.11...v0.18.12)

###
[`v0.18.11`](https://togithub.com/josdejong/svelte-jsoneditor/blob/HEAD/CHANGELOG.md#01811-2023-10-31)

[Compare
Source](https://togithub.com/josdejong/svelte-jsoneditor/compare/v0.18.10...v0.18.11)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/Unleash/unleash).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy41OS44IiwidXBkYXRlZEluVmVyIjoiMzcuNTkuOCIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-11-29 16:33:49 +00:00