simple_teams 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (98) hide show
  1. checksums.yaml +7 -0
  2. data/MIT-LICENSE +20 -0
  3. data/README.md +28 -0
  4. data/Rakefile +8 -0
  5. data/app/assets/config/simple_teams_manifest.js +1 -0
  6. data/app/assets/stylesheets/simple_teams/application.css +15 -0
  7. data/app/controllers/simple_teams/accept_invitations_controller.rb +57 -0
  8. data/app/controllers/simple_teams/admin/invitations_controller.rb +60 -0
  9. data/app/controllers/simple_teams/admin/memberships_controller.rb +60 -0
  10. data/app/controllers/simple_teams/admin/teams_controller.rb +60 -0
  11. data/app/controllers/simple_teams/application_controller.rb +13 -0
  12. data/app/controllers/simple_teams/invitations_controller.rb +96 -0
  13. data/app/controllers/simple_teams/leave_teams_controller.rb +25 -0
  14. data/app/controllers/simple_teams/memberships_controller.rb +61 -0
  15. data/app/controllers/simple_teams/related_members_controller.rb +33 -0
  16. data/app/controllers/simple_teams/teams_controller.rb +19 -0
  17. data/app/forms/simple_teams/invitation_form.rb +77 -0
  18. data/app/forms/simple_teams/invitation_forms/create.rb +24 -0
  19. data/app/forms/simple_teams/invitation_forms/create_bulk.rb +125 -0
  20. data/app/forms/simple_teams/invitation_forms/create_combo.rb +75 -0
  21. data/app/forms/simple_teams/invitation_forms/update.rb +29 -0
  22. data/app/forms/simple_teams/membership_form.rb +91 -0
  23. data/app/helpers/simple_teams/application_helper.rb +4 -0
  24. data/app/helpers/simple_teams/invitations_helper.rb +4 -0
  25. data/app/helpers/simple_teams/memberships_helper.rb +4 -0
  26. data/app/helpers/simple_teams/teams_helper.rb +4 -0
  27. data/app/jobs/simple_teams/application_job.rb +4 -0
  28. data/app/mailers/simple_teams/application_mailer.rb +6 -0
  29. data/app/mailers/simple_teams/mailer.rb +17 -0
  30. data/app/models/concerns/simple_teams/member_object.rb +22 -0
  31. data/app/models/concerns/simple_teams/team_object.rb +23 -0
  32. data/app/models/simple_teams/ability.rb +34 -0
  33. data/app/models/simple_teams/application_record.rb +5 -0
  34. data/app/models/simple_teams/invitation.rb +85 -0
  35. data/app/models/simple_teams/membership.rb +16 -0
  36. data/app/models/simple_teams/team.rb +23 -0
  37. data/app/notifications/application_notification.rb +4 -0
  38. data/app/notifications/simple_teams/bulk_invitations_notification.rb +51 -0
  39. data/app/notifications/simple_teams/invitation_notification.rb +54 -0
  40. data/app/notifications/simple_teams/invitations/accepted_notification.rb +13 -0
  41. data/app/notifications/simple_teams/invitations/created_notification.rb +13 -0
  42. data/app/notifications/simple_teams/invitations/destroyed_notification.rb +13 -0
  43. data/app/notifications/simple_teams/invitations/updated_notification.rb +13 -0
  44. data/app/notifications/simple_teams/membership_notification.rb +58 -0
  45. data/app/notifications/simple_teams/memberships/destroyed_notification.rb +13 -0
  46. data/app/notifications/simple_teams/memberships/left_notification.rb +17 -0
  47. data/app/notifications/simple_teams/memberships/updated_notification.rb +17 -0
  48. data/app/service_objects/simple_teams/accept_invitation_service.rb +61 -0
  49. data/app/service_objects/simple_teams/initialize_team_service.rb +25 -0
  50. data/app/service_objects/simple_teams/leave_team_service.rb +56 -0
  51. data/app/views/layouts/simple_teams/application.html.erb +20 -0
  52. data/app/views/simple_teams/_roles_field.html.erb +22 -0
  53. data/app/views/simple_teams/accept_invitations/invalid_token.html.erb +7 -0
  54. data/app/views/simple_teams/accept_invitations/new.html.erb +18 -0
  55. data/app/views/simple_teams/admin/invitations/_form.html.erb +62 -0
  56. data/app/views/simple_teams/admin/invitations/_invitation.html.erb +47 -0
  57. data/app/views/simple_teams/admin/invitations/edit.html.erb +10 -0
  58. data/app/views/simple_teams/admin/invitations/index.html.erb +14 -0
  59. data/app/views/simple_teams/admin/invitations/new.html.erb +9 -0
  60. data/app/views/simple_teams/admin/invitations/show.html.erb +10 -0
  61. data/app/views/simple_teams/admin/memberships/_form.html.erb +32 -0
  62. data/app/views/simple_teams/admin/memberships/_membership.html.erb +17 -0
  63. data/app/views/simple_teams/admin/memberships/edit.html.erb +10 -0
  64. data/app/views/simple_teams/admin/memberships/index.html.erb +14 -0
  65. data/app/views/simple_teams/admin/memberships/new.html.erb +9 -0
  66. data/app/views/simple_teams/admin/memberships/show.html.erb +10 -0
  67. data/app/views/simple_teams/admin/teams/_form.html.erb +22 -0
  68. data/app/views/simple_teams/admin/teams/_team.html.erb +7 -0
  69. data/app/views/simple_teams/admin/teams/edit.html.erb +10 -0
  70. data/app/views/simple_teams/admin/teams/index.html.erb +14 -0
  71. data/app/views/simple_teams/admin/teams/new.html.erb +9 -0
  72. data/app/views/simple_teams/admin/teams/show.html.erb +10 -0
  73. data/app/views/simple_teams/invitations/_bulk_form.html.erb +63 -0
  74. data/app/views/simple_teams/invitations/_form.html.erb +15 -0
  75. data/app/views/simple_teams/invitations/_invitation.html.erb +19 -0
  76. data/app/views/simple_teams/invitations/_invitation.json.jbuilder +2 -0
  77. data/app/views/simple_teams/invitations/edit.html.erb +12 -0
  78. data/app/views/simple_teams/invitations/new.html.erb +12 -0
  79. data/app/views/simple_teams/leave_teams/edit.html.erb +2 -0
  80. data/app/views/simple_teams/memberships/_form.html.erb +12 -0
  81. data/app/views/simple_teams/memberships/_membership.html.erb +23 -0
  82. data/app/views/simple_teams/memberships/edit.html.erb +12 -0
  83. data/app/views/simple_teams/related_members/index.json.jbuilder +5 -0
  84. data/app/views/simple_teams/related_members/select2.json.jbuilder +6 -0
  85. data/app/views/simple_teams/teams/_add_member_link.html.erb +3 -0
  86. data/app/views/simple_teams/teams/_members_table.html.erb +20 -0
  87. data/app/views/simple_teams/teams/show.html.erb +38 -0
  88. data/app/views/simple_teams/teams_mailer/invitation_notification.html.erb +9 -0
  89. data/config/locales/simple_teams.en.yml +18 -0
  90. data/config/routes.rb +21 -0
  91. data/db/migrate/20240311052758_create_simple_teams_teams.rb +9 -0
  92. data/db/migrate/20240311053006_create_simple_teams_memberships.rb +11 -0
  93. data/db/migrate/20240311053607_create_simple_teams_invitations.rb +17 -0
  94. data/lib/simple_teams/engine.rb +22 -0
  95. data/lib/simple_teams/version.rb +3 -0
  96. data/lib/simple_teams.rb +6 -0
  97. data/lib/tasks/simple_teams_tasks.rake +4 -0
  98. metadata +160 -0
