repltalk 1.1.0 → 2.0.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/queries.rb +114 -0
- data/lib/repltalk.rb +162 -17
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: dadabaf060273fe7f67d860c1453b2b4ecaa055cfe75c2a7f04c64c1fafb994d
|
4
|
+
data.tar.gz: 7b27ee02ccfa0814f0525cccd2add843da6b7ec4fb21609d145c39b6dd4e53d9
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 4ec71d1e1f75d119786012f7bfebbe424d7ca643422cb6fabeb5785dc1f2c9a624501751a9b401d3e2e8f81f1e6a272794052aaf5c603fd7c702b495c624be87
|
7
|
+
data.tar.gz: 21a6ce4f2ac9777ac79a1ea1cb18505e4294b7e6c2fe4b00b03771f853212d1311dbb2e91bef4fb5a733be2438ae759d67e2eefae42622a9d15064f311dd1ccd
|
data/lib/queries.rb
CHANGED
@@ -298,6 +298,17 @@ class Queries
|
|
298
298
|
}"
|
299
299
|
end
|
300
300
|
|
301
|
+
def Queries.get_repl_comment
|
302
|
+
"query ReplViewComment($id: Int!) {
|
303
|
+
replComment(id: $id) {
|
304
|
+
... on ReplComment {
|
305
|
+
#{@@repl_comment}
|
306
|
+
}
|
307
|
+
}
|
308
|
+
}"
|
309
|
+
end
|
310
|
+
|
311
|
+
|
301
312
|
def Queries.get_board
|
302
313
|
"query boardBySlug($slug: String!) {
|
303
314
|
board: boardBySlug(slug: $slug) {
|
@@ -339,4 +350,107 @@ class Mutations < Queries
|
|
339
350
|
}
|
340
351
|
}"
|
341
352
|
end
|
353
|
+
|
354
|
+
def Mutations.edit_post
|
355
|
+
"mutation updatePost($input: UpdatePostInput!) {
|
356
|
+
updatePost(input: $input) {
|
357
|
+
post {
|
358
|
+
#{@@post}
|
359
|
+
}
|
360
|
+
}
|
361
|
+
}
|
362
|
+
"
|
363
|
+
end
|
364
|
+
|
365
|
+
def Mutations.delete_post
|
366
|
+
"mutation deletePost($id: Int!) {
|
367
|
+
deletePost(id: $id) {
|
368
|
+
id
|
369
|
+
}
|
370
|
+
}"
|
371
|
+
end
|
372
|
+
|
373
|
+
def Mutations.create_comment
|
374
|
+
"mutation createComment($input: CreateCommentInput!) {
|
375
|
+
createComment(input: $input) {
|
376
|
+
comment {
|
377
|
+
#{@@comment}
|
378
|
+
}
|
379
|
+
}
|
380
|
+
}"
|
381
|
+
end
|
382
|
+
|
383
|
+
def Mutations.edit_comment
|
384
|
+
"mutation updateComment($input: UpdateCommentInput!) {
|
385
|
+
updateComment(input: $input) {
|
386
|
+
comment {
|
387
|
+
#{@@comment}
|
388
|
+
}
|
389
|
+
}
|
390
|
+
}"
|
391
|
+
end
|
392
|
+
|
393
|
+
def Mutations.delete_comment
|
394
|
+
"mutation deleteComment($id: Int!) {
|
395
|
+
deleteComment(id: $id) {
|
396
|
+
id
|
397
|
+
}
|
398
|
+
}"
|
399
|
+
end
|
400
|
+
|
401
|
+
def Mutations.create_repl_comment
|
402
|
+
"mutation ReplViewCreateReplComment($input: CreateReplCommentInput!) {
|
403
|
+
createReplComment(input: $input) {
|
404
|
+
... on ReplComment {
|
405
|
+
#{@@repl_comment}
|
406
|
+
}
|
407
|
+
}
|
408
|
+
}"
|
409
|
+
end
|
410
|
+
|
411
|
+
def Mutations.reply_repl_comment
|
412
|
+
"mutation ReplViewCreateReplCommentReply($input: CreateReplCommentReplyInput!) {
|
413
|
+
createReplCommentReply(input: $input) {
|
414
|
+
... on ReplComment {
|
415
|
+
#{@@repl_comment}
|
416
|
+
}
|
417
|
+
}
|
418
|
+
}"
|
419
|
+
end
|
420
|
+
|
421
|
+
def Mutations.edit_repl_comment
|
422
|
+
"mutation ReplViewCommentsUpdateReplComment($input: UpdateReplCommentInput!) {
|
423
|
+
updateReplComment(input: $input) {
|
424
|
+
... on ReplComment {
|
425
|
+
#{@@repl_comment}
|
426
|
+
}
|
427
|
+
}
|
428
|
+
}"
|
429
|
+
end
|
430
|
+
|
431
|
+
def Mutations.delete_repl_comment
|
432
|
+
"mutation ReplViewCommentsDeleteReplComment($id: Int!) {
|
433
|
+
deleteReplComment(id: $id) {
|
434
|
+
... on ReplComment {
|
435
|
+
id
|
436
|
+
}
|
437
|
+
}
|
438
|
+
}"
|
439
|
+
end
|
440
|
+
|
441
|
+
def Mutations.report_post
|
442
|
+
"mutation createBoardReport($id: Int!, $reason: String!) {
|
443
|
+
createBoardReport(postId: $id, reason: $reason) {
|
444
|
+
id
|
445
|
+
}
|
446
|
+
}"
|
447
|
+
end
|
448
|
+
|
449
|
+
def Mutations.report_comment
|
450
|
+
"mutation createBoardReport($id: Int!, $reason: String!) {
|
451
|
+
createBoardReport(commentId: $id, reason: $reason) {
|
452
|
+
id
|
453
|
+
}
|
454
|
+
}"
|
455
|
+
end
|
342
456
|
end
|
data/lib/repltalk.rb
CHANGED
@@ -76,6 +76,23 @@ end
|
|
76
76
|
|
77
77
|
|
78
78
|
|
79
|
+
class Board
|
80
|
+
attr_reader :id, :name, :color, :description
|
81
|
+
|
82
|
+
def initialize(board)
|
83
|
+
@id = board["id"]
|
84
|
+
@name = board["name"]
|
85
|
+
@color = board["color"]
|
86
|
+
@description = board["description"]
|
87
|
+
end
|
88
|
+
|
89
|
+
def to_s
|
90
|
+
@name
|
91
|
+
end
|
92
|
+
end
|
93
|
+
|
94
|
+
|
95
|
+
|
79
96
|
class ReplComment
|
80
97
|
attr_reader :id, :content, :author, :repl, :replies
|
81
98
|
|
@@ -89,6 +106,40 @@ class ReplComment
|
|
89
106
|
@replies = comment["replies"] == nil ? nil : comment["replies"].map { |c| ReplComment.new(@client, c) }
|
90
107
|
end
|
91
108
|
|
109
|
+
def create_comment(content)
|
110
|
+
c = @client.graphql(
|
111
|
+
"ReplViewCreateReplCommentReply",
|
112
|
+
Mutations.reply_repl_comment,
|
113
|
+
input: {
|
114
|
+
replCommentId: @id,
|
115
|
+
body: content
|
116
|
+
}
|
117
|
+
)
|
118
|
+
ReplComment.new(@client, c["createReplCommentReply"])
|
119
|
+
end
|
120
|
+
|
121
|
+
def edit(content)
|
122
|
+
c = @client.graphql(
|
123
|
+
"ReplViewCommentsUpdateReplComment",
|
124
|
+
Mutations.edit_repl_comment,
|
125
|
+
input: {
|
126
|
+
id: @id,
|
127
|
+
body: content
|
128
|
+
}
|
129
|
+
)
|
130
|
+
puts c
|
131
|
+
ReplComment.new(@client, c["updateReplComment"])
|
132
|
+
end
|
133
|
+
|
134
|
+
def delete
|
135
|
+
@client.graphql(
|
136
|
+
"ReplViewCommentsDeleteReplComment",
|
137
|
+
Mutations.delete_repl_comment,
|
138
|
+
id: @id
|
139
|
+
)
|
140
|
+
nil
|
141
|
+
end
|
142
|
+
|
92
143
|
def to_s
|
93
144
|
@content
|
94
145
|
end
|
@@ -138,25 +189,20 @@ class Repl
|
|
138
189
|
c["repl"]["comments"]["items"].map { |comment| ReplComment.new(@client, comment) }
|
139
190
|
end
|
140
191
|
|
141
|
-
def
|
142
|
-
@
|
143
|
-
|
144
|
-
|
145
|
-
|
146
|
-
|
147
|
-
|
148
|
-
|
149
|
-
|
150
|
-
|
151
|
-
def initialize(board)
|
152
|
-
@id = board["id"]
|
153
|
-
@name = board["name"]
|
154
|
-
@color = board["color"]
|
155
|
-
@description = board["description"]
|
192
|
+
def create_comment(content)
|
193
|
+
c = @client.graphql(
|
194
|
+
"ReplViewCreateReplComment",
|
195
|
+
Mutations.create_repl_comment,
|
196
|
+
input: {
|
197
|
+
replId: @id,
|
198
|
+
body: content
|
199
|
+
}
|
200
|
+
)
|
201
|
+
ReplComment.new(@client, c["createReplComment"])
|
156
202
|
end
|
157
203
|
|
158
204
|
def to_s
|
159
|
-
@
|
205
|
+
@title
|
160
206
|
end
|
161
207
|
end
|
162
208
|
|
@@ -208,6 +254,50 @@ class Comment
|
|
208
254
|
c["comment"]["parentComment"] == nil ? nil : Comment.new(@client, c["comment"]["parentComment"])
|
209
255
|
end
|
210
256
|
|
257
|
+
def create_comment(content)
|
258
|
+
c = @client.graphql(
|
259
|
+
"createComment",
|
260
|
+
Mutations.create_comment,
|
261
|
+
input: {
|
262
|
+
postId: @post_id,
|
263
|
+
commentId: @id,
|
264
|
+
body: content
|
265
|
+
}
|
266
|
+
)
|
267
|
+
Comment.new(@client, c["createComment"]["comment"])
|
268
|
+
end
|
269
|
+
|
270
|
+
def edit(content)
|
271
|
+
c = @client.graphql(
|
272
|
+
"updateComment",
|
273
|
+
Mutations.edit_comment,
|
274
|
+
input: {
|
275
|
+
id: @id,
|
276
|
+
body: content
|
277
|
+
}
|
278
|
+
)
|
279
|
+
Comment.new(@client, c["updateComment"]["comment"])
|
280
|
+
end
|
281
|
+
|
282
|
+
def delete
|
283
|
+
@client.graphql(
|
284
|
+
"deleteComment",
|
285
|
+
Mutations.delete_comment,
|
286
|
+
id: @id
|
287
|
+
)
|
288
|
+
nil
|
289
|
+
end
|
290
|
+
|
291
|
+
def report(reason)
|
292
|
+
@client.graphql(
|
293
|
+
"createBoardReport",
|
294
|
+
Mutations.report_comment,
|
295
|
+
id: @id,
|
296
|
+
reason: reason
|
297
|
+
)
|
298
|
+
nil
|
299
|
+
end
|
300
|
+
|
211
301
|
def to_s
|
212
302
|
@content
|
213
303
|
end
|
@@ -270,6 +360,52 @@ class Post
|
|
270
360
|
u["post"]["votes"]["items"].map { |vote| User.new(@client, vote["user"]) }
|
271
361
|
end
|
272
362
|
|
363
|
+
def create_comment(content)
|
364
|
+
c = @client.graphql(
|
365
|
+
"createComment",
|
366
|
+
Mutations.create_comment,
|
367
|
+
input: {
|
368
|
+
postId: @id,
|
369
|
+
body: content
|
370
|
+
}
|
371
|
+
)
|
372
|
+
Comment.new(@client, c["createComment"]["comment"])
|
373
|
+
end
|
374
|
+
|
375
|
+
def edit(title: @title, content: @content, repl_id: @repl.id, show_hosted: false)
|
376
|
+
p = @client.graphql(
|
377
|
+
"updatePost",
|
378
|
+
Mutations.edit_post,
|
379
|
+
input: {
|
380
|
+
id: @id,
|
381
|
+
title: title,
|
382
|
+
body: content,
|
383
|
+
replId: repl_id,
|
384
|
+
showHosted: show_hosted
|
385
|
+
}
|
386
|
+
)
|
387
|
+
Post.new(@client, p["updatePost"]["post"])
|
388
|
+
end
|
389
|
+
|
390
|
+
def delete
|
391
|
+
@client.graphql(
|
392
|
+
"deletePost",
|
393
|
+
Mutations.delete_post,
|
394
|
+
id: @id
|
395
|
+
)
|
396
|
+
nil
|
397
|
+
end
|
398
|
+
|
399
|
+
def report(reason)
|
400
|
+
@client.graphql(
|
401
|
+
"createBoardReport",
|
402
|
+
Mutations.report_post,
|
403
|
+
id: @id,
|
404
|
+
reason: reason
|
405
|
+
)
|
406
|
+
nil
|
407
|
+
end
|
408
|
+
|
273
409
|
def to_s
|
274
410
|
@title
|
275
411
|
end
|
@@ -438,6 +574,15 @@ class Client
|
|
438
574
|
Repl.new(self, r["repl"])
|
439
575
|
end
|
440
576
|
|
577
|
+
def get_repl_comment(id)
|
578
|
+
c = graphql(
|
579
|
+
"ReplViewComment",
|
580
|
+
Queries.get_repl_comment,
|
581
|
+
id: id
|
582
|
+
)
|
583
|
+
ReplComment.new(self, c["replComment"])
|
584
|
+
end
|
585
|
+
|
441
586
|
def get_board(name)
|
442
587
|
b = graphql(
|
443
588
|
"boardBySlug",
|
@@ -462,7 +607,7 @@ class Client
|
|
462
607
|
p = graphql(
|
463
608
|
"PostsFeed",
|
464
609
|
Queries.get_posts,
|
465
|
-
|
610
|
+
boardSlugs: [board],
|
466
611
|
order: order,
|
467
612
|
count: count,
|
468
613
|
after: after,
|
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:
|
4
|
+
version: 2.0.2
|
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-
|
11
|
+
date: 2021-03-15 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: http
|