repltalk 0.5.0 → 0.5.1

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 (4) hide show
  1. checksums.yaml +4 -4
  2. data/lib/queries.rb +11 -0
  3. data/lib/repltalk.rb +22 -0
  4. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 4becb6db34fded69130f61fe1c0bee4eadd9d9aa2e1e832c48f84a51e48f013d
4
- data.tar.gz: 348eb30ee7f72b57de14f7a3edcd6b99d0c4b48bee827e29e540e30aaafbb4c9
3
+ metadata.gz: 025f94f3a39675c567cfe0e77c1ca050c5ef87a66b3916be2413e1a036b97b1e
4
+ data.tar.gz: c9aa80154d299ebda053fe9e2eadd156fcd30450b942ccb87078cbef6eacb1f2
5
5
  SHA512:
6
- metadata.gz: 62fc89da26c4217cdddc3f6c7f472197480f32173d83137189219566b27fe9bdf1559ae77f32df43e43dffd46741cd1a02d582f3f487ab68520f729f0a396536
7
- data.tar.gz: 899726ce8b541957128993cff59183a8945d4173b5daf02e18fbdb07d38b888d6dbe3132f463471a9793b7a99fe9b63dd611fb3b3c112f776c08ef22fbbd3319
6
+ metadata.gz: e1ac924dd87ae0ad5476947f966f2e972fd73211c84367681036f06689cbd2a0e9c9755f06e82bf1f8fd5c2cd83b11e8a3c323135e223576b688438077877c04
7
+ data.tar.gz: e5634a2b2b98134cfa27b1f6ffbde80be6e77221278ff5d30b02a338b30950416b3a66c0c11700f1ba582d20c797cb1b324f59e2cc04eeeee07c0f7ef2709e11
data/lib/queries.rb CHANGED
@@ -286,4 +286,15 @@ class Queries
286
286
  }
287
287
  }"
288
288
  end
289
+
290
+ def Queries.get_leaderboard
291
+ "query LeaderboardQuery($count: Int, $after: String, $since: KarmaSince) {
292
+ leaderboard(count: $count, after: $after, since: $since) {
293
+ items {
294
+ #{@@user}
295
+ karmaSince: karma(since: $since)
296
+ }
297
+ }
298
+ }"
299
+ end
289
300
  end
data/lib/repltalk.rb CHANGED
@@ -317,6 +317,17 @@ end
317
317
 
318
318
 
319
319
 
320
+ class LeaderboardUser < User
321
+ attr_reader :cycles_since
322
+
323
+ def initialize(client, user)
324
+ super(client, user)
325
+ @cycles_since = user["karmaSince"]
326
+ end
327
+ end
328
+
329
+
330
+
320
331
  class Client
321
332
  attr_writer :sid
322
333
 
@@ -399,6 +410,17 @@ class Client
399
410
  )
400
411
  Repl.new(self, r["repl"])
401
412
  end
413
+
414
+ def get_leaderboard(count: nil, since: nil, after: nil)
415
+ u = graphql(
416
+ "LeaderboardQuery",
417
+ Queries.get_leaderboard,
418
+ count: count,
419
+ since: since,
420
+ after: after
421
+ )
422
+ u["leaderboard"]["items"].map { |user| LeaderboardUser.new(self, user) }
423
+ end
402
424
 
403
425
  def get_posts(board: "all", order: "new", count: nil, after: nil, search: nil, languages: nil)
404
426
  p = graphql(
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: repltalk
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.0
4
+ version: 0.5.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - CodingCactus
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-03-06 00:00:00.000000000 Z
11
+ date: 2021-03-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: http