metadata ADDED
@@ -0,0 +1,160 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: simple_teams
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - Laney Stroup
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2024-03-11 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: rails
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: 7.0.7.2
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: 7.0.7.2
27
+ description: SimpleTeams is an all-in-one solution for implementing teams quickly
28
+ in a Ruby on Rails (RoR) application. It follows best practices, using the Rails
29
+ Engine design pattern for easy configurability, CanCan for authorization, and polymorphic
30
+ association (like ActiveStorage) to avoid dictating model names.
31
+ email:
32
+ - laney@stroupsolutions.com
33
+ executables: []
34
+ extensions: []
35
+ extra_rdoc_files: []
36
+ files:
37
+ - MIT-LICENSE
38
+ - README.md
39
+ - Rakefile
40
+ - app/assets/config/simple_teams_manifest.js
41
+ - app/assets/stylesheets/simple_teams/application.css
42
+ - app/controllers/simple_teams/accept_invitations_controller.rb
43
+ - app/controllers/simple_teams/admin/invitations_controller.rb
44
+ - app/controllers/simple_teams/admin/memberships_controller.rb
45
+ - app/controllers/simple_teams/admin/teams_controller.rb
46
+ - app/controllers/simple_teams/application_controller.rb
47
+ - app/controllers/simple_teams/invitations_controller.rb
48
+ - app/controllers/simple_teams/leave_teams_controller.rb
49
+ - app/controllers/simple_teams/memberships_controller.rb
50
+ - app/controllers/simple_teams/related_members_controller.rb
51
+ - app/controllers/simple_teams/teams_controller.rb
52
+ - app/forms/simple_teams/invitation_form.rb
53
+ - app/forms/simple_teams/invitation_forms/create.rb
54
+ - app/forms/simple_teams/invitation_forms/create_bulk.rb
55
+ - app/forms/simple_teams/invitation_forms/create_combo.rb
56
+ - app/forms/simple_teams/invitation_forms/update.rb
57
+ - app/forms/simple_teams/membership_form.rb
58
+ - app/helpers/simple_teams/application_helper.rb
59
+ - app/helpers/simple_teams/invitations_helper.rb
60
+ - app/helpers/simple_teams/memberships_helper.rb
61
+ - app/helpers/simple_teams/teams_helper.rb
62
+ - app/jobs/simple_teams/application_job.rb
63
+ - app/mailers/simple_teams/application_mailer.rb
64
+ - app/mailers/simple_teams/mailer.rb
65
+ - app/models/concerns/simple_teams/member_object.rb
66
+ - app/models/concerns/simple_teams/team_object.rb
67
+ - app/models/simple_teams/ability.rb
68
+ - app/models/simple_teams/application_record.rb
69
+ - app/models/simple_teams/invitation.rb
70
+ - app/models/simple_teams/membership.rb
71
+ - app/models/simple_teams/team.rb
72
+ - app/notifications/application_notification.rb
73
+ - app/notifications/simple_teams/bulk_invitations_notification.rb
74
+ - app/notifications/simple_teams/invitation_notification.rb
75
+ - app/notifications/simple_teams/invitations/accepted_notification.rb
76
+ - app/notifications/simple_teams/invitations/created_notification.rb
77
+ - app/notifications/simple_teams/invitations/destroyed_notification.rb
78
+ - app/notifications/simple_teams/invitations/updated_notification.rb
79
+ - app/notifications/simple_teams/membership_notification.rb
80
+ - app/notifications/simple_teams/memberships/destroyed_notification.rb
81
+ - app/notifications/simple_teams/memberships/left_notification.rb
82
+ - app/notifications/simple_teams/memberships/updated_notification.rb
83
+ - app/service_objects/simple_teams/accept_invitation_service.rb
84
+ - app/service_objects/simple_teams/initialize_team_service.rb
85
+ - app/service_objects/simple_teams/leave_team_service.rb
86
+ - app/views/layouts/simple_teams/application.html.erb
87
+ - app/views/simple_teams/_roles_field.html.erb
88
+ - app/views/simple_teams/accept_invitations/invalid_token.html.erb
89
+ - app/views/simple_teams/accept_invitations/new.html.erb
90
+ - app/views/simple_teams/admin/invitations/_form.html.erb
91
+ - app/views/simple_teams/admin/invitations/_invitation.html.erb
92
+ - app/views/simple_teams/admin/invitations/edit.html.erb
93
+ - app/views/simple_teams/admin/invitations/index.html.erb
94
+ - app/views/simple_teams/admin/invitations/new.html.erb
95
+ - app/views/simple_teams/admin/invitations/show.html.erb
96
+ - app/views/simple_teams/admin/memberships/_form.html.erb
97
+ - app/views/simple_teams/admin/memberships/_membership.html.erb
98
+ - app/views/simple_teams/admin/memberships/edit.html.erb
99
+ - app/views/simple_teams/admin/memberships/index.html.erb
100
+ - app/views/simple_teams/admin/memberships/new.html.erb
101
+ - app/views/simple_teams/admin/memberships/show.html.erb
102
+ - app/views/simple_teams/admin/teams/_form.html.erb
103
+ - app/views/simple_teams/admin/teams/_team.html.erb
104
+ - app/views/simple_teams/admin/teams/edit.html.erb
105
+ - app/views/simple_teams/admin/teams/index.html.erb
106
+ - app/views/simple_teams/admin/teams/new.html.erb
107
+ - app/views/simple_teams/admin/teams/show.html.erb
108
+ - app/views/simple_teams/invitations/_bulk_form.html.erb
109
+ - app/views/simple_teams/invitations/_form.html.erb
110
+ - app/views/simple_teams/invitations/_invitation.html.erb
111
+ - app/views/simple_teams/invitations/_invitation.json.jbuilder
112
+ - app/views/simple_teams/invitations/edit.html.erb
113
+ - app/views/simple_teams/invitations/new.html.erb
114
+ - app/views/simple_teams/leave_teams/edit.html.erb
115
+ - app/views/simple_teams/memberships/_form.html.erb
116
+ - app/views/simple_teams/memberships/_membership.html.erb
117
+ - app/views/simple_teams/memberships/edit.html.erb
118
+ - app/views/simple_teams/related_members/index.json.jbuilder
119
+ - app/views/simple_teams/related_members/select2.json.jbuilder
120
+ - app/views/simple_teams/teams/_add_member_link.html.erb
121
+ - app/views/simple_teams/teams/_members_table.html.erb
122
+ - app/views/simple_teams/teams/show.html.erb
123
+ - app/views/simple_teams/teams_mailer/invitation_notification.html.erb
124
+ - config/locales/simple_teams.en.yml
125
+ - config/routes.rb
126
+ - db/migrate/20240311052758_create_simple_teams_teams.rb
127
+ - db/migrate/20240311053006_create_simple_teams_memberships.rb
128
+ - db/migrate/20240311053607_create_simple_teams_invitations.rb
129
+ - lib/simple_teams.rb
130
+ - lib/simple_teams/engine.rb
131
+ - lib/simple_teams/version.rb
132
+ - lib/tasks/simple_teams_tasks.rake
133
+ homepage: https://github.com/laneystroup/simple_teams
134
+ licenses:
135
+ - MIT
136
+ metadata:
137
+ allowed_push_host: https://rubygems.org
138
+ homepage_uri: https://github.com/laneystroup/simple_teams
139
+ source_code_uri: https://github.com/laneystroup/simple_teams
140
+ changelog_uri: https://github.com/laneystroup/simple_teams/CHANGELOG.md
141
+ post_install_message:
142
+ rdoc_options: []
143
+ require_paths:
144
+ - lib
145
+ required_ruby_version: !ruby/object:Gem::Requirement
146
+ requirements:
147
+ - - ">="
148
+ - !ruby/object:Gem::Version
149
+ version: '0'
150
+ required_rubygems_version: !ruby/object:Gem::Requirement
151
+ requirements:
152
+ - - ">="
153
+ - !ruby/object:Gem::Version
154
+ version: '0'
155
+ requirements: []
156
+ rubygems_version: 3.3.26
157
+ signing_key:
158
+ specification_version: 4
159
+ summary: A simple gem for adding teams to a Ruby on Rails application
160
+ test_files: []