userplex 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.
Files changed (89) hide show
  1. checksums.yaml +7 -0
  2. data/.ignore +2 -0
  3. data/CHANGELOG.md +14 -0
  4. data/README.md +217 -0
  5. data/SECURITY.md +23 -0
  6. data/lib/userplex/client.rb +80 -0
  7. data/lib/userplex/errors.rb +228 -0
  8. data/lib/userplex/file_part.rb +58 -0
  9. data/lib/userplex/internal/transport/base_client.rb +567 -0
  10. data/lib/userplex/internal/transport/pooled_net_requester.rb +198 -0
  11. data/lib/userplex/internal/type/array_of.rb +168 -0
  12. data/lib/userplex/internal/type/base_model.rb +530 -0
  13. data/lib/userplex/internal/type/base_page.rb +55 -0
  14. data/lib/userplex/internal/type/boolean.rb +77 -0
  15. data/lib/userplex/internal/type/converter.rb +327 -0
  16. data/lib/userplex/internal/type/enum.rb +131 -0
  17. data/lib/userplex/internal/type/file_input.rb +111 -0
  18. data/lib/userplex/internal/type/hash_of.rb +188 -0
  19. data/lib/userplex/internal/type/request_parameters.rb +42 -0
  20. data/lib/userplex/internal/type/union.rb +237 -0
  21. data/lib/userplex/internal/type/unknown.rb +81 -0
  22. data/lib/userplex/internal/util.rb +915 -0
  23. data/lib/userplex/internal.rb +20 -0
  24. data/lib/userplex/models/event_track_params.rb +46 -0
  25. data/lib/userplex/models/event_track_response.rb +33 -0
  26. data/lib/userplex/models/user_identify_params.rb +46 -0
  27. data/lib/userplex/models/user_identify_response.rb +25 -0
  28. data/lib/userplex/models.rb +45 -0
  29. data/lib/userplex/request_options.rb +77 -0
  30. data/lib/userplex/resources/events.rb +43 -0
  31. data/lib/userplex/resources/users.rb +43 -0
  32. data/lib/userplex/version.rb +5 -0
  33. data/lib/userplex.rb +59 -0
  34. data/manifest.yaml +15 -0
  35. data/rbi/userplex/client.rbi +54 -0
  36. data/rbi/userplex/errors.rbi +205 -0
  37. data/rbi/userplex/file_part.rbi +37 -0
  38. data/rbi/userplex/internal/transport/base_client.rbi +292 -0
  39. data/rbi/userplex/internal/transport/pooled_net_requester.rbi +79 -0
  40. data/rbi/userplex/internal/type/array_of.rbi +104 -0
  41. data/rbi/userplex/internal/type/base_model.rbi +302 -0
  42. data/rbi/userplex/internal/type/base_page.rbi +42 -0
  43. data/rbi/userplex/internal/type/boolean.rbi +58 -0
  44. data/rbi/userplex/internal/type/converter.rbi +216 -0
  45. data/rbi/userplex/internal/type/enum.rbi +82 -0
  46. data/rbi/userplex/internal/type/file_input.rbi +59 -0
  47. data/rbi/userplex/internal/type/hash_of.rbi +104 -0
  48. data/rbi/userplex/internal/type/request_parameters.rbi +29 -0
  49. data/rbi/userplex/internal/type/union.rbi +128 -0
  50. data/rbi/userplex/internal/type/unknown.rbi +58 -0
  51. data/rbi/userplex/internal/util.rbi +487 -0
  52. data/rbi/userplex/internal.rbi +16 -0
  53. data/rbi/userplex/models/event_track_params.rbi +73 -0
  54. data/rbi/userplex/models/event_track_response.rbi +52 -0
  55. data/rbi/userplex/models/user_identify_params.rbi +70 -0
  56. data/rbi/userplex/models/user_identify_response.rbi +38 -0
  57. data/rbi/userplex/models.rbi +7 -0
  58. data/rbi/userplex/request_options.rbi +59 -0
  59. data/rbi/userplex/resources/events.rbi +36 -0
  60. data/rbi/userplex/resources/users.rbi +36 -0
  61. data/rbi/userplex/version.rbi +5 -0
  62. data/sig/userplex/client.rbs +28 -0
  63. data/sig/userplex/errors.rbs +117 -0
  64. data/sig/userplex/file_part.rbs +21 -0
  65. data/sig/userplex/internal/transport/base_client.rbs +131 -0
  66. data/sig/userplex/internal/transport/pooled_net_requester.rbs +45 -0
  67. data/sig/userplex/internal/type/array_of.rbs +48 -0
  68. data/sig/userplex/internal/type/base_model.rbs +102 -0
  69. data/sig/userplex/internal/type/base_page.rbs +24 -0
  70. data/sig/userplex/internal/type/boolean.rbs +26 -0
  71. data/sig/userplex/internal/type/converter.rbs +79 -0
  72. data/sig/userplex/internal/type/enum.rbs +32 -0
  73. data/sig/userplex/internal/type/file_input.rbs +25 -0
  74. data/sig/userplex/internal/type/hash_of.rbs +48 -0
  75. data/sig/userplex/internal/type/request_parameters.rbs +17 -0
  76. data/sig/userplex/internal/type/union.rbs +52 -0
  77. data/sig/userplex/internal/type/unknown.rbs +26 -0
  78. data/sig/userplex/internal/util.rbs +185 -0
  79. data/sig/userplex/internal.rbs +9 -0
  80. data/sig/userplex/models/event_track_params.rbs +45 -0
  81. data/sig/userplex/models/event_track_response.rbs +22 -0
  82. data/sig/userplex/models/user_identify_params.rbs +43 -0
  83. data/sig/userplex/models/user_identify_response.rbs +15 -0
  84. data/sig/userplex/models.rbs +5 -0
  85. data/sig/userplex/request_options.rbs +34 -0
  86. data/sig/userplex/resources/events.rbs +15 -0
  87. data/sig/userplex/resources/users.rbs +15 -0
  88. data/sig/userplex/version.rbs +3 -0
  89. metadata +146 -0
