foobara-auth-http 0.0.6 → 0.1.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 5093178b0ce509c5c5f10981172ae99ad1a1d408a73f1e0fa769e0b07bc2a473
4
- data.tar.gz: 421cff756cbc533133f3c110298812a372a982c1823c8301b01d7b2370024e4c
3
+ metadata.gz: 62b67f4f6ae5108b39697d7c792e33854f1a9f79d2bd9a00cdd28999a15330be
4
+ data.tar.gz: 99efd48356f66e58aeb1c387cf54f5b08a3de61bfb7ab68c58a8d88f34e244c7
5
5
  SHA512:
6
- metadata.gz: 75e938c0c285d39e48972550a798c5c8e03feb0d60952e2dcf1f19796dfcde8af1fe6124ef9e3eb574be516233a0a42ab6ca6c037eb5896f08d88dbf7b987882
7
- data.tar.gz: a972502fec1238be95c6a0f1e2b517b421d81d7843aa2a43c50119591db49581662d160908b3fefe9bce60519537a0681514861eb006ce7087e4bf2037e01f87
6
+ metadata.gz: d9973773609190f3b369a29dbaba12e67d17b048baf4bd44091a00b3d1491d60328c8af38f42c922bac6187b2d30abc12b8799fe9c8fdf866d2fb62453dfb78e
7
+ data.tar.gz: db20a0f1870d0048d0cb59f628707470b36af8403c1dd04a718a4459f54fb918f29ab242bfe2962e5c9dc5b8a0e3cab3572a9103a8af415f11edf2a627000a45
data/CHANGELOG.md CHANGED
@@ -1,3 +1,11 @@
1
+ ## [0.1.0] - 2025-08-22
2
+
3
+ - Mark as compatible with Foobara 0.1.0
4
+
5
+ ## [0.0.7] - 2025-05-03
6
+
7
+ - Expose relevant entity classes from authenticators for better transaction automation
8
+
1
9
  ## [0.0.6] - 2025-05-01
2
10
 
3
11
  - Add SetUserToAuthenticatedUser request mutator
@@ -16,4 +16,4 @@ module Foobara
16
16
  end
17
17
 
18
18
  Foobara::Util.require_directory "#{__dir__}/../../src"
19
- Foobara::Monorepo.project "auth_http", project_path: "#{__dir__}/../../"
19
+ Foobara.project "auth_http", project_path: "#{__dir__}/../../"
@@ -2,12 +2,14 @@ module Foobara
2
2
  module AuthHttp
3
3
  class ApiKeyAuthenticator < CommandConnector::Authenticator
4
4
  class << self
5
- def load_user(&block)
6
- new(load_user: block)
5
+ def load_user(**, &block)
6
+ new(**, load_user: block)
7
7
  end
8
8
  end
9
9
 
10
- def initialize(load_user: nil, **)
10
+ def initialize(load_user: nil, relevant_entity_classes: Auth::Types::User, **)
11
+ @relevant_entity_classes = relevant_entity_classes
12
+
11
13
  if load_user
12
14
  @load_user = load_user
13
15
  end
@@ -44,6 +46,12 @@ module Foobara
44
46
  end
45
47
  end
46
48
  end
49
+
50
+ def relevant_entity_classes(request)
51
+ if applicable?(request)
52
+ @relevant_entity_classes
53
+ end
54
+ end
47
55
  end
48
56
  end
49
57
  end
@@ -2,13 +2,15 @@ module Foobara
2
2
  module AuthHttp
3
3
  class BearerAuthenticator < CommandConnector::Authenticator
4
4
  class << self
5
- def load_user(&block)
6
- new(load_user: block)
5
+ def load_user(**, &block)
6
+ new(**, load_user: block)
7
7
  end
8
8
  end
9
9
 
10
- def initialize(load_user: nil, **)
10
+ def initialize(load_user: nil, relevant_entity_classes: Auth::Types::User, **)
11
11
  @load_user = load_user || ->(user_id) { Auth::FindUser.run!(id: user_id) }
