<% if defined?(@order) && @order.present? %>
Merci pour votre achat ! Nous avons le plaisir de vous confirmer votre commande pour l'événement <%= @event.name %>.
@@ -14,11 +18,11 @@
Merci pour votre achat ! Nous avons le plaisir de vous confirmer votre billet pour l'événement <%= @event.name %>.
<% end %>
<% if defined?(@order) && @order.present? %>
Détails de votre commande
-
+
@@ -30,7 +34,7 @@
<%= @event.start_time.strftime("%d %B %Y Ă %H:%M") %>
-
+
Nombre de billets
@@ -50,6 +54,7 @@
<%= number_to_currency(ticket.price_cents / 100.0, unit: "€") %>
@@ -59,7 +64,7 @@
<% end %>
<% else %>
Détails de votre billet
-
+
Événement
@@ -70,7 +75,7 @@
<%= @ticket.ticket_type.name %>
-
+
Date & heure
@@ -81,9 +86,13 @@
<%= number_to_currency(@ticket.price_cents / 100.0, unit: "€") %>
+
+
<% end %>
-
+
<% if defined?(@order) && @order.present? %>
Vos billets sont attachés à cet email en format PDF.
@@ -93,10 +102,10 @@
Présentez-le à l'entrée de l'événement pour y accéder.
<% end %>
-
+
- Important :
+ Important :
<% if defined?(@order) && @order.present? %>
Ces billets sont valables pour une seule entrée chacun. Conservez-les précieusement.
<% else %>
@@ -105,9 +114,9 @@
-
+
Si vous avez des questions, contactez-nous Ă support@aperonight.com
© <%= Time.current.year %> ApĂ©roNight. Tous droits rĂ©servĂ©s.
-
\ No newline at end of file
+
diff --git a/app/views/ticket_mailer/purchase_confirmation.text.erb b/app/views/ticket_mailer/purchase_confirmation.text.erb
index 3d7b069..9c2fc74 100755
--- a/app/views/ticket_mailer/purchase_confirmation.text.erb
+++ b/app/views/ticket_mailer/purchase_confirmation.text.erb
@@ -1,4 +1,8 @@
-Bonjour <%= @user.email.split('@').first %>,
+<% if @user.first_name %>
+ Bonjour <%= @user.first_name %>,
+<% else %>
+ Bonjour <%= @user.email.split('@').first %>,
+<% end %>
<% if defined?(@order) && @order.present? %>
Merci pour votre achat ! Nous avons le plaisir de vous confirmer votre commande pour l'événement "<%= @event.name %>".
@@ -37,4 +41,4 @@ Important : Ce billet est valable pour une seule entrée. Conservez-le précieus
Si vous avez des questions, contactez-nous Ă support@aperonight.com
-© <%= Time.current.year %> ApéroNight. Tous droits réservés.
\ No newline at end of file
+© <%= Time.current.year %> <%= ENV.fetch("APP_NAME", "Aperonight") %>. Tous droits réservés.
diff --git a/config/initializers/disable_mailer_annotations.rb b/config/initializers/disable_mailer_annotations.rb
index 5737aa1..60242d3 100644
--- a/config/initializers/disable_mailer_annotations.rb
+++ b/config/initializers/disable_mailer_annotations.rb
@@ -9,15 +9,15 @@ if Rails.env.development?
# Temporarily disable view annotations during email rendering
original_setting = ActionView::Base.annotate_rendered_view_with_filenames
ActionView::Base.annotate_rendered_view_with_filenames = false
-
+
result = super(headers, &block)
-
+
# Restore original setting
ActionView::Base.annotate_rendered_view_with_filenames = original_setting
-
+
result
end
end)
end
end
-end
\ No newline at end of file
+end
diff --git a/config/initializers/event_reminder_scheduler.rb b/config/initializers/event_reminder_scheduler.rb
index 818465c..33dcc56 100644
--- a/config/initializers/event_reminder_scheduler.rb
+++ b/config/initializers/event_reminder_scheduler.rb
@@ -18,4 +18,4 @@ def next_run_time
target_time = Time.current.beginning_of_day + 9.hours
target_time += 1.day if Time.current > target_time
target_time
-end
\ No newline at end of file
+end
diff --git a/config/routes.rb b/config/routes.rb
index 28eb800..692f1ed 100755
--- a/config/routes.rb
+++ b/config/routes.rb
@@ -38,7 +38,7 @@ Rails.application.routes.draw do
get "events", to: "events#index", as: "events"
get "events/:slug.:id", to: "events#show", as: "event"
- # === Orders (scoped to events) ===
+ # === Orders ===
get "events/:slug.:id/orders/new", to: "orders#new", as: "event_order_new"
post "events/:slug.:id/orders", to: "orders#create", as: "event_order_create"
@@ -60,6 +60,7 @@ Rails.application.routes.draw do
get "payments/cancel", to: "tickets#payment_cancel", as: "payment_cancel"
# === Tickets ===
+ get "tickets/:ticket_id", to: "tickets#show", as: "ticket"
get "tickets/:ticket_id/download", to: "events#download_ticket", as: "download_ticket"
# === Promoter Routes ===
diff --git a/test/integration/email_notifications_integration_test.rb b/test/integration/email_notifications_integration_test.rb
index 3a04215..d40637b 100644
--- a/test/integration/email_notifications_integration_test.rb
+++ b/test/integration/email_notifications_integration_test.rb
@@ -56,7 +56,7 @@ class EmailNotificationsIntegrationTest < ActionDispatch::IntegrationTest
test "sends purchase confirmation email when order is marked as paid" do
# Mock PDF generation to avoid QR code issues
@ticket.stubs(:to_pdf).returns("fake_pdf_content")
-
+
assert_emails 1 do
@order.mark_as_paid!
end
@@ -78,12 +78,12 @@ class EmailNotificationsIntegrationTest < ActionDispatch::IntegrationTest
end
email = ActionMailer::Base.deliveries.last
- assert_equal [@user.email], email.to
+ assert_equal [ @user.email ], email.to
assert_equal "Rappel : #{@event.name} dans une semaine", email.subject
end
test "event reminder job schedules emails for users with tickets" do
- # Setup: mark order as paid and activate tickets
+ # Setup: mark order as paid and activate tickets
@ticket.stubs(:to_pdf).returns("fake_pdf_content")
@order.mark_as_paid!
@@ -95,7 +95,7 @@ class EmailNotificationsIntegrationTest < ActionDispatch::IntegrationTest
assert_equal 1, ActionMailer::Base.deliveries.size
email = ActionMailer::Base.deliveries.last
- assert_equal [@user.email], email.to
+ assert_equal [ @user.email ], email.to
assert_match "une semaine", email.subject
end
-end
\ No newline at end of file
+end
diff --git a/test/jobs/event_reminder_job_test.rb b/test/jobs/event_reminder_job_test.rb
index 0e19a0f..f89e5d3 100644
--- a/test/jobs/event_reminder_job_test.rb
+++ b/test/jobs/event_reminder_job_test.rb
@@ -23,9 +23,9 @@ class EventReminderJobTest < ActiveJob::TestCase
test "logs error when mailer fails" do
# Mock a failing mailer
TicketMailer.stubs(:event_reminder).raises(StandardError.new("Test error"))
-
+
Rails.logger.expects(:error).with(regexp_matches(/Failed to send event reminder/))
-
+
EventReminderJob.perform_now(@event.id, 7)
end
-end
\ No newline at end of file
+end
diff --git a/test/jobs/event_reminder_scheduler_job_test.rb b/test/jobs/event_reminder_scheduler_job_test.rb
index 507194d..6705ed1 100644
--- a/test/jobs/event_reminder_scheduler_job_test.rb
+++ b/test/jobs/event_reminder_scheduler_job_test.rb
@@ -9,7 +9,7 @@ class EventReminderSchedulerJobTest < ActiveJob::TestCase
# Set event to start in exactly 7 days
@event.update(start_time: 7.days.from_now.beginning_of_day + 10.hours)
- assert_enqueued_with(job: EventReminderJob, args: [@event.id, 7]) do
+ assert_enqueued_with(job: EventReminderJob, args: [ @event.id, 7 ]) do
EventReminderSchedulerJob.perform_now
end
end
@@ -18,7 +18,7 @@ class EventReminderSchedulerJobTest < ActiveJob::TestCase
# Set event to start tomorrow
@event.update(start_time: 1.day.from_now.beginning_of_day + 20.hours)
- assert_enqueued_with(job: EventReminderJob, args: [@event.id, 1]) do
+ assert_enqueued_with(job: EventReminderJob, args: [ @event.id, 1 ]) do
EventReminderSchedulerJob.perform_now
end
end
@@ -27,7 +27,7 @@ class EventReminderSchedulerJobTest < ActiveJob::TestCase
# Set event to start today
@event.update(start_time: Time.current.beginning_of_day + 21.hours)
- assert_enqueued_with(job: EventReminderJob, args: [@event.id, 0]) do
+ assert_enqueued_with(job: EventReminderJob, args: [ @event.id, 0 ]) do
EventReminderSchedulerJob.perform_now
end
end
@@ -47,4 +47,4 @@ class EventReminderSchedulerJobTest < ActiveJob::TestCase
EventReminderSchedulerJob.perform_now
end
end
-end
\ No newline at end of file
+end
diff --git a/test/mailers/ticket_mailer_test.rb b/test/mailers/ticket_mailer_test.rb
index 789428f..92e0b35 100644
--- a/test/mailers/ticket_mailer_test.rb
+++ b/test/mailers/ticket_mailer_test.rb
@@ -21,11 +21,11 @@ class TicketMailerTest < ActionMailer::TestCase
email.deliver_now
end
- assert_equal ["no-reply@aperonight.fr"], email.from
- assert_equal [@user.email], email.to
+ assert_equal [ "no-reply@aperonight.fr" ], email.from
+ assert_equal [ @user.email ], email.to
assert_equal "Confirmation d'achat - #{@event.name}", email.subject
assert_match @event.name, email.body.to_s
- assert_match @user.email.split('@').first, email.body.to_s
+ assert_match @user.email.split("@").first, email.body.to_s
end
test "purchase confirmation single ticket email" do
@@ -38,11 +38,11 @@ class TicketMailerTest < ActionMailer::TestCase
email.deliver_now
end
- assert_equal ["no-reply@aperonight.fr"], email.from
- assert_equal [@ticket.user.email], email.to
+ assert_equal [ "no-reply@aperonight.fr" ], email.from
+ assert_equal [ @ticket.user.email ], email.to
assert_equal "Confirmation d'achat - #{@ticket.event.name}", email.subject
assert_match @ticket.event.name, email.body.to_s
- assert_match @ticket.user.email.split('@').first, email.body.to_s
+ assert_match @ticket.user.email.split("@").first, email.body.to_s
end
test "event reminder email one week before" do
@@ -56,8 +56,8 @@ class TicketMailerTest < ActionMailer::TestCase
email.deliver_now
end
- assert_equal ["no-reply@aperonight.fr"], email.from
- assert_equal [@user.email], email.to
+ assert_equal [ "no-reply@aperonight.fr" ], email.from
+ assert_equal [ @user.email ], email.to
assert_equal "Rappel : #{@event.name} dans une semaine", email.subject
assert_match "une semaine", email.body.to_s
assert_match @event.name, email.body.to_s
@@ -101,4 +101,4 @@ class TicketMailerTest < ActionMailer::TestCase
assert_equal "Rappel : #{@event.name} dans 3 jours", email.subject
assert_match "3 jours", email.body.to_s
end
-end
\ No newline at end of file
+end
diff --git a/test/models/order_email_test.rb b/test/models/order_email_test.rb
index 247e67d..8e812de 100644
--- a/test/models/order_email_test.rb
+++ b/test/models/order_email_test.rb
@@ -8,31 +8,31 @@ class OrderEmailTest < ActiveSupport::TestCase
test "sends purchase confirmation email when order is marked as paid" do
# Mock the mailer to capture the call
TicketMailer.expects(:purchase_confirmation_order).with(@order).returns(stub(deliver_now: true))
-
+
@order.mark_as_paid!
-
+
assert_equal "paid", @order.status
end
test "activates all tickets when order is marked as paid" do
@order.tickets.update_all(status: "reserved")
-
+
# Mock the mailer to avoid actual email sending
TicketMailer.stubs(:purchase_confirmation_order).returns(stub(deliver_now: true))
-
+
@order.mark_as_paid!
-
+
assert @order.tickets.all? { |ticket| ticket.status == "active" }
end
test "email sending failure does not prevent order completion" do
# Mock mailer to raise an error
TicketMailer.stubs(:purchase_confirmation_order).raises(StandardError.new("Email error"))
-
+
# Should not raise error - email failure is logged but doesn't fail the payment
@order.mark_as_paid!
-
+
# Order should still be marked as paid even if email fails
assert_equal "paid", @order.reload.status
end
-end
\ No newline at end of file
+end
diff --git a/yarn.lock b/yarn.lock
index 4fc4aa1..d4573df 100755
--- a/yarn.lock
+++ b/yarn.lock
@@ -17,158 +17,11 @@
resolved "https://registry.npmjs.org/@csstools/selector-specificity/-/selector-specificity-5.0.0.tgz"
integrity sha512-PCqQV3c4CoVm3kdPhyeZ07VmBRdH2EpMFA/pd9OASpOEC3aXNGoqPDAZ80D0cLpMBxnmk0+yNhGsEx31hq7Gtw==
-"@emnapi/core@^1.4.3", "@emnapi/core@^1.4.5":
- version "1.5.0"
- resolved "https://registry.yarnpkg.com/@emnapi/core/-/core-1.5.0.tgz#85cd84537ec989cebb2343606a1ee663ce4edaf0"
- integrity sha512-sbP8GzB1WDzacS8fgNPpHlp6C9VZe+SJP3F90W9rLemaQj2PzIuTEl1qDOYQf58YIpyjViI24y9aPWCjEzY2cg==
- dependencies:
- "@emnapi/wasi-threads" "1.1.0"
- tslib "^2.4.0"
-
-"@emnapi/runtime@^1.4.3", "@emnapi/runtime@^1.4.5":
- version "1.5.0"
- resolved "https://registry.yarnpkg.com/@emnapi/runtime/-/runtime-1.5.0.tgz#9aebfcb9b17195dce3ab53c86787a6b7d058db73"
- integrity sha512-97/BJ3iXHww3djw6hYIfErCZFee7qCtrneuLa20UXFCOTCfBM2cvQHjWJ2EG0s0MtdNwInarqCTz35i4wWXHsQ==
- dependencies:
- tslib "^2.4.0"
-
-"@emnapi/wasi-threads@1.1.0", "@emnapi/wasi-threads@^1.0.4":
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/@emnapi/wasi-threads/-/wasi-threads-1.1.0.tgz#60b2102fddc9ccb78607e4a3cf8403ea69be41bf"
- integrity sha512-WI0DdZ8xFSbgMjR1sFsKABJ/C5OnRrjT06JXbZKexJGrDuPTzZdDYfFlsgcCXCyf+suG5QU2e/y1Wo2V/OapLQ==
- dependencies:
- tslib "^2.4.0"
-
-"@esbuild/aix-ppc64@0.25.9":
- version "0.25.9"
- resolved "https://registry.yarnpkg.com/@esbuild/aix-ppc64/-/aix-ppc64-0.25.9.tgz#bef96351f16520055c947aba28802eede3c9e9a9"
- integrity sha512-OaGtL73Jck6pBKjNIe24BnFE6agGl+6KxDtTfHhy1HmhthfKouEcOhqpSL64K4/0WCtbKFLOdzD/44cJ4k9opA==
-
-"@esbuild/android-arm64@0.25.9":
- version "0.25.9"
- resolved "https://registry.yarnpkg.com/@esbuild/android-arm64/-/android-arm64-0.25.9.tgz#d2e70be7d51a529425422091e0dcb90374c1546c"
- integrity sha512-IDrddSmpSv51ftWslJMvl3Q2ZT98fUSL2/rlUXuVqRXHCs5EUF1/f+jbjF5+NG9UffUDMCiTyh8iec7u8RlTLg==
-
-"@esbuild/android-arm@0.25.9":
- version "0.25.9"
- resolved "https://registry.yarnpkg.com/@esbuild/android-arm/-/android-arm-0.25.9.tgz#d2a753fe2a4c73b79437d0ba1480e2d760097419"
- integrity sha512-5WNI1DaMtxQ7t7B6xa572XMXpHAaI/9Hnhk8lcxF4zVN4xstUgTlvuGDorBguKEnZO70qwEcLpfifMLoxiPqHQ==
-
-"@esbuild/android-x64@0.25.9":
- version "0.25.9"
- resolved "https://registry.yarnpkg.com/@esbuild/android-x64/-/android-x64-0.25.9.tgz#5278836e3c7ae75761626962f902a0d55352e683"
- integrity sha512-I853iMZ1hWZdNllhVZKm34f4wErd4lMyeV7BLzEExGEIZYsOzqDWDf+y082izYUE8gtJnYHdeDpN/6tUdwvfiw==
-
-"@esbuild/darwin-arm64@0.25.9":
- version "0.25.9"
- resolved "https://registry.yarnpkg.com/@esbuild/darwin-arm64/-/darwin-arm64-0.25.9.tgz#f1513eaf9ec8fa15dcaf4c341b0f005d3e8b47ae"
- integrity sha512-XIpIDMAjOELi/9PB30vEbVMs3GV1v2zkkPnuyRRURbhqjyzIINwj+nbQATh4H9GxUgH1kFsEyQMxwiLFKUS6Rg==
-
-"@esbuild/darwin-x64@0.25.9":
- version "0.25.9"
- resolved "https://registry.yarnpkg.com/@esbuild/darwin-x64/-/darwin-x64-0.25.9.tgz#e27dbc3b507b3a1cea3b9280a04b8b6b725f82be"
- integrity sha512-jhHfBzjYTA1IQu8VyrjCX4ApJDnH+ez+IYVEoJHeqJm9VhG9Dh2BYaJritkYK3vMaXrf7Ogr/0MQ8/MeIefsPQ==
-
-"@esbuild/freebsd-arm64@0.25.9":
- version "0.25.9"
- resolved "https://registry.yarnpkg.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.25.9.tgz#364e3e5b7a1fd45d92be08c6cc5d890ca75908ca"
- integrity sha512-z93DmbnY6fX9+KdD4Ue/H6sYs+bhFQJNCPZsi4XWJoYblUqT06MQUdBCpcSfuiN72AbqeBFu5LVQTjfXDE2A6Q==
-
-"@esbuild/freebsd-x64@0.25.9":
- version "0.25.9"
- resolved "https://registry.yarnpkg.com/@esbuild/freebsd-x64/-/freebsd-x64-0.25.9.tgz#7c869b45faeb3df668e19ace07335a0711ec56ab"
- integrity sha512-mrKX6H/vOyo5v71YfXWJxLVxgy1kyt1MQaD8wZJgJfG4gq4DpQGpgTB74e5yBeQdyMTbgxp0YtNj7NuHN0PoZg==
-
-"@esbuild/linux-arm64@0.25.9":
- version "0.25.9"
- resolved "https://registry.yarnpkg.com/@esbuild/linux-arm64/-/linux-arm64-0.25.9.tgz#48d42861758c940b61abea43ba9a29b186d6cb8b"
- integrity sha512-BlB7bIcLT3G26urh5Dmse7fiLmLXnRlopw4s8DalgZ8ef79Jj4aUcYbk90g8iCa2467HX8SAIidbL7gsqXHdRw==
-
-"@esbuild/linux-arm@0.25.9":
- version "0.25.9"
- resolved "https://registry.yarnpkg.com/@esbuild/linux-arm/-/linux-arm-0.25.9.tgz#6ce4b9cabf148274101701d112b89dc67cc52f37"
- integrity sha512-HBU2Xv78SMgaydBmdor38lg8YDnFKSARg1Q6AT0/y2ezUAKiZvc211RDFHlEZRFNRVhcMamiToo7bDx3VEOYQw==
-
-"@esbuild/linux-ia32@0.25.9":
- version "0.25.9"
- resolved "https://registry.yarnpkg.com/@esbuild/linux-ia32/-/linux-ia32-0.25.9.tgz#207e54899b79cac9c26c323fc1caa32e3143f1c4"
- integrity sha512-e7S3MOJPZGp2QW6AK6+Ly81rC7oOSerQ+P8L0ta4FhVi+/j/v2yZzx5CqqDaWjtPFfYz21Vi1S0auHrap3Ma3A==
-
-"@esbuild/linux-loong64@0.25.9":
- version "0.25.9"
- resolved "https://registry.yarnpkg.com/@esbuild/linux-loong64/-/linux-loong64-0.25.9.tgz#0ba48a127159a8f6abb5827f21198b999ffd1fc0"
- integrity sha512-Sbe10Bnn0oUAB2AalYztvGcK+o6YFFA/9829PhOCUS9vkJElXGdphz0A3DbMdP8gmKkqPmPcMJmJOrI3VYB1JQ==
-
-"@esbuild/linux-mips64el@0.25.9":
- version "0.25.9"
- resolved "https://registry.yarnpkg.com/@esbuild/linux-mips64el/-/linux-mips64el-0.25.9.tgz#a4d4cc693d185f66a6afde94f772b38ce5d64eb5"
- integrity sha512-YcM5br0mVyZw2jcQeLIkhWtKPeVfAerES5PvOzaDxVtIyZ2NUBZKNLjC5z3/fUlDgT6w89VsxP2qzNipOaaDyA==
-
-"@esbuild/linux-ppc64@0.25.9":
- version "0.25.9"
- resolved "https://registry.yarnpkg.com/@esbuild/linux-ppc64/-/linux-ppc64-0.25.9.tgz#0f5805c1c6d6435a1dafdc043cb07a19050357db"
- integrity sha512-++0HQvasdo20JytyDpFvQtNrEsAgNG2CY1CLMwGXfFTKGBGQT3bOeLSYE2l1fYdvML5KUuwn9Z8L1EWe2tzs1w==
-
-"@esbuild/linux-riscv64@0.25.9":
- version "0.25.9"
- resolved "https://registry.yarnpkg.com/@esbuild/linux-riscv64/-/linux-riscv64-0.25.9.tgz#6776edece0f8fca79f3386398b5183ff2a827547"
- integrity sha512-uNIBa279Y3fkjV+2cUjx36xkx7eSjb8IvnL01eXUKXez/CBHNRw5ekCGMPM0BcmqBxBcdgUWuUXmVWwm4CH9kg==
-
-"@esbuild/linux-s390x@0.25.9":
- version "0.25.9"
- resolved "https://registry.yarnpkg.com/@esbuild/linux-s390x/-/linux-s390x-0.25.9.tgz#3f6f29ef036938447c2218d309dc875225861830"
- integrity sha512-Mfiphvp3MjC/lctb+7D287Xw1DGzqJPb/J2aHHcHxflUo+8tmN/6d4k6I2yFR7BVo5/g7x2Monq4+Yew0EHRIA==
-
"@esbuild/linux-x64@0.25.9":
version "0.25.9"
resolved "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.25.9.tgz"
integrity sha512-iSwByxzRe48YVkmpbgoxVzn76BXjlYFXC7NvLYq+b+kDjyyk30J0JY47DIn8z1MO3K0oSl9fZoRmZPQI4Hklzg==
-"@esbuild/netbsd-arm64@0.25.9":
- version "0.25.9"
- resolved "https://registry.yarnpkg.com/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.9.tgz#06f99d7eebe035fbbe43de01c9d7e98d2a0aa548"
- integrity sha512-9jNJl6FqaUG+COdQMjSCGW4QiMHH88xWbvZ+kRVblZsWrkXlABuGdFJ1E9L7HK+T0Yqd4akKNa/lO0+jDxQD4Q==
-
-"@esbuild/netbsd-x64@0.25.9":
- version "0.25.9"
- resolved "https://registry.yarnpkg.com/@esbuild/netbsd-x64/-/netbsd-x64-0.25.9.tgz#db99858e6bed6e73911f92a88e4edd3a8c429a52"
- integrity sha512-RLLdkflmqRG8KanPGOU7Rpg829ZHu8nFy5Pqdi9U01VYtG9Y0zOG6Vr2z4/S+/3zIyOxiK6cCeYNWOFR9QP87g==
-
-"@esbuild/openbsd-arm64@0.25.9":
- version "0.25.9"
- resolved "https://registry.yarnpkg.com/@esbuild/openbsd-arm64/-/openbsd-arm64-0.25.9.tgz#afb886c867e36f9d86bb21e878e1185f5d5a0935"
- integrity sha512-YaFBlPGeDasft5IIM+CQAhJAqS3St3nJzDEgsgFixcfZeyGPCd6eJBWzke5piZuZ7CtL656eOSYKk4Ls2C0FRQ==
-
-"@esbuild/openbsd-x64@0.25.9":
- version "0.25.9"
- resolved "https://registry.yarnpkg.com/@esbuild/openbsd-x64/-/openbsd-x64-0.25.9.tgz#30855c9f8381fac6a0ef5b5f31ac6e7108a66ecf"
- integrity sha512-1MkgTCuvMGWuqVtAvkpkXFmtL8XhWy+j4jaSO2wxfJtilVCi0ZE37b8uOdMItIHz4I6z1bWWtEX4CJwcKYLcuA==
-
-"@esbuild/openharmony-arm64@0.25.9":
- version "0.25.9"
- resolved "https://registry.yarnpkg.com/@esbuild/openharmony-arm64/-/openharmony-arm64-0.25.9.tgz#2f2144af31e67adc2a8e3705c20c2bd97bd88314"
- integrity sha512-4Xd0xNiMVXKh6Fa7HEJQbrpP3m3DDn43jKxMjxLLRjWnRsfxjORYJlXPO4JNcXtOyfajXorRKY9NkOpTHptErg==
-
-"@esbuild/sunos-x64@0.25.9":
- version "0.25.9"
- resolved "https://registry.yarnpkg.com/@esbuild/sunos-x64/-/sunos-x64-0.25.9.tgz#69b99a9b5bd226c9eb9c6a73f990fddd497d732e"
- integrity sha512-WjH4s6hzo00nNezhp3wFIAfmGZ8U7KtrJNlFMRKxiI9mxEK1scOMAaa9i4crUtu+tBr+0IN6JCuAcSBJZfnphw==
-
-"@esbuild/win32-arm64@0.25.9":
- version "0.25.9"
- resolved "https://registry.yarnpkg.com/@esbuild/win32-arm64/-/win32-arm64-0.25.9.tgz#d789330a712af916c88325f4ffe465f885719c6b"
- integrity sha512-mGFrVJHmZiRqmP8xFOc6b84/7xa5y5YvR1x8djzXpJBSv/UsNK6aqec+6JDjConTgvvQefdGhFDAs2DLAds6gQ==
-
-"@esbuild/win32-ia32@0.25.9":
- version "0.25.9"
- resolved "https://registry.yarnpkg.com/@esbuild/win32-ia32/-/win32-ia32-0.25.9.tgz#52fc735406bd49688253e74e4e837ac2ba0789e3"
- integrity sha512-b33gLVU2k11nVx1OhX3C8QQP6UHQK4ZtN56oFWvVXvz2VkDoe6fbG8TOgHFxEvqeqohmRnIHe5A1+HADk4OQww==
-
-"@esbuild/win32-x64@0.25.9":
- version "0.25.9"
- resolved "https://registry.yarnpkg.com/@esbuild/win32-x64/-/win32-x64-0.25.9.tgz#585624dc829cfb6e7c0aa6c3ca7d7e6daa87e34f"
- integrity sha512-PPOl1mi6lpLNQxnGoyAfschAodRFYXJ+9fs6WHXz7CSWKbOqiMZsubC+BQsVKuul+3vKLuwTHsS2c2y9EoKwxQ==
-
"@hotwired/stimulus@^3.2.2":
version "3.2.2"
resolved "https://registry.npmjs.org/@hotwired/stimulus/-/stimulus-3.2.2.tgz"
@@ -228,15 +81,6 @@
"@jridgewell/resolve-uri" "^3.1.0"
"@jridgewell/sourcemap-codec" "^1.4.14"
-"@napi-rs/wasm-runtime@^0.2.12":
- version "0.2.12"
- resolved "https://registry.yarnpkg.com/@napi-rs/wasm-runtime/-/wasm-runtime-0.2.12.tgz#3e78a8b96e6c33a6c517e1894efbd5385a7cb6f2"
- integrity sha512-ZVWUcfwY4E/yPitQJl481FjFo3K22D6qF0DuFH6Y/nbnE11GY5uguDxZMGXPQ8WQ0128MXQD7TnfHyK4oWoIJQ==
- dependencies:
- "@emnapi/core" "^1.4.3"
- "@emnapi/runtime" "^1.4.3"
- "@tybys/wasm-util" "^0.10.0"
-
"@pm2/agent@~2.1.1":
version "2.1.1"
resolved "https://registry.npmjs.org/@pm2/agent/-/agent-2.1.1.tgz"
@@ -421,13 +265,6 @@
resolved "https://registry.npmjs.org/@tootallnate/quickjs-emscripten/-/quickjs-emscripten-0.23.0.tgz"
integrity sha512-C5Mc6rdnsaJDjO3UpGW/CQTHtCKaYlScZTly4JIu97Jxo/odCiH0ITnDXSJPTOrEKk/ycSZ0AOgTmkDtkOsvIA==
-"@tybys/wasm-util@^0.10.0":
- version "0.10.0"
- resolved "https://registry.yarnpkg.com/@tybys/wasm-util/-/wasm-util-0.10.0.tgz#2fd3cd754b94b378734ce17058d0507c45c88369"
- integrity sha512-VyyPYFlOMNylG45GoAe0xDoLwWuowvf92F9kySqzYh8vmYm7D2u4iUJKa1tOUpS70Ku13ASrOkS4ScXFsTaCNQ==
- dependencies:
- tslib "^2.4.0"
-
agent-base@^7.0.2, agent-base@^7.1.0, agent-base@^7.1.2:
version "7.1.4"
resolved "https://registry.npmjs.org/agent-base/-/agent-base-7.1.4.tgz"
@@ -440,7 +277,7 @@ amp-message@~0.1.1:
dependencies:
amp "0.3.1"
-amp@0.3.1, amp@~0.3.1:
+amp@~0.3.1, amp@0.3.1:
version "0.3.1"
resolved "https://registry.npmjs.org/amp/-/amp-0.3.1.tgz"
integrity sha512-OwIuC4yZaRogHKiuU5WlMR5Xk/jAcpPtawWL05Gj8Lvm2F6mwoJt4O/bHI+DHwG79vWd+8OFYM4/BzYqyRd3qw==
@@ -487,7 +324,7 @@ ast-types@^0.13.4:
dependencies:
tslib "^2.0.1"
-async@^2.6.3, async@~2.6.1:
+async@^2.6.3:
version "2.6.4"
resolved "https://registry.npmjs.org/async/-/async-2.6.4.tgz"
integrity sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==
@@ -499,6 +336,13 @@ async@^3.2.0, async@~3.2.0, async@~3.2.6:
resolved "https://registry.npmjs.org/async/-/async-3.2.6.tgz"
integrity sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==
+async@~2.6.1:
+ version "2.6.4"
+ resolved "https://registry.npmjs.org/async/-/async-2.6.4.tgz"
+ integrity sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==
+ dependencies:
+ lodash "^4.17.14"
+
autoprefixer@^10.4.21:
version "10.4.21"
resolved "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.21.tgz"
@@ -543,7 +387,7 @@ braces@~3.0.2:
dependencies:
fill-range "^7.1.1"
-browserslist@^4.0.0, browserslist@^4.24.4, browserslist@^4.25.1:
+browserslist@^4.0.0, browserslist@^4.24.4, browserslist@^4.25.1, "browserslist@>= 4.21.0":
version "4.25.2"
resolved "https://registry.npmjs.org/browserslist/-/browserslist-4.25.2.tgz"
integrity sha512-0si2SJK3ooGzIawRu61ZdPCO1IncZwS8IzuX73sPZsXW6EQ/w/DAfPyKI8l1ETTCr2MnvqWitmlCUxgdul45jA==
@@ -558,6 +402,11 @@ buffer-from@^1.0.0:
resolved "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz"
integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==
+camelcase@^5.0.0:
+ version "5.3.1"
+ resolved "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz"
+ integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==
+
caniuse-api@^3.0.0:
version "3.0.0"
resolved "https://registry.npmjs.org/caniuse-api/-/caniuse-api-3.0.0.tgz"
@@ -573,7 +422,7 @@ caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001702, caniuse-lite@^1.0.30001733:
resolved "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001735.tgz"
integrity sha512-EV/laoX7Wq2J9TQlyIXRxTJqIw4sxfXS4OYgudGxBYRuTv0q7AM6yMEpU/Vo1I94thg9U6EZ2NfZx9GJq83u7w==
-chalk@3.0.0, chalk@~3.0.0:
+chalk@~3.0.0, chalk@3.0.0:
version "3.0.0"
resolved "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz"
integrity sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==
@@ -620,6 +469,15 @@ cli-tableau@^2.0.0:
dependencies:
chalk "3.0.0"
+cliui@^6.0.0:
+ version "6.0.0"
+ resolved "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz"
+ integrity sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==
+ dependencies:
+ string-width "^4.2.0"
+ strip-ansi "^6.0.0"
+ wrap-ansi "^6.2.0"
+
cliui@^8.0.1:
version "8.0.1"
resolved "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz"
@@ -651,16 +509,16 @@ colord@^2.9.3:
resolved "https://registry.npmjs.org/colord/-/colord-2.9.3.tgz"
integrity sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==
-commander@2.15.1:
- version "2.15.1"
- resolved "https://registry.npmjs.org/commander/-/commander-2.15.1.tgz"
- integrity sha512-VlfT9F3V0v+jr4yxPc5gg9s62/fIVWsd2Bk2iD435um1NlGMYdVCq+MjcXnhYq2icNOizHr1kK+5TI6H0Hy0ag==
-
commander@^11.1.0:
version "11.1.0"
resolved "https://registry.npmjs.org/commander/-/commander-11.1.0.tgz"
integrity sha512-yPVavfyCcRhmorC7rWlkHn15b4wDVgVmBA7kV4QVBsF7kv/9TKJAbAXVTxvTnwP8HHKjRCJDClKbciiYS7p0DQ==
+commander@2.15.1:
+ version "2.15.1"
+ resolved "https://registry.npmjs.org/commander/-/commander-2.15.1.tgz"
+ integrity sha512-VlfT9F3V0v+jr4yxPc5gg9s62/fIVWsd2Bk2iD435um1NlGMYdVCq+MjcXnhYq2icNOizHr1kK+5TI6H0Hy0ag==
+
croner@~4.1.92:
version "4.1.97"
resolved "https://registry.npmjs.org/croner/-/croner-4.1.97.tgz"
@@ -784,13 +642,6 @@ dayjs@~1.8.24:
resolved "https://registry.npmjs.org/dayjs/-/dayjs-1.8.36.tgz"
integrity sha512-3VmRXEtw7RZKAf+4Tv1Ym9AGeo8r8+CjDi26x+7SYQil1UqtqdaokhzoEJohqlzt0m5kacJSDhJQkG/LWhpRBw==
-debug@4, debug@^4.1.1, debug@^4.3.1, debug@^4.3.4, debug@^4.3.7:
- version "4.4.1"
- resolved "https://registry.npmjs.org/debug/-/debug-4.4.1.tgz"
- integrity sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ==
- dependencies:
- ms "^2.1.3"
-
debug@^3.2.6:
version "3.2.7"
resolved "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz"
@@ -798,6 +649,13 @@ debug@^3.2.6:
dependencies:
ms "^2.1.1"
+debug@^4.1.1, debug@^4.3.1, debug@^4.3.4, debug@^4.3.7, debug@4:
+ version "4.4.1"
+ resolved "https://registry.npmjs.org/debug/-/debug-4.4.1.tgz"
+ integrity sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ==
+ dependencies:
+ ms "^2.1.3"
+
debug@~4.3.1:
version "4.3.7"
resolved "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz"
@@ -805,6 +663,11 @@ debug@~4.3.1:
dependencies:
ms "^2.1.3"
+decamelize@^1.2.0:
+ version "1.2.0"
+ resolved "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz"
+ integrity sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==
+
degenerator@^5.0.0:
version "5.0.1"
resolved "https://registry.npmjs.org/degenerator/-/degenerator-5.0.1.tgz"
@@ -824,6 +687,11 @@ detect-libc@^2.0.3, detect-libc@^2.0.4:
resolved "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.4.tgz"
integrity sha512-3UDv+G9CsCKO1WKMGw9fwq/SWJYbI0c5Y7LU1AXYoDdbhE2AHQ6N6Nb34sG8Fj7T5APy8qXDCKuuIHd1BR0tVA==
+dijkstrajs@^1.0.1:
+ version "1.0.3"
+ resolved "https://registry.npmjs.org/dijkstrajs/-/dijkstrajs-1.0.3.tgz"
+ integrity sha512-qiSlmBq9+BCdCA/L46dw8Uy93mloxsPSbwnm5yrKn2vMPiy8KyAskTF6zuV/j5BMsmOGZDPs7KjU+mjb670kfA==
+
dom-serializer@^2.0.0:
version "2.0.0"
resolved "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz"
@@ -952,16 +820,16 @@ esutils@^2.0.2:
resolved "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz"
integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==
-eventemitter2@5.0.1, eventemitter2@~5.0.1:
- version "5.0.1"
- resolved "https://registry.npmjs.org/eventemitter2/-/eventemitter2-5.0.1.tgz"
- integrity sha512-5EM1GHXycJBS6mauYAbVKT1cVs7POKWb2NXD4Vyt8dDqeZa7LaDK1/sjtL+Zb0lzTpSNil4596Dyu97hz37QLg==
-
eventemitter2@^6.3.1:
version "6.4.9"
resolved "https://registry.npmjs.org/eventemitter2/-/eventemitter2-6.4.9.tgz"
integrity sha512-JEPTiaOt9f04oa6NOkc4aH+nVp5I3wEjpHbIPqfgCdD5v5bUzy7xQqwcVO2aDQgOWhI28da57HksMrzK9HlRxg==
+eventemitter2@~5.0.1, eventemitter2@5.0.1:
+ version "5.0.1"
+ resolved "https://registry.npmjs.org/eventemitter2/-/eventemitter2-5.0.1.tgz"
+ integrity sha512-5EM1GHXycJBS6mauYAbVKT1cVs7POKWb2NXD4Vyt8dDqeZa7LaDK1/sjtL+Zb0lzTpSNil4596Dyu97hz37QLg==
+
extrareqp2@^1.0.0:
version "1.0.0"
resolved "https://registry.npmjs.org/extrareqp2/-/extrareqp2-1.0.0.tgz"
@@ -974,7 +842,7 @@ fast-json-patch@^3.1.0:
resolved "https://registry.npmjs.org/fast-json-patch/-/fast-json-patch-3.1.1.tgz"
integrity sha512-vf6IHUX2SBcA+5/+4883dsIjpBTqmfBjmYiWK1savxQmFk4JfBMLa7ynTYOs1Rolp/T1betJxHiGD3g1Mn8lUQ==
-fclone@1.0.11, fclone@~1.0.11:
+fclone@~1.0.11, fclone@1.0.11:
version "1.0.11"
resolved "https://registry.npmjs.org/fclone/-/fclone-1.0.11.tgz"
integrity sha512-GDqVQezKzRABdeqflsgMr7ktzgF9CyS+p2oe0jJqUY6izSSbhPIQJDpoU4PtGcD7VPM9xh/dVrTu6z1nwgmEGw==
@@ -991,6 +859,14 @@ fill-range@^7.1.1:
dependencies:
to-regex-range "^5.0.1"
+find-up@^4.1.0:
+ version "4.1.0"
+ resolved "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz"
+ integrity sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==
+ dependencies:
+ locate-path "^5.0.0"
+ path-exists "^4.0.0"
+
follow-redirects@^1.14.0:
version "1.15.11"
resolved "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.11.tgz"
@@ -1010,17 +886,12 @@ fs-extra@^11.0.0:
jsonfile "^6.0.1"
universalify "^2.0.0"
-fsevents@~2.3.2:
- version "2.3.3"
- resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.3.tgz#cac6407785d03675a2a5e1a5305c697b347d90d6"
- integrity sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==
-
function-bind@^1.1.2:
version "1.1.2"
resolved "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz"
integrity sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==
-get-caller-file@^2.0.5:
+get-caller-file@^2.0.1, get-caller-file@^2.0.5:
version "2.0.5"
resolved "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz"
integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==
@@ -1137,7 +1008,7 @@ is-number@^7.0.0:
resolved "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz"
integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==
-jiti@^2.5.1:
+jiti@^2.5.1, jiti@>=1.21.0:
version "2.5.1"
resolved "https://registry.npmjs.org/jiti/-/jiti-2.5.1.tgz"
integrity sha512-twQoecYPiVA5K/h6SxtORw/Bs3ar+mLUtoPSc7iMXzQzK8d7eJ/R09wmTwAjiamETn1cXYPGfNnu7DMoHgu12w==
@@ -1251,6 +1122,13 @@ lilconfig@^3.1.1, lilconfig@^3.1.3:
resolved "https://registry.npmjs.org/lilconfig/-/lilconfig-3.1.3.tgz"
integrity sha512-/vlFKAoH5Cgt3Ie+JLhRbwOsCQePABiU3tJ1egGvyQ+33R/vcwM2Zl2QR/LzjsBeItPt3oSVXapn+m4nQDvpzw==
+locate-path@^5.0.0:
+ version "5.0.0"
+ resolved "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz"
+ integrity sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==
+ dependencies:
+ p-locate "^4.1.0"
+
lodash.memoize@^4.1.2:
version "4.1.2"
resolved "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz"
@@ -1319,16 +1197,16 @@ minizlib@^3.0.1:
dependencies:
minipass "^7.1.2"
-mkdirp@1.0.4:
- version "1.0.4"
- resolved "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz"
- integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==
-
mkdirp@^3.0.1:
version "3.0.1"
resolved "https://registry.npmjs.org/mkdirp/-/mkdirp-3.0.1.tgz"
integrity sha512-+NsyUUAZDmo6YVHzL/stxSu3t9YS1iljliy3BSDrXJ/dkn1KYdmtZODGGjLcc9XLgVVpH4KshHB8XmZgMhaBXg==
+mkdirp@1.0.4:
+ version "1.0.4"
+ resolved "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz"
+ integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==
+
module-details-from-path@^1.0.3:
version "1.0.4"
resolved "https://registry.npmjs.org/module-details-from-path/-/module-details-from-path-1.0.4.tgz"
@@ -1385,6 +1263,25 @@ nth-check@^2.0.1:
dependencies:
boolbase "^1.0.0"
+p-limit@^2.2.0:
+ version "2.3.0"
+ resolved "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz"
+ integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==
+ dependencies:
+ p-try "^2.0.0"
+
+p-locate@^4.1.0:
+ version "4.1.0"
+ resolved "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz"
+ integrity sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==
+ dependencies:
+ p-limit "^2.2.0"
+
+p-try@^2.0.0:
+ version "2.2.0"
+ resolved "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz"
+ integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==
+
pac-proxy-agent@^7.0.1:
version "7.2.0"
resolved "https://registry.npmjs.org/pac-proxy-agent/-/pac-proxy-agent-7.2.0.tgz"
@@ -1412,6 +1309,11 @@ pako@^0.2.5:
resolved "https://registry.npmjs.org/pako/-/pako-0.2.9.tgz"
integrity sha512-NUcwaKxUxWrZLpDG+z/xZaCgQITkA/Dv4V/T6bw7VON6l1Xz/VnrBqrYjZQ12TamKHzITTfOEIYUj48y2KXImA==
+path-exists@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz"
+ integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==
+
path-parse@^1.0.7:
version "1.0.7"
resolved "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz"
@@ -1427,7 +1329,7 @@ picomatch@^2.0.4, picomatch@^2.2.1:
resolved "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz"
integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==
-picomatch@^4.0.2:
+"picomatch@^3 || ^4", picomatch@^4.0.2:
version "4.0.3"
resolved "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz"
integrity sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==
@@ -1531,6 +1433,11 @@ pm2@^6.0.5:
optionalDependencies:
pm2-sysmonit "^1.2.8"
+pngjs@^5.0.0:
+ version "5.0.0"
+ resolved "https://registry.npmjs.org/pngjs/-/pngjs-5.0.0.tgz"
+ integrity sha512-40QW5YalBNfQo5yRYmiw7Yz6TKKVr3h6970B2YE+3fQpsWcrbj1PzJgxeJ19DRQjhMbKPIuMY8rFaXc8moolVw==
+
postcss-calc@^10.1.1:
version "10.1.1"
resolved "https://registry.npmjs.org/postcss-calc/-/postcss-calc-10.1.1.tgz"
@@ -1806,7 +1713,7 @@ postcss-value-parser@^4.0.0, postcss-value-parser@^4.2.0:
resolved "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz"
integrity sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==
-postcss@^8.4.41, postcss@^8.5.3:
+postcss@^8.0.0, postcss@^8.0.9, postcss@^8.1.0, postcss@^8.1.4, postcss@^8.2.14, postcss@^8.4, postcss@^8.4.32, postcss@^8.4.38, postcss@^8.4.41, postcss@^8.5.3, postcss@>=8.0.9:
version "8.5.6"
resolved "https://registry.npmjs.org/postcss/-/postcss-8.5.6.tgz"
integrity sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg==
@@ -1846,6 +1753,15 @@ proxy-from-env@^1.1.0:
resolved "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz"
integrity sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==
+qrcode@^1.5.4:
+ version "1.5.4"
+ resolved "https://registry.npmjs.org/qrcode/-/qrcode-1.5.4.tgz"
+ integrity sha512-1ca71Zgiu6ORjHqFBDpnSMTR2ReToX4l1Au1VFLyVeBTFavzQnv5JxMFr3ukHVKpSrSA2MCk0lNJSykjUfz7Zg==
+ dependencies:
+ dijkstrajs "^1.0.1"
+ pngjs "^5.0.0"
+ yargs "^15.3.1"
+
react-dom@^18.3.1:
version "18.3.1"
resolved "https://registry.npmjs.org/react-dom/-/react-dom-18.3.1.tgz"
@@ -1854,7 +1770,7 @@ react-dom@^18.3.1:
loose-envify "^1.1.0"
scheduler "^0.23.2"
-react@^18.3.1:
+"react@^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", react@^18.3.1:
version "18.3.1"
resolved "https://registry.npmjs.org/react/-/react-18.3.1.tgz"
integrity sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==
@@ -1896,6 +1812,11 @@ require-in-the-middle@^5.0.0:
module-details-from-path "^1.0.3"
resolve "^1.22.1"
+require-main-filename@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz"
+ integrity sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==
+
resolve@^1.1.7, resolve@^1.22.1:
version "1.22.10"
resolved "https://registry.npmjs.org/resolve/-/resolve-1.22.10.tgz"
@@ -1937,13 +1858,25 @@ semver@^7.6.2:
resolved "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz"
integrity sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==
-semver@~7.5.0, semver@~7.5.4:
+semver@~7.5.0:
version "7.5.4"
resolved "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz"
integrity sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==
dependencies:
lru-cache "^6.0.0"
+semver@~7.5.4:
+ version "7.5.4"
+ resolved "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz"
+ integrity sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==
+ dependencies:
+ lru-cache "^6.0.0"
+
+set-blocking@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz"
+ integrity sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==
+
shimmer@^1.2.0:
version "1.2.1"
resolved "https://registry.npmjs.org/shimmer/-/shimmer-1.2.1.tgz"
@@ -2068,7 +2001,7 @@ tailwindcss-animate@^1.0.7:
resolved "https://registry.npmjs.org/tailwindcss-animate/-/tailwindcss-animate-1.0.7.tgz"
integrity sha512-bl6mpH3T7I3UFxuvDEXLxy/VuFxBk5bbzplh7tXI68mwMokNYd1t9qPBHlnyTwfa4JGC4zP516I1hYYtQ/vspA==
-tailwindcss@4.1.12, tailwindcss@^4.1.4:
+tailwindcss@^4.1.4, "tailwindcss@>=3.0.0 || insiders", tailwindcss@4.1.12:
version "4.1.12"
resolved "https://registry.npmjs.org/tailwindcss/-/tailwindcss-4.1.12.tgz"
integrity sha512-DzFtxOi+7NsFf7DBtI3BJsynR+0Yp6etH+nRPTbpWnS2pZBaSksv/JGctNwSWzbFjp0vxSqknaUylseZqMDGrA==
@@ -2110,16 +2043,16 @@ to-regex-range@^5.0.1:
dependencies:
is-number "^7.0.0"
-tslib@1.9.3:
+tslib@^2.0.1:
+ version "2.8.1"
+ resolved "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz"
+ integrity sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==
+
+tslib@^2.8.0, tslib@1.9.3:
version "1.9.3"
resolved "https://registry.npmjs.org/tslib/-/tslib-1.9.3.tgz"
integrity sha512-4krF8scpejhaOgqzBEcGM7yDIEfi0/8+8zDRZhNZZ2kjmHJ4hv3zCbQWxoJGz1iw5U0Jl0nma13xzHXcncMavQ==
-tslib@^2.0.1, tslib@^2.4.0, tslib@^2.8.0:
- version "2.8.1"
- resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.8.1.tgz#612efe4ed235d567e8aba5f2a5fab70280ade83f"
- integrity sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==
-
tv4@^1.3.0:
version "1.3.0"
resolved "https://registry.npmjs.org/tv4/-/tv4-1.3.0.tgz"
@@ -2160,6 +2093,20 @@ vizion@~2.2.1:
ini "^1.3.5"
js-git "^0.7.8"
+which-module@^2.0.0:
+ version "2.0.1"
+ resolved "https://registry.npmjs.org/which-module/-/which-module-2.0.1.tgz"
+ integrity sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ==
+
+wrap-ansi@^6.2.0:
+ version "6.2.0"
+ resolved "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz"
+ integrity sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==
+ dependencies:
+ ansi-styles "^4.0.0"
+ string-width "^4.1.0"
+ strip-ansi "^6.0.0"
+
wrap-ansi@^7.0.0:
version "7.0.0"
resolved "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz"
@@ -2174,6 +2121,11 @@ ws@^7.0.0, ws@~7.5.10:
resolved "https://registry.npmjs.org/ws/-/ws-7.5.10.tgz"
integrity sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ==
+y18n@^4.0.0:
+ version "4.0.3"
+ resolved "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz"
+ integrity sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==
+
y18n@^5.0.5:
version "5.0.8"
resolved "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz"
@@ -2194,11 +2146,36 @@ yaml@^2.4.2:
resolved "https://registry.npmjs.org/yaml/-/yaml-2.8.1.tgz"
integrity sha512-lcYcMxX2PO9XMGvAJkJ3OsNMw+/7FKes7/hgerGUYWIoWu5j/+YQqcZr5JnPZWzOsEBgMbSbiSTn/dv/69Mkpw==
+yargs-parser@^18.1.2:
+ version "18.1.3"
+ resolved "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz"
+ integrity sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==
+ dependencies:
+ camelcase "^5.0.0"
+ decamelize "^1.2.0"
+
yargs-parser@^21.1.1:
version "21.1.1"
resolved "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz"
integrity sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==
+yargs@^15.3.1:
+ version "15.4.1"
+ resolved "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz"
+ integrity sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==
+ dependencies:
+ cliui "^6.0.0"
+ decamelize "^1.2.0"
+ find-up "^4.1.0"
+ get-caller-file "^2.0.1"
+ require-directory "^2.1.1"
+ require-main-filename "^2.0.0"
+ set-blocking "^2.0.0"
+ string-width "^4.2.0"
+ which-module "^2.0.0"
+ y18n "^4.0.0"
+ yargs-parser "^18.1.2"
+
yargs@^17.0.0:
version "17.7.2"
resolved "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz"