organizations 0.5.0 → 0.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (67) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +2 -0
  3. data/.rubocop_todo.yml +7 -0
  4. data/.simplecov +17 -10
  5. data/Appraisals +2 -0
  6. data/CHANGELOG.md +112 -0
  7. data/README.md +714 -32
  8. data/app/controllers/organizations/invitations_controller.rb +27 -22
  9. data/app/controllers/organizations/memberships_controller.rb +37 -30
  10. data/app/controllers/organizations/organizations_controller.rb +8 -8
  11. data/app/controllers/organizations/public_invitations_controller.rb +1 -1
  12. data/app/mailers/organizations/invitation_mailer.rb +2 -2
  13. data/app/mailers/organizations/verification_mailer.rb +1 -1
  14. data/app/models/organizations/grant.rb +6 -0
  15. data/app/views/organizations/invitation_mailer/invitation_email.html.erb +11 -11
  16. data/app/views/organizations/invitation_mailer/invitation_email.text.erb +7 -7
  17. data/app/views/organizations/verification_mailer/code_email.html.erb +3 -3
  18. data/app/views/organizations/verification_mailer/code_email.text.erb +3 -3
  19. data/config/locales/en.yml +22 -0
  20. data/config/locales/es.yml +22 -0
  21. data/config/routes.rb +1 -2
  22. data/gemfiles/rails_7.2.gemfile +6 -1
  23. data/gemfiles/rails_8.1.gemfile +5 -1
  24. data/lib/generators/organizations/grants/grants_generator.rb +47 -0
  25. data/lib/generators/organizations/grants/templates/create_organizations_grants.rb.erb +59 -0
  26. data/lib/generators/organizations/install/install_generator.rb +1 -0
  27. data/lib/generators/organizations/install/templates/create_organizations_tables.rb.erb +15 -0
  28. data/lib/generators/organizations/join/join_generator.rb +113 -0
  29. data/lib/generators/organizations/join/templates/app/controllers/organization_access_controller.rb +146 -0
  30. data/lib/generators/organizations/join/templates/app/controllers/organization_joins_controller.rb +93 -0
  31. data/lib/generators/organizations/join/templates/app/views/organization_access/show.html.erb +142 -0
  32. data/lib/generators/organizations/join/templates/app/views/organization_joins/_disclosure.html.erb +8 -0
  33. data/lib/generators/organizations/join/templates/app/views/organization_joins/show.html.erb +113 -0
  34. data/lib/generators/organizations/join/templates/routes.rb +19 -0
  35. data/lib/generators/organizations/upgrade/templates/add_domain_verification.rb.erb +29 -0
  36. data/lib/generators/organizations/upgrade/templates/add_personal_organizations.rb.erb +22 -0
  37. data/lib/generators/organizations/upgrade/upgrade_generator.rb +79 -14
  38. data/lib/generators/organizations/views/templates/organizations/invitations/_form.html.erb +1 -1
  39. data/lib/generators/organizations/views/templates/organizations/invitations/index.html.erb +2 -2
  40. data/lib/generators/organizations/views/templates/organizations/invitations/show.html.erb +1 -1
  41. data/lib/generators/organizations/views/templates/organizations/memberships/index.html.erb +21 -13
  42. data/lib/generators/organizations/views/templates/organizations/organizations/index.html.erb +1 -1
  43. data/lib/generators/organizations/views/templates/organizations/organizations/show.html.erb +3 -3
  44. data/lib/generators/organizations/views/views_generator.rb +4 -6
  45. data/lib/organizations/account_deletion_plan.rb +118 -0
  46. data/lib/organizations/configuration.rb +155 -2
  47. data/lib/organizations/controller_helpers.rb +55 -15
  48. data/lib/organizations/grant_access.rb +75 -0
  49. data/lib/organizations/grant_holder.rb +152 -0
  50. data/lib/organizations/grantable.rb +28 -0
  51. data/lib/organizations/join_flow.rb +16 -12
  52. data/lib/organizations/models/concerns/has_organizations.rb +217 -9
  53. data/lib/organizations/models/domain.rb +283 -1
  54. data/lib/organizations/models/grant.rb +152 -0
  55. data/lib/organizations/models/invitation.rb +79 -8
  56. data/lib/organizations/models/join_request.rb +102 -43
  57. data/lib/organizations/models/membership.rb +96 -15
  58. data/lib/organizations/models/organization.rb +219 -48
  59. data/lib/organizations/organization_scoped.rb +16 -0
  60. data/lib/organizations/personal_owner_backfill.rb +122 -0
  61. data/lib/organizations/public_email_domains.rb +49 -0
  62. data/lib/organizations/resource.rb +11 -0
  63. data/lib/organizations/roles.rb +198 -36
  64. data/lib/organizations/version.rb +1 -1
  65. data/lib/organizations/view_helpers.rb +40 -9
  66. data/lib/organizations.rb +99 -4
  67. metadata +22 -2
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: organizations
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.0
4
+ version: 0.7.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - rameerez
8
8
  bindir: exe
