super_auth 0.1.5 → 0.2.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 (49) hide show
  1. checksums.yaml +4 -4
  2. data/.ruby-version +1 -1
  3. data/Gemfile +3 -7
  4. data/Gemfile.lock +24 -13
  5. data/LICENSE.txt +125 -21
  6. data/README.md +32 -1
  7. data/Rakefile +0 -2
  8. data/USAGE.md +619 -0
  9. data/VISUALIZATION.md +58 -0
  10. data/app/controllers/super_auth/graph_controller.rb +661 -0
  11. data/app/views/super_auth/graph/index.html.erb +1408 -0
  12. data/config/routes.rb +73 -0
  13. data/db/migrate/1_users.rb +1 -0
  14. data/db/migrate/2_groups.rb +8 -1
  15. data/db/migrate/4_roles.rb +8 -1
  16. data/db/migrate/5_resources.rb +1 -0
  17. data/db/migrate/7_authorization.rb +2 -0
  18. data/db/migrate/8_add_indexes_to_edges.rb +17 -0
  19. data/db/migrate_activerecord/20250101000001_create_super_auth_users.rb +10 -0
  20. data/db/migrate_activerecord/20250101000002_create_super_auth_groups.rb +11 -0
  21. data/db/migrate_activerecord/20250101000003_create_super_auth_permissions.rb +8 -0
  22. data/db/migrate_activerecord/20250101000004_create_super_auth_roles.rb +11 -0
  23. data/db/migrate_activerecord/20250101000005_create_super_auth_resources.rb +10 -0
  24. data/db/migrate_activerecord/20250101000006_create_super_auth_edges.rb +12 -0
  25. data/db/migrate_activerecord/20250101000007_create_super_auth_authorizations.rb +41 -0
  26. data/db/seeds/sample_data.rb +193 -0
  27. data/lib/basic_loader.rb +0 -2
  28. data/lib/generators/super_auth/install/install_generator.rb +19 -0
  29. data/lib/generators/super_auth/install/templates/README +29 -0
  30. data/lib/generators/super_auth/install/templates/super_auth.rb +7 -0
  31. data/lib/super_auth/active_record/by_current_user.rb +19 -4
  32. data/lib/super_auth/active_record/edge.rb +45 -0
  33. data/lib/super_auth/active_record/group.rb +7 -0
  34. data/lib/super_auth/active_record/permission.rb +4 -0
  35. data/lib/super_auth/active_record/resource.rb +1 -0
  36. data/lib/super_auth/active_record/role.rb +7 -0
  37. data/lib/super_auth/active_record/user.rb +6 -0
  38. data/lib/super_auth/active_record.rb +17 -0
  39. data/lib/super_auth/edge.rb +190 -131
  40. data/lib/super_auth/group.rb +1 -0
  41. data/lib/super_auth/nestable.rb +17 -10
  42. data/lib/super_auth/permission.rb +1 -1
  43. data/lib/super_auth/railtie.rb +26 -25
  44. data/lib/super_auth/role.rb +2 -1
  45. data/lib/super_auth/user.rb +8 -8
  46. data/lib/super_auth/version.rb +1 -3
  47. data/lib/super_auth.rb +72 -40
  48. data/visualization.html +747 -0
  49. metadata +21 -6
metadata CHANGED
@@ -1,14 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: super_auth
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.5
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jonathan Frias
8
- autorequire:
9
8
  bindir: bin
10
9
  cert_chain: []
11
- date: 2025-07-09 00:00:00.000000000 Z
10
+ date: 1980-01-02 00:00:00.000000000 Z
12
11
  dependencies:
13
12
  - !ruby/object:Gem::Dependency
14
13
  name: sequel
@@ -53,6 +52,11 @@ files:
53
52
  - LICENSE.txt
54
53
  - README.md
55
54
  - Rakefile
55
+ - USAGE.md
56
+ - VISUALIZATION.md
57
+ - app/controllers/super_auth/graph_controller.rb
58
+ - app/views/super_auth/graph/index.html.erb
59
+ - config/routes.rb
56
60
  - db/migrate/1_users.rb
57
61
  - db/migrate/2_groups.rb
58
62
  - db/migrate/3_permissions.rb
@@ -60,7 +64,19 @@ files:
60
64
  - db/migrate/5_resources.rb
61
65
  - db/migrate/6_edge.rb
62
66
  - db/migrate/7_authorization.rb
67
+ - db/migrate/8_add_indexes_to_edges.rb
68
+ - db/migrate_activerecord/20250101000001_create_super_auth_users.rb
69
+ - db/migrate_activerecord/20250101000002_create_super_auth_groups.rb
70
+ - db/migrate_activerecord/20250101000003_create_super_auth_permissions.rb
71
+ - db/migrate_activerecord/20250101000004_create_super_auth_roles.rb
72
+ - db/migrate_activerecord/20250101000005_create_super_auth_resources.rb
73
+ - db/migrate_activerecord/20250101000006_create_super_auth_edges.rb
74
+ - db/migrate_activerecord/20250101000007_create_super_auth_authorizations.rb
75
+ - db/seeds/sample_data.rb
63
76
  - lib/basic_loader.rb
77
+ - lib/generators/super_auth/install/install_generator.rb
78
+ - lib/generators/super_auth/install/templates/README
79
+ - lib/generators/super_auth/install/templates/super_auth.rb
64
80
  - lib/super_auth.rb
65
81
  - lib/super_auth/active_record.rb
66
82
  - lib/super_auth/active_record/authorization.rb
@@ -82,6 +98,7 @@ files:
82
98
  - lib/super_auth/user.rb
83
99
  - lib/super_auth/version.rb
84
100
  - lib/tasks/super_auth_tasks.rake
101
+ - visualization.html
85
102
  homepage: https://github.com/JonathanFrias/super_auth
86
103
  licenses:
87
104
  - MIT
@@ -89,7 +106,6 @@ metadata:
89
106
  homepage_uri: https://github.com/JonathanFrias/super_auth
90
107
  source_code_uri: https://github.com/JonathanFrias/super_auth
91
108
  changelog_uri: https://github.com/JonathanFrias/super_auth/blob/main/CHANGELOG.md
92
- post_install_message:
93
109
  rdoc_options: []
94
110
  require_paths:
95
111
  - lib
@@ -104,8 +120,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
104
120
  - !ruby/object:Gem::Version
105
121
  version: '0'
106
122
  requirements: []
107
- rubygems_version: 3.4.19
108
- signing_key:
123
+ rubygems_version: 4.0.3
109
124
  specification_version: 4
110
125
  summary: Make Unauthenticated State Unrepresentable
111
126
  test_files: []