From c1c1e1701c18b8063162f2a956f44eb5624fb764 Mon Sep 17 00:00:00 2001 From: Easton Crupper <65553218+ecrupper@users.noreply.github.com> Date: Fri, 5 Jan 2024 09:55:19 -0500 Subject: [PATCH 01/10] feat(repo_settings): new allow_events support (#751) --- cypress/fixtures/repositories.json | 84 +- cypress/fixtures/repositories_100.json | 2100 ++++++++++++++++++++- cypress/fixtures/repositories_10a.json | 210 ++- cypress/fixtures/repositories_10b.json | 210 ++- cypress/fixtures/repositories_5.json | 95 + cypress/fixtures/repository.json | 19 + cypress/fixtures/repository_inactive.json | 19 + cypress/fixtures/repository_updated.json | 19 + cypress/integration/repo_settings.spec.js | 10 +- src/elm/Main.elm | 9 +- src/elm/Pages/RepoSettings.elm | 224 ++- src/elm/Vela.elm | 259 ++- src/scss/_forms.scss | 10 + src/scss/_settings.scss | 4 + 14 files changed, 3080 insertions(+), 192 deletions(-) diff --git a/cypress/fixtures/repositories.json b/cypress/fixtures/repositories.json index fc2f37eb4..3a25b7b8d 100644 --- a/cypress/fixtures/repositories.json +++ b/cypress/fixtures/repositories.json @@ -20,7 +20,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 18, @@ -43,7 +62,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 17, @@ -65,7 +103,26 @@ "allow_push": true, "allow_deploy": false, "allow_tag": false, - "allow_comment": false + "allow_comment": false, + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 16, @@ -88,6 +145,25 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } } ] diff --git a/cypress/fixtures/repositories_100.json b/cypress/fixtures/repositories_100.json index d432f94ae..a3268deb9 100644 --- a/cypress/fixtures/repositories_100.json +++ b/cypress/fixtures/repositories_100.json @@ -20,7 +20,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 1, @@ -43,7 +62,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 2, @@ -66,7 +104,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 3, @@ -89,7 +146,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 4, @@ -112,7 +188,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 5, @@ -135,7 +230,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 6, @@ -158,7 +272,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 7, @@ -181,7 +314,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 8, @@ -204,7 +356,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 9, @@ -227,7 +398,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 10, @@ -250,7 +440,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 11, @@ -273,7 +482,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 12, @@ -296,7 +524,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 13, @@ -319,7 +566,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 14, @@ -342,7 +608,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 15, @@ -365,7 +650,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 16, @@ -388,7 +692,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 17, @@ -411,7 +734,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 18, @@ -434,7 +776,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 19, @@ -457,7 +818,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 20, @@ -480,7 +860,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 21, @@ -503,7 +902,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 22, @@ -526,7 +944,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 23, @@ -549,7 +986,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 24, @@ -572,7 +1028,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 25, @@ -595,7 +1070,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 26, @@ -618,7 +1112,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 27, @@ -641,7 +1154,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 28, @@ -664,7 +1196,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 29, @@ -687,7 +1238,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 30, @@ -710,7 +1280,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 31, @@ -733,7 +1322,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 32, @@ -756,7 +1364,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 33, @@ -779,7 +1406,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 34, @@ -802,7 +1448,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 35, @@ -825,7 +1490,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 36, @@ -848,7 +1532,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 37, @@ -871,7 +1574,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 38, @@ -894,7 +1616,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 39, @@ -917,7 +1658,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 40, @@ -940,7 +1700,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 41, @@ -963,7 +1742,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 42, @@ -986,7 +1784,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 43, @@ -1009,7 +1826,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 44, @@ -1032,7 +1868,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 45, @@ -1055,7 +1910,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 46, @@ -1078,7 +1952,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 47, @@ -1101,7 +1994,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 48, @@ -1124,7 +2036,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 49, @@ -1147,7 +2078,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 50, @@ -1170,7 +2120,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 51, @@ -1193,7 +2162,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 52, @@ -1216,7 +2204,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 53, @@ -1239,7 +2246,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 54, @@ -1262,7 +2288,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 55, @@ -1285,7 +2330,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 56, @@ -1308,7 +2372,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 57, @@ -1331,7 +2414,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 58, @@ -1354,7 +2456,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 59, @@ -1377,7 +2498,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 60, @@ -1400,7 +2540,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 61, @@ -1423,7 +2582,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 62, @@ -1446,7 +2624,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 63, @@ -1469,7 +2666,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 64, @@ -1492,7 +2708,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 65, @@ -1515,7 +2750,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 66, @@ -1538,7 +2792,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 67, @@ -1561,7 +2834,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 68, @@ -1584,7 +2876,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 69, @@ -1607,7 +2918,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 70, @@ -1630,7 +2960,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 71, @@ -1653,7 +3002,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 72, @@ -1676,7 +3044,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 73, @@ -1699,7 +3086,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 74, @@ -1722,7 +3128,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 75, @@ -1745,7 +3170,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 76, @@ -1768,7 +3212,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 77, @@ -1791,7 +3254,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 78, @@ -1814,7 +3296,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 79, @@ -1837,7 +3338,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 80, @@ -1860,7 +3380,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 81, @@ -1883,7 +3422,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 82, @@ -1906,7 +3464,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 83, @@ -1929,7 +3506,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 84, @@ -1952,7 +3548,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 85, @@ -1975,7 +3590,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 86, @@ -1998,7 +3632,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 87, @@ -2021,7 +3674,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 88, @@ -2044,7 +3716,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 89, @@ -2067,7 +3758,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 90, @@ -2090,7 +3800,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 91, @@ -2113,7 +3842,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 92, @@ -2136,7 +3884,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 93, @@ -2159,7 +3926,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 94, @@ -2182,7 +3968,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 95, @@ -2205,7 +4010,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 96, @@ -2228,7 +4052,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 97, @@ -2251,7 +4094,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 98, @@ -2274,7 +4136,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 99, @@ -2297,6 +4178,25 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } } ] diff --git a/cypress/fixtures/repositories_10a.json b/cypress/fixtures/repositories_10a.json index 689ab5801..fb7e6c138 100644 --- a/cypress/fixtures/repositories_10a.json +++ b/cypress/fixtures/repositories_10a.json @@ -20,7 +20,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 1, @@ -43,7 +62,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 2, @@ -66,7 +104,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 3, @@ -89,7 +146,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 4, @@ -112,7 +188,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 5, @@ -135,7 +230,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 6, @@ -158,7 +272,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 7, @@ -181,7 +314,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 8, @@ -204,7 +356,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 9, @@ -227,6 +398,25 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } } ] diff --git a/cypress/fixtures/repositories_10b.json b/cypress/fixtures/repositories_10b.json index 82ae85f47..34098857c 100644 --- a/cypress/fixtures/repositories_10b.json +++ b/cypress/fixtures/repositories_10b.json @@ -20,7 +20,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 11, @@ -43,7 +62,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 12, @@ -66,7 +104,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 13, @@ -89,7 +146,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 14, @@ -112,7 +188,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 15, @@ -135,7 +230,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 16, @@ -158,7 +272,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 17, @@ -181,7 +314,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 18, @@ -204,7 +356,26 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } }, { "id": 19, @@ -227,6 +398,25 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, - "pipeline_type": "yaml" + "pipeline_type": "yaml", + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + } } ] diff --git a/cypress/fixtures/repositories_5.json b/cypress/fixtures/repositories_5.json index b0f07d2e2..51b46bdcb 100644 --- a/cypress/fixtures/repositories_5.json +++ b/cypress/fixtures/repositories_5.json @@ -20,6 +20,25 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + }, "pipeline_type": "yaml" }, { @@ -43,6 +62,25 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + }, "pipeline_type": "yaml" }, { @@ -66,6 +104,25 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + }, "pipeline_type": "yaml" }, { @@ -89,6 +146,25 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + }, "pipeline_type": "yaml" }, { @@ -112,6 +188,25 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + }, "pipeline_type": "yaml" } ] diff --git a/cypress/fixtures/repository.json b/cypress/fixtures/repository.json index 1f2e66fdf..4ac27f803 100644 --- a/cypress/fixtures/repository.json +++ b/cypress/fixtures/repository.json @@ -19,6 +19,25 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + }, "pipeline_type": "yaml", "approve_build": "fork-always" } diff --git a/cypress/fixtures/repository_inactive.json b/cypress/fixtures/repository_inactive.json index 92d8dfc58..cc43faf38 100644 --- a/cypress/fixtures/repository_inactive.json +++ b/cypress/fixtures/repository_inactive.json @@ -19,5 +19,24 @@ "allow_deploy": false, "allow_tag": false, "allow_comment": false, + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + } + }, "pipeline_type": "yaml" } diff --git a/cypress/fixtures/repository_updated.json b/cypress/fixtures/repository_updated.json index 8da3b8bbf..10c69294c 100644 --- a/cypress/fixtures/repository_updated.json +++ b/cypress/fixtures/repository_updated.json @@ -19,6 +19,25 @@ "allow_deploy": true, "allow_tag": true, "allow_comment": false, + "allow_events": { + "push": { + "branch": false, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": true + }, + "comment": { + "created": false, + "edited": false + } + }, "pipeline_type": "yaml", "approve_build": "fork-no-write" } diff --git a/cypress/integration/repo_settings.spec.js b/cypress/integration/repo_settings.spec.js index 4a491470b..2324e60ab 100644 --- a/cypress/integration/repo_settings.spec.js +++ b/cypress/integration/repo_settings.spec.js @@ -51,12 +51,14 @@ context('Repo Settings', () => { cy.get('[data-test=repo-settings-events]').should('be.visible'); }); - it('allow_push checkbox should show', () => { - cy.get('[data-test=repo-checkbox-allow_push]').should('be.visible'); + it('allow_push_branch checkbox should show', () => { + cy.get('[data-test=repo-checkbox-allow_push_branch]').should( + 'be.visible', + ); }); - it('clicking allow_push checkbox should toggle the value', () => { - cy.get('[data-test=repo-checkbox-allow_push] input').as( + it('clicking allow_push_branch checkbox should toggle the value', () => { + cy.get('[data-test=repo-checkbox-allow_push_branch] input').as( 'allowPushCheckbox', ); cy.get('@allowPushCheckbox').should('have.checked'); diff --git a/src/elm/Main.elm b/src/elm/Main.elm index 5b06671b0..9eaa69226 100644 --- a/src/elm/Main.elm +++ b/src/elm/Main.elm @@ -178,6 +178,7 @@ import Vela , UpdateUserPayload , buildUpdateFavoritesPayload , buildUpdateRepoBoolPayload + , buildUpdateRepoEventsPayload , buildUpdateRepoIntPayload , buildUpdateRepoStringPayload , decodeGraphInteraction @@ -433,7 +434,7 @@ type Msg | DisableRepo Repository | ChownRepo Repository | RepairRepo Repository - | UpdateRepoEvent Org Repo Field Bool + | UpdateRepoEvent Org Repo Repository Field Bool | UpdateRepoAccess Org Repo Field String | UpdateRepoForkPolicy Org Repo Field String | UpdateRepoPipelineType Org Repo Field String @@ -1182,11 +1183,11 @@ update msg model = RepairRepo repo -> ( model, Api.try (RepoRepairedResponse repo) <| Api.repairRepo model repo ) - UpdateRepoEvent org repo field value -> + UpdateRepoEvent org name repo field value -> let payload : UpdateRepositoryPayload payload = - buildUpdateRepoBoolPayload field value + buildUpdateRepoEventsPayload repo field value cmd = if Pages.RepoSettings.validEventsUpdate rm.repo payload then @@ -1195,7 +1196,7 @@ update msg model = body = Http.jsonBody <| encodeUpdateRepository payload in - Api.try (RepoUpdatedResponse field) (Api.updateRepository model org repo body) + Api.try (RepoUpdatedResponse field) (Api.updateRepository model org name body) else addErrorString "Could not disable webhook event. At least one event must be active." HandleError diff --git a/src/elm/Pages/RepoSettings.elm b/src/elm/Pages/RepoSettings.elm index c9a7acd77..8dddde1ab 100644 --- a/src/elm/Pages/RepoSettings.elm +++ b/src/elm/Pages/RepoSettings.elm @@ -27,6 +27,7 @@ import Html , div , em , h2 + , h3 , img , input , label @@ -80,10 +81,10 @@ import Vela -- TYPES -{-| CheckboxUpdate : type that takes Msg for forwarding checkbox input callback to Main.elm +{-| EventsUpdate : type that takes Msg for forwarding event checkbox input callback to Main.elm -} -type alias CheckboxUpdate msg = - String -> String -> String -> (Bool -> msg) +type alias EventsUpdate msg = + String -> String -> Repository -> String -> (Bool -> msg) {-| RadioUpdate : type that takes Msg for forwarding radio input callback to Main.elm @@ -107,7 +108,7 @@ type alias StringInputChange msg = {-| Msgs : record containing msgs routeable to Main.elm -} type alias Msgs msg = - { eventsUpdate : CheckboxUpdate msg + { eventsUpdate : EventsUpdate msg , accessUpdate : RadioUpdate msg , forkPolicyUpdate : RadioUpdate msg , limitUpdate : NumberInputChange msg @@ -296,43 +297,78 @@ badge repo velaAPI velaURL copyMsg = {-| events : takes model and repo and renders the settings category for updating repo webhook events -} -events : Repository -> CheckboxUpdate msg -> Html msg +events : Repository -> EventsUpdate msg -> Html msg events repo msg = - section [ class "settings", Util.testAttribute "repo-settings-events" ] - [ h2 [ class "settings-title" ] [ text "Webhook Events" ] - , p [ class "settings-description" ] - [ text "Control which events on Git will trigger Vela pipelines." - , br [] [] - , em [] [ text "Active repositories must have at least one event enabled." ] - ] - , div [ class "form-controls", class "-stack" ] - [ checkbox "Push" - "allow_push" - repo.allow_push - <| - msg repo.org repo.name "allow_push" - , checkbox "Pull Request" - "allow_pull" - repo.allow_pull - <| - msg repo.org repo.name "allow_pull" - , checkbox "Tag" - "allow_tag" - repo.allow_tag - <| - msg repo.org repo.name "allow_tag" - , checkbox "Comment" - "allow_comment" - repo.allow_comment - <| - msg repo.org repo.name "allow_comment" - , checkbox "Deploy" - "allow_deploy" - repo.allow_deploy - <| - msg repo.org repo.name "allow_deploy" - ] - ] + case repo.allow_events of + Nothing -> + text "" + + Just allowEvents -> + section [ class "settings", Util.testAttribute "repo-settings-events" ] + [ h2 [ class "settings-title" ] [ text "Webhook Events" ] + , p [ class "settings-description" ] + [ text "Control which events on Git will trigger Vela pipelines." + , br [] [] + , em [] [ text "Active repositories must have at least one event enabled." ] + ] + , h3 [ class "settings-subtitle" ] [ text "Push" ] + , div [ class "form-controls", class "-two-col" ] + [ checkbox "Push" + "allow_push_branch" + allowEvents.push.branch + <| + msg repo.org repo.name repo "allow_push_branch" + , checkbox "Tag" + "allow_push_tag" + allowEvents.push.tag + <| + msg repo.org repo.name repo "allow_push_tag" + ] + , h3 [ class "settings-subtitle" ] [ text "Pull Request" ] + , div [ class "form-controls", class "-two-col" ] + [ checkbox "Opened" + "allow_pull_opened" + allowEvents.pull.opened + <| + msg repo.org repo.name repo "allow_pull_opened" + , checkbox "Synchronize" + "allow_pull_synchronize" + allowEvents.pull.synchronize + <| + msg repo.org repo.name repo "allow_pull_synchronize" + , checkbox "Edited" + "allow_pull_edited" + allowEvents.pull.edited + <| + msg repo.org repo.name repo "allow_pull_edited" + , checkbox "Reopened" + "allow_pull_reopened" + allowEvents.pull.reopened + <| + msg repo.org repo.name repo "allow_pull_reopened" + ] + , h3 [ class "settings-subtitle" ] [ text "Deployments" ] + , div [ class "form-controls", class "-two-col" ] + [ checkbox "Created" + "allow_deploy_created" + allowEvents.deploy.created + <| + msg repo.org repo.name repo "allow_deploy_created" + ] + , h3 [ class "settings-subtitle" ] [ text "Comment" ] + , div [ class "form-controls", class "-two-col" ] + [ checkbox "Created" + "allow_comment_created" + allowEvents.comment.created + <| + msg repo.org repo.name repo "allow_comment_created" + , checkbox "Edited" + "allow_comment_edited" + allowEvents.comment.edited + <| + msg repo.org repo.name repo "allow_comment_edited" + ] + ] {-| limit : takes model and repo and renders the settings category for updating repo build limit @@ -392,7 +428,7 @@ checkbox name field state msg = , onCheck msg ] [] - , label [ class "form-label", for <| "checkbox-" ++ field ] [ strong [] [ text name ] ] + , label [ class "form-label", for <| "checkbox-" ++ field ] [ text name ] ] @@ -896,20 +932,32 @@ msgPrefix field = "approve_build" -> "$ approve build policy set to " - "allow_pull" -> - "Pull events for $ " + "allow_pull_opened" -> + "Pull opened events for $ " + + "allow_pull_synchronize" -> + "Pull synchronize events for $ " - "allow_push" -> - "Push events for $ " + "allow_pull_edited" -> + "Pull edited events for $ " - "allow_deploy" -> + "allow_pull_reopened" -> + "Pull reopened events for $ " + + "allow_push_branch" -> + "Push branch events for $ " + + "allow_push_tag" -> + "Push tag events for $ " + + "allow_deploy_created" -> "Deploy events for $ " - "allow_tag" -> - "Tag events for $ " + "allow_comment_created" -> + "Comment created events for $ " - "allow_comment" -> - "Comment events for $ " + "allow_comment_edited" -> + "Comment edited events for $ " "build_limit" -> "Build limit for $ " @@ -944,17 +992,77 @@ msgSuffix field repo = "approve_build" -> repo.approve_build ++ "." - "allow_pull" -> - toggleText "allow_pull" repo.allow_pull + "allow_pull_opened" -> + case repo.allow_events of + Nothing -> + "" + + Just allowEvents -> + toggleText "allow_pull_opened" allowEvents.pull.opened - "allow_push" -> - toggleText "allow_push" repo.allow_push + "allow_pull_synchronize" -> + case repo.allow_events of + Nothing -> + "" + + Just allowEvents -> + toggleText "allow_pull_synchronize" allowEvents.pull.synchronize + + "allow_pull_edited" -> + case repo.allow_events of + Nothing -> + "" + + Just allowEvents -> + toggleText "allow_pull_edited" allowEvents.pull.edited + + "allow_pull_reopened" -> + case repo.allow_events of + Nothing -> + "" + + Just allowEvents -> + toggleText "allow_pull_reopened" allowEvents.pull.reopened + + "allow_push_branch" -> + case repo.allow_events of + Nothing -> + "" + + Just allowEvents -> + toggleText "allow_push_branch" allowEvents.push.branch - "allow_deploy" -> - toggleText "allow_deploy" repo.allow_deploy + "allow_push_tag" -> + case repo.allow_events of + Nothing -> + "" + + Just allowEvents -> + toggleText "allow_push_tag" allowEvents.push.tag + + "allow_deploy_created" -> + case repo.allow_events of + Nothing -> + "" + + Just allowEvents -> + toggleText "allow_deploy_created" allowEvents.deploy.created + + "allow_comment_created" -> + case repo.allow_events of + Nothing -> + "" + + Just allowEvents -> + toggleText "allow_comment_created" allowEvents.comment.created + + "allow_comment_edited" -> + case repo.allow_events of + Nothing -> + "" - "allow_comment" -> - toggleText "allow_comment" repo.allow_comment + Just allowEvents -> + toggleText "allow_comment_edited" allowEvents.comment.edited "build_limit" -> "set to " ++ String.fromInt repo.limit diff --git a/src/elm/Vela.elm b/src/elm/Vela.elm index 86d3a3e10..6104f6b31 100644 --- a/src/elm/Vela.elm +++ b/src/elm/Vela.elm @@ -5,6 +5,7 @@ SPDX-License-Identifier: Apache-2.0 module Vela exposing ( AddSchedulePayload + , AllowEvents , AuthParams , Build , BuildGraph @@ -87,6 +88,7 @@ module Vela exposing , buildDeploymentPayload , buildUpdateFavoritesPayload , buildUpdateRepoBoolPayload + , buildUpdateRepoEventsPayload , buildUpdateRepoIntPayload , buildUpdateRepoStringPayload , buildUpdateSchedulePayload @@ -917,6 +919,39 @@ type alias Deployment = } +type alias PushActions = + { branch : Bool + , tag : Bool + } + + +type alias PullActions = + { opened : Bool + , synchronize : Bool + , edited : Bool + , reopened : Bool + } + + +type alias DeployActions = + { created : Bool + } + + +type alias CommentActions = + { created : Bool + , edited : Bool + } + + +type alias AllowEvents = + { push : PushActions + , pull : PullActions + , deploy : DeployActions + , comment : CommentActions + } + + type alias Repository = { id : Int , user_id : Int @@ -939,6 +974,7 @@ type alias Repository = , allow_deploy : Bool , allow_tag : Bool , allow_comment : Bool + , allow_events : Maybe AllowEvents , enabled : Enabled , enabling : Enabling , inLimit : Maybe Int @@ -961,6 +997,44 @@ type Enabling | NotAsked_ +decodePushActions : Decoder PushActions +decodePushActions = + Decode.succeed PushActions + |> required "branch" bool + |> required "tag" bool + + +decodePullActions : Decoder PullActions +decodePullActions = + Decode.succeed PullActions + |> required "opened" bool + |> required "synchronize" bool + |> required "edited" bool + |> required "reopened" bool + + +decodeDeployActions : Decoder DeployActions +decodeDeployActions = + Decode.succeed DeployActions + |> required "created" bool + + +decodeCommentActions : Decoder CommentActions +decodeCommentActions = + Decode.succeed CommentActions + |> required "created" bool + |> required "edited" bool + + +decodeAllowEvents : Decoder AllowEvents +decodeAllowEvents = + Decode.succeed AllowEvents + |> required "push" decodePushActions + |> required "pull_request" decodePullActions + |> required "deployment" decodeDeployActions + |> required "comment" decodeCommentActions + + decodeRepositories : Decoder (List Repository) decodeRepositories = Decode.list decodeRepository @@ -990,6 +1064,7 @@ decodeRepository = |> optional "allow_deploy" bool False |> optional "allow_tag" bool False |> optional "allow_comment" bool False + |> optional "allow_events" (Decode.maybe decodeAllowEvents) Nothing -- "enabled" |> optional "active" enabledDecoder NotAsked -- "enabling" @@ -1072,6 +1147,50 @@ encodeEnableRepository repo = , ( "allow_deploy", Encode.bool <| repo.allow_deploy ) , ( "allow_tag", Encode.bool <| repo.allow_tag ) , ( "allow_comment", Encode.bool <| repo.allow_comment ) + , ( "allow_events", encodeOptional encodeAllowEvents repo.allow_events ) + ] + + +encodeAllowEvents : AllowEventsPayload -> Encode.Value +encodeAllowEvents events = + Encode.object + [ ( "push", encodePushActions events.push ) + , ( "pull_request", encodePullActions events.pull ) + , ( "deployment", encodeDeployActions events.deploy ) + , ( "comment", encodeCommentActions events.comment ) + ] + + +encodePushActions : PushActionsPayload -> Encode.Value +encodePushActions push = + Encode.object + [ ( "branch", Encode.bool <| push.branch ) + , ( "tag", Encode.bool <| push.tag ) + ] + + +encodePullActions : PullActionsPayload -> Encode.Value +encodePullActions pull = + Encode.object + [ ( "opened", Encode.bool <| pull.opened ) + , ( "synchronize", Encode.bool <| pull.synchronize ) + , ( "edited", Encode.bool <| pull.edited ) + , ( "reopened", Encode.bool <| pull.reopened ) + ] + + +encodeDeployActions : DeployActionsPayload -> Encode.Value +encodeDeployActions deploy = + Encode.object + [ ( "created", Encode.bool <| deploy.created ) + ] + + +encodeCommentActions : CommentActionsPayload -> Encode.Value +encodeCommentActions comment = + Encode.object + [ ( "created", Encode.bool <| comment.created ) + , ( "edited", Encode.bool <| comment.edited ) ] @@ -1089,12 +1208,46 @@ type alias EnableRepositoryPayload = , allow_deploy : Bool , allow_tag : Bool , allow_comment : Bool + , allow_events : Maybe AllowEventsPayload + } + + +type alias AllowEventsPayload = + { push : PushActionsPayload + , pull : PullActionsPayload + , deploy : DeployActionsPayload + , comment : CommentActionsPayload + } + + +type alias PushActionsPayload = + { branch : Bool + , tag : Bool + } + + +type alias PullActionsPayload = + { opened : Bool + , synchronize : Bool + , edited : Bool + , reopened : Bool + } + + +type alias DeployActionsPayload = + { created : Bool + } + + +type alias CommentActionsPayload = + { created : Bool + , edited : Bool } defaultEnableRepositoryPayload : EnableRepositoryPayload defaultEnableRepositoryPayload = - EnableRepositoryPayload "" "" "" "" "" False False True False False False False False + EnableRepositoryPayload "" "" "" "" "" False False True False False False False False Nothing type alias UpdateRepositoryPayload = @@ -1106,6 +1259,7 @@ type alias UpdateRepositoryPayload = , allow_deploy : Maybe Bool , allow_tag : Maybe Bool , allow_comment : Maybe Bool + , allow_events : Maybe AllowEventsPayload , visibility : Maybe String , approve_build : Maybe String , limit : Maybe Int @@ -1121,7 +1275,57 @@ type alias Field = defaultUpdateRepositoryPayload : UpdateRepositoryPayload defaultUpdateRepositoryPayload = - UpdateRepositoryPayload Nothing Nothing Nothing Nothing Nothing Nothing Nothing Nothing Nothing Nothing Nothing Nothing Nothing Nothing + UpdateRepositoryPayload Nothing Nothing Nothing Nothing Nothing Nothing Nothing Nothing Nothing Nothing Nothing Nothing Nothing Nothing Nothing + + +defaultAllowEventsPayload : Repository -> AllowEventsPayload +defaultAllowEventsPayload repository = + case repository.allow_events of + Nothing -> + AllowEventsPayload (defaultPushActionsPayload Nothing) (defaultPullActionsPayload Nothing) (defaultDeployActionsPayload Nothing) (defaultCommentActionsPayload Nothing) + + Just events -> + AllowEventsPayload (defaultPushActionsPayload (Just events.push)) (defaultPullActionsPayload (Just events.pull)) (defaultDeployActionsPayload (Just events.deploy)) (defaultCommentActionsPayload (Just events.comment)) + + +defaultPushActionsPayload : Maybe PushActions -> PushActionsPayload +defaultPushActionsPayload pushActions = + case pushActions of + Nothing -> + PushActionsPayload False False + + Just push -> + PushActionsPayload push.branch push.tag + + +defaultPullActionsPayload : Maybe PullActions -> PullActionsPayload +defaultPullActionsPayload pullActions = + case pullActions of + Nothing -> + PullActionsPayload False False False False + + Just pull -> + PullActionsPayload pull.opened pull.synchronize pull.edited pull.reopened + + +defaultDeployActionsPayload : Maybe DeployActions -> DeployActionsPayload +defaultDeployActionsPayload deployActions = + case deployActions of + Nothing -> + DeployActionsPayload False + + Just deploy -> + DeployActionsPayload deploy.created + + +defaultCommentActionsPayload : Maybe CommentActions -> CommentActionsPayload +defaultCommentActionsPayload commentActions = + case commentActions of + Nothing -> + CommentActionsPayload False False + + Just comment -> + CommentActionsPayload comment.created comment.edited encodeUpdateRepository : UpdateRepositoryPayload -> Encode.Value @@ -1135,6 +1339,7 @@ encodeUpdateRepository repo = , ( "allow_deploy", encodeOptional Encode.bool repo.allow_deploy ) , ( "allow_tag", encodeOptional Encode.bool repo.allow_tag ) , ( "allow_comment", encodeOptional Encode.bool repo.allow_comment ) + , ( "allow_events", encodeOptional encodeAllowEvents repo.allow_events ) , ( "visibility", encodeOptional Encode.string repo.visibility ) , ( "approve_build", encodeOptional Encode.string repo.approve_build ) , ( "build_limit", encodeOptional Encode.int repo.limit ) @@ -1164,6 +1369,56 @@ encodeOptionalList encoder value = Encode.null +buildUpdateRepoEventsPayload : Repository -> Field -> Bool -> UpdateRepositoryPayload +buildUpdateRepoEventsPayload repository field value = + let + events = + defaultAllowEventsPayload repository + + pushActions = + events.push + + pullActions = + events.pull + + deployActions = + events.deploy + + commentActions = + events.comment + in + case field of + "allow_push_branch" -> + { defaultUpdateRepositoryPayload | allow_events = Just { events | push = { pushActions | branch = value } } } + + "allow_push_tag" -> + { defaultUpdateRepositoryPayload | allow_events = Just { events | push = { pushActions | tag = value } } } + + "allow_pull_opened" -> + { defaultUpdateRepositoryPayload | allow_events = Just { events | pull = { pullActions | opened = value } } } + + "allow_pull_synchronize" -> + { defaultUpdateRepositoryPayload | allow_events = Just { events | pull = { pullActions | synchronize = value } } } + + "allow_pull_edited" -> + { defaultUpdateRepositoryPayload | allow_events = Just { events | pull = { pullActions | edited = value } } } + + "allow_pull_reopened" -> + { defaultUpdateRepositoryPayload | allow_events = Just { events | pull = { pullActions | reopened = value } } } + + "allow_deploy_created" -> + { defaultUpdateRepositoryPayload | allow_events = Just { events | deploy = { deployActions | created = value } } } + + "allow_comment_created" -> + { defaultUpdateRepositoryPayload | allow_events = Just { events | comment = { commentActions | created = value } } } + + "allow_comment_edited" -> + { defaultUpdateRepositoryPayload | allow_events = Just { events | comment = { commentActions | edited = value } } } + + _ -> + defaultUpdateRepositoryPayload + + buildUpdateRepoBoolPayload : Field -> Bool -> UpdateRepositoryPayload buildUpdateRepoBoolPayload field value = case field of diff --git a/src/scss/_forms.scss b/src/scss/_forms.scss index b42306367..e7ddc1be7 100644 --- a/src/scss/_forms.scss +++ b/src/scss/_forms.scss @@ -251,6 +251,16 @@ border: none; + // .-two-col is for arranging controls in two columns + &.-two-col { + flex-flow: row wrap; + gap: 0.5rem; + + .form-control { + flex: 0 0 40%; + } + } + .form-control { margin-right: 0.5rem; } diff --git a/src/scss/_settings.scss b/src/scss/_settings.scss index 0640ae976..385d1e6bc 100644 --- a/src/scss/_settings.scss +++ b/src/scss/_settings.scss @@ -23,6 +23,10 @@ &-description { font-size: 1rem; } + + &-subtitle { + margin-bottom: 0; + } } // for the admin action section From edd09593f924899b6072ba0916bf1694e15f1a72 Mon Sep 17 00:00:00 2001 From: claire1618 <55173466+claire1618@users.noreply.github.com> Date: Mon, 15 Jan 2024 12:10:36 -0600 Subject: [PATCH 02/10] feat(deployments): updating ui to show new changes to database (#753) Co-authored-by: Claire.Nicholas Co-authored-by: Kelly Merrick --- src/elm/Main.elm | 3 ++ src/elm/Pages/Deployments/View.elm | 57 ++++++++++++++++++++++++++++-- src/elm/Vela.elm | 24 +++++++++++-- 3 files changed, 79 insertions(+), 5 deletions(-) diff --git a/src/elm/Main.elm b/src/elm/Main.elm index 9eaa69226..0ebef7f97 100644 --- a/src/elm/Main.elm +++ b/src/elm/Main.elm @@ -3895,6 +3895,9 @@ loadRepoSubPage model org repo toPage = Pages.RepoSettings o r -> ( model, getRepo model o r ) + Pages.RepositoryDeployments o r maybePage maybePerPage -> + ( model, getDeployments model o r maybePage maybePerPage ) + Pages.PromoteDeployment o r deploymentNumber -> ( model, getDeployment model o r deploymentNumber ) diff --git a/src/elm/Pages/Deployments/View.elm b/src/elm/Pages/Deployments/View.elm index 321f13c68..1caedbec9 100644 --- a/src/elm/Pages/Deployments/View.elm +++ b/src/elm/Pages/Deployments/View.elm @@ -171,12 +171,14 @@ deploymentsToRows repo_ deployments = tableHeaders : Table.Columns tableHeaders = [ ( Just "-icon", "" ) + , ( Nothing, "id" ) , ( Nothing, "number" ) , ( Nothing, "target" ) , ( Nothing, "commit" ) , ( Nothing, "ref" ) , ( Nothing, "description" ) - , ( Nothing, "user" ) + , ( Nothing, "builds" ) + , ( Nothing, "created by" ) , ( Nothing, "" ) ] @@ -200,6 +202,13 @@ renderDeployment repo_ deployment = , Util.testAttribute <| "deployments-row-id" ] [ text <| String.fromInt deployment.id ] + , td + [ attribute "data-label" "number" + , scope "row" + , class "break-word" + , Util.testAttribute <| "deployments-row-number" + ] + [ text <| String.fromInt deployment.number ] , td [ attribute "data-label" "target" , scope "row" @@ -232,11 +241,18 @@ renderDeployment repo_ deployment = ] [ text deployment.description ] , td - [ attribute "data-label" "user" + [ attribute "data-label" "builds" + , scope "row" + , class "break-word" + , class "build" + ] + [ linksView (pullBuildLinks deployment) ] + , td + [ attribute "data-label" "created by" , scope "row" , class "break-word" ] - [ text deployment.user ] + [ text deployment.created_by ] , td [ attribute "data-label" "" , scope "row" @@ -258,3 +274,38 @@ redeployLink org repo deployment = ] [ text "Redeploy" ] + + +{-| pullBuildLinks : takes deployment and creates a list of links to every build in the builds field +-} +pullBuildLinks : Deployment -> List String +pullBuildLinks deployment = + case deployment.builds of + Nothing -> + [] + + Just builds -> + List.map .link builds + + +{-| linksView : takes list of links and creates an HTML msg that displays as a list of links +-} +linksView : List String -> Html msg +linksView links = + links + |> List.map + (\link -> + a + [ href link ] + [ text + (link + |> String.split "/" + |> List.reverse + |> List.head + |> Maybe.withDefault "" + |> String.append "#" + ) + ] + ) + |> List.intersperse (text ", ") + |> div [] diff --git a/src/elm/Vela.elm b/src/elm/Vela.elm index 6104f6b31..f6538451d 100644 --- a/src/elm/Vela.elm +++ b/src/elm/Vela.elm @@ -907,15 +907,17 @@ type alias KeyValuePair = type alias Deployment = { id : Int + , number : Int , repo_id : Int , url : String - , user : String + , created_by : String , commit : String , ref : String , task : String , target : String , description : String , payload : Maybe (List KeyValuePair) + , builds : Maybe (List Build) } @@ -1591,6 +1593,7 @@ type alias Build = , started : Int , finished : Int , deploy : String + , deploy_number : Int , clone : String , source : String , title : String @@ -1626,6 +1629,7 @@ decodeBuild = |> optional "started" int -1 |> optional "finished" int -1 |> optional "deploy" string "" + |> optional "deploy_number" int -1 |> optional "clone" string "" |> optional "source" string "" |> optional "title" string "" @@ -2535,15 +2539,17 @@ decodeDeployment : Decoder Deployment decodeDeployment = Decode.succeed Deployment |> optional "id" int -1 + |> optional "number" int -1 |> optional "repo_id" int -1 |> optional "url" string "" - |> optional "user" string "" + |> optional "created_by" string "" |> optional "commit" string "" |> optional "ref" string "" |> optional "task" string "" |> optional "target" string "" |> optional "description" string "" |> optional "payload" decodeDeploymentParameters Nothing + |> optional "builds" decodeDeploymentBuilds Nothing decodeDeployments : Decoder (List Deployment) @@ -2589,6 +2595,20 @@ decodeDeploymentParameters = Decode.map decodeKeyValuePairs <| Decode.keyValuePairs Decode.string +decodeDeployPairs : List Build -> Maybe (List Build) +decodeDeployPairs o = + if List.isEmpty o then + Nothing + + else + Just o + + +decodeDeploymentBuilds : Decoder (Maybe (List Build)) +decodeDeploymentBuilds = + Decode.map decodeDeployPairs <| Decode.list decodeBuild + + type alias DeploymentPayload = { org : Maybe String , repo : Maybe String From 1ae0459099fc07501fd05d2777cc37744e6c445e Mon Sep 17 00:00:00 2001 From: claire1618 <55173466+claire1618@users.noreply.github.com> Date: Thu, 25 Jan 2024 09:20:37 -0600 Subject: [PATCH 03/10] fix: removing id field and adding created at field to deployments table (#757) Co-authored-by: Claire.Nicholas --- src/elm/Main.elm | 4 ++-- src/elm/Pages/Deployments/View.elm | 32 +++++++++++++++--------------- src/elm/Vela.elm | 2 ++ 3 files changed, 20 insertions(+), 18 deletions(-) diff --git a/src/elm/Main.elm b/src/elm/Main.elm index 0ebef7f97..226b2520b 100644 --- a/src/elm/Main.elm +++ b/src/elm/Main.elm @@ -64,7 +64,7 @@ import Html.Attributes , type_ ) import Html.Events exposing (onClick) -import Html.Lazy exposing (lazy, lazy2, lazy3, lazy5, lazy7, lazy8) +import Html.Lazy exposing (lazy, lazy2, lazy3, lazy4, lazy5, lazy7, lazy8) import Http import Http.Detailed import Interop @@ -2974,7 +2974,7 @@ viewContent model = Pages.RepositoryDeployments org repo maybePage _ -> ( String.join "/" [ org, repo ] ++ " deployments" ++ Util.pageToString maybePage , div [] - [ lazy3 Pages.Deployments.View.viewDeployments model.repo org repo + [ lazy4 Pages.Deployments.View.viewDeployments model.zone model.repo org repo , Pager.view model.repo.deployments.pager Pager.defaultLabels GotoPage ] ) diff --git a/src/elm/Pages/Deployments/View.elm b/src/elm/Pages/Deployments/View.elm index 1caedbec9..9e78f7979 100644 --- a/src/elm/Pages/Deployments/View.elm +++ b/src/elm/Pages/Deployments/View.elm @@ -21,6 +21,7 @@ import Routes import Svg.Attributes import SvgBuilder exposing (hookSuccess) import Table +import Time exposing (Zone) import Util exposing (largeLoader) import Vela exposing (Deployment, Org, Repo, RepoModel, Repository) @@ -73,8 +74,8 @@ addForm deploymentModel = {-| viewDeployments : renders a list of deployments -} -viewDeployments : RepoModel -> Org -> Repo -> Html msg -viewDeployments repoModel org repo = +viewDeployments : Zone -> RepoModel -> Org -> Repo -> Html msg +viewDeployments zone repoModel org repo = let addButton = a @@ -101,7 +102,7 @@ viewDeployments repoModel org repo = case ( repoModel.repo, repoModel.deployments.deployments ) of ( RemoteData.Success repo_, RemoteData.Success s ) -> ( text "No deployments found for this repo" - , deploymentsToRows repo_ s + , deploymentsToRows zone repo_ s ) ( _, RemoteData.Failure error ) -> @@ -161,9 +162,9 @@ viewDeployments repoModel org repo = {-| deploymentsToRows : takes list of deployments and produces list of Table rows -} -deploymentsToRows : Repository -> List Deployment -> Table.Rows Deployment msg -deploymentsToRows repo_ deployments = - List.map (\deployment -> Table.Row deployment (renderDeployment repo_)) deployments +deploymentsToRows : Zone -> Repository -> List Deployment -> Table.Rows Deployment msg +deploymentsToRows zone repo_ deployments = + List.map (\deployment -> Table.Row deployment (renderDeployment zone repo_)) deployments {-| tableHeaders : returns table headers for deployments table @@ -171,7 +172,6 @@ deploymentsToRows repo_ deployments = tableHeaders : Table.Columns tableHeaders = [ ( Just "-icon", "" ) - , ( Nothing, "id" ) , ( Nothing, "number" ) , ( Nothing, "target" ) , ( Nothing, "commit" ) @@ -179,14 +179,15 @@ tableHeaders = , ( Nothing, "description" ) , ( Nothing, "builds" ) , ( Nothing, "created by" ) + , ( Nothing, "created at" ) , ( Nothing, "" ) ] {-| renderDeployment : takes deployment and renders a table row -} -renderDeployment : Repository -> Deployment -> Html msg -renderDeployment repo_ deployment = +renderDeployment : Zone -> Repository -> Deployment -> Html msg +renderDeployment zone repo_ deployment = tr [ Util.testAttribute <| "deployments-row" ] [ td [ attribute "data-label" "" @@ -195,13 +196,6 @@ renderDeployment repo_ deployment = , class "-icon" ] [ hookSuccess ] - , td - [ attribute "data-label" "id" - , scope "row" - , class "break-word" - , Util.testAttribute <| "deployments-row-id" - ] - [ text <| String.fromInt deployment.id ] , td [ attribute "data-label" "number" , scope "row" @@ -253,6 +247,12 @@ renderDeployment repo_ deployment = , class "break-word" ] [ text deployment.created_by ] + , td + [ attribute "data-label" "created at" + , scope "row" + , class "break-word" + ] + [ text <| Util.humanReadableDateTimeWithDefault zone deployment.created_at ] , td [ attribute "data-label" "" , scope "row" diff --git a/src/elm/Vela.elm b/src/elm/Vela.elm index f6538451d..d200c3cc0 100644 --- a/src/elm/Vela.elm +++ b/src/elm/Vela.elm @@ -911,6 +911,7 @@ type alias Deployment = , repo_id : Int , url : String , created_by : String + , created_at : Int , commit : String , ref : String , task : String @@ -2543,6 +2544,7 @@ decodeDeployment = |> optional "repo_id" int -1 |> optional "url" string "" |> optional "created_by" string "" + |> optional "created_at" int 0 |> optional "commit" string "" |> optional "ref" string "" |> optional "task" string "" From 6c2af0802ea368262af1dfada74ccf3dc3496efb Mon Sep 17 00:00:00 2001 From: Easton Crupper <65553218+ecrupper@users.noreply.github.com> Date: Mon, 29 Jan 2024 10:58:16 -0500 Subject: [PATCH 04/10] enhance(secrets): update UI decode / encode / payload building for AllowEvents (#756) --- .github/workflows/validate-pr-title.yml | 17 ++++ cypress/fixtures/repository.json | 3 + cypress/fixtures/secret_org.json | 22 ++++ cypress/fixtures/secret_repo.json | 22 ++++ cypress/fixtures/secret_shared.json | 22 ++++ cypress/fixtures/secrets_org_5.json | 110 ++++++++++++++++++++ src/elm/Pages/Secrets/Form.elm | 129 +++++++++++++++--------- src/elm/Pages/Secrets/Model.elm | 5 +- src/elm/Pages/Secrets/Update.elm | 87 +++++++++++----- src/elm/Pages/Secrets/View.elm | 33 +++++- src/elm/Vela.elm | 69 +++++++++++-- src/scss/_forms.scss | 10 ++ 12 files changed, 448 insertions(+), 81 deletions(-) create mode 100644 .github/workflows/validate-pr-title.yml diff --git a/.github/workflows/validate-pr-title.yml b/.github/workflows/validate-pr-title.yml new file mode 100644 index 000000000..462f9be92 --- /dev/null +++ b/.github/workflows/validate-pr-title.yml @@ -0,0 +1,17 @@ +# name of the action +name: validate PR title + +# trigger on pull_request events of the opened & edited type. +on: + pull_request: + types: [opened, synchronize, edited, reopened] + +# pipeline to execute +jobs: + validate: + runs-on: ubuntu-latest + + steps: + - name: validate title + run: | + echo "${{ github.event.pull_request.title }}" | grep -Eq '^(feat|fix|chore|refactor|enhance|test|docs)(\(.*\)|):\s.+$' && (echo "Pass"; exit 0) || (echo "Incorrect Format. Please see https://go-vela.github.io/docs/community/contributing_guidelines/#development-workflow"; exit 1) diff --git a/cypress/fixtures/repository.json b/cypress/fixtures/repository.json index 4ac27f803..6a4f6da8e 100644 --- a/cypress/fixtures/repository.json +++ b/cypress/fixtures/repository.json @@ -36,6 +36,9 @@ "comment": { "created": false, "edited": false + }, + "schedule": { + "run": false } }, "pipeline_type": "yaml", diff --git a/cypress/fixtures/secret_org.json b/cypress/fixtures/secret_org.json index 7f35d68bc..2e44df64e 100644 --- a/cypress/fixtures/secret_org.json +++ b/cypress/fixtures/secret_org.json @@ -8,5 +8,27 @@ "type": "org", "images": [], "events": ["push"], + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + }, + "schedule": { + "run": true + } + }, "allow_command": true } diff --git a/cypress/fixtures/secret_repo.json b/cypress/fixtures/secret_repo.json index f61636440..8281b8793 100644 --- a/cypress/fixtures/secret_repo.json +++ b/cypress/fixtures/secret_repo.json @@ -8,5 +8,27 @@ "type": "repo", "images": [], "events": ["push"], + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + }, + "schedule": { + "run": true + } + }, "allow_command": true } diff --git a/cypress/fixtures/secret_shared.json b/cypress/fixtures/secret_shared.json index 0f9479223..1f11e9a7b 100644 --- a/cypress/fixtures/secret_shared.json +++ b/cypress/fixtures/secret_shared.json @@ -8,5 +8,27 @@ "type": "shared", "images": [], "events": ["push"], + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + }, + "schedule": { + "run": true + } + }, "allow_command": true } diff --git a/cypress/fixtures/secrets_org_5.json b/cypress/fixtures/secrets_org_5.json index 2432d9e41..006f90103 100644 --- a/cypress/fixtures/secrets_org_5.json +++ b/cypress/fixtures/secrets_org_5.json @@ -9,6 +9,28 @@ "type": "org", "images": [], "events": ["push"], + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + }, + "schedule": { + "run": true + } + }, "allow_command": true }, { @@ -21,6 +43,28 @@ "type": "org", "images": [], "events": ["push"], + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + }, + "schedule": { + "run": true + } + }, "allow_command": true }, { @@ -33,6 +77,28 @@ "type": "org", "images": [], "events": ["push"], + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + }, + "schedule": { + "run": true + } + }, "allow_command": true }, { @@ -45,6 +111,28 @@ "type": "org", "images": [], "events": ["push", "pull_request"], + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + }, + "schedule": { + "run": true + } + }, "allow_command": true }, { @@ -57,6 +145,28 @@ "type": "org", "images": [], "events": ["push", "pull_request", "comment", "deployment"], + "allow_events": { + "push": { + "branch": true, + "tag": false + }, + "pull_request": { + "opened": false, + "synchronize": false, + "edited": false, + "reopened": false + }, + "deployment": { + "created": false + }, + "comment": { + "created": false, + "edited": false + }, + "schedule": { + "run": true + } + }, "allow_command": true } ] diff --git a/src/elm/Pages/Secrets/Form.elm b/src/elm/Pages/Secrets/Form.elm index 3cea73219..4d3995ea5 100644 --- a/src/elm/Pages/Secrets/Form.elm +++ b/src/elm/Pages/Secrets/Form.elm @@ -18,10 +18,13 @@ import Html exposing ( Html , a + , br , button , code , div , em + , h2 + , h3 , input , label , p @@ -47,6 +50,7 @@ import Html.Attributes , wrap ) import Html.Events exposing (onClick, onInput) +import List exposing (append) import Pages.RepoSettings exposing (checkbox) import Pages.Secrets.Model exposing (DeleteSecretState(..), Model, Msg(..), PartialModel, SecretForm) import Util @@ -166,64 +170,97 @@ viewValueInput val placeholder_ = {-| viewEventsSelect : renders events input selection -} viewEventsSelect : SecretForm -> PartialModel a msg -> Html Msg -viewEventsSelect secretUpdate model = +viewEventsSelect secret model = let schedulesAllowed = Util.checkScheduleAllowlist model.secretsModel.org model.secretsModel.repo model.velaScheduleAllowlist scheduleOption = if schedulesAllowed then - checkbox "Schedule" - "schedule" - (eventEnabled "schedule" secretUpdate.events) - <| - OnChangeEvent "schedule" + [ strong [ class "settings-subtitle" ] [ text "Schedule" ] + , div [ class "form-controls", class "-two-col-secrets" ] + [ checkbox "Schedule" + "schedule" + secret.allowEvents.schedule.run + <| + OnChangeEvent "allow_schedule_run" + ] + ] else - text "" + [ text "" ] in section [] - [ div [ for "events-select" ] - [ strong [] [ text "Limit to Events" ] - , span [ class "field-description" ] - [ text "( " - , em [] [ text "at least one event must be selected" ] - , text " )" + (append + [ div [ for "events-select" ] + [ strong [] [ text "Limit to Events" ] + , span [ class "field-description" ] + [ text "( " + , em [] [ text "at least one event must be selected" ] + , text " )" + ] + , pullRequestWarning + ] + , strong [ class "settings-subtitle" ] [ text "Push" ] + , div [ class "form-controls", class "-two-col-secrets" ] + [ checkbox "Push" + "allow_push_branch" + secret.allowEvents.push.branch + <| + OnChangeEvent "allow_push_branch" + , checkbox "Tag" + "allow_push_tag" + secret.allowEvents.push.tag + <| + OnChangeEvent "allow_push_tag" + ] + , strong [ class "settings-subtitle" ] [ text "Pull Request" ] + , div [ class "form-controls", class "-two-col-secrets" ] + [ checkbox "Opened" + "allow_pull_opened" + secret.allowEvents.pull.opened + <| + OnChangeEvent "allow_pull_opened" + , checkbox "Synchronize" + "allow_pull_synchronize" + secret.allowEvents.pull.synchronize + <| + OnChangeEvent "allow_pull_synchronize" + , checkbox "Edited" + "allow_pull_edited" + secret.allowEvents.pull.edited + <| + OnChangeEvent "allow_pull_edited" + , checkbox "Reopened" + "allow_pull_reopened" + secret.allowEvents.pull.reopened + <| + OnChangeEvent "allow_pull_reopened" + ] + , strong [ class "settings-subtitle" ] [ text "Deployments" ] + , div [ class "form-controls", class "-two-col-secrets" ] + [ checkbox "Created" + "allow_deploy_created" + secret.allowEvents.deploy.created + <| + OnChangeEvent "allow_deploy_created" + ] + , strong [ class "settings-subtitle" ] [ text "Comment" ] + , div [ class "form-controls", class "-two-col-secrets" ] + [ checkbox "Created" + "allow_comment_created" + secret.allowEvents.comment.created + <| + OnChangeEvent "allow_comment_created" + , checkbox "Edited" + "allow_comment_edited" + secret.allowEvents.comment.edited + <| + OnChangeEvent "allow_comment_edited" ] - , pullRequestWarning - ] - , div - [ class "form-controls" - , class "-stack" - ] - [ checkbox "Push" - "push" - (eventEnabled "push" secretUpdate.events) - <| - OnChangeEvent "push" - , checkbox "Pull Request" - "pull_request" - (eventEnabled "pull_request" secretUpdate.events) - <| - OnChangeEvent "pull_request" - , checkbox "Tag" - "tag" - (eventEnabled "tag" secretUpdate.events) - <| - OnChangeEvent "tag" - , checkbox "Comment" - "comment" - (eventEnabled "comment" secretUpdate.events) - <| - OnChangeEvent "comment" - , checkbox "Deployment" - "deployment" - (eventEnabled "deployment" secretUpdate.events) - <| - OnChangeEvent "deployment" - , scheduleOption ] - ] + scheduleOption + ) {-| pullRequestWarning : renders disclaimer for pull request exposure diff --git a/src/elm/Pages/Secrets/Model.elm b/src/elm/Pages/Secrets/Model.elm index e05715b98..e487aa860 100644 --- a/src/elm/Pages/Secrets/Model.elm +++ b/src/elm/Pages/Secrets/Model.elm @@ -23,7 +23,7 @@ import Http.Detailed import LinkHeader exposing (WebLink) import Pages exposing (Page) import RemoteData exposing (WebData) -import Vela exposing (Copy, Engine, Key, Org, Repo, Secret, SecretType, Secrets, Team) +import Vela exposing (AllowEventsPayload, Copy, Engine, Key, Org, Repo, Secret, SecretType, Secrets, Team, defaultSecretAllowEvents) @@ -79,6 +79,7 @@ type alias SecretForm = , events : List String , imageInput : String , images : List String + , allowEvents : AllowEventsPayload , allowCommand : Bool , team : Key } @@ -86,7 +87,7 @@ type alias SecretForm = defaultSecretUpdate : SecretForm defaultSecretUpdate = - SecretForm "" "" defaultSecretEvents "" [] True "" + SecretForm "" "" defaultSecretEvents "" [] defaultSecretAllowEvents True "" defaultSecretEvents : List String diff --git a/src/elm/Pages/Secrets/Update.elm b/src/elm/Pages/Secrets/Update.elm index eeaf65b8c..622d2f39f 100644 --- a/src/elm/Pages/Secrets/Update.elm +++ b/src/elm/Pages/Secrets/Update.elm @@ -34,6 +34,7 @@ import Util exposing (stringToMaybe) import Vela exposing ( Copy + , Field , Secret , SecretType(..) , UpdateSecretPayload @@ -96,7 +97,7 @@ reinitializeSecretUpdate secretsModel secret = initSecretUpdate : Secret -> SecretForm initSecretUpdate secret = - SecretForm secret.name "" secret.events "" secret.images secret.allowCommand secret.team + SecretForm secret.name "" secret.events "" secret.images secret.allowEvents secret.allowCommand secret.team {-| updateSecretModel : makes an update to the appropriate secret update @@ -145,25 +146,74 @@ updateSecretField field value secret = {-| onChangeEvent : takes event and updates the secrets model based on the appropriate event -} -onChangeEvent : String -> Model msg -> Model msg -onChangeEvent event secretsModel = +onChangeEvent : String -> Bool -> Model msg -> Model msg +onChangeEvent event val secretsModel = let secretUpdate = Just secretsModel.form in case secretUpdate of Just s -> - updateSecretModel (updateSecretEvents event s) secretsModel + updateSecretModel (updateSecretEvents s event val) secretsModel Nothing -> secretsModel -{-| updateSecretEvents : takes event and updates secret update events --} -updateSecretEvents : String -> SecretForm -> SecretForm -updateSecretEvents event secret = - { secret | events = toggleEvent event secret.events } +updateSecretEvents : SecretForm -> Field -> Bool -> SecretForm +updateSecretEvents sform field value = + let + events = + sform.allowEvents + + pushActions = + events.push + + pullActions = + events.pull + + deployActions = + events.deploy + + commentActions = + events.comment + + scheduleActions = + events.schedule + in + case field of + "allow_push_branch" -> + { sform | allowEvents = { events | push = { pushActions | branch = value } } } + + "allow_push_tag" -> + { sform | allowEvents = { events | push = { pushActions | tag = value } } } + + "allow_pull_opened" -> + { sform | allowEvents = { events | pull = { pullActions | opened = value } } } + + "allow_pull_synchronize" -> + { sform | allowEvents = { events | pull = { pullActions | synchronize = value } } } + + "allow_pull_edited" -> + { sform | allowEvents = { events | pull = { pullActions | edited = value } } } + + "allow_pull_reopened" -> + { sform | allowEvents = { events | pull = { pullActions | reopened = value } } } + + "allow_deploy_created" -> + { sform | allowEvents = { events | deploy = { deployActions | created = value } } } + + "allow_comment_created" -> + { sform | allowEvents = { events | comment = { commentActions | created = value } } } + + "allow_comment_edited" -> + { sform | allowEvents = { events | comment = { commentActions | edited = value } } } + + "allow_schedule_run" -> + { sform | allowEvents = { events | schedule = { scheduleActions | run = value } } } + + _ -> + sform {-| onAddImage : takes image and updates secret update images @@ -228,17 +278,6 @@ onChangeAllowCommand allow secretsModel = secretsModel -{-| toggleEvent : takes event and toggles inclusion in the events array --} -toggleEvent : String -> List String -> List String -toggleEvent event events = - if List.member event events && List.length events > 1 then - List.Extra.remove event events - - else - event :: events - - {-| getKey : gets the appropriate secret key based on type -} getKey : Model msg -> String @@ -283,6 +322,7 @@ toAddSecretPayload secretsModel secret = (stringToMaybe secret.value) (Just secret.events) (Just secret.images) + (Just secret.allowEvents) (Just secret.allowCommand) @@ -300,10 +340,11 @@ toUpdateSecretPayload secretsModel secret = , value = stringToMaybe secret.value , events = Just secret.events , images = Just secret.images + , allowEvents = Just secret.allowEvents , allowCommand = Just secret.allowCommand } in - buildUpdateSecretPayload args.type_ args.org args.repo args.team args.name args.value args.events args.images args.allowCommand + buildUpdateSecretPayload args.type_ args.org args.repo args.team args.name args.value args.events args.images args.allowEvents args.allowCommand @@ -321,8 +362,8 @@ update model msg = OnChangeStringField field value -> ( onChangeStringField field value secretsModel, Cmd.none ) - OnChangeEvent event _ -> - ( onChangeEvent event secretsModel, Cmd.none ) + OnChangeEvent event val -> + ( onChangeEvent event val secretsModel, Cmd.none ) AddImage image -> ( onAddImage image secretsModel, Cmd.none ) diff --git a/src/elm/Pages/Secrets/View.elm b/src/elm/Pages/Secrets/View.elm index 2a6d4e6b6..6d51897b2 100644 --- a/src/elm/Pages/Secrets/View.elm +++ b/src/elm/Pages/Secrets/View.elm @@ -25,7 +25,8 @@ import Url exposing (percentEncode) import Util exposing (largeLoader) import Vela exposing - ( Secret + ( AllowEvents + , Secret , SecretType(..) , Secrets , secretTypeToString @@ -360,7 +361,7 @@ renderSecret type_ secret = , scope "row" , class "break-word" ] - [ renderListCell secret.events "no events" "secret-event" ] + [ renderListCell (allowEventsToList secret.allowEvents) "no events" "secret-event" ] , td [ attribute "data-label" "images" , scope "row" @@ -421,7 +422,7 @@ renderSharedSecret type_ secret = , scope "row" , class "break-word" ] - [ renderListCell secret.events "no events" "secret-event" ] + [ renderListCell (allowEventsToList secret.allowEvents) "no events" "secret-event" ] , td [ attribute "data-label" "images" , scope "row" @@ -454,6 +455,32 @@ renderListCell items none itemClassName = ) +appendLabel : Bool -> String -> List String -> List String +appendLabel enabled label inList = + inList + ++ (if enabled then + [ label ] + + else + [] + ) + + +allowEventsToList : AllowEvents -> List String +allowEventsToList events = + [] + |> appendLabel events.push.branch "push" + |> appendLabel events.push.tag "tag" + |> appendLabel events.pull.opened "pull_request:opened" + |> appendLabel events.pull.synchronize "pull_request:synchronize" + |> appendLabel events.pull.edited "pull_request:edited" + |> appendLabel events.pull.reopened "pull_request:reopened" + |> appendLabel events.deploy.created "deployment" + |> appendLabel events.comment.created "comment:created" + |> appendLabel events.comment.edited "comment:edited" + |> appendLabel events.schedule.run "schedule" + + {-| listItemView : takes classname, text and size constraints and renders a list element -} listItemView : String -> String -> Html msg diff --git a/src/elm/Vela.elm b/src/elm/Vela.elm index d200c3cc0..65c58ced6 100644 --- a/src/elm/Vela.elm +++ b/src/elm/Vela.elm @@ -6,6 +6,7 @@ SPDX-License-Identifier: Apache-2.0 module Vela exposing ( AddSchedulePayload , AllowEvents + , AllowEventsPayload , AuthParams , Build , BuildGraph @@ -121,6 +122,8 @@ module Vela exposing , defaultPipeline , defaultPipelineTemplates , defaultRepoModel + , defaultSecretAllowEvents + , defaultSecretAllowEventsPayload , defaultStep , encodeBuildGraphRenderData , encodeDeploymentPayload @@ -947,11 +950,17 @@ type alias CommentActions = } +type alias ScheduleActions = + { run : Bool + } + + type alias AllowEvents = { push : PushActions , pull : PullActions , deploy : DeployActions , comment : CommentActions + , schedule : ScheduleActions } @@ -1029,6 +1038,12 @@ decodeCommentActions = |> required "edited" bool +decodeScheduleActions : Decoder ScheduleActions +decodeScheduleActions = + Decode.succeed ScheduleActions + |> required "run" bool + + decodeAllowEvents : Decoder AllowEvents decodeAllowEvents = Decode.succeed AllowEvents @@ -1036,6 +1051,7 @@ decodeAllowEvents = |> required "pull_request" decodePullActions |> required "deployment" decodeDeployActions |> required "comment" decodeCommentActions + |> required "schedule" decodeScheduleActions decodeRepositories : Decoder (List Repository) @@ -1161,6 +1177,7 @@ encodeAllowEvents events = , ( "pull_request", encodePullActions events.pull ) , ( "deployment", encodeDeployActions events.deploy ) , ( "comment", encodeCommentActions events.comment ) + , ( "schedule", encodeScheduleActions events.schedule ) ] @@ -1197,6 +1214,13 @@ encodeCommentActions comment = ] +encodeScheduleActions : ScheduleActionsPayload -> Encode.Value +encodeScheduleActions schedule = + Encode.object + [ ( "run", Encode.bool <| schedule.run ) + ] + + type alias EnableRepositoryPayload = { org : String , name : String @@ -1220,6 +1244,7 @@ type alias AllowEventsPayload = , pull : PullActionsPayload , deploy : DeployActionsPayload , comment : CommentActionsPayload + , schedule : ScheduleActionsPayload } @@ -1248,6 +1273,11 @@ type alias CommentActionsPayload = } +type alias ScheduleActionsPayload = + { run : Bool + } + + defaultEnableRepositoryPayload : EnableRepositoryPayload defaultEnableRepositoryPayload = EnableRepositoryPayload "" "" "" "" "" False False True False False False False False Nothing @@ -1281,14 +1311,19 @@ defaultUpdateRepositoryPayload = UpdateRepositoryPayload Nothing Nothing Nothing Nothing Nothing Nothing Nothing Nothing Nothing Nothing Nothing Nothing Nothing Nothing Nothing -defaultAllowEventsPayload : Repository -> AllowEventsPayload -defaultAllowEventsPayload repository = +defaultRepoAllowEventsPayload : Repository -> AllowEventsPayload +defaultRepoAllowEventsPayload repository = case repository.allow_events of Nothing -> - AllowEventsPayload (defaultPushActionsPayload Nothing) (defaultPullActionsPayload Nothing) (defaultDeployActionsPayload Nothing) (defaultCommentActionsPayload Nothing) + AllowEventsPayload (defaultPushActionsPayload Nothing) (defaultPullActionsPayload Nothing) (defaultDeployActionsPayload Nothing) (defaultCommentActionsPayload Nothing) (defaultScheduleActionsPayload Nothing) Just events -> - AllowEventsPayload (defaultPushActionsPayload (Just events.push)) (defaultPullActionsPayload (Just events.pull)) (defaultDeployActionsPayload (Just events.deploy)) (defaultCommentActionsPayload (Just events.comment)) + AllowEventsPayload (defaultPushActionsPayload (Just events.push)) (defaultPullActionsPayload (Just events.pull)) (defaultDeployActionsPayload (Just events.deploy)) (defaultCommentActionsPayload (Just events.comment)) (defaultScheduleActionsPayload (Just events.schedule)) + + +defaultSecretAllowEventsPayload : Secret -> AllowEventsPayload +defaultSecretAllowEventsPayload secret = + AllowEventsPayload (defaultPushActionsPayload (Just secret.allowEvents.push)) (defaultPullActionsPayload (Just secret.allowEvents.pull)) (defaultDeployActionsPayload (Just secret.allowEvents.deploy)) (defaultCommentActionsPayload (Just secret.allowEvents.comment)) (defaultScheduleActionsPayload (Just secret.allowEvents.schedule)) defaultPushActionsPayload : Maybe PushActions -> PushActionsPayload @@ -1331,6 +1366,16 @@ defaultCommentActionsPayload commentActions = CommentActionsPayload comment.created comment.edited +defaultScheduleActionsPayload : Maybe ScheduleActions -> ScheduleActionsPayload +defaultScheduleActionsPayload scheduleActions = + case scheduleActions of + Nothing -> + ScheduleActionsPayload False + + Just schedule -> + ScheduleActionsPayload schedule.run + + encodeUpdateRepository : UpdateRepositoryPayload -> Encode.Value encodeUpdateRepository repo = Encode.object @@ -1376,7 +1421,7 @@ buildUpdateRepoEventsPayload : Repository -> Field -> Bool -> UpdateRepositoryPa buildUpdateRepoEventsPayload repository field value = let events = - defaultAllowEventsPayload repository + defaultRepoAllowEventsPayload repository pushActions = events.push @@ -2357,6 +2402,7 @@ type alias Secret = , type_ : SecretType , images : List String , events : List String + , allowEvents : AllowEvents , allowCommand : Bool } @@ -2455,6 +2501,11 @@ secretToKey secret = secret.org ++ "/" ++ secret.repo ++ "/" ++ secret.name +defaultSecretAllowEvents : AllowEvents +defaultSecretAllowEvents = + { push = { branch = True, tag = True }, pull = defaultPullActionsPayload Nothing, deploy = { created = True }, comment = defaultCommentActionsPayload Nothing, schedule = defaultScheduleActionsPayload Nothing } + + decodeSecret : Decoder Secret decodeSecret = Decode.succeed Secret @@ -2467,6 +2518,7 @@ decodeSecret = |> optional "type" secretTypeDecoder RepoSecret |> optional "images" (Decode.list string) [] |> optional "events" (Decode.list string) [] + |> optional "allow_events" decodeAllowEvents defaultSecretAllowEvents |> optional "allow_command" bool False @@ -2490,6 +2542,7 @@ type alias UpdateSecretPayload = , value : Maybe String , events : Maybe (List String) , images : Maybe (List String) + , allowEvents : Maybe AllowEventsPayload , allowCommand : Maybe Bool } @@ -2505,6 +2558,7 @@ encodeUpdateSecret secret = , ( "value", encodeOptional Encode.string secret.value ) , ( "events", encodeOptionalList Encode.string secret.events ) , ( "images", encodeOptionalList Encode.string secret.images ) + , ( "allow_events", encodeOptional encodeAllowEvents secret.allowEvents ) , ( "allow_command", encodeOptional Encode.bool secret.allowCommand ) ] @@ -2518,10 +2572,11 @@ buildUpdateSecretPayload : -> Maybe String -> Maybe (List String) -> Maybe (List String) + -> Maybe AllowEvents -> Maybe Bool -> UpdateSecretPayload -buildUpdateSecretPayload type_ org repo team name value events images allowCommand = - UpdateSecretPayload type_ org repo team name value events images allowCommand +buildUpdateSecretPayload type_ org repo team name value events images allowEvents allowCommand = + UpdateSecretPayload type_ org repo team name value events images allowEvents allowCommand diff --git a/src/scss/_forms.scss b/src/scss/_forms.scss index e7ddc1be7..9f403bbc5 100644 --- a/src/scss/_forms.scss +++ b/src/scss/_forms.scss @@ -261,6 +261,16 @@ } } + &.-two-col-secrets { + flex-flow: row wrap; + gap: 0.5rem; + max-width: 30%; + + .form-control { + flex: 0 0 40%; + } + } + .form-control { margin-right: 0.5rem; } From ddca1475f852887414289cfc253cf5197e9d50dc Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 31 Jan 2024 09:19:57 -0600 Subject: [PATCH 05/10] fix(deps): update all non-major dependencies (#743) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- .github/workflows/ci.yml | 44 +- .github/workflows/codeql-analysis.yml | 6 +- .github/workflows/publish.yml | 8 +- .nvmrc | 2 +- package-lock.json | 1188 ++++++++++++------------- package.json | 24 +- 6 files changed, 621 insertions(+), 651 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index a3135be71..4b51a474b 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -22,25 +22,25 @@ jobs: steps: - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4 - - uses: actions/cache@704facf57e6136b1bc63b828d79edcd491f0ee84 # v3 + - uses: actions/cache@e12d46a63a90f2fae62d114769bbf2a179198b5c # v3 with: path: ~/.npm key: ${{ runner.os }}-npm-v2-${{ hashFiles('**/package-lock.json') }} restore-keys: | ${{ runner.os }}-npm-v2- - - uses: actions/cache@704facf57e6136b1bc63b828d79edcd491f0ee84 # v3 + - uses: actions/cache@e12d46a63a90f2fae62d114769bbf2a179198b5c # v3 with: path: node_modules key: ${{ runner.os }}-modules-v2-${{ hashFiles('**/package-lock.json') }} restore-keys: | ${{ runner.os }}-modules-v2- - - uses: actions/cache@704facf57e6136b1bc63b828d79edcd491f0ee84 # v3 + - uses: actions/cache@e12d46a63a90f2fae62d114769bbf2a179198b5c # v3 with: path: ~/.cache/Cypress key: cypress-${{ runner.os }}-bin-v2-${{ hashFiles('**/package-lock.json') }} restore-keys: | cypress-${{ runner.os }}-bin-v2- - - uses: actions/setup-node@8f152de45cc393bb48ce5d89d36b731f54556e65 # v4 + - uses: actions/setup-node@b39b52d1213e96004bfcb1c61a8a6fa8ab84f3e8 # v4 with: node-version-file: '.nvmrc' @@ -60,31 +60,31 @@ jobs: steps: - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4 - - uses: actions/cache@704facf57e6136b1bc63b828d79edcd491f0ee84 # v3 + - uses: actions/cache@e12d46a63a90f2fae62d114769bbf2a179198b5c # v3 with: path: ~/.elm key: ${{ runner.os }}-elm-v3-${{ hashFiles('**/elm.json') }} restore-keys: | ${{ runner.os }}-elm-v3- - - uses: actions/cache@704facf57e6136b1bc63b828d79edcd491f0ee84 # v3 + - uses: actions/cache@e12d46a63a90f2fae62d114769bbf2a179198b5c # v3 with: path: ~/.npm key: ${{ runner.os }}-npm-v2-${{ hashFiles('**/package-lock.json') }} restore-keys: | ${{ runner.os }}-npm-v2- - - uses: actions/cache@704facf57e6136b1bc63b828d79edcd491f0ee84 # v3 + - uses: actions/cache@e12d46a63a90f2fae62d114769bbf2a179198b5c # v3 with: path: node_modules key: ${{ runner.os }}-modules-v2-${{ hashFiles('**/package-lock.json') }} restore-keys: | ${{ runner.os }}-modules-v2- - - uses: actions/cache@704facf57e6136b1bc63b828d79edcd491f0ee84 # v3 + - uses: actions/cache@e12d46a63a90f2fae62d114769bbf2a179198b5c # v3 with: path: ~/.cache/Cypress key: cypress-${{ runner.os }}-bin-v2-${{ hashFiles('**/package-lock.json') }} restore-keys: | cypress-${{ runner.os }}-bin-v2- - - uses: actions/setup-node@8f152de45cc393bb48ce5d89d36b731f54556e65 # v4 + - uses: actions/setup-node@b39b52d1213e96004bfcb1c61a8a6fa8ab84f3e8 # v4 with: node-version-file: '.nvmrc' @@ -104,25 +104,25 @@ jobs: steps: - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4 - - uses: actions/cache@704facf57e6136b1bc63b828d79edcd491f0ee84 # v3 + - uses: actions/cache@e12d46a63a90f2fae62d114769bbf2a179198b5c # v3 with: path: ~/.npm key: ${{ runner.os }}-npm-v2-${{ hashFiles('**/package-lock.json') }} restore-keys: | ${{ runner.os }}-npm-v2- - - uses: actions/cache@704facf57e6136b1bc63b828d79edcd491f0ee84 # v3 + - uses: actions/cache@e12d46a63a90f2fae62d114769bbf2a179198b5c # v3 with: path: node_modules key: ${{ runner.os }}-modules-v2-${{ hashFiles('**/package-lock.json') }} restore-keys: | ${{ runner.os }}-modules-v2- - - uses: actions/cache@704facf57e6136b1bc63b828d79edcd491f0ee84 # v3 + - uses: actions/cache@e12d46a63a90f2fae62d114769bbf2a179198b5c # v3 with: path: ~/.cache/Cypress key: cypress-${{ runner.os }}-bin-v2-${{ hashFiles('**/package-lock.json') }} restore-keys: | cypress-${{ runner.os }}-bin-v2- - - uses: actions/setup-node@8f152de45cc393bb48ce5d89d36b731f54556e65 # v4 + - uses: actions/setup-node@b39b52d1213e96004bfcb1c61a8a6fa8ab84f3e8 # v4 with: node-version-file: '.nvmrc' @@ -143,31 +143,31 @@ jobs: steps: - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4 - - uses: actions/cache@704facf57e6136b1bc63b828d79edcd491f0ee84 # v3 + - uses: actions/cache@e12d46a63a90f2fae62d114769bbf2a179198b5c # v3 with: path: ~/.elm key: ${{ runner.os }}-elm-v3-${{ hashFiles('**/elm.json') }} restore-keys: | ${{ runner.os }}-elm-v3- - - uses: actions/cache@704facf57e6136b1bc63b828d79edcd491f0ee84 # v3 + - uses: actions/cache@e12d46a63a90f2fae62d114769bbf2a179198b5c # v3 with: path: ~/.npm key: ${{ runner.os }}-npm-v2-${{ hashFiles('**/package-lock.json') }} restore-keys: | ${{ runner.os }}-npm-v2- - - uses: actions/cache@704facf57e6136b1bc63b828d79edcd491f0ee84 # v3 + - uses: actions/cache@e12d46a63a90f2fae62d114769bbf2a179198b5c # v3 with: path: node_modules key: ${{ runner.os }}-modules-v2-${{ hashFiles('**/package-lock.json') }} restore-keys: | ${{ runner.os }}-modules-v2- - - uses: actions/cache@704facf57e6136b1bc63b828d79edcd491f0ee84 # v3 + - uses: actions/cache@e12d46a63a90f2fae62d114769bbf2a179198b5c # v3 with: path: ~/.cache/Cypress key: cypress-${{ runner.os }}-bin-v2-${{ hashFiles('**/package-lock.json') }} restore-keys: | cypress-${{ runner.os }}-bin-v2- - - uses: actions/setup-node@8f152de45cc393bb48ce5d89d36b731f54556e65 # v4 + - uses: actions/setup-node@b39b52d1213e96004bfcb1c61a8a6fa8ab84f3e8 # v4 with: node-version-file: '.nvmrc' @@ -187,25 +187,25 @@ jobs: steps: - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4 - - uses: actions/cache@704facf57e6136b1bc63b828d79edcd491f0ee84 # v3 + - uses: actions/cache@e12d46a63a90f2fae62d114769bbf2a179198b5c # v3 with: path: ~/.elm key: ${{ runner.os }}-elm-v3-${{ hashFiles('**/elm.json') }} restore-keys: | ${{ runner.os }}-elm-v3- - - uses: actions/cache@704facf57e6136b1bc63b828d79edcd491f0ee84 # v3 + - uses: actions/cache@e12d46a63a90f2fae62d114769bbf2a179198b5c # v3 with: path: ~/.npm key: ${{ runner.os }}-npm-v2-${{ hashFiles('**/package-lock.json') }} restore-keys: | ${{ runner.os }}-npm-v2- - - uses: actions/cache@704facf57e6136b1bc63b828d79edcd491f0ee84 # v3 + - uses: actions/cache@e12d46a63a90f2fae62d114769bbf2a179198b5c # v3 with: path: node_modules key: ${{ runner.os }}-modules-v2-${{ hashFiles('**/package-lock.json') }} restore-keys: | ${{ runner.os }}-modules-v2- - - uses: actions/setup-node@8f152de45cc393bb48ce5d89d36b731f54556e65 # v4 + - uses: actions/setup-node@b39b52d1213e96004bfcb1c61a8a6fa8ab84f3e8 # v4 with: node-version-file: '.nvmrc' diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml index 982f88fb5..0a652f873 100644 --- a/.github/workflows/codeql-analysis.yml +++ b/.github/workflows/codeql-analysis.yml @@ -38,7 +38,7 @@ jobs: # Initializes the CodeQL tools for scanning. - name: Initialize CodeQL - uses: github/codeql-action/init@74483a38d39275f33fcff5f35b679b5ca4a26a99 # v2 + uses: github/codeql-action/init@2f93e4319b2f04a2efc38fa7f78bd681bc3f7b2f # v2 with: languages: ${{ matrix.language }} # If you wish to specify custom queries, you can do so here or in a config file. @@ -49,7 +49,7 @@ jobs: # Autobuild attempts to build any compiled languages (C/C++, C#, or Java). # If this step fails, then you should remove it and run the build manually (see below) - name: Autobuild - uses: github/codeql-action/autobuild@74483a38d39275f33fcff5f35b679b5ca4a26a99 # v2 + uses: github/codeql-action/autobuild@2f93e4319b2f04a2efc38fa7f78bd681bc3f7b2f # v2 # ℹī¸ Command-line programs to run using the OS shell. # 📚 https://git.io/JvXDl @@ -63,4 +63,4 @@ jobs: # make release - name: Perform CodeQL Analysis - uses: github/codeql-action/analyze@74483a38d39275f33fcff5f35b679b5ca4a26a99 # v2 + uses: github/codeql-action/analyze@2f93e4319b2f04a2efc38fa7f78bd681bc3f7b2f # v2 diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 4efc07f94..ff8afd0d7 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -17,25 +17,25 @@ jobs: steps: - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4 - - uses: actions/cache@704facf57e6136b1bc63b828d79edcd491f0ee84 # v3 + - uses: actions/cache@e12d46a63a90f2fae62d114769bbf2a179198b5c # v3 with: path: ~/.elm key: ${{ runner.os }}-elm-v3-${{ hashFiles('**/elm.json') }} restore-keys: | ${{ runner.os }}-elm-v3- - - uses: actions/cache@704facf57e6136b1bc63b828d79edcd491f0ee84 # v3 + - uses: actions/cache@e12d46a63a90f2fae62d114769bbf2a179198b5c # v3 with: path: ~/.npm key: ${{ runner.os }}-npm-v2-${{ hashFiles('**/package-lock.json') }} restore-keys: | ${{ runner.os }}-npm-v2- - - uses: actions/cache@704facf57e6136b1bc63b828d79edcd491f0ee84 # v3 + - uses: actions/cache@e12d46a63a90f2fae62d114769bbf2a179198b5c # v3 with: path: node_modules key: ${{ runner.os }}-modules-v2-${{ hashFiles('**/package-lock.json') }} restore-keys: | ${{ runner.os }}-modules-v2- - - uses: actions/setup-node@8f152de45cc393bb48ce5d89d36b731f54556e65 # v4 + - uses: actions/setup-node@b39b52d1213e96004bfcb1c61a8a6fa8ab84f3e8 # v4 with: node-version-file: '.nvmrc' diff --git a/.nvmrc b/.nvmrc index f3f52b42d..8b0beab16 100644 --- a/.nvmrc +++ b/.nvmrc @@ -1 +1 @@ -20.9.0 +20.11.0 diff --git a/package-lock.json b/package-lock.json index ec91d7fc4..2f97b90c5 100644 --- a/package-lock.json +++ b/package-lock.json @@ -16,9 +16,9 @@ "devDependencies": { "@double-great/stylelint-a11y": "2.0.2", "@fullhuman/postcss-purgecss": "5.0.0", - "@parcel/transformer-elm": "2.10.2", - "@parcel/transformer-sass": "2.10.2", - "axe-core": "4.8.2", + "@parcel/transformer-elm": "2.11.0", + "@parcel/transformer-sass": "2.11.0", + "axe-core": "4.8.3", "cypress": "5.6.0", "cypress-axe": "0.14.0", "elm": "0.19.1-6", @@ -26,19 +26,19 @@ "elm-test": "0.19.1-revision12", "make-dir-cli": "3.1.0", "ncp": "2.0.0", - "parcel": "2.10.2", - "postcss": "8.4.31", - "prettier": "3.1.0", + "parcel": "2.11.0", + "postcss": "8.4.33", + "prettier": "3.2.4", "rimraf": "5.0.5", - "start-server-and-test": "2.0.2", + "start-server-and-test": "2.0.3", "stylelint": "15.11.0", "stylelint-color-format": "1.1.0", "stylelint-config-recommended-scss": "13.1.0", - "stylelint-declaration-block-no-ignored-properties": "2.7.0", - "stylelint-declaration-strict-value": "1.9.2", - "stylelint-high-performance-animation": "1.9.0", - "stylelint-order": "6.0.3", - "stylelint-scss": "5.3.1" + "stylelint-declaration-block-no-ignored-properties": "2.8.0", + "stylelint-declaration-strict-value": "1.10.4", + "stylelint-high-performance-animation": "1.10.0", + "stylelint-order": "6.0.4", + "stylelint-scss": "5.3.2" }, "engines": { "node": ">=18.12.0" @@ -494,9 +494,9 @@ } }, "node_modules/@hpcc-js/wasm": { - "version": "2.14.1", - "resolved": "https://registry.npmjs.org/@hpcc-js/wasm/-/wasm-2.14.1.tgz", - "integrity": "sha512-ncPvj0dEjoye8jD1NAwdThXlZ5mpuGRyRwaNWU6JVBgyT8TewVDmG+RAOXPysyaP1Ui8Lm7562W4KawZtPwa1A==", + "version": "2.15.3", + "resolved": "https://registry.npmjs.org/@hpcc-js/wasm/-/wasm-2.15.3.tgz", + "integrity": "sha512-enmVW4APrv6jBCRP5V/WdIjYvxidNgBbgdWOdLpiygoE0g0ZurM1qsysBo4TbZfdS81SCdkjRSU/URWf+gpQUA==", "dependencies": { "yargs": "17.7.2" }, @@ -885,21 +885,21 @@ } }, "node_modules/@parcel/bundler-default": { - "version": "2.10.2", - "resolved": "https://registry.npmjs.org/@parcel/bundler-default/-/bundler-default-2.10.2.tgz", - "integrity": "sha512-XlVGsScK5PgIFXNJ0Yx/+nHu1RFCuslCbrb8MIs0yqS790yzvyJF2QHX5WAr7Qc5powij/+2tfBHiViauWwVpA==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@parcel/bundler-default/-/bundler-default-2.11.0.tgz", + "integrity": "sha512-ZIs0865Lp871ZK83k5I9L4DeeE26muNMrHa7j8bvls6fKBJKAn8djrhfU4XOLyziU4aAOobcPwXU0+npWqs52g==", "dev": true, "dependencies": { - "@parcel/diagnostic": "2.10.2", - "@parcel/graph": "3.0.2", - "@parcel/plugin": "2.10.2", - "@parcel/rust": "2.10.2", - "@parcel/utils": "2.10.2", + "@parcel/diagnostic": "2.11.0", + "@parcel/graph": "3.1.0", + "@parcel/plugin": "2.11.0", + "@parcel/rust": "2.11.0", + "@parcel/utils": "2.11.0", "nullthrows": "^1.1.1" }, "engines": { "node": ">= 12.0.0", - "parcel": "^2.10.2" + "parcel": "^2.11.0" }, "funding": { "type": "opencollective", @@ -907,14 +907,14 @@ } }, "node_modules/@parcel/cache": { - "version": "2.10.2", - "resolved": "https://registry.npmjs.org/@parcel/cache/-/cache-2.10.2.tgz", - "integrity": "sha512-B69e5n+bBzYoaJdUOviYeUT7N1iXI3IC5G8dAxKNZ9Zgn+pjZ5BwltbfmP47+NTfQ7LqM8Ea4UJxysQsLdwb+Q==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@parcel/cache/-/cache-2.11.0.tgz", + "integrity": "sha512-RSSkGNjO00lJPyftzaC9eaNVs4jMjPSAm0VJNWQ9JSm2n4A9BzQtTFAt1vhJOzzW1UsQvvBge9DdfkB7a2gIOw==", "dev": true, "dependencies": { - "@parcel/fs": "2.10.2", - "@parcel/logger": "2.10.2", - "@parcel/utils": "2.10.2", + "@parcel/fs": "2.11.0", + "@parcel/logger": "2.11.0", + "@parcel/utils": "2.11.0", "lmdb": "2.8.5" }, "engines": { @@ -925,13 +925,13 @@ "url": "https://opencollective.com/parcel" }, "peerDependencies": { - "@parcel/core": "^2.10.2" + "@parcel/core": "^2.11.0" } }, "node_modules/@parcel/codeframe": { - "version": "2.10.2", - "resolved": "https://registry.npmjs.org/@parcel/codeframe/-/codeframe-2.10.2.tgz", - "integrity": "sha512-EZrYSIlVg4qiBLHRRqC/BGN2MLG0SKnw4u7kpviwz63I+v36ghqmHGOomwfn4x13nDL+EgOFz4/+Q7QpbMTKug==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@parcel/codeframe/-/codeframe-2.11.0.tgz", + "integrity": "sha512-YHs9g/i5af/sd/JrWAojU9YFbKffcJ3Tx2EJaK0ME8OJsye91UaI/3lxSUYLmJG9e4WLNJtqci8V5FBMz//ZPg==", "dev": true, "dependencies": { "chalk": "^4.1.0" @@ -945,16 +945,16 @@ } }, "node_modules/@parcel/compressor-raw": { - "version": "2.10.2", - "resolved": "https://registry.npmjs.org/@parcel/compressor-raw/-/compressor-raw-2.10.2.tgz", - "integrity": "sha512-zIbtmL7vGfWkvBwD29zVdDosFR1eKHa29SpPOQXYLmDO0EVdwzYcTQq2OrlZM07o759QUqwXJfuAYxwcBNRTYg==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@parcel/compressor-raw/-/compressor-raw-2.11.0.tgz", + "integrity": "sha512-RArhBPRTCfz77soX2IECH09NUd76UBWujXiPRcXGPIHK+C3L1cRuzsNcA39QeSb3thz3b99JcozMJ1nkC2Bsgw==", "dev": true, "dependencies": { - "@parcel/plugin": "2.10.2" + "@parcel/plugin": "2.11.0" }, "engines": { "node": ">= 12.0.0", - "parcel": "^2.10.2" + "parcel": "^2.11.0" }, "funding": { "type": "opencollective", @@ -962,72 +962,72 @@ } }, "node_modules/@parcel/config-default": { - "version": "2.10.2", - "resolved": "https://registry.npmjs.org/@parcel/config-default/-/config-default-2.10.2.tgz", - "integrity": "sha512-BGn7G5MT6VXpnI5Rj8fzHT1ij0YElge3l2KVGSOJ5crho2Fmz7UKmm8kJ9kdcLrzHWOIH07T100YoQuAwKVQaA==", - "dev": true, - "dependencies": { - "@parcel/bundler-default": "2.10.2", - "@parcel/compressor-raw": "2.10.2", - "@parcel/namer-default": "2.10.2", - "@parcel/optimizer-css": "2.10.2", - "@parcel/optimizer-htmlnano": "2.10.2", - "@parcel/optimizer-image": "2.10.2", - "@parcel/optimizer-svgo": "2.10.2", - "@parcel/optimizer-swc": "2.10.2", - "@parcel/packager-css": "2.10.2", - "@parcel/packager-html": "2.10.2", - "@parcel/packager-js": "2.10.2", - "@parcel/packager-raw": "2.10.2", - "@parcel/packager-svg": "2.10.2", - "@parcel/packager-wasm": "2.10.2", - "@parcel/reporter-dev-server": "2.10.2", - "@parcel/resolver-default": "2.10.2", - "@parcel/runtime-browser-hmr": "2.10.2", - "@parcel/runtime-js": "2.10.2", - "@parcel/runtime-react-refresh": "2.10.2", - "@parcel/runtime-service-worker": "2.10.2", - "@parcel/transformer-babel": "2.10.2", - "@parcel/transformer-css": "2.10.2", - "@parcel/transformer-html": "2.10.2", - "@parcel/transformer-image": "2.10.2", - "@parcel/transformer-js": "2.10.2", - "@parcel/transformer-json": "2.10.2", - "@parcel/transformer-postcss": "2.10.2", - "@parcel/transformer-posthtml": "2.10.2", - "@parcel/transformer-raw": "2.10.2", - "@parcel/transformer-react-refresh-wrap": "2.10.2", - "@parcel/transformer-svg": "2.10.2" + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@parcel/config-default/-/config-default-2.11.0.tgz", + "integrity": "sha512-1e2+qcZkm5/0f4eI20p/DemcYiSxq9d/eyjpTXA7PulJaHbL1wonwUAuy3mvnAvDnLOJmAk/obDVgX1ZfxMGtg==", + "dev": true, + "dependencies": { + "@parcel/bundler-default": "2.11.0", + "@parcel/compressor-raw": "2.11.0", + "@parcel/namer-default": "2.11.0", + "@parcel/optimizer-css": "2.11.0", + "@parcel/optimizer-htmlnano": "2.11.0", + "@parcel/optimizer-image": "2.11.0", + "@parcel/optimizer-svgo": "2.11.0", + "@parcel/optimizer-swc": "2.11.0", + "@parcel/packager-css": "2.11.0", + "@parcel/packager-html": "2.11.0", + "@parcel/packager-js": "2.11.0", + "@parcel/packager-raw": "2.11.0", + "@parcel/packager-svg": "2.11.0", + "@parcel/packager-wasm": "2.11.0", + "@parcel/reporter-dev-server": "2.11.0", + "@parcel/resolver-default": "2.11.0", + "@parcel/runtime-browser-hmr": "2.11.0", + "@parcel/runtime-js": "2.11.0", + "@parcel/runtime-react-refresh": "2.11.0", + "@parcel/runtime-service-worker": "2.11.0", + "@parcel/transformer-babel": "2.11.0", + "@parcel/transformer-css": "2.11.0", + "@parcel/transformer-html": "2.11.0", + "@parcel/transformer-image": "2.11.0", + "@parcel/transformer-js": "2.11.0", + "@parcel/transformer-json": "2.11.0", + "@parcel/transformer-postcss": "2.11.0", + "@parcel/transformer-posthtml": "2.11.0", + "@parcel/transformer-raw": "2.11.0", + "@parcel/transformer-react-refresh-wrap": "2.11.0", + "@parcel/transformer-svg": "2.11.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/parcel" }, "peerDependencies": { - "@parcel/core": "^2.10.2" + "@parcel/core": "^2.11.0" } }, "node_modules/@parcel/core": { - "version": "2.10.2", - "resolved": "https://registry.npmjs.org/@parcel/core/-/core-2.10.2.tgz", - "integrity": "sha512-c6hh13oYk9w5creiQ9yCz9GLQ17ZRMonULhJ46J0yoFArynVhNTJ9B5xVst7rS/chOTY8jU0jSdJuxQCR4fjkg==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@parcel/core/-/core-2.11.0.tgz", + "integrity": "sha512-Npe0S6hVaqWEwRL+HI7gtOYOaoE5bJQZTgUDhsDoppWbau51jOlRYOZTXuvRK/jxXnze4/S1sdM24xBYAQ5qkw==", "dev": true, "dependencies": { "@mischnic/json-sourcemap": "^0.1.0", - "@parcel/cache": "2.10.2", - "@parcel/diagnostic": "2.10.2", - "@parcel/events": "2.10.2", - "@parcel/fs": "2.10.2", - "@parcel/graph": "3.0.2", - "@parcel/logger": "2.10.2", - "@parcel/package-manager": "2.10.2", - "@parcel/plugin": "2.10.2", - "@parcel/profiler": "2.10.2", - "@parcel/rust": "2.10.2", + "@parcel/cache": "2.11.0", + "@parcel/diagnostic": "2.11.0", + "@parcel/events": "2.11.0", + "@parcel/fs": "2.11.0", + "@parcel/graph": "3.1.0", + "@parcel/logger": "2.11.0", + "@parcel/package-manager": "2.11.0", + "@parcel/plugin": "2.11.0", + "@parcel/profiler": "2.11.0", + "@parcel/rust": "2.11.0", "@parcel/source-map": "^2.1.1", - "@parcel/types": "2.10.2", - "@parcel/utils": "2.10.2", - "@parcel/workers": "2.10.2", + "@parcel/types": "2.11.0", + "@parcel/utils": "2.11.0", + "@parcel/workers": "2.11.0", "abortcontroller-polyfill": "^1.1.9", "base-x": "^3.0.8", "browserslist": "^4.6.6", @@ -1035,7 +1035,7 @@ "dotenv": "^7.0.0", "dotenv-expand": "^5.1.0", "json5": "^2.2.0", - "msgpackr": "^1.5.4", + "msgpackr": "^1.9.9", "nullthrows": "^1.1.1", "semver": "^7.5.2" }, @@ -1063,9 +1063,9 @@ } }, "node_modules/@parcel/diagnostic": { - "version": "2.10.2", - "resolved": "https://registry.npmjs.org/@parcel/diagnostic/-/diagnostic-2.10.2.tgz", - "integrity": "sha512-FwtphyiV/TJEiYIRYXBOloXp7XhTW37ifRSLr7RdLbDVyn/P9q/7l0+ORlnOL+WuKwbDQtY+dXYLh/ijTsq7qQ==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@parcel/diagnostic/-/diagnostic-2.11.0.tgz", + "integrity": "sha512-4dJmOXVL5YGGQRRsQosQbSRONBcboB71mSwaeaEgz3pPdq9QXVPLACkGe/jTXSqa3OnAHu3g5vQLpE1g5xqBqw==", "dev": true, "dependencies": { "@mischnic/json-sourcemap": "^0.1.0", @@ -1080,9 +1080,9 @@ } }, "node_modules/@parcel/events": { - "version": "2.10.2", - "resolved": "https://registry.npmjs.org/@parcel/events/-/events-2.10.2.tgz", - "integrity": "sha512-Dp8Oqh5UvSuIASfiHP8jrEtdtzzmTKiOG/RkSL3mtp2tK3mu6dZLJZbcdJXrvBTg7smtRiznkrIOJCawALC7AQ==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@parcel/events/-/events-2.11.0.tgz", + "integrity": "sha512-K6SOjOrQsz1GdNl2qKBktq7KJ3Q3yxK8WXdmQYo10wG39dr051xtMb38aqieTp4eVhL8Yaq2iJgGkdr11fuBnA==", "dev": true, "engines": { "node": ">= 12.0.0" @@ -1093,16 +1093,16 @@ } }, "node_modules/@parcel/fs": { - "version": "2.10.2", - "resolved": "https://registry.npmjs.org/@parcel/fs/-/fs-2.10.2.tgz", - "integrity": "sha512-80SXdFGDJtil9tTbWrYiZRfQ5ehMAT/dq6eY4EYcFg+MvSiwBL/4GfYMfqXn6AamuSVeQlsFCPpunFLNl9YDDA==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@parcel/fs/-/fs-2.11.0.tgz", + "integrity": "sha512-zWckdnnovdrgdFX4QYuQV4bbKCsh6IYCkmwaB4yp47rhw1MP0lkBINLt4yFPHBxWXOpElCfxjL+z69c9xJQRBQ==", "dev": true, "dependencies": { - "@parcel/rust": "2.10.2", - "@parcel/types": "2.10.2", - "@parcel/utils": "2.10.2", + "@parcel/rust": "2.11.0", + "@parcel/types": "2.11.0", + "@parcel/utils": "2.11.0", "@parcel/watcher": "^2.0.7", - "@parcel/workers": "2.10.2" + "@parcel/workers": "2.11.0" }, "engines": { "node": ">= 12.0.0" @@ -1112,13 +1112,13 @@ "url": "https://opencollective.com/parcel" }, "peerDependencies": { - "@parcel/core": "^2.10.2" + "@parcel/core": "^2.11.0" } }, "node_modules/@parcel/graph": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@parcel/graph/-/graph-3.0.2.tgz", - "integrity": "sha512-cPxCN3+QF+5l4BJ0wnLeb3DPJarWQoD3W984CfuEYy/8Zgo2oayd31soZzkevyTYtp7H4tJKo+I79i2TJdNq5Q==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@parcel/graph/-/graph-3.1.0.tgz", + "integrity": "sha512-d1dTW5C7A52HgDtoXlyvlET1ypSlmIxSIZOJ1xp3R9L9hgo3h1u3jHNyaoTe/WPkGVe2QnFxh0h+UibVJhu9vg==", "dev": true, "dependencies": { "nullthrows": "^1.1.1" @@ -1132,13 +1132,13 @@ } }, "node_modules/@parcel/logger": { - "version": "2.10.2", - "resolved": "https://registry.npmjs.org/@parcel/logger/-/logger-2.10.2.tgz", - "integrity": "sha512-5lufBuBnXDs3hjAaptmeEAxpH0eHe0+2hJvlVv5lE/RwHR7vDjh+FDwzPfCLWNM3TQhPQdZPdHcDsuA539GHcw==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@parcel/logger/-/logger-2.11.0.tgz", + "integrity": "sha512-HtMEdCq3LKnvv4T2CIskcqlf2gpBvHMm3pkeUFB/hc/7hW/hE1k6/HA2VOQvc0tBsaMpmEx7PCrfrH56usQSyA==", "dev": true, "dependencies": { - "@parcel/diagnostic": "2.10.2", - "@parcel/events": "2.10.2" + "@parcel/diagnostic": "2.11.0", + "@parcel/events": "2.11.0" }, "engines": { "node": ">= 12.0.0" @@ -1149,9 +1149,9 @@ } }, "node_modules/@parcel/markdown-ansi": { - "version": "2.10.2", - "resolved": "https://registry.npmjs.org/@parcel/markdown-ansi/-/markdown-ansi-2.10.2.tgz", - "integrity": "sha512-uZrysHjJ+0vbQNK2bhKy8yoVso8KnoW6O/SW8MiGQ4lpDJdqHShkW08wZUKr4sjl7h/WVFdNsDdgvi2/ANwoRQ==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@parcel/markdown-ansi/-/markdown-ansi-2.11.0.tgz", + "integrity": "sha512-YA60EWbXi6cLOIzcwRC2wijotPauOGQbUi0vSbu0O6/mjQ68kWCMGz0hwZjDRQcPypQVJEIvTgMymLbvumxwhg==", "dev": true, "dependencies": { "chalk": "^4.1.0" @@ -1165,18 +1165,18 @@ } }, "node_modules/@parcel/namer-default": { - "version": "2.10.2", - "resolved": "https://registry.npmjs.org/@parcel/namer-default/-/namer-default-2.10.2.tgz", - "integrity": "sha512-wjn3MCus0w9IOjCtQsp5fgb8hgITyxMr0OPF9cBVAhVJI1X9vvd4RurHuLJ3MjvlCqrP1en09yg3ME7VO1kPuA==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@parcel/namer-default/-/namer-default-2.11.0.tgz", + "integrity": "sha512-DEwBSKSClg4DA2xAWimYkw9bFi7MFb9TdT7/TYZStMTsfYHPWOyyjGR7aVr3Ra4wNb+XX6g4rR41yp3HD6KO7A==", "dev": true, "dependencies": { - "@parcel/diagnostic": "2.10.2", - "@parcel/plugin": "2.10.2", + "@parcel/diagnostic": "2.11.0", + "@parcel/plugin": "2.11.0", "nullthrows": "^1.1.1" }, "engines": { "node": ">= 12.0.0", - "parcel": "^2.10.2" + "parcel": "^2.11.0" }, "funding": { "type": "opencollective", @@ -1184,16 +1184,16 @@ } }, "node_modules/@parcel/node-resolver-core": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/@parcel/node-resolver-core/-/node-resolver-core-3.1.2.tgz", - "integrity": "sha512-xvIBgYBRQGmCkfwK/yxVSDtPEvWDVH9poQcGpKHT1jqstYju5crXro0acni5nYF0hWZu7Kttrp9G9fXJQWBksw==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/@parcel/node-resolver-core/-/node-resolver-core-3.2.0.tgz", + "integrity": "sha512-XJRSxCkNbGFWjfmwFdcQZ/qlzWZd35qLtvLz2va8euGL7M5OMEQOv7dsvEhl0R+CC2zcnfFzZwxk78q6ezs8AQ==", "dev": true, "dependencies": { "@mischnic/json-sourcemap": "^0.1.0", - "@parcel/diagnostic": "2.10.2", - "@parcel/fs": "2.10.2", - "@parcel/rust": "2.10.2", - "@parcel/utils": "2.10.2", + "@parcel/diagnostic": "2.11.0", + "@parcel/fs": "2.11.0", + "@parcel/rust": "2.11.0", + "@parcel/utils": "2.11.0", "nullthrows": "^1.1.1", "semver": "^7.5.2" }, @@ -1221,22 +1221,22 @@ } }, "node_modules/@parcel/optimizer-css": { - "version": "2.10.2", - "resolved": "https://registry.npmjs.org/@parcel/optimizer-css/-/optimizer-css-2.10.2.tgz", - "integrity": "sha512-05H/Ng90TErSFZkNaUwi7gNCf2gLWi3/w07oIzHu1wjRjjKjZidqaQqZtHTEYoO9ffmhK14Xwh9q4IpOTa0sbQ==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@parcel/optimizer-css/-/optimizer-css-2.11.0.tgz", + "integrity": "sha512-bV97PRxshHV3dMwOpLRgcP1QNhrVWh6VVDfm2gmWULpvsjoykcPS6vrCFksY5CpQsSvNHqJBzQjWS8FubUI76w==", "dev": true, "dependencies": { - "@parcel/diagnostic": "2.10.2", - "@parcel/plugin": "2.10.2", + "@parcel/diagnostic": "2.11.0", + "@parcel/plugin": "2.11.0", "@parcel/source-map": "^2.1.1", - "@parcel/utils": "2.10.2", + "@parcel/utils": "2.11.0", "browserslist": "^4.6.6", - "lightningcss": "^1.16.1", + "lightningcss": "^1.22.1", "nullthrows": "^1.1.1" }, "engines": { "node": ">= 12.0.0", - "parcel": "^2.10.2" + "parcel": "^2.11.0" }, "funding": { "type": "opencollective", @@ -1244,12 +1244,12 @@ } }, "node_modules/@parcel/optimizer-htmlnano": { - "version": "2.10.2", - "resolved": "https://registry.npmjs.org/@parcel/optimizer-htmlnano/-/optimizer-htmlnano-2.10.2.tgz", - "integrity": "sha512-9Sg2xLsfX7CPLd1AO3uVa/Kh9EROKVNHMnmNxlzmO2+LEOU/M1OHalvt4bhC7I+cNFPLN5BePdBv3QMYpO0yyA==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@parcel/optimizer-htmlnano/-/optimizer-htmlnano-2.11.0.tgz", + "integrity": "sha512-c20pz4EFF5DNFmqYgptlIj49eT6xjGLkDTdHH3RRzxKovuSXWfYSPs3GED3ZsjVuQyjNQif+/MAk9547F7hrdQ==", "dev": true, "dependencies": { - "@parcel/plugin": "2.10.2", + "@parcel/plugin": "2.11.0", "htmlnano": "^2.0.0", "nullthrows": "^1.1.1", "posthtml": "^0.16.5", @@ -1257,7 +1257,7 @@ }, "engines": { "node": ">= 12.0.0", - "parcel": "^2.10.2" + "parcel": "^2.11.0" }, "funding": { "type": "opencollective", @@ -1342,43 +1342,43 @@ } }, "node_modules/@parcel/optimizer-image": { - "version": "2.10.2", - "resolved": "https://registry.npmjs.org/@parcel/optimizer-image/-/optimizer-image-2.10.2.tgz", - "integrity": "sha512-X8q7mvWJEIXsEMYHYKbwIRUJvI0W41YWCEW7Ohmn0SSi+KuiO8BW5JEPKs7HboO9bX+i6Yxa/T1h9HgRXhdUug==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@parcel/optimizer-image/-/optimizer-image-2.11.0.tgz", + "integrity": "sha512-jCaJww5QFG2GuNzYW8nlSW+Ea+Cv47TRnOPJNquFIajgfTLJ5ddsWbaNal0GQsL8yNiCBKWd1AV4W0RH9tG0Jg==", "dev": true, "dependencies": { - "@parcel/diagnostic": "2.10.2", - "@parcel/plugin": "2.10.2", - "@parcel/rust": "2.10.2", - "@parcel/utils": "2.10.2", - "@parcel/workers": "2.10.2" + "@parcel/diagnostic": "2.11.0", + "@parcel/plugin": "2.11.0", + "@parcel/rust": "2.11.0", + "@parcel/utils": "2.11.0", + "@parcel/workers": "2.11.0" }, "engines": { "node": ">= 12.0.0", - "parcel": "^2.10.2" + "parcel": "^2.11.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/parcel" }, "peerDependencies": { - "@parcel/core": "^2.10.2" + "@parcel/core": "^2.11.0" } }, "node_modules/@parcel/optimizer-svgo": { - "version": "2.10.2", - "resolved": "https://registry.npmjs.org/@parcel/optimizer-svgo/-/optimizer-svgo-2.10.2.tgz", - "integrity": "sha512-Ws+xd6nbetMCZHmRj54tIF8wYuu/JwkEvn5BotLE69l3naf2ELtsQ+PHg9G5jUa+PnSNMHhykIhBOqjxhTeq/w==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@parcel/optimizer-svgo/-/optimizer-svgo-2.11.0.tgz", + "integrity": "sha512-TQpvfBhjV2IsuFHXUolbDS6XWB3DDR2rYTlqlA8LMmuOY7jQd9Bnkl4JnapzWm/bRuzRlzdGjjVCPGL8iShFvA==", "dev": true, "dependencies": { - "@parcel/diagnostic": "2.10.2", - "@parcel/plugin": "2.10.2", - "@parcel/utils": "2.10.2", + "@parcel/diagnostic": "2.11.0", + "@parcel/plugin": "2.11.0", + "@parcel/utils": "2.11.0", "svgo": "^2.4.0" }, "engines": { "node": ">= 12.0.0", - "parcel": "^2.10.2" + "parcel": "^2.11.0" }, "funding": { "type": "opencollective", @@ -1463,21 +1463,21 @@ } }, "node_modules/@parcel/optimizer-swc": { - "version": "2.10.2", - "resolved": "https://registry.npmjs.org/@parcel/optimizer-swc/-/optimizer-swc-2.10.2.tgz", - "integrity": "sha512-/4yMgMgLvF4yCHh0QnZlTUTpKobuFK/lNhB1i5yrtiipRaYcS+OgtakB83grfK+x1KwTbYjzXZBILwqu6GKJDQ==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@parcel/optimizer-swc/-/optimizer-swc-2.11.0.tgz", + "integrity": "sha512-ftf42F3JyZxJb6nnLlgNGyNQ273YOla4dFGH/tWC8iTwObHUpWe7cMbCGcrSJBvAlsLkZfLpFNAXFxUgxdKyHQ==", "dev": true, "dependencies": { - "@parcel/diagnostic": "2.10.2", - "@parcel/plugin": "2.10.2", + "@parcel/diagnostic": "2.11.0", + "@parcel/plugin": "2.11.0", "@parcel/source-map": "^2.1.1", - "@parcel/utils": "2.10.2", + "@parcel/utils": "2.11.0", "@swc/core": "^1.3.36", "nullthrows": "^1.1.1" }, "engines": { "node": ">= 12.0.0", - "parcel": "^2.10.2" + "parcel": "^2.11.0" }, "funding": { "type": "opencollective", @@ -1485,18 +1485,18 @@ } }, "node_modules/@parcel/package-manager": { - "version": "2.10.2", - "resolved": "https://registry.npmjs.org/@parcel/package-manager/-/package-manager-2.10.2.tgz", - "integrity": "sha512-c91YYsIxjX3YhMvtPT7v2MpDOn/Qyw13bi1+0Ftd2JNjUZPlm8+xKizlmgvdi75dgs7dGIUVpvrGLU9LoKthCA==", - "dev": true, - "dependencies": { - "@parcel/diagnostic": "2.10.2", - "@parcel/fs": "2.10.2", - "@parcel/logger": "2.10.2", - "@parcel/node-resolver-core": "3.1.2", - "@parcel/types": "2.10.2", - "@parcel/utils": "2.10.2", - "@parcel/workers": "2.10.2", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@parcel/package-manager/-/package-manager-2.11.0.tgz", + "integrity": "sha512-QzdsrUYlAwIzb8by7WJjqYnbR1MoMKWbtE1MXUeYsZbFusV8B6pOH+lwqNJKS/BFtddZMRPYFueZS2N2fwzjig==", + "dev": true, + "dependencies": { + "@parcel/diagnostic": "2.11.0", + "@parcel/fs": "2.11.0", + "@parcel/logger": "2.11.0", + "@parcel/node-resolver-core": "3.2.0", + "@parcel/types": "2.11.0", + "@parcel/utils": "2.11.0", + "@parcel/workers": "2.11.0", "semver": "^7.5.2" }, "engines": { @@ -1507,7 +1507,7 @@ "url": "https://opencollective.com/parcel" }, "peerDependencies": { - "@parcel/core": "^2.10.2" + "@parcel/core": "^2.11.0" } }, "node_modules/@parcel/package-manager/node_modules/semver": { @@ -1526,20 +1526,20 @@ } }, "node_modules/@parcel/packager-css": { - "version": "2.10.2", - "resolved": "https://registry.npmjs.org/@parcel/packager-css/-/packager-css-2.10.2.tgz", - "integrity": "sha512-+X4dV7mBdOhXSHeg5gAkk0Qju6A1oezYIancqDC17zoFzbHUfD13nHNDOXrEfMNFVWy93lB8vLJwchH54MDMwQ==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@parcel/packager-css/-/packager-css-2.11.0.tgz", + "integrity": "sha512-AyIxsp4eL8c22vp2oO2hSRnr3hSVNkARNZc9DG6uXxCc2Is5tUEX0I4PwxWnAx0EI44l+3zX/o414zT8yV9wwQ==", "dev": true, "dependencies": { - "@parcel/diagnostic": "2.10.2", - "@parcel/plugin": "2.10.2", + "@parcel/diagnostic": "2.11.0", + "@parcel/plugin": "2.11.0", "@parcel/source-map": "^2.1.1", - "@parcel/utils": "2.10.2", + "@parcel/utils": "2.11.0", "nullthrows": "^1.1.1" }, "engines": { "node": ">= 12.0.0", - "parcel": "^2.10.2" + "parcel": "^2.11.0" }, "funding": { "type": "opencollective", @@ -1547,20 +1547,20 @@ } }, "node_modules/@parcel/packager-html": { - "version": "2.10.2", - "resolved": "https://registry.npmjs.org/@parcel/packager-html/-/packager-html-2.10.2.tgz", - "integrity": "sha512-GonfLzuzEkelJde89sq9P9LowLJrFNkuEt33nRokc1Q5TPNOWfTYb6difjuVIMr/j0c4nWlOzUrkGJsyo++F7w==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@parcel/packager-html/-/packager-html-2.11.0.tgz", + "integrity": "sha512-ho5AQ70naTV8IqkKIbKtK+jsXQ5TJfFgtBvmJlyB3YydRMbIc+3g4G0xgIvf15V4uCMw9Md0Sv1W65nQXHPQoA==", "dev": true, "dependencies": { - "@parcel/plugin": "2.10.2", - "@parcel/types": "2.10.2", - "@parcel/utils": "2.10.2", + "@parcel/plugin": "2.11.0", + "@parcel/types": "2.11.0", + "@parcel/utils": "2.11.0", "nullthrows": "^1.1.1", "posthtml": "^0.16.5" }, "engines": { "node": ">= 12.0.0", - "parcel": "^2.10.2" + "parcel": "^2.11.0" }, "funding": { "type": "opencollective", @@ -1568,23 +1568,23 @@ } }, "node_modules/@parcel/packager-js": { - "version": "2.10.2", - "resolved": "https://registry.npmjs.org/@parcel/packager-js/-/packager-js-2.10.2.tgz", - "integrity": "sha512-SgKJqIvMt+UJM0x3F21yBVsgdHbTnOnBrNJ7VoY3nujQX5fa+pxTf0emWuX1vSUDbBaJOmO/pC9rKwWP5enqfQ==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@parcel/packager-js/-/packager-js-2.11.0.tgz", + "integrity": "sha512-SxjCsd0xQfg5H73YtVJj9VOpr9s0rwMsSoeykjkatbkEla9NsZajsUkd/bfYf+/0WvEKOrB8oUBo15HkGOgKug==", "dev": true, "dependencies": { - "@parcel/diagnostic": "2.10.2", - "@parcel/plugin": "2.10.2", - "@parcel/rust": "2.10.2", + "@parcel/diagnostic": "2.11.0", + "@parcel/plugin": "2.11.0", + "@parcel/rust": "2.11.0", "@parcel/source-map": "^2.1.1", - "@parcel/types": "2.10.2", - "@parcel/utils": "2.10.2", + "@parcel/types": "2.11.0", + "@parcel/utils": "2.11.0", "globals": "^13.2.0", "nullthrows": "^1.1.1" }, "engines": { "node": ">= 12.0.0", - "parcel": "^2.10.2" + "parcel": "^2.11.0" }, "funding": { "type": "opencollective", @@ -1592,16 +1592,16 @@ } }, "node_modules/@parcel/packager-raw": { - "version": "2.10.2", - "resolved": "https://registry.npmjs.org/@parcel/packager-raw/-/packager-raw-2.10.2.tgz", - "integrity": "sha512-+/O2DeMIB9d+1+zCPOkaf2aTl2rN5TFod/UcMzG/HGFlDVqhkV9xgfwV4rV+Vso5TlyHA4p53BFgvGWQBQJAQw==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@parcel/packager-raw/-/packager-raw-2.11.0.tgz", + "integrity": "sha512-2/0JQ8DZrz7cVNXwD6OYoUUtSSnlr4dsz8ZkpFDKsBJhvMHtC78Sq+1EDixDGOMiUcalSEjNsoHtkpq9uNh+Xw==", "dev": true, "dependencies": { - "@parcel/plugin": "2.10.2" + "@parcel/plugin": "2.11.0" }, "engines": { "node": ">= 12.0.0", - "parcel": "^2.10.2" + "parcel": "^2.11.0" }, "funding": { "type": "opencollective", @@ -1609,19 +1609,19 @@ } }, "node_modules/@parcel/packager-svg": { - "version": "2.10.2", - "resolved": "https://registry.npmjs.org/@parcel/packager-svg/-/packager-svg-2.10.2.tgz", - "integrity": "sha512-eQx3VJpuuDcen+DcLxlPn95txlnbpEH8TES+Ezym/LFyD8oQQfok/VFHy/iGoG4r1CtH0/c7lFUJE8+LZdwYmQ==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@parcel/packager-svg/-/packager-svg-2.11.0.tgz", + "integrity": "sha512-2wQBkzLwcaWFGWz8TP+bgsXgiueWPzrjKsWugWdDfq0FbXh8XVeR/599qnus3RFHZy4cH6L6yq/7zxcljtxK8A==", "dev": true, "dependencies": { - "@parcel/plugin": "2.10.2", - "@parcel/types": "2.10.2", - "@parcel/utils": "2.10.2", + "@parcel/plugin": "2.11.0", + "@parcel/types": "2.11.0", + "@parcel/utils": "2.11.0", "posthtml": "^0.16.4" }, "engines": { "node": ">= 12.0.0", - "parcel": "^2.10.2" + "parcel": "^2.11.0" }, "funding": { "type": "opencollective", @@ -1629,16 +1629,16 @@ } }, "node_modules/@parcel/packager-wasm": { - "version": "2.10.2", - "resolved": "https://registry.npmjs.org/@parcel/packager-wasm/-/packager-wasm-2.10.2.tgz", - "integrity": "sha512-Y/UyyOePb3WmWy2WtmXn4QLLrb7wjWL/ZhVgvhFiQft4lCbdGBGz1BiKEzhFkkN2IGdX06XZolmKCQieAM6zlQ==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@parcel/packager-wasm/-/packager-wasm-2.11.0.tgz", + "integrity": "sha512-tTy4EbDXeeiZ0oB7L2FWaHSD1mbmYZP6R5HXqkvc5dECGUKPU5Jz6ek2C5AM+HfQdQLKXPQ/Xw3eJnI/AmctVg==", "dev": true, "dependencies": { - "@parcel/plugin": "2.10.2" + "@parcel/plugin": "2.11.0" }, "engines": { "node": ">=12.0.0", - "parcel": "^2.10.2" + "parcel": "^2.11.0" }, "funding": { "type": "opencollective", @@ -1646,12 +1646,12 @@ } }, "node_modules/@parcel/plugin": { - "version": "2.10.2", - "resolved": "https://registry.npmjs.org/@parcel/plugin/-/plugin-2.10.2.tgz", - "integrity": "sha512-1u+GJhuqqlYjMAQLBbMExfFCbsbtuSAm6wXmMmTse5cBpFqxgsMumMeztAhcTy0oMnMhbZg2AKZV0XVSMrIgng==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@parcel/plugin/-/plugin-2.11.0.tgz", + "integrity": "sha512-9npuKBlhnPn7oeUpLJGecceg16GkXbvzbr6MNSZiHhkx3IBeITHQXlZnp2zAjUOFreNsYOfifwEF2S4KsARfBQ==", "dev": true, "dependencies": { - "@parcel/types": "2.10.2" + "@parcel/types": "2.11.0" }, "engines": { "node": ">= 12.0.0" @@ -1662,13 +1662,13 @@ } }, "node_modules/@parcel/profiler": { - "version": "2.10.2", - "resolved": "https://registry.npmjs.org/@parcel/profiler/-/profiler-2.10.2.tgz", - "integrity": "sha512-YQugGhf12u83O0RJLWbhkPV772nePPxNZjvFJmV++7buPUpgJW2m1lVOrut/s/8ZZIPqcxJe8dyxSSOtvdG7OQ==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@parcel/profiler/-/profiler-2.11.0.tgz", + "integrity": "sha512-s10SS09prOdwnaAcjK8M5zO8o+zPJJW5oOqXPNdf6KH4NGD/ue7iOk2xM8QLw6ulSwxE7NDt++lyfW3AXgCZwg==", "dev": true, "dependencies": { - "@parcel/diagnostic": "2.10.2", - "@parcel/events": "2.10.2", + "@parcel/diagnostic": "2.11.0", + "@parcel/events": "2.11.0", "chrome-trace-event": "^1.0.2" }, "engines": { @@ -1680,20 +1680,21 @@ } }, "node_modules/@parcel/reporter-cli": { - "version": "2.10.2", - "resolved": "https://registry.npmjs.org/@parcel/reporter-cli/-/reporter-cli-2.10.2.tgz", - "integrity": "sha512-6/cLuiGfMh1ny8ULNOXJkugIvJRVo4tV4XA3vJXH96SYqFSfiWxtHqb6MAVndBy8MezEAv0EsLqc7yR7ygdZJw==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@parcel/reporter-cli/-/reporter-cli-2.11.0.tgz", + "integrity": "sha512-hY0iO0f+LifgJHDUIjGQJnxLFSkk2jlbfy+kIaft5oI3/IM+UljecfGO+14XH8mYlqRXXPsT09TJe8ZKQzp4ZQ==", "dev": true, "dependencies": { - "@parcel/plugin": "2.10.2", - "@parcel/types": "2.10.2", - "@parcel/utils": "2.10.2", + "@parcel/plugin": "2.11.0", + "@parcel/types": "2.11.0", + "@parcel/utils": "2.11.0", "chalk": "^4.1.0", + "cli-progress": "^3.12.0", "term-size": "^2.2.1" }, "engines": { "node": ">= 12.0.0", - "parcel": "^2.10.2" + "parcel": "^2.11.0" }, "funding": { "type": "opencollective", @@ -1701,17 +1702,17 @@ } }, "node_modules/@parcel/reporter-dev-server": { - "version": "2.10.2", - "resolved": "https://registry.npmjs.org/@parcel/reporter-dev-server/-/reporter-dev-server-2.10.2.tgz", - "integrity": "sha512-mLEcZFPpw0ixlvbT846NwmPEVv1ej7H5dwCQ3r1Ca1nQjyXkmQMM06rdb5M+/gk12WVEDOuienWqBL44Xsz3NA==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@parcel/reporter-dev-server/-/reporter-dev-server-2.11.0.tgz", + "integrity": "sha512-T4ue1+oLFNdcd9maw8QWQuxzOS2kX2jOrSvYKwYd9oGnqiAr1rpiHYYKJhHng+PF5ybwWkj8dUJfGh2NoQysJA==", "dev": true, "dependencies": { - "@parcel/plugin": "2.10.2", - "@parcel/utils": "2.10.2" + "@parcel/plugin": "2.11.0", + "@parcel/utils": "2.11.0" }, "engines": { "node": ">= 12.0.0", - "parcel": "^2.10.2" + "parcel": "^2.11.0" }, "funding": { "type": "opencollective", @@ -1719,19 +1720,19 @@ } }, "node_modules/@parcel/reporter-tracer": { - "version": "2.10.2", - "resolved": "https://registry.npmjs.org/@parcel/reporter-tracer/-/reporter-tracer-2.10.2.tgz", - "integrity": "sha512-oreu3vIdN5u9ONSNhqypcK3nR91NoreR4B4vwD/1Rqod1ud2Vb9awJZv7QIrkdnEMmGcr5DQ/R872s7XYWeZnA==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@parcel/reporter-tracer/-/reporter-tracer-2.11.0.tgz", + "integrity": "sha512-33q4ftO26OPWHkUpEm0bzzSjW2kHEh6q/JFePwf8W6APTQVruj4mV46+Fh6rxX42ixs92K/QoiE0gYgWZQVDHA==", "dev": true, "dependencies": { - "@parcel/plugin": "2.10.2", - "@parcel/utils": "2.10.2", + "@parcel/plugin": "2.11.0", + "@parcel/utils": "2.11.0", "chrome-trace-event": "^1.0.3", "nullthrows": "^1.1.1" }, "engines": { "node": ">= 12.0.0", - "parcel": "^2.10.2" + "parcel": "^2.11.0" }, "funding": { "type": "opencollective", @@ -1739,17 +1740,17 @@ } }, "node_modules/@parcel/resolver-default": { - "version": "2.10.2", - "resolved": "https://registry.npmjs.org/@parcel/resolver-default/-/resolver-default-2.10.2.tgz", - "integrity": "sha512-ENEq8f4wRQlU7p3tCelXWK6xIsL+57q9hQ+b4eRJOEctjfN1/BguxZDh+P+fIlJ1lkqiX4UB/PUkK97uSI5XTQ==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@parcel/resolver-default/-/resolver-default-2.11.0.tgz", + "integrity": "sha512-suZNN2lE5W48LPTwAbG7gnj1IeubkCVEm0XspWXcXUtCzglimNJ8PVVBGx171o5CqDpdbGF3AqHjG9N3uOwXag==", "dev": true, "dependencies": { - "@parcel/node-resolver-core": "3.1.2", - "@parcel/plugin": "2.10.2" + "@parcel/node-resolver-core": "3.2.0", + "@parcel/plugin": "2.11.0" }, "engines": { "node": ">= 12.0.0", - "parcel": "^2.10.2" + "parcel": "^2.11.0" }, "funding": { "type": "opencollective", @@ -1757,17 +1758,17 @@ } }, "node_modules/@parcel/runtime-browser-hmr": { - "version": "2.10.2", - "resolved": "https://registry.npmjs.org/@parcel/runtime-browser-hmr/-/runtime-browser-hmr-2.10.2.tgz", - "integrity": "sha512-ABlCzDYI16lAZLTTL2g3JZasU/dWuSzRGK5paC6JhIJJwQwPeTwu4PaUoEPKeyk0iE9PzVuXjkBbGuSLXQFmmA==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@parcel/runtime-browser-hmr/-/runtime-browser-hmr-2.11.0.tgz", + "integrity": "sha512-uVwNBtoLMrlPHLvRS05BVhLseduMOpZT36yiIjS0YSBJcC6/otI9AY7ZiDPYmrB5xTqM0R+D554JhPaJHCuocw==", "dev": true, "dependencies": { - "@parcel/plugin": "2.10.2", - "@parcel/utils": "2.10.2" + "@parcel/plugin": "2.11.0", + "@parcel/utils": "2.11.0" }, "engines": { "node": ">= 12.0.0", - "parcel": "^2.10.2" + "parcel": "^2.11.0" }, "funding": { "type": "opencollective", @@ -1775,19 +1776,19 @@ } }, "node_modules/@parcel/runtime-js": { - "version": "2.10.2", - "resolved": "https://registry.npmjs.org/@parcel/runtime-js/-/runtime-js-2.10.2.tgz", - "integrity": "sha512-a6TaMVg1Xgy+WJJ0a3sC/Taw5hkN4hmLnz00jg7G6LwoGbBpvjJn8pm4eovkMFJz13RCjmS9q0K+qZnvXh1WYA==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@parcel/runtime-js/-/runtime-js-2.11.0.tgz", + "integrity": "sha512-fH3nJoexINz7s4cDzp0Vjsx0k1pMYSa5ch38LbbNqCKTermy0pS0zZuvgfLfHFFP+AMRpFQenrF7h7N3bgDmHw==", "dev": true, "dependencies": { - "@parcel/diagnostic": "2.10.2", - "@parcel/plugin": "2.10.2", - "@parcel/utils": "2.10.2", + "@parcel/diagnostic": "2.11.0", + "@parcel/plugin": "2.11.0", + "@parcel/utils": "2.11.0", "nullthrows": "^1.1.1" }, "engines": { "node": ">= 12.0.0", - "parcel": "^2.10.2" + "parcel": "^2.11.0" }, "funding": { "type": "opencollective", @@ -1795,19 +1796,19 @@ } }, "node_modules/@parcel/runtime-react-refresh": { - "version": "2.10.2", - "resolved": "https://registry.npmjs.org/@parcel/runtime-react-refresh/-/runtime-react-refresh-2.10.2.tgz", - "integrity": "sha512-9xW3g4FH9iizHWscHD2yEWJOCfYkIYMbWsZoj0EOMILqrRd1OZxHH8FbLYBQKT6swRbZI2mM19veVVBBfxco/Q==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@parcel/runtime-react-refresh/-/runtime-react-refresh-2.11.0.tgz", + "integrity": "sha512-Kfnc7gLjhoephLMnjABrkIkzVfzPrpJlxiJFIleY2Fm57YhmCfKsEYxm3lHOutNaYl1VArW0LKClPH/VHG9vfQ==", "dev": true, "dependencies": { - "@parcel/plugin": "2.10.2", - "@parcel/utils": "2.10.2", + "@parcel/plugin": "2.11.0", + "@parcel/utils": "2.11.0", "react-error-overlay": "6.0.9", "react-refresh": "^0.9.0" }, "engines": { "node": ">= 12.0.0", - "parcel": "^2.10.2" + "parcel": "^2.11.0" }, "funding": { "type": "opencollective", @@ -1815,18 +1816,18 @@ } }, "node_modules/@parcel/runtime-service-worker": { - "version": "2.10.2", - "resolved": "https://registry.npmjs.org/@parcel/runtime-service-worker/-/runtime-service-worker-2.10.2.tgz", - "integrity": "sha512-XY1GrY4r+zu0b/pZiTflZHdk9+I3XoxpExgPcZzep5hnq2UdyXbS4yDhmen7pTcqay5U9NmRw/62YrKL+yPang==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@parcel/runtime-service-worker/-/runtime-service-worker-2.11.0.tgz", + "integrity": "sha512-c8MaSpSbXIKuN5sA/g4UsrsH1BtBZ6Em+eSxt9AYbdPtWrW+qwCioNVZj9lugBRUzDMjVfJz0yK59nS42hABvw==", "dev": true, "dependencies": { - "@parcel/plugin": "2.10.2", - "@parcel/utils": "2.10.2", + "@parcel/plugin": "2.11.0", + "@parcel/utils": "2.11.0", "nullthrows": "^1.1.1" }, "engines": { "node": ">= 12.0.0", - "parcel": "^2.10.2" + "parcel": "^2.11.0" }, "funding": { "type": "opencollective", @@ -1834,9 +1835,9 @@ } }, "node_modules/@parcel/rust": { - "version": "2.10.2", - "resolved": "https://registry.npmjs.org/@parcel/rust/-/rust-2.10.2.tgz", - "integrity": "sha512-v/Cyf3iXlzSc6vgvPiEZzqdKAZ1jJ/aZX7y1YSupDh3RoqJI2bZ93kAOyEi+S7P3kshJkQM0px3YveJFOAMUOA==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@parcel/rust/-/rust-2.11.0.tgz", + "integrity": "sha512-UkLWdHOD8Md2YmJDPsqd3yIs9chhdl/ATfV/B/xdPKGmqtNouYpDCRlq+WxMt3mLoYgHEg9UwrWLTebo2rr2iQ==", "dev": true, "engines": { "node": ">= 12.0.0" @@ -1859,15 +1860,15 @@ } }, "node_modules/@parcel/transformer-babel": { - "version": "2.10.2", - "resolved": "https://registry.npmjs.org/@parcel/transformer-babel/-/transformer-babel-2.10.2.tgz", - "integrity": "sha512-lmuksSzEBdPL1nVTznsQi5hQ+4mJ7GP+jvOv/Tvx3MjnzIu1G6Fs5MvNpAwBRXmG/F1+0aw/Wa8J38HYfN05dA==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@parcel/transformer-babel/-/transformer-babel-2.11.0.tgz", + "integrity": "sha512-WKGblnp7r426VG+cpeQzc6dj/30EoUaYwyl4OEaigQSJizyuPWTBWTz6FUw+ih1/sg37h+D1BIh9C2FsVzpzbw==", "dev": true, "dependencies": { - "@parcel/diagnostic": "2.10.2", - "@parcel/plugin": "2.10.2", + "@parcel/diagnostic": "2.11.0", + "@parcel/plugin": "2.11.0", "@parcel/source-map": "^2.1.1", - "@parcel/utils": "2.10.2", + "@parcel/utils": "2.11.0", "browserslist": "^4.6.6", "json5": "^2.2.0", "nullthrows": "^1.1.1", @@ -1875,7 +1876,7 @@ }, "engines": { "node": ">= 12.0.0", - "parcel": "^2.10.2" + "parcel": "^2.11.0" }, "funding": { "type": "opencollective", @@ -1898,22 +1899,22 @@ } }, "node_modules/@parcel/transformer-css": { - "version": "2.10.2", - "resolved": "https://registry.npmjs.org/@parcel/transformer-css/-/transformer-css-2.10.2.tgz", - "integrity": "sha512-WxKe1YherQrX0vEfxAsBALEIsztGStmfXF0GAMeynE4q/w1iHQdTzu29tqLrJY7x532Ric8TxnwO8zR0r89DJg==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@parcel/transformer-css/-/transformer-css-2.11.0.tgz", + "integrity": "sha512-nFmBulF/ErNoafO87JbVrBavjBMNwE/kahbCRVxc2Mvlphz4F4lBW4eDRS5l4xBqFJaNkHr9R55ehLBBilF4Jw==", "dev": true, "dependencies": { - "@parcel/diagnostic": "2.10.2", - "@parcel/plugin": "2.10.2", + "@parcel/diagnostic": "2.11.0", + "@parcel/plugin": "2.11.0", "@parcel/source-map": "^2.1.1", - "@parcel/utils": "2.10.2", + "@parcel/utils": "2.11.0", "browserslist": "^4.6.6", - "lightningcss": "^1.16.1", + "lightningcss": "^1.22.1", "nullthrows": "^1.1.1" }, "engines": { "node": ">= 12.0.0", - "parcel": "^2.10.2" + "parcel": "^2.11.0" }, "funding": { "type": "opencollective", @@ -1921,13 +1922,13 @@ } }, "node_modules/@parcel/transformer-elm": { - "version": "2.10.2", - "resolved": "https://registry.npmjs.org/@parcel/transformer-elm/-/transformer-elm-2.10.2.tgz", - "integrity": "sha512-uzhaAd0XaLrhoWbGgCnaAImfCdoaSrNyIo+MO/lT3uY04xxAgfA7ekKFyeQgU1oe2Q7XKLmTARRHgMaqGDSOBA==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@parcel/transformer-elm/-/transformer-elm-2.11.0.tgz", + "integrity": "sha512-fFUjvg0SlqDfEhOgyV9QcUGMc84MszKEr1/3TZWf1Dm6DCH5fa7rrBr4JCN1WJkfxj/+yx3uGsfkZzcvd1WCGQ==", "dev": true, "dependencies": { - "@parcel/diagnostic": "2.10.2", - "@parcel/plugin": "2.10.2", + "@parcel/diagnostic": "2.11.0", + "@parcel/plugin": "2.11.0", "command-exists": "^1.2.8", "cross-spawn": "^7.0.3", "elm-hot": "^1.1.5", @@ -1937,7 +1938,7 @@ }, "engines": { "node": ">= 12.0.0", - "parcel": "^2.10.2" + "parcel": "^2.11.0" }, "funding": { "type": "opencollective", @@ -1948,14 +1949,14 @@ } }, "node_modules/@parcel/transformer-html": { - "version": "2.10.2", - "resolved": "https://registry.npmjs.org/@parcel/transformer-html/-/transformer-html-2.10.2.tgz", - "integrity": "sha512-Zkg1HHdYp14ecdtNF+s4d/e1lr8/PAQgBTYhyEVLVC1N7uivjjZ9XClxZlHuZImbQvX3q3PgZS+PocIizhY4rQ==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@parcel/transformer-html/-/transformer-html-2.11.0.tgz", + "integrity": "sha512-90vp7mbvvfqPr9XIINpMcELtywj56f1bxfOkLQgWU1bm22H0FT3i5dqdac++2My0IGDvMwhAEjQfbn4pA579NQ==", "dev": true, "dependencies": { - "@parcel/diagnostic": "2.10.2", - "@parcel/plugin": "2.10.2", - "@parcel/rust": "2.10.2", + "@parcel/diagnostic": "2.11.0", + "@parcel/plugin": "2.11.0", + "@parcel/rust": "2.11.0", "nullthrows": "^1.1.1", "posthtml": "^0.16.5", "posthtml-parser": "^0.10.1", @@ -1965,7 +1966,7 @@ }, "engines": { "node": ">= 12.0.0", - "parcel": "^2.10.2" + "parcel": "^2.11.0" }, "funding": { "type": "opencollective", @@ -1988,36 +1989,36 @@ } }, "node_modules/@parcel/transformer-image": { - "version": "2.10.2", - "resolved": "https://registry.npmjs.org/@parcel/transformer-image/-/transformer-image-2.10.2.tgz", - "integrity": "sha512-sR2kTsPykYRujKR7ISn0d6Fhem1pMQoqm0cFTrtC9Te5pfIjZ72NfM9clP7jPK660Gd2DYudhUa48y+qKBfCAw==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@parcel/transformer-image/-/transformer-image-2.11.0.tgz", + "integrity": "sha512-QiZj18UHf3lVFsi65Vz8YbS3ydx9Pe9x8ktMxE1oh9qpznN8lD7gE/Z9DxuTZB84EZ9pKytKwcv5WGXP25xIFg==", "dev": true, "dependencies": { - "@parcel/plugin": "2.10.2", - "@parcel/utils": "2.10.2", - "@parcel/workers": "2.10.2", + "@parcel/plugin": "2.11.0", + "@parcel/utils": "2.11.0", + "@parcel/workers": "2.11.0", "nullthrows": "^1.1.1" }, "engines": { "node": ">= 12.0.0", - "parcel": "^2.10.2" + "parcel": "^2.11.0" }, "peerDependencies": { - "@parcel/core": "^2.10.2" + "@parcel/core": "^2.11.0" } }, "node_modules/@parcel/transformer-js": { - "version": "2.10.2", - "resolved": "https://registry.npmjs.org/@parcel/transformer-js/-/transformer-js-2.10.2.tgz", - "integrity": "sha512-qcVLyikhSVf3oHhzReECkKdPU5uHVH4L0TC5O9ahlsq2IUTqR8Swq+9wUgUN0S2aYFTWreH05bQwBCNrLzF/eQ==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@parcel/transformer-js/-/transformer-js-2.11.0.tgz", + "integrity": "sha512-G1sv0n8/fJqHqwUs0iVnVdmRY0Kh8kWaDkuWcU/GJBHMGhUnLXKdNwxX2Av9UdBL14bU1nTINfr9qOfnQotXWg==", "dev": true, "dependencies": { - "@parcel/diagnostic": "2.10.2", - "@parcel/plugin": "2.10.2", - "@parcel/rust": "2.10.2", + "@parcel/diagnostic": "2.11.0", + "@parcel/plugin": "2.11.0", + "@parcel/rust": "2.11.0", "@parcel/source-map": "^2.1.1", - "@parcel/utils": "2.10.2", - "@parcel/workers": "2.10.2", + "@parcel/utils": "2.11.0", + "@parcel/workers": "2.11.0", "@swc/helpers": "^0.5.0", "browserslist": "^4.6.6", "nullthrows": "^1.1.1", @@ -2026,14 +2027,14 @@ }, "engines": { "node": ">= 12.0.0", - "parcel": "^2.10.2" + "parcel": "^2.11.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/parcel" }, "peerDependencies": { - "@parcel/core": "^2.10.2" + "@parcel/core": "^2.11.0" } }, "node_modules/@parcel/transformer-js/node_modules/semver": { @@ -2052,17 +2053,17 @@ } }, "node_modules/@parcel/transformer-json": { - "version": "2.10.2", - "resolved": "https://registry.npmjs.org/@parcel/transformer-json/-/transformer-json-2.10.2.tgz", - "integrity": "sha512-iVgwuaLNqH3jgoBzMds63zd9FULvYb/s/5Hq9JZJ6pCZrOQoPruurgAW8A/t2IE4CSFkDDNoFvRpjsq1WBsSvA==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@parcel/transformer-json/-/transformer-json-2.11.0.tgz", + "integrity": "sha512-Wt/wgSBaRWmPL4gpvjkV0bCBRxFOtsuLNzsm8vYA5poxTFhuLY+AoyQ8S2+xXU4VxwBfdppfIr2Ny3SwGs8xbQ==", "dev": true, "dependencies": { - "@parcel/plugin": "2.10.2", + "@parcel/plugin": "2.11.0", "json5": "^2.2.0" }, "engines": { "node": ">= 12.0.0", - "parcel": "^2.10.2" + "parcel": "^2.11.0" }, "funding": { "type": "opencollective", @@ -2070,15 +2071,15 @@ } }, "node_modules/@parcel/transformer-postcss": { - "version": "2.10.2", - "resolved": "https://registry.npmjs.org/@parcel/transformer-postcss/-/transformer-postcss-2.10.2.tgz", - "integrity": "sha512-2/ehCZgj5TOmsAIeGiLwrm6gO/M+X4fZ/O71MhpmXd8zr08j25T0VdSdw5UyopsBvtPYM7DI/FJCviZc7AigCg==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@parcel/transformer-postcss/-/transformer-postcss-2.11.0.tgz", + "integrity": "sha512-Ugy8XHBaUptGotsvwzq7gPCvkCopTIqqZ0JZ40Jmy9slGms8wnx06pNHA1Be/RcJwkJ2TbSu+7ncZdgmP5x5GQ==", "dev": true, "dependencies": { - "@parcel/diagnostic": "2.10.2", - "@parcel/plugin": "2.10.2", - "@parcel/rust": "2.10.2", - "@parcel/utils": "2.10.2", + "@parcel/diagnostic": "2.11.0", + "@parcel/plugin": "2.11.0", + "@parcel/rust": "2.11.0", + "@parcel/utils": "2.11.0", "clone": "^2.1.1", "nullthrows": "^1.1.1", "postcss-value-parser": "^4.2.0", @@ -2086,7 +2087,7 @@ }, "engines": { "node": ">= 12.0.0", - "parcel": "^2.10.2" + "parcel": "^2.11.0" }, "funding": { "type": "opencollective", @@ -2109,13 +2110,13 @@ } }, "node_modules/@parcel/transformer-posthtml": { - "version": "2.10.2", - "resolved": "https://registry.npmjs.org/@parcel/transformer-posthtml/-/transformer-posthtml-2.10.2.tgz", - "integrity": "sha512-0jvqqXfrLqPYBD62aWIMldDnZ9hO/esX6TGKNhAO+85ljeaS2+QZ5XLLb8uPJq8UXB4olhsoEGyGtJSByigndg==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@parcel/transformer-posthtml/-/transformer-posthtml-2.11.0.tgz", + "integrity": "sha512-dMK4p1RRAoIJEjK/Wz9GOLqwHqdD/VQDhMPk+6sUKp5zf2MhSohUstpp5gKsSZivCM3PS2f8k9rgroacJ/ReuA==", "dev": true, "dependencies": { - "@parcel/plugin": "2.10.2", - "@parcel/utils": "2.10.2", + "@parcel/plugin": "2.11.0", + "@parcel/utils": "2.11.0", "nullthrows": "^1.1.1", "posthtml": "^0.16.5", "posthtml-parser": "^0.10.1", @@ -2124,7 +2125,7 @@ }, "engines": { "node": ">= 12.0.0", - "parcel": "^2.10.2" + "parcel": "^2.11.0" }, "funding": { "type": "opencollective", @@ -2147,16 +2148,16 @@ } }, "node_modules/@parcel/transformer-raw": { - "version": "2.10.2", - "resolved": "https://registry.npmjs.org/@parcel/transformer-raw/-/transformer-raw-2.10.2.tgz", - "integrity": "sha512-h6SoIZ3u+Lq8z8SEEAVsHg4IQbUtkBWCln5SG4qfjGiclUDDA2hcG7grsP06Wb6/U7oEc8n0ksTtaG4dekYIxw==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@parcel/transformer-raw/-/transformer-raw-2.11.0.tgz", + "integrity": "sha512-2ltp3TgS+cxEqSM1vk5gDtJrYx4KMuRRtbSgSvkdldyOgPhflnLU3/HRz72hXSNGqYOV0/JN0+ocsfPnqR00ug==", "dev": true, "dependencies": { - "@parcel/plugin": "2.10.2" + "@parcel/plugin": "2.11.0" }, "engines": { "node": ">= 12.0.0", - "parcel": "^2.10.2" + "parcel": "^2.11.0" }, "funding": { "type": "opencollective", @@ -2164,18 +2165,18 @@ } }, "node_modules/@parcel/transformer-react-refresh-wrap": { - "version": "2.10.2", - "resolved": "https://registry.npmjs.org/@parcel/transformer-react-refresh-wrap/-/transformer-react-refresh-wrap-2.10.2.tgz", - "integrity": "sha512-1jpzaEbKwJnDUmF8Kgf3/XvT9BnUWIQ7FWkg5EL5kEx6tq2KLKdzD17nFigNj8fr2V+faX0Qa63h+e3OOpnMAA==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@parcel/transformer-react-refresh-wrap/-/transformer-react-refresh-wrap-2.11.0.tgz", + "integrity": "sha512-6pY0CdIgIpXC6XpsDWizf+zLgiuEsJ106HjWLwF7/R72BrvDhLPZ6jRu4UTrnd6bM89KahPw9fZZzjKoA5Efcw==", "dev": true, "dependencies": { - "@parcel/plugin": "2.10.2", - "@parcel/utils": "2.10.2", + "@parcel/plugin": "2.11.0", + "@parcel/utils": "2.11.0", "react-refresh": "^0.9.0" }, "engines": { "node": ">= 12.0.0", - "parcel": "^2.10.2" + "parcel": "^2.11.0" }, "funding": { "type": "opencollective", @@ -2183,18 +2184,18 @@ } }, "node_modules/@parcel/transformer-sass": { - "version": "2.10.2", - "resolved": "https://registry.npmjs.org/@parcel/transformer-sass/-/transformer-sass-2.10.2.tgz", - "integrity": "sha512-zBRnSrHVcdd8oqPGGXbweoo3UpOiu0XFwM4aq9jJipk5exKgkgStHdWxU4KK5ZOgdKoUzDQSZVTkJFw1rRVO+w==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@parcel/transformer-sass/-/transformer-sass-2.11.0.tgz", + "integrity": "sha512-caVIj1UANPgtlZOXcsBrQ++ouAy04hcq+wTwxJrf5t3XA4pdXQmkiLs5WIIUUGBp5hwkV6/BSwc4ht87MunA0g==", "dev": true, "dependencies": { - "@parcel/plugin": "2.10.2", + "@parcel/plugin": "2.11.0", "@parcel/source-map": "^2.1.1", "sass": "^1.38.0" }, "engines": { "node": ">= 12.0.0", - "parcel": "^2.10.2" + "parcel": "^2.11.0" }, "funding": { "type": "opencollective", @@ -2202,14 +2203,14 @@ } }, "node_modules/@parcel/transformer-svg": { - "version": "2.10.2", - "resolved": "https://registry.npmjs.org/@parcel/transformer-svg/-/transformer-svg-2.10.2.tgz", - "integrity": "sha512-SsCjiM9LZwGne3LUn+GuwhyqklAnr7CER6D0ozdpw+tPOeODsXZXNSktvtpE1Qbia61c/zdlU0yOEuhkeXz29w==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@parcel/transformer-svg/-/transformer-svg-2.11.0.tgz", + "integrity": "sha512-GrTNi04OoQSXsyrB7FqQPeYREscEXFhIBPkyQ0q7WDG/yYynWljiA0kwITCtMjPfv2EDVks292dvM3EcnERRIA==", "dev": true, "dependencies": { - "@parcel/diagnostic": "2.10.2", - "@parcel/plugin": "2.10.2", - "@parcel/rust": "2.10.2", + "@parcel/diagnostic": "2.11.0", + "@parcel/plugin": "2.11.0", + "@parcel/rust": "2.11.0", "nullthrows": "^1.1.1", "posthtml": "^0.16.5", "posthtml-parser": "^0.10.1", @@ -2218,7 +2219,7 @@ }, "engines": { "node": ">= 12.0.0", - "parcel": "^2.10.2" + "parcel": "^2.11.0" }, "funding": { "type": "opencollective", @@ -2241,31 +2242,31 @@ } }, "node_modules/@parcel/types": { - "version": "2.10.2", - "resolved": "https://registry.npmjs.org/@parcel/types/-/types-2.10.2.tgz", - "integrity": "sha512-fwHJu03ROcc4/Kr/00VfOQUD6aV+6FBLN5bDW1+Xblgrpkb1MSUGTWRuz0YH5X6xhkVigC1llCIR2uHSwA+YBg==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@parcel/types/-/types-2.11.0.tgz", + "integrity": "sha512-lN5XlfV9b1s2rli8q1LqsLtu+D4ZwNI3sKmNcL/3tohSfQcF2EgF+MaiANGo9VzXOzoWFHt4dqWjO4OcdyC5tg==", "dev": true, "dependencies": { - "@parcel/cache": "2.10.2", - "@parcel/diagnostic": "2.10.2", - "@parcel/fs": "2.10.2", - "@parcel/package-manager": "2.10.2", + "@parcel/cache": "2.11.0", + "@parcel/diagnostic": "2.11.0", + "@parcel/fs": "2.11.0", + "@parcel/package-manager": "2.11.0", "@parcel/source-map": "^2.1.1", - "@parcel/workers": "2.10.2", + "@parcel/workers": "2.11.0", "utility-types": "^3.10.0" } }, "node_modules/@parcel/utils": { - "version": "2.10.2", - "resolved": "https://registry.npmjs.org/@parcel/utils/-/utils-2.10.2.tgz", - "integrity": "sha512-XLUhTh0UkPB5n8r7agX9iIz9f+3JsBIVsmqltsJYX7n/GAa6EQtqrIYyZu8cEFeZlZw3zaf7wTmf9xJppdlj7Q==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@parcel/utils/-/utils-2.11.0.tgz", + "integrity": "sha512-AcL70cXlIyE7eQdvjQbYxegN5l+skqvlJllxTWg4YkIZe9p8Gmv74jLAeLWh5F+IGl5WRn0TSy9JhNJjIMQGwQ==", "dev": true, "dependencies": { - "@parcel/codeframe": "2.10.2", - "@parcel/diagnostic": "2.10.2", - "@parcel/logger": "2.10.2", - "@parcel/markdown-ansi": "2.10.2", - "@parcel/rust": "2.10.2", + "@parcel/codeframe": "2.11.0", + "@parcel/diagnostic": "2.11.0", + "@parcel/logger": "2.11.0", + "@parcel/markdown-ansi": "2.11.0", + "@parcel/rust": "2.11.0", "@parcel/source-map": "^2.1.1", "chalk": "^4.1.0", "nullthrows": "^1.1.1" @@ -2299,16 +2300,16 @@ } }, "node_modules/@parcel/workers": { - "version": "2.10.2", - "resolved": "https://registry.npmjs.org/@parcel/workers/-/workers-2.10.2.tgz", - "integrity": "sha512-LvifdeORXKGGyhwOwnYxn1AsJ5u6Ihk2RJUxsVA4WYEjz2PSsmLAUDdp48ovssSMnTb9P2g4RrbEG1mJjYtBGA==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@parcel/workers/-/workers-2.11.0.tgz", + "integrity": "sha512-wjybqdSy6Nk0N9iBGsFcp7739W2zvx0WGfVxPVShqhz46pIkPOiFF/iSn+kFu5EmMKTRWeUif42+a6rRZ7pCnQ==", "dev": true, "dependencies": { - "@parcel/diagnostic": "2.10.2", - "@parcel/logger": "2.10.2", - "@parcel/profiler": "2.10.2", - "@parcel/types": "2.10.2", - "@parcel/utils": "2.10.2", + "@parcel/diagnostic": "2.11.0", + "@parcel/logger": "2.11.0", + "@parcel/profiler": "2.11.0", + "@parcel/types": "2.11.0", + "@parcel/utils": "2.11.0", "nullthrows": "^1.1.1" }, "engines": { @@ -2319,7 +2320,7 @@ "url": "https://opencollective.com/parcel" }, "peerDependencies": { - "@parcel/core": "^2.10.2" + "@parcel/core": "^2.11.0" } }, "node_modules/@pkgjs/parseargs": { @@ -2374,9 +2375,9 @@ "dev": true }, "node_modules/@swc/core": { - "version": "1.3.95", - "resolved": "https://registry.npmjs.org/@swc/core/-/core-1.3.95.tgz", - "integrity": "sha512-PMrNeuqIusq9DPDooV3FfNEbZuTu5jKAc04N3Hm6Uk2Fl49cqElLFQ4xvl4qDmVDz97n3n/C1RE0/f6WyGPEiA==", + "version": "1.3.107", + "resolved": "https://registry.npmjs.org/@swc/core/-/core-1.3.107.tgz", + "integrity": "sha512-zKhqDyFcTsyLIYK1iEmavljZnf4CCor5pF52UzLAz4B6Nu/4GLU+2LQVAf+oRHjusG39PTPjd2AlRT3f3QWfsQ==", "dev": true, "hasInstallScript": true, "dependencies": { @@ -2391,16 +2392,16 @@ "url": "https://opencollective.com/swc" }, "optionalDependencies": { - "@swc/core-darwin-arm64": "1.3.95", - "@swc/core-darwin-x64": "1.3.95", - "@swc/core-linux-arm-gnueabihf": "1.3.95", - "@swc/core-linux-arm64-gnu": "1.3.95", - "@swc/core-linux-arm64-musl": "1.3.95", - "@swc/core-linux-x64-gnu": "1.3.95", - "@swc/core-linux-x64-musl": "1.3.95", - "@swc/core-win32-arm64-msvc": "1.3.95", - "@swc/core-win32-ia32-msvc": "1.3.95", - "@swc/core-win32-x64-msvc": "1.3.95" + "@swc/core-darwin-arm64": "1.3.107", + "@swc/core-darwin-x64": "1.3.107", + "@swc/core-linux-arm-gnueabihf": "1.3.107", + "@swc/core-linux-arm64-gnu": "1.3.107", + "@swc/core-linux-arm64-musl": "1.3.107", + "@swc/core-linux-x64-gnu": "1.3.107", + "@swc/core-linux-x64-musl": "1.3.107", + "@swc/core-win32-arm64-msvc": "1.3.107", + "@swc/core-win32-ia32-msvc": "1.3.107", + "@swc/core-win32-x64-msvc": "1.3.107" }, "peerDependencies": { "@swc/helpers": "^0.5.0" @@ -2412,9 +2413,9 @@ } }, "node_modules/@swc/core-darwin-arm64": { - "version": "1.3.95", - "resolved": "https://registry.npmjs.org/@swc/core-darwin-arm64/-/core-darwin-arm64-1.3.95.tgz", - "integrity": "sha512-VAuBAP3MNetO/yBIBzvorUXq7lUBwhfpJxYViSxyluMwtoQDhE/XWN598TWMwMl1ZuImb56d7eUsuFdjgY7pJw==", + "version": "1.3.107", + "resolved": "https://registry.npmjs.org/@swc/core-darwin-arm64/-/core-darwin-arm64-1.3.107.tgz", + "integrity": "sha512-47tD/5vSXWxPd0j/ZllyQUg4bqalbQTsmqSw0J4dDdS82MWqCAwUErUrAZPRjBkjNQ6Kmrf5rpCWaGTtPw+ngw==", "cpu": [ "arm64" ], @@ -2428,9 +2429,9 @@ } }, "node_modules/@swc/core-darwin-x64": { - "version": "1.3.95", - "resolved": "https://registry.npmjs.org/@swc/core-darwin-x64/-/core-darwin-x64-1.3.95.tgz", - "integrity": "sha512-20vF2rvUsN98zGLZc+dsEdHvLoCuiYq/1B+TDeE4oolgTFDmI1jKO+m44PzWjYtKGU9QR95sZ6r/uec0QC5O4Q==", + "version": "1.3.107", + "resolved": "https://registry.npmjs.org/@swc/core-darwin-x64/-/core-darwin-x64-1.3.107.tgz", + "integrity": "sha512-hwiLJ2ulNkBGAh1m1eTfeY1417OAYbRGcb/iGsJ+LuVLvKAhU/itzsl535CvcwAlt2LayeCFfcI8gdeOLeZa9A==", "cpu": [ "x64" ], @@ -2444,9 +2445,9 @@ } }, "node_modules/@swc/core-linux-arm-gnueabihf": { - "version": "1.3.95", - "resolved": "https://registry.npmjs.org/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.3.95.tgz", - "integrity": "sha512-oEudEM8PST1MRNGs+zu0cx5i9uP8TsLE4/L9HHrS07Ck0RJ3DCj3O2fU832nmLe2QxnAGPwBpSO9FntLfOiWEQ==", + "version": "1.3.107", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.3.107.tgz", + "integrity": "sha512-I2wzcC0KXqh0OwymCmYwNRgZ9nxX7DWnOOStJXV3pS0uB83TXAkmqd7wvMBuIl9qu4Hfomi9aDM7IlEEn9tumQ==", "cpu": [ "arm" ], @@ -2460,9 +2461,9 @@ } }, "node_modules/@swc/core-linux-arm64-gnu": { - "version": "1.3.95", - "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.3.95.tgz", - "integrity": "sha512-pIhFI+cuC1aYg+0NAPxwT/VRb32f2ia8oGxUjQR6aJg65gLkUYQzdwuUmpMtFR2WVf7WVFYxUnjo4UyMuyh3ng==", + "version": "1.3.107", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.3.107.tgz", + "integrity": "sha512-HWgnn7JORYlOYnGsdunpSF8A+BCZKPLzLtEUA27/M/ZuANcMZabKL9Zurt7XQXq888uJFAt98Gy+59PU90aHKg==", "cpu": [ "arm64" ], @@ -2476,9 +2477,9 @@ } }, "node_modules/@swc/core-linux-arm64-musl": { - "version": "1.3.95", - "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.3.95.tgz", - "integrity": "sha512-ZpbTr+QZDT4OPJfjPAmScqdKKaT+wGurvMU5AhxLaf85DuL8HwUwwlL0n1oLieLc47DwIJEMuKQkYhXMqmJHlg==", + "version": "1.3.107", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.3.107.tgz", + "integrity": "sha512-vfPF74cWfAm8hyhS8yvYI94ucMHIo8xIYU+oFOW9uvDlGQRgnUf/6DEVbLyt/3yfX5723Ln57U8uiMALbX5Pyw==", "cpu": [ "arm64" ], @@ -2492,9 +2493,9 @@ } }, "node_modules/@swc/core-linux-x64-gnu": { - "version": "1.3.95", - "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.3.95.tgz", - "integrity": "sha512-n9SuHEFtdfSJ+sHdNXNRuIOVprB8nbsz+08apKfdo4lEKq6IIPBBAk5kVhPhkjmg2dFVHVo4Tr/OHXM1tzWCCw==", + "version": "1.3.107", + "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.3.107.tgz", + "integrity": "sha512-uBVNhIg0ip8rH9OnOsCARUFZ3Mq3tbPHxtmWk9uAa5u8jQwGWeBx5+nTHpDOVd3YxKb6+5xDEI/edeeLpha/9g==", "cpu": [ "x64" ], @@ -2508,9 +2509,9 @@ } }, "node_modules/@swc/core-linux-x64-musl": { - "version": "1.3.95", - "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.3.95.tgz", - "integrity": "sha512-L1JrVlsXU3LC0WwmVnMK9HrOT2uhHahAoPNMJnZQpc18a0paO9fqifPG8M/HjNRffMUXR199G/phJsf326UvVg==", + "version": "1.3.107", + "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.3.107.tgz", + "integrity": "sha512-mvACkUvzSIB12q1H5JtabWATbk3AG+pQgXEN95AmEX2ZA5gbP9+B+mijsg7Sd/3tboHr7ZHLz/q3SHTvdFJrEw==", "cpu": [ "x64" ], @@ -2524,9 +2525,9 @@ } }, "node_modules/@swc/core-win32-arm64-msvc": { - "version": "1.3.95", - "resolved": "https://registry.npmjs.org/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.3.95.tgz", - "integrity": "sha512-YaP4x/aZbUyNdqCBpC2zL8b8n58MEpOUpmOIZK6G1SxGi+2ENht7gs7+iXpWPc0sy7X3YPKmSWMAuui0h8lgAA==", + "version": "1.3.107", + "resolved": "https://registry.npmjs.org/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.3.107.tgz", + "integrity": "sha512-J3P14Ngy/1qtapzbguEH41kY109t6DFxfbK4Ntz9dOWNuVY3o9/RTB841ctnJk0ZHEG+BjfCJjsD2n8H5HcaOA==", "cpu": [ "arm64" ], @@ -2540,9 +2541,9 @@ } }, "node_modules/@swc/core-win32-ia32-msvc": { - "version": "1.3.95", - "resolved": "https://registry.npmjs.org/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.3.95.tgz", - "integrity": "sha512-w0u3HI916zT4BC/57gOd+AwAEjXeUlQbGJ9H4p/gzs1zkSHtoDQghVUNy3n/ZKp9KFod/95cA8mbVF9t1+6epQ==", + "version": "1.3.107", + "resolved": "https://registry.npmjs.org/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.3.107.tgz", + "integrity": "sha512-ZBUtgyjTHlz8TPJh7kfwwwFma+ktr6OccB1oXC8fMSopD0AxVnQasgun3l3099wIsAB9eEsJDQ/3lDkOLs1gBA==", "cpu": [ "ia32" ], @@ -2556,9 +2557,9 @@ } }, "node_modules/@swc/core-win32-x64-msvc": { - "version": "1.3.95", - "resolved": "https://registry.npmjs.org/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.3.95.tgz", - "integrity": "sha512-5RGnMt0S6gg4Gc6QtPUJ3Qs9Un4sKqccEzgH/tj7V/DVTJwKdnBKxFZfgQ34OR2Zpz7zGOn889xwsFVXspVWNA==", + "version": "1.3.107", + "resolved": "https://registry.npmjs.org/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.3.107.tgz", + "integrity": "sha512-Eyzo2XRqWOxqhE1gk9h7LWmUf4Bp4Xn2Ttb0ayAXFp6YSTxQIThXcT9kipXZqcpxcmDwoq8iWbbf2P8XL743EA==", "cpu": [ "x64" ], @@ -2811,22 +2812,23 @@ "dev": true }, "node_modules/axe-core": { - "version": "4.8.2", - "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.8.2.tgz", - "integrity": "sha512-/dlp0fxyM3R8YW7MFzaHWXrf4zzbr0vaYb23VBFCl83R7nWNPg/yaQw2Dc8jzCMmDVLhSdzH8MjrsuIUuvX+6g==", + "version": "4.8.3", + "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.8.3.tgz", + "integrity": "sha512-d5ZQHPSPkF9Tw+yfyDcRoUOc4g/8UloJJe5J8m4L5+c7AtDdjDLRxew/knnI4CxvtdxEUVgWz4x3OIQUIFiMfw==", "dev": true, "engines": { "node": ">=4" } }, "node_modules/axios": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.27.2.tgz", - "integrity": "sha512-t+yRIyySRTp/wua5xEr+z1q60QmLq8ABsS5O9Me1AsE5dfKqgnCFzwiCZZ/cGNd1lq4/7akDWMxdhVlucjmnOQ==", + "version": "1.6.7", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.6.7.tgz", + "integrity": "sha512-/hDJGff6/c7u0hDkvkGxR/oy6CbCs8ziCsC7SqmhjfozqiJGc8Z11wrv9z9lYfY4K8l+H9TpjcMDX0xOZmx+RA==", "dev": true, "dependencies": { - "follow-redirects": "^1.14.9", - "form-data": "^4.0.0" + "follow-redirects": "^1.15.4", + "form-data": "^4.0.0", + "proxy-from-env": "^1.1.0" } }, "node_modules/axios/node_modules/form-data": { @@ -3124,6 +3126,18 @@ "node": ">=0.10.0" } }, + "node_modules/cli-progress": { + "version": "3.12.0", + "resolved": "https://registry.npmjs.org/cli-progress/-/cli-progress-3.12.0.tgz", + "integrity": "sha512-tRkV3HJ1ASwm19THiiLIXLO7Im7wlTuKnvkYaTkyoAPefqjNg7W7DHKUlGRxy9vxDvbyCYQkQozvptuMkGCg8A==", + "dev": true, + "dependencies": { + "string-width": "^4.2.3" + }, + "engines": { + "node": ">=4" + } + }, "node_modules/cli-table3": { "version": "0.6.3", "resolved": "https://registry.npmjs.org/cli-table3/-/cli-table3-0.6.3.tgz", @@ -3406,15 +3420,6 @@ "node": ">= 8" } }, - "node_modules/css-color-names": { - "version": "0.0.4", - "resolved": "https://registry.npmjs.org/css-color-names/-/css-color-names-0.0.4.tgz", - "integrity": "sha512-zj5D7X1U2h2zsXOAM8EyUREBnnts6H+Jm+d1M2DbiQQcUtnqgQsMrdo8JW9R80YFUmIdBZeMu5wvYM7hcgWP/Q==", - "dev": true, - "engines": { - "node": "*" - } - }, "node_modules/css-functions-list": { "version": "3.2.1", "resolved": "https://registry.npmjs.org/css-functions-list/-/css-functions-list-3.2.1.tgz", @@ -3505,12 +3510,6 @@ "url": "https://github.com/fb55/entities?sponsor=1" } }, - "node_modules/css-shorthand-properties": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/css-shorthand-properties/-/css-shorthand-properties-1.1.1.tgz", - "integrity": "sha512-Md+Juc7M3uOdbAFwOYlTrccIZ7oCFuzrhKYQjdeUEW/sE1hv17Jp/Bws+ReOPpGVBTYCBoYo+G17V5Qo8QQ75A==", - "dev": true - }, "node_modules/css-tree": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-2.3.1.tgz", @@ -3524,23 +3523,6 @@ "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0" } }, - "node_modules/css-values": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/css-values/-/css-values-0.1.0.tgz", - "integrity": "sha512-hQ6JSn4t/70aOCvdlP9zTOsFFUifMSKWz3PX7rz5NZl+uEHCqTFVJJvfP07isErCGEVHYoc8Orja8wLKZRvOeg==", - "dev": true, - "dependencies": { - "css-color-names": "0.0.4", - "ends-with": "^0.2.0", - "postcss-value-parser": "^3.3.0" - } - }, - "node_modules/css-values/node_modules/postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "dev": true - }, "node_modules/css-what": { "version": "6.1.0", "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", @@ -4398,15 +4380,6 @@ "once": "^1.4.0" } }, - "node_modules/ends-with": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/ends-with/-/ends-with-0.2.0.tgz", - "integrity": "sha512-lRppY4dK3VkqBdR242sKcAJeYc8Gf/DhoX9AWvWI2RzccmLnqBQfwm2k4oSDv5MPDjUqawCauXhZkyWxkVhRsg==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/entities": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/entities/-/entities-3.0.1.tgz", @@ -4760,9 +4733,9 @@ "dev": true }, "node_modules/follow-redirects": { - "version": "1.15.2", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz", - "integrity": "sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==", + "version": "1.15.5", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.5.tgz", + "integrity": "sha512-vSFWUON1B+yAw1VN4xMfxgn5fTUiaOzAJCKBwIIgT/+7CuGy9+r+5gITvP62j3RmaD5Ph65UaERdOSRGUzZtgw==", "dev": true, "funding": [ { @@ -5026,9 +4999,9 @@ } }, "node_modules/globals": { - "version": "13.23.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.23.0.tgz", - "integrity": "sha512-XAmF0RjlrjY23MA51q3HltdlGxUpXPvg0GioKiD9X6HD28iMjo2dKC8Vqwm7lne4GNr78+RHTfliktR6ZH09wA==", + "version": "13.24.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", + "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", "dev": true, "dependencies": { "type-fest": "^0.20.2" @@ -5705,9 +5678,9 @@ } }, "node_modules/lightningcss": { - "version": "1.22.0", - "resolved": "https://registry.npmjs.org/lightningcss/-/lightningcss-1.22.0.tgz", - "integrity": "sha512-+z0qvwRVzs4XGRXelnWRNwqsXUx8k3bSkbP8vD42kYKSk3z9OM2P3e/gagT7ei/gwh8DTS80LZOFZV6lm8Z8Fg==", + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/lightningcss/-/lightningcss-1.23.0.tgz", + "integrity": "sha512-SEArWKMHhqn/0QzOtclIwH5pXIYQOUEkF8DgICd/105O+GCgd7jxjNod/QPnBCSWvpRHQBGVz5fQ9uScby03zA==", "dev": true, "dependencies": { "detect-libc": "^1.0.3" @@ -5720,21 +5693,21 @@ "url": "https://opencollective.com/parcel" }, "optionalDependencies": { - "lightningcss-darwin-arm64": "1.22.0", - "lightningcss-darwin-x64": "1.22.0", - "lightningcss-freebsd-x64": "1.22.0", - "lightningcss-linux-arm-gnueabihf": "1.22.0", - "lightningcss-linux-arm64-gnu": "1.22.0", - "lightningcss-linux-arm64-musl": "1.22.0", - "lightningcss-linux-x64-gnu": "1.22.0", - "lightningcss-linux-x64-musl": "1.22.0", - "lightningcss-win32-x64-msvc": "1.22.0" + "lightningcss-darwin-arm64": "1.23.0", + "lightningcss-darwin-x64": "1.23.0", + "lightningcss-freebsd-x64": "1.23.0", + "lightningcss-linux-arm-gnueabihf": "1.23.0", + "lightningcss-linux-arm64-gnu": "1.23.0", + "lightningcss-linux-arm64-musl": "1.23.0", + "lightningcss-linux-x64-gnu": "1.23.0", + "lightningcss-linux-x64-musl": "1.23.0", + "lightningcss-win32-x64-msvc": "1.23.0" } }, "node_modules/lightningcss-darwin-arm64": { - "version": "1.22.0", - "resolved": "https://registry.npmjs.org/lightningcss-darwin-arm64/-/lightningcss-darwin-arm64-1.22.0.tgz", - "integrity": "sha512-aH2be3nNny+It5YEVm8tBSSdRlBVWQV8m2oJ7dESiYRzyY/E/bQUe2xlw5caaMuhlM9aoTMtOH25yzMhir0qPg==", + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/lightningcss-darwin-arm64/-/lightningcss-darwin-arm64-1.23.0.tgz", + "integrity": "sha512-kl4Pk3Q2lnE6AJ7Qaij47KNEfY2/UXRZBT/zqGA24B8qwkgllr/j7rclKOf1axcslNXvvUdztjo4Xqh39Yq1aA==", "cpu": [ "arm64" ], @@ -5752,9 +5725,9 @@ } }, "node_modules/lightningcss-darwin-x64": { - "version": "1.22.0", - "resolved": "https://registry.npmjs.org/lightningcss-darwin-x64/-/lightningcss-darwin-x64-1.22.0.tgz", - "integrity": "sha512-9KHRFA0Y6mNxRHeoQMp0YaI0R0O2kOgUlYPRjuasU4d+pI8NRhVn9bt0yX9VPs5ibWX1RbDViSPtGJvYYrfVAQ==", + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/lightningcss-darwin-x64/-/lightningcss-darwin-x64-1.23.0.tgz", + "integrity": "sha512-KeRFCNoYfDdcolcFXvokVw+PXCapd2yHS1Diko1z1BhRz/nQuD5XyZmxjWdhmhN/zj5sH8YvWsp0/lPLVzqKpg==", "cpu": [ "x64" ], @@ -5772,9 +5745,9 @@ } }, "node_modules/lightningcss-freebsd-x64": { - "version": "1.22.0", - "resolved": "https://registry.npmjs.org/lightningcss-freebsd-x64/-/lightningcss-freebsd-x64-1.22.0.tgz", - "integrity": "sha512-xaYL3xperGwD85rQioDb52ozF3NAJb+9wrge3jD9lxGffplu0Mn35rXMptB8Uc2N9Mw1i3Bvl7+z1evlqVl7ww==", + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/lightningcss-freebsd-x64/-/lightningcss-freebsd-x64-1.23.0.tgz", + "integrity": "sha512-xhnhf0bWPuZxcqknvMDRFFo2TInrmQRWZGB0f6YoAsZX8Y+epfjHeeOIGCfAmgF0DgZxHwYc8mIR5tQU9/+ROA==", "cpu": [ "x64" ], @@ -5792,9 +5765,9 @@ } }, "node_modules/lightningcss-linux-arm-gnueabihf": { - "version": "1.22.0", - "resolved": "https://registry.npmjs.org/lightningcss-linux-arm-gnueabihf/-/lightningcss-linux-arm-gnueabihf-1.22.0.tgz", - "integrity": "sha512-epQGvXIjOuxrZpMpMnRjK54ZqzhiHhCPLtHvw2fb6NeK2kK9YtF0wqmeTBiQ1AkbWfnnXGTstYaFNiadNK+StQ==", + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/lightningcss-linux-arm-gnueabihf/-/lightningcss-linux-arm-gnueabihf-1.23.0.tgz", + "integrity": "sha512-fBamf/bULvmWft9uuX+bZske236pUZEoUlaHNBjnueaCTJ/xd8eXgb0cEc7S5o0Nn6kxlauMBnqJpF70Bgq3zg==", "cpu": [ "arm" ], @@ -5812,9 +5785,9 @@ } }, "node_modules/lightningcss-linux-arm64-gnu": { - "version": "1.22.0", - "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-gnu/-/lightningcss-linux-arm64-gnu-1.22.0.tgz", - "integrity": "sha512-AArGtKSY4DGTA8xP8SDyNyKtpsUl1Rzq6FW4JomeyUQ4nBrR71uPChksTpj3gmWuGhZeRKLeCUI1DBid/zhChg==", + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-gnu/-/lightningcss-linux-arm64-gnu-1.23.0.tgz", + "integrity": "sha512-RS7sY77yVLOmZD6xW2uEHByYHhQi5JYWmgVumYY85BfNoVI3DupXSlzbw+b45A9NnVKq45+oXkiN6ouMMtTwfg==", "cpu": [ "arm64" ], @@ -5832,9 +5805,9 @@ } }, "node_modules/lightningcss-linux-arm64-musl": { - "version": "1.22.0", - "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-musl/-/lightningcss-linux-arm64-musl-1.22.0.tgz", - "integrity": "sha512-RRraNgP8hnBPhInTTUdlFm+z16C/ghbxBG51Sw00hd7HUyKmEUKRozyc5od+/N6pOrX/bIh5vIbtMXIxsos0lg==", + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-musl/-/lightningcss-linux-arm64-musl-1.23.0.tgz", + "integrity": "sha512-cU00LGb6GUXCwof6ACgSMKo3q7XYbsyTj0WsKHLi1nw7pV0NCq8nFTn6ZRBYLoKiV8t+jWl0Hv8KkgymmK5L5g==", "cpu": [ "arm64" ], @@ -5852,9 +5825,9 @@ } }, "node_modules/lightningcss-linux-x64-gnu": { - "version": "1.22.0", - "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-gnu/-/lightningcss-linux-x64-gnu-1.22.0.tgz", - "integrity": "sha512-grdrhYGRi2KrR+bsXJVI0myRADqyA7ekprGxiuK5QRNkv7kj3Yq1fERDNyzZvjisHwKUi29sYMClscbtl+/Zpw==", + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-gnu/-/lightningcss-linux-x64-gnu-1.23.0.tgz", + "integrity": "sha512-q4jdx5+5NfB0/qMbXbOmuC6oo7caPnFghJbIAV90cXZqgV8Am3miZhC4p+sQVdacqxfd+3nrle4C8icR3p1AYw==", "cpu": [ "x64" ], @@ -5872,9 +5845,9 @@ } }, "node_modules/lightningcss-linux-x64-musl": { - "version": "1.22.0", - "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-musl/-/lightningcss-linux-x64-musl-1.22.0.tgz", - "integrity": "sha512-t5f90X+iQUtIyR56oXIHMBUyQFX/zwmPt72E6Dane3P8KNGlkijTg2I75XVQS860gNoEFzV7Mm5ArRRA7u5CAQ==", + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-musl/-/lightningcss-linux-x64-musl-1.23.0.tgz", + "integrity": "sha512-G9Ri3qpmF4qef2CV/80dADHKXRAQeQXpQTLx7AiQrBYQHqBjB75oxqj06FCIe5g4hNCqLPnM9fsO4CyiT1sFSQ==", "cpu": [ "x64" ], @@ -5892,9 +5865,9 @@ } }, "node_modules/lightningcss-win32-x64-msvc": { - "version": "1.22.0", - "resolved": "https://registry.npmjs.org/lightningcss-win32-x64-msvc/-/lightningcss-win32-x64-msvc-1.22.0.tgz", - "integrity": "sha512-64HTDtOOZE9PUCZJiZZQpyqXBbdby1lnztBccnqh+NtbKxjnGzP92R2ngcgeuqMPecMNqNWxgoWgTGpC+yN5Sw==", + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/lightningcss-win32-x64-msvc/-/lightningcss-win32-x64-msvc-1.23.0.tgz", + "integrity": "sha512-1rcBDJLU+obPPJM6qR5fgBUiCdZwZLafZM5f9kwjFLkb/UBNIzmae39uCSmh71nzPCTXZqHbvwu23OWnWEz+eg==", "cpu": [ "x64" ], @@ -6601,9 +6574,9 @@ } }, "node_modules/nanoid": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.6.tgz", - "integrity": "sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==", + "version": "3.3.7", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", + "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==", "dev": true, "funding": [ { @@ -6873,9 +6846,9 @@ } }, "node_modules/ordered-binary": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/ordered-binary/-/ordered-binary-1.4.1.tgz", - "integrity": "sha512-9LtiGlPy982CsgxZvJGNNp2/NnrgEr6EAyN3iIEP3/8vd3YLgAZQHbQ75ZrkfBRGrNg37Dk3U6tuVb+B4Xfslg==", + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/ordered-binary/-/ordered-binary-1.5.1.tgz", + "integrity": "sha512-5VyHfHY3cd0iza71JepYG50My+YUbrFtGoUz2ooEydPyPM7Aai/JW098juLr+RG6+rDJuzNNTsEQu2DZa1A41A==", "dev": true }, "node_modules/ospath": { @@ -6924,22 +6897,22 @@ } }, "node_modules/parcel": { - "version": "2.10.2", - "resolved": "https://registry.npmjs.org/parcel/-/parcel-2.10.2.tgz", - "integrity": "sha512-wRvsK9v12Nt2/EIjLp/uvxd3UeRSN9DRoSofDn21Ot+rEw4e98ODvbdSHi6dYr82s4oo6mF823ACmOp1hXd4wg==", - "dev": true, - "dependencies": { - "@parcel/config-default": "2.10.2", - "@parcel/core": "2.10.2", - "@parcel/diagnostic": "2.10.2", - "@parcel/events": "2.10.2", - "@parcel/fs": "2.10.2", - "@parcel/logger": "2.10.2", - "@parcel/package-manager": "2.10.2", - "@parcel/reporter-cli": "2.10.2", - "@parcel/reporter-dev-server": "2.10.2", - "@parcel/reporter-tracer": "2.10.2", - "@parcel/utils": "2.10.2", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/parcel/-/parcel-2.11.0.tgz", + "integrity": "sha512-H/RI1/DmuOkL8RuG/EpNPvtzrbF+7jA/R56ydEEm+lqFbYktKB4COR7JXdHkZXRgbSJyimrFB8d0r9+SaRnj0Q==", + "dev": true, + "dependencies": { + "@parcel/config-default": "2.11.0", + "@parcel/core": "2.11.0", + "@parcel/diagnostic": "2.11.0", + "@parcel/events": "2.11.0", + "@parcel/fs": "2.11.0", + "@parcel/logger": "2.11.0", + "@parcel/package-manager": "2.11.0", + "@parcel/reporter-cli": "2.11.0", + "@parcel/reporter-dev-server": "2.11.0", + "@parcel/reporter-tracer": "2.11.0", + "@parcel/utils": "2.11.0", "chalk": "^4.1.0", "commander": "^7.0.0", "get-port": "^4.2.0" @@ -7104,9 +7077,9 @@ } }, "node_modules/postcss": { - "version": "8.4.31", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz", - "integrity": "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==", + "version": "8.4.33", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.33.tgz", + "integrity": "sha512-Kkpbhhdjw2qQs2O2DGX+8m5OVqEcbB9HRBvuYM9pgrjEFUg30A9LmXNlTAUj4S9kgtGyrMbTzVjH7E+s5Re2yg==", "dev": true, "funding": [ { @@ -7123,7 +7096,7 @@ } ], "dependencies": { - "nanoid": "^3.3.6", + "nanoid": "^3.3.7", "picocolors": "^1.0.0", "source-map-js": "^1.0.2" }, @@ -7263,9 +7236,9 @@ } }, "node_modules/prettier": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.1.0.tgz", - "integrity": "sha512-TQLvXjq5IAibjh8EpBIkNKxO749UEWABoiIZehEPiY4GNpVdhaFKqSTu+QrlU6D2dPAfubRmtJTi4K4YkQ5eXw==", + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.2.4.tgz", + "integrity": "sha512-FWu1oLHKCrtpO1ypU6J0SbK2d9Ckwysq6bHj/uaCP26DxrPpppCLQRGVuqAxSTvhF00AcvDRyYrLNW7ocBhFFQ==", "dev": true, "bin": { "prettier": "bin/prettier.cjs" @@ -7295,6 +7268,12 @@ "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", "dev": true }, + "node_modules/proxy-from-env": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", + "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==", + "dev": true + }, "node_modules/ps-tree": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/ps-tree/-/ps-tree-1.2.0.tgz", @@ -7801,15 +7780,6 @@ "node": ">=8" } }, - "node_modules/shortcss": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/shortcss/-/shortcss-0.1.3.tgz", - "integrity": "sha512-MIOoTd99CIGTrAuGiMUx9VZrnrZmWzEHuKbGM/w+ia/w98cezhlN9w4aQOVSxswdoqkUnWrMw3tThOi3sevZAg==", - "dev": true, - "dependencies": { - "css-shorthand-properties": "^1.0.0" - } - }, "node_modules/side-channel": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", @@ -7980,9 +7950,9 @@ "dev": true }, "node_modules/start-server-and-test": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/start-server-and-test/-/start-server-and-test-2.0.2.tgz", - "integrity": "sha512-4sGS2QmETUwqeBUqtTLP7OqXp3PdDnevaWlPlrFQgn8+7uCgVg4Do7/H/ZhAAVyvnL3DqKyANhnLgcgxrjhrMA==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/start-server-and-test/-/start-server-and-test-2.0.3.tgz", + "integrity": "sha512-QsVObjfjFZKJE6CS6bSKNwWZCKBG6975/jKRPPGFfFh+yOQglSeGXiNWjzgQNXdphcBI9nXbyso9tPfX4YAUhg==", "dev": true, "dependencies": { "arg": "^5.0.2", @@ -7992,7 +7962,7 @@ "execa": "5.1.1", "lazy-ass": "1.6.0", "ps-tree": "1.2.0", - "wait-on": "7.1.0" + "wait-on": "7.2.0" }, "bin": { "server-test": "src/bin/start.js", @@ -8310,59 +8280,58 @@ } }, "node_modules/stylelint-declaration-block-no-ignored-properties": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/stylelint-declaration-block-no-ignored-properties/-/stylelint-declaration-block-no-ignored-properties-2.7.0.tgz", - "integrity": "sha512-44SpI9+9Oc1ICuwwRfwS/3npQ2jPobDSTnwWdNgZGryGqQCp17CgEIWjCv1BgUOSzND3RqywNCNLKvO1AOxbfg==", + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/stylelint-declaration-block-no-ignored-properties/-/stylelint-declaration-block-no-ignored-properties-2.8.0.tgz", + "integrity": "sha512-Ws8Cav7Y+SPN0JsV407LrnNXWOrqGjxShf+37GBtnU/C58Syve9c0+I/xpLcFOosST3ternykn3Lp77f3ITnFw==", "dev": true, "engines": { "node": ">=6" }, "peerDependencies": { - "stylelint": "^7.0.0 || ^8.0.0 || ^9.0.0 || ^10.0.0 || ^11.0.0 || ^12.0.0 || ^13.0.0 || ^14.0.0 || ^15.0.0" + "stylelint": "^7.0.0 || ^8.0.0 || ^9.0.0 || ^10.0.0 || ^11.0.0 || ^12.0.0 || ^13.0.0 || ^14.0.0 || ^15.0.0 || ^16.0.0" } }, "node_modules/stylelint-declaration-strict-value": { - "version": "1.9.2", - "resolved": "https://registry.npmjs.org/stylelint-declaration-strict-value/-/stylelint-declaration-strict-value-1.9.2.tgz", - "integrity": "sha512-Z/2yr7g4tq2iGOUWhZLzHL2g2GJYJGcPkfjDh++zI8ukLxW0tcLGJjo64XYCDjja6YcECPDUWbpN+OAoAtAYvw==", + "version": "1.10.4", + "resolved": "https://registry.npmjs.org/stylelint-declaration-strict-value/-/stylelint-declaration-strict-value-1.10.4.tgz", + "integrity": "sha512-unOEftKCOb78Zr+WStqyVj9V1rCdUo+PJI3vFPiHPdu+O9o71K9Mu+txc6VDF7gBXyTTMHbbjIvHk3VNzuixzQ==", "dev": true, - "dependencies": { - "css-values": "^0.1.0", - "shortcss": "^0.1.3" + "engines": { + "node": ">=18.12.0" }, "peerDependencies": { - "stylelint": ">=7 <=15" + "stylelint": ">=7 <=16" } }, "node_modules/stylelint-high-performance-animation": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/stylelint-high-performance-animation/-/stylelint-high-performance-animation-1.9.0.tgz", - "integrity": "sha512-tUN8YqIRFRCsMLLI1wnyODP6+H5Lc63NEaUcOt1lqNaEEgd0tGgA4miY2JuL8eSHvgmGkmZPZTn1Dgek05O3uQ==", + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/stylelint-high-performance-animation/-/stylelint-high-performance-animation-1.10.0.tgz", + "integrity": "sha512-YzNI+E6taN8pwgaM0INazRg4tw23VA17KNMKUVdOeohpnpSyJLBnLVT9NkRcaCFLodK/67smS5VZK+Qe4Ohrvw==", "dev": true, "dependencies": { "postcss-value-parser": "^4.2.0" }, "peerDependencies": { - "stylelint": "^7.0.0 || ^8.0.0 || ^9.0.0 || ^10.0.0 || ^11.0.0 || ^12.0.0 || ^13.0.0 || ^14.0.0 || ^15.0.0" + "stylelint": "^7.0.0 || ^8.0.0 || ^9.0.0 || ^10.0.0 || ^11.0.0 || ^12.0.0 || ^13.0.0 || ^14.0.0 || ^15.0.0 || ^16.0.0" } }, "node_modules/stylelint-order": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/stylelint-order/-/stylelint-order-6.0.3.tgz", - "integrity": "sha512-1j1lOb4EU/6w49qZeT2SQVJXm0Ht+Qnq9GMfUa3pMwoyojIWfuA+JUDmoR97Bht1RLn4ei0xtLGy87M7d29B1w==", + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/stylelint-order/-/stylelint-order-6.0.4.tgz", + "integrity": "sha512-0UuKo4+s1hgQ/uAxlYU4h0o0HS4NiQDud0NAUNI0aa8FJdmYHA5ZZTFHiV5FpmE3071e9pZx5j0QpVJW5zOCUA==", "dev": true, "dependencies": { - "postcss": "^8.4.21", + "postcss": "^8.4.32", "postcss-sorting": "^8.0.2" }, "peerDependencies": { - "stylelint": "^14.0.0 || ^15.0.0" + "stylelint": "^14.0.0 || ^15.0.0 || ^16.0.1" } }, "node_modules/stylelint-scss": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/stylelint-scss/-/stylelint-scss-5.3.1.tgz", - "integrity": "sha512-5I9ZDIm77BZrjOccma5WyW2nJEKjXDd4Ca8Kk+oBapSO4pewSlno3n+OyimcyVJJujQZkBN2D+xuMkIamSc6hA==", + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/stylelint-scss/-/stylelint-scss-5.3.2.tgz", + "integrity": "sha512-4LzLaayFhFyneJwLo0IUa8knuIvj+zF0vBFueQs4e3tEaAMIQX8q5th8ziKkgOavr6y/y9yoBe+RXN/edwLzsQ==", "dev": true, "dependencies": { "known-css-properties": "^0.29.0", @@ -8443,9 +8412,9 @@ "dev": true }, "node_modules/svgo": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/svgo/-/svgo-3.0.2.tgz", - "integrity": "sha512-Z706C1U2pb1+JGP48fbazf3KxHrWOsLme6Rv7imFBn5EnuanDW1GPaA/P1/dvObE670JDePC3mnj0k0B7P0jjQ==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/svgo/-/svgo-3.2.0.tgz", + "integrity": "sha512-4PP6CMW/V7l/GmKRKzsLR8xxjdHTV4IMvhTnpuHwwBazSIlw5W/5SmPjN8Dwyt7lKbSJrRDgp4t9ph0HgChFBQ==", "dev": true, "optional": true, "peer": true, @@ -8453,7 +8422,8 @@ "@trysound/sax": "0.2.0", "commander": "^7.2.0", "css-select": "^5.1.0", - "css-tree": "^2.2.1", + "css-tree": "^2.3.1", + "css-what": "^6.1.0", "csso": "^5.0.5", "picocolors": "^1.0.0" }, @@ -8939,9 +8909,9 @@ "dev": true }, "node_modules/utility-types": { - "version": "3.10.0", - "resolved": "https://registry.npmjs.org/utility-types/-/utility-types-3.10.0.tgz", - "integrity": "sha512-O11mqxmi7wMKCo6HKFt5AhO4BwY3VV68YU07tgxfz8zJTIxr4BpsezN49Ffwy9j3ZpwwJp4fkRwjRzq3uWE6Rg==", + "version": "3.11.0", + "resolved": "https://registry.npmjs.org/utility-types/-/utility-types-3.11.0.tgz", + "integrity": "sha512-6Z7Ma2aVEWisaL6TvBCy7P8rm2LQoPv6dJ7ecIaIixHcwfbJ0x7mWdbcwlIM5IGQxPZSFYeqRCqlOOeKoJYMkw==", "dev": true, "engines": { "node": ">= 4" @@ -8987,12 +8957,12 @@ "dev": true }, "node_modules/wait-on": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/wait-on/-/wait-on-7.1.0.tgz", - "integrity": "sha512-U7TF/OYYzAg+OoiT/B8opvN48UHt0QYMi4aD3PjRFpybQ+o6czQF8Ig3SKCCMJdxpBrCalIJ4O00FBof27Fu9Q==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/wait-on/-/wait-on-7.2.0.tgz", + "integrity": "sha512-wCQcHkRazgjG5XoAq9jbTMLpNIjoSlZslrJ2+N9MxDsGEv1HnFoVjOCexL0ESva7Y9cu350j+DWADdk54s4AFQ==", "dev": true, "dependencies": { - "axios": "^0.27.2", + "axios": "^1.6.1", "joi": "^17.11.0", "lodash": "^4.17.21", "minimist": "^1.2.8", diff --git a/package.json b/package.json index 5f6770909..e9cded920 100644 --- a/package.json +++ b/package.json @@ -14,9 +14,9 @@ "devDependencies": { "@double-great/stylelint-a11y": "2.0.2", "@fullhuman/postcss-purgecss": "5.0.0", - "@parcel/transformer-elm": "2.10.2", - "@parcel/transformer-sass": "2.10.2", - "axe-core": "4.8.2", + "@parcel/transformer-elm": "2.11.0", + "@parcel/transformer-sass": "2.11.0", + "axe-core": "4.8.3", "cypress": "5.6.0", "cypress-axe": "0.14.0", "elm": "0.19.1-6", @@ -24,19 +24,19 @@ "elm-test": "0.19.1-revision12", "make-dir-cli": "3.1.0", "ncp": "2.0.0", - "parcel": "2.10.2", - "postcss": "8.4.31", - "prettier": "3.1.0", + "parcel": "2.11.0", + "postcss": "8.4.33", + "prettier": "3.2.4", "rimraf": "5.0.5", - "start-server-and-test": "2.0.2", + "start-server-and-test": "2.0.3", "stylelint": "15.11.0", "stylelint-color-format": "1.1.0", "stylelint-config-recommended-scss": "13.1.0", - "stylelint-declaration-block-no-ignored-properties": "2.7.0", - "stylelint-declaration-strict-value": "1.9.2", - "stylelint-high-performance-animation": "1.9.0", - "stylelint-order": "6.0.3", - "stylelint-scss": "5.3.1" + "stylelint-declaration-block-no-ignored-properties": "2.8.0", + "stylelint-declaration-strict-value": "1.10.4", + "stylelint-high-performance-animation": "1.10.0", + "stylelint-order": "6.0.4", + "stylelint-scss": "5.3.2" }, "scripts": { "predev": "npm run clean", From de8993747976a310041bc58973dff31eb5006d8a Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 31 Jan 2024 09:27:41 -0600 Subject: [PATCH 06/10] chore(deps): update actions/cache action to v4 (#755) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- .github/workflows/ci.yml | 34 +++++++++++++++++----------------- .github/workflows/publish.yml | 6 +++--- 2 files changed, 20 insertions(+), 20 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 4b51a474b..ba93bb0f1 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -22,19 +22,19 @@ jobs: steps: - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4 - - uses: actions/cache@e12d46a63a90f2fae62d114769bbf2a179198b5c # v3 + - uses: actions/cache@13aacd865c20de90d75de3b17ebe84f7a17d57d2 # v4 with: path: ~/.npm key: ${{ runner.os }}-npm-v2-${{ hashFiles('**/package-lock.json') }} restore-keys: | ${{ runner.os }}-npm-v2- - - uses: actions/cache@e12d46a63a90f2fae62d114769bbf2a179198b5c # v3 + - uses: actions/cache@13aacd865c20de90d75de3b17ebe84f7a17d57d2 # v4 with: path: node_modules key: ${{ runner.os }}-modules-v2-${{ hashFiles('**/package-lock.json') }} restore-keys: | ${{ runner.os }}-modules-v2- - - uses: actions/cache@e12d46a63a90f2fae62d114769bbf2a179198b5c # v3 + - uses: actions/cache@13aacd865c20de90d75de3b17ebe84f7a17d57d2 # v4 with: path: ~/.cache/Cypress key: cypress-${{ runner.os }}-bin-v2-${{ hashFiles('**/package-lock.json') }} @@ -60,25 +60,25 @@ jobs: steps: - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4 - - uses: actions/cache@e12d46a63a90f2fae62d114769bbf2a179198b5c # v3 + - uses: actions/cache@13aacd865c20de90d75de3b17ebe84f7a17d57d2 # v4 with: path: ~/.elm key: ${{ runner.os }}-elm-v3-${{ hashFiles('**/elm.json') }} restore-keys: | ${{ runner.os }}-elm-v3- - - uses: actions/cache@e12d46a63a90f2fae62d114769bbf2a179198b5c # v3 + - uses: actions/cache@13aacd865c20de90d75de3b17ebe84f7a17d57d2 # v4 with: path: ~/.npm key: ${{ runner.os }}-npm-v2-${{ hashFiles('**/package-lock.json') }} restore-keys: | ${{ runner.os }}-npm-v2- - - uses: actions/cache@e12d46a63a90f2fae62d114769bbf2a179198b5c # v3 + - uses: actions/cache@13aacd865c20de90d75de3b17ebe84f7a17d57d2 # v4 with: path: node_modules key: ${{ runner.os }}-modules-v2-${{ hashFiles('**/package-lock.json') }} restore-keys: | ${{ runner.os }}-modules-v2- - - uses: actions/cache@e12d46a63a90f2fae62d114769bbf2a179198b5c # v3 + - uses: actions/cache@13aacd865c20de90d75de3b17ebe84f7a17d57d2 # v4 with: path: ~/.cache/Cypress key: cypress-${{ runner.os }}-bin-v2-${{ hashFiles('**/package-lock.json') }} @@ -104,19 +104,19 @@ jobs: steps: - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4 - - uses: actions/cache@e12d46a63a90f2fae62d114769bbf2a179198b5c # v3 + - uses: actions/cache@13aacd865c20de90d75de3b17ebe84f7a17d57d2 # v4 with: path: ~/.npm key: ${{ runner.os }}-npm-v2-${{ hashFiles('**/package-lock.json') }} restore-keys: | ${{ runner.os }}-npm-v2- - - uses: actions/cache@e12d46a63a90f2fae62d114769bbf2a179198b5c # v3 + - uses: actions/cache@13aacd865c20de90d75de3b17ebe84f7a17d57d2 # v4 with: path: node_modules key: ${{ runner.os }}-modules-v2-${{ hashFiles('**/package-lock.json') }} restore-keys: | ${{ runner.os }}-modules-v2- - - uses: actions/cache@e12d46a63a90f2fae62d114769bbf2a179198b5c # v3 + - uses: actions/cache@13aacd865c20de90d75de3b17ebe84f7a17d57d2 # v4 with: path: ~/.cache/Cypress key: cypress-${{ runner.os }}-bin-v2-${{ hashFiles('**/package-lock.json') }} @@ -143,25 +143,25 @@ jobs: steps: - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4 - - uses: actions/cache@e12d46a63a90f2fae62d114769bbf2a179198b5c # v3 + - uses: actions/cache@13aacd865c20de90d75de3b17ebe84f7a17d57d2 # v4 with: path: ~/.elm key: ${{ runner.os }}-elm-v3-${{ hashFiles('**/elm.json') }} restore-keys: | ${{ runner.os }}-elm-v3- - - uses: actions/cache@e12d46a63a90f2fae62d114769bbf2a179198b5c # v3 + - uses: actions/cache@13aacd865c20de90d75de3b17ebe84f7a17d57d2 # v4 with: path: ~/.npm key: ${{ runner.os }}-npm-v2-${{ hashFiles('**/package-lock.json') }} restore-keys: | ${{ runner.os }}-npm-v2- - - uses: actions/cache@e12d46a63a90f2fae62d114769bbf2a179198b5c # v3 + - uses: actions/cache@13aacd865c20de90d75de3b17ebe84f7a17d57d2 # v4 with: path: node_modules key: ${{ runner.os }}-modules-v2-${{ hashFiles('**/package-lock.json') }} restore-keys: | ${{ runner.os }}-modules-v2- - - uses: actions/cache@e12d46a63a90f2fae62d114769bbf2a179198b5c # v3 + - uses: actions/cache@13aacd865c20de90d75de3b17ebe84f7a17d57d2 # v4 with: path: ~/.cache/Cypress key: cypress-${{ runner.os }}-bin-v2-${{ hashFiles('**/package-lock.json') }} @@ -187,19 +187,19 @@ jobs: steps: - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4 - - uses: actions/cache@e12d46a63a90f2fae62d114769bbf2a179198b5c # v3 + - uses: actions/cache@13aacd865c20de90d75de3b17ebe84f7a17d57d2 # v4 with: path: ~/.elm key: ${{ runner.os }}-elm-v3-${{ hashFiles('**/elm.json') }} restore-keys: | ${{ runner.os }}-elm-v3- - - uses: actions/cache@e12d46a63a90f2fae62d114769bbf2a179198b5c # v3 + - uses: actions/cache@13aacd865c20de90d75de3b17ebe84f7a17d57d2 # v4 with: path: ~/.npm key: ${{ runner.os }}-npm-v2-${{ hashFiles('**/package-lock.json') }} restore-keys: | ${{ runner.os }}-npm-v2- - - uses: actions/cache@e12d46a63a90f2fae62d114769bbf2a179198b5c # v3 + - uses: actions/cache@13aacd865c20de90d75de3b17ebe84f7a17d57d2 # v4 with: path: node_modules key: ${{ runner.os }}-modules-v2-${{ hashFiles('**/package-lock.json') }} diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index ff8afd0d7..5132d2628 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -17,19 +17,19 @@ jobs: steps: - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4 - - uses: actions/cache@e12d46a63a90f2fae62d114769bbf2a179198b5c # v3 + - uses: actions/cache@13aacd865c20de90d75de3b17ebe84f7a17d57d2 # v4 with: path: ~/.elm key: ${{ runner.os }}-elm-v3-${{ hashFiles('**/elm.json') }} restore-keys: | ${{ runner.os }}-elm-v3- - - uses: actions/cache@e12d46a63a90f2fae62d114769bbf2a179198b5c # v3 + - uses: actions/cache@13aacd865c20de90d75de3b17ebe84f7a17d57d2 # v4 with: path: ~/.npm key: ${{ runner.os }}-npm-v2-${{ hashFiles('**/package-lock.json') }} restore-keys: | ${{ runner.os }}-npm-v2- - - uses: actions/cache@e12d46a63a90f2fae62d114769bbf2a179198b5c # v3 + - uses: actions/cache@13aacd865c20de90d75de3b17ebe84f7a17d57d2 # v4 with: path: node_modules key: ${{ runner.os }}-modules-v2-${{ hashFiles('**/package-lock.json') }} From 077e4057138a04e8455d6a868de7d77cc0651e85 Mon Sep 17 00:00:00 2001 From: claire1618 <55173466+claire1618@users.noreply.github.com> Date: Wed, 31 Jan 2024 10:45:44 -0600 Subject: [PATCH 07/10] feat: adding a delete event (#759) Co-authored-by: Claire.Nicholas Co-authored-by: Easton Crupper <65553218+ecrupper@users.noreply.github.com> --- cypress/fixtures/repositories.json | 16 +- cypress/fixtures/repositories_100.json | 400 ++++++++++++++++------ cypress/fixtures/repositories_10a.json | 40 ++- cypress/fixtures/repositories_10b.json | 40 ++- cypress/fixtures/repositories_5.json | 20 +- cypress/fixtures/repository.json | 4 +- cypress/fixtures/repository_inactive.json | 4 +- cypress/fixtures/repository_updated.json | 4 +- cypress/fixtures/secret_org.json | 4 +- cypress/fixtures/secret_repo.json | 4 +- cypress/fixtures/secret_shared.json | 4 +- cypress/fixtures/secrets_org_5.json | 20 +- src/elm/Main.elm | 1 + src/elm/Pages/RepoSettings.elm | 35 ++ src/elm/Pages/Secrets/Form.elm | 13 + src/elm/Pages/Secrets/Update.elm | 6 + src/elm/Pages/Secrets/View.elm | 2 + src/elm/Vela.elm | 20 +- 18 files changed, 494 insertions(+), 143 deletions(-) diff --git a/cypress/fixtures/repositories.json b/cypress/fixtures/repositories.json index 3a25b7b8d..e3db600f9 100644 --- a/cypress/fixtures/repositories.json +++ b/cypress/fixtures/repositories.json @@ -24,7 +24,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -66,7 +68,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -107,7 +111,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -149,7 +155,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, diff --git a/cypress/fixtures/repositories_100.json b/cypress/fixtures/repositories_100.json index a3268deb9..37c804b6a 100644 --- a/cypress/fixtures/repositories_100.json +++ b/cypress/fixtures/repositories_100.json @@ -24,7 +24,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -66,7 +68,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -108,7 +112,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -150,7 +156,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -192,7 +200,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -234,7 +244,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -276,7 +288,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -318,7 +332,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -360,7 +376,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -402,7 +420,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -444,7 +464,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -486,7 +508,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -528,7 +552,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -570,7 +596,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -612,7 +640,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -654,7 +684,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -696,7 +728,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -738,7 +772,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -780,7 +816,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -822,7 +860,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -864,7 +904,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -906,7 +948,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -948,7 +992,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -990,7 +1036,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -1032,7 +1080,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -1074,7 +1124,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -1116,7 +1168,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -1158,7 +1212,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -1200,7 +1256,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -1242,7 +1300,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -1284,7 +1344,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -1326,7 +1388,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -1368,7 +1432,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -1410,7 +1476,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -1452,7 +1520,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -1494,7 +1564,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -1536,7 +1608,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -1578,7 +1652,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -1620,7 +1696,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -1662,7 +1740,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -1704,7 +1784,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -1746,7 +1828,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -1788,7 +1872,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -1830,7 +1916,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -1872,7 +1960,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -1914,7 +2004,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -1956,7 +2048,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -1998,7 +2092,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -2040,7 +2136,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -2082,7 +2180,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -2124,7 +2224,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -2166,7 +2268,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -2208,7 +2312,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -2250,7 +2356,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -2292,7 +2400,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -2334,7 +2444,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -2376,7 +2488,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -2418,7 +2532,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -2460,7 +2576,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -2502,7 +2620,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -2544,7 +2664,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -2586,7 +2708,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -2628,7 +2752,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -2670,7 +2796,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -2712,7 +2840,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -2754,7 +2884,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -2796,7 +2928,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -2838,7 +2972,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -2880,7 +3016,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -2922,7 +3060,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -2964,7 +3104,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -3006,7 +3148,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -3048,7 +3192,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -3090,7 +3236,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -3132,7 +3280,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -3174,7 +3324,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -3216,7 +3368,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -3258,7 +3412,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -3300,7 +3456,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -3342,7 +3500,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -3384,7 +3544,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -3426,7 +3588,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -3468,7 +3632,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -3510,7 +3676,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -3552,7 +3720,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -3594,7 +3764,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -3636,7 +3808,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -3678,7 +3852,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -3720,7 +3896,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -3762,7 +3940,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -3804,7 +3984,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -3846,7 +4028,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -3888,7 +4072,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -3930,7 +4116,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -3972,7 +4160,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -4014,7 +4204,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -4056,7 +4248,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -4098,7 +4292,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -4140,7 +4336,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -4182,7 +4380,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, diff --git a/cypress/fixtures/repositories_10a.json b/cypress/fixtures/repositories_10a.json index fb7e6c138..834a1e1e4 100644 --- a/cypress/fixtures/repositories_10a.json +++ b/cypress/fixtures/repositories_10a.json @@ -24,7 +24,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -66,7 +68,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -108,7 +112,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -150,7 +156,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -192,7 +200,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -234,7 +244,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -276,7 +288,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -318,7 +332,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -360,7 +376,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -402,7 +420,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, diff --git a/cypress/fixtures/repositories_10b.json b/cypress/fixtures/repositories_10b.json index 34098857c..e6d69a7a7 100644 --- a/cypress/fixtures/repositories_10b.json +++ b/cypress/fixtures/repositories_10b.json @@ -24,7 +24,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -66,7 +68,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -108,7 +112,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -150,7 +156,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -192,7 +200,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -234,7 +244,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -276,7 +288,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -318,7 +332,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -360,7 +376,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -402,7 +420,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, diff --git a/cypress/fixtures/repositories_5.json b/cypress/fixtures/repositories_5.json index 51b46bdcb..41222f613 100644 --- a/cypress/fixtures/repositories_5.json +++ b/cypress/fixtures/repositories_5.json @@ -23,7 +23,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -65,7 +67,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -107,7 +111,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -149,7 +155,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -191,7 +199,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, diff --git a/cypress/fixtures/repository.json b/cypress/fixtures/repository.json index 6a4f6da8e..e9e0b395a 100644 --- a/cypress/fixtures/repository.json +++ b/cypress/fixtures/repository.json @@ -22,7 +22,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, diff --git a/cypress/fixtures/repository_inactive.json b/cypress/fixtures/repository_inactive.json index cc43faf38..f187528c8 100644 --- a/cypress/fixtures/repository_inactive.json +++ b/cypress/fixtures/repository_inactive.json @@ -22,7 +22,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, diff --git a/cypress/fixtures/repository_updated.json b/cypress/fixtures/repository_updated.json index 10c69294c..c0adf6aec 100644 --- a/cypress/fixtures/repository_updated.json +++ b/cypress/fixtures/repository_updated.json @@ -22,7 +22,9 @@ "allow_events": { "push": { "branch": false, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, diff --git a/cypress/fixtures/secret_org.json b/cypress/fixtures/secret_org.json index 2e44df64e..c8d6b4775 100644 --- a/cypress/fixtures/secret_org.json +++ b/cypress/fixtures/secret_org.json @@ -11,7 +11,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, diff --git a/cypress/fixtures/secret_repo.json b/cypress/fixtures/secret_repo.json index 8281b8793..f5b84df18 100644 --- a/cypress/fixtures/secret_repo.json +++ b/cypress/fixtures/secret_repo.json @@ -11,7 +11,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, diff --git a/cypress/fixtures/secret_shared.json b/cypress/fixtures/secret_shared.json index 1f11e9a7b..79e0b7739 100644 --- a/cypress/fixtures/secret_shared.json +++ b/cypress/fixtures/secret_shared.json @@ -11,7 +11,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, diff --git a/cypress/fixtures/secrets_org_5.json b/cypress/fixtures/secrets_org_5.json index 006f90103..4b1d843ea 100644 --- a/cypress/fixtures/secrets_org_5.json +++ b/cypress/fixtures/secrets_org_5.json @@ -12,7 +12,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -46,7 +48,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -80,7 +84,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -114,7 +120,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, @@ -148,7 +156,9 @@ "allow_events": { "push": { "branch": true, - "tag": false + "tag": false, + "delete_branch": false, + "delete_tag": false }, "pull_request": { "opened": false, diff --git a/src/elm/Main.elm b/src/elm/Main.elm index 226b2520b..898e6579f 100644 --- a/src/elm/Main.elm +++ b/src/elm/Main.elm @@ -3206,6 +3206,7 @@ viewBuildsFilter shouldRender org repo maybeEvent = , "deployment" , "schedule" , "comment" + , "delete" ] in div [ class "form-controls", class "build-filters", Util.testAttribute "build-filter" ] <| diff --git a/src/elm/Pages/RepoSettings.elm b/src/elm/Pages/RepoSettings.elm index 8dddde1ab..3de4fb5d0 100644 --- a/src/elm/Pages/RepoSettings.elm +++ b/src/elm/Pages/RepoSettings.elm @@ -368,6 +368,19 @@ events repo msg = <| msg repo.org repo.name repo "allow_comment_edited" ] + , h3 [ class "settings-subtitle" ] [ text "Delete" ] + , div [ class "form-controls", class "-two-col" ] + [ checkbox "Branch" + "allow_push_delete_branch" + allowEvents.push.delete_branch + <| + msg repo.org repo.name repo "allow_push_delete_branch" + , checkbox "Tag" + "allow_push_delete_tag" + allowEvents.push.delete_tag + <| + msg repo.org repo.name repo "allow_push_delete_tag" + ] ] @@ -950,6 +963,12 @@ msgPrefix field = "allow_push_tag" -> "Push tag events for $ " + "allow_push_delete_branch" -> + "Push delete branch events for $ " + + "allow_push_delete_tag" -> + "Push delete tag events for $ " + "allow_deploy_created" -> "Deploy events for $ " @@ -1040,6 +1059,22 @@ msgSuffix field repo = Just allowEvents -> toggleText "allow_push_tag" allowEvents.push.tag + "allow_push_delete_branch" -> + case repo.allow_events of + Nothing -> + "" + + Just allowEvents -> + toggleText "allow_push_delete_branch" allowEvents.push.branch + + "allow_push_delete_tag" -> + case repo.allow_events of + Nothing -> + "" + + Just allowEvents -> + toggleText "allow_push_delete_tag" allowEvents.push.tag + "allow_deploy_created" -> case repo.allow_events of Nothing -> diff --git a/src/elm/Pages/Secrets/Form.elm b/src/elm/Pages/Secrets/Form.elm index 4d3995ea5..ab72c661e 100644 --- a/src/elm/Pages/Secrets/Form.elm +++ b/src/elm/Pages/Secrets/Form.elm @@ -258,6 +258,19 @@ viewEventsSelect secret model = <| OnChangeEvent "allow_comment_edited" ] + , strong [ class "settings-subtitle" ] [ text "Delete" ] + , div [ class "form-controls", class "-two-col-secrets" ] + [ checkbox "Branch" + "allow_push_delete_branch" + secret.allowEvents.push.delete_branch + <| + OnChangeEvent "allow_push_delete_branch" + , checkbox "Tag" + "allow_push_delete_tag" + secret.allowEvents.push.delete_tag + <| + OnChangeEvent "allow_push_delete_tag" + ] ] scheduleOption ) diff --git a/src/elm/Pages/Secrets/Update.elm b/src/elm/Pages/Secrets/Update.elm index 622d2f39f..8a5ce4a73 100644 --- a/src/elm/Pages/Secrets/Update.elm +++ b/src/elm/Pages/Secrets/Update.elm @@ -188,6 +188,12 @@ updateSecretEvents sform field value = "allow_push_tag" -> { sform | allowEvents = { events | push = { pushActions | tag = value } } } + "allow_push_delete_branch" -> + { sform | allowEvents = { events | push = { pushActions | delete_branch = value } } } + + "allow_push_delete_tag" -> + { sform | allowEvents = { events | push = { pushActions | delete_tag = value } } } + "allow_pull_opened" -> { sform | allowEvents = { events | pull = { pullActions | opened = value } } } diff --git a/src/elm/Pages/Secrets/View.elm b/src/elm/Pages/Secrets/View.elm index 6d51897b2..bc4baaf7e 100644 --- a/src/elm/Pages/Secrets/View.elm +++ b/src/elm/Pages/Secrets/View.elm @@ -471,6 +471,8 @@ allowEventsToList events = [] |> appendLabel events.push.branch "push" |> appendLabel events.push.tag "tag" + |> appendLabel events.push.delete_branch "delete:branch" + |> appendLabel events.push.delete_tag "delete:tag" |> appendLabel events.pull.opened "pull_request:opened" |> appendLabel events.pull.synchronize "pull_request:synchronize" |> appendLabel events.pull.edited "pull_request:edited" diff --git a/src/elm/Vela.elm b/src/elm/Vela.elm index 65c58ced6..b57dff10a 100644 --- a/src/elm/Vela.elm +++ b/src/elm/Vela.elm @@ -928,6 +928,8 @@ type alias Deployment = type alias PushActions = { branch : Bool , tag : Bool + , delete_branch : Bool + , delete_tag : Bool } @@ -1014,6 +1016,8 @@ decodePushActions = Decode.succeed PushActions |> required "branch" bool |> required "tag" bool + |> required "delete_branch" bool + |> required "delete_tag" bool decodePullActions : Decoder PullActions @@ -1186,6 +1190,8 @@ encodePushActions push = Encode.object [ ( "branch", Encode.bool <| push.branch ) , ( "tag", Encode.bool <| push.tag ) + , ( "delete_branch", Encode.bool <| push.delete_branch ) + , ( "delete_tag", Encode.bool <| push.delete_tag ) ] @@ -1251,6 +1257,8 @@ type alias AllowEventsPayload = type alias PushActionsPayload = { branch : Bool , tag : Bool + , delete_branch : Bool + , delete_tag : Bool } @@ -1330,10 +1338,10 @@ defaultPushActionsPayload : Maybe PushActions -> PushActionsPayload defaultPushActionsPayload pushActions = case pushActions of Nothing -> - PushActionsPayload False False + PushActionsPayload False False False False Just push -> - PushActionsPayload push.branch push.tag + PushActionsPayload push.branch push.tag push.delete_branch push.delete_tag defaultPullActionsPayload : Maybe PullActions -> PullActionsPayload @@ -1442,6 +1450,12 @@ buildUpdateRepoEventsPayload repository field value = "allow_push_tag" -> { defaultUpdateRepositoryPayload | allow_events = Just { events | push = { pushActions | tag = value } } } + "allow_push_delete_branch" -> + { defaultUpdateRepositoryPayload | allow_events = Just { events | push = { pushActions | delete_branch = value } } } + + "allow_push_delete_tag" -> + { defaultUpdateRepositoryPayload | allow_events = Just { events | push = { pushActions | delete_tag = value } } } + "allow_pull_opened" -> { defaultUpdateRepositoryPayload | allow_events = Just { events | pull = { pullActions | opened = value } } } @@ -2503,7 +2517,7 @@ secretToKey secret = defaultSecretAllowEvents : AllowEvents defaultSecretAllowEvents = - { push = { branch = True, tag = True }, pull = defaultPullActionsPayload Nothing, deploy = { created = True }, comment = defaultCommentActionsPayload Nothing, schedule = defaultScheduleActionsPayload Nothing } + { push = { branch = True, tag = True, delete_branch = False, delete_tag = False }, pull = defaultPullActionsPayload Nothing, deploy = { created = True }, comment = defaultCommentActionsPayload Nothing, schedule = defaultScheduleActionsPayload Nothing } decodeSecret : Decoder Secret From 6970e547322721f5abaaf6770fe552392341f771 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 31 Jan 2024 15:15:51 -0600 Subject: [PATCH 08/10] chore(deps): update github/codeql-action action to v3 (#748) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- .github/workflows/codeql-analysis.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml index 0a652f873..20e702a62 100644 --- a/.github/workflows/codeql-analysis.yml +++ b/.github/workflows/codeql-analysis.yml @@ -38,7 +38,7 @@ jobs: # Initializes the CodeQL tools for scanning. - name: Initialize CodeQL - uses: github/codeql-action/init@2f93e4319b2f04a2efc38fa7f78bd681bc3f7b2f # v2 + uses: github/codeql-action/init@b7bf0a3ed3ecfa44160715d7c442788f65f0f923 # v3 with: languages: ${{ matrix.language }} # If you wish to specify custom queries, you can do so here or in a config file. @@ -49,7 +49,7 @@ jobs: # Autobuild attempts to build any compiled languages (C/C++, C#, or Java). # If this step fails, then you should remove it and run the build manually (see below) - name: Autobuild - uses: github/codeql-action/autobuild@2f93e4319b2f04a2efc38fa7f78bd681bc3f7b2f # v2 + uses: github/codeql-action/autobuild@b7bf0a3ed3ecfa44160715d7c442788f65f0f923 # v3 # ℹī¸ Command-line programs to run using the OS shell. # 📚 https://git.io/JvXDl @@ -63,4 +63,4 @@ jobs: # make release - name: Perform CodeQL Analysis - uses: github/codeql-action/analyze@2f93e4319b2f04a2efc38fa7f78bd681bc3f7b2f # v2 + uses: github/codeql-action/analyze@b7bf0a3ed3ecfa44160715d7c442788f65f0f923 # v3 From 43e2a935af32775723c09acf58f69d3e923077a6 Mon Sep 17 00:00:00 2001 From: Easton Crupper <65553218+ecrupper@users.noreply.github.com> Date: Fri, 2 Feb 2024 09:37:37 -0500 Subject: [PATCH 09/10] fix(tabs): remove red alert from audit on skipped hooks (#763) --- src/elm/Nav.elm | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/elm/Nav.elm b/src/elm/Nav.elm index 049591671..ffcc9b29d 100644 --- a/src/elm/Nav.elm +++ b/src/elm/Nav.elm @@ -443,6 +443,9 @@ viewRepoTabs rm org repo currentPage scheduleAllowlist = "success" -> False + "skipped" -> + False + _ -> hook.created > build.created From a8020aa9cbc36ae170c2313d99e11e2d7a416132 Mon Sep 17 00:00:00 2001 From: david may <1301201+wass3r@users.noreply.github.com> Date: Fri, 2 Feb 2024 09:14:37 -0600 Subject: [PATCH 10/10] fix: form style consistency (#762) Co-authored-by: Easton Crupper <65553218+ecrupper@users.noreply.github.com> --- src/elm/Pages/Deployments/Form.elm | 7 +++---- src/elm/Pages/Deployments/View.elm | 6 +++--- src/elm/Pages/Secrets/Form.elm | 12 ++++++------ src/scss/_forms.scss | 15 ++------------- src/scss/_main.scss | 24 +----------------------- 5 files changed, 15 insertions(+), 49 deletions(-) diff --git a/src/elm/Pages/Deployments/Form.elm b/src/elm/Pages/Deployments/Form.elm index ed629e6ed..cf1b0b5f8 100644 --- a/src/elm/Pages/Deployments/Form.elm +++ b/src/elm/Pages/Deployments/Form.elm @@ -21,6 +21,7 @@ import Html , em , input , label + , p , section , span , strong @@ -116,13 +117,11 @@ viewDeployEnabled repo_settings = case repo_settings of RemoteData.Success repo -> if repo.allow_deploy then - section [] + p [] [] else - section [ class "notice" ] - [ strong [] [ text "Deploy webhook for this repo must be enabled in settings" ] - ] + p [ class "notice" ] [ text "Deploy webhook for this repo must be enabled in settings" ] _ -> section [] [] diff --git a/src/elm/Pages/Deployments/View.elm b/src/elm/Pages/Deployments/View.elm index 9e78f7979..5d7efadaa 100644 --- a/src/elm/Pages/Deployments/View.elm +++ b/src/elm/Pages/Deployments/View.elm @@ -36,7 +36,8 @@ addDeployment : PartialModel a msg -> Html Msg addDeployment model = div [ class "manage-deployment", Util.testAttribute "add-deployment" ] [ div [] - [ addForm model.deploymentModel + [ h2 [] [ text "Add Deployment" ] + , addForm model.deploymentModel ] ] @@ -58,8 +59,7 @@ addForm deploymentModel = "" in div [ class "deployment-form" ] - [ h2 [ class "deployment-header" ] [ text "Add Deployment" ] - , viewDeployEnabled deploymentModel.repo_settings + [ viewDeployEnabled deploymentModel.repo_settings -- GitHub default is "production". If we support more SCMs, this line may need tweaking , viewValueInput "Target" deployment.target "provide the name for the target deployment environment (default: \"production\")" diff --git a/src/elm/Pages/Secrets/Form.elm b/src/elm/Pages/Secrets/Form.elm index ab72c661e..d8d57ef9a 100644 --- a/src/elm/Pages/Secrets/Form.elm +++ b/src/elm/Pages/Secrets/Form.elm @@ -178,7 +178,7 @@ viewEventsSelect secret model = scheduleOption = if schedulesAllowed then [ strong [ class "settings-subtitle" ] [ text "Schedule" ] - , div [ class "form-controls", class "-two-col-secrets" ] + , div [ class "form-controls", class "-two-col" ] [ checkbox "Schedule" "schedule" secret.allowEvents.schedule.run @@ -202,7 +202,7 @@ viewEventsSelect secret model = , pullRequestWarning ] , strong [ class "settings-subtitle" ] [ text "Push" ] - , div [ class "form-controls", class "-two-col-secrets" ] + , div [ class "form-controls", class "-two-col" ] [ checkbox "Push" "allow_push_branch" secret.allowEvents.push.branch @@ -215,7 +215,7 @@ viewEventsSelect secret model = OnChangeEvent "allow_push_tag" ] , strong [ class "settings-subtitle" ] [ text "Pull Request" ] - , div [ class "form-controls", class "-two-col-secrets" ] + , div [ class "form-controls", class "-two-col" ] [ checkbox "Opened" "allow_pull_opened" secret.allowEvents.pull.opened @@ -238,7 +238,7 @@ viewEventsSelect secret model = OnChangeEvent "allow_pull_reopened" ] , strong [ class "settings-subtitle" ] [ text "Deployments" ] - , div [ class "form-controls", class "-two-col-secrets" ] + , div [ class "form-controls", class "-two-col" ] [ checkbox "Created" "allow_deploy_created" secret.allowEvents.deploy.created @@ -246,7 +246,7 @@ viewEventsSelect secret model = OnChangeEvent "allow_deploy_created" ] , strong [ class "settings-subtitle" ] [ text "Comment" ] - , div [ class "form-controls", class "-two-col-secrets" ] + , div [ class "form-controls", class "-two-col" ] [ checkbox "Created" "allow_comment_created" secret.allowEvents.comment.created @@ -259,7 +259,7 @@ viewEventsSelect secret model = OnChangeEvent "allow_comment_edited" ] , strong [ class "settings-subtitle" ] [ text "Delete" ] - , div [ class "form-controls", class "-two-col-secrets" ] + , div [ class "form-controls", class "-two-col" ] [ checkbox "Branch" "allow_push_delete_branch" secret.allowEvents.push.delete_branch diff --git a/src/scss/_forms.scss b/src/scss/_forms.scss index 9f403bbc5..8d1d952c5 100644 --- a/src/scss/_forms.scss +++ b/src/scss/_forms.scss @@ -46,7 +46,7 @@ // // textarea { - width: 70%; + width: 100%; margin-top: 0.2rem; margin-bottom: 0.5rem; padding: 0.5rem; @@ -246,7 +246,7 @@ .form-controls { display: flex; - justify-content: space-between; + justify-content: flex-start; padding: 0.5rem 1rem; border: none; @@ -261,16 +261,6 @@ } } - &.-two-col-secrets { - flex-flow: row wrap; - gap: 0.5rem; - max-width: 30%; - - .form-control { - flex: 0 0 40%; - } - } - .form-control { margin-right: 0.5rem; } @@ -287,7 +277,6 @@ // .-row is for horizontally stacking controls &.-row { flex-flow: row nowrap; - justify-content: flex-start; .form-control:not(:last-child) { margin-right: 0.5rem; diff --git a/src/scss/_main.scss b/src/scss/_main.scss index 86de47cdc..d5fdb6f65 100644 --- a/src/scss/_main.scss +++ b/src/scss/_main.scss @@ -1553,6 +1553,7 @@ details.build-toggle { .secret-form, .deployment-form, .schedule-form { + max-width: 45rem; margin-bottom: 0.5rem; padding-top: 1rem; } @@ -1632,25 +1633,6 @@ details.build-toggle { padding: 1rem; } -.manage-secret .subheader, -.manage-deployment .subheader { - width: 80%; - margin-top: 1rem; - - border-bottom: 2px solid var(--color-primary); -} - -.manage-secret input, -.manage-deployment input { - max-width: 400px; -} - -.manage-secret textarea, -.manage-deployment textarea, -.manage-schedule textarea { - max-width: 70%; -} - .secret-form .help, .deployment-form .help, .schedule-form .help { @@ -1663,10 +1645,6 @@ details.build-toggle { padding-left: 1rem; } -.deployment-form h2.deployment-header { - margin-bottom: 1rem; -} - .add-deployment-buttons { justify-content: flex-end; }