9
9
  cert_chain: []
10
- date: 2026-07-22 00:00:00.000000000 Z
10
+ date: 2026-10-18 00:00:00.000000000 Z
11
11
  dependencies:
12
12
  - !ruby/object:Gem::Dependency
13
13
  name: railties
@@ -101,6 +101,7 @@ files:
101
101
  - app/mailers/organizations/verification_mailer.rb
102
102
  - app/models/organizations/allowlist_entry.rb
103
103
  - app/models/organizations/domain.rb
104
+ - app/models/organizations/grant.rb
104
105
  - app/models/organizations/invitation.rb
105
106
  - app/models/organizations/join_code.rb
106
107
  - app/models/organizations/join_request.rb
@@ -120,9 +121,20 @@ files:
120
121
  - docs/organizations-team-members.webp
121
122
  - gemfiles/rails_7.2.gemfile
122
123
  - gemfiles/rails_8.1.gemfile
124
+ - lib/generators/organizations/grants/grants_generator.rb
125
+ - lib/generators/organizations/grants/templates/create_organizations_grants.rb.erb
123
126
  - lib/generators/organizations/install/install_generator.rb
124
127
  - lib/generators/organizations/install/templates/create_organizations_tables.rb.erb
125
128
  - lib/generators/organizations/install/templates/initializer.rb
129
+ - lib/generators/organizations/join/join_generator.rb
130
+ - lib/generators/organizations/join/templates/app/controllers/organization_access_controller.rb
131
+ - lib/generators/organizations/join/templates/app/controllers/organization_joins_controller.rb
132
+ - lib/generators/organizations/join/templates/app/views/organization_access/show.html.erb
133
+ - lib/generators/organizations/join/templates/app/views/organization_joins/_disclosure.html.erb
134
+ - lib/generators/organizations/join/templates/app/views/organization_joins/show.html.erb
135
+ - lib/generators/organizations/join/templates/routes.rb
136
+ - lib/generators/organizations/upgrade/templates/add_domain_verification.rb.erb
137
+ - lib/generators/organizations/upgrade/templates/add_personal_organizations.rb.erb
126
138
  - lib/generators/organizations/upgrade/templates/add_verified_joining_to_organizations.rb.erb
127
139
  - lib/generators/organizations/upgrade/upgrade_generator.rb
128
140
  - lib/generators/organizations/views/templates/organizations/invitations/_form.html.erb
@@ -137,6 +149,7 @@ files:
137
149
  - lib/generators/organizations/views/templates/organizations/organizations/show.html.erb
138
150
  - lib/generators/organizations/views/views_generator.rb
139
151
  - lib/organizations.rb
152
+ - lib/organizations/account_deletion_plan.rb
140
153
  - lib/organizations/acts_as_tenant_integration.rb
141
154
  - lib/organizations/callback_context.rb
142
155
  - lib/organizations/callbacks.rb
@@ -145,6 +158,9 @@ files:
145
158
  - lib/organizations/current_user_resolution.rb
146
159
  - lib/organizations/email_normalizer.rb
147
160
  - lib/organizations/engine.rb
161
+ - lib/organizations/grant_access.rb
162
+ - lib/organizations/grant_holder.rb
163
+ - lib/organizations/grantable.rb
148
164
  - lib/organizations/invitation_acceptance_failure.rb
149
165
  - lib/organizations/invitation_acceptance_result.rb
150
166
  - lib/organizations/join_flow.rb
@@ -153,12 +169,16 @@ files:
153
169
  - lib/organizations/models/allowlist_entry.rb
154
170
  - lib/organizations/models/concerns/has_organizations.rb
155
171
  - lib/organizations/models/domain.rb
172
+ - lib/organizations/models/grant.rb
156
173
  - lib/organizations/models/invitation.rb
157
174
  - lib/organizations/models/join_code.rb
158
175
  - lib/organizations/models/join_request.rb
159
176
  - lib/organizations/models/membership.rb
160
177
  - lib/organizations/models/organization.rb
161
178
  - lib/organizations/organization_scoped.rb
179
+ - lib/organizations/personal_owner_backfill.rb
180
+ - lib/organizations/public_email_domains.rb
181
+ - lib/organizations/resource.rb
162
182
  - lib/organizations/roles.rb
163
183
  - lib/organizations/test_helpers.rb
164
184
  - lib/organizations/version.rb