@@ -95,7 +95,9 @@
<% @participated_polls.each do |poll_participation| %>
- <%= poll_participation.poll.title %>
+ <%= link_to poll_path(poll_participation.poll) do %>
+ <%= poll_participation.poll.title %>
+ <% end %>
|
diff --git a/app/views/resource_invite_mailer/invite.html.erb b/app/views/resource_invite_mailer/invite.html.erb
new file mode 100644
index 00000000..ba2e2b03
--- /dev/null
+++ b/app/views/resource_invite_mailer/invite.html.erb
@@ -0,0 +1,70 @@
+<%# app/views/resource_invite_mailer/resource_invite.html.erb %>
+
+
+
+
+
+
+
+
+
+ Hi,
+
+
+ <%= @resource['nickname'] %> is inviting you to join "<%= @resource['title'] %>" (<%= @resource['invitable_type'] %>)
+
+
+
+
+
+ If you didn't sign up for ThePew, you can safely ignore this email.
+
+
+ Thanks,
+ ThePew Team
+
+ |
+
+
+ |
+
+
+
+
+
+ Powered by ThePew
+
+
+ Capture, Analyze, Empower
+
+
+ Docs
+ •
+ Github
+ •
+ Twitter
+
+
+ |
+
+
+ |
+
+
+
diff --git a/app/views/shared/_top_navigation.html.erb b/app/views/shared/_top_navigation.html.erb
index 5bd09fa4..51bdeda9 100644
--- a/app/views/shared/_top_navigation.html.erb
+++ b/app/views/shared/_top_navigation.html.erb
@@ -37,13 +37,13 @@
<% if user_signed_in? %>
-
- <%= link_to_unless_current 'Manage events', events_path, class: 'block py-2 pr-4 pl-3 text-gray-700 border-b border-gray-100 hover:bg-gray-50 md:hover:bg-transparent md:border-0 md:hover:text-blue-700 md:p-0 md:dark:hover:text-white dark:text-gray-400 dark:hover:bg-gray-700 dark:hover:text-white md:dark:hover:bg-transparent dark:border-gray-700' do %>
- <%= link_to 'Manage events', events_path, class: 'block py-2 pr-4 pl-3 text-white bg-blue-700 rounded md:bg-transparent md:text-blue-700 md:p-0 dark:text-white', 'aria-current': true %>
+ <%= link_to_unless_current 'Events', events_path, class: 'block py-2 pr-4 pl-3 text-gray-700 border-b border-gray-100 hover:bg-gray-50 md:hover:bg-transparent md:border-0 md:hover:text-blue-700 md:p-0 md:dark:hover:text-white dark:text-gray-400 dark:hover:bg-gray-700 dark:hover:text-white md:dark:hover:bg-transparent dark:border-gray-700' do %>
+ <%= link_to 'Events', events_path, class: 'block py-2 pr-4 pl-3 text-white bg-blue-700 rounded md:bg-transparent md:text-blue-700 md:p-0 dark:text-white', 'aria-current': true %>
<% end %>
-
- <%= link_to_unless_current 'Manage polls', polls_path, class: 'block py-2 pr-4 pl-3 text-gray-700 border-b border-gray-100 hover:bg-gray-50 md:hover:bg-transparent md:border-0 md:hover:text-blue-700 md:p-0 md:dark:hover:text-white dark:text-gray-400 dark:hover:bg-gray-700 dark:hover:text-white md:dark:hover:bg-transparent dark:border-gray-700' do %>
- <%= link_to 'Manage polls', polls_path, class: 'block py-2 pr-4 pl-3 text-white bg-blue-700 rounded md:bg-transparent md:text-blue-700 md:p-0 dark:text-white', 'aria-current': true %>
+ <%= link_to_unless_current 'Polls', polls_path, class: 'block py-2 pr-4 pl-3 text-gray-700 border-b border-gray-100 hover:bg-gray-50 md:hover:bg-transparent md:border-0 md:hover:text-blue-700 md:p-0 md:dark:hover:text-white dark:text-gray-400 dark:hover:bg-gray-700 dark:hover:text-white md:dark:hover:bg-transparent dark:border-gray-700' do %>
+ <%= link_to 'Polls', polls_path, class: 'block py-2 pr-4 pl-3 text-white bg-blue-700 rounded md:bg-transparent md:text-blue-700 md:p-0 dark:text-white', 'aria-current': true %>
<% end %>
-
diff --git a/app/views/user_mailer/confirmation.text.erb b/app/views/user_mailer/confirmation.text.erb
deleted file mode 100644
index 1da57bbb..00000000
--- a/app/views/user_mailer/confirmation.text.erb
+++ /dev/null
@@ -1,3 +0,0 @@
-<%# app/views/user_mailer/confirmation.text.erb %>
-Confirmation Instructions
-<%= edit_confirmation_url(@confirmation_token) %>
diff --git a/app/views/user_mailer/invite.html.erb b/app/views/user_mailer/invite.html.erb
index c27935fc..ccb15000 100644
--- a/app/views/user_mailer/invite.html.erb
+++ b/app/views/user_mailer/invite.html.erb
@@ -1,130 +1,73 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- |
-
-
-
- Welcome to THEPEW
- |
-
-
-
-
- You've been invited to join <%= @user.organization.name %> account on THEPEW, and we can't wait to see how you'll use our platform to engage with us, your team and customers.
-
-
- As a member of <%= @user.organization.name %>, you now have access to all of the features of THEPEW. With our user-friendly interface and robust analytics, you'll be able to gather insights and make data-driven decisions in no time.
-
-
- Whether you're looking to get feedback on a new project, brainstorm ideas, or simply have some fun with your colleagues, THEPEW has everything you need to make it happen.
-
- Thanks for joining us on this exciting journey, and we can't wait to see what you'll achieve with THEPEW.
-
- |
-
-
- <%= link_to "COMPLETE YOUR REGISTRATION", edit_invite_url(@invitation_token), class: "es-button", target: "_blank", style: "mso-style-priority:100 !important;text-decoration:none;-webkit-text-size-adjust:none;-ms-text-size-adjust:none;mso-line-height-rule:exactly;color:#FFFFFF;font-size:20px;border-style:solid;border-color:#5C68E2;border-width:10px 30px 10px 30px;display:inline-block;background:#5C68E2;border-radius:6px;font-family:arial, 'helvetica neue', helvetica, sans-serif;font-weight:normal;font-style:normal;line-height:24px;width:auto;text-align:center;border-left-width:30px;border-right-width:30px" %> |
-
-
-
- Once confirmed, this email will be uniquely associated with your account.
- |
-
-
-
- |
-
-
-
- |
-
-
-
- |
-
-
-
-
diff --git a/app/views/user_mailer/invite.text.erb b/app/views/user_mailer/invite.text.erb
deleted file mode 100644
index c4494be0..00000000
--- a/app/views/user_mailer/invite.text.erb
+++ /dev/null
@@ -1,3 +0,0 @@
-<%# app/views/user_mailer/invite.text.erb %>
-Confirmation Instructions
-<%= edit_invite_url(@invitation_token) %>
diff --git a/app/views/user_mailer/password_change_confirmation.html.erb b/app/views/user_mailer/password_change_confirmation.html.erb
index 8f2c2065..1da57bbb 100644
--- a/app/views/user_mailer/password_change_confirmation.html.erb
+++ b/app/views/user_mailer/password_change_confirmation.html.erb
@@ -1,128 +1,3 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- |
-
-
-
- Confirm Your Email
- |
-
-
-
- Taking ownership of this account let you create events and collect questions from the participants. Please click the button below to verify your email address and confirm that you are the owner of this account.
-
- Unconfirmed account can still be used to ask questions during public events.
-
- |
-
-
-
- If you did not register with us, please disregard this email.
- |
-
-
- <%= link_to "CONFIRM YOUR EMAIL", edit_confirmation_url(@confirmation_token), class: "es-button", target: "_blank", style: "mso-style-priority:100 !important;text-decoration:none;-webkit-text-size-adjust:none;-ms-text-size-adjust:none;mso-line-height-rule:exactly;color:#FFFFFF;font-size:20px;border-style:solid;border-color:#5C68E2;border-width:10px 30px 10px 30px;display:inline-block;background:#5C68E2;border-radius:6px;font-family:arial, 'helvetica neue', helvetica, sans-serif;font-weight:normal;font-style:normal;line-height:24px;width:auto;text-align:center;border-left-width:30px;border-right-width:30px" %> |
-
-
-
- Once confirmed, this email will be uniquely associated with your account.
- |
-
-
-
- |
-
-
-
- |
-
-
-
- |
-
-
-
-
- |
-
-
-
-
+<%# app/views/user_mailer/confirmation.text.erb %>
+Confirmation Instructions
+<%= edit_confirmation_url(@confirmation_token) %>
diff --git a/app/views/user_mailer/password_change_confirmation.text.erb b/app/views/user_mailer/password_change_confirmation.text.erb
deleted file mode 100644
index 1da57bbb..00000000
--- a/app/views/user_mailer/password_change_confirmation.text.erb
+++ /dev/null
@@ -1,3 +0,0 @@
-<%# app/views/user_mailer/confirmation.text.erb %>
-Confirmation Instructions
-<%= edit_confirmation_url(@confirmation_token) %>
diff --git a/app/views/user_mailer/password_reset.text.erb b/app/views/user_mailer/password_reset.text.erb
deleted file mode 100644
index 8490047c..00000000
--- a/app/views/user_mailer/password_reset.text.erb
+++ /dev/null
@@ -1,3 +0,0 @@
-
-Password Reset Instructions
-<%= edit_password_url(@password_reset_token) %>
diff --git a/app/views/user_mailer/welcome.text.erb b/app/views/user_mailer/welcome.text.erb
deleted file mode 100644
index 1da57bbb..00000000
--- a/app/views/user_mailer/welcome.text.erb
+++ /dev/null
@@ -1,3 +0,0 @@
-<%# app/views/user_mailer/confirmation.text.erb %>
-Confirmation Instructions
-<%= edit_confirmation_url(@confirmation_token) %>
diff --git a/app/views/users/search_users_and_groups_for_invites.html.erb b/app/views/users/search_users_and_groups_for_invites.html.erb
new file mode 100644
index 00000000..037eb442
--- /dev/null
+++ b/app/views/users/search_users_and_groups_for_invites.html.erb
@@ -0,0 +1,47 @@
+<% if !@searched_users.none? || !@searched_groups.none? || !@searched_invites.none? %>
+ <% @searched_users.each do |user| %>
+ -
+
+
+
+ <%= user.profile&.nickname %>
+ <%= user.email %>
+
+
+
+ <% end %>
+ <% @searched_groups.each do |group| %>
+ -
+
+
+
+ <%= group.name %>
+
+
+
+ <% end %>
+ <% @searched_invites.each do |invite| %>
+ -
+
+
+
+ <%= invite.email %>
+
+
+
+ <% end %>
+<% end %>
diff --git a/config/environments/development.rb b/config/environments/development.rb
index e9320db6..718dcb02 100644
--- a/config/environments/development.rb
+++ b/config/environments/development.rb
@@ -91,4 +91,5 @@
config.action_mailer.smtp_settings = { address: '127.0.0.1', port: 1025 }
config.action_mailer.raise_delivery_errors = false
config.action_mailer.default_url_options = { host: 'localhost', port: 3000 }
+ config.action_mailer.asset_host = 'http://localhost:3000'
end
diff --git a/config/environments/production.rb b/config/environments/production.rb
index 6c4f1a45..c93981db 100644
--- a/config/environments/production.rb
+++ b/config/environments/production.rb
@@ -109,6 +109,7 @@
api_key: ENV['SENDGRID_API_KEY'],
raise_delivery_errors: true
}
- config.action_mailer.default_url_options = { host: ENV['DEFAULT_URL'] }
+ config.action_mailer.default_url_options = { host: ENV['DEFAULT_URL'], protocol: :ssl }
+ config.action_mailer.asset_host = "https://" + ENV['DEFAULT_URL']
end
diff --git a/config/routes.rb b/config/routes.rb
index 842429e5..bf9bbafc 100644
--- a/config/routes.rb
+++ b/config/routes.rb
@@ -30,6 +30,10 @@
# Resend the invite to join an organization to a user
post 'account/:id/invite', to: 'users#resend_invite', as: :resend_invite
+ # Resource invites
+ # Used to invite users to join a specific poll, survey, event, etc.
+ resources :resource_invites
+
# Invite routes
# Invite routes are only used to invite a user to join an existing Organization
resources :invites, only: %i[ edit create new update ]
@@ -37,7 +41,8 @@
# User routes
resources :users, only: %i[create new] do
collection do
- get 'search', action: :search_users
+ get 'search', action: :search_users
+ get 'invite_search', action: :search_users_and_groups_for_invites
end
end
resources :profiles, only: %i[ update edit ]
diff --git a/db/migrate/20230730193848_create_resource_invites.rb b/db/migrate/20230730193848_create_resource_invites.rb
index cc90083a..9ff4fd10 100644
--- a/db/migrate/20230730193848_create_resource_invites.rb
+++ b/db/migrate/20230730193848_create_resource_invites.rb
@@ -5,11 +5,14 @@ def change
t.references :organization, null: false, foreign_key: true, type: :uuid
t.references :recipient, null: true, type: :uuid, index: true
t.references :invitable, polymorphic: true, null: false, type: :uuid
+ t.uuid :group_id
+ t.datetime :sent_on
t.datetime :expires_at
- t.string :email, null: false
+ t.string :email
t.string :token, null: false
t.integer :status
t.string :template
+ t.text :error_msg
t.timestamps
end
@@ -21,6 +24,7 @@ def change
# Indexes
add_index :resource_invites, :status
add_index :resource_invites, :email
+ add_index :resource_invites, :group_id
add_index :resource_invites, [:invitable_type, :invitable_id]
add_index :resource_invites, :token, unique: true
end
diff --git a/db/migrate/20230802183841_create_groups.rb b/db/migrate/20230802183841_create_groups.rb
new file mode 100644
index 00000000..9efdd2f3
--- /dev/null
+++ b/db/migrate/20230802183841_create_groups.rb
@@ -0,0 +1,16 @@
+class CreateGroups < ActiveRecord::Migration[7.0]
+ def change
+ create_table :groups, id: :uuid do |t|
+ t.references :user, null: false, foreign_key: true, type: :uuid
+ t.references :organization, null: false, foreign_key: true, type: :uuid
+ t.string :icon
+ t.string :name
+ t.text :description
+ t.integer :group_type, null: false, default: 0
+
+ t.timestamps
+ end
+
+ add_index :groups, :group_type
+ end
+end
diff --git a/db/migrate/20230802183847_create_group_memberships.rb b/db/migrate/20230802183847_create_group_memberships.rb
new file mode 100644
index 00000000..b179514b
--- /dev/null
+++ b/db/migrate/20230802183847_create_group_memberships.rb
@@ -0,0 +1,12 @@
+class CreateGroupMemberships < ActiveRecord::Migration[7.0]
+ def change
+ create_table :group_memberships, id: :uuid do |t|
+ t.references :user, null: false, foreign_key: true, type: :uuid
+ t.references :group, null: false, foreign_key: true, type: :uuid
+ t.integer :role
+ t.integer :status
+
+ t.timestamps
+ end
+ end
+end
diff --git a/db/schema.rb b/db/schema.rb
index 7effbc4a..0fef0d40 100644
--- a/db/schema.rb
+++ b/db/schema.rb
@@ -10,8 +10,7 @@
#
# It's strongly recommended that you check this file into your version control system.
-ActiveRecord::Schema[7.0].define(version: 2023_07_30_193848) do
-
+ActiveRecord::Schema[7.0].define(version: 2023_08_02_183847) do
# These are extensions that must be enabled in order to support this database
enable_extension "pgcrypto"
enable_extension "plpgsql"
@@ -175,6 +174,31 @@
t.index ["sponsored_by"], name: "index_food_for_thoughts_on_sponsored_by"
end
+ create_table "group_memberships", id: :uuid, default: -> { "gen_random_uuid()" }, force: :cascade do |t|
+ t.uuid "user_id", null: false
+ t.uuid "group_id", null: false
+ t.integer "role"
+ t.integer "status"
+ t.datetime "created_at", null: false
+ t.datetime "updated_at", null: false
+ t.index ["group_id"], name: "index_group_memberships_on_group_id"
+ t.index ["user_id"], name: "index_group_memberships_on_user_id"
+ end
+
+ create_table "groups", id: :uuid, default: -> { "gen_random_uuid()" }, force: :cascade do |t|
+ t.uuid "user_id", null: false
+ t.uuid "organization_id", null: false
+ t.string "icon"
+ t.string "name"
+ t.text "description"
+ t.integer "group_type", default: 0, null: false
+ t.datetime "created_at", null: false
+ t.datetime "updated_at", null: false
+ t.index ["group_type"], name: "index_groups_on_group_type"
+ t.index ["organization_id"], name: "index_groups_on_organization_id"
+ t.index ["user_id"], name: "index_groups_on_user_id"
+ end
+
create_table "import_results", id: :uuid, default: -> { "gen_random_uuid()" }, force: :cascade do |t|
t.uuid "user_id", null: false
t.string "filename", null: false
@@ -415,14 +439,18 @@
t.uuid "recipient_id"
t.string "invitable_type", null: false
t.uuid "invitable_id", null: false
+ t.uuid "group_id"
+ t.datetime "sent_on"
t.datetime "expires_at"
- t.string "email", null: false
+ t.string "email"
t.string "token", null: false
t.integer "status"
t.string "template"
+ t.text "error_msg"
t.datetime "created_at", null: false
t.datetime "updated_at", null: false
t.index ["email"], name: "index_resource_invites_on_email"
+ t.index ["group_id"], name: "index_resource_invites_on_group_id"
t.index ["invitable_type", "invitable_id"], name: "index_resource_invites_on_invitable"
t.index ["invitable_type", "invitable_id"], name: "index_resource_invites_on_invitable_type_and_invitable_id"
t.index ["organization_id"], name: "index_resource_invites_on_organization_id"
@@ -567,6 +595,10 @@
add_foreign_key "attendances", "events"
add_foreign_key "attendances", "users"
add_foreign_key "events", "users"
+ add_foreign_key "group_memberships", "groups"
+ add_foreign_key "group_memberships", "users"
+ add_foreign_key "groups", "organizations"
+ add_foreign_key "groups", "users"
add_foreign_key "import_results", "users"
add_foreign_key "messages", "users"
add_foreign_key "poll_answers", "poll_options"
diff --git a/package.json b/package.json
index 1ab333bc..1a3b2445 100644
--- a/package.json
+++ b/package.json
@@ -2,21 +2,21 @@
"name": "app",
"private": "true",
"dependencies": {
- "@honeybadger-io/js": "6.3.0",
- "@hotwired/stimulus": "3.2.1",
+ "@honeybadger-io/js": "6.4.0",
+ "@hotwired/stimulus": "3.2.2",
"@hotwired/turbo-rails": "7.3.0",
- "@rails/actiontext": "7.0.6",
+ "@rails/actiontext": "7.0.7",
"@rails/request.js": "0.0.8",
"@tailwindcss/typography": "0.5.9",
- "autoprefixer": "10.4.14",
- "chart.js": "4.3.2",
+ "autoprefixer": "10.4.15",
+ "chart.js": "4.3.3",
"chartjs-plugin-datalabels": "2.2.0",
"chartkick": "5.0.1",
- "esbuild": "0.18.6",
+ "esbuild": "0.19.2",
"flowbite": "1.8.1",
"flowbite-datepicker": "1.2.2",
"js-confetti": "0.11.0",
- "postcss": "8.4.24",
+ "postcss": "8.4.28",
"qr-code-styling": "1.6.0-rc.1",
"stimulus-autocomplete": "3.1.0",
"taggle": "1.15.0",
diff --git a/test/fixtures/group_memberships.yml b/test/fixtures/group_memberships.yml
new file mode 100644
index 00000000..0a2d8315
--- /dev/null
+++ b/test/fixtures/group_memberships.yml
@@ -0,0 +1,34 @@
+# == Schema Information
+#
+# Table name: group_memberships
+#
+# id :uuid not null, primary key
+# role :integer
+# status :integer
+# created_at :datetime not null
+# updated_at :datetime not null
+# group_id :uuid not null
+# user_id :uuid not null
+#
+# Indexes
+#
+# index_group_memberships_on_group_id (group_id)
+# index_group_memberships_on_user_id (user_id)
+#
+# Foreign Keys
+#
+# fk_rails_... (group_id => groups.id)
+# fk_rails_... (user_id => users.id)
+#
+
+one:
+ user: one
+ group: one
+ role: 1
+ status: 1
+
+two:
+ user: two
+ group: two
+ role: 1
+ status: 1
diff --git a/test/fixtures/groups.yml b/test/fixtures/groups.yml
new file mode 100644
index 00000000..5199fc71
--- /dev/null
+++ b/test/fixtures/groups.yml
@@ -0,0 +1,33 @@
+# == Schema Information
+#
+# Table name: groups
+#
+# id :uuid not null, primary key
+# description :text
+# group_type :integer default("restricted"), not null
+# icon :string
+# name :string
+# created_at :datetime not null
+# updated_at :datetime not null
+# organization_id :uuid not null
+# user_id :uuid not null
+#
+# Indexes
+#
+# index_groups_on_group_type (group_type)
+# index_groups_on_organization_id (organization_id)
+# index_groups_on_user_id (user_id)
+#
+# Foreign Keys
+#
+# fk_rails_... (organization_id => organizations.id)
+# fk_rails_... (user_id => users.id)
+#
+
+one:
+ name: MyString
+ description: MyText
+
+two:
+ name: MyString
+ description: MyText
diff --git a/test/mailers/previews/resource_invite_mailer_preview.rb b/test/mailers/previews/resource_invite_mailer_preview.rb
new file mode 100644
index 00000000..91af1512
--- /dev/null
+++ b/test/mailers/previews/resource_invite_mailer_preview.rb
@@ -0,0 +1,4 @@
+# Preview all emails at http://localhost:3000/rails/mailers/resource_invite_mailer
+class ResourceInviteMailerPreview < ActionMailer::Preview
+
+end
diff --git a/test/mailers/resource_invite_mailer_test.rb b/test/mailers/resource_invite_mailer_test.rb
new file mode 100644
index 00000000..cf6cf9f5
--- /dev/null
+++ b/test/mailers/resource_invite_mailer_test.rb
@@ -0,0 +1,7 @@
+require "test_helper"
+
+class ResourceInviteMailerTest < ActionMailer::TestCase
+ # test "the truth" do
+ # assert true
+ # end
+end
diff --git a/test/models/group_membership_test.rb b/test/models/group_membership_test.rb
new file mode 100644
index 00000000..1b493140
--- /dev/null
+++ b/test/models/group_membership_test.rb
@@ -0,0 +1,29 @@
+# == Schema Information
+#
+# Table name: group_memberships
+#
+# id :uuid not null, primary key
+# role :integer
+# status :integer
+# created_at :datetime not null
+# updated_at :datetime not null
+# group_id :uuid not null
+# user_id :uuid not null
+#
+# Indexes
+#
+# index_group_memberships_on_group_id (group_id)
+# index_group_memberships_on_user_id (user_id)
+#
+# Foreign Keys
+#
+# fk_rails_... (group_id => groups.id)
+# fk_rails_... (user_id => users.id)
+#
+require "test_helper"
+
+class GroupMembershipTest < ActiveSupport::TestCase
+ # test "the truth" do
+ # assert true
+ # end
+end
diff --git a/test/models/group_test.rb b/test/models/group_test.rb
new file mode 100644
index 00000000..b214bf03
--- /dev/null
+++ b/test/models/group_test.rb
@@ -0,0 +1,32 @@
+# == Schema Information
+#
+# Table name: groups
+#
+# id :uuid not null, primary key
+# description :text
+# group_type :integer default("restricted"), not null
+# icon :string
+# name :string
+# created_at :datetime not null
+# updated_at :datetime not null
+# organization_id :uuid not null
+# user_id :uuid not null
+#
+# Indexes
+#
+# index_groups_on_group_type (group_type)
+# index_groups_on_organization_id (organization_id)
+# index_groups_on_user_id (user_id)
+#
+# Foreign Keys
+#
+# fk_rails_... (organization_id => organizations.id)
+# fk_rails_... (user_id => users.id)
+#
+require "test_helper"
+
+class GroupTest < ActiveSupport::TestCase
+ # test "the truth" do
+ # assert true
+ # end
+end
diff --git a/test/models/resource_invite_test.rb b/test/models/resource_invite_test.rb
index 904dc6c8..0e5d898d 100644
--- a/test/models/resource_invite_test.rb
+++ b/test/models/resource_invite_test.rb
@@ -3,14 +3,17 @@
# Table name: resource_invites
#
# id :uuid not null, primary key
-# email :string not null
+# email :string
+# error_msg :text
# expires_at :datetime
# invitable_type :string not null
+# sent_on :datetime
# status :integer
# template :string
# token :string not null
# created_at :datetime not null
# updated_at :datetime not null
+# group_id :uuid
# invitable_id :uuid not null
# organization_id :uuid not null
# recipient_id :uuid
@@ -19,6 +22,7 @@
# Indexes
#
# index_resource_invites_on_email (email)
+# index_resource_invites_on_group_id (group_id)
# index_resource_invites_on_invitable (invitable_type,invitable_id)
# index_resource_invites_on_invitable_type_and_invitable_id (invitable_type,invitable_id)
# index_resource_invites_on_organization_id (organization_id)
diff --git a/test/sidekiq/resource_invite_job_test.rb b/test/sidekiq/resource_invite_job_test.rb
new file mode 100644
index 00000000..5a9641b3
--- /dev/null
+++ b/test/sidekiq/resource_invite_job_test.rb
@@ -0,0 +1,6 @@
+require 'test_helper'
+class ResourceInviteJobTest < Minitest::Test
+ def test_example
+ skip "add some examples to (or delete) #{__FILE__}"
+ end
+end
diff --git a/test/sidekiq/resource_invite_update_job_test.rb b/test/sidekiq/resource_invite_update_job_test.rb
new file mode 100644
index 00000000..d155a09b
--- /dev/null
+++ b/test/sidekiq/resource_invite_update_job_test.rb
@@ -0,0 +1,6 @@
+require 'test_helper'
+class ResourceInviteUpdateJobTest < Minitest::Test
+ def test_example
+ skip "add some examples to (or delete) #{__FILE__}"
+ end
+end
diff --git a/yarn.lock b/yarn.lock
index bd08b02c..615319ef 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -14,136 +14,136 @@
dependencies:
regenerator-runtime "^0.13.11"
-"@esbuild/android-arm64@0.18.6":
- version "0.18.6"
- resolved "https://registry.yarnpkg.com/@esbuild/android-arm64/-/android-arm64-0.18.6.tgz#0ef08fd5897a362a1bf05bc15714cbb2e8896aee"
- integrity sha512-pL0Ci8P9q1sWbtPx8CXbc8JvPvvYdJJQ+LO09PLFsbz3aYNdFBGWJjiHU+CaObO4Ames+GOFpXRAJZS2L3ZK/A==
-
-"@esbuild/android-arm@0.18.6":
- version "0.18.6"
- resolved "https://registry.yarnpkg.com/@esbuild/android-arm/-/android-arm-0.18.6.tgz#5f355ae54027360113e6aadcb25291d0d97976e0"
- integrity sha512-J3lwhDSXBBppSzm/LC1uZ8yKSIpExc+5T8MxrYD9KNVZG81FOAu2VF2gXi/6A/LwDDQQ+b6DpQbYlo3VwxFepQ==
-
-"@esbuild/android-x64@0.18.6":
- version "0.18.6"
- resolved "https://registry.yarnpkg.com/@esbuild/android-x64/-/android-x64-0.18.6.tgz#67340bed315fa200900ad26d58ff47564e9c6f74"
- integrity sha512-hE2vZxOlJ05aY28lUpB0y0RokngtZtcUB+TVl9vnLEnY0z/8BicSvrkThg5/iI1rbf8TwXrbr2heEjl9fLf+EA==
-
-"@esbuild/darwin-arm64@0.18.6":
- version "0.18.6"
- resolved "https://registry.yarnpkg.com/@esbuild/darwin-arm64/-/darwin-arm64-0.18.6.tgz#0e60158a25aa30d73544c728b9e7c904ff3b7706"
- integrity sha512-/tuyl4R+QhhoROQtuQj9E/yfJtZNdv2HKaHwYhhHGQDN1Teziem2Kh7BWQMumfiY7Lu9g5rO7scWdGE4OsQ6MQ==
-
-"@esbuild/darwin-x64@0.18.6":
- version "0.18.6"
- resolved "https://registry.yarnpkg.com/@esbuild/darwin-x64/-/darwin-x64-0.18.6.tgz#16a4c802000d00b139281198017fc00134b8df12"
- integrity sha512-L7IQga2pDT+14Ti8HZwsVfbCjuKP4U213T3tuPggOzyK/p4KaUJxQFXJgfUFHKzU0zOXx8QcYRYZf0hSQtppkw==
-
-"@esbuild/freebsd-arm64@0.18.6":
- version "0.18.6"
- resolved "https://registry.yarnpkg.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.18.6.tgz#71008abc926e47d0f91eba46bf9af643ce1118d4"
- integrity sha512-bq10jFv42V20Kk77NvmO+WEZaLHBKuXcvEowixnBOMkaBgS7kQaqTc77ZJDbsUpXU3KKNLQFZctfaeINmeTsZA==
-
-"@esbuild/freebsd-x64@0.18.6":
- version "0.18.6"
- resolved "https://registry.yarnpkg.com/@esbuild/freebsd-x64/-/freebsd-x64-0.18.6.tgz#59195dbc35a1c73acf9f3804f4245702fc0669de"
- integrity sha512-HbDLlkDZqUMBQaiday0pJzB6/8Xx/10dI3xRebJBReOEeDSeS+7GzTtW9h8ZnfB7/wBCqvtAjGtWQLTNPbR2+g==
-
-"@esbuild/linux-arm64@0.18.6":
- version "0.18.6"
- resolved "https://registry.yarnpkg.com/@esbuild/linux-arm64/-/linux-arm64-0.18.6.tgz#744821299570fe676cac0db34d49e28ee8d50f57"
- integrity sha512-NMY9yg/88MskEZH2s4i6biz/3av+M8xY5ua4HE7CCz5DBz542cr7REe317+v7oKjnYBCijHpkzo5vU85bkXQmQ==
-
-"@esbuild/linux-arm@0.18.6":
- version "0.18.6"
- resolved "https://registry.yarnpkg.com/@esbuild/linux-arm/-/linux-arm-0.18.6.tgz#f98002f9688fd3ac349e484a0de50ba4f7b47aeb"
- integrity sha512-C+5kb6rgsGMmvIdUI7v1PPgC98A6BMv233e97aXZ5AE03iMdlILFD/20HlHrOi0x2CzbspXn9HOnlE4/Ijn5Kw==
-
-"@esbuild/linux-ia32@0.18.6":
- version "0.18.6"
- resolved "https://registry.yarnpkg.com/@esbuild/linux-ia32/-/linux-ia32-0.18.6.tgz#4ceb486ad4aab4fbba702d21f40ab97bc3f3f0d4"
- integrity sha512-AXazA0ljvQEp7cA9jscABNXsjodKbEcqPcAE3rDzKN82Vb3lYOq6INd+HOCA7hk8IegEyHW4T72Z7QGIhyCQEA==
-
-"@esbuild/linux-loong64@0.18.6":
- version "0.18.6"
- resolved "https://registry.yarnpkg.com/@esbuild/linux-loong64/-/linux-loong64-0.18.6.tgz#94c34253c006a894483b2b2587ba745f55dda8cf"
- integrity sha512-JjBf7TwY7ldcPgHYt9UcrjZB03+WZqg/jSwMAfzOzM5ZG+tu5umUqzy5ugH/crGI4eoDIhSOTDp1NL3Uo/05Fw==
-
-"@esbuild/linux-mips64el@0.18.6":
- version "0.18.6"
- resolved "https://registry.yarnpkg.com/@esbuild/linux-mips64el/-/linux-mips64el-0.18.6.tgz#db30368c6f827f0eb9600a165df4c93d6d8ccee6"
- integrity sha512-kATNsslryVxcH1sO3KP2nnyUWtZZVkgyhAUnyTVVa0OQQ9pmDRjTpHaE+2EQHoCM5wt/uav2edrAUqbwn3tkKQ==
-
-"@esbuild/linux-ppc64@0.18.6":
- version "0.18.6"
- resolved "https://registry.yarnpkg.com/@esbuild/linux-ppc64/-/linux-ppc64-0.18.6.tgz#7576dce4c2a7390ab21f6aeffbb14b1c5fd4d237"
- integrity sha512-B+wTKz+8pi7mcWXFQV0LA79dJ+qhiut5uK9q0omoKnq8yRIwQJwfg3/vclXoqqcX89Ri5Y5538V0Se2v5qlcLA==
-
-"@esbuild/linux-riscv64@0.18.6":
- version "0.18.6"
- resolved "https://registry.yarnpkg.com/@esbuild/linux-riscv64/-/linux-riscv64-0.18.6.tgz#286984a7e34c9d8e8da610f45e23cdf4895dacc2"
- integrity sha512-h44RBLVXFUSjvhOfseE+5UxQ/r9LVeqK2S8JziJKOm9W7SePYRPDyn7MhzhNCCFPkcjIy+soCxfhlJXHXXCR0A==
-
-"@esbuild/linux-s390x@0.18.6":
- version "0.18.6"
- resolved "https://registry.yarnpkg.com/@esbuild/linux-s390x/-/linux-s390x-0.18.6.tgz#82ca83bb86566413e1c5a80a164d41bda4c947cf"
- integrity sha512-FlYpyr2Xc2AUePoAbc84NRV+mj7xpsISeQ36HGf9etrY5rTBEA+IU9HzWVmw5mDFtC62EQxzkLRj8h5Hq85yOQ==
-
-"@esbuild/linux-x64@0.18.6":
- version "0.18.6"
- resolved "https://registry.yarnpkg.com/@esbuild/linux-x64/-/linux-x64-0.18.6.tgz#7655e8ac0147e3797944adfb12b04bada51f8651"
- integrity sha512-Mc4EUSYwzLci77u0Kao6ajB2WbTe5fNc7+lHwS3a+vJISC/oprwURezUYu1SdWAYoczbsyOvKAJwuNftoAdjjg==
-
-"@esbuild/netbsd-x64@0.18.6":
- version "0.18.6"
- resolved "https://registry.yarnpkg.com/@esbuild/netbsd-x64/-/netbsd-x64-0.18.6.tgz#5b7e69689f5d1047504dedfc32f3bb9d36df5f1f"
- integrity sha512-3hgZlp7NqIM5lNG3fpdhBI5rUnPmdahraSmwAi+YX/bp7iZ7mpTv2NkypGs/XngdMtpzljICxnUG3uPfqLFd3w==
-
-"@esbuild/openbsd-x64@0.18.6":
- version "0.18.6"
- resolved "https://registry.yarnpkg.com/@esbuild/openbsd-x64/-/openbsd-x64-0.18.6.tgz#fb2abf3c8808dce87f4c01ea857d362469162900"
- integrity sha512-aEWTdZQHtSRROlDYn7ygB8yAqtnall/UnmoVIJVqccKitkAWVVSYocQUWrBOxLEFk8XdlRouVrLZe6WXszyviA==
-
-"@esbuild/sunos-x64@0.18.6":
- version "0.18.6"
- resolved "https://registry.yarnpkg.com/@esbuild/sunos-x64/-/sunos-x64-0.18.6.tgz#2962c270d457b5f8ec2fc4ad1afacc7efe913fef"
- integrity sha512-uxk/5yAGpjKZUHOECtI9W+9IcLjKj+2m0qf+RG7f7eRBHr8wP6wsr3XbNbgtOD1qSpPapd6R2ZfSeXTkCcAo5g==
-
-"@esbuild/win32-arm64@0.18.6":
- version "0.18.6"
- resolved "https://registry.yarnpkg.com/@esbuild/win32-arm64/-/win32-arm64-0.18.6.tgz#e22721c832fb083c31535dfbefb9c24d731728ba"
- integrity sha512-oXlXGS9zvNCGoAT/tLHAsFKrIKye1JaIIP0anCdpaI+Dc10ftaNZcqfLzEwyhdzFAYInXYH4V7kEdH4hPyo9GA==
-
-"@esbuild/win32-ia32@0.18.6":
- version "0.18.6"
- resolved "https://registry.yarnpkg.com/@esbuild/win32-ia32/-/win32-ia32-0.18.6.tgz#47d21b78c71eabe0c4d08a189703e541e2f210ca"
- integrity sha512-qh7IcAHUvvmMBmoIG+V+BbE9ZWSR0ohF51e5g8JZvU08kZF58uDFL5tHs0eoYz31H6Finv17te3W3QB042GqVA==
-
-"@esbuild/win32-x64@0.18.6":
- version "0.18.6"
- resolved "https://registry.yarnpkg.com/@esbuild/win32-x64/-/win32-x64-0.18.6.tgz#7b37eb2e6514fc09fedce6c1272e9a043bd26750"
- integrity sha512-9UDwkz7Wlm4N9jnv+4NL7F8vxLhSZfEkRArz2gD33HesAFfMLGIGNVXRoIHtWNw8feKsnGly9Hq1EUuRkWl0zA==
-
-"@honeybadger-io/core@^6.1.0":
- version "6.1.0"
- resolved "https://registry.yarnpkg.com/@honeybadger-io/core/-/core-6.1.0.tgz#9e171b2321fbff347c42c8b80cf4b1afde4da738"
- integrity sha512-t8GonzOfy0zSUvFvFIsvyCrYEyhNi341CDGiNbCQa6XBIISCr4BZPnXmnfRwqQZsVY6H5xyip4aZ8iT8LvvdXA==
+"@esbuild/android-arm64@0.19.2":
+ version "0.19.2"
+ resolved "https://registry.yarnpkg.com/@esbuild/android-arm64/-/android-arm64-0.19.2.tgz#bc35990f412a749e948b792825eef7df0ce0e073"
+ integrity sha512-lsB65vAbe90I/Qe10OjkmrdxSX4UJDjosDgb8sZUKcg3oefEuW2OT2Vozz8ef7wrJbMcmhvCC+hciF8jY/uAkw==
+
+"@esbuild/android-arm@0.19.2":
+ version "0.19.2"
+ resolved "https://registry.yarnpkg.com/@esbuild/android-arm/-/android-arm-0.19.2.tgz#edd1c8f23ba353c197f5b0337123c58ff2a56999"
+ integrity sha512-tM8yLeYVe7pRyAu9VMi/Q7aunpLwD139EY1S99xbQkT4/q2qa6eA4ige/WJQYdJ8GBL1K33pPFhPfPdJ/WzT8Q==
+
+"@esbuild/android-x64@0.19.2":
+ version "0.19.2"
+ resolved "https://registry.yarnpkg.com/@esbuild/android-x64/-/android-x64-0.19.2.tgz#2dcdd6e6f1f2d82ea1b746abd8da5b284960f35a"
+ integrity sha512-qK/TpmHt2M/Hg82WXHRc/W/2SGo/l1thtDHZWqFq7oi24AjZ4O/CpPSu6ZuYKFkEgmZlFoa7CooAyYmuvnaG8w==
+
+"@esbuild/darwin-arm64@0.19.2":
+ version "0.19.2"
+ resolved "https://registry.yarnpkg.com/@esbuild/darwin-arm64/-/darwin-arm64-0.19.2.tgz#55b36bc06d76f5c243987c1f93a11a80d8fc3b26"
+ integrity sha512-Ora8JokrvrzEPEpZO18ZYXkH4asCdc1DLdcVy8TGf5eWtPO1Ie4WroEJzwI52ZGtpODy3+m0a2yEX9l+KUn0tA==
+
+"@esbuild/darwin-x64@0.19.2":
+ version "0.19.2"
+ resolved "https://registry.yarnpkg.com/@esbuild/darwin-x64/-/darwin-x64-0.19.2.tgz#982524af33a6424a3b5cb44bbd52559623ad719c"
+ integrity sha512-tP+B5UuIbbFMj2hQaUr6EALlHOIOmlLM2FK7jeFBobPy2ERdohI4Ka6ZFjZ1ZYsrHE/hZimGuU90jusRE0pwDw==
+
+"@esbuild/freebsd-arm64@0.19.2":
+ version "0.19.2"
+ resolved "https://registry.yarnpkg.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.19.2.tgz#8e478a0856645265fe79eac4b31b52193011ee06"
+ integrity sha512-YbPY2kc0acfzL1VPVK6EnAlig4f+l8xmq36OZkU0jzBVHcOTyQDhnKQaLzZudNJQyymd9OqQezeaBgkTGdTGeQ==
+
+"@esbuild/freebsd-x64@0.19.2":
+ version "0.19.2"
+ resolved "https://registry.yarnpkg.com/@esbuild/freebsd-x64/-/freebsd-x64-0.19.2.tgz#01b96604f2540db023c73809bb8ae6cd1692d6f3"
+ integrity sha512-nSO5uZT2clM6hosjWHAsS15hLrwCvIWx+b2e3lZ3MwbYSaXwvfO528OF+dLjas1g3bZonciivI8qKR/Hm7IWGw==
+
+"@esbuild/linux-arm64@0.19.2":
+ version "0.19.2"
+ resolved "https://registry.yarnpkg.com/@esbuild/linux-arm64/-/linux-arm64-0.19.2.tgz#7e5d2c7864c5c83ec789b59c77cd9c20d2594916"
+ integrity sha512-ig2P7GeG//zWlU0AggA3pV1h5gdix0MA3wgB+NsnBXViwiGgY77fuN9Wr5uoCrs2YzaYfogXgsWZbm+HGr09xg==
+
+"@esbuild/linux-arm@0.19.2":
+ version "0.19.2"
+ resolved "https://registry.yarnpkg.com/@esbuild/linux-arm/-/linux-arm-0.19.2.tgz#c32ae97bc0246664a1cfbdb4a98e7b006d7db8ae"
+ integrity sha512-Odalh8hICg7SOD7XCj0YLpYCEc+6mkoq63UnExDCiRA2wXEmGlK5JVrW50vZR9Qz4qkvqnHcpH+OFEggO3PgTg==
+
+"@esbuild/linux-ia32@0.19.2":
+ version "0.19.2"
+ resolved "https://registry.yarnpkg.com/@esbuild/linux-ia32/-/linux-ia32-0.19.2.tgz#3fc4f0fa026057fe885e4a180b3956e704f1ceaa"
+ integrity sha512-mLfp0ziRPOLSTek0Gd9T5B8AtzKAkoZE70fneiiyPlSnUKKI4lp+mGEnQXcQEHLJAcIYDPSyBvsUbKUG2ri/XQ==
+
+"@esbuild/linux-loong64@0.19.2":
+ version "0.19.2"
+ resolved "https://registry.yarnpkg.com/@esbuild/linux-loong64/-/linux-loong64-0.19.2.tgz#633bcaea443f3505fb0ed109ab840c99ad3451a4"
+ integrity sha512-hn28+JNDTxxCpnYjdDYVMNTR3SKavyLlCHHkufHV91fkewpIyQchS1d8wSbmXhs1fiYDpNww8KTFlJ1dHsxeSw==
+
+"@esbuild/linux-mips64el@0.19.2":
+ version "0.19.2"
+ resolved "https://registry.yarnpkg.com/@esbuild/linux-mips64el/-/linux-mips64el-0.19.2.tgz#e0bff2898c46f52be7d4dbbcca8b887890805823"
+ integrity sha512-KbXaC0Sejt7vD2fEgPoIKb6nxkfYW9OmFUK9XQE4//PvGIxNIfPk1NmlHmMg6f25x57rpmEFrn1OotASYIAaTg==
+
+"@esbuild/linux-ppc64@0.19.2":
+ version "0.19.2"
+ resolved "https://registry.yarnpkg.com/@esbuild/linux-ppc64/-/linux-ppc64-0.19.2.tgz#d75798da391f54a9674f8c143b9a52d1dbfbfdde"
+ integrity sha512-dJ0kE8KTqbiHtA3Fc/zn7lCd7pqVr4JcT0JqOnbj4LLzYnp+7h8Qi4yjfq42ZlHfhOCM42rBh0EwHYLL6LEzcw==
+
+"@esbuild/linux-riscv64@0.19.2":
+ version "0.19.2"
+ resolved "https://registry.yarnpkg.com/@esbuild/linux-riscv64/-/linux-riscv64-0.19.2.tgz#012409bd489ed1bb9b775541d4a46c5ded8e6dd8"
+ integrity sha512-7Z/jKNFufZ/bbu4INqqCN6DDlrmOTmdw6D0gH+6Y7auok2r02Ur661qPuXidPOJ+FSgbEeQnnAGgsVynfLuOEw==
+
+"@esbuild/linux-s390x@0.19.2":
+ version "0.19.2"
+ resolved "https://registry.yarnpkg.com/@esbuild/linux-s390x/-/linux-s390x-0.19.2.tgz#ece3ed75c5a150de8a5c110f02e97d315761626b"
+ integrity sha512-U+RinR6aXXABFCcAY4gSlv4CL1oOVvSSCdseQmGO66H+XyuQGZIUdhG56SZaDJQcLmrSfRmx5XZOWyCJPRqS7g==
+
+"@esbuild/linux-x64@0.19.2":
+ version "0.19.2"
+ resolved "https://registry.yarnpkg.com/@esbuild/linux-x64/-/linux-x64-0.19.2.tgz#dea187019741602d57aaf189a80abba261fbd2aa"
+ integrity sha512-oxzHTEv6VPm3XXNaHPyUTTte+3wGv7qVQtqaZCrgstI16gCuhNOtBXLEBkBREP57YTd68P0VgDgG73jSD8bwXQ==
+
+"@esbuild/netbsd-x64@0.19.2":
+ version "0.19.2"
+ resolved "https://registry.yarnpkg.com/@esbuild/netbsd-x64/-/netbsd-x64-0.19.2.tgz#bbfd7cf9ab236a23ee3a41b26f0628c57623d92a"
+ integrity sha512-WNa5zZk1XpTTwMDompZmvQLHszDDDN7lYjEHCUmAGB83Bgs20EMs7ICD+oKeT6xt4phV4NDdSi/8OfjPbSbZfQ==
+
+"@esbuild/openbsd-x64@0.19.2":
+ version "0.19.2"
+ resolved "https://registry.yarnpkg.com/@esbuild/openbsd-x64/-/openbsd-x64-0.19.2.tgz#fa5c4c6ee52a360618f00053652e2902e1d7b4a7"
+ integrity sha512-S6kI1aT3S++Dedb7vxIuUOb3oAxqxk2Rh5rOXOTYnzN8JzW1VzBd+IqPiSpgitu45042SYD3HCoEyhLKQcDFDw==
+
+"@esbuild/sunos-x64@0.19.2":
+ version "0.19.2"
+ resolved "https://registry.yarnpkg.com/@esbuild/sunos-x64/-/sunos-x64-0.19.2.tgz#52a2ac8ac6284c02d25df22bb4cfde26fbddd68d"
+ integrity sha512-VXSSMsmb+Z8LbsQGcBMiM+fYObDNRm8p7tkUDMPG/g4fhFX5DEFmjxIEa3N8Zr96SjsJ1woAhF0DUnS3MF3ARw==
+
+"@esbuild/win32-arm64@0.19.2":
+ version "0.19.2"
+ resolved "https://registry.yarnpkg.com/@esbuild/win32-arm64/-/win32-arm64-0.19.2.tgz#719ed5870855de8537aef8149694a97d03486804"
+ integrity sha512-5NayUlSAyb5PQYFAU9x3bHdsqB88RC3aM9lKDAz4X1mo/EchMIT1Q+pSeBXNgkfNmRecLXA0O8xP+x8V+g/LKg==
+
+"@esbuild/win32-ia32@0.19.2":
+ version "0.19.2"
+ resolved "https://registry.yarnpkg.com/@esbuild/win32-ia32/-/win32-ia32-0.19.2.tgz#24832223880b0f581962c8660f8fb8797a1e046a"
+ integrity sha512-47gL/ek1v36iN0wL9L4Q2MFdujR0poLZMJwhO2/N3gA89jgHp4MR8DKCmwYtGNksbfJb9JoTtbkoe6sDhg2QTA==
+
+"@esbuild/win32-x64@0.19.2":
+ version "0.19.2"
+ resolved "https://registry.yarnpkg.com/@esbuild/win32-x64/-/win32-x64-0.19.2.tgz#1205014625790c7ff0e471644a878a65d1e34ab0"
+ integrity sha512-tcuhV7ncXBqbt/Ybf0IyrMcwVOAPDckMK9rXNHtF17UTK18OKLpg08glminN06pt2WCoALhXdLfSPbVvK/6fxw==
+
+"@honeybadger-io/core@^6.2.0":
+ version "6.2.0"
+ resolved "https://registry.yarnpkg.com/@honeybadger-io/core/-/core-6.2.0.tgz#47f0e833290d0c2705b8ed1a9119eda214d7ea7a"
+ integrity sha512-3j3b0uDs5ZW/8r22dozLLAVKSwMoyGD/YzMRRJ/cOTJD9ch3duJ2FrfJRD1VaSZ9nK26c7NBYU9Nlra4apEw5g==
dependencies:
stacktrace-parser "^0.1.10"
-"@honeybadger-io/js@6.3.0":
- version "6.3.0"
- resolved "https://registry.yarnpkg.com/@honeybadger-io/js/-/js-6.3.0.tgz#a004db4faf67d0761a45847b4af9adcb0e15230f"
- integrity sha512-JPzLEsmolL+1miZQGTgMzpCGTBmg5iRif4Hw90q2J29u8F/s+k4nkq80Ah6KkAjQqckIi5EV6DICYXVLdpdAog==
+"@honeybadger-io/js@6.4.0":
+ version "6.4.0"
+ resolved "https://registry.yarnpkg.com/@honeybadger-io/js/-/js-6.4.0.tgz#75809ddeb8fb801585c8a58bef95cd46fd84218b"
+ integrity sha512-WrMBAlW3FzqMeFE3dO0HMJ5BvWi0rVcjnvXfxxEgAJq3dpCFD6XXx0yvI9rQv37Nt7GiPBVVPUF0UhfUFONyKA==
dependencies:
- "@honeybadger-io/core" "^6.1.0"
+ "@honeybadger-io/core" "^6.2.0"
"@types/aws-lambda" "^8.10.89"
"@types/express" "^4.17.13"
-"@hotwired/stimulus@3.2.1":
- version "3.2.1"
- resolved "https://registry.yarnpkg.com/@hotwired/stimulus/-/stimulus-3.2.1.tgz#e3de23623b0c52c247aba4cd5d530d257008676b"
- integrity sha512-HGlzDcf9vv/EQrMJ5ZG6VWNs8Z/xMN+1o2OhV1gKiSG6CqZt5MCBB1gRg5ILiN3U0jEAxuDTNPRfBcnZBDmupQ==
+"@hotwired/stimulus@3.2.2":
+ version "3.2.2"
+ resolved "https://registry.yarnpkg.com/@hotwired/stimulus/-/stimulus-3.2.2.tgz#071aab59c600fed95b97939e605ff261a4251608"
+ integrity sha512-eGeIqNOQpXoPAIP7tC1+1Yc1yl1xnwYqg+3mzqxyrbE5pg5YFBZcA6YoTiByJB6DKAEsiWtl6tjTJS4IYtbB7A==
"@hotwired/turbo-rails@7.3.0":
version "7.3.0"
@@ -231,10 +231,10 @@
resolved "https://registry.yarnpkg.com/@rails/actioncable/-/actioncable-7.0.6.tgz#60765c8e9c357a0ba0840fb1e409caedc233ea0d"
integrity sha512-ybBsUrIsu5geM8BtqnpM7ZA9D8uzSz+e1B4JR57NaCmasHKWap6AX5DT7NHIbp21opVet1qqoVSdsoLDqXeB2A==
-"@rails/actiontext@7.0.6":
- version "7.0.6"
- resolved "https://registry.yarnpkg.com/@rails/actiontext/-/actiontext-7.0.6.tgz#42b2b275ce6b24031242c731828de9c02d58b53f"
- integrity sha512-WHHkYmypUjlo6fvNxfKRluuHmIxZCEoK+g/hBsufoxvjvWSBx61qu0Xq0tCrGUYd4mUZ/kk8OqP96/UBI3vS/w==
+"@rails/actiontext@7.0.7":
+ version "7.0.7"
+ resolved "https://registry.yarnpkg.com/@rails/actiontext/-/actiontext-7.0.7.tgz#d80ba902aa48c0fe55728d7f3e8f7f0cab926cc6"
+ integrity sha512-2huBCSCdROtu3ouu/anTBEs+hvXKQYZ+gGpE3/DCx9Dg/xWRAI3doEHfF7A8uJhokQZrc0ZDOS8zhwwuh1dNzg==
dependencies:
"@rails/activestorage" ">= 7.0.0-alpha1"
@@ -365,13 +365,13 @@ arg@^5.0.2:
resolved "https://registry.yarnpkg.com/arg/-/arg-5.0.2.tgz#c81433cc427c92c4dcf4865142dbca6f15acd59c"
integrity sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==
-autoprefixer@10.4.14:
- version "10.4.14"
- resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-10.4.14.tgz#e28d49902f8e759dd25b153264e862df2705f79d"
- integrity sha512-FQzyfOsTlwVzjHxKEqRIAdJx9niO6VCBCoEwax/VLSoQF29ggECcPuBqUMZ+u8jCZOPSy8b8/8KnuFbp0SaFZQ==
+autoprefixer@10.4.15:
+ version "10.4.15"
+ resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-10.4.15.tgz#a1230f4aeb3636b89120b34a1f513e2f6834d530"
+ integrity sha512-KCuPB8ZCIqFdA4HwKXsvz7j6gvSDNhDP7WnUjBleRkKjPdvCmHFuQ77ocavI8FT6NdvlBnE2UFr2H4Mycn8Vew==
dependencies:
- browserslist "^4.21.5"
- caniuse-lite "^1.0.30001464"
+ browserslist "^4.21.10"
+ caniuse-lite "^1.0.30001520"
fraction.js "^4.2.0"
normalize-range "^0.1.2"
picocolors "^1.0.0"
@@ -402,14 +402,14 @@ braces@^3.0.2, braces@~3.0.2:
dependencies:
fill-range "^7.0.1"
-browserslist@^4.21.5:
- version "4.21.9"
- resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.21.9.tgz#e11bdd3c313d7e2a9e87e8b4b0c7872b13897635"
- integrity sha512-M0MFoZzbUrRU4KNfCrDLnvyE7gub+peetoTid3TBIqtunaDJyXlwhakT+/VkvSXcfIzFfK/nkCs4nmyTmxdNSg==
+browserslist@^4.21.10:
+ version "4.21.10"
+ resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.21.10.tgz#dbbac576628c13d3b2231332cb2ec5a46e015bb0"
+ integrity sha512-bipEBdZfVH5/pwrvqc+Ub0kUPVfGUhlKxbvfD+z1BDnPEO/X98ruXGA1WP5ASpAFKan7Qr6j736IacbZQuAlKQ==
dependencies:
- caniuse-lite "^1.0.30001503"
- electron-to-chromium "^1.4.431"
- node-releases "^2.0.12"
+ caniuse-lite "^1.0.30001517"
+ electron-to-chromium "^1.4.477"
+ node-releases "^2.0.13"
update-browserslist-db "^1.0.11"
camelcase-css@^2.0.1:
@@ -417,10 +417,10 @@ camelcase-css@^2.0.1:
resolved "https://registry.yarnpkg.com/camelcase-css/-/camelcase-css-2.0.1.tgz#ee978f6947914cc30c6b44741b6ed1df7f043fd5"
integrity sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==
-caniuse-lite@^1.0.30001464, caniuse-lite@^1.0.30001503:
- version "1.0.30001515"
- resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001515.tgz#418aefeed9d024cd3129bfae0ccc782d4cb8f12b"
- integrity sha512-eEFDwUOZbE24sb+Ecsx3+OvNETqjWIdabMy52oOkIgcUtAsQifjUG9q4U9dgTHJM2mfk4uEPxc0+xuFdJ629QA==
+caniuse-lite@^1.0.30001517, caniuse-lite@^1.0.30001520:
+ version "1.0.30001521"
+ resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001521.tgz#e9930cf499f7c1e80334b6c1fbca52e00d889e56"
+ integrity sha512-fnx1grfpEOvDGH+V17eccmNjucGUnCbP6KL+l5KqBIerp26WK/+RQ7CIDE37KGJjaPyqWXXlFUyKiWmvdNNKmQ==
chart.js@4:
version "4.3.0"
@@ -429,10 +429,10 @@ chart.js@4:
dependencies:
"@kurkle/color" "^0.3.0"
-chart.js@4.3.2:
- version "4.3.2"
- resolved "https://registry.yarnpkg.com/chart.js/-/chart.js-4.3.2.tgz#904ebe0376eb368a659a92d2050df47336847e4c"
- integrity sha512-pvQNyFOY1QmbmIr8oDORL16/FFivfxj8V26VFpFilMo4cNvkV5WXLJetDio365pd9gKUHGdirUTbqJfw8tr+Dg==
+chart.js@4.3.3:
+ version "4.3.3"
+ resolved "https://registry.yarnpkg.com/chart.js/-/chart.js-4.3.3.tgz#dcd98afadf9fcfa5219e72ace5912092ea48fd36"
+ integrity sha512-aTk7pBw+x6sQYhon/NR3ikfUJuym/LdgpTlgZRe2PaEhjUMKBKyNaFCMVRAyTEWYFNO7qRu7iQVqOw/OqzxZxQ==
dependencies:
"@kurkle/color" "^0.3.0"
@@ -502,38 +502,38 @@ dlv@^1.1.3:
resolved "https://registry.yarnpkg.com/dlv/-/dlv-1.1.3.tgz#5c198a8a11453596e751494d49874bc7732f2e79"
integrity sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==
-electron-to-chromium@^1.4.431:
- version "1.4.459"
- resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.459.tgz#25a23370f4ae8aaa8f77aaf00133aa4994f4148e"
- integrity sha512-XXRS5NFv8nCrBL74Rm3qhJjA2VCsRFx0OjHKBMPI0otij56aun8UWiKTDABmd5/7GTR021pA4wivs+Ri6XCElg==
+electron-to-chromium@^1.4.477:
+ version "1.4.492"
+ resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.492.tgz#83fed8beb64ec60578069e15dddd17b13a77ca56"
+ integrity sha512-36K9b/6skMVwAIEsC7GiQ8I8N3soCALVSHqWHzNDtGemAcI9Xu8hP02cywWM0A794rTHm0b0zHPeLJHtgFVamQ==
-esbuild@0.18.6:
- version "0.18.6"
- resolved "https://registry.yarnpkg.com/esbuild/-/esbuild-0.18.6.tgz#c779d5c6cffab264bd3b95e71354536037435700"
- integrity sha512-5QgxWaAhU/tPBpvkxUmnFv2YINHuZzjbk0LeUUnC2i3aJHjfi5yR49lgKgF7cb98bclOp/kans8M5TGbGFfJlQ==
+esbuild@0.19.2:
+ version "0.19.2"
+ resolved "https://registry.yarnpkg.com/esbuild/-/esbuild-0.19.2.tgz#b1541828a89dfb6f840d38538767c6130dca2aac"
+ integrity sha512-G6hPax8UbFakEj3hWO0Vs52LQ8k3lnBhxZWomUJDxfz3rZTLqF5k/FCzuNdLx2RbpBiQQF9H9onlDDH1lZsnjg==
optionalDependencies:
- "@esbuild/android-arm" "0.18.6"
- "@esbuild/android-arm64" "0.18.6"
- "@esbuild/android-x64" "0.18.6"
- "@esbuild/darwin-arm64" "0.18.6"
- "@esbuild/darwin-x64" "0.18.6"
- "@esbuild/freebsd-arm64" "0.18.6"
- "@esbuild/freebsd-x64" "0.18.6"
- "@esbuild/linux-arm" "0.18.6"
- "@esbuild/linux-arm64" "0.18.6"
- "@esbuild/linux-ia32" "0.18.6"
- "@esbuild/linux-loong64" "0.18.6"
- "@esbuild/linux-mips64el" "0.18.6"
- "@esbuild/linux-ppc64" "0.18.6"
- "@esbuild/linux-riscv64" "0.18.6"
- "@esbuild/linux-s390x" "0.18.6"
- "@esbuild/linux-x64" "0.18.6"
- "@esbuild/netbsd-x64" "0.18.6"
- "@esbuild/openbsd-x64" "0.18.6"
- "@esbuild/sunos-x64" "0.18.6"
- "@esbuild/win32-arm64" "0.18.6"
- "@esbuild/win32-ia32" "0.18.6"
- "@esbuild/win32-x64" "0.18.6"
+ "@esbuild/android-arm" "0.19.2"
+ "@esbuild/android-arm64" "0.19.2"
+ "@esbuild/android-x64" "0.19.2"
+ "@esbuild/darwin-arm64" "0.19.2"
+ "@esbuild/darwin-x64" "0.19.2"
+ "@esbuild/freebsd-arm64" "0.19.2"
+ "@esbuild/freebsd-x64" "0.19.2"
+ "@esbuild/linux-arm" "0.19.2"
+ "@esbuild/linux-arm64" "0.19.2"
+ "@esbuild/linux-ia32" "0.19.2"
+ "@esbuild/linux-loong64" "0.19.2"
+ "@esbuild/linux-mips64el" "0.19.2"
+ "@esbuild/linux-ppc64" "0.19.2"
+ "@esbuild/linux-riscv64" "0.19.2"
+ "@esbuild/linux-s390x" "0.19.2"
+ "@esbuild/linux-x64" "0.19.2"
+ "@esbuild/netbsd-x64" "0.19.2"
+ "@esbuild/openbsd-x64" "0.19.2"
+ "@esbuild/sunos-x64" "0.19.2"
+ "@esbuild/win32-arm64" "0.19.2"
+ "@esbuild/win32-ia32" "0.19.2"
+ "@esbuild/win32-x64" "0.19.2"
escalade@^3.1.1:
version "3.1.1"
@@ -759,7 +759,7 @@ nanoid@^3.3.6:
resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.6.tgz#443380c856d6e9f9824267d960b4236ad583ea4c"
integrity sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==
-node-releases@^2.0.12:
+node-releases@^2.0.13:
version "2.0.13"
resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.13.tgz#d5ed1627c23e3461e819b02e57b75e4899b1c81d"
integrity sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==
@@ -873,10 +873,10 @@ postcss-value-parser@^4.0.0, postcss-value-parser@^4.2.0:
resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz#723c09920836ba6d3e5af019f92bc0971c02e514"
integrity sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==
-postcss@8.4.24:
- version "8.4.24"
- resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.24.tgz#f714dba9b2284be3cc07dbd2fc57ee4dc972d2df"
- integrity sha512-M0RzbcI0sO/XJNucsGjvWU9ERWxb/ytp1w6dKtxTKgixdtQDq4rmx/g8W1hnaheq9jgwL/oyEdH5Bc4WwJKMqg==
+postcss@8.4.28:
+ version "8.4.28"
+ resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.28.tgz#c6cc681ed00109072816e1557f889ef51cf950a5"
+ integrity sha512-Z7V5j0cq8oEKyejIKfpD8b4eBy9cwW2JWPk0+fB1HOAMsfHbnAXLLS+PfVWlzMSLQaWttKDt607I0XHmpE67Vw==
dependencies:
nanoid "^3.3.6"
picocolors "^1.0.0"
| |