1
0
mirror of https://github.com/Unleash/unleash.git synced 2025-06-23 01:16:27 +02:00

Merge branch 'master' into feat/splash

This commit is contained in:
Youssef Khedher 2021-11-22 12:05:24 +01:00 committed by GitHub
commit a132330c35
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
35 changed files with 250 additions and 188 deletions

View File

@ -8,7 +8,7 @@
{
"plan": "heroku-postgresql",
"options": {
"version": "10"
"version": "13"
}
}
]

View File

@ -1,7 +1,7 @@
{
"name": "unleash-server",
"description": "Unleash is an enterprise ready feature toggles service. It provides different strategies for handling feature toggles.",
"version": "4.2.2",
"version": "4.2.3",
"keywords": [
"unleash",
"feature toggle",
@ -82,7 +82,7 @@
"cookie-session": "^2.0.0-rc.1",
"cors": "^2.8.5",
"date-fns": "^2.25.0",
"db-migrate": "0.11.12",
"db-migrate": "0.11.13",
"db-migrate-pg": "1.2.2",
"db-migrate-shared": "1.2.0",
"deepmerge": "^4.2.2",
@ -119,8 +119,8 @@
"@types/express": "4.17.13",
"@types/express-session": "1.17.4",
"@types/faker": "5.5.9",
"@types/jest": "27.0.2",
"@types/js-yaml": "4.0.4",
"@types/jest": "27.0.3",
"@types/js-yaml": "4.0.5",
"@types/memoizee": "0.4.6",
"@types/mime": "2.0.3",
"@types/node": "16.6.1",
@ -129,13 +129,13 @@
"@types/owasp-password-strength-test": "1.3.0",
"@types/stoppable": "1.1.1",
"@types/supertest": "2.0.11",
"@types/uuid": "8.3.1",
"@typescript-eslint/eslint-plugin": "5.3.1",
"@typescript-eslint/parser": "5.3.1",
"@types/uuid": "8.3.3",
"@typescript-eslint/eslint-plugin": "5.4.0",
"@typescript-eslint/parser": "5.4.0",
"copyfiles": "2.4.1",
"coveralls": "3.1.1",
"del-cli": "4.0.1",
"eslint": "8.2.0",
"eslint": "8.3.0",
"eslint-config-airbnb-base": "15.0.0",
"eslint-config-airbnb-typescript": "15.0.0",
"eslint-config-prettier": "8.3.0",
@ -149,13 +149,13 @@
"lint-staged": "11.2.6",
"prettier": "2.4.1",
"proxyquire": "2.1.3",
"source-map-support": "0.5.20",
"source-map-support": "0.5.21",
"superagent": "6.1.0",
"supertest": "6.1.6",
"ts-jest": "27.0.7",
"ts-node": "10.4.0",
"tsc-watch": "4.5.0",
"typescript": "4.4.4"
"typescript": "4.5.2"
},
"resolutions": {
"db-migrate/rc/minimist": "^1.2.5",

View File

@ -220,7 +220,7 @@ Removes the specified tag from the `(type, value)` tuple from the Feature Toggle
`DELETE: http://unleash.host.com/api/admin/features/:toggleName`
Used to archive a feature toggle. A feature toggle can never be totally be deleted, but can be archived. This is a design decision to make sure that a old feature toggle suddenly reappears becuase someone else re-using the same name.
Used to archive a feature toggle. A feature toggle can never be totally be deleted, but can be archived. This is a design decision to make sure that a old feature toggle does not suddenly reappear because someone else is re-using the same name.
### Enable a Feature Toggle {#enable-a-feature-toggle}

View File

@ -1,57 +0,0 @@
---
id: jira_plugin_installation
title: Jira Integration - Installation
---
> The Jira Plugin is part of Unleash Enterprise.
With the Unleash JIRA plugin you can create new feature toggles in Unleash from a JIRA issue. You'll also be able to link existing toggles to JIRA issues as well as see current status of the linked toggle as both a custom field and as an Issue Panel.
## Required access levels
### Unleash
You will need an Unleash Instance Admin to configure an admin API token.
### Jira
You will need a Jira user with access to install plugins.
## Installation
The Jira plugin is currently not listed on the Atlassian marketplace.
To get access to the Jira plugin, please reach out to sales@getunleash.io.
You will receive a dedicated link that will allow you to download and install the Unleash Jira plugin.
When following the link you'll be greeted by an installation screen similar to the one down below ![Jira plugin install](/img/jira_plugin_installation.png)
## Configuring plugin
Once installed you'll need to head to "Manage your apps"
![Jira - app menu bar location](/img/jira_apps_menu_bar.png) ![Jira - manage your apps link](/img/jira_manage_apps.png)
Once there you should see "Unleash Admin" in your sidebar.
Click it, and you'll get taken to our configuration page
![Jira - manage apps sidebar](/img/jira_manage_apps_sidebar.png)
Once on the configuration page. You should enter your installation URL and an API Key with access level `Admin`
- For your installation URL
- if you're using Unleash Hosted in Europe, your URL will have the format `https://app.unleash-hosted.com/**[instanceName]**/api`
- if you're using Unleash Hosted in US, your URL will have the format `https://us.unleash-hosted.com/**[instanceName]**/api`
- if you're Self hosted, your URL will need to point to wherever your installation is located, suffixed with `/api`.
- See [the API token doc](/user_guide/api-token) for how to configure an Admin token
> NB! Since the plugin is currently using an ADMIN level API token, it has full access to all projects and issues
![Jira - Configure unleash app](/img/jira_configure_unleash_app.png)
After you've entered the URL and API key and clicked `Submit` your api token will no longer be visible.
![Jira - API key already set](/img/jira_admin_api_key_set.png)
Now, you're ready to [use the plugin from Jira issues](/integrations/jira_plugin_usage)

View File

@ -1,39 +0,0 @@
---
id: jira_plugin_usage
title: Jira Integration - Usage
---
> The Jira Plugin is part of Unleash Enterprise.
With the Unleash JIRA plugin you can create new feature toggles in Unleash from a JIRA issue. You'll also be able to link existing toggles to JIRA issues as well as see current status of the linked toggle as both a custom field and as an Issue Panel.
## Using the plugin
To use the plugin, you'll need to create an issue or use an existing one. Once the issue is saved and you open up the Issue panel, you'll be greeted with a button to activate the Unleash plugin for that issue.
![Jira - Issue panel button](/img/jira_issue_panel_button.png)
Clicking this button adds a section to your issue panel allowing you to connect a feature toggle to the issue. If no feature toggle is connected to the issue, you'll be greeted by an entry form for creating the toggle.
![Jira - Create Feature Toggle entry form](/img/jira_create_feature_toggle.png)
### Creating a new feature toggle
Once you've entered the necessary information:
- name - The name must be unique, at the current time, you'll receive an error from the plugin if the name already exist.
- project - Here we fetch valid projects from your Unleash installation and provide you with a dropdown, we'll default to the Default project.
- toggle-type - Again, the plugin will fetch valid types for the toggle from your Unleash installation and provide you with a dropdown.
- enabled - Is the toggle enabled when created
Click the `Create Feature Toggle` button and Unleash will create the toggle for you. Once created, the section in your issue view changes to show if the toggle is enabled.
It also adds a link back to your unleash installation allowing easy access to more advanced configuration of the feature toggle.
Since this leaves JIRA and enters Unleash, you'll be met by the Unleash login screen if you don't already have an active session in Unleash.
![Jira - Issue with existing Feature Toggle](/img/jira_existing_feature_toggle.png)
### Connecting existing feature toggle
- Still to come

View File

@ -0,0 +1,89 @@
---
id: jira_server_plugin_installation
title: Jira Server Integration - Installation
---
> The Jira Server Plugin is part of Unleash Enterprise.
With the Unleash Jira server plugin you can create new feature toggles in Unleash from a Jira issue as well as link
existing toggles to Jira issues.
The plugin also shows you current status of connected toggles.
## Required access levels
### Unleash
You will need an Unleash admin to configure an admin API token.
### Jira
You will need a Jira admin user.
## Installation
The Jira server plugin is currently not listed on the Atlassian marketplace.
To get access to the Jira plugin, please reach out to sales@getunleash.io.
You will receive a dedicated link that will allow you to download the Unleash Jira server plugin.
Once you've downloaded the plugin artifact, you'll need to click the Manage Apps link in Jira's administration menu
![Jira Manage Apps](/img/jira_server_manage_apps.png)
This will take you to Atlassian's marketplace for Jira apps.
From here, click the "Manage apps" link in the left-hand menu
![Jira Marketplace - Manage apps](/img/jira_marketplace_manage_apps.png)
Now, click "Upload app"
![Jira Manage Apps - Upload App](/img/jira_upload_app.png)
This will prompt you to select the plugin artifact for upload.
![Jira Manage Apps - Browse](/img/jira_upload_app_dialog.png)
Once you've selected your file and clicked "Upload". Jira will install the plugin, and you should get a nice status screen saying that it successfully installed.
![Jira Manage Apps - Successful install](/img/jira_server_installed_ready_to_go.png)
You can now move on to [Configuring the plugin](#configure-plugin)
## Configuring plugin {#configure-plugin}
After the plugin is installed. Jira's Manage Apps page will have a new menu section called "Unleash Admin" with a single
link - "Configure servers".
![Jira Manage Apps - Unleash Admin](/img/jira_server_manage_unleash_admin.png)
Following the "Configure servers" link will take you to a config page where you can setup your connection(s) to Unleash
servers. The Unleash Jira server plugin supports having a global server configured for all Jira projects, or a specific
server configured for a specific Jira project.
![Jira Manage Apps - Unleash Server Admin](/img/jira_server_manage_servers.png)
Once you have configured at least one Unleash server, your users should be ready to [use the Jira Server plugin](/integrations/jira_server_plugin_usage)
### Edit existing servers
In the list of known servers, each server has a connected edit button. Clicking the edit button brings up the edit
dialog for the server, allowing you to change the details for the selected server
![Jira Manage Apps - Edit server](/img/jira_server_edit_server.png)
### Delete (disconnect) existing servers
Deleting a server from the admin interface does not actually delete the server, but it deletes Jira's knowledge of the
server.
Since this is a destructive operation, our plugin will ask for confirmation that you're sure you want to do this.
![Jira Manage apps - Delete server confirmation](/img/jira_server_delete_server_confirmation.png)
You will not be allowed to delete a server that has toggles connected to issues, instead you'll receive a
warning dialog telling you that you'll need to disconnect the toggles from their issues first.
![Jira Manage apps - Delete server connected toggles](/img/jira_server_delete_connected_toggles.png)

View File

@ -0,0 +1,50 @@
---
id: jira_server_plugin_usage
title: Jira Server Integration - Usage
---
> The Jira Server Plugin is part of Unleash Enterprise.
With the Unleash Jira server plugin you can create new feature toggles in Unleash from a Jira issue as well as link
existing toggles to Jira issues.
The plugin also shows you current status of connected toggles.
## Using the plugin
To use the plugin, you'll need to create an issue or use an existing one. Once the issue is saved and you open up the Issue panel, you'll be greeted with a button to activate the Unleash plugin for that issue.
### Connecting a toggle to an issue
![Jira Server - Issue panel button](/img/jira_server_issue_panel_button.png)
Clicking this button opens a dialog, allowing you to either connect an existing toggle
![Jira Server - Add Existing toggle](/img/jira_server_add_existing_toggle.png)
or if you flip the switch that says "Use existing toggle", allows you to create a new toggle
![Jira Server - Add new toggle](/img/jira_server_add_new_toggle.png)
### Toggle status as part of Issue view
Once you've connected at least one toggle to an issue, our plugin will list the current status of each environment for
that toggle. If the current user is allowed to edit the issue, they can also enable or disable environments directly
from Jira.
![Jira Server - Toggle status](/img/jira_server_toggle_status.png)
### Disconnecting toggle from Issue
If a toggle is no longer relevant for your Jira Issue, you can disconnect it using the Disconnect toggle button (
provided your user has edit rights on the issue)
![Jira Server - Disconnect toggle](/img/jira_server_disconnect_toggle.png)
Once you click the button, you'll need to confirm the dialog that opens up.
![Jira Server - Disconnect toggle dialog](/img/jira_server_disconnect_toggle_dialog.png)
If confirmed, the toggle will be disconnected immediately. However, the plugin will not delete the toggle from Unleash,
so you can still reconnect your Jira issue to the same toggle using the "Connect to existing toggle" functionality

View File

@ -106,9 +106,9 @@ module.exports = {
},
Integrations: {
Integrations: ['integrations/integrations'],
JIRA: [
'integrations/jira_plugin_installation',
'integrations/jira_plugin_usage',
],
'Jira server': [
'integrations/jira_server_plugin_installation',
'integrations/jira_server_plugin_usage',
]
},
};

Binary file not shown.

Before

Width:  |  Height:  |  Size: 33 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 33 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 54 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 33 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 61 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 59 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 51 KiB

171
yarn.lock
View File

@ -779,18 +779,18 @@
dependencies:
"@types/istanbul-lib-report" "*"
"@types/jest@27.0.2":
version "27.0.2"
resolved "https://registry.yarnpkg.com/@types/jest/-/jest-27.0.2.tgz#ac383c4d4aaddd29bbf2b916d8d105c304a5fcd7"
integrity sha512-4dRxkS/AFX0c5XW6IPMNOydLn2tEhNhJV7DnYK+0bjoJZ+QTmfucBlihX7aoEsh/ocYtkLC73UbnBXBXIxsULA==
"@types/jest@27.0.3":
version "27.0.3"
resolved "https://registry.yarnpkg.com/@types/jest/-/jest-27.0.3.tgz#0cf9dfe9009e467f70a342f0f94ead19842a783a"
integrity sha512-cmmwv9t7gBYt7hNKH5Spu7Kuu/DotGa+Ff+JGRKZ4db5eh8PnKS4LuebJ3YLUoyOyIHraTGyULn23YtEAm0VSg==
dependencies:
jest-diff "^27.0.0"
pretty-format "^27.0.0"
"@types/js-yaml@4.0.4":
version "4.0.4"
resolved "https://registry.yarnpkg.com/@types/js-yaml/-/js-yaml-4.0.4.tgz#cc38781257612581a1a0eb25f1709d2b06812fce"
integrity sha512-AuHubXUmg0AzkXH0Mx6sIxeY/1C110mm/EkE/gB1sTRz3h2dao2W/63q42SlVST+lICxz5Oki2hzYA6+KnnieQ==
"@types/js-yaml@4.0.5":
version "4.0.5"
resolved "https://registry.yarnpkg.com/@types/js-yaml/-/js-yaml-4.0.5.tgz#738dd390a6ecc5442f35e7f03fa1431353f7e138"
integrity sha512-FhpRzf927MNQdRZP0J5DLIdTXhjLYzeUTmLAu69mnVksLH9CJY3IuSeEgbKUki7GQZm0WqDkGzyxju2EZGD2wA==
"@types/json-schema@^7.0.9":
version "7.0.9"
@ -907,10 +907,10 @@
dependencies:
"@types/superagent" "*"
"@types/uuid@8.3.1":
version "8.3.1"
resolved "https://registry.yarnpkg.com/@types/uuid/-/uuid-8.3.1.tgz#1a32969cf8f0364b3d8c8af9cc3555b7805df14f"
integrity sha512-Y2mHTRAbqfFkpjldbkHGY8JIzRN6XqYRliG8/24FcHm2D2PwW24fl5xMRTVGdrb7iMrwCaIEbLWerGIkXuFWVg==
"@types/uuid@8.3.3":
version "8.3.3"
resolved "https://registry.yarnpkg.com/@types/uuid/-/uuid-8.3.3.tgz#c6a60686d953dbd1b1d45e66f4ecdbd5d471b4d0"
integrity sha512-0LbEEx1zxrYB3pgpd1M5lEhLcXjKJnYghvhTRgaBeUivLHMDM1TzF3IJ6hXU2+8uA4Xz+5BA63mtZo5DjVT8iA==
"@types/yargs-parser@*":
version "20.2.1"
@ -924,13 +924,13 @@
dependencies:
"@types/yargs-parser" "*"
"@typescript-eslint/eslint-plugin@5.3.1":
version "5.3.1"
resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.3.1.tgz#d8ff412f10f54f6364e7fd7c1e70eb6767f434c3"
integrity sha512-cFImaoIr5Ojj358xI/SDhjog57OK2NqlpxwdcgyxDA3bJlZcJq5CPzUXtpD7CxI2Hm6ATU7w5fQnnkVnmwpHqw==
"@typescript-eslint/eslint-plugin@5.4.0":
version "5.4.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.4.0.tgz#05e711a2e7b68342661fde61bccbd1531c19521a"
integrity sha512-9/yPSBlwzsetCsGEn9j24D8vGQgJkOTr4oMLas/w886ZtzKIs1iyoqFrwsX2fqYEeUwsdBpC21gcjRGo57u0eg==
dependencies:
"@typescript-eslint/experimental-utils" "5.3.1"
"@typescript-eslint/scope-manager" "5.3.1"
"@typescript-eslint/experimental-utils" "5.4.0"
"@typescript-eslint/scope-manager" "5.4.0"
debug "^4.3.2"
functional-red-black-tree "^1.0.1"
ignore "^5.1.8"
@ -938,60 +938,60 @@
semver "^7.3.5"
tsutils "^3.21.0"
"@typescript-eslint/experimental-utils@5.3.1":
version "5.3.1"
resolved "https://registry.yarnpkg.com/@typescript-eslint/experimental-utils/-/experimental-utils-5.3.1.tgz#bbd8f9b67b4d5fdcb9d2f90297d8fcda22561e05"
integrity sha512-RgFn5asjZ5daUhbK5Sp0peq0SSMytqcrkNfU4pnDma2D8P3ElZ6JbYjY8IMSFfZAJ0f3x3tnO3vXHweYg0g59w==
"@typescript-eslint/experimental-utils@5.4.0":
version "5.4.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/experimental-utils/-/experimental-utils-5.4.0.tgz#238a7418d2da3b24874ba35385eb21cc61d2a65e"
integrity sha512-Nz2JDIQUdmIGd6p33A+naQmwfkU5KVTLb/5lTk+tLVTDacZKoGQisj8UCxk7onJcrgjIvr8xWqkYI+DbI3TfXg==
dependencies:
"@types/json-schema" "^7.0.9"
"@typescript-eslint/scope-manager" "5.3.1"
"@typescript-eslint/types" "5.3.1"
"@typescript-eslint/typescript-estree" "5.3.1"
"@typescript-eslint/scope-manager" "5.4.0"
"@typescript-eslint/types" "5.4.0"
"@typescript-eslint/typescript-estree" "5.4.0"
eslint-scope "^5.1.1"
eslint-utils "^3.0.0"
"@typescript-eslint/parser@5.3.1":
version "5.3.1"
resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-5.3.1.tgz#8ff1977c3d3200c217b3e4628d43ef92f89e5261"
integrity sha512-TD+ONlx5c+Qhk21x9gsJAMRohWAUMavSOmJgv3JGy9dgPhuBd5Wok0lmMClZDyJNLLZK1JRKiATzCKZNUmoyfw==
"@typescript-eslint/parser@5.4.0":
version "5.4.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-5.4.0.tgz#3aa83ce349d66e39b84151f6d5464928044ca9e3"
integrity sha512-JoB41EmxiYpaEsRwpZEYAJ9XQURPFer8hpkIW9GiaspVLX8oqbqNM8P4EP8HOZg96yaALiLEVWllA2E8vwsIKw==
dependencies:
"@typescript-eslint/scope-manager" "5.3.1"
"@typescript-eslint/types" "5.3.1"
"@typescript-eslint/typescript-estree" "5.3.1"
"@typescript-eslint/scope-manager" "5.4.0"
"@typescript-eslint/types" "5.4.0"
"@typescript-eslint/typescript-estree" "5.4.0"
debug "^4.3.2"
"@typescript-eslint/scope-manager@5.3.1":
version "5.3.1"
resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-5.3.1.tgz#3cfbfbcf5488fb2a9a6fbbe97963ee1e8d419269"
integrity sha512-XksFVBgAq0Y9H40BDbuPOTUIp7dn4u8oOuhcgGq7EoDP50eqcafkMVGrypyVGvDYHzjhdUCUwuwVUK4JhkMAMg==
"@typescript-eslint/scope-manager@5.4.0":
version "5.4.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-5.4.0.tgz#aaab08415f4a9cf32b870c7750ae8ba4607126a1"
integrity sha512-pRxFjYwoi8R+n+sibjgF9iUiAELU9ihPBtHzocyW8v8D8G8KeQvXTsW7+CBYIyTYsmhtNk50QPGLE3vrvhM5KA==
dependencies:
"@typescript-eslint/types" "5.3.1"
"@typescript-eslint/visitor-keys" "5.3.1"
"@typescript-eslint/types" "5.4.0"
"@typescript-eslint/visitor-keys" "5.4.0"
"@typescript-eslint/types@5.3.1":
version "5.3.1"
resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.3.1.tgz#afaa715b69ebfcfde3af8b0403bf27527912f9b7"
integrity sha512-bG7HeBLolxKHtdHG54Uac750eXuQQPpdJfCYuw4ZI3bZ7+GgKClMWM8jExBtp7NSP4m8PmLRM8+lhzkYnSmSxQ==
"@typescript-eslint/types@5.4.0":
version "5.4.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.4.0.tgz#b1c130f4b381b77bec19696c6e3366f9781ce8f2"
integrity sha512-GjXNpmn+n1LvnttarX+sPD6+S7giO+9LxDIGlRl4wK3a7qMWALOHYuVSZpPTfEIklYjaWuMtfKdeByx0AcaThA==
"@typescript-eslint/typescript-estree@5.3.1":
version "5.3.1"
resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-5.3.1.tgz#50cc4bfb93dc31bc75e08ae52e29fcb786d606ec"
integrity sha512-PwFbh/PKDVo/Wct6N3w+E4rLZxUDgsoII/GrWM2A62ETOzJd4M6s0Mu7w4CWsZraTbaC5UQI+dLeyOIFF1PquQ==
"@typescript-eslint/typescript-estree@5.4.0":
version "5.4.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-5.4.0.tgz#fe524fb308973c68ebeb7428f3b64499a6ba5fc0"
integrity sha512-nhlNoBdhKuwiLMx6GrybPT3SFILm5Gij2YBdPEPFlYNFAXUJWX6QRgvi/lwVoadaQEFsizohs6aFRMqsXI2ewA==
dependencies:
"@typescript-eslint/types" "5.3.1"
"@typescript-eslint/visitor-keys" "5.3.1"
"@typescript-eslint/types" "5.4.0"
"@typescript-eslint/visitor-keys" "5.4.0"
debug "^4.3.2"
globby "^11.0.4"
is-glob "^4.0.3"
semver "^7.3.5"
tsutils "^3.21.0"
"@typescript-eslint/visitor-keys@5.3.1":
version "5.3.1"
resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-5.3.1.tgz#c2860ff22939352db4f3806f34b21d8ad00588ba"
integrity sha512-3cHUzUuVTuNHx0Gjjt5pEHa87+lzyqOiHXy/Gz+SJOCW1mpw9xQHIIEwnKn+Thph1mgWyZ90nboOcSuZr/jTTQ==
"@typescript-eslint/visitor-keys@5.4.0":
version "5.4.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-5.4.0.tgz#09bc28efd3621f292fe88c86eef3bf4893364c8c"
integrity sha512-PVbax7MeE7tdLfW5SA0fs8NGVVr+buMPrcj+CWYWPXsZCH8qZ1THufDzbXm1xrZ2b2PA1iENJ0sRq5fuUtvsJg==
dependencies:
"@typescript-eslint/types" "5.3.1"
"@typescript-eslint/types" "5.4.0"
eslint-visitor-keys "^3.0.0"
abab@^2.0.3, abab@^2.0.5:
@ -1050,6 +1050,11 @@ acorn@^8.5.0:
resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.5.0.tgz#4512ccb99b3698c752591e9bb4472e38ad43cee2"
integrity sha512-yXbYeFy+jUuYd3/CDcg2NkIYE991XYX/bje7LmjJigUciaeO1JR4XxXgCIV1/Zc/dRuFEyw1L0pbA+qynJkW5Q==
acorn@^8.6.0:
version "8.6.0"
resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.6.0.tgz#e3692ba0eb1a0c83eaa4f37f5fa7368dd7142895"
integrity sha512-U1riIR+lBSNi3IbxtaHOIKdH8sLFv3NYfNv8sg7ZsNhcfl4HF2++BfqqrNAxoCLQW1iiylOj76ecnaUxz+z9yw==
agent-base@6:
version "6.0.2"
resolved "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz"
@ -2024,10 +2029,10 @@ db-migrate-shared@1.2.0, db-migrate-shared@^1.2.0:
resolved "https://registry.npmjs.org/db-migrate-shared/-/db-migrate-shared-1.2.0.tgz"
integrity sha512-65k86bVeHaMxb2L0Gw3y5V+CgZSRwhVQMwDMydmw5MvIpHHwD6SmBciqIwHsZfzJ9yzV/yYhdRefRM6FV5/siw==
db-migrate@0.11.12:
version "0.11.12"
resolved "https://registry.npmjs.org/db-migrate/-/db-migrate-0.11.12.tgz"
integrity sha512-HUS8T5A3sKGCi+hz9XMKMwAKfU9sqhpDufW9nbVSRc5wxDO695uxA5lDe+If0OdvwwQOVxOnEZqkzAAxgyeFWg==
db-migrate@0.11.13:
version "0.11.13"
resolved "https://registry.yarnpkg.com/db-migrate/-/db-migrate-0.11.13.tgz#b9e5b242c62e82ef8ed2b29e118698813e953d67"
integrity sha512-OE/bbDo/mQvLmZrui/2jNAiAECJROSURCOU5xs6qKr3FvtUE2O6b0xBUI6WyAAKdili3LJQHFlpqugiYCGTSBA==
dependencies:
balanced-match "^1.0.0"
bluebird "^3.1.1"
@ -2543,10 +2548,10 @@ eslint-scope@^5.1.1:
esrecurse "^4.3.0"
estraverse "^4.1.1"
eslint-scope@^6.0.0:
version "6.0.0"
resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-6.0.0.tgz#9cf45b13c5ac8f3d4c50f46a5121f61b3e318978"
integrity sha512-uRDL9MWmQCkaFus8RF5K9/L/2fn+80yoW3jkD53l4shjCh26fCtvJGasxjUqP5OT87SYTxCVA3BwTUzuELx9kA==
eslint-scope@^7.1.0:
version "7.1.0"
resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-7.1.0.tgz#c1f6ea30ac583031f203d65c73e723b01298f153"
integrity sha512-aWwkhnS0qAXqNOgKOK0dJ2nvzEbhEvpy8OlJ9kZ0FeZnA6zpjv1/Vei+puGFFX7zkPCkHHXb7IDX3A+7yPrRWg==
dependencies:
esrecurse "^4.3.0"
estraverse "^5.2.0"
@ -2568,10 +2573,15 @@ eslint-visitor-keys@^3.0.0:
resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.0.0.tgz#e32e99c6cdc2eb063f204eda5db67bfe58bb4186"
integrity sha512-mJOZa35trBTb3IyRmo8xmKBZlxf+N7OnUl4+ZhJHs/r+0770Wh/LEACE2pqMGMe27G/4y8P2bYGk4J70IC5k1Q==
eslint@8.2.0:
version "8.2.0"
resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.2.0.tgz#44d3fb506d0f866a506d97a0fc0e90ee6d06a815"
integrity sha512-erw7XmM+CLxTOickrimJ1SiF55jiNlVSp2qqm0NuBWPtHYQCegD5ZMaW0c3i5ytPqL+SSLaCxdvQXFPLJn+ABw==
eslint-visitor-keys@^3.1.0:
version "3.1.0"
resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.1.0.tgz#eee4acea891814cda67a7d8812d9647dd0179af2"
integrity sha512-yWJFpu4DtjsWKkt5GeNBBuZMlNcYVs6vRCLoCVEJrTjaSB6LC98gFipNK/erM2Heg/E8mIK+hXG/pJMLK+eRZA==
eslint@8.3.0:
version "8.3.0"
resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.3.0.tgz#a3c2409507403c1c7f6c42926111d6cbefbc3e85"
integrity sha512-aIay56Ph6RxOTC7xyr59Kt3ewX185SaGnAr8eWukoPLeriCrvGjvAubxuvaXOfsxhtwV5g0uBOsyhAom4qJdww==
dependencies:
"@eslint/eslintrc" "^1.0.4"
"@humanwhocodes/config-array" "^0.6.0"
@ -2582,10 +2592,10 @@ eslint@8.2.0:
doctrine "^3.0.0"
enquirer "^2.3.5"
escape-string-regexp "^4.0.0"
eslint-scope "^6.0.0"
eslint-scope "^7.1.0"
eslint-utils "^3.0.0"
eslint-visitor-keys "^3.0.0"
espree "^9.0.0"
eslint-visitor-keys "^3.1.0"
espree "^9.1.0"
esquery "^1.4.0"
esutils "^2.0.2"
fast-deep-equal "^3.1.3"
@ -2626,6 +2636,15 @@ espree@^9.0.0:
acorn-jsx "^5.3.1"
eslint-visitor-keys "^3.0.0"
espree@^9.1.0:
version "9.1.0"
resolved "https://registry.yarnpkg.com/espree/-/espree-9.1.0.tgz#ba9d3c9b34eeae205724124e31de4543d59fbf74"
integrity sha512-ZgYLvCS1wxOczBYGcQT9DDWgicXwJ4dbocr9uYN+/eresBAUuBu+O4WzB21ufQ/JqQT8gyp7hJ3z8SHii32mTQ==
dependencies:
acorn "^8.6.0"
acorn-jsx "^5.3.1"
eslint-visitor-keys "^3.1.0"
esprima@^4.0.0, esprima@^4.0.1:
version "4.0.1"
resolved "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz"
@ -6306,10 +6325,10 @@ source-map-resolve@^0.5.0:
source-map-url "^0.4.0"
urix "^0.1.0"
source-map-support@0.5.20:
version "0.5.20"
resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.20.tgz#12166089f8f5e5e8c56926b377633392dd2cb6c9"
integrity sha512-n1lZZ8Ve4ksRqizaBQgxXDgKwttHDhyfQjA6YZZn8+AroHbsIz+JjwxQDxbp+7y5OYCI8t1Yk7etjD9CRd2hIw==
source-map-support@0.5.21:
version "0.5.21"
resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.21.tgz#04fe7c7f9e1ed2d662233c28cb2b35b9f63f6e4f"
integrity sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==
dependencies:
buffer-from "^1.0.0"
source-map "^0.6.0"
@ -6998,10 +7017,10 @@ typedarray@^0.0.6:
resolved "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz"
integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=
typescript@4.4.4:
version "4.4.4"
resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.4.4.tgz#2cd01a1a1f160704d3101fd5a58ff0f9fcb8030c"
integrity sha512-DqGhF5IKoBl8WNf8C1gu8q0xZSInh9j1kJJMqT3a94w1JzVaBU4EXOSMrz9yDqMT0xt3selp83fuFMQ0uzv6qA==
typescript@4.5.2:
version "4.5.2"
resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.5.2.tgz#8ac1fba9f52256fdb06fb89e4122fa6a346c2998"
integrity sha512-5BlMof9H1yGt0P8/WF+wPNw6GfctgGjXp5hkblpyT+8rkASSmkUKMXrxR0Xg8ThVCi/JnHQiKXeBaEwCeQwMFw==
uid-safe@~2.1.5:
version "2.1.5"