diff --git a/.env.example b/.env.example index ed279d5..b8e1c1f 100644 --- a/.env.example +++ b/.env.example @@ -5,11 +5,3 @@ APP_LISTEN_PORT=3000 APP_BEHIND_PROXY=false DATABASE_DSN="host=localhost user=camarades password=camarades dbname=camarades port=5432 sslmode=disable TimeZone=Europe/Zurich" SESSIONS_LOCATION=./sessions.db -AUTHELIA_USERS_LOCATION=./users.yml -AUTHELIA_RESET_URL=https://login.popvaud.ch/reset-password/step1 -MAIL_HOST=mail.infomaniak.com -MAIL_PORT=587 -MAIL_USERNAME=no-reply@popvaud.ch -MAIL_PASSWORD=very-secure-password -MAIL_FROM_NAME=POP Vaud -MAIL_FROM_ADDRESS=no-reply@popvaud.ch \ No newline at end of file diff --git a/.gitignore b/.gitignore index 971cd36..b6c620e 100644 --- a/.gitignore +++ b/.gitignore @@ -6,4 +6,3 @@ static/assets pop-camarades *.db __debug_bin* -users.yml \ No newline at end of file diff --git a/compose.yml b/compose.yml index 134de7d..b1e57b0 100644 --- a/compose.yml +++ b/compose.yml @@ -1,6 +1,6 @@ services: postgres: - image: postgres:17 + image: postgres:latest container_name: camarades-postgres ports: - "127.0.0.1:5432:5432" diff --git a/controllers/contacts.go b/controllers/contacts.go index 1d1ed38..aa15e61 100644 --- a/controllers/contacts.go +++ b/controllers/contacts.go @@ -94,7 +94,7 @@ func Contacts(c *fiber.Ctx) error { db.Order("position asc").Find(&fields, "person_type = ?", "contact") return c.Render("people", fiber.Map{ - "PageTitle": "Sympathisants", + "PageTitle": "Contacts", "MembersPage": false, "People": results.Results, "Pagination": results.Pagination, @@ -462,9 +462,7 @@ func ContactAdd(c *fiber.Ctx) error { case "FirstName": errors = append(errors, "Le prénom est requis et ne peut pas contenir plus de 100 caractères") case "Email": - if len(data.Email) > 0 { - errors = append(errors, "L'adresse email doit être valide") - } + errors = append(errors, "L'adresse email doit être valide") case "Phone": errors = append(errors, "Le numéro de téléphone fixe est trop long") case "Mobile": @@ -497,18 +495,6 @@ func ContactAdd(c *fiber.Ctx) error { person.PostalCode = data.PostalCode person.City = data.City - if len(data.Email) > 0 { - var personEmail []models.Person - result := db.Find(&personEmail, "LOWER(email) = LOWER(?)", data.Email) - if result.Error != nil { - return result.Error - } - - if result.RowsAffected > 0 { - errors = append(errors, "L'adresse email est déjà utilisée par un membre ou un sympathisant") - } - } - sectionID, err := strconv.ParseUint(data.Section, 10, 0) if err == nil { for _, section := range sections { @@ -725,9 +711,7 @@ func ContactEdit(c *fiber.Ctx) error { case "FirstName": errors = append(errors, "Le prénom est requis et ne peut pas contenir plus de 100 caractères") case "Email": - if len(data.Email) > 0 { - errors = append(errors, "L'adresse email doit être valide") - } + errors = append(errors, "L'adresse email doit être valide") case "Phone": errors = append(errors, "Le numéro de téléphone fixe est trop long") case "Mobile": @@ -760,18 +744,6 @@ func ContactEdit(c *fiber.Ctx) error { person.PostalCode = data.PostalCode person.City = data.City - if len(data.Email) > 0 { - var personEmail []models.Person - result := db.Find(&personEmail, "LOWER(email) = LOWER(?) AND id <> ?", data.Email, person.ID) - if result.Error != nil { - return result.Error - } - - if result.RowsAffected > 0 { - errors = append(errors, "L'adresse email est déjà utilisée par un membre ou un sympathisant") - } - } - sectionID, err := strconv.ParseUint(data.Section, 10, 0) if err == nil { for _, section := range sections { diff --git a/controllers/members.go b/controllers/members.go index 52eda37..e1c0405 100644 --- a/controllers/members.go +++ b/controllers/members.go @@ -8,19 +8,17 @@ import ( "time" "git.readonly.ch/bouzoure/pop-camarades/helpers" - "git.readonly.ch/bouzoure/pop-camarades/helpers/authelia" "git.readonly.ch/bouzoure/pop-camarades/helpers/database" "git.readonly.ch/bouzoure/pop-camarades/models" "github.com/charmbracelet/log" "github.com/go-playground/validator/v10" "github.com/gofiber/fiber/v2" - "github.com/google/uuid" ) type PersonValidation struct { LastName string `validate:"max=100"` FirstName string `validate:"required,min=1,max=100"` - Email string `validate:"max=100,email"` + Email string `validate:"max=100"` Phone string `validate:"max=100"` Mobile string `validate:"max=100"` Address1 string `validate:"max=100"` @@ -479,9 +477,7 @@ func MemberAdd(c *fiber.Ctx) error { case "FirstName": errors = append(errors, "Le prénom est requis et ne peut pas contenir plus de 100 caractères") case "Email": - if len(data.Email) > 0 { - errors = append(errors, "L'adresse email doit être valide") - } + errors = append(errors, "L'adresse email doit être valide") case "Phone": errors = append(errors, "Le numéro de téléphone fixe est trop long") case "Mobile": @@ -502,18 +498,6 @@ func MemberAdd(c *fiber.Ctx) error { } } - if len(data.Email) > 0 { - var personEmail []models.Person - result := db.Find(&personEmail, "LOWER(email) = LOWER(?)", data.Email) - if result.Error != nil { - return result.Error - } - - if result.RowsAffected > 0 { - errors = append(errors, "L'adresse email est déjà utilisée par un membre ou un sympathisant") - } - } - person.IsContact = false person.IsMember = true person.LastName = data.LastName @@ -638,16 +622,6 @@ func MemberAdd(c *fiber.Ctx) error { } } - if c.FormValue("account-enabled") == "on" { - personAccount := models.PersonAccount{ - PersonID: person.ID, - UUID: uuid.New(), - Enabled: true, - Groups: strings.Join(authelia.GetPersonGroups(person.ID), "|||"), - } - db.Create(&personAccount) - } - c.Redirect(fmt.Sprintf( "/members/%d", person.ID, @@ -726,9 +700,6 @@ func MemberEdit(c *fiber.Ctx) error { person.ID, ) - var personAccount models.PersonAccount - db.Find(&personAccount, "person_id = ?", person.ID) - var errors []string if c.Method() == "POST" { data := PersonValidation{ @@ -755,9 +726,7 @@ func MemberEdit(c *fiber.Ctx) error { case "FirstName": errors = append(errors, "Le prénom est requis et ne peut pas contenir plus de 100 caractères") case "Email": - if len(data.Email) > 0 { - errors = append(errors, "L'adresse email doit être valide") - } + errors = append(errors, "L'adresse email doit être valide") case "Phone": errors = append(errors, "Le numéro de téléphone fixe est trop long") case "Mobile": @@ -778,18 +747,6 @@ func MemberEdit(c *fiber.Ctx) error { } } - if len(data.Email) > 0 { - var personEmail []models.Person - result := db.Find(&personEmail, "LOWER(email) = LOWER(?) AND id <> ?", data.Email, person.ID) - if result.Error != nil { - return result.Error - } - - if result.RowsAffected > 0 { - errors = append(errors, "L'adresse email est déjà utilisée par un membre ou un sympathisant") - } - } - person.IsContact = false person.IsMember = true person.LastName = data.LastName @@ -921,33 +878,6 @@ func MemberEdit(c *fiber.Ctx) error { return result.Error } - if c.FormValue("account-enabled") == "on" && personAccount.ID <= 0 { - personAccount = models.PersonAccount{ - PersonID: person.ID, - UUID: uuid.New(), - Enabled: true, - Groups: strings.Join(authelia.GetPersonGroups(person.ID), "|||"), - } - db.Create(&personAccount) - } else if c.FormValue("account-enabled") == "on" && personAccount.ID > 0 { - personAccount.Enabled = true - personAccount.Groups = strings.Join(authelia.GetPersonGroups(person.ID), "|||") - - if personAccount.AccountCreated.Valid { - personAccount.UpdateNeeded = true - } - - db.Save(&personAccount) - } else if c.FormValue("account-enabled") != "on" && personAccount.ID > 0 { - personAccount.Enabled = false - - if personAccount.AccountCreated.Valid { - personAccount.UpdateNeeded = true - } - - db.Save(&personAccount) - } - c.Redirect(fmt.Sprintf( "/members/%d", person.ID, @@ -956,13 +886,12 @@ func MemberEdit(c *fiber.Ctx) error { } return c.Render("person_form", fiber.Map{ - "PageTitle": title, - "Person": person, - "Sections": sections, - "Fields": fields, - "FieldValues": fieldValues, - "PersonAccount": personAccount, - "Errors": errors, + "PageTitle": title, + "Person": person, + "Sections": sections, + "Fields": fields, + "FieldValues": fieldValues, + "Errors": errors, }) } diff --git a/controllers/users.go b/controllers/users.go index 8301fce..4c15889 100644 --- a/controllers/users.go +++ b/controllers/users.go @@ -109,7 +109,7 @@ func UserAdd(c *fiber.Ctx) error { user.Email = data.Email var usersEmail []models.User - result := db.Find(&usersEmail, "LOWER(email) = LOWER(?)", user.Email) + result := db.Find(&usersEmail, "email = ?", user.Email) if result.Error != nil { return result.Error } diff --git a/go.mod b/go.mod index c9a9c40..43925f7 100644 --- a/go.mod +++ b/go.mod @@ -1,83 +1,77 @@ module git.readonly.ch/bouzoure/pop-camarades -go 1.25.3 +go 1.23.4 require ( - github.com/alexedwards/argon2id v1.0.0 - github.com/brianvoe/gofakeit/v7 v7.14.1 - github.com/charmbracelet/log v1.0.0 + github.com/brianvoe/gofakeit/v7 v7.3.0 + github.com/charmbracelet/log v0.4.2 github.com/flosch/pongo2/v6 v6.0.0 - github.com/go-playground/validator/v10 v10.30.2 - github.com/gofiber/fiber/v2 v2.52.13 + github.com/go-playground/validator/v10 v10.27.0 + github.com/gofiber/fiber/v2 v2.52.8 github.com/gofiber/helmet/v2 v2.2.26 - github.com/gofiber/storage/badger/v2 v2.1.5 + github.com/gofiber/storage/badger/v2 v2.0.1 github.com/gofiber/template/django/v3 v3.1.14 github.com/golobby/dotenv v1.3.2 github.com/google/uuid v1.6.0 github.com/pquerna/otp v1.5.0 - github.com/sethvargo/go-password v0.3.1 - github.com/wneessen/go-mail v0.7.2 - github.com/yuin/goldmark v1.8.2 - go.yaml.in/yaml/v4 v4.0.0-rc.4 - golang.org/x/crypto v0.50.0 + github.com/yuin/goldmark v1.7.12 + golang.org/x/crypto v0.40.0 gorm.io/driver/postgres v1.6.0 - gorm.io/gorm v1.31.1 + gorm.io/gorm v1.30.0 ) require ( - github.com/andybalholm/brotli v1.2.1 // indirect + github.com/andybalholm/brotli v1.2.0 // indirect github.com/aymanbagabas/go-osc52/v2 v2.0.1 // indirect - github.com/boombuler/barcode v1.1.0 // indirect + github.com/boombuler/barcode v1.0.2 // indirect github.com/cespare/xxhash v1.1.0 // indirect github.com/cespare/xxhash/v2 v2.3.0 // indirect - github.com/charmbracelet/colorprofile v0.4.3 // indirect + github.com/charmbracelet/colorprofile v0.3.1 // indirect github.com/charmbracelet/lipgloss v1.1.0 // indirect - github.com/charmbracelet/x/ansi v0.11.7 // indirect - github.com/charmbracelet/x/cellbuf v0.0.15 // indirect - github.com/charmbracelet/x/term v0.2.2 // indirect - github.com/clipperhouse/displaywidth v0.11.0 // indirect - github.com/clipperhouse/uax29/v2 v2.7.0 // indirect + github.com/charmbracelet/x/ansi v0.9.3 // indirect + github.com/charmbracelet/x/cellbuf v0.0.13 // indirect + github.com/charmbracelet/x/term v0.2.1 // indirect github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect github.com/dgraph-io/badger/v3 v3.2103.5 // indirect github.com/dgraph-io/ristretto v0.2.0 // indirect github.com/dustin/go-humanize v1.0.1 // indirect - github.com/gabriel-vasile/mimetype v1.4.13 // indirect - github.com/go-logfmt/logfmt v0.6.1 // indirect + github.com/gabriel-vasile/mimetype v1.4.9 // indirect + github.com/go-logfmt/logfmt v0.6.0 // indirect github.com/go-playground/locales v0.14.1 // indirect github.com/go-playground/universal-translator v0.18.1 // indirect github.com/gofiber/template v1.8.3 // indirect - github.com/gofiber/utils v1.2.0 // indirect - github.com/gofiber/utils/v2 v2.0.4 // indirect + github.com/gofiber/utils v1.1.0 // indirect + github.com/gofiber/utils/v2 v2.0.0-beta.10 // indirect github.com/gogo/protobuf v1.3.2 // indirect github.com/golang/groupcache v0.0.0-20241129210726-2c02b8208cf8 // indirect github.com/golang/protobuf v1.5.4 // indirect github.com/golang/snappy v1.0.0 // indirect github.com/golobby/cast v1.3.3 // indirect - github.com/google/flatbuffers v25.12.19+incompatible // indirect + github.com/google/flatbuffers v25.2.10+incompatible // indirect github.com/jackc/pgpassfile v1.0.0 // indirect github.com/jackc/pgservicefile v0.0.0-20240606120523-5a60cdf6a761 // indirect - github.com/jackc/pgx/v5 v5.9.2 // indirect + github.com/jackc/pgx/v5 v5.7.5 // indirect github.com/jackc/puddle/v2 v2.2.2 // indirect github.com/jinzhu/inflection v1.0.0 // indirect github.com/jinzhu/now v1.1.5 // indirect - github.com/klauspost/compress v1.18.5 // indirect + github.com/klauspost/compress v1.18.0 // indirect github.com/leodido/go-urn v1.4.0 // indirect - github.com/lucasb-eyer/go-colorful v1.4.0 // indirect + github.com/lucasb-eyer/go-colorful v1.2.0 // indirect github.com/mattn/go-colorable v0.1.14 // indirect - github.com/mattn/go-isatty v0.0.22 // indirect - github.com/mattn/go-runewidth v0.0.23 // indirect + github.com/mattn/go-isatty v0.0.20 // indirect + github.com/mattn/go-runewidth v0.0.16 // indirect github.com/muesli/termenv v0.16.0 // indirect github.com/pkg/errors v0.9.1 // indirect github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect github.com/rivo/uniseg v0.4.7 // indirect github.com/valyala/bytebufferpool v1.0.0 // indirect - github.com/valyala/fasthttp v1.70.0 // indirect + github.com/valyala/fasthttp v1.63.0 // indirect github.com/xo/terminfo v0.0.0-20220910002029-abceb7e1c41e // indirect go.opencensus.io v0.24.0 // indirect - golang.org/x/exp v0.0.0-20260410095643-746e56fc9e2f // indirect - golang.org/x/net v0.53.0 // indirect - golang.org/x/sync v0.20.0 // indirect - golang.org/x/sys v0.43.0 // indirect - golang.org/x/text v0.36.0 // indirect - google.golang.org/protobuf v1.36.11 // indirect + golang.org/x/exp v0.0.0-20250620022241-b7579e27df2b // indirect + golang.org/x/net v0.42.0 // indirect + golang.org/x/sync v0.16.0 // indirect + golang.org/x/sys v0.34.0 // indirect + golang.org/x/text v0.27.0 // indirect + google.golang.org/protobuf v1.36.6 // indirect ) diff --git a/go.sum b/go.sum index e6c8459..3f587d5 100644 --- a/go.sum +++ b/go.sum @@ -2,41 +2,35 @@ cloud.google.com/go v0.26.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMT github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU= github.com/OneOfOne/xxhash v1.2.2 h1:KMrpdQIwFcEqXDklaen+P1axHaj9BSKzvpUUfnHldSE= github.com/OneOfOne/xxhash v1.2.2/go.mod h1:HSdplMjZKSmBqAxg5vPj2TmRDmfkzw+cTzAElWljhcU= -github.com/alexedwards/argon2id v1.0.0 h1:wJzDx66hqWX7siL/SRUmgz3F8YMrd/nfX/xHHcQQP0w= -github.com/alexedwards/argon2id v1.0.0/go.mod h1:tYKkqIjzXvZdzPvADMWOEZ+l6+BD6CtBXMj5fnJppiw= -github.com/andybalholm/brotli v1.2.1 h1:R+f5xP285VArJDRgowrfb9DqL18yVK0gKAW/F+eTWro= -github.com/andybalholm/brotli v1.2.1/go.mod h1:rzTDkvFWvIrjDXZHkuS16NPggd91W3kUSvPlQ1pLaKY= +github.com/andybalholm/brotli v1.2.0 h1:ukwgCxwYrmACq68yiUqwIWnGY0cTPox/M94sVwToPjQ= +github.com/andybalholm/brotli v1.2.0/go.mod h1:rzTDkvFWvIrjDXZHkuS16NPggd91W3kUSvPlQ1pLaKY= github.com/armon/consul-api v0.0.0-20180202201655-eb2c6b5be1b6/go.mod h1:grANhF5doyWs3UAsr3K4I6qtAmlQcZDesFNEHPZAzj8= github.com/aymanbagabas/go-osc52/v2 v2.0.1 h1:HwpRHbFMcZLEVr42D4p7XBqjyuxQH5SMiErDT4WkJ2k= github.com/aymanbagabas/go-osc52/v2 v2.0.1/go.mod h1:uYgXzlJ7ZpABp8OJ+exZzJJhRNQ2ASbcXHWsFqH8hp8= github.com/boombuler/barcode v1.0.1-0.20190219062509-6c824513bacc/go.mod h1:paBWMcWSl3LHKBqUq+rly7CNSldXjb2rDl3JlRe0mD8= -github.com/boombuler/barcode v1.1.0 h1:ChaYjBR63fr4LFyGn8E8nt7dBSt3MiU3zMOZqFvVkHo= -github.com/boombuler/barcode v1.1.0/go.mod h1:paBWMcWSl3LHKBqUq+rly7CNSldXjb2rDl3JlRe0mD8= -github.com/brianvoe/gofakeit/v7 v7.14.1 h1:a7fe3fonbj0cW3wgl5VwIKfZtiH9C3cLnwcIXWT7sow= -github.com/brianvoe/gofakeit/v7 v7.14.1/go.mod h1:QXuPeBw164PJCzCUZVmgpgHJ3Llj49jSLVkKPMtxtxA= +github.com/boombuler/barcode v1.0.2 h1:79yrbttoZrLGkL/oOI8hBrUKucwOL0oOjUgEguGMcJ4= +github.com/boombuler/barcode v1.0.2/go.mod h1:paBWMcWSl3LHKBqUq+rly7CNSldXjb2rDl3JlRe0mD8= +github.com/brianvoe/gofakeit/v7 v7.3.0 h1:TWStf7/lLpAjKw+bqwzeORo9jvrxToWEwp9b1J2vApQ= +github.com/brianvoe/gofakeit/v7 v7.3.0/go.mod h1:QXuPeBw164PJCzCUZVmgpgHJ3Llj49jSLVkKPMtxtxA= github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU= github.com/cespare/xxhash v1.1.0 h1:a6HrQnmkObjyL+Gs60czilIUGqrzKutQD6XZog3p+ko= github.com/cespare/xxhash v1.1.0/go.mod h1:XrSqR1VqqWfGrhpAt58auRo0WTKS1nRRg3ghfAqPWnc= github.com/cespare/xxhash/v2 v2.1.1/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= github.com/cespare/xxhash/v2 v2.3.0 h1:UL815xU9SqsFlibzuggzjXhog7bL6oX9BbNZnL2UFvs= github.com/cespare/xxhash/v2 v2.3.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= -github.com/charmbracelet/colorprofile v0.4.3 h1:QPa1IWkYI+AOB+fE+mg/5/4HRMZcaXex9t5KX76i20Q= -github.com/charmbracelet/colorprofile v0.4.3/go.mod h1:/zT4BhpD5aGFpqQQqw7a+VtHCzu+zrQtt1zhMt9mR4Q= +github.com/charmbracelet/colorprofile v0.3.1 h1:k8dTHMd7fgw4bnFd7jXTLZrSU/CQrKnL3m+AxCzDz40= +github.com/charmbracelet/colorprofile v0.3.1/go.mod h1:/GkGusxNs8VB/RSOh3fu0TJmQ4ICMMPApIIVn0KszZ0= github.com/charmbracelet/lipgloss v1.1.0 h1:vYXsiLHVkK7fp74RkV7b2kq9+zDLoEU4MZoFqR/noCY= github.com/charmbracelet/lipgloss v1.1.0/go.mod h1:/6Q8FR2o+kj8rz4Dq0zQc3vYf7X+B0binUUBwA0aL30= -github.com/charmbracelet/log v1.0.0 h1:HVVVMmfOorfj3BA9i8X8UL69Hoz9lI0PYwXfJvOdRc4= -github.com/charmbracelet/log v1.0.0/go.mod h1:uYgY3SmLpwJWxmlrPwXvzVYujxis1vAKRV/0VQB7yWA= -github.com/charmbracelet/x/ansi v0.11.7 h1:kzv1kJvjg2S3r9KHo8hDdHFQLEqn4RBCb39dAYC84jI= -github.com/charmbracelet/x/ansi v0.11.7/go.mod h1:9qGpnAVYz+8ACONkZBUWPtL7lulP9No6p1epAihUZwQ= -github.com/charmbracelet/x/cellbuf v0.0.15 h1:ur3pZy0o6z/R7EylET877CBxaiE1Sp1GMxoFPAIztPI= -github.com/charmbracelet/x/cellbuf v0.0.15/go.mod h1:J1YVbR7MUuEGIFPCaaZ96KDl5NoS0DAWkskup+mOY+Q= -github.com/charmbracelet/x/term v0.2.2 h1:xVRT/S2ZcKdhhOuSP4t5cLi5o+JxklsoEObBSgfgZRk= -github.com/charmbracelet/x/term v0.2.2/go.mod h1:kF8CY5RddLWrsgVwpw4kAa6TESp6EB5y3uxGLeCqzAI= +github.com/charmbracelet/log v0.4.2 h1:hYt8Qj6a8yLnvR+h7MwsJv/XvmBJXiueUcI3cIxsyig= +github.com/charmbracelet/log v0.4.2/go.mod h1:qifHGX/tc7eluv2R6pWIpyHDDrrb/AG71Pf2ysQu5nw= +github.com/charmbracelet/x/ansi v0.9.3 h1:BXt5DHS/MKF+LjuK4huWrC6NCvHtexww7dMayh6GXd0= +github.com/charmbracelet/x/ansi v0.9.3/go.mod h1:3RQDQ6lDnROptfpWuUVIUG64bD2g2BgntdxH0Ya5TeE= +github.com/charmbracelet/x/cellbuf v0.0.13 h1:/KBBKHuVRbq1lYx5BzEHBAFBP8VcQzJejZ/IA3iR28k= +github.com/charmbracelet/x/cellbuf v0.0.13/go.mod h1:xe0nKWGd3eJgtqZRaN9RjMtK7xUYchjzPr7q6kcvCCs= +github.com/charmbracelet/x/term v0.2.1 h1:AQeHeLZ1OqSXhrAWpYUtZyX1T3zVxfpZuEQMIQaGIAQ= +github.com/charmbracelet/x/term v0.2.1/go.mod h1:oQ4enTYFV7QN4m0i9mzHrViD7TQKvNEEkHUMCmsxdUg= github.com/client9/misspell v0.3.4/go.mod h1:qj6jICC3Q7zFZvVWo7KLAzC3yx5G7kyvSDkc90ppPyw= -github.com/clipperhouse/displaywidth v0.11.0 h1:lBc6kY44VFw+TDx4I8opi/EtL9m20WSEFgwIwO+UVM8= -github.com/clipperhouse/displaywidth v0.11.0/go.mod h1:bkrFNkf81G8HyVqmKGxsPufD3JhNl3dSqnGhOoSD/o0= -github.com/clipperhouse/uax29/v2 v2.7.0 h1:+gs4oBZ2gPfVrKPthwbMzWZDaAFPGYK72F0NJv2v7Vk= -github.com/clipperhouse/uax29/v2 v2.7.0/go.mod h1:EFJ2TJMRUaplDxHKj1qAEhCtQPW2tJSwu5BF98AuoVM= github.com/cncf/udpa/go v0.0.0-20191209042840-269d4d468f6f/go.mod h1:M8M6+tZqaGXZJjfX53e64911xZQV5JYwmTeXPW+k8Sc= github.com/coreos/etcd v3.3.10+incompatible/go.mod h1:uF7uidLiAD3TWHmW31ZFd/JWoc32PjwdhPthX9715RE= github.com/coreos/go-etcd v2.0.0+incompatible/go.mod h1:Jez6KQU2B/sWsbdaef3ED8NzMklzPG4d5KIOhIy30Tk= @@ -65,34 +59,34 @@ github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7 github.com/flosch/pongo2/v6 v6.0.0 h1:lsGru8IAzHgIAw6H2m4PCyleO58I40ow6apih0WprMU= github.com/flosch/pongo2/v6 v6.0.0/go.mod h1:CuDpFm47R0uGGE7z13/tTlt1Y6zdxvr2RLT5LJhsHEU= github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo= -github.com/fxamacker/cbor/v2 v2.9.1 h1:2rWm8B193Ll4VdjsJY28jxs70IdDsHRWgQYAI80+rMQ= -github.com/fxamacker/cbor/v2 v2.9.1/go.mod h1:vM4b+DJCtHn+zz7h3FFp/hDAI9WNWCsZj23V5ytsSxQ= -github.com/gabriel-vasile/mimetype v1.4.13 h1:46nXokslUBsAJE/wMsp5gtO500a4F3Nkz9Ufpk2AcUM= -github.com/gabriel-vasile/mimetype v1.4.13/go.mod h1:d+9Oxyo1wTzWdyVUPMmXFvp4F9tea18J8ufA774AB3s= -github.com/go-logfmt/logfmt v0.6.1 h1:4hvbpePJKnIzH1B+8OR/JPbTx37NktoI9LE2QZBBkvE= -github.com/go-logfmt/logfmt v0.6.1/go.mod h1:EV2pOAQoZaT1ZXZbqDl5hrymndi4SY9ED9/z6CO0XAk= +github.com/fxamacker/cbor/v2 v2.8.0 h1:fFtUGXUzXPHTIUdne5+zzMPTfffl3RD5qYnkY40vtxU= +github.com/fxamacker/cbor/v2 v2.8.0/go.mod h1:vM4b+DJCtHn+zz7h3FFp/hDAI9WNWCsZj23V5ytsSxQ= +github.com/gabriel-vasile/mimetype v1.4.9 h1:5k+WDwEsD9eTLL8Tz3L0VnmVh9QxGjRmjBvAG7U/oYY= +github.com/gabriel-vasile/mimetype v1.4.9/go.mod h1:WnSQhFKJuBlRyLiKohA/2DtIlPFAbguNaG7QCHcyGok= +github.com/go-logfmt/logfmt v0.6.0 h1:wGYYu3uicYdqXVgoYbvnkrPVXkuLM1p1ifugDMEdRi4= +github.com/go-logfmt/logfmt v0.6.0/go.mod h1:WYhtIu8zTZfxdn5+rREduYbwxfcBr/Vr6KEVveWlfTs= github.com/go-playground/assert/v2 v2.2.0 h1:JvknZsQTYeFEAhQwI4qEt9cyV5ONwRHC+lYKSsYSR8s= github.com/go-playground/assert/v2 v2.2.0/go.mod h1:VDjEfimB/XKnb+ZQfWdccd7VUvScMdVu0Titje2rxJ4= github.com/go-playground/locales v0.14.1 h1:EWaQ/wswjilfKLTECiXz7Rh+3BjFhfDFKv/oXslEjJA= github.com/go-playground/locales v0.14.1/go.mod h1:hxrqLVvrK65+Rwrd5Fc6F2O76J/NuW9t0sjnWqG1slY= github.com/go-playground/universal-translator v0.18.1 h1:Bcnm0ZwsGyWbCzImXv+pAJnYK9S473LQFuzCbDbfSFY= github.com/go-playground/universal-translator v0.18.1/go.mod h1:xekY+UJKNuX9WP91TpwSH2VMlDf28Uj24BCp08ZFTUY= -github.com/go-playground/validator/v10 v10.30.2 h1:JiFIMtSSHb2/XBUbWM4i/MpeQm9ZK2xqPNk8vgvu5JQ= -github.com/go-playground/validator/v10 v10.30.2/go.mod h1:mAf2pIOVXjTEBrwUMGKkCWKKPs9NheYGabeB04txQSc= -github.com/gofiber/fiber/v2 v2.52.13 h1:TOKP64iqC9b5P49VrBW5tHhUOvDyrtJ0xePEfzJbCbk= -github.com/gofiber/fiber/v2 v2.52.13/go.mod h1:YEcBbO/FB+5M1IZNBP9FO3J9281zgPAreiI1oqg8nDw= +github.com/go-playground/validator/v10 v10.27.0 h1:w8+XrWVMhGkxOaaowyKH35gFydVHOvC0/uWoy2Fzwn4= +github.com/go-playground/validator/v10 v10.27.0/go.mod h1:I5QpIEbmr8On7W0TktmJAumgzX4CA1XNl4ZmDuVHKKo= +github.com/gofiber/fiber/v2 v2.52.8 h1:xl4jJQ0BV5EJTA2aWiKw/VddRpHrKeZLF0QPUxqn0x4= +github.com/gofiber/fiber/v2 v2.52.8/go.mod h1:YEcBbO/FB+5M1IZNBP9FO3J9281zgPAreiI1oqg8nDw= github.com/gofiber/helmet/v2 v2.2.26 h1:KreQVUpCIGppPQ6Yt8qQMaIR4fVXMnvBdsda0dJSsO8= github.com/gofiber/helmet/v2 v2.2.26/go.mod h1:XE0DF4cgf0M5xIt7qyAK5zOi8jJblhxfSDv9DAmEEQo= -github.com/gofiber/storage/badger/v2 v2.1.5 h1:29aVC10GRbaFWk6ramu5rY1N3Xq3TDaFR5pk1NutitY= -github.com/gofiber/storage/badger/v2 v2.1.5/go.mod h1:pOu//ssR5WDvBsOeuYF6uXrHs4qiy3BOAX43goUM3so= +github.com/gofiber/storage/badger/v2 v2.0.1 h1:iIB5Dh2dypJjdEruYgBf7H4l5a98R5pVKVLk5wbY5bo= +github.com/gofiber/storage/badger/v2 v2.0.1/go.mod h1:2LA5uR3q4xFVd0oXIZWK+7yzlO2vzLa/D062R7fowFI= github.com/gofiber/template v1.8.3 h1:hzHdvMwMo/T2kouz2pPCA0zGiLCeMnoGsQZBTSYgZxc= github.com/gofiber/template v1.8.3/go.mod h1:bs/2n0pSNPOkRa5VJ8zTIvedcI/lEYxzV3+YPXdBvq8= github.com/gofiber/template/django/v3 v3.1.14 h1:SvTvs+u5vTZuu1Y2pMUD2NhaGIjBj9FmDA3XD50QBvw= github.com/gofiber/template/django/v3 v3.1.14/go.mod h1:gP4vH+T1ajZw7yaejqG1dZVdHQkMC/jPoQbmlG812I0= -github.com/gofiber/utils v1.2.0 h1:NCaqd+Efg3khhN++eeUUTyBz+byIxAsmIjpl8kKOMIc= -github.com/gofiber/utils v1.2.0/go.mod h1:poZpsnhBykfnY1Mc0KeEa6mSHrS3dV0+oBWyeQmb2e0= -github.com/gofiber/utils/v2 v2.0.4 h1:WwAxUA7L4MW2DjdEHF234lfqvBqd2vYYuBtA9TJq2ec= -github.com/gofiber/utils/v2 v2.0.4/go.mod h1:GGERKU3Vhj5z6hS8YKvxL99A54DjOvTFZ0cjZnG4Lj4= +github.com/gofiber/utils v1.1.0 h1:vdEBpn7AzIUJRhe+CiTOJdUcTg4Q9RK+pEa0KPbLdrM= +github.com/gofiber/utils v1.1.0/go.mod h1:poZpsnhBykfnY1Mc0KeEa6mSHrS3dV0+oBWyeQmb2e0= +github.com/gofiber/utils/v2 v2.0.0-beta.10 h1:yDQgcBKTnZiZ4S0YY+hpTnf5iJYwVaFA2HsOgOesAyY= +github.com/gofiber/utils/v2 v2.0.0-beta.10/go.mod h1:qEZ175nSOkl5xciHmqxwNDsWzwiB39gB8RgU1d3U4mQ= github.com/gogo/protobuf v1.3.2 h1:Ov1cvc58UF3b5XjBnZv7+opcTcQFZebYjWzi34vdm4Q= github.com/gogo/protobuf v1.3.2/go.mod h1:P1XiOD3dCwIKUDQYPy72D8LYyHL2YPYrpS2s69NZV8Q= github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q= @@ -121,8 +115,8 @@ github.com/golobby/cast v1.3.3/go.mod h1:0oDO5IT84HTXcbLDf1YXuk0xtg/cRDrxhbpWKxw github.com/golobby/dotenv v1.3.2 h1:9vA8XqXXIB3cX/5xQ1CTbOCPegioHtHXIxeFng+uOqQ= github.com/golobby/dotenv v1.3.2/go.mod h1:9MMVXqzLNluhVxCv3X/DLYBNUb289f05tr+df1+7278= github.com/google/flatbuffers v1.12.1/go.mod h1:1AeVuKshWv4vARoZatz6mlQ0JxURH0Kv5+zNeJKJCa8= -github.com/google/flatbuffers v25.12.19+incompatible h1:haMV2JRRJCe1998HeW/p0X9UaMTK6SDo0ffLn2+DbLs= -github.com/google/flatbuffers v25.12.19+incompatible/go.mod h1:1AeVuKshWv4vARoZatz6mlQ0JxURH0Kv5+zNeJKJCa8= +github.com/google/flatbuffers v25.2.10+incompatible h1:F3vclr7C3HpB1k9mxCGRMXq6FdUalZ6H/pNX4FP1v0Q= +github.com/google/flatbuffers v25.2.10+incompatible/go.mod h1:1AeVuKshWv4vARoZatz6mlQ0JxURH0Kv5+zNeJKJCa8= github.com/google/go-cmp v0.2.0/go.mod h1:oXzfMopK8JAjlY9xF4vHSVASa0yLyX7SntLO5aqRK0M= github.com/google/go-cmp v0.3.0/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= github.com/google/go-cmp v0.3.1/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= @@ -130,8 +124,8 @@ github.com/google/go-cmp v0.4.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/ github.com/google/go-cmp v0.5.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.5.3/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= -github.com/google/go-cmp v0.7.0 h1:wk8382ETsv4JYUZwIsn6YpYiWiBsYLSJiTsyBybVuN8= -github.com/google/go-cmp v0.7.0/go.mod h1:pXiqmnSA92OHEEa9HXL2W4E7lf9JzCmGVUdgjX3N/iU= +github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI= +github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= github.com/google/uuid v1.1.2/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0= github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= @@ -141,8 +135,8 @@ github.com/jackc/pgpassfile v1.0.0 h1:/6Hmqy13Ss2zCq62VdNG8tM1wchn8zjSGOBJ6icpsI github.com/jackc/pgpassfile v1.0.0/go.mod h1:CEx0iS5ambNFdcRtxPj5JhEz+xB6uRky5eyVu/W2HEg= github.com/jackc/pgservicefile v0.0.0-20240606120523-5a60cdf6a761 h1:iCEnooe7UlwOQYpKFhBabPMi4aNAfoODPEFNiAnClxo= github.com/jackc/pgservicefile v0.0.0-20240606120523-5a60cdf6a761/go.mod h1:5TJZWKEWniPve33vlWYSoGYefn3gLQRzjfDlhSJ9ZKM= -github.com/jackc/pgx/v5 v5.9.2 h1:3ZhOzMWnR4yJ+RW1XImIPsD1aNSz4T4fyP7zlQb56hw= -github.com/jackc/pgx/v5 v5.9.2/go.mod h1:mal1tBGAFfLHvZzaYh77YS/eC6IX9OWbRV1QIIM0Jn4= +github.com/jackc/pgx/v5 v5.7.5 h1:JHGfMnQY+IEtGM63d+NGMjoRpysB2JBwDr5fsngwmJs= +github.com/jackc/pgx/v5 v5.7.5/go.mod h1:aruU7o91Tc2q2cFp5h4uP3f6ztExVpyVv88Xl/8Vl8M= github.com/jackc/puddle/v2 v2.2.2 h1:PR8nw+E/1w0GLuRFSmiioY6UooMp6KJv0/61nB7icHo= github.com/jackc/puddle/v2 v2.2.2/go.mod h1:vriiEXHvEE654aYKXXjOvZM39qJ0q+azkZFrfEOc3H4= github.com/jinzhu/inflection v1.0.0 h1:K317FqzuhWc8YvSVlFMCCUb36O/S9MCKRDI7QkRKD/E= @@ -152,8 +146,8 @@ github.com/jinzhu/now v1.1.5/go.mod h1:d3SSVoowX0Lcu0IBviAWJpolVfI5UJVZZ7cO71lE/ github.com/kisielk/errcheck v1.5.0/go.mod h1:pFxgyoBC7bSaBwPgfKdkLd5X25qrDl4LWUI2bnpBCr8= github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck= github.com/klauspost/compress v1.12.3/go.mod h1:8dP1Hq4DHOhN9w426knH3Rhby4rFm6D8eO+e+Dq5Gzg= -github.com/klauspost/compress v1.18.5 h1:/h1gH5Ce+VWNLSWqPzOVn6XBO+vJbCNGvjoaGBFW2IE= -github.com/klauspost/compress v1.18.5/go.mod h1:cwPg85FWrGar70rWktvGQj8/hthj3wpl0PGDogxkrSQ= +github.com/klauspost/compress v1.18.0 h1:c/Cqfb0r+Yi+JtIEq73FWXVkRonBlf0CRNYc8Zttxdo= +github.com/klauspost/compress v1.18.0/go.mod h1:2Pp+KzxcywXVXMr50+X0Q/Lsb43OQHYWRCY2AiWywWQ= github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo= github.com/kr/pretty v0.2.1/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI= github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE= @@ -164,15 +158,15 @@ github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= github.com/leodido/go-urn v1.4.0 h1:WT9HwE9SGECu3lg4d/dIA+jxlljEa1/ffXKmRjqdmIQ= github.com/leodido/go-urn v1.4.0/go.mod h1:bvxc+MVxLKB4z00jd1z+Dvzr47oO32F/QSNjSBOlFxI= -github.com/lucasb-eyer/go-colorful v1.4.0 h1:UtrWVfLdarDgc44HcS7pYloGHJUjHV/4FwW4TvVgFr4= -github.com/lucasb-eyer/go-colorful v1.4.0/go.mod h1:R4dSotOR9KMtayYi1e77YzuveK+i7ruzyGqttikkLy0= +github.com/lucasb-eyer/go-colorful v1.2.0 h1:1nnpGOrhyZZuNyfu1QjKiUICQ74+3FNCN69Aj6K7nkY= +github.com/lucasb-eyer/go-colorful v1.2.0/go.mod h1:R4dSotOR9KMtayYi1e77YzuveK+i7ruzyGqttikkLy0= github.com/magiconair/properties v1.8.0/go.mod h1:PppfXfuXeibc/6YijjN8zIbojt8czPbwD3XqdrwzmxQ= github.com/mattn/go-colorable v0.1.14 h1:9A9LHSqF/7dyVVX6g0U9cwm9pG3kP9gSzcuIPHPsaIE= github.com/mattn/go-colorable v0.1.14/go.mod h1:6LmQG8QLFO4G5z1gPvYEzlUgJ2wF+stgPZH1UqBm1s8= -github.com/mattn/go-isatty v0.0.22 h1:j8l17JJ9i6VGPUFUYoTUKPSgKe/83EYU2zBC7YNKMw4= -github.com/mattn/go-isatty v0.0.22/go.mod h1:ZXfXG4SQHsB/w3ZeOYbR0PrPwLy+n6xiMrJlRFqopa4= -github.com/mattn/go-runewidth v0.0.23 h1:7ykA0T0jkPpzSvMS5i9uoNn2Xy3R383f9HDx3RybWcw= -github.com/mattn/go-runewidth v0.0.23/go.mod h1:XBkDxAl56ILZc9knddidhrOlY5R/pDhgLpndooCuJAs= +github.com/mattn/go-isatty v0.0.20 h1:xfD0iDuEKnDkl03q4limB+vH+GxLEtL/jb4xVJSWWEY= +github.com/mattn/go-isatty v0.0.20/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y= +github.com/mattn/go-runewidth v0.0.16 h1:E5ScNMtiwvlvB5paMFdw9p4kSQzbXFikJ5SQO6TULQc= +github.com/mattn/go-runewidth v0.0.16/go.mod h1:Jdepj2loyihRzMpdS35Xk/zdY8IAYHsh153qUoGf23w= github.com/mitchellh/go-homedir v1.1.0/go.mod h1:SfyaCUpYCn1Vlf4IUYiD9fPX4A5wJrkLzIz1N1q0pr0= github.com/mitchellh/mapstructure v1.1.2/go.mod h1:FVVH3fgwuzCH5S8UJGiWEs2h04kUh9fWfEaFds41c1Y= github.com/muesli/termenv v0.16.0 h1:S5AlUN9dENB57rsbnkPyfdGuWIlkmzJjbFf0Tf5FWUc= @@ -187,15 +181,14 @@ github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2/go.mod h1:iKH github.com/pquerna/otp v1.5.0 h1:NMMR+WrmaqXU4EzdGJEE1aUUI0AMRzsp96fFFWNPwxs= github.com/pquerna/otp v1.5.0/go.mod h1:dkJfzwRKNiegxyNb54X/3fLwhCynbMspSyWKnvi1AEg= github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= +github.com/rivo/uniseg v0.2.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc= github.com/rivo/uniseg v0.4.7 h1:WUdvkW8uEhrYfLC4ZzdpI2ztxP1I582+49Oc5Mq64VQ= github.com/rivo/uniseg v0.4.7/go.mod h1:FN3SvrM+Zdj16jyLfmOkMNblXMcoc8DfTHruCPUcx88= github.com/rogpeppe/go-internal v1.9.0 h1:73kH8U+JUqXU8lRuOHeVHaa/SZPifC7BkcraZVejAe8= github.com/rogpeppe/go-internal v1.9.0/go.mod h1:WtVeX8xhTBvf0smdhujwtBcq4Qrzq/fJaraNFVN+nFs= github.com/russross/blackfriday v1.5.2/go.mod h1:JO/DiYxRf+HjHt06OyowR9PTA263kcR/rfWxYHBV53g= -github.com/sethvargo/go-password v0.3.1 h1:WqrLTjo7X6AcVYfC6R7GtSyuUQR9hGyAj/f1PYQZCJU= -github.com/sethvargo/go-password v0.3.1/go.mod h1:rXofC1zT54N7R8K/h1WDUdkf9BOx5OptoxrMBcrXzvs= -github.com/shamaton/msgpack/v3 v3.1.0 h1:jsk0vEAqVvvS9+fTZ5/EcQ9tz860c9pWxJ4Iwecz8gU= -github.com/shamaton/msgpack/v3 v3.1.0/go.mod h1:DcQG8jrdrQCIxr3HlMYkiXdMhK+KfN2CitkyzsQV4uc= +github.com/shamaton/msgpack/v2 v2.2.3 h1:uDOHmxQySlvlUYfQwdjxyybAOzjlQsD1Vjy+4jmO9NM= +github.com/shamaton/msgpack/v2 v2.2.3/go.mod h1:6khjYnkx73f7VQU7wjcFS9DFjs+59naVWJv1TB7qdOI= github.com/spaolacci/murmur3 v0.0.0-20180118202830-f09979ecbc72/go.mod h1:JwIasOWyU6f++ZhiEuf87xNszmSA2myDM2Kzu9HwQUA= github.com/spaolacci/murmur3 v1.1.0 h1:7c1g84S4BPRrfL5Xrdp6fOJ206sU9y293DDHaoy0bLI= github.com/spaolacci/murmur3 v1.1.0/go.mod h1:JwIasOWyU6f++ZhiEuf87xNszmSA2myDM2Kzu9HwQUA= @@ -215,15 +208,13 @@ github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/ github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU= github.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4= -github.com/stretchr/testify v1.11.1 h1:7s2iGBzp5EwR7/aIZr8ao5+dra3wiQyKjjFuvgVKu7U= -github.com/stretchr/testify v1.11.1/go.mod h1:wZwfW3scLgRK+23gO65QZefKpKQRnfz6sD981Nm4B6U= +github.com/stretchr/testify v1.10.0 h1:Xv5erBjTwe/5IxqUQTdXv5kgmIvbHo3QQyRwhJsOfJA= +github.com/stretchr/testify v1.10.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= github.com/ugorji/go/codec v0.0.0-20181204163529-d75b2dcb6bc8/go.mod h1:VFNgLljTbGfSG7qAOspJ7OScBnGdDN/yBr0sguwnwf0= github.com/valyala/bytebufferpool v1.0.0 h1:GqA5TC/0021Y/b9FG4Oi9Mr3q7XYx6KllzawFIhcdPw= github.com/valyala/bytebufferpool v1.0.0/go.mod h1:6bBcMArwyJ5K/AmCkWv1jt77kVWyCJ6HpOuEn7z0Csc= -github.com/valyala/fasthttp v1.70.0 h1:LAhMGcWk13QZWm85+eg8ZBNbrq5mnkWFGbHMUJHIdXA= -github.com/valyala/fasthttp v1.70.0/go.mod h1:oDZEHHkJ/Buyklg6uURmYs19442zFSnCIfX3j1FY3pE= -github.com/wneessen/go-mail v0.7.2 h1:xxPnhZ6IZLSgxShebmZ6DPKh1b6OJcoHfzy7UjOkzS8= -github.com/wneessen/go-mail v0.7.2/go.mod h1:+TkW6QP3EVkgTEqHtVmnAE/1MRhmzb8Y9/W3pweuS+k= +github.com/valyala/fasthttp v1.63.0 h1:DisIL8OjB7ul2d7cBaMRcKTQDYnrGy56R4FCiuDP0Ns= +github.com/valyala/fasthttp v1.63.0/go.mod h1:REc4IeW+cAEyLrRPa5A81MIjvz0QE1laoTX2EaPHKJM= github.com/x448/float16 v0.8.4 h1:qLwI1I70+NjRFUR3zs1JPUCgaCXSh3SW62uAKT1mSBM= github.com/x448/float16 v0.8.4/go.mod h1:14CWIYCyZA/cWjXOioeEpHeN/83MdbZDRQHoFcYsOfg= github.com/xo/terminfo v0.0.0-20220910002029-abceb7e1c41e h1:JVG44RsyaB9T2KIHavMF/ppJZNG9ZpyihvCd0w101no= @@ -233,32 +224,25 @@ github.com/xyproto/randomstring v1.0.5 h1:YtlWPoRdgMu3NZtP45drfy1GKoojuR7hmRcnhZ github.com/xyproto/randomstring v1.0.5/go.mod h1:rgmS5DeNXLivK7YprL0pY+lTuhNQW3iGxZ18UQApw/E= github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= -github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY= -github.com/yuin/goldmark v1.8.2 h1:kEGpgqJXdgbkhcOgBxkC0X0PmoPG1ZyoZ117rDVp4zE= -github.com/yuin/goldmark v1.8.2/go.mod h1:ip/1k0VRfGynBgxOz0yCqHrbZXhcjxyuS66Brc7iBKg= +github.com/yuin/goldmark v1.7.12 h1:YwGP/rrea2/CnCtUHgjuolG/PnMxdQtPMO5PvaE2/nY= +github.com/yuin/goldmark v1.7.12/go.mod h1:ip/1k0VRfGynBgxOz0yCqHrbZXhcjxyuS66Brc7iBKg= go.opencensus.io v0.22.5/go.mod h1:5pWMHQbX5EPX2/62yrJeAkowc+lfs/XD7Uxpq3pI6kk= go.opencensus.io v0.24.0 h1:y73uSU6J157QMP2kn2r30vwW1A2W2WFwSCGnAVxeaD0= go.opencensus.io v0.24.0/go.mod h1:vNK8G9p7aAivkbmorf4v+7Hgx+Zs0yY+0fOtgBfjQKo= -go.yaml.in/yaml/v4 v4.0.0-rc.4 h1:UP4+v6fFrBIb1l934bDl//mmnoIZEDK0idg1+AIvX5U= -go.yaml.in/yaml/v4 v4.0.0-rc.4/go.mod h1:aZqd9kCMsGL7AuUv/m/PvWLdg5sjJsZ4oHDEnfPPfY0= golang.org/x/crypto v0.0.0-20181203042331-505ab145d0a9/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= -golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= -golang.org/x/crypto v0.14.0/go.mod h1:MVFd36DqK4CsrnJYDkBA3VC4m2GkXAM0PvzMCn4JQf4= -golang.org/x/crypto v0.50.0 h1:zO47/JPrL6vsNkINmLoo/PH1gcxpls50DNogFvB5ZGI= -golang.org/x/crypto v0.50.0/go.mod h1:3muZ7vA7PBCE6xgPX7nkzzjiUq87kRItoJQM1Yo8S+Q= +golang.org/x/crypto v0.40.0 h1:r4x+VvoG5Fm+eJcxMaY8CQM7Lb0l1lsmjGBQ6s8BfKM= +golang.org/x/crypto v0.40.0/go.mod h1:Qr1vMER5WyS2dfPHAlsOj01wgLbsyWtFn/aY+5+ZdxY= golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= -golang.org/x/exp v0.0.0-20260410095643-746e56fc9e2f h1:W3F4c+6OLc6H2lb//N1q4WpJkhzJCK5J6kUi1NTVXfM= -golang.org/x/exp v0.0.0-20260410095643-746e56fc9e2f/go.mod h1:J1xhfL/vlindoeF/aINzNzt2Bket5bjo9sdOYzOsU80= +golang.org/x/exp v0.0.0-20250620022241-b7579e27df2b h1:M2rDM6z3Fhozi9O7NWsxAkg/yqS/lQJ6PmkyIV3YP+o= +golang.org/x/exp v0.0.0-20250620022241-b7579e27df2b/go.mod h1:3//PLf8L/X+8b4vuAfHzxeRUl04Adcb341+IGKfnqS8= golang.org/x/lint v0.0.0-20181026193005-c67002cb31c3/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE= golang.org/x/lint v0.0.0-20190227174305-5b3e6a55c961/go.mod h1:wehouNa3lNwaWXcvxsM5YxQ5yQlVC4a0KAMCusXpPoU= golang.org/x/lint v0.0.0-20190313153728-d0100b6bd8b3/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc= golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= -golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4= -golang.org/x/mod v0.8.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20190213061140-3a22650c66bd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= @@ -268,12 +252,8 @@ golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLL golang.org/x/net v0.0.0-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= golang.org/x/net v0.0.0-20201110031124-69a78807bb2b/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= -golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= -golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= -golang.org/x/net v0.6.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs= -golang.org/x/net v0.10.0/go.mod h1:0qNGK6F8kojg2nk9dLZ2mShWaEBan6FAoqfSigmmuDg= -golang.org/x/net v0.53.0 h1:d+qAbo5L0orcWAr0a9JweQpjXF19LMXJE8Ey7hwOdUA= -golang.org/x/net v0.53.0/go.mod h1:JvMuJH7rrdiCfbeHoo3fCQU24Lf5JJwT9W3sJFulfgs= +golang.org/x/net v0.42.0 h1:jzkYrhi3YQWD6MLBJcsklgQsoAcw89EcZbJw8Z614hs= +golang.org/x/net v0.42.0/go.mod h1:FF1RA5d3u7nAYA4z2TkclSCKh68eSXtiFwcWQpPXdt8= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= @@ -281,39 +261,22 @@ golang.org/x/sync v0.0.0-20190227155943-e225da77a7e6/go.mod h1:RxMgew5VJxzue5/jJ golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.1.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.20.0 h1:e0PTpb7pjO8GAtTs2dQ6jYa5BWYlMuX047Dco/pItO4= -golang.org/x/sync v0.20.0/go.mod h1:9xrNwdLfx4jkKbNva9FpL6vEN7evnE43NNNJQ2LF3+0= +golang.org/x/sync v0.16.0 h1:ycBJEhp9p4vXvUZNszeOq0kGTPghopOL8q0fq3vstxw= +golang.org/x/sync v0.16.0/go.mod h1:1dzgHSNfp02xaA81J2MS99Qcpr2w7fw1gpm99rleRqA= golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20181205085412-a5c9d58dba9a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190502145724-3ef323f4f1fd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20221010170243-090e33056c14/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.8.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.13.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.43.0 h1:Rlag2XtaFTxp19wS8MXlJwTvoh8ArU6ezoyFsMyCTNI= -golang.org/x/sys v0.43.0/go.mod h1:4GL1E5IUh+htKOUEOaiffhrAeqysfVGipDYzABqnCmw= -golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= -golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= -golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k= -golang.org/x/term v0.8.0/go.mod h1:xPskH00ivmX89bAKVGSKKtLOWNx2+17Eiy94tnKShWo= -golang.org/x/term v0.13.0/go.mod h1:LTmsnFJwVN6bCy1rVCoS+qHT1HhALEFxKncY3WNNh4U= +golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.34.0 h1:H5Y5sJ2L2JRdyv7ROF1he/lPdvFsd0mJHFw2ThKHxLA= +golang.org/x/sys v0.34.0/go.mod h1:BJP2sWEmIv4KK5OTEluFJCKSidICx8ciO85XgH3Ak8k= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= -golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= -golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= -golang.org/x/text v0.9.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8= -golang.org/x/text v0.13.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE= -golang.org/x/text v0.36.0 h1:JfKh3XmcRPqZPKevfXVpI1wXPTqbkE5f7JA92a55Yxg= -golang.org/x/text v0.36.0/go.mod h1:NIdBknypM8iqVmPiuco0Dh6P5Jcdk8lJL0CUebqK164= +golang.org/x/text v0.27.0 h1:4fGWRpyh641NLlecmyl4LOe6yDdfaYNrGb2zdfo4JV4= +golang.org/x/text v0.27.0/go.mod h1:1D28KMCvyooCX9hBiosv5Tz/+YLxj0j7XhWjpSUF7CU= golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20190114222345-bf090417da8b/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20190226205152-f727befe758c/go.mod h1:9Yl7xja0Znq3iFh3HoIrodX9oNMXvdceNzlUR8zjMvY= @@ -322,8 +285,6 @@ golang.org/x/tools v0.0.0-20190524140312-2c0ae7006135/go.mod h1:RgjU9mgBXZiqYHBn golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20200619180055-7c47624df98f/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= golang.org/x/tools v0.0.0-20210106214847-113979e3529a/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= -golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc= -golang.org/x/tools v0.6.0/go.mod h1:Xwgl3UAJ/d3gWutnCtw505GrjyAbvKui8lOU390QaIU= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= @@ -349,8 +310,8 @@ google.golang.org/protobuf v1.22.0/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2 google.golang.org/protobuf v1.23.0/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU= google.golang.org/protobuf v1.23.1-0.20200526195155-81db48ad09cc/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU= google.golang.org/protobuf v1.25.0/go.mod h1:9JNX74DMeImyA3h4bdi1ymwjUzf21/xIlbajtzgsN7c= -google.golang.org/protobuf v1.36.11 h1:fV6ZwhNocDyBLK0dj+fg8ektcVegBBuEolpbTQyBNVE= -google.golang.org/protobuf v1.36.11/go.mod h1:HTf+CrKn2C3g5S8VImy6tdcUvCska2kB7j23XfzDpco= +google.golang.org/protobuf v1.36.6 h1:z1NpPI8ku2WgiWnf+t9wTPsn6eP1L7ksHUlkfLvd9xY= +google.golang.org/protobuf v1.36.6/go.mod h1:jduwjTPXsFjZGTmRluh+L6NjiWu7pchiJ2/5YcXBHnY= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk= @@ -361,7 +322,7 @@ gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gorm.io/driver/postgres v1.6.0 h1:2dxzU8xJ+ivvqTRph34QX+WrRaJlmfyPqXmoGVjMBa4= gorm.io/driver/postgres v1.6.0/go.mod h1:vUw0mrGgrTK+uPHEhAdV4sfFELrByKVGnaVRkXDhtWo= -gorm.io/gorm v1.31.1 h1:7CA8FTFz/gRfgqgpeKIBcervUn3xSyPUmr6B2WXJ7kg= -gorm.io/gorm v1.31.1/go.mod h1:XyQVbO2k6YkOis7C2437jSit3SsDK72s7n7rsSHd+Gs= +gorm.io/gorm v1.30.0 h1:qbT5aPv1UH8gI99OsRlvDToLxW5zR7FzS9acZDOZcgs= +gorm.io/gorm v1.30.0/go.mod h1:8Z33v652h4//uMA76KjeDH8mJXPm1QNCYrMeatR0DOE= honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= diff --git a/helpers/authelia/database.go b/helpers/authelia/database.go deleted file mode 100644 index 47e0e62..0000000 --- a/helpers/authelia/database.go +++ /dev/null @@ -1,74 +0,0 @@ -package authelia - -import ( - "os" - - "git.readonly.ch/bouzoure/pop-camarades/helpers" - "go.yaml.in/yaml/v4" -) - -type AutheliaUser struct { - Password string `yaml:"password"` - DisplayName string `yaml:"displayname"` - Email string `yaml:"email"` - Groups []string `yaml:"groups"` - GivenName string `yaml:"given_name"` - MiddleName string `yaml:"middle_name"` - FamilyName string `yaml:"family_name"` - Nickname string `yaml:"nickname"` - Gender string `yaml:"gender"` - Birthdate string `yaml:"birthdate"` - Website string `yaml:"website"` - Profile string `yaml:"profile"` - Picture string `yaml:"picture"` - ZoneInfo string `yaml:"zoneinfo"` - Locale string `yaml:"locale"` - PhoneNumber string `yaml:"phone_number"` - PhoneExtension string `yaml:"phone_extension"` - Disabled bool `yaml:"disabled"` - Address any `yaml:"address"` - Extra map[string]any `yaml:"extra"` -} - -type AutheliaUsers struct { - Users map[string]AutheliaUser `yaml:"users"` -} - -func ReadDatabase() (AutheliaUsers, error) { - var users AutheliaUsers - - // Get config - config, err := helpers.GetConfig() - if err != nil { - return users, err - } - - // Read YAML file - filePath := config.Authelia.UsersLocation - fileContent, err := os.ReadFile(filePath) - if err != nil { - return users, err - } - - // Unmarshal YAML - err = yaml.Unmarshal(fileContent, &users) - - return users, err -} - -func WriteDatabase(users AutheliaUsers) error { - // Get config - config, err := helpers.GetConfig() - if err != nil { - return err - } - - // Marshal YAML - yamlData, err := yaml.Marshal(users) - if err != nil { - return err - } - - filePath := config.Authelia.UsersLocation - return os.WriteFile(filePath, yamlData, 0644) -} diff --git a/helpers/authelia/groups.go b/helpers/authelia/groups.go deleted file mode 100644 index 4620b13..0000000 --- a/helpers/authelia/groups.go +++ /dev/null @@ -1,57 +0,0 @@ -package authelia - -import ( - "fmt" - "strings" - - "git.readonly.ch/bouzoure/pop-camarades/helpers" - "git.readonly.ch/bouzoure/pop-camarades/models" -) - -func GetPersonGroups(userid uint) []string { - var groups []string - - db, err := helpers.GetDatabase() - if err != nil { - return groups - } - - var person models.Person - db.Preload("Section").Find(&person, "id = ?", userid) - - if person.SectionID <= 0 { - return groups - } - - groups = append(groups, fmt.Sprintf( - "section_%s", - strings.ReplaceAll(person.Section.ShortName, " ", "_"), - )) - - if person.Section.ParentSectionID == nil { - return groups - } - - parentID := person.Section.ParentSectionID - for { - var section models.Section - db.Preload("parent_section").Find(§ion, "id = ?", parentID) - - if section.ID <= 0 { - return groups - } - - groups = append(groups, fmt.Sprintf( - "section_%s", - strings.ReplaceAll(section.ShortName, " ", "_"), - )) - - if section.ParentSectionID != nil { - parentID = person.Section.ParentSectionID - } else { - break - } - } - - return groups -} diff --git a/helpers/authelia/mail.go b/helpers/authelia/mail.go deleted file mode 100644 index 5f6e68b..0000000 --- a/helpers/authelia/mail.go +++ /dev/null @@ -1,66 +0,0 @@ -package authelia - -import ( - ht "html/template" - tt "text/template" - - "git.readonly.ch/bouzoure/pop-camarades/helpers" - "git.readonly.ch/bouzoure/pop-camarades/models" -) - -type InputWelcomeMail struct { - Person models.Person - ResetURL string -} - -func SendWelcomeMail(person models.Person) error { - config, err := helpers.GetConfig() - if err != nil { - return err - } - - mailer, err := helpers.GetMailer() - if err != nil { - return err - } - - msg, err := helpers.NewMessage() - if err != nil { - return err - } - - mailsFS, err := helpers.GetEmbeddedFS("mails") - if err != nil { - return err - } - - inputValues := InputWelcomeMail{ - Person: person, - ResetURL: config.Authelia.ResetURL, - } - - tplHTML, err := ht.ParseFS(mailsFS, "mails/welcome.html") - if err != nil { - return err - } - - tplTXT, err := tt.ParseFS(mailsFS, "mails/welcome.txt") - if err != nil { - return err - } - - msg.Subject("Ton compte POP Vaud a été créé") - msg.AddTo(person.Email) - - err = msg.SetBodyHTMLTemplate(tplHTML, inputValues) - if err != nil { - return err - } - - err = msg.AddAlternativeTextTemplate(tplTXT, inputValues) - if err != nil { - return err - } - - return mailer.DialAndSend(msg) -} diff --git a/helpers/authelia/users.go b/helpers/authelia/users.go deleted file mode 100644 index 437ee5e..0000000 --- a/helpers/authelia/users.go +++ /dev/null @@ -1,115 +0,0 @@ -package authelia - -import ( - "fmt" - "strings" - "time" - - "git.readonly.ch/bouzoure/pop-camarades/helpers" - "git.readonly.ch/bouzoure/pop-camarades/models" - "github.com/alexedwards/argon2id" - "github.com/charmbracelet/log" - "github.com/sethvargo/go-password/password" -) - -func SyncUsers() error { - db, err := helpers.GetDatabase() - if err != nil { - return err - } - - var accounts []models.PersonAccount - result := db.Joins("Person").Find( - &accounts, "account_created IS NULL OR update_needed = ?", true, - ) - - if result.Error != nil { - return result.Error - } - - // If no accounts to create or update -> skip sync - if result.RowsAffected <= 0 { - return nil - } - - users, err := ReadDatabase() - if err != nil { - return err - } - - for _, account := range accounts { - accountExists := false - for uuid, user := range users.Users { - if uuid == account.UUID.String() { - accountExists = true - - // Update account - user.Disabled = !account.Enabled - user.Groups = strings.Split(account.Groups, "|||") - user.GivenName = account.Person.FirstName - user.FamilyName = account.Person.LastName - user.DisplayName = fmt.Sprintf("%s %s", - account.Person.FirstName, account.Person.LastName, - ) - user.Email = account.Person.Email - - // Overwrite old user struct - users.Users[uuid] = user - - // Exit loop early - break - } - } - - if !accountExists { - // Generate random password - randomPassword, err := password.Generate(64, 10, 10, false, false) - if err != nil { - log.Error(err) - continue - } - - argonParams := argon2id.Params{ - Iterations: 3, - Memory: 65536, - Parallelism: 4, - KeyLength: 32, - SaltLength: 16, - } - hashedPassword, err := argon2id.CreateHash(randomPassword, &argonParams) - if err != nil { - log.Error(err) - continue - } - - // Create account - user := AutheliaUser{ - Disabled: !account.Enabled, - Groups: strings.Split(account.Groups, "|||"), - GivenName: account.Person.FirstName, - FamilyName: account.Person.LastName, - DisplayName: fmt.Sprintf("%s %s", - account.Person.FirstName, account.Person.LastName, - ), - Email: account.Person.Email, - Password: hashedPassword, - } - - // Insert new user - users.Users[account.UUID.String()] = user - } - - account.UpdateNeeded = false - if !account.AccountCreated.Valid { - err := SendWelcomeMail(account.Person) - if err != nil { - log.Error(err) - } - account.AccountCreated.Scan(time.Now()) - } - - db.Save(&account) - } - - return WriteDatabase(users) -} diff --git a/helpers/config.go b/helpers/config.go index a1f98c6..e87443d 100644 --- a/helpers/config.go +++ b/helpers/config.go @@ -20,18 +20,6 @@ type Config struct { Sessions struct { Location string `env:"SESSIONS_LOCATION"` } - Authelia struct { - UsersLocation string `env:"AUTHELIA_USERS_LOCATION"` - ResetURL string `env:"AUTHELIA_RESET_URL"` - } - Mail struct { - Host string `env:"MAIL_HOST"` - Port int `env:"MAIL_PORT"` - Username string `env:"MAIL_USERNAME"` - Password string `env:"MAIL_PASSWORD"` - FromName string `env:"MAIL_FROM_NAME"` - FromAddress string `env:"MAIL_FROM_ADDRESS"` - } } var configParsed bool diff --git a/helpers/database.go b/helpers/database.go index 73aacdf..4da0fd6 100644 --- a/helpers/database.go +++ b/helpers/database.go @@ -52,11 +52,12 @@ func GetDatabase() (*gorm.DB, error) { &models.Role{}, &models.UserRole{}, &models.Person{}, - &models.PersonAccount{}, &models.List{}, &models.ListItem{}, &models.Field{}, &models.FieldValue{}, + &models.Tag{}, + &models.PersonTag{}, ) if err != nil { return database, err diff --git a/helpers/mailer.go b/helpers/mailer.go deleted file mode 100644 index 977dbfb..0000000 --- a/helpers/mailer.go +++ /dev/null @@ -1,49 +0,0 @@ -package helpers - -import ( - "github.com/wneessen/go-mail" -) - -var mailer *mail.Client -var mailerSet bool - -func GetMailer() (*mail.Client, error) { - if mailerSet { - return mailer, nil - } - - config, err := GetConfig() - if err != nil { - return mailer, err - } - - mailer, err = mail.NewClient( - config.Mail.Host, - mail.WithPort(config.Mail.Port), - mail.WithSMTPAuth(mail.SMTPAuthAutoDiscover), - mail.WithUsername(config.Mail.Username), - mail.WithPassword(config.Mail.Password), - ) - if err != nil { - return mailer, err - } - - mailerSet = true - return mailer, nil -} - -func NewMessage() (*mail.Msg, error) { - msg := mail.NewMsg() - - config, err := GetConfig() - if err != nil { - return msg, err - } - - msg.FromFormat( - config.Mail.FromName, - config.Mail.FromAddress, - ) - - return msg, nil -} diff --git a/mails/welcome.html b/mails/welcome.html deleted file mode 100644 index c9ffcca..0000000 --- a/mails/welcome.html +++ /dev/null @@ -1,69 +0,0 @@ - - - - - - Ton compte POP Vaud a été créé - - - - - - -
- - - - - - - - - - - - - - - -
-

