elephrame 0.4.6 → 0.5

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,16 @@
1
+ module Mastodon
2
+ class Account
3
+ NoBotRegex = /#?NoBot/i
4
+
5
+ ##
6
+ # Checks to see if a user has some form of "#NoBot" in their bio or in
7
+ # their profile fields (so we can make making friendly bots easier!)
8
+ #
9
+ # @return [Bool]
10
+
11
+ def no_bot?
12
+ note =~ NoBotRegex ||
13
+ fields.any? {|f| f.name =~ NoBotRegex || f.value =~ NoBotRegex}
14
+ end
15
+ end
16
+ end
@@ -1,6 +1,10 @@
1
+ require 'htmlentities'
2
+
1
3
  module Mastodon
2
4
  class Status
3
5
  alias_method :rcontent, :content
6
+
7
+ Decoder = HTMLEntities.new
4
8
 
5
9
  ##
6
10
  # Strips all html tags out of +content+
@@ -8,11 +12,18 @@ module Mastodon
8
12
  # @return [String]
9
13
 
10
14
  def strip
11
- rcontent
12
- .gsub(/<\/p><p>/, "\n")
13
- .gsub(/<("[^"]*"|'[^']*'|[^'">])*>/, '')
14
- .gsub('&gt;', '>')
15
- .gsub('&lt;', '<')
15
+ Decoder.decode(rcontent
16
+ .gsub(/(<\/p><p>|<br\s*\/?>)/, "\n")
17
+ .gsub(/<("[^"]*"|'[^']*'|[^'">])*>/, ''))
18
+ end
19
+
20
+ ##
21
+ # Returns whether or not the status is a reblogged status
22
+ #
23
+ # @return [Boolean]
24
+
25
+ def is_reblog?
26
+ not @attributes['reblog'].nil?
16
27
  end
17
28
  end
18
29
  end
@@ -1,3 +1,3 @@
1
1
  module Elephrame
2
- VERSION = "0.4.6"
2
+ VERSION = "0.5"
3
3
  end
data/lib/elephrame.rb CHANGED
@@ -1,8 +1,8 @@
1
1
  require 'moostodon'
2
2
  require_relative 'elephrame/util/status'
3
+ require_relative 'elephrame/util/account'
3
4
 
4
5
  require_relative 'elephrame/version'
5
6
  require_relative 'elephrame/streaming/bots'
6
7
  require_relative 'elephrame/rest/bots'
7
8
  require_relative 'elephrame/mix/bots'
8
-
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: elephrame
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.6
4
+ version: '0.5'
5
5
  platform: ruby
6
6
  authors:
7
7
  - Zac
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2019-03-20 00:00:00.000000000 Z
11
+ date: 2019-08-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -80,6 +80,20 @@ dependencies:
80
80
  - - "~>"
81
81
  - !ruby/object:Gem::Version
82
82
  version: 0.4.0
83
+ - !ruby/object:Gem::Dependency
84
+ name: moo_ebooks
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - "~>"
88
+ - !ruby/object:Gem::Version
89
+ version: '1'
90
+ type: :runtime
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - "~>"
95
+ - !ruby/object:Gem::Version
96
+ version: '1'
83
97
  - !ruby/object:Gem::Dependency
84
98
  name: tracery
85
99
  requirement: !ruby/object:Gem::Requirement
@@ -94,6 +108,20 @@ dependencies:
94
108
  - - "~>"
95
109
  - !ruby/object:Gem::Version
96
110
  version: '0.7'
111
+ - !ruby/object:Gem::Dependency
112
+ name: htmlentities
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - "~>"
116
+ - !ruby/object:Gem::Version
117
+ version: '4.0'
118
+ type: :runtime
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - "~>"
123
+ - !ruby/object:Gem::Version
124
+ version: '4.0'
97
125
  description:
98
126
  email:
99
127
  - thezacattacks@gmail.com
@@ -113,11 +141,15 @@ files:
113
141
  - bin/setup
114
142
  - elephrame.gemspec
115
143
  - examples/README.md
116
- - examples/combined.rb
117
144
  - examples/command.rb
145
+ - examples/ebooks.rb
146
+ - examples/getting_started.org
118
147
  - examples/interact.rb
148
+ - examples/markov.rb
149
+ - examples/markov_files/manifesto.txt
119
150
  - examples/notbot_check.rb
120
151
  - examples/periodic.rb
152
+ - examples/periodic_interact.rb
121
153
  - examples/reply.rb
122
154
  - examples/tracery_adv.rb
123
155
  - examples/tracery_files/default.json
@@ -132,6 +164,7 @@ files:
132
164
  - lib/elephrame.rb
133
165
  - lib/elephrame/bot.rb
134
166
  - lib/elephrame/mix/bots.rb
167
+ - lib/elephrame/mix/generative.rb
135
168
  - lib/elephrame/mix/tracery.rb
136
169
  - lib/elephrame/rest/bots.rb
137
170
  - lib/elephrame/rest/rest.rb
@@ -141,6 +174,7 @@ files:
141
174
  - lib/elephrame/streaming/reply.rb
142
175
  - lib/elephrame/streaming/streaming.rb
143
176
  - lib/elephrame/streaming/watcher.rb
177
+ - lib/elephrame/util/account.rb
144
178
  - lib/elephrame/util/status.rb
145
179
  - lib/elephrame/version.rb
146
180
  homepage: https://github.com/theZacAttacks/elephrame
@@ -166,7 +200,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
166
200
  - !ruby/object:Gem::Version
167
201
  version: '0'
168
202
  requirements: []
169
- rubygems_version: 3.0.1
203
+ rubygems_version: 3.0.4
170
204
  signing_key:
171
205
  specification_version: 4
172
206
  summary: A framework for assisting in making mastodon/pleroma bots