audiences 1.5.1 → 1.5.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: cc9cb9024b5cab607920dd047795f19189182930353a83858b1b79f6bb22504a
4
- data.tar.gz: 7e80900217731f751536eb792272c44645aaf6bc35458ed705c4c39d7e0f3fc1
3
+ metadata.gz: b2128c153d299dd4a2fa4f94d5830dcf883cbf0b1b9300ca0905d0b5816fcc53
4
+ data.tar.gz: feb6f90c5e3cf41e4331fce62cca0b8fb42cb94f1570283f4b760beec23a1a36
5
5
  SHA512:
6
- metadata.gz: f922b463a9edcf52d3d91492c753415185cd2813f87eb03def29c1b59c9ca7d1a63ac456b274550b974e7b5b62f9451a8848e0e74984cfa865ae869ac69ad67c
7
- data.tar.gz: 11edb03700fc296188521adb6f3a77587b8491ed1786fe20ff1f3ad9a3e95b2fb2d6f1a8f5ef557096fec2acfa2d286edacba37c53de293298ebc60c5d743754
6
+ metadata.gz: 7831f938d1841653b4829f8726bcdd491888a048e633fc98fe45a7978e9fb5cb789f5d420ace6b18d66d75782c6a87da4437b046c5a54a0c772b153f2f718eaf
7
+ data.tar.gz: 258c57d51a40fa73560ac5c2a01dedbc567923956fa5f237de8bd714c97f8cdeac95b9aab13fdf7bfb4c60a5b21d23e2fa681072318565c127ab93a9ee36a409
@@ -17,7 +17,7 @@ module Audiences
17
17
  limit: params[:limit],
18
18
  offset: params[:offset])
19
19
 
20
- render json: search
20
+ render json: search, only: Audiences.exposed_user_attributes
21
21
  end
22
22
 
23
23
  private
@@ -33,11 +33,14 @@ module Audiences
33
33
  end
34
34
 
35
35
  def render_context(context)
36
- render json: context.as_json(
37
- only: %i[match_all extra_users],
36
+ json_setting = {
37
+ only: %i[match_all],
38
38
  methods: %i[count],
39
- include: { criteria: { only: %i[id groups], methods: %i[count] } }
40
- )
39
+ include: { criteria: { only: %i[id groups], methods: %i[count] } },
40
+ }
41
+ extra_users = context.extra_users.as_json(only: Audiences.exposed_user_attributes)
42
+
43
+ render json: { extra_users: extra_users, **context.as_json(json_setting) }
41
44
  end
42
45
 
43
46
  def context_params
@@ -5,12 +5,22 @@ module Audiences
5
5
  def get
6
6
  resources = Audiences::Scim.resource(params[:scim_path].to_sym)
7
7
  .query(
8
- filter: "displayName co \"#{params[:filter]}\"",
8
+ filter: filter_param,
9
9
  startIndex: params[:startIndex], count: params[:count],
10
- attributes: "id,externalId,displayName,photos"
10
+ attributes: Audiences.exposed_user_attributes.join(",")
11
11
  )
12
12
 
13
13
  render json: resources, except: %w[schemas meta]
14
14
  end
15
+
16
+ private
17
+
18
+ def filter_param
19
+ if params[:query]
20
+ "displayName co \"#{params[:query]}\""
21
+ else
22
+ params[:filter]
23
+ end
24
+ end
15
25
  end
16
26
  end
@@ -28,8 +28,8 @@ module Audiences
28
28
  where(user_id: attrs.pluck(:user_id))
29
29
  end
30
30
 
31
- def as_json(*)
32
- data.as_json
31
+ def as_json(...)
32
+ data.as_json(...)
33
33
  end
34
34
  end
35
35
  end
@@ -11,9 +11,9 @@ module Audiences
11
11
  @offset = offset
12
12
  end
13
13
 
14
- def as_json(*)
14
+ def as_json(...)
15
15
  {
16
- users: users,
16
+ users: users.as_json(...),
17
17
  count: count,
18
18
  }
19
19
  end
data/docs/CHANGELOG.md CHANGED
@@ -1,5 +1,13 @@
1
1
  # Unreleased
2
2
 
3
+ # Version 1.5.3 (2024-12-19)
4
+
5
+ - Rollback breaking change introduced by 1.5.1 [#479](https://github.com/powerhome/audiences/pull/479)
6
+
7
+ # Version 1.5.2 (2024-12-19)
8
+
9
+ - Filter sensitive user data out of user list response [#473](https://github.com/powerhome/audiences/pull/473)
10
+
3
11
  # Version 1.5.1 (2024-12-12)
4
12
 
5
13
  - Fix SCIM proxy attributes format [#462](https://github.com/powerhome/audiences/pull/462)
@@ -5,6 +5,13 @@ module Audiences
5
5
 
6
6
  # Configuration options
7
7
 
8
+ # These are the user attributes that will be exposed in the audiences endpoints.
9
+ # They're required by the UI to display the user information.
10
+ #
11
+ config_accessor :exposed_user_attributes do
12
+ %w[id externalId displayName photos]
13
+ end
14
+
8
15
  #
9
16
  # Authentication configuration. This defaults to true, meaning that the audiences
10
17
  # endpoints are open to the public.
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Audiences
4
- VERSION = "1.5.1"
4
+ VERSION = "1.5.3"
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: audiences
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.5.1
4
+ version: 1.5.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Carlos Palhares
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-12-12 00:00:00.000000000 Z
11
+ date: 2024-12-31 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -93,7 +93,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
93
93
  - !ruby/object:Gem::Version
94
94
  version: '0'
95
95
  requirements: []
96
- rubygems_version: 3.5.22
96
+ rubygems_version: 3.5.23
97
97
  signing_key:
98
98
  specification_version: 4
99
99
  summary: Audiences system