POP Vaud

-
-

Cher·e camarade,

- -

- Ton compte POP Vaud a été créé avec succès. Tu peux désormais accéder aux applications du parti. -

- -

Informations de connexion :

-

- Nom d'utilisateur : {{.Person.Email}} -

- -

- Pour commencer, réinitialise ton mot de passe en utilisant le lien suivant : -

- -

- Réinitialiser mon mot de passe -

- -

Applications disponibles :

- - -

- En cas de problème, contacte informatique@popvaud.ch. -

- -

- Vive la révolution ! -

-
- Les Camarades du POP Vaud -
-
- - \ No newline at end of file diff --git a/mails/welcome.txt b/mails/welcome.txt deleted file mode 100644 index 8ed74cb..0000000 --- a/mails/welcome.txt +++ /dev/null @@ -1,19 +0,0 @@ -Cher·e camarade, - -Ton compte POP Vaud a été créé avec succès. Tu peux désormais accéder aux applications du parti. - -Informations de connexion : -- Nom d'utilisateur : {{.Person.Email}} - -Pour commencer, réinitialise ton mot de passe en utilisant le lien suivant : -{{.ResetURL}} - -Applications disponibles : -- Wiki POP Vaud : https://wiki.popvaud.ch -- Nuage POP Vaud : https://nuage.popvaud.ch - -En cas de problème, contacte informatique@popvaud.ch. - -Vive la révolution ! - -Les camarades du POP Vaud \ No newline at end of file diff --git a/main.go b/main.go index 4c68e41..9c6bcdf 100644 --- a/main.go +++ b/main.go @@ -9,7 +9,6 @@ import ( "git.readonly.ch/bouzoure/pop-camarades/controllers" "git.readonly.ch/bouzoure/pop-camarades/helpers" - "git.readonly.ch/bouzoure/pop-camarades/helpers/authelia" "git.readonly.ch/bouzoure/pop-camarades/jobs" "git.readonly.ch/bouzoure/pop-camarades/middlewares" "github.com/flosch/pongo2/v6" @@ -26,16 +25,12 @@ var embedStatic embed.FS //go:embed views var embedViews embed.FS -//go:embed mails -var embedMails embed.FS - func main() { log := helpers.GetLogger() // Add embedded filesystems to shared state helpers.AddEmbeddedFS("static", &embedStatic) helpers.AddEmbeddedFS("views", &embedViews) - helpers.AddEmbeddedFS("mails", &embedMails) // Fetch app config config, err := helpers.GetConfig() @@ -62,18 +57,6 @@ func main() { // Note: jobs will be executed at launch and after every interval go helpers.RegisterJob(60*time.Minute, "clean saved sessions", jobs.CleanSavedSessions) - // Goroutine to update Authelia accounts in the background - go func() { - for { - err = authelia.SyncUsers() - if err != nil { - log.Error(err) - } - - time.Sleep(time.Minute) - } - }() - // Initialize the Pongo2 templating engine // If we are in dev mode, load templates from directory // Otherwise, use the templates embedded in the binary diff --git a/models/people.go b/models/people.go index 4e98532..8cab6a0 100644 --- a/models/people.go +++ b/models/people.go @@ -1,11 +1,6 @@ package models -import ( - "database/sql" - - "github.com/google/uuid" - "gorm.io/gorm" -) +import "gorm.io/gorm" type Person struct { gorm.Model @@ -23,15 +18,3 @@ type Person struct { SectionID uint Section Section } - -type PersonAccount struct { - gorm.Model - PersonID uint - Person Person - UUID uuid.UUID `gorm:"unique"` - Enabled bool - Groups string - AccountCreated sql.NullTime - InvitationSent sql.NullTime - UpdateNeeded bool -} diff --git a/models/tags.go b/models/tags.go new file mode 100644 index 0000000..b40f592 --- /dev/null +++ b/models/tags.go @@ -0,0 +1,17 @@ +package models + +import "gorm.io/gorm" + +type Tag struct { + gorm.Model + Name string + Color string +} + +type PersonTag struct { + gorm.Model + PersonID uint + Person Person + TagID uint + Tag Tag +} diff --git a/models/users.go b/models/users.go index 8eb330d..367c020 100644 --- a/models/users.go +++ b/models/users.go @@ -10,7 +10,7 @@ import ( type User struct { gorm.Model Name string - Email string `gorm:"unique"` + Email string Password string TotpSecret sql.NullString IsAdmin bool diff --git a/package.json b/package.json index 0b8e667..6a737f0 100644 --- a/package.json +++ b/package.json @@ -8,9 +8,9 @@ "url": "https://git.readonly.ch/bouzoure/pop-camarades" }, "devDependencies": { - "@parcel/transformer-sass": "^2.16.4", - "parcel": "^2.16.4", - "prettier": "^3.8.1", + "@parcel/transformer-sass": "2.15.4", + "parcel": "^2.15.4", + "prettier": "^3.6.2", "prettier-plugin-jinja-template": "^2.1.0" }, "source": "frontend/index.js", @@ -32,7 +32,7 @@ "build": "go build" }, "dependencies": { - "bootstrap": "^5.3.8", + "bootstrap": "^5.3.7", "bootstrap-icons": "^1.13.1", "jquery": "^3.7.1" } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index a1aff4c..f72a68d 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -9,8 +9,8 @@ importers: .: dependencies: bootstrap: - specifier: ^5.3.8 - version: 5.3.8(@popperjs/core@2.11.8) + specifier: ^5.3.7 + version: 5.3.7(@popperjs/core@2.11.8) bootstrap-icons: specifier: ^1.13.1 version: 1.13.1 @@ -19,25 +19,25 @@ importers: version: 3.7.1 devDependencies: '@parcel/transformer-sass': - specifier: ^2.16.4 - version: 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) + specifier: 2.15.4 + version: 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) parcel: - specifier: ^2.16.4 - version: 2.16.4(@swc/helpers@0.5.19) + specifier: ^2.15.4 + version: 2.15.4(@swc/helpers@0.5.17) prettier: - specifier: ^3.8.1 - version: 3.8.1 + specifier: ^3.6.2 + version: 3.6.2 prettier-plugin-jinja-template: specifier: ^2.1.0 - version: 2.1.0(prettier@3.8.1) + version: 2.1.0(prettier@3.6.2) packages: - '@lezer/common@1.5.1': - resolution: {integrity: sha512-6YRVG9vBkaY7p1IVxL4s44n5nUnaNnGM2/AckNgYOnxTG2kWh1vR8BMxPseWPjRNpb5VtXnMpeYAEAADoRV1Iw==} + '@lezer/common@1.2.3': + resolution: {integrity: sha512-w7ojc8ejBqr2REPsWxJjrMFsA/ysDCFICn8zEOR9mrqzOu2amhITYuLD8ag6XZf0CFXDrhKqw7+tW8cX66NaDA==} - '@lezer/lr@1.4.8': - resolution: {integrity: sha512-bPWa0Pgx69ylNlMlPvBPryqeLYQjyJjqPx+Aupm5zydLIF3NE+6MMLT8Yi23Bd9cif9VS00aUebn+6fDIGBcDA==} + '@lezer/lr@1.4.2': + resolution: {integrity: sha512-pu0K1jCIdnQ12aWNaAVU5bzi7Bd1w54J3ECgANPmYLtQKP0HBj2cE/5coBD66MT10xbtIuUr7tg0Shbsvk0mDA==} '@lmdb/lmdb-darwin-arm64@2.8.5': resolution: {integrity: sha512-KPDeVScZgA1oq0CiPBcOa3kHIqU+pTOwRFDIhxvmf8CTNvqdZQYp5cCKW0bUk69VygB2PuTiINFWbY78aR2pQw==} @@ -103,221 +103,217 @@ packages: cpu: [x64] os: [win32] - '@parcel/bundler-default@2.16.4': - resolution: {integrity: sha512-Nb8peNvhfm1+660CLwssWh4weY+Mv6vEGS6GPKqzJmTMw50udi0eS1YuWFzvmhSiu1KsYcUD37mqQ1LuIDtWoA==} - engines: {node: '>= 16.0.0', parcel: ^2.16.4} + '@parcel/bundler-default@2.15.4': + resolution: {integrity: sha512-4vkaZuwGqL8L7NqEgjRznz9/QoeVKk0Z6z2nzfpdnSWA4xX3moUj+JeoqGUbyFGuPzfCma4SA4+txnQbKu0edQ==} + engines: {node: '>= 16.0.0', parcel: ^2.15.4} - '@parcel/cache@2.16.4': - resolution: {integrity: sha512-+uCyeElSga2MBbmbXpIj/WVKH7TByCrKaxtHbelfKKIJpYMgEHVjO4cuc7GUfTrUAmRUS8ZGvnX7Etgq6/jQhw==} + '@parcel/cache@2.15.4': + resolution: {integrity: sha512-x/QgMuVvXQV6uNhIF+6kz6SzhVVkwf6WPSVG/xQvGMEiBabForDVYIhIEuN3RzUXCU352CGM6d8TtLLg61W1fw==} engines: {node: '>= 16.0.0'} peerDependencies: - '@parcel/core': ^2.16.4 + '@parcel/core': ^2.15.4 - '@parcel/codeframe@2.16.4': - resolution: {integrity: sha512-s64aMfOJoPrXhKH+Y98ahX0O8aXWvTR+uNlOaX4yFkpr4FFDnviLcGngDe/Yo4Qq2FJZ0P6dNswbJTUH9EGxkQ==} + '@parcel/codeframe@2.15.4': + resolution: {integrity: sha512-ErAPEQaJIpB+ocNZ3rl8AEK6piA7JBInwZLNU0eHMthm01Ssb10JkpAadyn1w9IVfCey+kqQcEeWv47Yh6mL1Q==} engines: {node: '>= 16.0.0'} - '@parcel/compressor-raw@2.16.4': - resolution: {integrity: sha512-IK8IpNhw61B2HKgA1JhGhO9y+ZJFRZNTEmvhN1NdLdPqvgEXm2EunT+m6D9z7xeoeT6XnUKqM0eRckEdD0OXbA==} - engines: {node: '>= 16.0.0', parcel: ^2.16.4} + '@parcel/compressor-raw@2.15.4': + resolution: {integrity: sha512-gECePZxVXBwyo0DYbAq4V4SimVzHaJ3p8QOgFIfOqNmlEBbhLf3QSjArFPJNKiHZaJuclh4a+IShFBN+u6tXXw==} + engines: {node: '>= 16.0.0', parcel: ^2.15.4} - '@parcel/config-default@2.16.4': - resolution: {integrity: sha512-kBxuTY/5trEVnvXk92l7LVkYjNuz3SaqWymFhPjEnc8GY4ZVdcWrWdXWTB9hUhpmRYJctFCyGvM0nN05JTiM2g==} + '@parcel/config-default@2.15.4': + resolution: {integrity: sha512-chUE4NpcSXpMfTcSmgl4Q78zH+ZFe0qdgZLBtF4EH2QQakW7wAXAYRxS2/P3xFkUj0/51sExhbCFWgulrlGDPw==} peerDependencies: - '@parcel/core': ^2.16.4 + '@parcel/core': ^2.15.4 - '@parcel/core@2.16.4': - resolution: {integrity: sha512-a0CgrW5A5kwuSu5J1RFRoMQaMs9yagvfH2jJMYVw56+/7NRI4KOtu612SG9Y1ERWfY55ZwzyFxtLWvD6LO+Anw==} + '@parcel/core@2.15.4': + resolution: {integrity: sha512-+TXxTm58lFwXXObFAEclwKX1p1AdixcD+M7T4NeFIQzQ4F20Vr+6oybCSqW1exNA3uHqVDDFLx7TT78seVjvkg==} engines: {node: '>= 16.0.0'} - '@parcel/diagnostic@2.16.4': - resolution: {integrity: sha512-YN5CfX7lFd6yRLxyZT4Sj3sR6t7nnve4TdXSIqapXzQwL7Bw+sj79D95wTq2rCm3mzk5SofGxFAXul2/nG6gcQ==} + '@parcel/diagnostic@2.15.4': + resolution: {integrity: sha512-8MAqefwzBKceNN3364OLm+p4HRD7AfimfFW3MntLxPB6bnelc9UBg5c9zEm34zYEctbmky8gqYgAUSDjqYC5Hw==} engines: {node: '>= 16.0.0'} - '@parcel/error-overlay@2.16.4': - resolution: {integrity: sha512-e8KYKnMsfmQnqIhsUWBUZAXlDK30wkxsAGle1tZ0gOdoplaIdVq/WjGPatHLf6igLM76c3tRn2vw8jZFput0jw==} + '@parcel/error-overlay@2.15.4': + resolution: {integrity: sha512-xxeaWm8fV8Z4uGy/c09mOvmFSHBOgF1gCMQwLCwZvfMLqIWkdZaUQ2cRhWZIS6pOXaRVC7YpcXzk2DOiSUNSbQ==} engines: {node: '>= 16.0.0'} - '@parcel/events@2.16.4': - resolution: {integrity: sha512-slWQkBRAA7o0cN0BLEd+yCckPmlVRVhBZn5Pn6ktm4EzEtrqoMzMeJOxxH8TXaRzrQDYnTcnYIHFgXWd4kkUfg==} + '@parcel/events@2.15.4': + resolution: {integrity: sha512-SBq4zstaFr7XQaXNaQmUuVh1swCUHrhtPCOSofvkJoQGhjsuhQlh4t0NmUikyKNdj7C1j40xCS1kGHuUO29b0g==} engines: {node: '>= 16.0.0'} - '@parcel/feature-flags@2.16.4': - resolution: {integrity: sha512-nYdx53siKPLYikHHxfzgjzzgxdrjquK6DMnuSgOTyIdRG4VHdEN0+NqKijRLuVgiUFo/dtxc2h+amwqFENMw8w==} + '@parcel/feature-flags@2.15.4': + resolution: {integrity: sha512-DJqZVtbfjWJseM0gk7yyDkAuOhP7/FVwZ/YVqjozIqXBhmQm07xctiqNQyZX2vBbQsxmVbjpqyq+DOj45WPEzQ==} engines: {node: '>= 16.0.0'} - '@parcel/fs@2.16.4': - resolution: {integrity: sha512-maCMOiVn7oJYZlqlfxgLne8n6tSktIT1k0AeyBp4UGWCXyeJUJ+nL7QYShFpKNLtMLeF0cEtgwRAknWzbcDS1g==} + '@parcel/fs@2.15.4': + resolution: {integrity: sha512-5cahD2ByQaSi+YN0aDvrMWXZvs3mP7C5ey8zcDTDn7JxJa51sMqOQcdU3VUTzQFtAPeRM2KxUkxLhBBXgQqHZA==} engines: {node: '>= 16.0.0'} peerDependencies: - '@parcel/core': ^2.16.4 + '@parcel/core': ^2.15.4 - '@parcel/graph@3.6.4': - resolution: {integrity: sha512-Cj9yV+/k88kFhE+D+gz0YuNRpvNOCVDskO9pFqkcQhGbsGq6kg2XpZ9V7HlYraih31xf8Vb589bZOwjKIiHixQ==} + '@parcel/graph@3.5.4': + resolution: {integrity: sha512-uF7kyQXWK2fQZvG5eE0N3avYGLQE5Q0vyJsyypNcFW3kXNnrkZCUtbG7urmdae9mmZ2jXIVN4q4Bhd9pefGj9A==} engines: {node: '>= 16.0.0'} - '@parcel/logger@2.16.4': - resolution: {integrity: sha512-QR8QLlKo7xAy9JBpPDAh0RvluaixqPCeyY7Fvo2K7hrU3r85vBNNi06pHiPbWoDmB4x1+QoFwMaGnJOHR+/fMA==} + '@parcel/logger@2.15.4': + resolution: {integrity: sha512-rQ7F5+FMQ7t+w5NGFRT8CWHhym0aunduufCjlafvRzUSKEN/5/nwTfCe9I5QsthGlXJWs+ZTy4zQ+wLtZQRBKQ==} engines: {node: '>= 16.0.0'} - '@parcel/markdown-ansi@2.16.4': - resolution: {integrity: sha512-0+oQApAVF3wMcQ6d1ZfZ0JsRzaMUYj9e4U+naj6YEsFsFGOPp+pQYKXBf1bobQeeB7cPKPT3SUHxFqced722Hw==} + '@parcel/markdown-ansi@2.15.4': + resolution: {integrity: sha512-u5Lwcr4ZVBSLFbKYht+mJqJ3ZMXvJdmDMU5eDtrIEKPpu9LrIDdPpDEXBoyO6pDsoV/2AqyXUUMzBRyCatkkoQ==} engines: {node: '>= 16.0.0'} - '@parcel/namer-default@2.16.4': - resolution: {integrity: sha512-CE+0lFg881sJq575EXxj2lKUn81tsS5itpNUUErHxit195m3PExyAhoXM6ed/SXxwi+uv+T5FS/jjDLBNuUFDA==} - engines: {node: '>= 16.0.0', parcel: ^2.16.4} + '@parcel/namer-default@2.15.4': + resolution: {integrity: sha512-EXsoQ1S+5ZIfy8431E7F0vVS7bfH5JpZ+vFVcUpArJDkhmMG7T/eP6Kp9CXHLJmn7ki1x7iIVytrja0XXRQWBQ==} + engines: {node: '>= 16.0.0', parcel: ^2.15.4} - '@parcel/node-resolver-core@3.7.4': - resolution: {integrity: sha512-b3VDG+um6IWW5CTod6M9hQsTX5mdIelKmam7mzxzgqg4j5hnycgTWqPMc9UxhYoUY/Q/PHfWepccNcKtvP5JiA==} + '@parcel/node-resolver-core@3.6.4': + resolution: {integrity: sha512-g3+usMnr7pfRqbMAksOpNA7GJk7HUNW1Wxx7Shhp4w0K9JUdVrd2LRKwZxbqL7H9NqWtVvUOT9cZbMlDR6bO1w==} engines: {node: '>= 16.0.0'} - '@parcel/optimizer-css@2.16.4': - resolution: {integrity: sha512-aqdXCtmvpcXYgJFGk2DtXF34wuM2TD1fZorKMrJdKB9sSkWVRs1tq6RAXQrbi0ZPDH9wfE/9An3YdkTex7RHuQ==} - engines: {node: '>= 16.0.0', parcel: ^2.16.4} + '@parcel/optimizer-css@2.15.4': + resolution: {integrity: sha512-KQLuqwcvVFTNFtM+bzfvQivwunmhVAngmR4NiI8zQaykidYH28V8YkVAQmpbLbgoGad/UgG7grb0UshvnrQHpw==} + engines: {node: '>= 16.0.0', parcel: ^2.15.4} - '@parcel/optimizer-html@2.16.4': - resolution: {integrity: sha512-vg/R2uuSni+NYYUUV8m+5bz8p5zBv8wc/nNleoBnGuCDwn7uaUwTZ8Gt9CjZO8jjG0xCLILoc/TW+e2FF3pfgQ==} - engines: {node: '>= 16.0.0', parcel: ^2.16.4} + '@parcel/optimizer-html@2.15.4': + resolution: {integrity: sha512-gBvt6RdDVMyO1Flvdtc8DxpxLgIXhaKuVXEjHdAP7sEW0SMdSd6r/tl6Plmcszig7sDwhDf6IsQOIvbzGHYZZg==} + engines: {node: '>= 16.0.0', parcel: ^2.15.4} - '@parcel/optimizer-image@2.16.4': - resolution: {integrity: sha512-2RV54WnvMYr18lxSx7Zlx/DXpJwMzOiPxDnoFyvaUoYutvgHO6chtcgFgh1Bvw/PoI95vYzlTkZ8QfUOk5A0JA==} - engines: {node: '>= 16.0.0', parcel: ^2.16.4} + '@parcel/optimizer-image@2.15.4': + resolution: {integrity: sha512-M8fo7eEL6JRcmLhSX9pUUGU4MPrPrE9cMNcwIt3DQLnSvQ+sshhUDa6t9hKWeHHhs16BHvxrvksN2TIbkgHODQ==} + engines: {node: '>= 16.0.0', parcel: ^2.15.4} peerDependencies: - '@parcel/core': ^2.16.4 + '@parcel/core': ^2.15.4 - '@parcel/optimizer-svg@2.16.4': - resolution: {integrity: sha512-22+BqIffCrVErg8y2XwhasbTaFNn75OKXZ3KTDBIfOSAZKLUKs1iHfDXETzTRN7cVcS+Q36/6EHd7N/RA8i1fg==} - engines: {node: '>= 16.0.0', parcel: ^2.16.4} + '@parcel/optimizer-svg@2.15.4': + resolution: {integrity: sha512-pPdjRaLPqjAEROXIHLc6JWLLki56alhuUNbalhLqBCgktZrrq2dGCjBEVgxqRczc9D+ePCX/e/xci4tC0Tkcbg==} + engines: {node: '>= 16.0.0', parcel: ^2.15.4} - '@parcel/optimizer-swc@2.16.4': - resolution: {integrity: sha512-+URqwnB6u1gqaLbG1O1DDApH+UVj4WCbK9No1fdxLBxQ9a84jyli25o1kK1hYB9Nb/JMyYNnEBfvYUW6RphOxw==} - engines: {node: '>= 16.0.0', parcel: ^2.16.4} + '@parcel/optimizer-swc@2.15.4': + resolution: {integrity: sha512-2m5cYESVCq6AGx252eSTArZ1Oc1Ve4GBGL7NhvgbNqOthyXlc2qAed6rCkARrBd8pfEl5+2XHeK1ijDAZdIZ/A==} + engines: {node: '>= 16.0.0', parcel: ^2.15.4} - '@parcel/package-manager@2.16.4': - resolution: {integrity: sha512-obWv9gZgdnkT3Kd+fBkKjhdNEY7zfOP5gVaox5i4nQstVCaVnDlMv5FwLEXwehL+WbwEcGyEGGxOHHkAFKk7Cg==} + '@parcel/package-manager@2.15.4': + resolution: {integrity: sha512-KZONBcEJ24moQdrpU0zJh9CYk3KKbpB5RUM70utAORem1yQKms+0Y4YED3njq6nZzbgwUN/Csc+powUHLZStvg==} engines: {node: '>= 16.0.0'} peerDependencies: - '@parcel/core': ^2.16.4 + '@parcel/core': ^2.15.4 - '@parcel/packager-css@2.16.4': - resolution: {integrity: sha512-rWRtfiX+VVIOZvq64jpeNUKkvWAbnokfHQsk/js1s5jD4ViNQgPcNLiRaiIANjymqL6+dQqWvGUSW2a5FAZYfg==} - engines: {node: '>= 16.0.0', parcel: ^2.16.4} + '@parcel/packager-css@2.15.4': + resolution: {integrity: sha512-bzSaNf+I5lmJFu95wSG2k7pGwjCDesZsV6Y9sozIL2LoSxqvkGhm/ABXAa3Ed7dLe3tSAEBzJcyqShQgLzSzuw==} + engines: {node: '>= 16.0.0', parcel: ^2.15.4} - '@parcel/packager-html@2.16.4': - resolution: {integrity: sha512-AWo5f6SSqBsg2uWOsX0gPX8hCx2iE6GYLg2Z4/cDy2mPlwDICN8/bxItEztSZFmObi+ti26eetBKRDxAUivyIQ==} - engines: {node: '>= 16.0.0', parcel: ^2.16.4} + '@parcel/packager-html@2.15.4': + resolution: {integrity: sha512-Uayux6A2Anm66Kmq22QhD0TuVp9LiRCMuPUzBd6n4ekNlG0Lzm6K3/okMkPG65nKbNjq5qcPscFWlDxggvjt2g==} + engines: {node: '>= 16.0.0', parcel: ^2.15.4} - '@parcel/packager-js@2.16.4': - resolution: {integrity: sha512-L2o39f/fhta+hxto7w8OTUKdstY+te5BmHZREckbQm0KTBg93BG7jB0bfoxLSZF0d8uuAYIVXjzeHNqha+du1g==} - engines: {node: '>= 16.0.0', parcel: ^2.16.4} + '@parcel/packager-js@2.15.4': + resolution: {integrity: sha512-96bqhs1jyd28CfWQD+Yn8rSsd1ar7voHWyBtMLimsK+bDJIzL26Z7jWyRDwXRuLErYC01EoXRIRctxtmeRVJ2Q==} + engines: {node: '>= 16.0.0', parcel: ^2.15.4} - '@parcel/packager-raw@2.16.4': - resolution: {integrity: sha512-A9j60G9OmbTkEeE4WRMXCiErEprHLs9NkUlC4HXCxmSrPMOVaMaMva2LdejE3A9kujZqYtYfuc8+a+jN+Nro4w==} - engines: {node: '>= 16.0.0', parcel: ^2.16.4} + '@parcel/packager-raw@2.15.4': + resolution: {integrity: sha512-CaSpDt5jjcO0SYCtsDhw6yfTDQuDFQ875H42W/ftvSQL7RfLRljPthnbdcy9chvKBbvRBQF+0z8Sxwehrd5hsA==} + engines: {node: '>= 16.0.0', parcel: ^2.15.4} - '@parcel/packager-svg@2.16.4': - resolution: {integrity: sha512-LT9l7eInFrAZJ6w3mYzAUgDq3SIzYbbQyW46Dz26M9lJQbf6uCaATUTac3BEHegW0ikDuw4OOGHK41BVqeeusg==} - engines: {node: '>= 16.0.0', parcel: ^2.16.4} + '@parcel/packager-svg@2.15.4': + resolution: {integrity: sha512-qHsyOgnzoA2XGMLIYUnX79XAaV327VTWQvIzju/OmOjcff4o3uiEcNL8w9k3p2w2oPXOLoQ0THMiivoUQSM8GQ==} + engines: {node: '>= 16.0.0', parcel: ^2.15.4} - '@parcel/packager-wasm@2.16.4': - resolution: {integrity: sha512-AY96Aqu/RpmaSZK2RGkIrZWjAperDw8DAlxLAiaP1D/RPVnikZtl5BmcUt/Wz3PrzG7/q9ZVqqKkWsLmhkjXZQ==} - engines: {node: '>=16.0.0', parcel: ^2.16.4} + '@parcel/packager-wasm@2.15.4': + resolution: {integrity: sha512-YPVij7zrBchtXr/y29P4uh3C/+19PMhhLibYF/8oMJKkFkeU3Uv00/XLm915vdBPrIPjgw0YuIfLzUKip1uGtg==} + engines: {node: '>=16.0.0', parcel: ^2.15.4} - '@parcel/plugin@2.16.4': - resolution: {integrity: sha512-aN2VQoRGC1eB41ZCDbPR/Sp0yKOxe31oemzPx1nJzOuebK2Q6FxSrJ9Bjj9j/YCaLzDtPwelsuLOazzVpXJ6qg==} + '@parcel/plugin@2.15.4': + resolution: {integrity: sha512-XVehjmzk8ZDOFf/BXo26L76ZqCGNKIQcN2ngxAnq0KRY/WFanL8yLaL0qQq+c9whlu09hkGz1CuhFBLAIjJMYQ==} engines: {node: '>= 16.0.0'} - '@parcel/profiler@2.16.4': - resolution: {integrity: sha512-R3JhfcnoReTv2sVFHPR2xKZvs3d3IRrBl9sWmAftbIJFwT4rU70/W7IdwfaJVkD/6PzHq9mcgOh1WKL4KAxPdA==} + '@parcel/profiler@2.15.4': + resolution: {integrity: sha512-ezVZlttUmQ1MQD5e8yVb07vSGYEFOB59Y/jaxL9mGSLZkVhMIIHe/7SuA+4qVAH8dlg6bslXRqlsunLMPEgPsg==} engines: {node: '>= 16.0.0'} - '@parcel/reporter-cli@2.16.4': - resolution: {integrity: sha512-DQx9TwcTZrDv828+tcwEi//xyW7OHTGzGX1+UEVxPp0mSzuOmDn0zfER8qNIqGr1i4D/FXhb5UJQDhGHV8mOpQ==} - engines: {node: '>= 16.0.0', parcel: ^2.16.4} + '@parcel/reporter-cli@2.15.4': + resolution: {integrity: sha512-us0HIwuJqpSguf+yi4n8foabVs26JGvRB/eSOf0KkRldxFciYLn4NJ8rt3Xm1zvxlDiSkD4v2n77u+ouIZ+AEQ==} + engines: {node: '>= 16.0.0', parcel: ^2.15.4} - '@parcel/reporter-dev-server@2.16.4': - resolution: {integrity: sha512-YWvay25htQDifpDRJ0+yFh6xUxKnbfeJxYkPYyuXdxpEUhq4T0UWW0PbPCN/wFX7StgeUTXq5Poeo/+eys9m3w==} - engines: {node: '>= 16.0.0', parcel: ^2.16.4} + '@parcel/reporter-dev-server@2.15.4': + resolution: {integrity: sha512-uCNeDyArNNXI9YThlxyTx7+5ZSxlewyUdyrLdDZCqvn8s1xNB9W8sUNVps7mJZQSc+2ZRk3wyDemURD67uJk/A==} + engines: {node: '>= 16.0.0', parcel: ^2.15.4} - '@parcel/reporter-tracer@2.16.4': - resolution: {integrity: sha512-JKnlXpPepak0/ZybmZn9JtyjJiDBWYrt7ZUlXQhQb0xzNcd/k+RqfwVkTKIwyFHsWtym0cwibkvsi2bWFzS7tw==} - engines: {node: '>= 16.0.0', parcel: ^2.16.4} + '@parcel/reporter-tracer@2.15.4': + resolution: {integrity: sha512-9W1xsb/FtobCQ4z847nI6hFDaTZHLeThv/z05EF77R30RX2k+unG9ac5NQB1v4KLx09Bhfre32+sjYNReWxWlg==} + engines: {node: '>= 16.0.0', parcel: ^2.15.4} - '@parcel/resolver-default@2.16.4': - resolution: {integrity: sha512-wJe9XQS0hn/t32pntQpJbls3ZL8mGVVhK9L7s7BTmZT9ufnvP2nif1psJz/nbgnP9LF6mLSk43OdMJKpoStsjQ==} - engines: {node: '>= 16.0.0', parcel: ^2.16.4} + '@parcel/resolver-default@2.15.4': + resolution: {integrity: sha512-4uKo3FFnubtIc4rM9jZiQQXpa1slawyRy5btJEfTFvbcnz0dm3WThLrsPDMfmPwNr9F/n5x8yzDLI6/fZ/elgA==} + engines: {node: '>= 16.0.0', parcel: ^2.15.4} - '@parcel/runtime-browser-hmr@2.16.4': - resolution: {integrity: sha512-asx7p3NjUSfibI3bC7+8+jUIGHWVk2Zuq9SjJGCGDt+auT9A4uSGljnsk1BWWPqqZ0WILubq4czSAqm0+wt4cw==} - engines: {node: '>= 16.0.0', parcel: ^2.16.4} + '@parcel/runtime-browser-hmr@2.15.4': + resolution: {integrity: sha512-KRGzbxDUOQUkrJKxxY0WyU7oVaa9TvWTRlpuGJXzQJs/hw8vkAAoAm8+ptpypvBC8LnxFHzGbSyHPfL8C8MQOw==} + engines: {node: '>= 16.0.0', parcel: ^2.15.4} - '@parcel/runtime-js@2.16.4': - resolution: {integrity: sha512-gUKmsjg+PULQBu2QbX0QKll9tXSqHPO8NrfxHwWb2lz5xDKDos1oV0I7BoMWbHhUHkoToXZrm654oGViujtVUA==} - engines: {node: '>= 16.0.0', parcel: ^2.16.4} + '@parcel/runtime-js@2.15.4': + resolution: {integrity: sha512-zNRK+693CMkYiA0ckjPOmz+JVHD9bVzp27itcMyuDH6l/Or8m09RgCC4DIdIxBqiplsDSe39DwEc5X7b0vvcjw==} + engines: {node: '>= 16.0.0', parcel: ^2.15.4} - '@parcel/runtime-rsc@2.16.4': - resolution: {integrity: sha512-CHkotYE/cNiUjJmrc5FD9YhlFp1UF5wMNNJmoWaL40eBzsqcaV0sSn5V3bNapwewn3wrMYgdPgvOTHfaZaG73A==} - engines: {node: '>= 12.0.0', parcel: ^2.16.4} + '@parcel/runtime-rsc@2.15.4': + resolution: {integrity: sha512-yHc4HEwzCQYLqa6Q1WtZ8xJeaDAk0p2i0b3ABq2I+izmRjer4jertlsEwh9mf9Z1eUGtJobdGYzl8Ai1VfhC3g==} + engines: {node: '>= 12.0.0', parcel: ^2.15.4} - '@parcel/runtime-service-worker@2.16.4': - resolution: {integrity: sha512-FT0Q58bf5Re+dq5cL2XHbxqHHFZco6qtRijeVpT3TSPMRPlniMArypSytTeZzVNL7h/hxjWsNu7fRuC0yLB5hA==} - engines: {node: '>= 16.0.0', parcel: ^2.16.4} + '@parcel/runtime-service-worker@2.15.4': + resolution: {integrity: sha512-NGq/wS34GIVzo2ZURBjCqgHV+PU7eTcngCzmmk/wrCEeWnr13ld+CAIxVZoqyNJwYsF6VQanrjSM2/LhCXEdyA==} + engines: {node: '>= 16.0.0', parcel: ^2.15.4} - '@parcel/rust-darwin-arm64@2.16.4': - resolution: {integrity: sha512-P3Se36H9EO1fOlwXqQNQ+RsVKTGn5ztRSUGbLcT8ba6oOMmU1w7J4R810GgsCbwCuF10TJNUMkuD3Q2Sz15Q3Q==} + '@parcel/rust-darwin-arm64@2.15.4': + resolution: {integrity: sha512-cEpNDeEtvM5Nhj0QLN95QbcZ9yY6Z5W3+2OeHvnojEAP8Rp1XGzqVTTZdlyKyN1KTiyfzIOiQJCiEcr+kMc5Nw==} engines: {node: '>= 10'} cpu: [arm64] os: [darwin] - '@parcel/rust-darwin-x64@2.16.4': - resolution: {integrity: sha512-8aNKNyPIx3EthYpmVJevIdHmFsOApXAEYGi3HU69jTxLgSIfyEHDdGE9lEsMvhSrd/SSo4/euAtiV+pqK04wnA==} + '@parcel/rust-darwin-x64@2.15.4': + resolution: {integrity: sha512-jL9i13sXKeBXXz8Z3BNYoScPOi+ljBA0ubAE3PN5DCoAA6wS4/FsAiRSIUw+3uxqASBD7+JvaT5sDUga1Xft5g==} engines: {node: '>= 10'} cpu: [x64] os: [darwin] - '@parcel/rust-linux-arm-gnueabihf@2.16.4': - resolution: {integrity: sha512-QrvqiSHaWRLc0JBHgUHVvDthfWSkA6AFN+ikV1UGENv4j2r/QgvuwJiG0VHrsL6pH5dRqj0vvngHzEgguke9DA==} + '@parcel/rust-linux-arm-gnueabihf@2.15.4': + resolution: {integrity: sha512-c8HpVdDugCutlMILoOlkTioih9HGJpQrzS2G3cg/O1a5ZTacooGf3eGJGoh6dUBEv9WEaEb6zsTRwFv2BgtZcA==} engines: {node: '>= 10'} cpu: [arm] os: [linux] - '@parcel/rust-linux-arm64-gnu@2.16.4': - resolution: {integrity: sha512-f3gBWQHLHRUajNZi3SMmDQiEx54RoRbXtZYQNuBQy7+NolfFcgb1ik3QhkT7xovuTF/LBmaqP3UFy0PxvR/iwQ==} + '@parcel/rust-linux-arm64-gnu@2.15.4': + resolution: {integrity: sha512-Wcfs/JY4FnuLxQaU+VX2rI4j376Qo2LkZmq4zp9frnsajaAqmloVQfnbUkdnQPEL4I38eHXerzBX3LoXSxnZKA==} engines: {node: '>= 10'} cpu: [arm64] os: [linux] - libc: [glibc] - '@parcel/rust-linux-arm64-musl@2.16.4': - resolution: {integrity: sha512-cwml18RNKsBwHyZnrZg4jpecXkWjaY/mCArocWUxkFXjjB97L56QWQM9W86f2/Y3HcFcnIGJwx1SDDKJrV6OIA==} + '@parcel/rust-linux-arm64-musl@2.15.4': + resolution: {integrity: sha512-xf9HxosEn3dU5M0zDSXqBaG8rEjLThRdTYqpkxHW/qQGzy0Se+/ntg8PeDHsSG5E9OK8xrcKH46Lhaw0QBF/Zw==} engines: {node: '>= 10'} cpu: [arm64] os: [linux] - libc: [musl] - '@parcel/rust-linux-x64-gnu@2.16.4': - resolution: {integrity: sha512-0xIjQaN8hiG0F9R8coPYidHslDIrbfOS/qFy5GJNbGA3S49h61wZRBMQqa7JFW4+2T8R0J9j0SKHhLXpbLXrIg==} + '@parcel/rust-linux-x64-gnu@2.15.4': + resolution: {integrity: sha512-RigXVCFj6h0AXmkuxU61rfgYuW+PXBR6qSkR2I20yKnAXoMfxLaZy9YJ3sAPMEjT9zXgzGAX+3syItMF+bRjaw==} engines: {node: '>= 10'} cpu: [x64] os: [linux] - libc: [glibc] - '@parcel/rust-linux-x64-musl@2.16.4': - resolution: {integrity: sha512-fYn21GIecHK9RoZPKwT9NOwxwl3Gy3RYPR6zvsUi0+hpFo19Ph9EzFXN3lT8Pi5KiwQMCU4rsLb5HoWOBM1FeA==} + '@parcel/rust-linux-x64-musl@2.15.4': + resolution: {integrity: sha512-tHlRgonSr5ca8OvhbGzZUggCgCOirRz5dHhPSCm4ajMxeDMamwprq6lKy0sCNTXht4TXIEyugBcfEuRKEeVIBw==} engines: {node: '>= 10'} cpu: [x64] os: [linux] - libc: [musl] - '@parcel/rust-win32-x64-msvc@2.16.4': - resolution: {integrity: sha512-TcpWC3I1mJpfP2++018lgvM7UX0P8IrzNxceBTHUKEIDMwmAYrUKAQFiaU0j1Ldqk6yP8SPZD3cvphumsYpJOQ==} + '@parcel/rust-win32-x64-msvc@2.15.4': + resolution: {integrity: sha512-YsX6vMl/bfyxqZSN7yiaZQKLoJKELSZYcvg8gIv4CF1xkaTdmfr6gvq2iCyoV+bwrodNohN4Xfl8r7Wniu1/UA==} engines: {node: '>= 10'} cpu: [x64] os: [win32] - '@parcel/rust@2.16.4': - resolution: {integrity: sha512-RBMKt9rCdv6jr4vXG6LmHtxzO5TuhQvXo1kSoSIF7fURRZ81D1jzBtLxwLmfxCPsofJNqWwdhy5vIvisX+TLlQ==} + '@parcel/rust@2.15.4': + resolution: {integrity: sha512-OxOux8z8YEYg23+15uMmYaloFp3x1RwcliBay6HqxUW7RTmtI1/z+xd8AtienCckACD60gvDGy04LjgbEGdJVg==} engines: {node: '>= 16.0.0'} peerDependencies: napi-wasm: ^1.1.2 @@ -329,235 +325,225 @@ packages: resolution: {integrity: sha512-Ejx1P/mj+kMjQb8/y5XxDUn4reGdr+WyKYloBljpppUy8gs42T+BNoEOuRYqDVdgPc6NxduzIDoJS9pOFfV5Ew==} engines: {node: ^12.18.3 || >=14} - '@parcel/transformer-babel@2.16.4': - resolution: {integrity: sha512-CMDUOQYX7+cmeyHxHSFnoPcwvXNL7rRFE+Q06uVFzsYYiVhbwGF/1J5Bx4cW3Froumqla4YTytTsEteJEybkdA==} - engines: {node: '>= 16.0.0', parcel: ^2.16.4} + '@parcel/transformer-babel@2.15.4': + resolution: {integrity: sha512-rb4nqZcTLkLD3nvuYJ9wwNb8x6cajBK2l6csdYMLEI4516SkIzkO/gs2cZ9M5q+CMhxAqpdEnrwektbOtQQasg==} + engines: {node: '>= 16.0.0', parcel: ^2.15.4} - '@parcel/transformer-css@2.16.4': - resolution: {integrity: sha512-VG/+DbDci2HKe20GFRDs65ZQf5GUFfnmZAa1BhVl/MO+ijT3XC3eoVUy5cExRkq4VLcPY4ytL0g/1T2D6x7lBQ==} - engines: {node: '>= 16.0.0', parcel: ^2.16.4} + '@parcel/transformer-css@2.15.4': + resolution: {integrity: sha512-6tVwSJsOssXgcB5XMAQGsexAffoBEi8GVql3YQqzI1EwVYs9zr+B5mfbesb4aWcegR02w99NHJYFP9CrOr3SWw==} + engines: {node: '>= 16.0.0', parcel: ^2.15.4} - '@parcel/transformer-html@2.16.4': - resolution: {integrity: sha512-w6JErYTeNS+KAzUAER18NHFIFFvxiLGd4Fht1UYcb/FDjJdLAMB/FljyEs0Rto/WAhZ2D0MuSL25HQh837R62g==} - engines: {node: '>= 16.0.0', parcel: ^2.16.4} + '@parcel/transformer-html@2.15.4': + resolution: {integrity: sha512-gzYPbbyEuV8nzPojw86eD5Kf93AYUWcY8lu33gu0XHROJH7mq5MAwPwtb/U+EfpeCd0/oKbLzA2mkQksM1NncQ==} + engines: {node: '>= 16.0.0', parcel: ^2.15.4} - '@parcel/transformer-image@2.16.4': - resolution: {integrity: sha512-ZzIn3KvvRqMfcect4Dy+57C9XoQXZhpVJKBdQWMp9wM1qJEgsVgGDcaSBYCs/UYSKMRMP6Wm20pKCt408RkQzg==} - engines: {node: '>= 16.0.0', parcel: ^2.16.4} + '@parcel/transformer-image@2.15.4': + resolution: {integrity: sha512-KOVwj2gKjUybuzHwarC/YVqRf3r2BD4/2ysckozj6DIji/bq3fd2rE9yqxWXO+zt918PsOSTzMKwRnaseaXLKQ==} + engines: {node: '>= 16.0.0', parcel: ^2.15.4} peerDependencies: - '@parcel/core': ^2.16.4 + '@parcel/core': ^2.15.4 - '@parcel/transformer-js@2.16.4': - resolution: {integrity: sha512-FD2fdO6URwAGBPidb3x1dDgLBt972mko0LelcSU05aC/pcKaV9mbCtINbPul1MlStzkxDelhuImcCYIyerheVQ==} - engines: {node: '>= 16.0.0', parcel: ^2.16.4} + '@parcel/transformer-js@2.15.4': + resolution: {integrity: sha512-HX76PalPjqCLmXJnuSeMr2km8WlnUsW8oaRZ6FuZtSo9QD8BqIcwKGxSbIy9JHkObBgmrMOVpGtYrJM4/BlYbg==} + engines: {node: '>= 16.0.0', parcel: ^2.15.4} peerDependencies: - '@parcel/core': ^2.16.4 + '@parcel/core': ^2.15.4 - '@parcel/transformer-json@2.16.4': - resolution: {integrity: sha512-pB3ZNqgokdkBCJ+4G0BrPYcIkyM9K1HVk0GvjzcLEFDKsoAp8BGEM68FzagFM/nVq9anYTshIaoh349GK0M/bg==} - engines: {node: '>= 16.0.0', parcel: ^2.16.4} + '@parcel/transformer-json@2.15.4': + resolution: {integrity: sha512-1ASeOSH3gPeaXyy/TZ7ce2TOfJ3ZeK5SBnDs+MM8LFcQsTwdRJKjX/4Qq9RgtMRryYAGHgMa09Gvp9FuFRyd+w==} + engines: {node: '>= 16.0.0', parcel: ^2.15.4} - '@parcel/transformer-node@2.16.4': - resolution: {integrity: sha512-7t43CPGfMJk1LqFokwxHSsRi+kKC2QvDXaMtqiMShmk50LCwn81WgzuFvNhMwf6lSiBihWupGwF3Fqksg+aisg==} - engines: {node: '>= 16.0.0', parcel: ^2.16.4} + '@parcel/transformer-node@2.15.4': + resolution: {integrity: sha512-zV5jvZA971eQMcFtaWZkW1UfAH/G6XVM/87oJ2B4ip9o9aKUWIl296rrfg2xWxUQyPhy11B17CJ6b8NgieqqrQ==} + engines: {node: '>= 16.0.0', parcel: ^2.15.4} - '@parcel/transformer-postcss@2.16.4': - resolution: {integrity: sha512-jfmh9ho03H+qwz9S1b/a/oaOmgfMovtHKYDweIGMjKULKIee3AFRqo8RZIOuUMjDuqHWK8SqQmjery4syFV3Xw==} - engines: {node: '>= 16.0.0', parcel: ^2.16.4} + '@parcel/transformer-postcss@2.15.4': + resolution: {integrity: sha512-cNueSpOj3ulmMX85xr9clh/t0+mzVE+Q3H7Cf/OammqUkG/xjmilq4q7ZTgQFyUtUdWpE9LWWHojbJuz6k2Ulw==} + engines: {node: '>= 16.0.0', parcel: ^2.15.4} - '@parcel/transformer-posthtml@2.16.4': - resolution: {integrity: sha512-+GXsmGx1L25KQGQnwclgEuQe1t4QU+IoDkgN+Ikj+EnQCOWG4/ts2VpMBeqP5F18ZT4cCSRafj6317o/2lSGJg==} - engines: {node: '>= 16.0.0', parcel: ^2.16.4} + '@parcel/transformer-posthtml@2.15.4': + resolution: {integrity: sha512-dETI+CeKMwu5Dpvu8BrQtex6nwzbNWKQkXseiM5x6+Wf3j9RD2NVpAMBRMjLkw1XlC9Whz1egxLSgKlMKbjg0w==} + engines: {node: '>= 16.0.0', parcel: ^2.15.4} - '@parcel/transformer-raw@2.16.4': - resolution: {integrity: sha512-7WDUPq+bW11G9jKxaQIVL+NPGolV99oq/GXhpjYip0SaGaLzRCW7gEk60cftuk0O7MsDaX5jcAJm3G/AX+LJKg==} - engines: {node: '>= 16.0.0', parcel: ^2.16.4} + '@parcel/transformer-raw@2.15.4': + resolution: {integrity: sha512-pY2j09UCW2v1fwQtVLlCztSdPOxhq0YcWmTHCk/mRp8zuUR+eyHgsz48FrUxRF7cr/EBjc0zlFcregRMRcaTMg==} + engines: {node: '>= 16.0.0', parcel: ^2.15.4} - '@parcel/transformer-react-refresh-wrap@2.16.4': - resolution: {integrity: sha512-MiLNZrsGQJTANKKa4lzZyUbGj/en0Hms474mMdQkCBFg6GmjfmXwaMMgtTfPA3ZwSp2+3LeObCyca/f9B2gBZQ==} - engines: {node: '>= 16.0.0', parcel: ^2.16.4} + '@parcel/transformer-react-refresh-wrap@2.15.4': + resolution: {integrity: sha512-MgoQrV8+BVjrczAns5ZZbTERGB3/U4MaCBmbg3CuiTiIyS8IJQnGi+OhYRdKAB4NlsgpMZ5T2JrRbQUIm9MM8Q==} + engines: {node: '>= 16.0.0', parcel: ^2.15.4} - '@parcel/transformer-sass@2.16.4': - resolution: {integrity: sha512-TvYZf7dwgtIVHcxkmOlIz0e28Ec7T6z0Jhzu+WcnFSonnhyrvKuqAxy7QV5EGc6O4qvDWwAQV1lvaLU0te+mQQ==} - engines: {node: '>= 16.0.0', parcel: ^2.16.4} + '@parcel/transformer-sass@2.15.4': + resolution: {integrity: sha512-o7rPDdId5tpx/riTzu0O3zpyt24ORrVdAxW6k2YN2xGrvStfnQHxKjrSiEFDUMMzuikcW7Ed+uqPk046DK3m8w==} + engines: {node: '>= 16.0.0', parcel: ^2.15.4} - '@parcel/transformer-svg@2.16.4': - resolution: {integrity: sha512-0dm4cQr/WpfQP6N0xjFtwdLTxcONDfoLgTOMk4eNUWydHipSgmLtvUk/nOc/FWkwztRScfAObtZXOiPOd3Oy9A==} - engines: {node: '>= 16.0.0', parcel: ^2.16.4} + '@parcel/transformer-svg@2.15.4': + resolution: {integrity: sha512-Q22e0VRbx62VXFlvJWIlc8ihlLaPQgtnAZz5E1/+ojiNb+k0PmIRjNJclVWPF6IdCsLO5tnGfUOaXe2OnZz28Q==} + engines: {node: '>= 16.0.0', parcel: ^2.15.4} - '@parcel/types-internal@2.16.4': - resolution: {integrity: sha512-PE6Qmt5cjzBxX+6MPLiF7r+twoC+V9Skt3zyuBQ+H1c0i9o07Bbz2NKX10nvlPukfmW6Fu/1RvTLkzBZR1bU6A==} + '@parcel/types-internal@2.15.4': + resolution: {integrity: sha512-kl5QEZ8PTWRvMkwmk7IG3VpP/5/MSGwt9Nrj9ctXLdZkDdXZpK7IbXAthLQ4zrByMaqZULL2IyDuBqBgfuAqlQ==} - '@parcel/types@2.16.4': - resolution: {integrity: sha512-ctx4mBskZHXeDVHg4OjMwx18jfYH9BzI/7yqbDQVGvd5lyA+/oVVzYdpele2J2i2sSaJ87cA8nb57GDQ8kHAqA==} + '@parcel/types@2.15.4': + resolution: {integrity: sha512-fS3UMMinLtzn/NTSx/qx38saBgRniylldh0XZEUcGeME4D2Llu/QlLv+YZ/LJqrFci3fPRM+YAn2K+JT/u+/0w==} - '@parcel/utils@2.16.4': - resolution: {integrity: sha512-lkmxQHcHyOWZLbV8t+h2CGZIkPiBurLm/TS5wNT7+tq0qt9KbVwL7FP2K93TbXhLMGTmpI79Bf3qKniPM167Mw==} + '@parcel/utils@2.15.4': + resolution: {integrity: sha512-29m09sfPx0GHnmy1kkZ5XezprepdFGKKKUEJkyiYA4ERf55jjdnU2/GP4sWlZXxjh2Y+JFoCAFlCamEClq/8eA==} engines: {node: '>= 16.0.0'} - '@parcel/watcher-android-arm64@2.5.6': - resolution: {integrity: sha512-YQxSS34tPF/6ZG7r/Ih9xy+kP/WwediEUsqmtf0cuCV5TPPKw/PQHRhueUo6JdeFJaqV3pyjm0GdYjZotbRt/A==} + '@parcel/watcher-android-arm64@2.5.1': + resolution: {integrity: sha512-KF8+j9nNbUN8vzOFDpRMsaKBHZ/mcjEjMToVMJOhTozkDonQFFrRcfdLWn6yWKCmJKmdVxSgHiYvTCef4/qcBA==} engines: {node: '>= 10.0.0'} cpu: [arm64] os: [android] - '@parcel/watcher-darwin-arm64@2.5.6': - resolution: {integrity: sha512-Z2ZdrnwyXvvvdtRHLmM4knydIdU9adO3D4n/0cVipF3rRiwP+3/sfzpAwA/qKFL6i1ModaabkU7IbpeMBgiVEA==} + '@parcel/watcher-darwin-arm64@2.5.1': + resolution: {integrity: sha512-eAzPv5osDmZyBhou8PoF4i6RQXAfeKL9tjb3QzYuccXFMQU0ruIc/POh30ePnaOyD1UXdlKguHBmsTs53tVoPw==} engines: {node: '>= 10.0.0'} cpu: [arm64] os: [darwin] - '@parcel/watcher-darwin-x64@2.5.6': - resolution: {integrity: sha512-HgvOf3W9dhithcwOWX9uDZyn1lW9R+7tPZ4sug+NGrGIo4Rk1hAXLEbcH1TQSqxts0NYXXlOWqVpvS1SFS4fRg==} + '@parcel/watcher-darwin-x64@2.5.1': + resolution: {integrity: sha512-1ZXDthrnNmwv10A0/3AJNZ9JGlzrF82i3gNQcWOzd7nJ8aj+ILyW1MTxVk35Db0u91oD5Nlk9MBiujMlwmeXZg==} engines: {node: '>= 10.0.0'} cpu: [x64] os: [darwin] - '@parcel/watcher-freebsd-x64@2.5.6': - resolution: {integrity: sha512-vJVi8yd/qzJxEKHkeemh7w3YAn6RJCtYlE4HPMoVnCpIXEzSrxErBW5SJBgKLbXU3WdIpkjBTeUNtyBVn8TRng==} + '@parcel/watcher-freebsd-x64@2.5.1': + resolution: {integrity: sha512-SI4eljM7Flp9yPuKi8W0ird8TI/JK6CSxju3NojVI6BjHsTyK7zxA9urjVjEKJ5MBYC+bLmMcbAWlZ+rFkLpJQ==} engines: {node: '>= 10.0.0'} cpu: [x64] os: [freebsd] - '@parcel/watcher-linux-arm-glibc@2.5.6': - resolution: {integrity: sha512-9JiYfB6h6BgV50CCfasfLf/uvOcJskMSwcdH1PHH9rvS1IrNy8zad6IUVPVUfmXr+u+Km9IxcfMLzgdOudz9EQ==} + '@parcel/watcher-linux-arm-glibc@2.5.1': + resolution: {integrity: sha512-RCdZlEyTs8geyBkkcnPWvtXLY44BCeZKmGYRtSgtwwnHR4dxfHRG3gR99XdMEdQ7KeiDdasJwwvNSF5jKtDwdA==} engines: {node: '>= 10.0.0'} cpu: [arm] os: [linux] - libc: [glibc] - '@parcel/watcher-linux-arm-musl@2.5.6': - resolution: {integrity: sha512-Ve3gUCG57nuUUSyjBq/MAM0CzArtuIOxsBdQ+ftz6ho8n7s1i9E1Nmk/xmP323r2YL0SONs1EuwqBp2u1k5fxg==} + '@parcel/watcher-linux-arm-musl@2.5.1': + resolution: {integrity: sha512-6E+m/Mm1t1yhB8X412stiKFG3XykmgdIOqhjWj+VL8oHkKABfu/gjFj8DvLrYVHSBNC+/u5PeNrujiSQ1zwd1Q==} engines: {node: '>= 10.0.0'} cpu: [arm] os: [linux] - libc: [musl] - '@parcel/watcher-linux-arm64-glibc@2.5.6': - resolution: {integrity: sha512-f2g/DT3NhGPdBmMWYoxixqYr3v/UXcmLOYy16Bx0TM20Tchduwr4EaCbmxh1321TABqPGDpS8D/ggOTaljijOA==} + '@parcel/watcher-linux-arm64-glibc@2.5.1': + resolution: {integrity: sha512-LrGp+f02yU3BN9A+DGuY3v3bmnFUggAITBGriZHUREfNEzZh/GO06FF5u2kx8x+GBEUYfyTGamol4j3m9ANe8w==} engines: {node: '>= 10.0.0'} cpu: [arm64] os: [linux] - libc: [glibc] - '@parcel/watcher-linux-arm64-musl@2.5.6': - resolution: {integrity: sha512-qb6naMDGlbCwdhLj6hgoVKJl2odL34z2sqkC7Z6kzir8b5W65WYDpLB6R06KabvZdgoHI/zxke4b3zR0wAbDTA==} + '@parcel/watcher-linux-arm64-musl@2.5.1': + resolution: {integrity: sha512-cFOjABi92pMYRXS7AcQv9/M1YuKRw8SZniCDw0ssQb/noPkRzA+HBDkwmyOJYp5wXcsTrhxO0zq1U11cK9jsFg==} engines: {node: '>= 10.0.0'} cpu: [arm64] os: [linux] - libc: [musl] - '@parcel/watcher-linux-x64-glibc@2.5.6': - resolution: {integrity: sha512-kbT5wvNQlx7NaGjzPFu8nVIW1rWqV780O7ZtkjuWaPUgpv2NMFpjYERVi0UYj1msZNyCzGlaCWEtzc+exjMGbQ==} + '@parcel/watcher-linux-x64-glibc@2.5.1': + resolution: {integrity: sha512-GcESn8NZySmfwlTsIur+49yDqSny2IhPeZfXunQi48DMugKeZ7uy1FX83pO0X22sHntJ4Ub+9k34XQCX+oHt2A==} engines: {node: '>= 10.0.0'} cpu: [x64] os: [linux] - libc: [glibc] - '@parcel/watcher-linux-x64-musl@2.5.6': - resolution: {integrity: sha512-1JRFeC+h7RdXwldHzTsmdtYR/Ku8SylLgTU/reMuqdVD7CtLwf0VR1FqeprZ0eHQkO0vqsbvFLXUmYm/uNKJBg==} + '@parcel/watcher-linux-x64-musl@2.5.1': + resolution: {integrity: sha512-n0E2EQbatQ3bXhcH2D1XIAANAcTZkQICBPVaxMeaCVBtOpBZpWJuf7LwyWPSBDITb7In8mqQgJ7gH8CILCURXg==} engines: {node: '>= 10.0.0'} cpu: [x64] os: [linux] - libc: [musl] - '@parcel/watcher-win32-arm64@2.5.6': - resolution: {integrity: sha512-3ukyebjc6eGlw9yRt678DxVF7rjXatWiHvTXqphZLvo7aC5NdEgFufVwjFfY51ijYEWpXbqF5jtrK275z52D4Q==} + '@parcel/watcher-win32-arm64@2.5.1': + resolution: {integrity: sha512-RFzklRvmc3PkjKjry3hLF9wD7ppR4AKcWNzH7kXR7GUe0Igb3Nz8fyPwtZCSquGrhU5HhUNDr/mKBqj7tqA2Vw==} engines: {node: '>= 10.0.0'} cpu: [arm64] os: [win32] - '@parcel/watcher-win32-ia32@2.5.6': - resolution: {integrity: sha512-k35yLp1ZMwwee3Ez/pxBi5cf4AoBKYXj00CZ80jUz5h8prpiaQsiRPKQMxoLstNuqe2vR4RNPEAEcjEFzhEz/g==} + '@parcel/watcher-win32-ia32@2.5.1': + resolution: {integrity: sha512-c2KkcVN+NJmuA7CGlaGD1qJh1cLfDnQsHjE89E60vUEMlqduHGCdCLJCID5geFVM0dOtA3ZiIO8BoEQmzQVfpQ==} engines: {node: '>= 10.0.0'} cpu: [ia32] os: [win32] - '@parcel/watcher-win32-x64@2.5.6': - resolution: {integrity: sha512-hbQlYcCq5dlAX9Qx+kFb0FHue6vbjlf0FrNzSKdYK2APUf7tGfGxQCk2ihEREmbR6ZMc0MVAD5RIX/41gpUzTw==} + '@parcel/watcher-win32-x64@2.5.1': + resolution: {integrity: sha512-9lHBdJITeNR++EvSQVUcaZoWupyHfXe1jZvGZ06O/5MflPcuPLtEphScIBL+AiCWBO46tDSHzWyD0uDmmZqsgA==} engines: {node: '>= 10.0.0'} cpu: [x64] os: [win32] - '@parcel/watcher@2.5.6': - resolution: {integrity: sha512-tmmZ3lQxAe/k/+rNnXQRawJ4NjxO2hqiOLTHvWchtGZULp4RyFeh6aU4XdOYBFe2KE1oShQTv4AblOs2iOrNnQ==} + '@parcel/watcher@2.5.1': + resolution: {integrity: sha512-dfUnCxiN9H4ap84DvD2ubjw+3vUNpstxa0TneY/Paat8a3R4uQZDLSvWjmznAY/DoahqTHl9V46HF/Zs3F29pg==} engines: {node: '>= 10.0.0'} - '@parcel/workers@2.16.4': - resolution: {integrity: sha512-dkBEWqnHXDZnRbTZouNt4uEGIslJT+V0c8OH1MPOfjISp1ucD6/u9ET8k9d/PxS9h1hL53og0SpBuuSEPLDl6A==} + '@parcel/workers@2.15.4': + resolution: {integrity: sha512-wZ/5/mfjs5aeqhXY0c6fwuaBFeNpOXoOq2CKPSMDXt+GX2u/9/1bpVxN9XeGTAJO+ZD++CLq0hyzTnIHy58nyw==} engines: {node: '>= 16.0.0'} peerDependencies: - '@parcel/core': ^2.16.4 + '@parcel/core': ^2.15.4 '@popperjs/core@2.11.8': resolution: {integrity: sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==} - '@swc/core-darwin-arm64@1.15.18': - resolution: {integrity: sha512-+mIv7uBuSaywN3C9LNuWaX1jJJ3SKfiJuE6Lr3bd+/1Iv8oMU7oLBjYMluX1UrEPzwN2qCdY6Io0yVicABoCwQ==} + '@swc/core-darwin-arm64@1.12.11': + resolution: {integrity: sha512-J19Jj9Y5x/N0loExH7W0OI9OwwoVyxutDdkyq1o/kgXyBqmmzV7Y/Q9QekI2Fm/qc5mNeAdP7aj4boY4AY/JPw==} engines: {node: '>=10'} cpu: [arm64] os: [darwin] - '@swc/core-darwin-x64@1.15.18': - resolution: {integrity: sha512-wZle0eaQhnzxWX5V/2kEOI6Z9vl/lTFEC6V4EWcn+5pDjhemCpQv9e/TDJ0GIoiClX8EDWRvuZwh+Z3dhL1NAg==} + '@swc/core-darwin-x64@1.12.11': + resolution: {integrity: sha512-PTuUQrfStQ6cjW+uprGO2lpQHy84/l0v+GqRqq8s/jdK55rFRjMfCeyf6FAR0l6saO5oNOQl+zWR1aNpj8pMQw==} engines: {node: '>=10'} cpu: [x64] os: [darwin] - '@swc/core-linux-arm-gnueabihf@1.15.18': - resolution: {integrity: sha512-ao61HGXVqrJFHAcPtF4/DegmwEkVCo4HApnotLU8ognfmU8x589z7+tcf3hU+qBiU1WOXV5fQX6W9Nzs6hjxDw==} + '@swc/core-linux-arm-gnueabihf@1.12.11': + resolution: {integrity: sha512-poxBq152HsupOtnZilenvHmxZ9a8SRj4LtfxUnkMDNOGrZR9oxbQNwEzNKfi3RXEcXz+P8c0Rai1ubBazXv8oQ==} engines: {node: '>=10'} cpu: [arm] os: [linux] - '@swc/core-linux-arm64-gnu@1.15.18': - resolution: {integrity: sha512-3xnctOBLIq3kj8PxOCgPrGjBLP/kNOddr6f5gukYt/1IZxsITQaU9TDyjeX6jG+FiCIHjCuWuffsyQDL5Ew1bg==} + '@swc/core-linux-arm64-gnu@1.12.11': + resolution: {integrity: sha512-y1HNamR/D0Hc8xIE910ysyLe269UYiGaQPoLjQS0phzWFfWdMj9bHM++oydVXZ4RSWycO7KyJ3uvw4NilvyMKQ==} engines: {node: '>=10'} cpu: [arm64] os: [linux] - libc: [glibc] - '@swc/core-linux-arm64-musl@1.15.18': - resolution: {integrity: sha512-0a+Lix+FSSHBSBOA0XznCcHo5/1nA6oLLjcnocvzXeqtdjnPb+SvchItHI+lfeiuj1sClYPDvPMLSLyXFaiIKw==} + '@swc/core-linux-arm64-musl@1.12.11': + resolution: {integrity: sha512-LlBxPh/32pyQsu2emMEOFRm7poEFLsw12Y1mPY7FWZiZeptomKSOSHRzKDz9EolMiV4qhK1caP1lvW4vminYgQ==} engines: {node: '>=10'} cpu: [arm64] os: [linux] - libc: [musl] - '@swc/core-linux-x64-gnu@1.15.18': - resolution: {integrity: sha512-wG9J8vReUlpaHz4KOD/5UE1AUgirimU4UFT9oZmupUDEofxJKYb1mTA/DrMj0s78bkBiNI+7Fo2EgPuvOJfuAA==} + '@swc/core-linux-x64-gnu@1.12.11': + resolution: {integrity: sha512-bOjiZB8O/1AzHkzjge1jqX62HGRIpOHqFUrGPfAln/NC6NR+Z2A78u3ixV7k5KesWZFhCV0YVGJL+qToL27myA==} engines: {node: '>=10'} cpu: [x64] os: [linux] - libc: [glibc] - '@swc/core-linux-x64-musl@1.15.18': - resolution: {integrity: sha512-4nwbVvCphKzicwNWRmvD5iBaZj8JYsRGa4xOxJmOyHlMDpsvvJ2OR2cODlvWyGFH6BYL1MfIAK3qph3hp0Az6g==} + '@swc/core-linux-x64-musl@1.12.11': + resolution: {integrity: sha512-4dzAtbT/m3/UjF045+33gLiHd8aSXJDoqof7gTtu4q0ZyAf7XJ3HHspz+/AvOJLVo4FHHdFcdXhmo/zi1nFn8A==} engines: {node: '>=10'} cpu: [x64] os: [linux] - libc: [musl] - '@swc/core-win32-arm64-msvc@1.15.18': - resolution: {integrity: sha512-zk0RYO+LjiBCat2RTMHzAWaMky0cra9loH4oRrLKLLNuL+jarxKLFDA8xTZWEkCPLjUTwlRN7d28eDLLMgtUcQ==} + '@swc/core-win32-arm64-msvc@1.12.11': + resolution: {integrity: sha512-h8HiwBZErKvCAmjW92JvQp0iOqm6bncU4ac5jxBGkRApabpUenNJcj3h2g5O6GL5K6T9/WhnXE5gyq/s1fhPQg==} engines: {node: '>=10'} cpu: [arm64] os: [win32] - '@swc/core-win32-ia32-msvc@1.15.18': - resolution: {integrity: sha512-yVuTrZ0RccD5+PEkpcLOBAuPbYBXS6rslENvIXfvJGXSdX5QGi1ehC4BjAMl5FkKLiam4kJECUI0l7Hq7T1vwg==} + '@swc/core-win32-ia32-msvc@1.12.11': + resolution: {integrity: sha512-1pwr325mXRNUhxTtXmx1IokV5SiRL+6iDvnt3FRXj+X5UvXXKtg2zeyftk+03u8v8v8WUr5I32hIypVJPTNxNg==} engines: {node: '>=10'} cpu: [ia32] os: [win32] - '@swc/core-win32-x64-msvc@1.15.18': - resolution: {integrity: sha512-7NRmE4hmUQNCbYU3Hn9Tz57mK9Qq4c97ZS+YlamlK6qG9Fb5g/BB3gPDe0iLlJkns/sYv2VWSkm8c3NmbEGjbg==} + '@swc/core-win32-x64-msvc@1.12.11': + resolution: {integrity: sha512-5gggWo690Gvs7XiPxAmb5tHwzB9RTVXUV7AWoGb6bmyUd1OXYaebQF0HAOtade5jIoNhfQMQJ7QReRgt/d2jAA==} engines: {node: '>=10'} cpu: [x64] os: [win32] - '@swc/core@1.15.18': - resolution: {integrity: sha512-z87aF9GphWp//fnkRsqvtY+inMVPgYW3zSlXH1kJFvRT5H/wiAn+G32qW5l3oEk63KSF1x3Ov0BfHCObAmT8RA==} + '@swc/core@1.12.11': + resolution: {integrity: sha512-P3GM+0lqjFctcp5HhR9mOcvLSX3SptI9L1aux0Fuvgt8oH4f92rCUrkodAa0U2ktmdjcyIiG37xg2mb/dSCYSA==} engines: {node: '>=10'} peerDependencies: '@swc/helpers': '>=0.5.17' @@ -568,11 +554,11 @@ packages: '@swc/counter@0.1.3': resolution: {integrity: sha512-e2BR4lsJkkRlKZ/qCHPw9ZaSxc0MVUd7gtbtaB7aMvHeJVYe8sOB8DBZkP2DtISHGSku9sCK6T6cnY0CtXrOCQ==} - '@swc/helpers@0.5.19': - resolution: {integrity: sha512-QamiFeIK3txNjgUTNppE6MiG3p7TdninpZu0E0PbqVh1a9FNLT2FRhisaa4NcaX52XVhA5l7Pk58Ft7Sqi/2sA==} + '@swc/helpers@0.5.17': + resolution: {integrity: sha512-5IKx/Y13RsYd+sauPb2x+U/xZikHjolzfuDgTAl/Tdf3Q8rslRvC19NKDLgAJQ6wsqADk10ntlv08nPFw/gO/A==} - '@swc/types@0.1.25': - resolution: {integrity: sha512-iAoY/qRhNH8a/hBvm3zKj9qQ4oc2+3w1unPJa2XvTK3XjeLXtzcCingVPw/9e5mn1+0yPqxcBGp9Jf0pkfMb1g==} + '@swc/types@0.1.23': + resolution: {integrity: sha512-u1iIVZV9Q0jxY+yM2vw/hZGDNudsN85bBpTqzAQ9rzkxW9D+e3aEM4Han+ow518gSewkXgjmEK0BD79ZcNVgPw==} ansi-styles@4.3.0: resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} @@ -581,26 +567,25 @@ packages: base-x@3.0.11: resolution: {integrity: sha512-xz7wQ8xDhdyP7tQxwdteLYeFfS68tSMNCZ/Y37WJ4bhGfKPpqEIlmIyueQHqOyoPhE6xNUqjzRr8ra0eF9VRvA==} - baseline-browser-mapping@2.10.0: - resolution: {integrity: sha512-lIyg0szRfYbiy67j9KN8IyeD7q7hcmqnJ1ddWmNt19ItGpNN64mnllmxUNFIOdOm6by97jlL6wfpTTJrmnjWAA==} - engines: {node: '>=6.0.0'} - hasBin: true - bootstrap-icons@1.13.1: resolution: {integrity: sha512-ijombt4v6bv5CLeXvRWKy7CuM3TRTuPEuGaGKvTV5cz65rQSY8RQ2JcHt6b90cBBAC7s8fsf2EkQDldzCoXUjw==} - bootstrap@5.3.8: - resolution: {integrity: sha512-HP1SZDqaLDPwsNiqRqi5NcP0SSXciX2s9E+RyqJIIqGo+vJeN5AJVM98CXmW/Wux0nQ5L7jeWUdplCEf0Ee+tg==} + bootstrap@5.3.7: + resolution: {integrity: sha512-7KgiD8UHjfcPBHEpDNg+zGz8L3LqR3GVwqZiBRFX04a1BCArZOz1r2kjly2HQ0WokqTO0v1nF+QAt8dsW4lKlw==} peerDependencies: '@popperjs/core': ^2.11.8 - browserslist@4.28.1: - resolution: {integrity: sha512-ZC5Bd0LgJXgwGqUknZY/vkUQ04r8NXnJZ3yYi4vDmSiZmC/pdSN0NbNRPxZpbtO4uAfDUAFffO8IZoM3Gj8IkA==} + braces@3.0.3: + resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} + engines: {node: '>=8'} + + browserslist@4.25.1: + resolution: {integrity: sha512-KGj0KoOMXLpSNkkEI6Z6mShmQy0bc1I+T7K9N81k4WWMrfz+6fQ6es80B/YLAeRoKvjYE1YSHHOW1qe9xIVzHw==} engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} hasBin: true - caniuse-lite@1.0.30001777: - resolution: {integrity: sha512-tmN+fJxroPndC74efCdp12j+0rk0RHwV5Jwa1zWaFVyw2ZxAuPeG8ZgWC3Wz7uSjT3qMRQ5XHZ4COgQmsCMJAQ==} + caniuse-lite@1.0.30001727: + resolution: {integrity: sha512-pB68nIHmbN6L/4C6MH1DokyR3bYqFwjaSs/sWDHGj4CTcFtQUQMuJftVwWkXq7mNWOybD3KhUv3oWHoGxgP14Q==} chalk@4.1.2: resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} @@ -634,8 +619,8 @@ packages: engines: {node: '>=0.10'} hasBin: true - detect-libc@2.1.2: - resolution: {integrity: sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==} + detect-libc@2.0.4: + resolution: {integrity: sha512-3UDv+G9CsCKO1WKMGw9fwq/SWJYbI0c5Y7LU1AXYoDdbhE2AHQ6N6Nb34sG8Fj7T5APy8qXDCKuuIHd1BR0tVA==} engines: {node: '>=8'} dotenv-expand@11.0.7: @@ -646,13 +631,17 @@ packages: resolution: {integrity: sha512-uBq4egWHTcTt33a72vpSG0z3HnPuIl6NqYcTrKEg2azoEyl2hpW0zqlxysq2pK9HlDIHyHyakeYaYnSAwd8bow==} engines: {node: '>=12'} - electron-to-chromium@1.5.307: - resolution: {integrity: sha512-5z3uFKBWjiNR44nFcYdkcXjKMbg5KXNdciu7mhTPo9tB7NbqSNP2sSnGR+fqknZSCwKkBN+oxiiajWs4dT6ORg==} + electron-to-chromium@1.5.182: + resolution: {integrity: sha512-Lv65Btwv9W4J9pyODI6EWpdnhfvrve/us5h1WspW8B2Fb0366REPtY3hX7ounk1CkV/TBjWCEvCBBbYbmV0qCA==} escalade@3.2.0: resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==} engines: {node: '>=6'} + fill-range@7.1.1: + resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} + engines: {node: '>=8'} + get-port@4.2.0: resolution: {integrity: sha512-/b3jarXkH8KJoOMQc3uVGHASwGLPq3gSFJ7tgJm2diza+bydJPTGOibin2steecKeOylE8oY2JERlVWkAJO6yw==} engines: {node: '>=6'} @@ -665,8 +654,8 @@ packages: resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} engines: {node: '>=8'} - immutable@5.1.5: - resolution: {integrity: sha512-t7xcm2siw+hlUM68I+UEOK+z84RzmN59as9DZ7P1l0994DKUWV7UXBMQZVxaoMSRQ+PBZbHCOoBt7a2wxOMt+A==} + immutable@5.1.3: + resolution: {integrity: sha512-+chQdDfvscSF1SJqv2gn4SRO2ZyS3xL3r7IW/wWEEzrzLisnOlKiQu5ytC/BVNcS15C39WT2Hg/bjKjDMcu+zg==} is-extglob@2.1.1: resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} @@ -676,6 +665,10 @@ packages: resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} engines: {node: '>=0.10.0'} + is-number@7.0.0: + resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} + engines: {node: '>=0.12.0'} + jquery@3.7.1: resolution: {integrity: sha512-m4avr8yL8kmFN8psrbFFFmB/If14iN5o9nw/NgnnM+kybDJpRsAynV2BsfpTYrTRysYUdADVD7CkUUizgkpLfg==} @@ -684,90 +677,84 @@ packages: engines: {node: '>=6'} hasBin: true - lightningcss-android-arm64@1.31.1: - resolution: {integrity: sha512-HXJF3x8w9nQ4jbXRiNppBCqeZPIAfUo8zE/kOEGbW5NZvGc/K7nMxbhIr+YlFlHW5mpbg/YFPdbnCh1wAXCKFg==} - engines: {node: '>= 12.0.0'} - cpu: [arm64] - os: [android] - - lightningcss-darwin-arm64@1.31.1: - resolution: {integrity: sha512-02uTEqf3vIfNMq3h/z2cJfcOXnQ0GRwQrkmPafhueLb2h7mqEidiCzkE4gBMEH65abHRiQvhdcQ+aP0D0g67sg==} + lightningcss-darwin-arm64@1.30.1: + resolution: {integrity: sha512-c8JK7hyE65X1MHMN+Viq9n11RRC7hgin3HhYKhrMyaXflk5GVplZ60IxyoVtzILeKr+xAJwg6zK6sjTBJ0FKYQ==} engines: {node: '>= 12.0.0'} cpu: [arm64] os: [darwin] - lightningcss-darwin-x64@1.31.1: - resolution: {integrity: sha512-1ObhyoCY+tGxtsz1lSx5NXCj3nirk0Y0kB/g8B8DT+sSx4G9djitg9ejFnjb3gJNWo7qXH4DIy2SUHvpoFwfTA==} + lightningcss-darwin-x64@1.30.1: + resolution: {integrity: sha512-k1EvjakfumAQoTfcXUcHQZhSpLlkAuEkdMBsI/ivWw9hL+7FtilQc0Cy3hrx0AAQrVtQAbMI7YjCgYgvn37PzA==} engines: {node: '>= 12.0.0'} cpu: [x64] os: [darwin] - lightningcss-freebsd-x64@1.31.1: - resolution: {integrity: sha512-1RINmQKAItO6ISxYgPwszQE1BrsVU5aB45ho6O42mu96UiZBxEXsuQ7cJW4zs4CEodPUioj/QrXW1r9pLUM74A==} + lightningcss-freebsd-x64@1.30.1: + resolution: {integrity: sha512-kmW6UGCGg2PcyUE59K5r0kWfKPAVy4SltVeut+umLCFoJ53RdCUWxcRDzO1eTaxf/7Q2H7LTquFHPL5R+Gjyig==} engines: {node: '>= 12.0.0'} cpu: [x64] os: [freebsd] - lightningcss-linux-arm-gnueabihf@1.31.1: - resolution: {integrity: sha512-OOCm2//MZJ87CdDK62rZIu+aw9gBv4azMJuA8/KB74wmfS3lnC4yoPHm0uXZ/dvNNHmnZnB8XLAZzObeG0nS1g==} + lightningcss-linux-arm-gnueabihf@1.30.1: + resolution: {integrity: sha512-MjxUShl1v8pit+6D/zSPq9S9dQ2NPFSQwGvxBCYaBYLPlCWuPh9/t1MRS8iUaR8i+a6w7aps+B4N0S1TYP/R+Q==} engines: {node: '>= 12.0.0'} cpu: [arm] os: [linux] - lightningcss-linux-arm64-gnu@1.31.1: - resolution: {integrity: sha512-WKyLWztD71rTnou4xAD5kQT+982wvca7E6QoLpoawZ1gP9JM0GJj4Tp5jMUh9B3AitHbRZ2/H3W5xQmdEOUlLg==} + lightningcss-linux-arm64-gnu@1.30.1: + resolution: {integrity: sha512-gB72maP8rmrKsnKYy8XUuXi/4OctJiuQjcuqWNlJQ6jZiWqtPvqFziskH3hnajfvKB27ynbVCucKSm2rkQp4Bw==} engines: {node: '>= 12.0.0'} cpu: [arm64] os: [linux] - libc: [glibc] - lightningcss-linux-arm64-musl@1.31.1: - resolution: {integrity: sha512-mVZ7Pg2zIbe3XlNbZJdjs86YViQFoJSpc41CbVmKBPiGmC4YrfeOyz65ms2qpAobVd7WQsbW4PdsSJEMymyIMg==} + lightningcss-linux-arm64-musl@1.30.1: + resolution: {integrity: sha512-jmUQVx4331m6LIX+0wUhBbmMX7TCfjF5FoOH6SD1CttzuYlGNVpA7QnrmLxrsub43ClTINfGSYyHe2HWeLl5CQ==} engines: {node: '>= 12.0.0'} cpu: [arm64] os: [linux] - libc: [musl] - lightningcss-linux-x64-gnu@1.31.1: - resolution: {integrity: sha512-xGlFWRMl+0KvUhgySdIaReQdB4FNudfUTARn7q0hh/V67PVGCs3ADFjw+6++kG1RNd0zdGRlEKa+T13/tQjPMA==} + lightningcss-linux-x64-gnu@1.30.1: + resolution: {integrity: sha512-piWx3z4wN8J8z3+O5kO74+yr6ze/dKmPnI7vLqfSqI8bccaTGY5xiSGVIJBDd5K5BHlvVLpUB3S2YCfelyJ1bw==} engines: {node: '>= 12.0.0'} cpu: [x64] os: [linux] - libc: [glibc] - lightningcss-linux-x64-musl@1.31.1: - resolution: {integrity: sha512-eowF8PrKHw9LpoZii5tdZwnBcYDxRw2rRCyvAXLi34iyeYfqCQNA9rmUM0ce62NlPhCvof1+9ivRaTY6pSKDaA==} + lightningcss-linux-x64-musl@1.30.1: + resolution: {integrity: sha512-rRomAK7eIkL+tHY0YPxbc5Dra2gXlI63HL+v1Pdi1a3sC+tJTcFrHX+E86sulgAXeI7rSzDYhPSeHHjqFhqfeQ==} engines: {node: '>= 12.0.0'} cpu: [x64] os: [linux] - libc: [musl] - lightningcss-win32-arm64-msvc@1.31.1: - resolution: {integrity: sha512-aJReEbSEQzx1uBlQizAOBSjcmr9dCdL3XuC/6HLXAxmtErsj2ICo5yYggg1qOODQMtnjNQv2UHb9NpOuFtYe4w==} + lightningcss-win32-arm64-msvc@1.30.1: + resolution: {integrity: sha512-mSL4rqPi4iXq5YVqzSsJgMVFENoa4nGTT/GjO2c0Yl9OuQfPsIfncvLrEW6RbbB24WtZ3xP/2CCmI3tNkNV4oA==} engines: {node: '>= 12.0.0'} cpu: [arm64] os: [win32] - lightningcss-win32-x64-msvc@1.31.1: - resolution: {integrity: sha512-I9aiFrbd7oYHwlnQDqr1Roz+fTz61oDDJX7n9tYF9FJymH1cIN1DtKw3iYt6b8WZgEjoNwVSncwF4wx/ZedMhw==} + lightningcss-win32-x64-msvc@1.30.1: + resolution: {integrity: sha512-PVqXh48wh4T53F/1CCu8PIPCxLzWyCnn/9T5W1Jpmdy5h9Cwd+0YQS6/LwhHXSafuc61/xg9Lv5OrCby6a++jg==} engines: {node: '>= 12.0.0'} cpu: [x64] os: [win32] - lightningcss@1.31.1: - resolution: {integrity: sha512-l51N2r93WmGUye3WuFoN5k10zyvrVs0qfKBhyC5ogUQ6Ew6JUSswh78mbSO+IU3nTWsyOArqPCcShdQSadghBQ==} + lightningcss@1.30.1: + resolution: {integrity: sha512-xi6IyHML+c9+Q3W0S4fCQJOym42pyurFiJUHEcEyHS0CeKzia4yZDEsLlqOFykxOdHpNy0NmvVO31vcSqAxJCg==} engines: {node: '>= 12.0.0'} lmdb@2.8.5: resolution: {integrity: sha512-9bMdFfc80S+vSldBmG3HOuLVHnxRdNTlpzR6QDnzqCQtCzGUEAGTzBKYMeIM+I/sU4oZfgbcbS7X7F65/z/oxQ==} hasBin: true + micromatch@4.0.8: + resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==} + engines: {node: '>=8.6'} + msgpackr-extract@3.0.3: resolution: {integrity: sha512-P0efT1C9jIdVRefqjzOQ9Xml57zpOXnIuS+csaB4MdZbTdmGDLo8XhzBG1N7aO11gKDDkJvBLULeFTo46wwreA==} hasBin: true - msgpackr@1.11.8: - resolution: {integrity: sha512-bC4UGzHhVvgDNS7kn9tV8fAucIYUBuGojcaLiz7v+P63Lmtm0Xeji8B/8tYKddALXxJLpwIeBmUN3u64C4YkRA==} + msgpackr@1.11.4: + resolution: {integrity: sha512-uaff7RG9VIC4jacFW9xzL3jc0iM32DNHe4jYVycBcjUePT/Klnfj7pqtWJt9khvDFizmjN2TlYniYmSS2LIaZg==} node-addon-api@6.1.0: resolution: {integrity: sha512-+eawOlIgy680F0kBzPUNFhMZGtJ1YmqM6l4+Crf4IkImjYrO/mqPwRMh352g23uIaQKFItcQ64I7KMaJxHgAVA==} @@ -783,26 +770,26 @@ packages: resolution: {integrity: sha512-s+w+rBWnpTMwSFbaE0UXsRlg7hU4FjekKU4eyAih5T8nJuNZT1nNsskXpxmeqSK9UzkBl6UgRlnKc8hz8IEqOw==} hasBin: true - node-releases@2.0.36: - resolution: {integrity: sha512-TdC8FSgHz8Mwtw9g5L4gR/Sh9XhSP/0DEkQxfEFXOpiul5IiHgHan2VhYYb6agDSfp4KuvltmGApc8HMgUrIkA==} + node-releases@2.0.19: + resolution: {integrity: sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==} nullthrows@1.1.1: resolution: {integrity: sha512-2vPPEi+Z7WqML2jZYddDIfy5Dqb0r2fze2zTxNNknZaFpVHU3mFB3R+DWeJWGVx0ecvttSGlJTI+WG+8Z4cDWw==} - ordered-binary@1.6.1: - resolution: {integrity: sha512-QkCdPooczexPLiXIrbVOPYkR3VO3T6v2OyKRkR1Xbhpy7/LAVXwahnRCgRp78Oe/Ehf0C/HATAxfSr6eA1oX+w==} + ordered-binary@1.6.0: + resolution: {integrity: sha512-IQh2aMfMIDbPjI/8a3Edr+PiOpcsB7yo8NdW7aHWVaoR/pcDldunMvnnwbk/auPGqmKeAdxtZl7MHX/QmPwhvQ==} - parcel@2.16.4: - resolution: {integrity: sha512-RQlrqs4ujYNJpTQi+dITqPKNhRWEqpjPd1YBcGp50Wy3FcJHpwu0/iRm7XWz2dKU/Bwp2qCcVYPIeEDYi2uOUw==} + parcel@2.15.4: + resolution: {integrity: sha512-eZHQ/omuQ7yBYB9XezyzSqhc826oy/uhloCNiej1CTZ+twAqJVtp4MRvTGMcivKhE+WE8QkYD5XkJHLLQsJQcg==} engines: {node: '>= 16.0.0'} hasBin: true picocolors@1.1.1: resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==} - picomatch@4.0.3: - resolution: {integrity: sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==} - engines: {node: '>=12'} + picomatch@2.3.1: + resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} + engines: {node: '>=8.6'} postcss-value-parser@4.2.0: resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==} @@ -812,8 +799,8 @@ packages: peerDependencies: prettier: ^3.0.0 - prettier@3.8.1: - resolution: {integrity: sha512-UOnG6LftzbdaHZcKoPFtOcCKztrQ57WkHDeRD9t/PTQtmT0NHSeWWepj6pS0z/N7+08BHFDQVUrfmfMRcZwbMg==} + prettier@3.6.2: + resolution: {integrity: sha512-I7AIg5boAr5R0FFtJ6rCfD+LFsWHp81dolrFD8S79U9tb8Az2nGrJncnMSnys+bpQJfRUzqs9hnA81OAA3hCuQ==} engines: {node: '>=14'} hasBin: true @@ -831,13 +818,13 @@ packages: safe-buffer@5.2.1: resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} - sass@1.97.3: - resolution: {integrity: sha512-fDz1zJpd5GycprAbu4Q2PV/RprsRtKC/0z82z0JLgdytmcq0+ujJbJ/09bPGDxCLkKY3Np5cRAOcWiVkLXJURg==} + sass@1.89.2: + resolution: {integrity: sha512-xCmtksBKd/jdJ9Bt9p7nPKiuqrlBMBuuGkQlkhZjjQk3Ty48lv93k5Dq6OPkKt4XwxDJ7tvlfrTa1MPA9bf+QA==} engines: {node: '>=14.0.0'} hasBin: true - semver@7.7.4: - resolution: {integrity: sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==} + semver@7.7.2: + resolution: {integrity: sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==} engines: {node: '>=10'} hasBin: true @@ -853,6 +840,10 @@ packages: resolution: {integrity: sha512-wK0Ri4fOGjv/XPy8SBHZChl8CM7uMc5VML7SqiQ0zG7+J5Vr+RMQDoHa2CNT6KHUnTGIXH34UDMkPzAUyapBZg==} engines: {node: '>=8'} + to-regex-range@5.0.1: + resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} + engines: {node: '>=8.0'} + tslib@2.8.1: resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==} @@ -860,8 +851,8 @@ packages: resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==} engines: {node: '>=10'} - update-browserslist-db@1.2.3: - resolution: {integrity: sha512-Js0m9cx+qOgDxo0eMiFGEueWztz+d4+M3rGlmKPT+T4IS/jP4ylw3Nwpu6cpTTP8R1MAC1kF4VbdLt3ARf209w==} + update-browserslist-db@1.1.3: + resolution: {integrity: sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw==} hasBin: true peerDependencies: browserslist: '>= 4.21.0' @@ -875,11 +866,11 @@ packages: snapshots: - '@lezer/common@1.5.1': {} + '@lezer/common@1.2.3': {} - '@lezer/lr@1.4.8': + '@lezer/lr@1.4.2': dependencies: - '@lezer/common': 1.5.1 + '@lezer/common': 1.2.3 '@lmdb/lmdb-darwin-arm64@2.8.5': optional: true @@ -901,8 +892,8 @@ snapshots: '@mischnic/json-sourcemap@0.1.1': dependencies: - '@lezer/common': 1.5.1 - '@lezer/lr': 1.4.8 + '@lezer/common': 1.2.3 + '@lezer/lr': 1.4.2 json5: 2.2.3 '@msgpackr-extract/msgpackr-extract-darwin-arm64@3.0.3': @@ -923,719 +914,719 @@ snapshots: '@msgpackr-extract/msgpackr-extract-win32-x64@3.0.3': optional: true - '@parcel/bundler-default@2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19))': + '@parcel/bundler-default@2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17))': dependencies: - '@parcel/diagnostic': 2.16.4 - '@parcel/graph': 3.6.4 - '@parcel/plugin': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/rust': 2.16.4 - '@parcel/utils': 2.16.4 + '@parcel/diagnostic': 2.15.4 + '@parcel/graph': 3.5.4 + '@parcel/plugin': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/rust': 2.15.4 + '@parcel/utils': 2.15.4 nullthrows: 1.1.1 transitivePeerDependencies: - '@parcel/core' - napi-wasm - '@parcel/cache@2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19))': + '@parcel/cache@2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17))': dependencies: - '@parcel/core': 2.16.4(@swc/helpers@0.5.19) - '@parcel/fs': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/logger': 2.16.4 - '@parcel/utils': 2.16.4 + '@parcel/core': 2.15.4(@swc/helpers@0.5.17) + '@parcel/fs': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/logger': 2.15.4 + '@parcel/utils': 2.15.4 lmdb: 2.8.5 transitivePeerDependencies: - napi-wasm - '@parcel/codeframe@2.16.4': + '@parcel/codeframe@2.15.4': dependencies: chalk: 4.1.2 - '@parcel/compressor-raw@2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19))': + '@parcel/compressor-raw@2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17))': dependencies: - '@parcel/plugin': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) + '@parcel/plugin': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) transitivePeerDependencies: - '@parcel/core' - napi-wasm - '@parcel/config-default@2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19))(@swc/helpers@0.5.19)': + '@parcel/config-default@2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17))(@swc/helpers@0.5.17)': dependencies: - '@parcel/bundler-default': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/compressor-raw': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/core': 2.16.4(@swc/helpers@0.5.19) - '@parcel/namer-default': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/optimizer-css': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/optimizer-html': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/optimizer-image': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/optimizer-svg': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/optimizer-swc': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19))(@swc/helpers@0.5.19) - '@parcel/packager-css': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/packager-html': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/packager-js': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/packager-raw': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/packager-svg': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/packager-wasm': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/reporter-dev-server': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/resolver-default': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/runtime-browser-hmr': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/runtime-js': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/runtime-rsc': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/runtime-service-worker': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/transformer-babel': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/transformer-css': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/transformer-html': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/transformer-image': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/transformer-js': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/transformer-json': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/transformer-node': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/transformer-postcss': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/transformer-posthtml': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/transformer-raw': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/transformer-react-refresh-wrap': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/transformer-svg': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) + '@parcel/bundler-default': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/compressor-raw': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/core': 2.15.4(@swc/helpers@0.5.17) + '@parcel/namer-default': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/optimizer-css': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/optimizer-html': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/optimizer-image': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/optimizer-svg': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/optimizer-swc': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17))(@swc/helpers@0.5.17) + '@parcel/packager-css': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/packager-html': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/packager-js': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/packager-raw': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/packager-svg': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/packager-wasm': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/reporter-dev-server': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/resolver-default': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/runtime-browser-hmr': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/runtime-js': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/runtime-rsc': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/runtime-service-worker': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/transformer-babel': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/transformer-css': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/transformer-html': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/transformer-image': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/transformer-js': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/transformer-json': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/transformer-node': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/transformer-postcss': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/transformer-posthtml': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/transformer-raw': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/transformer-react-refresh-wrap': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/transformer-svg': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) transitivePeerDependencies: - '@swc/helpers' - napi-wasm - '@parcel/core@2.16.4(@swc/helpers@0.5.19)': + '@parcel/core@2.15.4(@swc/helpers@0.5.17)': dependencies: '@mischnic/json-sourcemap': 0.1.1 - '@parcel/cache': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/diagnostic': 2.16.4 - '@parcel/events': 2.16.4 - '@parcel/feature-flags': 2.16.4 - '@parcel/fs': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/graph': 3.6.4 - '@parcel/logger': 2.16.4 - '@parcel/package-manager': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19))(@swc/helpers@0.5.19) - '@parcel/plugin': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/profiler': 2.16.4 - '@parcel/rust': 2.16.4 + '@parcel/cache': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/diagnostic': 2.15.4 + '@parcel/events': 2.15.4 + '@parcel/feature-flags': 2.15.4 + '@parcel/fs': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/graph': 3.5.4 + '@parcel/logger': 2.15.4 + '@parcel/package-manager': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17))(@swc/helpers@0.5.17) + '@parcel/plugin': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/profiler': 2.15.4 + '@parcel/rust': 2.15.4 '@parcel/source-map': 2.1.1 - '@parcel/types': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/utils': 2.16.4 - '@parcel/workers': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) + '@parcel/types': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/utils': 2.15.4 + '@parcel/workers': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) base-x: 3.0.11 - browserslist: 4.28.1 + browserslist: 4.25.1 clone: 2.1.2 dotenv: 16.6.1 dotenv-expand: 11.0.7 json5: 2.2.3 - msgpackr: 1.11.8 + msgpackr: 1.11.4 nullthrows: 1.1.1 - semver: 7.7.4 + semver: 7.7.2 transitivePeerDependencies: - '@swc/helpers' - napi-wasm - '@parcel/diagnostic@2.16.4': + '@parcel/diagnostic@2.15.4': dependencies: '@mischnic/json-sourcemap': 0.1.1 nullthrows: 1.1.1 - '@parcel/error-overlay@2.16.4': {} + '@parcel/error-overlay@2.15.4': {} - '@parcel/events@2.16.4': {} + '@parcel/events@2.15.4': {} - '@parcel/feature-flags@2.16.4': {} + '@parcel/feature-flags@2.15.4': {} - '@parcel/fs@2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19))': + '@parcel/fs@2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17))': dependencies: - '@parcel/core': 2.16.4(@swc/helpers@0.5.19) - '@parcel/feature-flags': 2.16.4 - '@parcel/rust': 2.16.4 - '@parcel/types-internal': 2.16.4 - '@parcel/utils': 2.16.4 - '@parcel/watcher': 2.5.6 - '@parcel/workers': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) + '@parcel/core': 2.15.4(@swc/helpers@0.5.17) + '@parcel/feature-flags': 2.15.4 + '@parcel/rust': 2.15.4 + '@parcel/types-internal': 2.15.4 + '@parcel/utils': 2.15.4 + '@parcel/watcher': 2.5.1 + '@parcel/workers': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) transitivePeerDependencies: - napi-wasm - '@parcel/graph@3.6.4': + '@parcel/graph@3.5.4': dependencies: - '@parcel/feature-flags': 2.16.4 + '@parcel/feature-flags': 2.15.4 nullthrows: 1.1.1 - '@parcel/logger@2.16.4': + '@parcel/logger@2.15.4': dependencies: - '@parcel/diagnostic': 2.16.4 - '@parcel/events': 2.16.4 + '@parcel/diagnostic': 2.15.4 + '@parcel/events': 2.15.4 - '@parcel/markdown-ansi@2.16.4': + '@parcel/markdown-ansi@2.15.4': dependencies: chalk: 4.1.2 - '@parcel/namer-default@2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19))': + '@parcel/namer-default@2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17))': dependencies: - '@parcel/diagnostic': 2.16.4 - '@parcel/plugin': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) + '@parcel/diagnostic': 2.15.4 + '@parcel/plugin': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) nullthrows: 1.1.1 transitivePeerDependencies: - '@parcel/core' - napi-wasm - '@parcel/node-resolver-core@3.7.4(@parcel/core@2.16.4(@swc/helpers@0.5.19))': + '@parcel/node-resolver-core@3.6.4(@parcel/core@2.15.4(@swc/helpers@0.5.17))': dependencies: '@mischnic/json-sourcemap': 0.1.1 - '@parcel/diagnostic': 2.16.4 - '@parcel/fs': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/rust': 2.16.4 - '@parcel/utils': 2.16.4 + '@parcel/diagnostic': 2.15.4 + '@parcel/fs': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/rust': 2.15.4 + '@parcel/utils': 2.15.4 nullthrows: 1.1.1 - semver: 7.7.4 + semver: 7.7.2 transitivePeerDependencies: - '@parcel/core' - napi-wasm - '@parcel/optimizer-css@2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19))': + '@parcel/optimizer-css@2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17))': dependencies: - '@parcel/diagnostic': 2.16.4 - '@parcel/plugin': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) + '@parcel/diagnostic': 2.15.4 + '@parcel/plugin': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) '@parcel/source-map': 2.1.1 - '@parcel/utils': 2.16.4 - browserslist: 4.28.1 - lightningcss: 1.31.1 + '@parcel/utils': 2.15.4 + browserslist: 4.25.1 + lightningcss: 1.30.1 nullthrows: 1.1.1 transitivePeerDependencies: - '@parcel/core' - napi-wasm - '@parcel/optimizer-html@2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19))': + '@parcel/optimizer-html@2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17))': dependencies: - '@parcel/plugin': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/rust': 2.16.4 - '@parcel/utils': 2.16.4 + '@parcel/plugin': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/rust': 2.15.4 + '@parcel/utils': 2.15.4 transitivePeerDependencies: - '@parcel/core' - napi-wasm - '@parcel/optimizer-image@2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19))': + '@parcel/optimizer-image@2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17))': dependencies: - '@parcel/core': 2.16.4(@swc/helpers@0.5.19) - '@parcel/diagnostic': 2.16.4 - '@parcel/plugin': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/rust': 2.16.4 - '@parcel/utils': 2.16.4 - '@parcel/workers': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) + '@parcel/core': 2.15.4(@swc/helpers@0.5.17) + '@parcel/diagnostic': 2.15.4 + '@parcel/plugin': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/rust': 2.15.4 + '@parcel/utils': 2.15.4 + '@parcel/workers': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) transitivePeerDependencies: - napi-wasm - '@parcel/optimizer-svg@2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19))': + '@parcel/optimizer-svg@2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17))': dependencies: - '@parcel/plugin': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/rust': 2.16.4 - '@parcel/utils': 2.16.4 + '@parcel/plugin': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/rust': 2.15.4 + '@parcel/utils': 2.15.4 transitivePeerDependencies: - '@parcel/core' - napi-wasm - '@parcel/optimizer-swc@2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19))(@swc/helpers@0.5.19)': + '@parcel/optimizer-swc@2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17))(@swc/helpers@0.5.17)': dependencies: - '@parcel/diagnostic': 2.16.4 - '@parcel/plugin': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) + '@parcel/diagnostic': 2.15.4 + '@parcel/plugin': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) '@parcel/source-map': 2.1.1 - '@parcel/utils': 2.16.4 - '@swc/core': 1.15.18(@swc/helpers@0.5.19) + '@parcel/utils': 2.15.4 + '@swc/core': 1.12.11(@swc/helpers@0.5.17) nullthrows: 1.1.1 transitivePeerDependencies: - '@parcel/core' - '@swc/helpers' - napi-wasm - '@parcel/package-manager@2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19))(@swc/helpers@0.5.19)': + '@parcel/package-manager@2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17))(@swc/helpers@0.5.17)': dependencies: - '@parcel/core': 2.16.4(@swc/helpers@0.5.19) - '@parcel/diagnostic': 2.16.4 - '@parcel/fs': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/logger': 2.16.4 - '@parcel/node-resolver-core': 3.7.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/types': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/utils': 2.16.4 - '@parcel/workers': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@swc/core': 1.15.18(@swc/helpers@0.5.19) - semver: 7.7.4 + '@parcel/core': 2.15.4(@swc/helpers@0.5.17) + '@parcel/diagnostic': 2.15.4 + '@parcel/fs': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/logger': 2.15.4 + '@parcel/node-resolver-core': 3.6.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/types': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/utils': 2.15.4 + '@parcel/workers': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@swc/core': 1.12.11(@swc/helpers@0.5.17) + semver: 7.7.2 transitivePeerDependencies: - '@swc/helpers' - napi-wasm - '@parcel/packager-css@2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19))': + '@parcel/packager-css@2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17))': dependencies: - '@parcel/diagnostic': 2.16.4 - '@parcel/plugin': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) + '@parcel/diagnostic': 2.15.4 + '@parcel/plugin': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) '@parcel/source-map': 2.1.1 - '@parcel/utils': 2.16.4 - lightningcss: 1.31.1 + '@parcel/utils': 2.15.4 + lightningcss: 1.30.1 nullthrows: 1.1.1 transitivePeerDependencies: - '@parcel/core' - napi-wasm - '@parcel/packager-html@2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19))': + '@parcel/packager-html@2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17))': dependencies: - '@parcel/plugin': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/rust': 2.16.4 - '@parcel/types': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/utils': 2.16.4 + '@parcel/plugin': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/rust': 2.15.4 + '@parcel/types': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/utils': 2.15.4 transitivePeerDependencies: - '@parcel/core' - napi-wasm - '@parcel/packager-js@2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19))': + '@parcel/packager-js@2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17))': dependencies: - '@parcel/diagnostic': 2.16.4 - '@parcel/plugin': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/rust': 2.16.4 + '@parcel/diagnostic': 2.15.4 + '@parcel/plugin': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/rust': 2.15.4 '@parcel/source-map': 2.1.1 - '@parcel/types': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/utils': 2.16.4 + '@parcel/types': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/utils': 2.15.4 globals: 13.24.0 nullthrows: 1.1.1 transitivePeerDependencies: - '@parcel/core' - napi-wasm - '@parcel/packager-raw@2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19))': + '@parcel/packager-raw@2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17))': dependencies: - '@parcel/plugin': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) + '@parcel/plugin': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) transitivePeerDependencies: - '@parcel/core' - napi-wasm - '@parcel/packager-svg@2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19))': + '@parcel/packager-svg@2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17))': dependencies: - '@parcel/plugin': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/rust': 2.16.4 - '@parcel/types': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/utils': 2.16.4 + '@parcel/plugin': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/rust': 2.15.4 + '@parcel/types': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/utils': 2.15.4 transitivePeerDependencies: - '@parcel/core' - napi-wasm - '@parcel/packager-wasm@2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19))': + '@parcel/packager-wasm@2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17))': dependencies: - '@parcel/plugin': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) + '@parcel/plugin': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) transitivePeerDependencies: - '@parcel/core' - napi-wasm - '@parcel/plugin@2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19))': + '@parcel/plugin@2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17))': dependencies: - '@parcel/types': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) + '@parcel/types': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) transitivePeerDependencies: - '@parcel/core' - napi-wasm - '@parcel/profiler@2.16.4': + '@parcel/profiler@2.15.4': dependencies: - '@parcel/diagnostic': 2.16.4 - '@parcel/events': 2.16.4 - '@parcel/types-internal': 2.16.4 + '@parcel/diagnostic': 2.15.4 + '@parcel/events': 2.15.4 + '@parcel/types-internal': 2.15.4 chrome-trace-event: 1.0.4 - '@parcel/reporter-cli@2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19))': + '@parcel/reporter-cli@2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17))': dependencies: - '@parcel/plugin': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/types': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/utils': 2.16.4 + '@parcel/plugin': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/types': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/utils': 2.15.4 chalk: 4.1.2 term-size: 2.2.1 transitivePeerDependencies: - '@parcel/core' - napi-wasm - '@parcel/reporter-dev-server@2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19))': + '@parcel/reporter-dev-server@2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17))': dependencies: - '@parcel/codeframe': 2.16.4 - '@parcel/plugin': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) + '@parcel/codeframe': 2.15.4 + '@parcel/plugin': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) '@parcel/source-map': 2.1.1 - '@parcel/utils': 2.16.4 + '@parcel/utils': 2.15.4 transitivePeerDependencies: - '@parcel/core' - napi-wasm - '@parcel/reporter-tracer@2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19))': + '@parcel/reporter-tracer@2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17))': dependencies: - '@parcel/plugin': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/utils': 2.16.4 + '@parcel/plugin': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/utils': 2.15.4 chrome-trace-event: 1.0.4 nullthrows: 1.1.1 transitivePeerDependencies: - '@parcel/core' - napi-wasm - '@parcel/resolver-default@2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19))': + '@parcel/resolver-default@2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17))': dependencies: - '@parcel/node-resolver-core': 3.7.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/plugin': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) + '@parcel/node-resolver-core': 3.6.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/plugin': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) transitivePeerDependencies: - '@parcel/core' - napi-wasm - '@parcel/runtime-browser-hmr@2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19))': + '@parcel/runtime-browser-hmr@2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17))': dependencies: - '@parcel/plugin': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/utils': 2.16.4 + '@parcel/plugin': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/utils': 2.15.4 transitivePeerDependencies: - '@parcel/core' - napi-wasm - '@parcel/runtime-js@2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19))': + '@parcel/runtime-js@2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17))': dependencies: - '@parcel/diagnostic': 2.16.4 - '@parcel/plugin': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/utils': 2.16.4 + '@parcel/diagnostic': 2.15.4 + '@parcel/plugin': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/utils': 2.15.4 nullthrows: 1.1.1 transitivePeerDependencies: - '@parcel/core' - napi-wasm - '@parcel/runtime-rsc@2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19))': + '@parcel/runtime-rsc@2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17))': dependencies: - '@parcel/plugin': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/rust': 2.16.4 - '@parcel/utils': 2.16.4 + '@parcel/plugin': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/rust': 2.15.4 + '@parcel/utils': 2.15.4 nullthrows: 1.1.1 transitivePeerDependencies: - '@parcel/core' - napi-wasm - '@parcel/runtime-service-worker@2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19))': + '@parcel/runtime-service-worker@2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17))': dependencies: - '@parcel/plugin': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/utils': 2.16.4 + '@parcel/plugin': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/utils': 2.15.4 nullthrows: 1.1.1 transitivePeerDependencies: - '@parcel/core' - napi-wasm - '@parcel/rust-darwin-arm64@2.16.4': + '@parcel/rust-darwin-arm64@2.15.4': optional: true - '@parcel/rust-darwin-x64@2.16.4': + '@parcel/rust-darwin-x64@2.15.4': optional: true - '@parcel/rust-linux-arm-gnueabihf@2.16.4': + '@parcel/rust-linux-arm-gnueabihf@2.15.4': optional: true - '@parcel/rust-linux-arm64-gnu@2.16.4': + '@parcel/rust-linux-arm64-gnu@2.15.4': optional: true - '@parcel/rust-linux-arm64-musl@2.16.4': + '@parcel/rust-linux-arm64-musl@2.15.4': optional: true - '@parcel/rust-linux-x64-gnu@2.16.4': + '@parcel/rust-linux-x64-gnu@2.15.4': optional: true - '@parcel/rust-linux-x64-musl@2.16.4': + '@parcel/rust-linux-x64-musl@2.15.4': optional: true - '@parcel/rust-win32-x64-msvc@2.16.4': + '@parcel/rust-win32-x64-msvc@2.15.4': optional: true - '@parcel/rust@2.16.4': + '@parcel/rust@2.15.4': optionalDependencies: - '@parcel/rust-darwin-arm64': 2.16.4 - '@parcel/rust-darwin-x64': 2.16.4 - '@parcel/rust-linux-arm-gnueabihf': 2.16.4 - '@parcel/rust-linux-arm64-gnu': 2.16.4 - '@parcel/rust-linux-arm64-musl': 2.16.4 - '@parcel/rust-linux-x64-gnu': 2.16.4 - '@parcel/rust-linux-x64-musl': 2.16.4 - '@parcel/rust-win32-x64-msvc': 2.16.4 + '@parcel/rust-darwin-arm64': 2.15.4 + '@parcel/rust-darwin-x64': 2.15.4 + '@parcel/rust-linux-arm-gnueabihf': 2.15.4 + '@parcel/rust-linux-arm64-gnu': 2.15.4 + '@parcel/rust-linux-arm64-musl': 2.15.4 + '@parcel/rust-linux-x64-gnu': 2.15.4 + '@parcel/rust-linux-x64-musl': 2.15.4 + '@parcel/rust-win32-x64-msvc': 2.15.4 '@parcel/source-map@2.1.1': dependencies: detect-libc: 1.0.3 - '@parcel/transformer-babel@2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19))': + '@parcel/transformer-babel@2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17))': dependencies: - '@parcel/diagnostic': 2.16.4 - '@parcel/plugin': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) + '@parcel/diagnostic': 2.15.4 + '@parcel/plugin': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) '@parcel/source-map': 2.1.1 - '@parcel/utils': 2.16.4 - browserslist: 4.28.1 + '@parcel/utils': 2.15.4 + browserslist: 4.25.1 json5: 2.2.3 nullthrows: 1.1.1 - semver: 7.7.4 + semver: 7.7.2 transitivePeerDependencies: - '@parcel/core' - napi-wasm - '@parcel/transformer-css@2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19))': + '@parcel/transformer-css@2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17))': dependencies: - '@parcel/diagnostic': 2.16.4 - '@parcel/plugin': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) + '@parcel/diagnostic': 2.15.4 + '@parcel/plugin': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) '@parcel/source-map': 2.1.1 - '@parcel/utils': 2.16.4 - browserslist: 4.28.1 - lightningcss: 1.31.1 + '@parcel/utils': 2.15.4 + browserslist: 4.25.1 + lightningcss: 1.30.1 nullthrows: 1.1.1 transitivePeerDependencies: - '@parcel/core' - napi-wasm - '@parcel/transformer-html@2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19))': + '@parcel/transformer-html@2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17))': dependencies: - '@parcel/diagnostic': 2.16.4 - '@parcel/plugin': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/rust': 2.16.4 + '@parcel/diagnostic': 2.15.4 + '@parcel/plugin': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/rust': 2.15.4 transitivePeerDependencies: - '@parcel/core' - napi-wasm - '@parcel/transformer-image@2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19))': + '@parcel/transformer-image@2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17))': dependencies: - '@parcel/core': 2.16.4(@swc/helpers@0.5.19) - '@parcel/plugin': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/utils': 2.16.4 - '@parcel/workers': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) + '@parcel/core': 2.15.4(@swc/helpers@0.5.17) + '@parcel/plugin': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/utils': 2.15.4 + '@parcel/workers': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) nullthrows: 1.1.1 transitivePeerDependencies: - napi-wasm - '@parcel/transformer-js@2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19))': + '@parcel/transformer-js@2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17))': dependencies: - '@parcel/core': 2.16.4(@swc/helpers@0.5.19) - '@parcel/diagnostic': 2.16.4 - '@parcel/plugin': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/rust': 2.16.4 + '@parcel/core': 2.15.4(@swc/helpers@0.5.17) + '@parcel/diagnostic': 2.15.4 + '@parcel/plugin': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/rust': 2.15.4 '@parcel/source-map': 2.1.1 - '@parcel/utils': 2.16.4 - '@parcel/workers': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@swc/helpers': 0.5.19 - browserslist: 4.28.1 + '@parcel/utils': 2.15.4 + '@parcel/workers': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@swc/helpers': 0.5.17 + browserslist: 4.25.1 nullthrows: 1.1.1 regenerator-runtime: 0.14.1 - semver: 7.7.4 + semver: 7.7.2 transitivePeerDependencies: - napi-wasm - '@parcel/transformer-json@2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19))': + '@parcel/transformer-json@2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17))': dependencies: - '@parcel/plugin': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) + '@parcel/plugin': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) json5: 2.2.3 transitivePeerDependencies: - '@parcel/core' - napi-wasm - '@parcel/transformer-node@2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19))': + '@parcel/transformer-node@2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17))': dependencies: - '@parcel/plugin': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) + '@parcel/plugin': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) transitivePeerDependencies: - '@parcel/core' - napi-wasm - '@parcel/transformer-postcss@2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19))': + '@parcel/transformer-postcss@2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17))': dependencies: - '@parcel/diagnostic': 2.16.4 - '@parcel/plugin': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/rust': 2.16.4 - '@parcel/utils': 2.16.4 + '@parcel/diagnostic': 2.15.4 + '@parcel/plugin': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/rust': 2.15.4 + '@parcel/utils': 2.15.4 clone: 2.1.2 nullthrows: 1.1.1 postcss-value-parser: 4.2.0 - semver: 7.7.4 + semver: 7.7.2 transitivePeerDependencies: - '@parcel/core' - napi-wasm - '@parcel/transformer-posthtml@2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19))': + '@parcel/transformer-posthtml@2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17))': dependencies: - '@parcel/plugin': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/utils': 2.16.4 + '@parcel/plugin': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/utils': 2.15.4 transitivePeerDependencies: - '@parcel/core' - napi-wasm - '@parcel/transformer-raw@2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19))': + '@parcel/transformer-raw@2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17))': dependencies: - '@parcel/plugin': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) + '@parcel/plugin': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) transitivePeerDependencies: - '@parcel/core' - napi-wasm - '@parcel/transformer-react-refresh-wrap@2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19))': + '@parcel/transformer-react-refresh-wrap@2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17))': dependencies: - '@parcel/error-overlay': 2.16.4 - '@parcel/plugin': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/utils': 2.16.4 + '@parcel/error-overlay': 2.15.4 + '@parcel/plugin': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/utils': 2.15.4 react-refresh: 0.16.0 transitivePeerDependencies: - '@parcel/core' - napi-wasm - '@parcel/transformer-sass@2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19))': + '@parcel/transformer-sass@2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17))': dependencies: - '@parcel/plugin': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) + '@parcel/plugin': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) '@parcel/source-map': 2.1.1 - sass: 1.97.3 + sass: 1.89.2 transitivePeerDependencies: - '@parcel/core' - napi-wasm - '@parcel/transformer-svg@2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19))': + '@parcel/transformer-svg@2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17))': dependencies: - '@parcel/diagnostic': 2.16.4 - '@parcel/plugin': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/rust': 2.16.4 + '@parcel/diagnostic': 2.15.4 + '@parcel/plugin': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/rust': 2.15.4 transitivePeerDependencies: - '@parcel/core' - napi-wasm - '@parcel/types-internal@2.16.4': + '@parcel/types-internal@2.15.4': dependencies: - '@parcel/diagnostic': 2.16.4 - '@parcel/feature-flags': 2.16.4 + '@parcel/diagnostic': 2.15.4 + '@parcel/feature-flags': 2.15.4 '@parcel/source-map': 2.1.1 utility-types: 3.11.0 - '@parcel/types@2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19))': + '@parcel/types@2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17))': dependencies: - '@parcel/types-internal': 2.16.4 - '@parcel/workers': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) + '@parcel/types-internal': 2.15.4 + '@parcel/workers': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) transitivePeerDependencies: - '@parcel/core' - napi-wasm - '@parcel/utils@2.16.4': + '@parcel/utils@2.15.4': dependencies: - '@parcel/codeframe': 2.16.4 - '@parcel/diagnostic': 2.16.4 - '@parcel/logger': 2.16.4 - '@parcel/markdown-ansi': 2.16.4 - '@parcel/rust': 2.16.4 + '@parcel/codeframe': 2.15.4 + '@parcel/diagnostic': 2.15.4 + '@parcel/logger': 2.15.4 + '@parcel/markdown-ansi': 2.15.4 + '@parcel/rust': 2.15.4 '@parcel/source-map': 2.1.1 chalk: 4.1.2 nullthrows: 1.1.1 transitivePeerDependencies: - napi-wasm - '@parcel/watcher-android-arm64@2.5.6': + '@parcel/watcher-android-arm64@2.5.1': optional: true - '@parcel/watcher-darwin-arm64@2.5.6': + '@parcel/watcher-darwin-arm64@2.5.1': optional: true - '@parcel/watcher-darwin-x64@2.5.6': + '@parcel/watcher-darwin-x64@2.5.1': optional: true - '@parcel/watcher-freebsd-x64@2.5.6': + '@parcel/watcher-freebsd-x64@2.5.1': optional: true - '@parcel/watcher-linux-arm-glibc@2.5.6': + '@parcel/watcher-linux-arm-glibc@2.5.1': optional: true - '@parcel/watcher-linux-arm-musl@2.5.6': + '@parcel/watcher-linux-arm-musl@2.5.1': optional: true - '@parcel/watcher-linux-arm64-glibc@2.5.6': + '@parcel/watcher-linux-arm64-glibc@2.5.1': optional: true - '@parcel/watcher-linux-arm64-musl@2.5.6': + '@parcel/watcher-linux-arm64-musl@2.5.1': optional: true - '@parcel/watcher-linux-x64-glibc@2.5.6': + '@parcel/watcher-linux-x64-glibc@2.5.1': optional: true - '@parcel/watcher-linux-x64-musl@2.5.6': + '@parcel/watcher-linux-x64-musl@2.5.1': optional: true - '@parcel/watcher-win32-arm64@2.5.6': + '@parcel/watcher-win32-arm64@2.5.1': optional: true - '@parcel/watcher-win32-ia32@2.5.6': + '@parcel/watcher-win32-ia32@2.5.1': optional: true - '@parcel/watcher-win32-x64@2.5.6': + '@parcel/watcher-win32-x64@2.5.1': optional: true - '@parcel/watcher@2.5.6': + '@parcel/watcher@2.5.1': dependencies: - detect-libc: 2.1.2 + detect-libc: 1.0.3 is-glob: 4.0.3 + micromatch: 4.0.8 node-addon-api: 7.1.1 - picomatch: 4.0.3 optionalDependencies: - '@parcel/watcher-android-arm64': 2.5.6 - '@parcel/watcher-darwin-arm64': 2.5.6 - '@parcel/watcher-darwin-x64': 2.5.6 - '@parcel/watcher-freebsd-x64': 2.5.6 - '@parcel/watcher-linux-arm-glibc': 2.5.6 - '@parcel/watcher-linux-arm-musl': 2.5.6 - '@parcel/watcher-linux-arm64-glibc': 2.5.6 - '@parcel/watcher-linux-arm64-musl': 2.5.6 - '@parcel/watcher-linux-x64-glibc': 2.5.6 - '@parcel/watcher-linux-x64-musl': 2.5.6 - '@parcel/watcher-win32-arm64': 2.5.6 - '@parcel/watcher-win32-ia32': 2.5.6 - '@parcel/watcher-win32-x64': 2.5.6 + '@parcel/watcher-android-arm64': 2.5.1 + '@parcel/watcher-darwin-arm64': 2.5.1 + '@parcel/watcher-darwin-x64': 2.5.1 + '@parcel/watcher-freebsd-x64': 2.5.1 + '@parcel/watcher-linux-arm-glibc': 2.5.1 + '@parcel/watcher-linux-arm-musl': 2.5.1 + '@parcel/watcher-linux-arm64-glibc': 2.5.1 + '@parcel/watcher-linux-arm64-musl': 2.5.1 + '@parcel/watcher-linux-x64-glibc': 2.5.1 + '@parcel/watcher-linux-x64-musl': 2.5.1 + '@parcel/watcher-win32-arm64': 2.5.1 + '@parcel/watcher-win32-ia32': 2.5.1 + '@parcel/watcher-win32-x64': 2.5.1 - '@parcel/workers@2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19))': + '@parcel/workers@2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17))': dependencies: - '@parcel/core': 2.16.4(@swc/helpers@0.5.19) - '@parcel/diagnostic': 2.16.4 - '@parcel/logger': 2.16.4 - '@parcel/profiler': 2.16.4 - '@parcel/types-internal': 2.16.4 - '@parcel/utils': 2.16.4 + '@parcel/core': 2.15.4(@swc/helpers@0.5.17) + '@parcel/diagnostic': 2.15.4 + '@parcel/logger': 2.15.4 + '@parcel/profiler': 2.15.4 + '@parcel/types-internal': 2.15.4 + '@parcel/utils': 2.15.4 nullthrows: 1.1.1 transitivePeerDependencies: - napi-wasm '@popperjs/core@2.11.8': {} - '@swc/core-darwin-arm64@1.15.18': + '@swc/core-darwin-arm64@1.12.11': optional: true - '@swc/core-darwin-x64@1.15.18': + '@swc/core-darwin-x64@1.12.11': optional: true - '@swc/core-linux-arm-gnueabihf@1.15.18': + '@swc/core-linux-arm-gnueabihf@1.12.11': optional: true - '@swc/core-linux-arm64-gnu@1.15.18': + '@swc/core-linux-arm64-gnu@1.12.11': optional: true - '@swc/core-linux-arm64-musl@1.15.18': + '@swc/core-linux-arm64-musl@1.12.11': optional: true - '@swc/core-linux-x64-gnu@1.15.18': + '@swc/core-linux-x64-gnu@1.12.11': optional: true - '@swc/core-linux-x64-musl@1.15.18': + '@swc/core-linux-x64-musl@1.12.11': optional: true - '@swc/core-win32-arm64-msvc@1.15.18': + '@swc/core-win32-arm64-msvc@1.12.11': optional: true - '@swc/core-win32-ia32-msvc@1.15.18': + '@swc/core-win32-ia32-msvc@1.12.11': optional: true - '@swc/core-win32-x64-msvc@1.15.18': + '@swc/core-win32-x64-msvc@1.12.11': optional: true - '@swc/core@1.15.18(@swc/helpers@0.5.19)': + '@swc/core@1.12.11(@swc/helpers@0.5.17)': dependencies: '@swc/counter': 0.1.3 - '@swc/types': 0.1.25 + '@swc/types': 0.1.23 optionalDependencies: - '@swc/core-darwin-arm64': 1.15.18 - '@swc/core-darwin-x64': 1.15.18 - '@swc/core-linux-arm-gnueabihf': 1.15.18 - '@swc/core-linux-arm64-gnu': 1.15.18 - '@swc/core-linux-arm64-musl': 1.15.18 - '@swc/core-linux-x64-gnu': 1.15.18 - '@swc/core-linux-x64-musl': 1.15.18 - '@swc/core-win32-arm64-msvc': 1.15.18 - '@swc/core-win32-ia32-msvc': 1.15.18 - '@swc/core-win32-x64-msvc': 1.15.18 - '@swc/helpers': 0.5.19 + '@swc/core-darwin-arm64': 1.12.11 + '@swc/core-darwin-x64': 1.12.11 + '@swc/core-linux-arm-gnueabihf': 1.12.11 + '@swc/core-linux-arm64-gnu': 1.12.11 + '@swc/core-linux-arm64-musl': 1.12.11 + '@swc/core-linux-x64-gnu': 1.12.11 + '@swc/core-linux-x64-musl': 1.12.11 + '@swc/core-win32-arm64-msvc': 1.12.11 + '@swc/core-win32-ia32-msvc': 1.12.11 + '@swc/core-win32-x64-msvc': 1.12.11 + '@swc/helpers': 0.5.17 '@swc/counter@0.1.3': {} - '@swc/helpers@0.5.19': + '@swc/helpers@0.5.17': dependencies: tslib: 2.8.1 - '@swc/types@0.1.25': + '@swc/types@0.1.23': dependencies: '@swc/counter': 0.1.3 @@ -1647,23 +1638,24 @@ snapshots: dependencies: safe-buffer: 5.2.1 - baseline-browser-mapping@2.10.0: {} - bootstrap-icons@1.13.1: {} - bootstrap@5.3.8(@popperjs/core@2.11.8): + bootstrap@5.3.7(@popperjs/core@2.11.8): dependencies: '@popperjs/core': 2.11.8 - browserslist@4.28.1: + braces@3.0.3: dependencies: - baseline-browser-mapping: 2.10.0 - caniuse-lite: 1.0.30001777 - electron-to-chromium: 1.5.307 - node-releases: 2.0.36 - update-browserslist-db: 1.2.3(browserslist@4.28.1) + fill-range: 7.1.1 - caniuse-lite@1.0.30001777: {} + browserslist@4.25.1: + dependencies: + caniuse-lite: 1.0.30001727 + electron-to-chromium: 1.5.182 + node-releases: 2.0.19 + update-browserslist-db: 1.1.3(browserslist@4.25.1) + + caniuse-lite@1.0.30001727: {} chalk@4.1.2: dependencies: @@ -1688,7 +1680,7 @@ snapshots: detect-libc@1.0.3: {} - detect-libc@2.1.2: {} + detect-libc@2.0.4: {} dotenv-expand@11.0.7: dependencies: @@ -1696,10 +1688,14 @@ snapshots: dotenv@16.6.1: {} - electron-to-chromium@1.5.307: {} + electron-to-chromium@1.5.182: {} escalade@3.2.0: {} + fill-range@7.1.1: + dependencies: + to-regex-range: 5.0.1 + get-port@4.2.0: {} globals@13.24.0: @@ -1708,7 +1704,7 @@ snapshots: has-flag@4.0.0: {} - immutable@5.1.5: {} + immutable@5.1.3: {} is-extglob@2.1.1: {} @@ -1716,65 +1712,63 @@ snapshots: dependencies: is-extglob: 2.1.1 + is-number@7.0.0: {} + jquery@3.7.1: {} json5@2.2.3: {} - lightningcss-android-arm64@1.31.1: + lightningcss-darwin-arm64@1.30.1: optional: true - lightningcss-darwin-arm64@1.31.1: + lightningcss-darwin-x64@1.30.1: optional: true - lightningcss-darwin-x64@1.31.1: + lightningcss-freebsd-x64@1.30.1: optional: true - lightningcss-freebsd-x64@1.31.1: + lightningcss-linux-arm-gnueabihf@1.30.1: optional: true - lightningcss-linux-arm-gnueabihf@1.31.1: + lightningcss-linux-arm64-gnu@1.30.1: optional: true - lightningcss-linux-arm64-gnu@1.31.1: + lightningcss-linux-arm64-musl@1.30.1: optional: true - lightningcss-linux-arm64-musl@1.31.1: + lightningcss-linux-x64-gnu@1.30.1: optional: true - lightningcss-linux-x64-gnu@1.31.1: + lightningcss-linux-x64-musl@1.30.1: optional: true - lightningcss-linux-x64-musl@1.31.1: + lightningcss-win32-arm64-msvc@1.30.1: optional: true - lightningcss-win32-arm64-msvc@1.31.1: + lightningcss-win32-x64-msvc@1.30.1: optional: true - lightningcss-win32-x64-msvc@1.31.1: - optional: true - - lightningcss@1.31.1: + lightningcss@1.30.1: dependencies: - detect-libc: 2.1.2 + detect-libc: 2.0.4 optionalDependencies: - lightningcss-android-arm64: 1.31.1 - lightningcss-darwin-arm64: 1.31.1 - lightningcss-darwin-x64: 1.31.1 - lightningcss-freebsd-x64: 1.31.1 - lightningcss-linux-arm-gnueabihf: 1.31.1 - lightningcss-linux-arm64-gnu: 1.31.1 - lightningcss-linux-arm64-musl: 1.31.1 - lightningcss-linux-x64-gnu: 1.31.1 - lightningcss-linux-x64-musl: 1.31.1 - lightningcss-win32-arm64-msvc: 1.31.1 - lightningcss-win32-x64-msvc: 1.31.1 + lightningcss-darwin-arm64: 1.30.1 + lightningcss-darwin-x64: 1.30.1 + lightningcss-freebsd-x64: 1.30.1 + lightningcss-linux-arm-gnueabihf: 1.30.1 + lightningcss-linux-arm64-gnu: 1.30.1 + lightningcss-linux-arm64-musl: 1.30.1 + lightningcss-linux-x64-gnu: 1.30.1 + lightningcss-linux-x64-musl: 1.30.1 + lightningcss-win32-arm64-msvc: 1.30.1 + lightningcss-win32-x64-msvc: 1.30.1 lmdb@2.8.5: dependencies: - msgpackr: 1.11.8 + msgpackr: 1.11.4 node-addon-api: 6.1.0 node-gyp-build-optional-packages: 5.1.1 - ordered-binary: 1.6.1 + ordered-binary: 1.6.0 weak-lru-cache: 1.2.2 optionalDependencies: '@lmdb/lmdb-darwin-arm64': 2.8.5 @@ -1784,6 +1778,11 @@ snapshots: '@lmdb/lmdb-linux-x64': 2.8.5 '@lmdb/lmdb-win32-x64': 2.8.5 + micromatch@4.0.8: + dependencies: + braces: 3.0.3 + picomatch: 2.3.1 + msgpackr-extract@3.0.3: dependencies: node-gyp-build-optional-packages: 5.2.2 @@ -1796,7 +1795,7 @@ snapshots: '@msgpackr-extract/msgpackr-extract-win32-x64': 3.0.3 optional: true - msgpackr@1.11.8: + msgpackr@1.11.4: optionalDependencies: msgpackr-extract: 3.0.3 @@ -1806,33 +1805,33 @@ snapshots: node-gyp-build-optional-packages@5.1.1: dependencies: - detect-libc: 2.1.2 + detect-libc: 2.0.4 node-gyp-build-optional-packages@5.2.2: dependencies: - detect-libc: 2.1.2 + detect-libc: 2.0.4 optional: true - node-releases@2.0.36: {} + node-releases@2.0.19: {} nullthrows@1.1.1: {} - ordered-binary@1.6.1: {} + ordered-binary@1.6.0: {} - parcel@2.16.4(@swc/helpers@0.5.19): + parcel@2.15.4(@swc/helpers@0.5.17): dependencies: - '@parcel/config-default': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19))(@swc/helpers@0.5.19) - '@parcel/core': 2.16.4(@swc/helpers@0.5.19) - '@parcel/diagnostic': 2.16.4 - '@parcel/events': 2.16.4 - '@parcel/feature-flags': 2.16.4 - '@parcel/fs': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/logger': 2.16.4 - '@parcel/package-manager': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19))(@swc/helpers@0.5.19) - '@parcel/reporter-cli': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/reporter-dev-server': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/reporter-tracer': 2.16.4(@parcel/core@2.16.4(@swc/helpers@0.5.19)) - '@parcel/utils': 2.16.4 + '@parcel/config-default': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17))(@swc/helpers@0.5.17) + '@parcel/core': 2.15.4(@swc/helpers@0.5.17) + '@parcel/diagnostic': 2.15.4 + '@parcel/events': 2.15.4 + '@parcel/feature-flags': 2.15.4 + '@parcel/fs': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/logger': 2.15.4 + '@parcel/package-manager': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17))(@swc/helpers@0.5.17) + '@parcel/reporter-cli': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/reporter-dev-server': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/reporter-tracer': 2.15.4(@parcel/core@2.15.4(@swc/helpers@0.5.17)) + '@parcel/utils': 2.15.4 chalk: 4.1.2 commander: 12.1.0 get-port: 4.2.0 @@ -1842,15 +1841,15 @@ snapshots: picocolors@1.1.1: {} - picomatch@4.0.3: {} + picomatch@2.3.1: {} postcss-value-parser@4.2.0: {} - prettier-plugin-jinja-template@2.1.0(prettier@3.8.1): + prettier-plugin-jinja-template@2.1.0(prettier@3.6.2): dependencies: - prettier: 3.8.1 + prettier: 3.6.2 - prettier@3.8.1: {} + prettier@3.6.2: {} react-refresh@0.16.0: {} @@ -1860,15 +1859,15 @@ snapshots: safe-buffer@5.2.1: {} - sass@1.97.3: + sass@1.89.2: dependencies: chokidar: 4.0.3 - immutable: 5.1.5 + immutable: 5.1.3 source-map-js: 1.2.1 optionalDependencies: - '@parcel/watcher': 2.5.6 + '@parcel/watcher': 2.5.1 - semver@7.7.4: {} + semver@7.7.2: {} source-map-js@1.2.1: {} @@ -1878,13 +1877,17 @@ snapshots: term-size@2.2.1: {} + to-regex-range@5.0.1: + dependencies: + is-number: 7.0.0 + tslib@2.8.1: {} type-fest@0.20.2: {} - update-browserslist-db@1.2.3(browserslist@4.28.1): + update-browserslist-db@1.1.3(browserslist@4.25.1): dependencies: - browserslist: 4.28.1 + browserslist: 4.25.1 escalade: 3.2.0 picocolors: 1.1.1 diff --git a/static/licenses.md b/static/licenses.md index d56096b..68728f8 100644 --- a/static/licenses.md +++ b/static/licenses.md @@ -685,45 +685,12 @@ Public License instead of this License. But first, please read ``` -## github.com/alexedwards/argon2id - -* Name: github.com/alexedwards/argon2id -* Version: v1.0.0 - -* License: [MIT](https://github.com/alexedwards/argon2id/blob/v1.0.0/LICENSE) - - -``` -MIT License - -Copyright (c) 2018 Alex Edwards - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. - -``` - ## github.com/andybalholm/brotli * Name: github.com/andybalholm/brotli -* Version: v1.2.1 +* Version: v1.2.0 -* License: [MIT](https://github.com/andybalholm/brotli/blob/v1.2.1/LICENSE) +* License: [MIT](https://github.com/andybalholm/brotli/blob/v1.2.0/LICENSE) ``` @@ -749,45 +716,6 @@ THE SOFTWARE. ``` -## github.com/andybalholm/brotli/flate - -* Name: github.com/andybalholm/brotli/flate -* Version: v1.2.1 - -* License: [BSD-3-Clause](https://github.com/andybalholm/brotli/blob/v1.2.1/flate/LICENSE) - - -``` -Copyright (c) 2009 The Go Authors. All rights reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are -met: - - * Redistributions of source code must retain the above copyright -notice, this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above -copyright notice, this list of conditions and the following disclaimer -in the documentation and/or other materials provided with the -distribution. - * Neither the name of Google Inc. nor the names of its -contributors may be used to endorse or promote products derived from -this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -``` - ## github.com/aymanbagabas/go-osc52/v2 * Name: github.com/aymanbagabas/go-osc52/v2 @@ -824,9 +752,9 @@ SOFTWARE. ## github.com/boombuler/barcode * Name: github.com/boombuler/barcode -* Version: v1.1.0 +* Version: v1.0.2 -* License: [MIT](https://github.com/boombuler/barcode/blob/v1.1.0/LICENSE) +* License: [MIT](https://github.com/boombuler/barcode/blob/v1.0.2/LICENSE) ``` @@ -857,9 +785,9 @@ SOFTWARE. ## github.com/brianvoe/gofakeit/v7 * Name: github.com/brianvoe/gofakeit/v7 -* Version: v7.14.1 +* Version: v7.3.0 -* License: [MIT](https://github.com/brianvoe/gofakeit/blob/v7.14.1/LICENSE.txt) +* License: [MIT](https://github.com/brianvoe/gofakeit/blob/v7.3.0/LICENSE.txt) ``` @@ -956,9 +884,9 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ## github.com/charmbracelet/colorprofile * Name: github.com/charmbracelet/colorprofile -* Version: v0.4.3 +* Version: v0.3.1 -* License: [MIT](https://github.com/charmbracelet/colorprofile/blob/v0.4.3/LICENSE) +* License: [MIT](https://github.com/charmbracelet/colorprofile/blob/v0.3.1/LICENSE) ``` @@ -1022,9 +950,9 @@ SOFTWARE. ## github.com/charmbracelet/log * Name: github.com/charmbracelet/log -* Version: v1.0.0 +* Version: v0.4.2 -* License: [MIT](https://github.com/charmbracelet/log/blob/v1.0.0/LICENSE) +* License: [MIT](https://github.com/charmbracelet/log/blob/v0.4.2/LICENSE) ``` @@ -1055,9 +983,9 @@ SOFTWARE. ## github.com/charmbracelet/x/ansi * Name: github.com/charmbracelet/x/ansi -* Version: v0.11.7 +* Version: v0.9.3 -* License: [MIT](https://github.com/charmbracelet/x/blob/ansi/v0.11.7/ansi/LICENSE) +* License: [MIT](https://github.com/charmbracelet/x/blob/ansi/v0.9.3/ansi/LICENSE) ``` @@ -1088,9 +1016,9 @@ SOFTWARE. ## github.com/charmbracelet/x/cellbuf * Name: github.com/charmbracelet/x/cellbuf -* Version: v0.0.15 +* Version: v0.0.13 -* License: [MIT](https://github.com/charmbracelet/x/blob/cellbuf/v0.0.15/cellbuf/LICENSE) +* License: [MIT](https://github.com/charmbracelet/x/blob/cellbuf/v0.0.13/cellbuf/LICENSE) ``` @@ -1121,9 +1049,9 @@ SOFTWARE. ## github.com/charmbracelet/x/term * Name: github.com/charmbracelet/x/term -* Version: v0.2.2 +* Version: v0.2.1 -* License: [MIT](https://github.com/charmbracelet/x/blob/term/v0.2.2/term/LICENSE) +* License: [MIT](https://github.com/charmbracelet/x/blob/term/v0.2.1/term/LICENSE) ``` @@ -1151,72 +1079,6 @@ SOFTWARE. ``` -## github.com/clipperhouse/displaywidth - -* Name: github.com/clipperhouse/displaywidth -* Version: v0.11.0 - -* License: [MIT](https://github.com/clipperhouse/displaywidth/blob/v0.11.0/LICENSE) - - -``` -MIT License - -Copyright (c) 2025 Matt Sherman - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. - -``` - -## github.com/clipperhouse/uax29/v2/graphemes - -* Name: github.com/clipperhouse/uax29/v2/graphemes -* Version: v2.7.0 - -* License: [MIT](https://github.com/clipperhouse/uax29/blob/v2.7.0/LICENSE) - - -``` -MIT License - -Copyright (c) 2020 Matt Sherman - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. - -``` - ## github.com/dgraph-io/badger/v3 * Name: github.com/dgraph-io/badger/v3 @@ -1737,9 +1599,9 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ## github.com/gabriel-vasile/mimetype * Name: github.com/gabriel-vasile/mimetype -* Version: v1.4.13 +* Version: v1.4.9 -* License: [MIT](https://github.com/gabriel-vasile/mimetype/blob/v1.4.13/LICENSE) +* License: [MIT](https://github.com/gabriel-vasile/mimetype/blob/v1.4.9/LICENSE) ``` @@ -1770,9 +1632,9 @@ SOFTWARE. ## github.com/go-logfmt/logfmt * Name: github.com/go-logfmt/logfmt -* Version: v0.6.1 +* Version: v0.6.0 -* License: [MIT](https://github.com/go-logfmt/logfmt/blob/v0.6.1/LICENSE) +* License: [MIT](https://github.com/go-logfmt/logfmt/blob/v0.6.0/LICENSE) ``` @@ -1869,9 +1731,9 @@ SOFTWARE. ## github.com/go-playground/validator/v10 * Name: github.com/go-playground/validator/v10 -* Version: v10.30.2 +* Version: v10.27.0 -* License: [MIT](https://github.com/go-playground/validator/blob/v10.30.2/LICENSE) +* License: [MIT](https://github.com/go-playground/validator/blob/v10.27.0/LICENSE) ``` @@ -1903,9 +1765,9 @@ SOFTWARE. ## github.com/gofiber/fiber/v2 * Name: github.com/gofiber/fiber/v2 -* Version: v2.52.13 +* Version: v2.52.8 -* License: [MIT](https://github.com/gofiber/fiber/blob/v2.52.13/LICENSE) +* License: [MIT](https://github.com/gofiber/fiber/blob/v2.52.8/LICENSE) ``` @@ -1936,9 +1798,9 @@ SOFTWARE. ## github.com/gofiber/fiber/v2/internal/schema * Name: github.com/gofiber/fiber/v2/internal/schema -* Version: v2.52.13 +* Version: v2.52.8 -* License: [BSD-3-Clause](https://github.com/gofiber/fiber/blob/v2.52.13/internal/schema/LICENSE) +* License: [BSD-3-Clause](https://github.com/gofiber/fiber/blob/v2.52.8/internal/schema/LICENSE) ``` @@ -2008,9 +1870,9 @@ SOFTWARE. ## github.com/gofiber/storage/badger/v2 * Name: github.com/gofiber/storage/badger/v2 -* Version: v2.1.5 +* Version: v2.0.1 -* License: [MIT](https://github.com/gofiber/storage/blob/badger/v2.1.5/badger/LICENSE) +* License: [MIT](https://github.com/gofiber/storage/blob/badger/v2.0.1/badger/LICENSE) ``` @@ -2107,9 +1969,9 @@ SOFTWARE. ## github.com/gofiber/utils * Name: github.com/gofiber/utils -* Version: v1.2.0 +* Version: v1.1.0 -* License: [MIT](https://github.com/gofiber/utils/blob/v1.2.0/LICENSE) +* License: [MIT](https://github.com/gofiber/utils/blob/v1.1.0/LICENSE) ``` @@ -2140,9 +2002,9 @@ SOFTWARE. ## github.com/gofiber/utils/v2 * Name: github.com/gofiber/utils/v2 -* Version: v2.0.4 +* Version: v2.0.0-beta.10 -* License: [MIT](https://github.com/gofiber/utils/blob/v2.0.4/LICENSE) +* License: [MIT](https://github.com/gofiber/utils/blob/v2.0.0-beta.10/LICENSE) ``` @@ -2568,9 +2430,9 @@ SOFTWARE. ## github.com/google/flatbuffers/go * Name: github.com/google/flatbuffers/go -* Version: v25.12.19 +* Version: v25.2.10 -* License: [Apache-2.0](https://github.com/google/flatbuffers/blob/v25.12.19/LICENSE) +* License: [Apache-2.0](https://github.com/google/flatbuffers/blob/v25.2.10/LICENSE) ``` @@ -2889,9 +2751,9 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ## github.com/jackc/pgx/v5 * Name: github.com/jackc/pgx/v5 -* Version: v5.9.2 +* Version: v5.7.5 -* License: [MIT](https://github.com/jackc/pgx/blob/v5.9.2/LICENSE) +* License: [MIT](https://github.com/jackc/pgx/blob/v5.7.5/LICENSE) ``` @@ -3023,9 +2885,9 @@ THE SOFTWARE. ## github.com/klauspost/compress * Name: github.com/klauspost/compress -* Version: v1.18.5 +* Version: v1.18.0 -* License: [Apache-2.0](https://github.com/klauspost/compress/blob/v1.18.5/LICENSE) +* License: [Apache-2.0](https://github.com/klauspost/compress/blob/v1.18.0/LICENSE) ``` @@ -3339,9 +3201,9 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI ## github.com/klauspost/compress/internal/snapref * Name: github.com/klauspost/compress/internal/snapref -* Version: v1.18.5 +* Version: v1.18.0 -* License: [BSD-3-Clause](https://github.com/klauspost/compress/blob/v1.18.5/internal/snapref/LICENSE) +* License: [BSD-3-Clause](https://github.com/klauspost/compress/blob/v1.18.0/internal/snapref/LICENSE) ``` @@ -3378,9 +3240,9 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ## github.com/klauspost/compress/zstd/internal/xxhash * Name: github.com/klauspost/compress/zstd/internal/xxhash -* Version: v1.18.5 +* Version: v1.18.0 -* License: [MIT](https://github.com/klauspost/compress/blob/v1.18.5/zstd/internal/xxhash/LICENSE.txt) +* License: [MIT](https://github.com/klauspost/compress/blob/v1.18.0/zstd/internal/xxhash/LICENSE.txt) ``` @@ -3445,9 +3307,9 @@ SOFTWARE. ## github.com/lucasb-eyer/go-colorful * Name: github.com/lucasb-eyer/go-colorful -* Version: v1.4.0 +* Version: v1.2.0 -* License: [MIT](https://github.com/lucasb-eyer/go-colorful/blob/v1.4.0/LICENSE) +* License: [MIT](https://github.com/lucasb-eyer/go-colorful/blob/v1.2.0/LICENSE) ``` @@ -3497,9 +3359,9 @@ SOFTWARE. ## github.com/mattn/go-isatty * Name: github.com/mattn/go-isatty -* Version: v0.0.22 +* Version: v0.0.20 -* License: [MIT](https://github.com/mattn/go-isatty/blob/v0.0.22/LICENSE) +* License: [MIT](https://github.com/mattn/go-isatty/blob/v0.0.20/LICENSE) ``` @@ -3518,9 +3380,9 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI ## github.com/mattn/go-runewidth * Name: github.com/mattn/go-runewidth -* Version: v0.0.23 +* Version: v0.0.16 -* License: [MIT](https://github.com/mattn/go-runewidth/blob/v0.0.23/LICENSE) +* License: [MIT](https://github.com/mattn/go-runewidth/blob/v0.0.16/LICENSE) ``` @@ -3863,38 +3725,6 @@ SOFTWARE. ``` -## github.com/sethvargo/go-password/password - -* Name: github.com/sethvargo/go-password/password -* Version: v0.3.1 - -* License: [MIT](https://github.com/sethvargo/go-password/blob/v0.3.1/LICENSE) - - -``` -Copyright 2017 Seth Vargo - -Permission is hereby granted, free of charge, to any person obtaining -a copy of this software and associated documentation files (the -"Software"), to deal in the Software without restriction, including -without limitation the rights to use, copy, modify, merge, publish, -distribute, sublicense, and/or sell copies of the Software, and to -permit persons to whom the Software is furnished to do so, subject to -the following conditions: - -The above copyright notice and this permission notice shall be -included in all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -``` - ## github.com/valyala/bytebufferpool * Name: github.com/valyala/bytebufferpool @@ -3932,9 +3762,9 @@ SOFTWARE. ## github.com/valyala/fasthttp * Name: github.com/valyala/fasthttp -* Version: v1.70.0 +* Version: v1.63.0 -* License: [MIT](https://github.com/valyala/fasthttp/blob/v1.70.0/LICENSE) +* License: [MIT](https://github.com/valyala/fasthttp/blob/v1.63.0/LICENSE) ``` @@ -3953,9 +3783,9 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI ## github.com/valyala/fasthttp/reuseport * Name: github.com/valyala/fasthttp/reuseport -* Version: v1.70.0 +* Version: v1.63.0 -* License: [MIT](https://github.com/valyala/fasthttp/blob/v1.70.0/reuseport/LICENSE) +* License: [MIT](https://github.com/valyala/fasthttp/blob/v1.63.0/reuseport/LICENSE) ``` @@ -3982,77 +3812,6 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ``` -## github.com/wneessen/go-mail - -* Name: github.com/wneessen/go-mail -* Version: v0.7.2 - -* License: [MIT](https://github.com/wneessen/go-mail/blob/v0.7.2/LICENSE) - - -``` -MIT License - -Copyright (c) 2022-2025 The go-mail Authors - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. - -``` - -## github.com/wneessen/go-mail/smtp - -* Name: github.com/wneessen/go-mail/smtp -* Version: v0.7.2 - -* License: [BSD-3-Clause](https://github.com/wneessen/go-mail/blob/v0.7.2/smtp/LICENSE) - - -``` -Copyright (c) 2009 The Go Authors. All rights reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are -met: - - * Redistributions of source code must retain the above copyright -notice, this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above -copyright notice, this list of conditions and the following disclaimer -in the documentation and/or other materials provided with the -distribution. - * Neither the name of Google Inc. nor the names of its -contributors may be used to endorse or promote products derived from -this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -``` - ## github.com/xo/terminfo * Name: github.com/xo/terminfo @@ -4089,9 +3848,9 @@ SOFTWARE. ## github.com/yuin/goldmark * Name: github.com/yuin/goldmark -* Version: v1.8.2 +* Version: v1.7.12 -* License: [MIT](https://github.com/yuin/goldmark/blob/v1.8.2/LICENSE) +* License: [MIT](https://github.com/yuin/goldmark/blob/v1.7.12/LICENSE) ``` @@ -4332,226 +4091,12 @@ SOFTWARE. limitations under the License. ``` -## go.yaml.in/yaml/v4 - -* Name: go.yaml.in/yaml/v4 -* Version: v4.0.0-rc.4 - -* License: [Apache-2.0](https://github.com/yaml/go-yaml/blob/v4.0.0-rc.4/LICENSE) - - -``` - - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - - TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - - 1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - - 2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - - 3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - - 4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - - 5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - - 6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - - 7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - - 8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - - 9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - - END OF TERMS AND CONDITIONS - - APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - - Copyright 2025 - The go-yaml Project Contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - -``` - ## golang.org/x/crypto * Name: golang.org/x/crypto -* Version: v0.50.0 +* Version: v0.40.0 -* License: [BSD-3-Clause](https://cs.opensource.google/go/x/crypto/+/v0.50.0:LICENSE) +* License: [BSD-3-Clause](https://cs.opensource.google/go/x/crypto/+/v0.40.0:LICENSE) ``` @@ -4588,9 +4133,9 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ## golang.org/x/net * Name: golang.org/x/net -* Version: v0.53.0 +* Version: v0.42.0 -* License: [BSD-3-Clause](https://cs.opensource.google/go/x/net/+/v0.53.0:LICENSE) +* License: [BSD-3-Clause](https://cs.opensource.google/go/x/net/+/v0.42.0:LICENSE) ``` @@ -4627,9 +4172,9 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ## golang.org/x/sync/semaphore * Name: golang.org/x/sync/semaphore -* Version: v0.20.0 +* Version: v0.16.0 -* License: [BSD-3-Clause](https://cs.opensource.google/go/x/sync/+/v0.20.0:LICENSE) +* License: [BSD-3-Clause](https://cs.opensource.google/go/x/sync/+/v0.16.0:LICENSE) ``` @@ -4666,9 +4211,9 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ## golang.org/x/sys * Name: golang.org/x/sys -* Version: v0.43.0 +* Version: v0.34.0 -* License: [BSD-3-Clause](https://cs.opensource.google/go/x/sys/+/v0.43.0:LICENSE) +* License: [BSD-3-Clause](https://cs.opensource.google/go/x/sys/+/v0.34.0:LICENSE) ``` @@ -4705,9 +4250,9 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ## golang.org/x/text * Name: golang.org/x/text -* Version: v0.36.0 +* Version: v0.27.0 -* License: [BSD-3-Clause](https://cs.opensource.google/go/x/text/+/v0.36.0:LICENSE) +* License: [BSD-3-Clause](https://cs.opensource.google/go/x/text/+/v0.27.0:LICENSE) ``` @@ -4744,9 +4289,9 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ## google.golang.org/protobuf * Name: google.golang.org/protobuf -* Version: v1.36.11 +* Version: v1.36.6 -* License: [BSD-3-Clause](https://github.com/protocolbuffers/protobuf-go/blob/v1.36.11/LICENSE) +* License: [BSD-3-Clause](https://github.com/protocolbuffers/protobuf-go/blob/v1.36.6/LICENSE) ``` @@ -4816,9 +4361,9 @@ THE SOFTWARE. ## gorm.io/gorm * Name: gorm.io/gorm -* Version: v1.31.1 +* Version: v1.30.0 -* License: [MIT](https://github.com/go-gorm/gorm/blob/v1.31.1/LICENSE) +* License: [MIT](https://github.com/go-gorm/gorm/blob/v1.30.0/LICENSE) ``` diff --git a/views/person_form.html b/views/person_form.html index 9ecf3af..b7c1081 100644 --- a/views/person_form.html +++ b/views/person_form.html @@ -18,13 +18,13 @@ {% if Person.ID %} {% if Person.IsMember %} {% else %} @@ -95,12 +95,6 @@ value="{{ Person.Email }}" autocomplete="off" /> - {% if PersonAccount.Enabled %} -
- Attention! Cette adresse email est liée à un compte SSO. En cas de - changement, la connexion devra se faire avec la nouvelle adresse. -
- {% endif %} @@ -351,29 +345,6 @@ {% endfor %} - {% if Person.IsMember or MembersPage %} -
- Compte POP Vaud -
- -
- - -
- {% endif %} -