12
+ @relevant_entity_classes = relevant_entity_classes
13
+
12
14
  super(symbol: :bearer,
13
15
  explanation: "Expects an access token in authorization header in format of: Bearer <token>",
14
16
  **)
@@ -54,6 +56,12 @@ module Foobara
54
56
  @load_user.call(user_id)
55
57
  end
56
58
  end
59
+
60
+ def relevant_entity_classes(request)
61
+ if applicable?(request)
62
+ @relevant_entity_classes
63
+ end
64
+ end
57
65
  end
58
66
  end
59
67
  end
@@ -10,7 +10,7 @@ module Foobara
10
10
 
11
11
  def initialize
12
12
  self.attribute_name = :user
13
- self.input_value_proc = proc { command.authenticated_user }
13
+ self.input_value_proc = proc { authenticated_user }
14
14
 
15
15
  super
16
16
  end
metadata CHANGED
@@ -1,56 +1,62 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: foobara-auth-http
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.6
4
+ version: 0.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Miles Georgi
8
8
  bindir: bin
9
9
  cert_chain: []
10
- date: 2025-05-01 00:00:00.000000000 Z
10
+ date: 1980-01-02 00:00:00.000000000 Z
11
11
  dependencies:
12
12
  - !ruby/object:Gem::Dependency
13
13
  name: foobara
14
14
  requirement: !ruby/object:Gem::Requirement
15
15
  requirements:
16
- - - "~>"
16
+ - - ">="
17
17
  - !ruby/object:Gem::Version
18
- version: 0.0.108
18
+ version: 0.1.1
19
+ - - "<"
20
+ - !ruby/object:Gem::Version
21
+ version: 2.0.0
19
22
  type: :runtime
20
23
  prerelease: false
21
24
  version_requirements: !ruby/object:Gem::Requirement
22
25
  requirements:
23
- - - "~>"
26
+ - - ">="
27
+ - !ruby/object:Gem::Version
28
+ version: 0.1.1
29
+ - - "<"
24
30
  - !ruby/object:Gem::Version
25
- version: 0.0.108
31
+ version: 2.0.0
26
32
  - !ruby/object:Gem::Dependency
27
33
  name: foobara-auth
28
34
  requirement: !ruby/object:Gem::Requirement
29
35
  requirements:
30
- - - "~>"
36
+ - - "<"
31
37
  - !ruby/object:Gem::Version
32
- version: 0.0.1
38
+ version: 2.0.0
33
39
  type: :runtime
34
40
  prerelease: false
35
41
  version_requirements: !ruby/object:Gem::Requirement
36
42
  requirements:
37
- - - "~>"
43
+ - - "<"
38
44
  - !ruby/object:Gem::Version
39
- version: 0.0.1
45
+ version: 2.0.0
40
46
  - !ruby/object:Gem::Dependency
41
47
  name: foobara-http-command-connector
42
48
  requirement: !ruby/object:Gem::Requirement
43
49
  requirements:
44
- - - "~>"
50
+ - - "<"
45
51
  - !ruby/object:Gem::Version
46
- version: 0.0.1
52
+ version: 2.0.0
47
53
  type: :runtime
48
54
  prerelease: false
49
55
  version_requirements: !ruby/object:Gem::Requirement
50
56
  requirements:
51
- - - "~>"
57
+ - - "<"
52
58
  - !ruby/object:Gem::Version
53
- version: 0.0.1
59
+ version: 2.0.0
54
60
  email:
55
61
  - azimux@gmail.com
56
62
  executables: []
@@ -92,7 +98,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
92
98
  - !ruby/object:Gem::Version
93
99
  version: '0'
94
100
  requirements: []
95
- rubygems_version: 3.6.2
101
+ rubygems_version: 3.6.9
96
102
  specification_version: 4
97
103
  summary: Contains convenience classes/methods for using Foobara::Auth over HTTP
98
104
  test_files: []