@@ -0,0 +1,34 @@
1
+ module Userplex
2
+ type request_opts =
3
+ Userplex::RequestOptions | Userplex::request_options | ::Hash[Symbol, top]
4
+
5
+ type request_options =
6
+ {
7
+ idempotency_key: String?,
8
+ extra_query: ::Hash[String, (::Array[String] | String)?]?,
9
+ extra_headers: ::Hash[String, String?]?,
10
+ extra_body: top?,
11
+ max_retries: Integer?,
12
+ timeout: Float?
13
+ }
14
+
15
+ class RequestOptions < Userplex::Internal::Type::BaseModel
16
+ def self.validate!: (Userplex::request_opts opts) -> void
17
+
18
+ attr_accessor idempotency_key: String?
19
+
20
+ attr_accessor extra_query: ::Hash[String, (::Array[String] | String)?]?
21
+
22
+ attr_accessor extra_headers: ::Hash[String, String?]?
23
+
24
+ attr_accessor extra_body: top?
25
+
26
+ attr_accessor max_retries: Integer?
27
+
28
+ attr_accessor timeout: Float?
29
+
30
+ def initialize: (
31
+ ?Userplex::request_options | ::Hash[Symbol, top] values
32
+ ) -> void
33
+ end
34
+ end
@@ -0,0 +1,15 @@
1
+ module Userplex
2
+ module Resources
3
+ class Events
4
+ def track: (
5
+ event: String,
6
+ user_id: String,
7
+ ?properties: ::Hash[Symbol, top?],
8
+ ?timestamp: Time,
9
+ ?request_options: Userplex::request_opts
10
+ ) -> Userplex::Models::EventTrackResponse
11
+
12
+ def initialize: (client: Userplex::Client) -> void
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,15 @@
1
+ module Userplex
2
+ module Resources
3
+ class Users
4
+ def identify: (
5
+ email: String,
6
+ name: String,
7
+ user_id: String,
8
+ ?properties: ::Hash[Symbol, top?],
9
+ ?request_options: Userplex::request_opts
10
+ ) -> Userplex::Models::UserIdentifyResponse
11
+
12
+ def initialize: (client: Userplex::Client) -> void
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,3 @@
1
+ module Userplex
2
+ VERSION: String
3
+ end
metadata ADDED
@@ -0,0 +1,146 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: userplex
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - Userplex
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2025-10-02 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: connection_pool
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: '0'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: '0'
27
+ description:
28
+ email: ''
29
+ executables: []
30
+ extensions: []
31
+ extra_rdoc_files:
32
+ - README.md
33
+ files:
34
+ - ".ignore"
35
+ - CHANGELOG.md
36
+ - README.md
37
+ - SECURITY.md
38
+ - lib/userplex.rb
39
+ - lib/userplex/client.rb
40
+ - lib/userplex/errors.rb
41
+ - lib/userplex/file_part.rb
42
+ - lib/userplex/internal.rb
43
+ - lib/userplex/internal/transport/base_client.rb
44
+ - lib/userplex/internal/transport/pooled_net_requester.rb
45
+ - lib/userplex/internal/type/array_of.rb
46
+ - lib/userplex/internal/type/base_model.rb
47
+ - lib/userplex/internal/type/base_page.rb
48
+ - lib/userplex/internal/type/boolean.rb
49
+ - lib/userplex/internal/type/converter.rb
50
+ - lib/userplex/internal/type/enum.rb
51
+ - lib/userplex/internal/type/file_input.rb
52
+ - lib/userplex/internal/type/hash_of.rb
53
+ - lib/userplex/internal/type/request_parameters.rb
54
+ - lib/userplex/internal/type/union.rb
55
+ - lib/userplex/internal/type/unknown.rb
56
+ - lib/userplex/internal/util.rb
57
+ - lib/userplex/models.rb
58
+ - lib/userplex/models/event_track_params.rb
59
+ - lib/userplex/models/event_track_response.rb
60
+ - lib/userplex/models/user_identify_params.rb
61
+ - lib/userplex/models/user_identify_response.rb
62
+ - lib/userplex/request_options.rb
63
+ - lib/userplex/resources/events.rb
64
+ - lib/userplex/resources/users.rb
65
+ - lib/userplex/version.rb
66
+ - manifest.yaml
67
+ - rbi/userplex/client.rbi
68
+ - rbi/userplex/errors.rbi
69
+ - rbi/userplex/file_part.rbi
70
+ - rbi/userplex/internal.rbi
71
+ - rbi/userplex/internal/transport/base_client.rbi
72
+ - rbi/userplex/internal/transport/pooled_net_requester.rbi
73
+ - rbi/userplex/internal/type/array_of.rbi
74
+ - rbi/userplex/internal/type/base_model.rbi
75
+ - rbi/userplex/internal/type/base_page.rbi
76
+ - rbi/userplex/internal/type/boolean.rbi
77
+ - rbi/userplex/internal/type/converter.rbi
78
+ - rbi/userplex/internal/type/enum.rbi
79
+ - rbi/userplex/internal/type/file_input.rbi
80
+ - rbi/userplex/internal/type/hash_of.rbi
81
+ - rbi/userplex/internal/type/request_parameters.rbi
82
+ - rbi/userplex/internal/type/union.rbi
83
+ - rbi/userplex/internal/type/unknown.rbi
84
+ - rbi/userplex/internal/util.rbi
85
+ - rbi/userplex/models.rbi
86
+ - rbi/userplex/models/event_track_params.rbi
87
+ - rbi/userplex/models/event_track_response.rbi
88
+ - rbi/userplex/models/user_identify_params.rbi
89
+ - rbi/userplex/models/user_identify_response.rbi
90
+ - rbi/userplex/request_options.rbi
91
+ - rbi/userplex/resources/events.rbi
92
+ - rbi/userplex/resources/users.rbi
93
+ - rbi/userplex/version.rbi
94
+ - sig/userplex/client.rbs
95
+ - sig/userplex/errors.rbs
96
+ - sig/userplex/file_part.rbs
97
+ - sig/userplex/internal.rbs
98
+ - sig/userplex/internal/transport/base_client.rbs
99
+ - sig/userplex/internal/transport/pooled_net_requester.rbs
100
+ - sig/userplex/internal/type/array_of.rbs
101
+ - sig/userplex/internal/type/base_model.rbs
102
+ - sig/userplex/internal/type/base_page.rbs
103
+ - sig/userplex/internal/type/boolean.rbs
104
+ - sig/userplex/internal/type/converter.rbs
105
+ - sig/userplex/internal/type/enum.rbs
106
+ - sig/userplex/internal/type/file_input.rbs
107
+ - sig/userplex/internal/type/hash_of.rbs
108
+ - sig/userplex/internal/type/request_parameters.rbs
109
+ - sig/userplex/internal/type/union.rbs
110
+ - sig/userplex/internal/type/unknown.rbs
111
+ - sig/userplex/internal/util.rbs
112
+ - sig/userplex/models.rbs
113
+ - sig/userplex/models/event_track_params.rbs
114
+ - sig/userplex/models/event_track_response.rbs
115
+ - sig/userplex/models/user_identify_params.rbs
116
+ - sig/userplex/models/user_identify_response.rbs
117
+ - sig/userplex/request_options.rbs
118
+ - sig/userplex/resources/events.rbs
119
+ - sig/userplex/resources/users.rbs
120
+ - sig/userplex/version.rbs
121
+ homepage: https://gemdocs.org/gems/userplex
122
+ licenses: []
123
+ metadata:
124
+ homepage_uri: https://gemdocs.org/gems/userplex
125
+ source_code_uri: https://github.com/dqnamo/userplex-ruby
126
+ rubygems_mfa_required: 'false'
127
+ post_install_message:
128
+ rdoc_options: []
129
+ require_paths:
130
+ - lib
131
+ required_ruby_version: !ruby/object:Gem::Requirement
132
+ requirements:
133
+ - - ">="
134
+ - !ruby/object:Gem::Version
135
+ version: 3.2.0
136
+ required_rubygems_version: !ruby/object:Gem::Requirement
137
+ requirements:
138
+ - - ">="
139
+ - !ruby/object:Gem::Version
140
+ version: '0'
141
+ requirements: []
142
+ rubygems_version: 3.4.1
143
+ signing_key:
144
+ specification_version: 4
145
+ summary: Ruby library to access the Userplex API
146
+ test_files: []