elephrame 0.4.6 → 0.5

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.
@@ -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