├── .gitignore ├── .nvmrc ├── changelog.md ├── config.example.js ├── demo.sh ├── docs ├── favicon.ico ├── index.html ├── logo.svg ├── readme.md ├── squirminal.js ├── styles.css ├── tinytoast.js └── water.css ├── index.js ├── lib ├── helpers.js ├── mastodonCount │ ├── counter.js │ └── url_regex.js ├── posters │ ├── github.js │ ├── index.js │ ├── linkace.js │ ├── mastodon.js │ ├── microblog.js │ ├── omnivore.js │ ├── webhook.js │ └── webmention.js └── presets.js ├── package-lock.json ├── package.json ├── readme.md └── screenshot.png /.gitignore: -------------------------------------------------------------------------------- 1 | config.js 2 | node_modules 3 | data 4 | scratch.txt 5 | -------------------------------------------------------------------------------- /.nvmrc: -------------------------------------------------------------------------------- 1 | 19 2 | -------------------------------------------------------------------------------- /changelog.md: -------------------------------------------------------------------------------- 1 | [2023-01-20] 2 | 3 | - Added support for JSON feeds 4 | - Fixed bug where webhooks on the config editor wouldn't work 5 | -------------------------------------------------------------------------------- /config.example.js: -------------------------------------------------------------------------------- 1 | import helpers from './lib/helpers.js' 2 | import presets from './lib/presets.js' 3 | import { SERVICES } from './lib/posters/index.js' 4 | 5 | export default { 6 | services: { 7 | [SERVICES.MICROBLOG]: { 8 | siteUrl: '', // https://mycoolname.micro.blog 9 | apiKey: '', // get an API from https://micro.blog/account/apps 10 | } 11 | }, 12 | sites: [ 13 | { 14 | name: "example.com", 15 | feed: "http://example.com/feed", 16 | categories: ["my category"], 17 | transform: presets.default, 18 | services: [SERVICES.MICROBLOG] 19 | } 20 | ] 21 | } 22 | -------------------------------------------------------------------------------- /demo.sh: -------------------------------------------------------------------------------- 1 | echo "" 2 | echo "" 3 | echo " ⚙️ Fetching for status.lol" 4 | echo " ⭐ Created post on Micro.blog!" 5 | echo " ⭐ Created post on Mastodon!" 6 | echo " ⚙️ Fetching for Letterboxd" 7 | echo " ⭐ Created post on Micro.blog!" 8 | echo " ⚙️ Fetching for Nexus" 9 | echo " ❎ No new items found for Nexus" 10 | echo "" 11 | echo "" 12 | -------------------------------------------------------------------------------- /docs/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rknightuk/echo/8a86e4b0af8b72fa76077851b5c0ed2e44f94e16/docs/favicon.ico -------------------------------------------------------------------------------- /docs/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 | 5 | 6 | 7 | 8 |by Robb Knight
111 |124 |138 | 129 | $ node index.js 130 | ⚙️ Fetching for status.lol 131 | ⭐ Created post on Micro.blog! 132 | ⭐ Created post on Mastodon! 133 | ⚙️ Fetching for Letterboxed 134 | ⭐ Created post on Micro.blog! 135 | ⚙️ Fetching for Nexus 136 | ❎ No new items found for Nexus 137 |
Echo is a node script to post new items from an RSS feed to various services including Micro.blog and Mastodon. Checkout the readme on GitHub for installation instructions. Use the forms below to generate your config.
144 | 145 |This review may contain spoilers.
' 45 | const SPOILER_TEXT_REVIEW = ' (contains spoilers)' 46 | let content = data.content.trim() 47 | data.title = data.title.replace(SPOILER_TEXT_REVIEW, '') 48 | const spoilers = content.includes(SPOILER_TEXT) ? data['letterboxd:filmTitle'] : false 49 | content = content.replace(SPOILER_TEXT, '') 50 | // remove movie poster from content 51 | if (data.content.includes('img src=')) 52 | { 53 | content = content.replace(content.match(/(.*?<\/p>)/g)[0], '')
54 | }
55 | content = `${data.title}
56 |
57 | ${content}`
58 | return {
59 | content: content,
60 | date: new Date(data.isoDate).toISOString(),
61 | spoilers: spoilers,
62 | }
63 | }
64 | },
65 | }
66 |
--------------------------------------------------------------------------------
/package-lock.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "echo",
3 | "lockfileVersion": 2,
4 | "requires": true,
5 | "packages": {
6 | "": {
7 | "dependencies": {
8 | "@remy/webmention": "^1.5.0",
9 | "cheerio": "^1.0.0-rc.12",
10 | "html-entities": "^2.4.0",
11 | "html-to-text": "^9.0.3",
12 | "rss-parser": "^3.12.0",
13 | "turndown": "^7.1.1",
14 | "url-regex": "^5.0.0",
15 | "uuid": "^9.0.0"
16 | }
17 | },
18 | "node_modules/@remy/webmention": {
19 | "version": "1.5.0",
20 | "resolved": "https://registry.npmjs.org/@remy/webmention/-/webmention-1.5.0.tgz",
21 | "integrity": "sha512-50HD/WfXlykMgQxX5Oz9Kzl8WqBbkdXP58mbd7VkBh4ZcKBixNoObyeCeomtTPW36kUMBe9icF4MofF4FC42mw==",
22 | "dependencies": {
23 | "cheerio": "^0.22.0",
24 | "clui": "^0.3.6",
25 | "decodeuricomponent": "^0.3.1",
26 | "follow-redirects": "^1.7.0",
27 | "li": "^1.3.0",
28 | "microformat-node": "^2.0.1",
29 | "ms": "^2.1.2",
30 | "node-fetch": "^2.6.1",
31 | "optimist": "^0.6.1",
32 | "rss-parser": "^3.7.0",
33 | "uuid": "^3.3.2"
34 | },
35 | "bin": {
36 | "webmention": "bin/wm.js",
37 | "wm": "bin/wm.js"
38 | }
39 | },
40 | "node_modules/@remy/webmention/node_modules/cheerio": {
41 | "version": "0.22.0",
42 | "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-0.22.0.tgz",
43 | "integrity": "sha512-8/MzidM6G/TgRelkzDG13y3Y9LxBjCb+8yOEZ9+wwq5gVF2w2pV0wmHvjfT0RvuxGyR7UEuK36r+yYMbT4uKgA==",
44 | "dependencies": {
45 | "css-select": "~1.2.0",
46 | "dom-serializer": "~0.1.0",
47 | "entities": "~1.1.1",
48 | "htmlparser2": "^3.9.1",
49 | "lodash.assignin": "^4.0.9",
50 | "lodash.bind": "^4.1.4",
51 | "lodash.defaults": "^4.0.1",
52 | "lodash.filter": "^4.4.0",
53 | "lodash.flatten": "^4.2.0",
54 | "lodash.foreach": "^4.3.0",
55 | "lodash.map": "^4.4.0",
56 | "lodash.merge": "^4.4.0",
57 | "lodash.pick": "^4.2.1",
58 | "lodash.reduce": "^4.4.0",
59 | "lodash.reject": "^4.4.0",
60 | "lodash.some": "^4.4.0"
61 | },
62 | "engines": {
63 | "node": ">= 0.6"
64 | }
65 | },
66 | "node_modules/@remy/webmention/node_modules/css-select": {
67 | "version": "1.2.0",
68 | "resolved": "https://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz",
69 | "integrity": "sha512-dUQOBoqdR7QwV90WysXPLXG5LO7nhYBgiWVfxF80DKPF8zx1t/pUd2FYy73emg3zrjtM6dzmYgbHKfV2rxiHQA==",
70 | "dependencies": {
71 | "boolbase": "~1.0.0",
72 | "css-what": "2.1",
73 | "domutils": "1.5.1",
74 | "nth-check": "~1.0.1"
75 | }
76 | },
77 | "node_modules/@remy/webmention/node_modules/css-what": {
78 | "version": "2.1.3",
79 | "resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.3.tgz",
80 | "integrity": "sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg==",
81 | "engines": {
82 | "node": "*"
83 | }
84 | },
85 | "node_modules/@remy/webmention/node_modules/dom-serializer": {
86 | "version": "0.1.1",
87 | "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.1.tgz",
88 | "integrity": "sha512-l0IU0pPzLWSHBcieZbpOKgkIn3ts3vAh7ZuFyXNwJxJXk/c4Gwj9xaTJwIDVQCXawWD0qb3IzMGH5rglQaO0XA==",
89 | "dependencies": {
90 | "domelementtype": "^1.3.0",
91 | "entities": "^1.1.1"
92 | }
93 | },
94 | "node_modules/@remy/webmention/node_modules/domelementtype": {
95 | "version": "1.3.1",
96 | "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz",
97 | "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w=="
98 | },
99 | "node_modules/@remy/webmention/node_modules/domhandler": {
100 | "version": "2.4.2",
101 | "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz",
102 | "integrity": "sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==",
103 | "dependencies": {
104 | "domelementtype": "1"
105 | }
106 | },
107 | "node_modules/@remy/webmention/node_modules/domutils": {
108 | "version": "1.5.1",
109 | "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz",
110 | "integrity": "sha512-gSu5Oi/I+3wDENBsOWBiRK1eoGxcywYSqg3rR960/+EfY0CF4EX1VPkgHOZ3WiS/Jg2DtliF6BhWcHlfpYUcGw==",
111 | "dependencies": {
112 | "dom-serializer": "0",
113 | "domelementtype": "1"
114 | }
115 | },
116 | "node_modules/@remy/webmention/node_modules/entities": {
117 | "version": "1.1.2",
118 | "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz",
119 | "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w=="
120 | },
121 | "node_modules/@remy/webmention/node_modules/htmlparser2": {
122 | "version": "3.10.1",
123 | "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.10.1.tgz",
124 | "integrity": "sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ==",
125 | "dependencies": {
126 | "domelementtype": "^1.3.1",
127 | "domhandler": "^2.3.0",
128 | "domutils": "^1.5.1",
129 | "entities": "^1.1.1",
130 | "inherits": "^2.0.1",
131 | "readable-stream": "^3.1.1"
132 | }
133 | },
134 | "node_modules/@remy/webmention/node_modules/nth-check": {
135 | "version": "1.0.2",
136 | "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz",
137 | "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==",
138 | "dependencies": {
139 | "boolbase": "~1.0.0"
140 | }
141 | },
142 | "node_modules/@remy/webmention/node_modules/uuid": {
143 | "version": "3.4.0",
144 | "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz",
145 | "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==",
146 | "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.",
147 | "bin": {
148 | "uuid": "bin/uuid"
149 | }
150 | },
151 | "node_modules/@selderee/plugin-htmlparser2": {
152 | "version": "0.10.0",
153 | "resolved": "https://registry.npmjs.org/@selderee/plugin-htmlparser2/-/plugin-htmlparser2-0.10.0.tgz",
154 | "integrity": "sha512-gW69MEamZ4wk1OsOq1nG1jcyhXIQcnrsX5JwixVw/9xaiav8TCyjESAruu1Rz9yyInhgBXxkNwMeygKnN2uxNA==",
155 | "dependencies": {
156 | "domhandler": "^5.0.3",
157 | "selderee": "^0.10.0"
158 | },
159 | "funding": {
160 | "url": "https://ko-fi.com/killymxi"
161 | }
162 | },
163 | "node_modules/bluebird": {
164 | "version": "3.4.7",
165 | "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.4.7.tgz",
166 | "integrity": "sha512-iD3898SR7sWVRHbiQv+sHUtHnMvC1o3nW5rAcqnq3uOn07DSAppZYUkIGslDz6gXC7HfunPe7YVBgoEJASPcHA=="
167 | },
168 | "node_modules/boolbase": {
169 | "version": "1.0.0",
170 | "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz",
171 | "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww=="
172 | },
173 | "node_modules/cheerio": {
174 | "version": "1.0.0-rc.12",
175 | "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.12.tgz",
176 | "integrity": "sha512-VqR8m68vM46BNnuZ5NtnGBKIE/DfN0cRIzg9n40EIq9NOv90ayxLBXA8fXC5gquFRGJSTRqBq25Jt2ECLR431Q==",
177 | "dependencies": {
178 | "cheerio-select": "^2.1.0",
179 | "dom-serializer": "^2.0.0",
180 | "domhandler": "^5.0.3",
181 | "domutils": "^3.0.1",
182 | "htmlparser2": "^8.0.1",
183 | "parse5": "^7.0.0",
184 | "parse5-htmlparser2-tree-adapter": "^7.0.0"
185 | },
186 | "engines": {
187 | "node": ">= 6"
188 | },
189 | "funding": {
190 | "url": "https://github.com/cheeriojs/cheerio?sponsor=1"
191 | }
192 | },
193 | "node_modules/cheerio-select": {
194 | "version": "2.1.0",
195 | "resolved": "https://registry.npmjs.org/cheerio-select/-/cheerio-select-2.1.0.tgz",
196 | "integrity": "sha512-9v9kG0LvzrlcungtnJtpGNxY+fzECQKhK4EGJX2vByejiMX84MFNQw4UxPJl3bFbTMw+Dfs37XaIkCwTZfLh4g==",
197 | "dependencies": {
198 | "boolbase": "^1.0.0",
199 | "css-select": "^5.1.0",
200 | "css-what": "^6.1.0",
201 | "domelementtype": "^2.3.0",
202 | "domhandler": "^5.0.3",
203 | "domutils": "^3.0.1"
204 | },
205 | "funding": {
206 | "url": "https://github.com/sponsors/fb55"
207 | }
208 | },
209 | "node_modules/cli-color": {
210 | "version": "0.3.2",
211 | "resolved": "https://registry.npmjs.org/cli-color/-/cli-color-0.3.2.tgz",
212 | "integrity": "sha512-Ys/nDhHNRcxrS4EUI2RS/QCUE+61AMuEOj3sWDX+EIHkJWj+4XkRbOdwdxJteAJKjXYBbeFJMtfaEPd1MBF9pQ==",
213 | "dependencies": {
214 | "d": "~0.1.1",
215 | "es5-ext": "~0.10.2",
216 | "memoizee": "0.3.x",
217 | "timers-ext": "0.1.x"
218 | }
219 | },
220 | "node_modules/clui": {
221 | "version": "0.3.6",
222 | "resolved": "https://registry.npmjs.org/clui/-/clui-0.3.6.tgz",
223 | "integrity": "sha512-Z4UbgZILlIAjkEkZiDOa2aoYjohKx7fa6DxIh6cE9A6WNWZ61iXfQc6CmdC9SKdS5nO0P0UyQ+WfoXfB65e3HQ==",
224 | "dependencies": {
225 | "cli-color": "0.3.2"
226 | }
227 | },
228 | "node_modules/css-select": {
229 | "version": "5.1.0",
230 | "resolved": "https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz",
231 | "integrity": "sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==",
232 | "dependencies": {
233 | "boolbase": "^1.0.0",
234 | "css-what": "^6.1.0",
235 | "domhandler": "^5.0.2",
236 | "domutils": "^3.0.1",
237 | "nth-check": "^2.0.1"
238 | },
239 | "funding": {
240 | "url": "https://github.com/sponsors/fb55"
241 | }
242 | },
243 | "node_modules/css-what": {
244 | "version": "6.1.0",
245 | "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz",
246 | "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==",
247 | "engines": {
248 | "node": ">= 6"
249 | },
250 | "funding": {
251 | "url": "https://github.com/sponsors/fb55"
252 | }
253 | },
254 | "node_modules/d": {
255 | "version": "0.1.1",
256 | "resolved": "https://registry.npmjs.org/d/-/d-0.1.1.tgz",
257 | "integrity": "sha512-0SdM9V9pd/OXJHoWmTfNPTAeD+lw6ZqHg+isPyBFuJsZLSE0Ygg1cYZ/0l6DrKQXMOqGOu1oWupMoOfoRfMZrQ==",
258 | "dependencies": {
259 | "es5-ext": "~0.10.2"
260 | }
261 | },
262 | "node_modules/decodeuricomponent": {
263 | "version": "0.3.1",
264 | "resolved": "https://registry.npmjs.org/decodeuricomponent/-/decodeuricomponent-0.3.1.tgz",
265 | "integrity": "sha512-8PuirnWM7fdE54vRKoVT60RQlkFXgKsi7ToV4pdVbj9jc9qGSFt4P10Oi3UK+FPHZi+lhqRdPyG2QqhSfIhtQQ==",
266 | "dependencies": {
267 | "iconv-lite": "^0.4.19"
268 | }
269 | },
270 | "node_modules/deepmerge": {
271 | "version": "4.3.0",
272 | "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.0.tgz",
273 | "integrity": "sha512-z2wJZXrmeHdvYJp/Ux55wIjqo81G5Bp4c+oELTW+7ar6SogWHajt5a9gO3s3IDaGSAXjDk0vlQKN3rms8ab3og==",
274 | "engines": {
275 | "node": ">=0.10.0"
276 | }
277 | },
278 | "node_modules/dom-serializer": {
279 | "version": "2.0.0",
280 | "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz",
281 | "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==",
282 | "dependencies": {
283 | "domelementtype": "^2.3.0",
284 | "domhandler": "^5.0.2",
285 | "entities": "^4.2.0"
286 | },
287 | "funding": {
288 | "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1"
289 | }
290 | },
291 | "node_modules/dom-serializer/node_modules/entities": {
292 | "version": "4.4.0",
293 | "resolved": "https://registry.npmjs.org/entities/-/entities-4.4.0.tgz",
294 | "integrity": "sha512-oYp7156SP8LkeGD0GF85ad1X9Ai79WtRsZ2gxJqtBuzH+98YUV6jkHEKlZkMbcrjJjIVJNIDP/3WL9wQkoPbWA==",
295 | "engines": {
296 | "node": ">=0.12"
297 | },
298 | "funding": {
299 | "url": "https://github.com/fb55/entities?sponsor=1"
300 | }
301 | },
302 | "node_modules/domelementtype": {
303 | "version": "2.3.0",
304 | "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz",
305 | "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==",
306 | "funding": [
307 | {
308 | "type": "github",
309 | "url": "https://github.com/sponsors/fb55"
310 | }
311 | ]
312 | },
313 | "node_modules/domhandler": {
314 | "version": "5.0.3",
315 | "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz",
316 | "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==",
317 | "dependencies": {
318 | "domelementtype": "^2.3.0"
319 | },
320 | "engines": {
321 | "node": ">= 4"
322 | },
323 | "funding": {
324 | "url": "https://github.com/fb55/domhandler?sponsor=1"
325 | }
326 | },
327 | "node_modules/domino": {
328 | "version": "2.1.6",
329 | "resolved": "https://registry.npmjs.org/domino/-/domino-2.1.6.tgz",
330 | "integrity": "sha512-3VdM/SXBZX2omc9JF9nOPCtDaYQ67BGp5CoLpIQlO2KCAPETs8TcDHacF26jXadGbvUteZzRTeos2fhID5+ucQ=="
331 | },
332 | "node_modules/domutils": {
333 | "version": "3.0.1",
334 | "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.0.1.tgz",
335 | "integrity": "sha512-z08c1l761iKhDFtfXO04C7kTdPBLi41zwOZl00WS8b5eiaebNpY00HKbztwBq+e3vyqWNwWF3mP9YLUeqIrF+Q==",
336 | "dependencies": {
337 | "dom-serializer": "^2.0.0",
338 | "domelementtype": "^2.3.0",
339 | "domhandler": "^5.0.1"
340 | },
341 | "funding": {
342 | "url": "https://github.com/fb55/domutils?sponsor=1"
343 | }
344 | },
345 | "node_modules/ent": {
346 | "version": "2.2.0",
347 | "resolved": "https://registry.npmjs.org/ent/-/ent-2.2.0.tgz",
348 | "integrity": "sha512-GHrMyVZQWvTIdDtpiEXdHZnFQKzeO09apj8Cbl4pKWy4i0Oprcq17usfDt5aO63swf0JOeMWjWQE/LzgSRuWpA=="
349 | },
350 | "node_modules/entities": {
351 | "version": "2.2.0",
352 | "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz",
353 | "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==",
354 | "funding": {
355 | "url": "https://github.com/fb55/entities?sponsor=1"
356 | }
357 | },
358 | "node_modules/es5-ext": {
359 | "version": "0.10.62",
360 | "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.62.tgz",
361 | "integrity": "sha512-BHLqn0klhEpnOKSrzn/Xsz2UIW8j+cGmo9JLzr8BiUapV8hPL9+FliFqjwr9ngW7jWdnxv6eO+/LqyhJVqgrjA==",
362 | "hasInstallScript": true,
363 | "dependencies": {
364 | "es6-iterator": "^2.0.3",
365 | "es6-symbol": "^3.1.3",
366 | "next-tick": "^1.1.0"
367 | },
368 | "engines": {
369 | "node": ">=0.10"
370 | }
371 | },
372 | "node_modules/es6-iterator": {
373 | "version": "2.0.3",
374 | "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz",
375 | "integrity": "sha512-zw4SRzoUkd+cl+ZoE15A9o1oQd920Bb0iOJMQkQhl3jNc03YqVjAhG7scf9C5KWRU/R13Orf588uCC6525o02g==",
376 | "dependencies": {
377 | "d": "1",
378 | "es5-ext": "^0.10.35",
379 | "es6-symbol": "^3.1.1"
380 | }
381 | },
382 | "node_modules/es6-iterator/node_modules/d": {
383 | "version": "1.0.1",
384 | "resolved": "https://registry.npmjs.org/d/-/d-1.0.1.tgz",
385 | "integrity": "sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==",
386 | "dependencies": {
387 | "es5-ext": "^0.10.50",
388 | "type": "^1.0.1"
389 | }
390 | },
391 | "node_modules/es6-iterator/node_modules/type": {
392 | "version": "1.2.0",
393 | "resolved": "https://registry.npmjs.org/type/-/type-1.2.0.tgz",
394 | "integrity": "sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg=="
395 | },
396 | "node_modules/es6-symbol": {
397 | "version": "3.1.3",
398 | "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.3.tgz",
399 | "integrity": "sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA==",
400 | "dependencies": {
401 | "d": "^1.0.1",
402 | "ext": "^1.1.2"
403 | }
404 | },
405 | "node_modules/es6-symbol/node_modules/d": {
406 | "version": "1.0.1",
407 | "resolved": "https://registry.npmjs.org/d/-/d-1.0.1.tgz",
408 | "integrity": "sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==",
409 | "dependencies": {
410 | "es5-ext": "^0.10.50",
411 | "type": "^1.0.1"
412 | }
413 | },
414 | "node_modules/es6-symbol/node_modules/type": {
415 | "version": "1.2.0",
416 | "resolved": "https://registry.npmjs.org/type/-/type-1.2.0.tgz",
417 | "integrity": "sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg=="
418 | },
419 | "node_modules/es6-weak-map": {
420 | "version": "0.1.4",
421 | "resolved": "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-0.1.4.tgz",
422 | "integrity": "sha512-P+N5Cd2TXeb7G59euFiM7snORspgbInS29Nbf3KNO2JQp/DyhvMCDWd58nsVAXwYJ6W3Bx7qDdy6QQ3PCJ7jKQ==",
423 | "dependencies": {
424 | "d": "~0.1.1",
425 | "es5-ext": "~0.10.6",
426 | "es6-iterator": "~0.1.3",
427 | "es6-symbol": "~2.0.1"
428 | }
429 | },
430 | "node_modules/es6-weak-map/node_modules/es6-iterator": {
431 | "version": "0.1.3",
432 | "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-0.1.3.tgz",
433 | "integrity": "sha512-6TOmbFM6OPWkTe+bQ3ZuUkvqcWUjAnYjKUCLdbvRsAUz2Pr+fYIibwNXNkLNtIK9PPFbNMZZddaRNkyJhlGJhA==",
434 | "dependencies": {
435 | "d": "~0.1.1",
436 | "es5-ext": "~0.10.5",
437 | "es6-symbol": "~2.0.1"
438 | }
439 | },
440 | "node_modules/es6-weak-map/node_modules/es6-symbol": {
441 | "version": "2.0.1",
442 | "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-2.0.1.tgz",
443 | "integrity": "sha512-wjobO4zO8726HVU7mI2OA/B6QszqwHJuKab7gKHVx+uRfVVYGcWJkCIFxV2Madqb9/RUSrhJ/r6hPfG7FsWtow==",
444 | "dependencies": {
445 | "d": "~0.1.1",
446 | "es5-ext": "~0.10.5"
447 | }
448 | },
449 | "node_modules/event-emitter": {
450 | "version": "0.3.5",
451 | "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz",
452 | "integrity": "sha512-D9rRn9y7kLPnJ+hMq7S/nhvoKwwvVJahBi2BPmx3bvbsEdK3W9ii8cBSGjP+72/LnM4n6fo3+dkCX5FeTQruXA==",
453 | "dependencies": {
454 | "d": "1",
455 | "es5-ext": "~0.10.14"
456 | }
457 | },
458 | "node_modules/event-emitter/node_modules/d": {
459 | "version": "1.0.1",
460 | "resolved": "https://registry.npmjs.org/d/-/d-1.0.1.tgz",
461 | "integrity": "sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==",
462 | "dependencies": {
463 | "es5-ext": "^0.10.50",
464 | "type": "^1.0.1"
465 | }
466 | },
467 | "node_modules/event-emitter/node_modules/type": {
468 | "version": "1.2.0",
469 | "resolved": "https://registry.npmjs.org/type/-/type-1.2.0.tgz",
470 | "integrity": "sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg=="
471 | },
472 | "node_modules/ext": {
473 | "version": "1.7.0",
474 | "resolved": "https://registry.npmjs.org/ext/-/ext-1.7.0.tgz",
475 | "integrity": "sha512-6hxeJYaL110a9b5TEJSj0gojyHQAmA2ch5Os+ySCiA1QGdS697XWY1pzsrSjqA9LDEEgdB/KypIlR59RcLuHYw==",
476 | "dependencies": {
477 | "type": "^2.7.2"
478 | }
479 | },
480 | "node_modules/follow-redirects": {
481 | "version": "1.15.5",
482 | "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.5.tgz",
483 | "integrity": "sha512-vSFWUON1B+yAw1VN4xMfxgn5fTUiaOzAJCKBwIIgT/+7CuGy9+r+5gITvP62j3RmaD5Ph65UaERdOSRGUzZtgw==",
484 | "funding": [
485 | {
486 | "type": "individual",
487 | "url": "https://github.com/sponsors/RubenVerborgh"
488 | }
489 | ],
490 | "engines": {
491 | "node": ">=4.0"
492 | },
493 | "peerDependenciesMeta": {
494 | "debug": {
495 | "optional": true
496 | }
497 | }
498 | },
499 | "node_modules/html-entities": {
500 | "version": "2.4.0",
501 | "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.4.0.tgz",
502 | "integrity": "sha512-igBTJcNNNhvZFRtm8uA6xMY6xYleeDwn3PeBCkDz7tHttv4F2hsDI2aPgNERWzvRcNYHNT3ymRaQzllmXj4YsQ==",
503 | "funding": [
504 | {
505 | "type": "github",
506 | "url": "https://github.com/sponsors/mdevils"
507 | },
508 | {
509 | "type": "patreon",
510 | "url": "https://patreon.com/mdevils"
511 | }
512 | ]
513 | },
514 | "node_modules/html-to-text": {
515 | "version": "9.0.3",
516 | "resolved": "https://registry.npmjs.org/html-to-text/-/html-to-text-9.0.3.tgz",
517 | "integrity": "sha512-hxDF1kVCF2uw4VUJ3vr2doc91pXf2D5ngKcNviSitNkhP9OMOaJkDrFIFL6RMvko7NisWTEiqGpQ9LAxcVok1w==",
518 | "dependencies": {
519 | "@selderee/plugin-htmlparser2": "^0.10.0",
520 | "deepmerge": "^4.2.2",
521 | "dom-serializer": "^2.0.0",
522 | "htmlparser2": "^8.0.1",
523 | "selderee": "^0.10.0"
524 | },
525 | "engines": {
526 | "node": ">=14"
527 | }
528 | },
529 | "node_modules/htmlparser2": {
530 | "version": "8.0.1",
531 | "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-8.0.1.tgz",
532 | "integrity": "sha512-4lVbmc1diZC7GUJQtRQ5yBAeUCL1exyMwmForWkRLnwyzWBFxN633SALPMGYaWZvKe9j1pRZJpauvmxENSp/EA==",
533 | "funding": [
534 | "https://github.com/fb55/htmlparser2?sponsor=1",
535 | {
536 | "type": "github",
537 | "url": "https://github.com/sponsors/fb55"
538 | }
539 | ],
540 | "dependencies": {
541 | "domelementtype": "^2.3.0",
542 | "domhandler": "^5.0.2",
543 | "domutils": "^3.0.1",
544 | "entities": "^4.3.0"
545 | }
546 | },
547 | "node_modules/htmlparser2/node_modules/entities": {
548 | "version": "4.4.0",
549 | "resolved": "https://registry.npmjs.org/entities/-/entities-4.4.0.tgz",
550 | "integrity": "sha512-oYp7156SP8LkeGD0GF85ad1X9Ai79WtRsZ2gxJqtBuzH+98YUV6jkHEKlZkMbcrjJjIVJNIDP/3WL9wQkoPbWA==",
551 | "engines": {
552 | "node": ">=0.12"
553 | },
554 | "funding": {
555 | "url": "https://github.com/fb55/entities?sponsor=1"
556 | }
557 | },
558 | "node_modules/iconv-lite": {
559 | "version": "0.4.24",
560 | "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
561 | "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==",
562 | "dependencies": {
563 | "safer-buffer": ">= 2.1.2 < 3"
564 | },
565 | "engines": {
566 | "node": ">=0.10.0"
567 | }
568 | },
569 | "node_modules/inherits": {
570 | "version": "2.0.4",
571 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
572 | "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
573 | },
574 | "node_modules/ip-regex": {
575 | "version": "4.3.0",
576 | "resolved": "https://registry.npmjs.org/ip-regex/-/ip-regex-4.3.0.tgz",
577 | "integrity": "sha512-B9ZWJxHHOHUhUjCPrMpLD4xEq35bUTClHM1S6CBU5ixQnkZmwipwgc96vAd7AAGM9TGHvJR+Uss+/Ak6UphK+Q==",
578 | "engines": {
579 | "node": ">=8"
580 | }
581 | },
582 | "node_modules/leac": {
583 | "version": "0.6.0",
584 | "resolved": "https://registry.npmjs.org/leac/-/leac-0.6.0.tgz",
585 | "integrity": "sha512-y+SqErxb8h7nE/fiEX07jsbuhrpO9lL8eca7/Y1nuWV2moNlXhyd59iDGcRf6moVyDMbmTNzL40SUyrFU/yDpg==",
586 | "funding": {
587 | "url": "https://ko-fi.com/killymxi"
588 | }
589 | },
590 | "node_modules/li": {
591 | "version": "1.3.0",
592 | "resolved": "https://registry.npmjs.org/li/-/li-1.3.0.tgz",
593 | "integrity": "sha512-z34TU6GlMram52Tss5mt1m//ifRIpKH5Dqm7yUVOdHI+BQCs9qGPHFaCUTIzsWX7edN30aa2WrPwR7IO10FHaw=="
594 | },
595 | "node_modules/lodash.assignin": {
596 | "version": "4.2.0",
597 | "resolved": "https://registry.npmjs.org/lodash.assignin/-/lodash.assignin-4.2.0.tgz",
598 | "integrity": "sha512-yX/rx6d/UTVh7sSVWVSIMjfnz95evAgDFdb1ZozC35I9mSFCkmzptOzevxjgbQUsc78NR44LVHWjsoMQXy9FDg=="
599 | },
600 | "node_modules/lodash.bind": {
601 | "version": "4.2.1",
602 | "resolved": "https://registry.npmjs.org/lodash.bind/-/lodash.bind-4.2.1.tgz",
603 | "integrity": "sha512-lxdsn7xxlCymgLYo1gGvVrfHmkjDiyqVv62FAeF2i5ta72BipE1SLxw8hPEPLhD4/247Ijw07UQH7Hq/chT5LA=="
604 | },
605 | "node_modules/lodash.defaults": {
606 | "version": "4.2.0",
607 | "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz",
608 | "integrity": "sha512-qjxPLHd3r5DnsdGacqOMU6pb/avJzdh9tFX2ymgoZE27BmjXrNy/y4LoaiTeAb+O3gL8AfpJGtqfX/ae2leYYQ=="
609 | },
610 | "node_modules/lodash.filter": {
611 | "version": "4.6.0",
612 | "resolved": "https://registry.npmjs.org/lodash.filter/-/lodash.filter-4.6.0.tgz",
613 | "integrity": "sha512-pXYUy7PR8BCLwX5mgJ/aNtyOvuJTdZAo9EQFUvMIYugqmJxnrYaANvTbgndOzHSCSR0wnlBBfRXJL5SbWxo3FQ=="
614 | },
615 | "node_modules/lodash.flatten": {
616 | "version": "4.4.0",
617 | "resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz",
618 | "integrity": "sha512-C5N2Z3DgnnKr0LOpv/hKCgKdb7ZZwafIrsesve6lmzvZIRZRGaZ/l6Q8+2W7NaT+ZwO3fFlSCzCzrDCFdJfZ4g=="
619 | },
620 | "node_modules/lodash.foreach": {
621 | "version": "4.5.0",
622 | "resolved": "https://registry.npmjs.org/lodash.foreach/-/lodash.foreach-4.5.0.tgz",
623 | "integrity": "sha512-aEXTF4d+m05rVOAUG3z4vZZ4xVexLKZGF0lIxuHZ1Hplpk/3B6Z1+/ICICYRLm7c41Z2xiejbkCkJoTlypoXhQ=="
624 | },
625 | "node_modules/lodash.map": {
626 | "version": "4.6.0",
627 | "resolved": "https://registry.npmjs.org/lodash.map/-/lodash.map-4.6.0.tgz",
628 | "integrity": "sha512-worNHGKLDetmcEYDvh2stPCrrQRkP20E4l0iIS7F8EvzMqBBi7ltvFN5m1HvTf1P7Jk1txKhvFcmYsCr8O2F1Q=="
629 | },
630 | "node_modules/lodash.merge": {
631 | "version": "4.6.2",
632 | "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz",
633 | "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ=="
634 | },
635 | "node_modules/lodash.pick": {
636 | "version": "4.4.0",
637 | "resolved": "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz",
638 | "integrity": "sha512-hXt6Ul/5yWjfklSGvLQl8vM//l3FtyHZeuelpzK6mm99pNvN9yTDruNZPEJZD1oWrqo+izBmB7oUfWgcCX7s4Q=="
639 | },
640 | "node_modules/lodash.reduce": {
641 | "version": "4.6.0",
642 | "resolved": "https://registry.npmjs.org/lodash.reduce/-/lodash.reduce-4.6.0.tgz",
643 | "integrity": "sha512-6raRe2vxCYBhpBu+B+TtNGUzah+hQjVdu3E17wfusjyrXBka2nBS8OH/gjVZ5PvHOhWmIZTYri09Z6n/QfnNMw=="
644 | },
645 | "node_modules/lodash.reject": {
646 | "version": "4.6.0",
647 | "resolved": "https://registry.npmjs.org/lodash.reject/-/lodash.reject-4.6.0.tgz",
648 | "integrity": "sha512-qkTuvgEzYdyhiJBx42YPzPo71R1aEr0z79kAv7Ixg8wPFEjgRgJdUsGMG3Hf3OYSF/kHI79XhNlt+5Ar6OzwxQ=="
649 | },
650 | "node_modules/lodash.some": {
651 | "version": "4.6.0",
652 | "resolved": "https://registry.npmjs.org/lodash.some/-/lodash.some-4.6.0.tgz",
653 | "integrity": "sha512-j7MJE+TuT51q9ggt4fSgVqro163BEFjAt3u97IqU+JA2DkWl80nFTrowzLpZ/BnpN7rrl0JA/593NAdd8p/scQ=="
654 | },
655 | "node_modules/lru-queue": {
656 | "version": "0.1.0",
657 | "resolved": "https://registry.npmjs.org/lru-queue/-/lru-queue-0.1.0.tgz",
658 | "integrity": "sha512-BpdYkt9EvGl8OfWHDQPISVpcl5xZthb+XPsbELj5AQXxIC8IriDZIQYjBJPEm5rS420sjZ0TLEzRcq5KdBhYrQ==",
659 | "dependencies": {
660 | "es5-ext": "~0.10.2"
661 | }
662 | },
663 | "node_modules/memoizee": {
664 | "version": "0.3.10",
665 | "resolved": "https://registry.npmjs.org/memoizee/-/memoizee-0.3.10.tgz",
666 | "integrity": "sha512-LLzVUuWwGBKK188spgOK/ukrp5zvd9JGsiLDH41pH9vt5jvhZfsu5pxDuAnYAMG8YEGce72KO07sSBy9KkvOfw==",
667 | "dependencies": {
668 | "d": "~0.1.1",
669 | "es5-ext": "~0.10.11",
670 | "es6-weak-map": "~0.1.4",
671 | "event-emitter": "~0.3.4",
672 | "lru-queue": "0.1",
673 | "next-tick": "~0.2.2",
674 | "timers-ext": "0.1"
675 | }
676 | },
677 | "node_modules/memoizee/node_modules/next-tick": {
678 | "version": "0.2.2",
679 | "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-0.2.2.tgz",
680 | "integrity": "sha512-f7h4svPtl+QidoBv4taKXUjJ70G2asaZ8G28nS0OkqaalX8dwwrtWtyxEDPK62AC00ur/+/E0pUwBwY5EPn15Q=="
681 | },
682 | "node_modules/microformat-node": {
683 | "version": "2.0.1",
684 | "resolved": "https://registry.npmjs.org/microformat-node/-/microformat-node-2.0.1.tgz",
685 | "integrity": "sha512-xMVKlQnCNP7DZyyEP3cpwMF3uahJ0NdTN+SnK+PuFpRtUglTvbIjX4ZbvmqF4U9nuMdW2F3Nh5aya4OjmDyEpQ==",
686 | "dependencies": {
687 | "bluebird": "3.4.x",
688 | "cheerio": "0.22.x",
689 | "ent": "^2.2.0",
690 | "microformat-shiv": "^2.0.0"
691 | },
692 | "engines": {
693 | "node": ">= 0.10.x"
694 | }
695 | },
696 | "node_modules/microformat-node/node_modules/cheerio": {
697 | "version": "0.22.0",
698 | "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-0.22.0.tgz",
699 | "integrity": "sha512-8/MzidM6G/TgRelkzDG13y3Y9LxBjCb+8yOEZ9+wwq5gVF2w2pV0wmHvjfT0RvuxGyR7UEuK36r+yYMbT4uKgA==",
700 | "dependencies": {
701 | "css-select": "~1.2.0",
702 | "dom-serializer": "~0.1.0",
703 | "entities": "~1.1.1",
704 | "htmlparser2": "^3.9.1",
705 | "lodash.assignin": "^4.0.9",
706 | "lodash.bind": "^4.1.4",
707 | "lodash.defaults": "^4.0.1",
708 | "lodash.filter": "^4.4.0",
709 | "lodash.flatten": "^4.2.0",
710 | "lodash.foreach": "^4.3.0",
711 | "lodash.map": "^4.4.0",
712 | "lodash.merge": "^4.4.0",
713 | "lodash.pick": "^4.2.1",
714 | "lodash.reduce": "^4.4.0",
715 | "lodash.reject": "^4.4.0",
716 | "lodash.some": "^4.4.0"
717 | },
718 | "engines": {
719 | "node": ">= 0.6"
720 | }
721 | },
722 | "node_modules/microformat-node/node_modules/css-select": {
723 | "version": "1.2.0",
724 | "resolved": "https://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz",
725 | "integrity": "sha512-dUQOBoqdR7QwV90WysXPLXG5LO7nhYBgiWVfxF80DKPF8zx1t/pUd2FYy73emg3zrjtM6dzmYgbHKfV2rxiHQA==",
726 | "dependencies": {
727 | "boolbase": "~1.0.0",
728 | "css-what": "2.1",
729 | "domutils": "1.5.1",
730 | "nth-check": "~1.0.1"
731 | }
732 | },
733 | "node_modules/microformat-node/node_modules/css-what": {
734 | "version": "2.1.3",
735 | "resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.3.tgz",
736 | "integrity": "sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg==",
737 | "engines": {
738 | "node": "*"
739 | }
740 | },
741 | "node_modules/microformat-node/node_modules/dom-serializer": {
742 | "version": "0.1.1",
743 | "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.1.tgz",
744 | "integrity": "sha512-l0IU0pPzLWSHBcieZbpOKgkIn3ts3vAh7ZuFyXNwJxJXk/c4Gwj9xaTJwIDVQCXawWD0qb3IzMGH5rglQaO0XA==",
745 | "dependencies": {
746 | "domelementtype": "^1.3.0",
747 | "entities": "^1.1.1"
748 | }
749 | },
750 | "node_modules/microformat-node/node_modules/domelementtype": {
751 | "version": "1.3.1",
752 | "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz",
753 | "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w=="
754 | },
755 | "node_modules/microformat-node/node_modules/domhandler": {
756 | "version": "2.4.2",
757 | "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz",
758 | "integrity": "sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==",
759 | "dependencies": {
760 | "domelementtype": "1"
761 | }
762 | },
763 | "node_modules/microformat-node/node_modules/domutils": {
764 | "version": "1.5.1",
765 | "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz",
766 | "integrity": "sha512-gSu5Oi/I+3wDENBsOWBiRK1eoGxcywYSqg3rR960/+EfY0CF4EX1VPkgHOZ3WiS/Jg2DtliF6BhWcHlfpYUcGw==",
767 | "dependencies": {
768 | "dom-serializer": "0",
769 | "domelementtype": "1"
770 | }
771 | },
772 | "node_modules/microformat-node/node_modules/entities": {
773 | "version": "1.1.2",
774 | "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz",
775 | "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w=="
776 | },
777 | "node_modules/microformat-node/node_modules/htmlparser2": {
778 | "version": "3.10.1",
779 | "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.10.1.tgz",
780 | "integrity": "sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ==",
781 | "dependencies": {
782 | "domelementtype": "^1.3.1",
783 | "domhandler": "^2.3.0",
784 | "domutils": "^1.5.1",
785 | "entities": "^1.1.1",
786 | "inherits": "^2.0.1",
787 | "readable-stream": "^3.1.1"
788 | }
789 | },
790 | "node_modules/microformat-node/node_modules/nth-check": {
791 | "version": "1.0.2",
792 | "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz",
793 | "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==",
794 | "dependencies": {
795 | "boolbase": "~1.0.0"
796 | }
797 | },
798 | "node_modules/microformat-shiv": {
799 | "version": "2.0.3",
800 | "resolved": "https://registry.npmjs.org/microformat-shiv/-/microformat-shiv-2.0.3.tgz",
801 | "integrity": "sha512-pktHqCmZsrmogS1egCryvZlAqDdvIQPxsDqa7hZ56nFkovqrszMXWJ94CUE9iWRjQRKOUKqLp62iCVO0+iwM2Q=="
802 | },
803 | "node_modules/minimist": {
804 | "version": "0.0.10",
805 | "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz",
806 | "integrity": "sha512-iotkTvxc+TwOm5Ieim8VnSNvCDjCK9S8G3scJ50ZthspSxa7jx50jkhYduuAtAjvfDUwSgOwf8+If99AlOEhyw=="
807 | },
808 | "node_modules/ms": {
809 | "version": "2.1.3",
810 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
811 | "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA=="
812 | },
813 | "node_modules/next-tick": {
814 | "version": "1.1.0",
815 | "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.1.0.tgz",
816 | "integrity": "sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ=="
817 | },
818 | "node_modules/node-fetch": {
819 | "version": "2.7.0",
820 | "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz",
821 | "integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==",
822 | "dependencies": {
823 | "whatwg-url": "^5.0.0"
824 | },
825 | "engines": {
826 | "node": "4.x || >=6.0.0"
827 | },
828 | "peerDependencies": {
829 | "encoding": "^0.1.0"
830 | },
831 | "peerDependenciesMeta": {
832 | "encoding": {
833 | "optional": true
834 | }
835 | }
836 | },
837 | "node_modules/nth-check": {
838 | "version": "2.1.1",
839 | "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz",
840 | "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==",
841 | "dependencies": {
842 | "boolbase": "^1.0.0"
843 | },
844 | "funding": {
845 | "url": "https://github.com/fb55/nth-check?sponsor=1"
846 | }
847 | },
848 | "node_modules/optimist": {
849 | "version": "0.6.1",
850 | "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz",
851 | "integrity": "sha512-snN4O4TkigujZphWLN0E//nQmm7790RYaE53DdL7ZYwee2D8DDo9/EyYiKUfN3rneWUjhJnueija3G9I2i0h3g==",
852 | "dependencies": {
853 | "minimist": "~0.0.1",
854 | "wordwrap": "~0.0.2"
855 | }
856 | },
857 | "node_modules/parse5": {
858 | "version": "7.1.2",
859 | "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz",
860 | "integrity": "sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==",
861 | "dependencies": {
862 | "entities": "^4.4.0"
863 | },
864 | "funding": {
865 | "url": "https://github.com/inikulin/parse5?sponsor=1"
866 | }
867 | },
868 | "node_modules/parse5-htmlparser2-tree-adapter": {
869 | "version": "7.0.0",
870 | "resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-7.0.0.tgz",
871 | "integrity": "sha512-B77tOZrqqfUfnVcOrUvfdLbz4pu4RopLD/4vmu3HUPswwTA8OH0EMW9BlWR2B0RCoiZRAHEUu7IxeP1Pd1UU+g==",
872 | "dependencies": {
873 | "domhandler": "^5.0.2",
874 | "parse5": "^7.0.0"
875 | },
876 | "funding": {
877 | "url": "https://github.com/inikulin/parse5?sponsor=1"
878 | }
879 | },
880 | "node_modules/parse5/node_modules/entities": {
881 | "version": "4.4.0",
882 | "resolved": "https://registry.npmjs.org/entities/-/entities-4.4.0.tgz",
883 | "integrity": "sha512-oYp7156SP8LkeGD0GF85ad1X9Ai79WtRsZ2gxJqtBuzH+98YUV6jkHEKlZkMbcrjJjIVJNIDP/3WL9wQkoPbWA==",
884 | "engines": {
885 | "node": ">=0.12"
886 | },
887 | "funding": {
888 | "url": "https://github.com/fb55/entities?sponsor=1"
889 | }
890 | },
891 | "node_modules/parseley": {
892 | "version": "0.11.0",
893 | "resolved": "https://registry.npmjs.org/parseley/-/parseley-0.11.0.tgz",
894 | "integrity": "sha512-VfcwXlBWgTF+unPcr7yu3HSSA6QUdDaDnrHcytVfj5Z8azAyKBDrYnSIfeSxlrEayndNcLmrXzg+Vxbo6DWRXQ==",
895 | "dependencies": {
896 | "leac": "^0.6.0",
897 | "peberminta": "^0.8.0"
898 | },
899 | "funding": {
900 | "url": "https://ko-fi.com/killymxi"
901 | }
902 | },
903 | "node_modules/peberminta": {
904 | "version": "0.8.0",
905 | "resolved": "https://registry.npmjs.org/peberminta/-/peberminta-0.8.0.tgz",
906 | "integrity": "sha512-YYEs+eauIjDH5nUEGi18EohWE0nV2QbGTqmxQcqgZ/0g+laPCQmuIqq7EBLVi9uim9zMgfJv0QBZEnQ3uHw/Tw==",
907 | "funding": {
908 | "url": "https://ko-fi.com/killymxi"
909 | }
910 | },
911 | "node_modules/readable-stream": {
912 | "version": "3.6.2",
913 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz",
914 | "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==",
915 | "dependencies": {
916 | "inherits": "^2.0.3",
917 | "string_decoder": "^1.1.1",
918 | "util-deprecate": "^1.0.1"
919 | },
920 | "engines": {
921 | "node": ">= 6"
922 | }
923 | },
924 | "node_modules/rss-parser": {
925 | "version": "3.13.0",
926 | "resolved": "https://registry.npmjs.org/rss-parser/-/rss-parser-3.13.0.tgz",
927 | "integrity": "sha512-7jWUBV5yGN3rqMMj7CZufl/291QAhvrrGpDNE4k/02ZchL0npisiYYqULF71jCEKoIiHvK/Q2e6IkDwPziT7+w==",
928 | "dependencies": {
929 | "entities": "^2.0.3",
930 | "xml2js": "^0.5.0"
931 | }
932 | },
933 | "node_modules/safe-buffer": {
934 | "version": "5.2.1",
935 | "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
936 | "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==",
937 | "funding": [
938 | {
939 | "type": "github",
940 | "url": "https://github.com/sponsors/feross"
941 | },
942 | {
943 | "type": "patreon",
944 | "url": "https://www.patreon.com/feross"
945 | },
946 | {
947 | "type": "consulting",
948 | "url": "https://feross.org/support"
949 | }
950 | ]
951 | },
952 | "node_modules/safer-buffer": {
953 | "version": "2.1.2",
954 | "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
955 | "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg=="
956 | },
957 | "node_modules/sax": {
958 | "version": "1.3.0",
959 | "resolved": "https://registry.npmjs.org/sax/-/sax-1.3.0.tgz",
960 | "integrity": "sha512-0s+oAmw9zLl1V1cS9BtZN7JAd0cW5e0QH4W3LWEK6a4LaLEA2OTpGYWDY+6XasBLtz6wkm3u1xRw95mRuJ59WA=="
961 | },
962 | "node_modules/selderee": {
963 | "version": "0.10.0",
964 | "resolved": "https://registry.npmjs.org/selderee/-/selderee-0.10.0.tgz",
965 | "integrity": "sha512-DEL/RW/f4qLw/NrVg97xKaEBC8IpzIG2fvxnzCp3Z4yk4jQ3MXom+Imav9wApjxX2dfS3eW7x0DXafJr85i39A==",
966 | "dependencies": {
967 | "parseley": "^0.11.0"
968 | },
969 | "funding": {
970 | "url": "https://ko-fi.com/killymxi"
971 | }
972 | },
973 | "node_modules/string_decoder": {
974 | "version": "1.3.0",
975 | "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz",
976 | "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==",
977 | "dependencies": {
978 | "safe-buffer": "~5.2.0"
979 | }
980 | },
981 | "node_modules/timers-ext": {
982 | "version": "0.1.7",
983 | "resolved": "https://registry.npmjs.org/timers-ext/-/timers-ext-0.1.7.tgz",
984 | "integrity": "sha512-b85NUNzTSdodShTIbky6ZF02e8STtVVfD+fu4aXXShEELpozH+bCpJLYMPZbsABN2wDH7fJpqIoXxJpzbf0NqQ==",
985 | "dependencies": {
986 | "es5-ext": "~0.10.46",
987 | "next-tick": "1"
988 | }
989 | },
990 | "node_modules/tlds": {
991 | "version": "1.248.0",
992 | "resolved": "https://registry.npmjs.org/tlds/-/tlds-1.248.0.tgz",
993 | "integrity": "sha512-noj0KdpWTBhwsKxMOXk0rN9otg4kTgLm4WohERRHbJ9IY+kSDKr3RmjitaQ3JFzny+DyvBOQKlFZhp0G0qNSfg==",
994 | "bin": {
995 | "tlds": "bin.js"
996 | }
997 | },
998 | "node_modules/tr46": {
999 | "version": "0.0.3",
1000 | "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz",
1001 | "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw=="
1002 | },
1003 | "node_modules/turndown": {
1004 | "version": "7.1.1",
1005 | "resolved": "https://registry.npmjs.org/turndown/-/turndown-7.1.1.tgz",
1006 | "integrity": "sha512-BEkXaWH7Wh7e9bd2QumhfAXk5g34+6QUmmWx+0q6ThaVOLuLUqsnkq35HQ5SBHSaxjSfSM7US5o4lhJNH7B9MA==",
1007 | "dependencies": {
1008 | "domino": "^2.1.6"
1009 | }
1010 | },
1011 | "node_modules/type": {
1012 | "version": "2.7.2",
1013 | "resolved": "https://registry.npmjs.org/type/-/type-2.7.2.tgz",
1014 | "integrity": "sha512-dzlvlNlt6AXU7EBSfpAscydQ7gXB+pPGsPnfJnZpiNJBDj7IaJzQlBZYGdEi4R9HmPdBv2XmWJ6YUtoTa7lmCw=="
1015 | },
1016 | "node_modules/url-regex": {
1017 | "version": "5.0.0",
1018 | "resolved": "https://registry.npmjs.org/url-regex/-/url-regex-5.0.0.tgz",
1019 | "integrity": "sha512-O08GjTiAFNsSlrUWfqF1jH0H1W3m35ZyadHrGv5krdnmPPoxP27oDTqux/579PtaroiSGm5yma6KT1mHFH6Y/g==",
1020 | "dependencies": {
1021 | "ip-regex": "^4.1.0",
1022 | "tlds": "^1.203.0"
1023 | },
1024 | "engines": {
1025 | "node": ">=8"
1026 | }
1027 | },
1028 | "node_modules/util-deprecate": {
1029 | "version": "1.0.2",
1030 | "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
1031 | "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw=="
1032 | },
1033 | "node_modules/uuid": {
1034 | "version": "9.0.0",
1035 | "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.0.tgz",
1036 | "integrity": "sha512-MXcSTerfPa4uqyzStbRoTgt5XIe3x5+42+q1sDuy3R5MDk66URdLMOZe5aPX/SQd+kuYAh0FdP/pO28IkQyTeg==",
1037 | "bin": {
1038 | "uuid": "dist/bin/uuid"
1039 | }
1040 | },
1041 | "node_modules/webidl-conversions": {
1042 | "version": "3.0.1",
1043 | "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz",
1044 | "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ=="
1045 | },
1046 | "node_modules/whatwg-url": {
1047 | "version": "5.0.0",
1048 | "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz",
1049 | "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==",
1050 | "dependencies": {
1051 | "tr46": "~0.0.3",
1052 | "webidl-conversions": "^3.0.0"
1053 | }
1054 | },
1055 | "node_modules/wordwrap": {
1056 | "version": "0.0.3",
1057 | "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz",
1058 | "integrity": "sha512-1tMA907+V4QmxV7dbRvb4/8MaRALK6q9Abid3ndMYnbyo8piisCmeONVqVSXqQA3KaP4SLt5b7ud6E2sqP8TFw==",
1059 | "engines": {
1060 | "node": ">=0.4.0"
1061 | }
1062 | },
1063 | "node_modules/xml2js": {
1064 | "version": "0.5.0",
1065 | "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.5.0.tgz",
1066 | "integrity": "sha512-drPFnkQJik/O+uPKpqSgr22mpuFHqKdbS835iAQrUC73L2F5WkboIRd63ai/2Yg6I1jzifPFKH2NTK+cfglkIA==",
1067 | "dependencies": {
1068 | "sax": ">=0.6.0",
1069 | "xmlbuilder": "~11.0.0"
1070 | },
1071 | "engines": {
1072 | "node": ">=4.0.0"
1073 | }
1074 | },
1075 | "node_modules/xmlbuilder": {
1076 | "version": "11.0.1",
1077 | "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz",
1078 | "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==",
1079 | "engines": {
1080 | "node": ">=4.0"
1081 | }
1082 | }
1083 | },
1084 | "dependencies": {
1085 | "@remy/webmention": {
1086 | "version": "1.5.0",
1087 | "resolved": "https://registry.npmjs.org/@remy/webmention/-/webmention-1.5.0.tgz",
1088 | "integrity": "sha512-50HD/WfXlykMgQxX5Oz9Kzl8WqBbkdXP58mbd7VkBh4ZcKBixNoObyeCeomtTPW36kUMBe9icF4MofF4FC42mw==",
1089 | "requires": {
1090 | "cheerio": "^0.22.0",
1091 | "clui": "^0.3.6",
1092 | "decodeuricomponent": "^0.3.1",
1093 | "follow-redirects": "^1.7.0",
1094 | "li": "^1.3.0",
1095 | "microformat-node": "^2.0.1",
1096 | "ms": "^2.1.2",
1097 | "node-fetch": "^2.6.1",
1098 | "optimist": "^0.6.1",
1099 | "rss-parser": "^3.7.0",
1100 | "uuid": "^3.3.2"
1101 | },
1102 | "dependencies": {
1103 | "cheerio": {
1104 | "version": "0.22.0",
1105 | "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-0.22.0.tgz",
1106 | "integrity": "sha512-8/MzidM6G/TgRelkzDG13y3Y9LxBjCb+8yOEZ9+wwq5gVF2w2pV0wmHvjfT0RvuxGyR7UEuK36r+yYMbT4uKgA==",
1107 | "requires": {
1108 | "css-select": "~1.2.0",
1109 | "dom-serializer": "~0.1.0",
1110 | "entities": "~1.1.1",
1111 | "htmlparser2": "^3.9.1",
1112 | "lodash.assignin": "^4.0.9",
1113 | "lodash.bind": "^4.1.4",
1114 | "lodash.defaults": "^4.0.1",
1115 | "lodash.filter": "^4.4.0",
1116 | "lodash.flatten": "^4.2.0",
1117 | "lodash.foreach": "^4.3.0",
1118 | "lodash.map": "^4.4.0",
1119 | "lodash.merge": "^4.4.0",
1120 | "lodash.pick": "^4.2.1",
1121 | "lodash.reduce": "^4.4.0",
1122 | "lodash.reject": "^4.4.0",
1123 | "lodash.some": "^4.4.0"
1124 | }
1125 | },
1126 | "css-select": {
1127 | "version": "1.2.0",
1128 | "resolved": "https://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz",
1129 | "integrity": "sha512-dUQOBoqdR7QwV90WysXPLXG5LO7nhYBgiWVfxF80DKPF8zx1t/pUd2FYy73emg3zrjtM6dzmYgbHKfV2rxiHQA==",
1130 | "requires": {
1131 | "boolbase": "~1.0.0",
1132 | "css-what": "2.1",
1133 | "domutils": "1.5.1",
1134 | "nth-check": "~1.0.1"
1135 | }
1136 | },
1137 | "css-what": {
1138 | "version": "2.1.3",
1139 | "resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.3.tgz",
1140 | "integrity": "sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg=="
1141 | },
1142 | "dom-serializer": {
1143 | "version": "0.1.1",
1144 | "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.1.tgz",
1145 | "integrity": "sha512-l0IU0pPzLWSHBcieZbpOKgkIn3ts3vAh7ZuFyXNwJxJXk/c4Gwj9xaTJwIDVQCXawWD0qb3IzMGH5rglQaO0XA==",
1146 | "requires": {
1147 | "domelementtype": "^1.3.0",
1148 | "entities": "^1.1.1"
1149 | }
1150 | },
1151 | "domelementtype": {
1152 | "version": "1.3.1",
1153 | "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz",
1154 | "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w=="
1155 | },
1156 | "domhandler": {
1157 | "version": "2.4.2",
1158 | "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz",
1159 | "integrity": "sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==",
1160 | "requires": {
1161 | "domelementtype": "1"
1162 | }
1163 | },
1164 | "domutils": {
1165 | "version": "1.5.1",
1166 | "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz",
1167 | "integrity": "sha512-gSu5Oi/I+3wDENBsOWBiRK1eoGxcywYSqg3rR960/+EfY0CF4EX1VPkgHOZ3WiS/Jg2DtliF6BhWcHlfpYUcGw==",
1168 | "requires": {
1169 | "dom-serializer": "0",
1170 | "domelementtype": "1"
1171 | }
1172 | },
1173 | "entities": {
1174 | "version": "1.1.2",
1175 | "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz",
1176 | "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w=="
1177 | },
1178 | "htmlparser2": {
1179 | "version": "3.10.1",
1180 | "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.10.1.tgz",
1181 | "integrity": "sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ==",
1182 | "requires": {
1183 | "domelementtype": "^1.3.1",
1184 | "domhandler": "^2.3.0",
1185 | "domutils": "^1.5.1",
1186 | "entities": "^1.1.1",
1187 | "inherits": "^2.0.1",
1188 | "readable-stream": "^3.1.1"
1189 | }
1190 | },
1191 | "nth-check": {
1192 | "version": "1.0.2",
1193 | "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz",
1194 | "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==",
1195 | "requires": {
1196 | "boolbase": "~1.0.0"
1197 | }
1198 | },
1199 | "uuid": {
1200 | "version": "3.4.0",
1201 | "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz",
1202 | "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A=="
1203 | }
1204 | }
1205 | },
1206 | "@selderee/plugin-htmlparser2": {
1207 | "version": "0.10.0",
1208 | "resolved": "https://registry.npmjs.org/@selderee/plugin-htmlparser2/-/plugin-htmlparser2-0.10.0.tgz",
1209 | "integrity": "sha512-gW69MEamZ4wk1OsOq1nG1jcyhXIQcnrsX5JwixVw/9xaiav8TCyjESAruu1Rz9yyInhgBXxkNwMeygKnN2uxNA==",
1210 | "requires": {
1211 | "domhandler": "^5.0.3",
1212 | "selderee": "^0.10.0"
1213 | }
1214 | },
1215 | "bluebird": {
1216 | "version": "3.4.7",
1217 | "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.4.7.tgz",
1218 | "integrity": "sha512-iD3898SR7sWVRHbiQv+sHUtHnMvC1o3nW5rAcqnq3uOn07DSAppZYUkIGslDz6gXC7HfunPe7YVBgoEJASPcHA=="
1219 | },
1220 | "boolbase": {
1221 | "version": "1.0.0",
1222 | "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz",
1223 | "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww=="
1224 | },
1225 | "cheerio": {
1226 | "version": "1.0.0-rc.12",
1227 | "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.12.tgz",
1228 | "integrity": "sha512-VqR8m68vM46BNnuZ5NtnGBKIE/DfN0cRIzg9n40EIq9NOv90ayxLBXA8fXC5gquFRGJSTRqBq25Jt2ECLR431Q==",
1229 | "requires": {
1230 | "cheerio-select": "^2.1.0",
1231 | "dom-serializer": "^2.0.0",
1232 | "domhandler": "^5.0.3",
1233 | "domutils": "^3.0.1",
1234 | "htmlparser2": "^8.0.1",
1235 | "parse5": "^7.0.0",
1236 | "parse5-htmlparser2-tree-adapter": "^7.0.0"
1237 | }
1238 | },
1239 | "cheerio-select": {
1240 | "version": "2.1.0",
1241 | "resolved": "https://registry.npmjs.org/cheerio-select/-/cheerio-select-2.1.0.tgz",
1242 | "integrity": "sha512-9v9kG0LvzrlcungtnJtpGNxY+fzECQKhK4EGJX2vByejiMX84MFNQw4UxPJl3bFbTMw+Dfs37XaIkCwTZfLh4g==",
1243 | "requires": {
1244 | "boolbase": "^1.0.0",
1245 | "css-select": "^5.1.0",
1246 | "css-what": "^6.1.0",
1247 | "domelementtype": "^2.3.0",
1248 | "domhandler": "^5.0.3",
1249 | "domutils": "^3.0.1"
1250 | }
1251 | },
1252 | "cli-color": {
1253 | "version": "0.3.2",
1254 | "resolved": "https://registry.npmjs.org/cli-color/-/cli-color-0.3.2.tgz",
1255 | "integrity": "sha512-Ys/nDhHNRcxrS4EUI2RS/QCUE+61AMuEOj3sWDX+EIHkJWj+4XkRbOdwdxJteAJKjXYBbeFJMtfaEPd1MBF9pQ==",
1256 | "requires": {
1257 | "d": "~0.1.1",
1258 | "es5-ext": "~0.10.2",
1259 | "memoizee": "0.3.x",
1260 | "timers-ext": "0.1.x"
1261 | }
1262 | },
1263 | "clui": {
1264 | "version": "0.3.6",
1265 | "resolved": "https://registry.npmjs.org/clui/-/clui-0.3.6.tgz",
1266 | "integrity": "sha512-Z4UbgZILlIAjkEkZiDOa2aoYjohKx7fa6DxIh6cE9A6WNWZ61iXfQc6CmdC9SKdS5nO0P0UyQ+WfoXfB65e3HQ==",
1267 | "requires": {
1268 | "cli-color": "0.3.2"
1269 | }
1270 | },
1271 | "css-select": {
1272 | "version": "5.1.0",
1273 | "resolved": "https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz",
1274 | "integrity": "sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==",
1275 | "requires": {
1276 | "boolbase": "^1.0.0",
1277 | "css-what": "^6.1.0",
1278 | "domhandler": "^5.0.2",
1279 | "domutils": "^3.0.1",
1280 | "nth-check": "^2.0.1"
1281 | }
1282 | },
1283 | "css-what": {
1284 | "version": "6.1.0",
1285 | "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz",
1286 | "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw=="
1287 | },
1288 | "d": {
1289 | "version": "0.1.1",
1290 | "resolved": "https://registry.npmjs.org/d/-/d-0.1.1.tgz",
1291 | "integrity": "sha512-0SdM9V9pd/OXJHoWmTfNPTAeD+lw6ZqHg+isPyBFuJsZLSE0Ygg1cYZ/0l6DrKQXMOqGOu1oWupMoOfoRfMZrQ==",
1292 | "requires": {
1293 | "es5-ext": "~0.10.2"
1294 | }
1295 | },
1296 | "decodeuricomponent": {
1297 | "version": "0.3.1",
1298 | "resolved": "https://registry.npmjs.org/decodeuricomponent/-/decodeuricomponent-0.3.1.tgz",
1299 | "integrity": "sha512-8PuirnWM7fdE54vRKoVT60RQlkFXgKsi7ToV4pdVbj9jc9qGSFt4P10Oi3UK+FPHZi+lhqRdPyG2QqhSfIhtQQ==",
1300 | "requires": {
1301 | "iconv-lite": "^0.4.19"
1302 | }
1303 | },
1304 | "deepmerge": {
1305 | "version": "4.3.0",
1306 | "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.0.tgz",
1307 | "integrity": "sha512-z2wJZXrmeHdvYJp/Ux55wIjqo81G5Bp4c+oELTW+7ar6SogWHajt5a9gO3s3IDaGSAXjDk0vlQKN3rms8ab3og=="
1308 | },
1309 | "dom-serializer": {
1310 | "version": "2.0.0",
1311 | "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz",
1312 | "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==",
1313 | "requires": {
1314 | "domelementtype": "^2.3.0",
1315 | "domhandler": "^5.0.2",
1316 | "entities": "^4.2.0"
1317 | },
1318 | "dependencies": {
1319 | "entities": {
1320 | "version": "4.4.0",
1321 | "resolved": "https://registry.npmjs.org/entities/-/entities-4.4.0.tgz",
1322 | "integrity": "sha512-oYp7156SP8LkeGD0GF85ad1X9Ai79WtRsZ2gxJqtBuzH+98YUV6jkHEKlZkMbcrjJjIVJNIDP/3WL9wQkoPbWA=="
1323 | }
1324 | }
1325 | },
1326 | "domelementtype": {
1327 | "version": "2.3.0",
1328 | "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz",
1329 | "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw=="
1330 | },
1331 | "domhandler": {
1332 | "version": "5.0.3",
1333 | "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz",
1334 | "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==",
1335 | "requires": {
1336 | "domelementtype": "^2.3.0"
1337 | }
1338 | },
1339 | "domino": {
1340 | "version": "2.1.6",
1341 | "resolved": "https://registry.npmjs.org/domino/-/domino-2.1.6.tgz",
1342 | "integrity": "sha512-3VdM/SXBZX2omc9JF9nOPCtDaYQ67BGp5CoLpIQlO2KCAPETs8TcDHacF26jXadGbvUteZzRTeos2fhID5+ucQ=="
1343 | },
1344 | "domutils": {
1345 | "version": "3.0.1",
1346 | "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.0.1.tgz",
1347 | "integrity": "sha512-z08c1l761iKhDFtfXO04C7kTdPBLi41zwOZl00WS8b5eiaebNpY00HKbztwBq+e3vyqWNwWF3mP9YLUeqIrF+Q==",
1348 | "requires": {
1349 | "dom-serializer": "^2.0.0",
1350 | "domelementtype": "^2.3.0",
1351 | "domhandler": "^5.0.1"
1352 | }
1353 | },
1354 | "ent": {
1355 | "version": "2.2.0",
1356 | "resolved": "https://registry.npmjs.org/ent/-/ent-2.2.0.tgz",
1357 | "integrity": "sha512-GHrMyVZQWvTIdDtpiEXdHZnFQKzeO09apj8Cbl4pKWy4i0Oprcq17usfDt5aO63swf0JOeMWjWQE/LzgSRuWpA=="
1358 | },
1359 | "entities": {
1360 | "version": "2.2.0",
1361 | "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz",
1362 | "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A=="
1363 | },
1364 | "es5-ext": {
1365 | "version": "0.10.62",
1366 | "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.62.tgz",
1367 | "integrity": "sha512-BHLqn0klhEpnOKSrzn/Xsz2UIW8j+cGmo9JLzr8BiUapV8hPL9+FliFqjwr9ngW7jWdnxv6eO+/LqyhJVqgrjA==",
1368 | "requires": {
1369 | "es6-iterator": "^2.0.3",
1370 | "es6-symbol": "^3.1.3",
1371 | "next-tick": "^1.1.0"
1372 | }
1373 | },
1374 | "es6-iterator": {
1375 | "version": "2.0.3",
1376 | "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz",
1377 | "integrity": "sha512-zw4SRzoUkd+cl+ZoE15A9o1oQd920Bb0iOJMQkQhl3jNc03YqVjAhG7scf9C5KWRU/R13Orf588uCC6525o02g==",
1378 | "requires": {
1379 | "d": "1",
1380 | "es5-ext": "^0.10.35",
1381 | "es6-symbol": "^3.1.1"
1382 | },
1383 | "dependencies": {
1384 | "d": {
1385 | "version": "1.0.1",
1386 | "resolved": "https://registry.npmjs.org/d/-/d-1.0.1.tgz",
1387 | "integrity": "sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==",
1388 | "requires": {
1389 | "es5-ext": "^0.10.50",
1390 | "type": "^1.0.1"
1391 | }
1392 | },
1393 | "type": {
1394 | "version": "1.2.0",
1395 | "resolved": "https://registry.npmjs.org/type/-/type-1.2.0.tgz",
1396 | "integrity": "sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg=="
1397 | }
1398 | }
1399 | },
1400 | "es6-symbol": {
1401 | "version": "3.1.3",
1402 | "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.3.tgz",
1403 | "integrity": "sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA==",
1404 | "requires": {
1405 | "d": "^1.0.1",
1406 | "ext": "^1.1.2"
1407 | },
1408 | "dependencies": {
1409 | "d": {
1410 | "version": "1.0.1",
1411 | "resolved": "https://registry.npmjs.org/d/-/d-1.0.1.tgz",
1412 | "integrity": "sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==",
1413 | "requires": {
1414 | "es5-ext": "^0.10.50",
1415 | "type": "^1.0.1"
1416 | }
1417 | },
1418 | "type": {
1419 | "version": "1.2.0",
1420 | "resolved": "https://registry.npmjs.org/type/-/type-1.2.0.tgz",
1421 | "integrity": "sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg=="
1422 | }
1423 | }
1424 | },
1425 | "es6-weak-map": {
1426 | "version": "0.1.4",
1427 | "resolved": "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-0.1.4.tgz",
1428 | "integrity": "sha512-P+N5Cd2TXeb7G59euFiM7snORspgbInS29Nbf3KNO2JQp/DyhvMCDWd58nsVAXwYJ6W3Bx7qDdy6QQ3PCJ7jKQ==",
1429 | "requires": {
1430 | "d": "~0.1.1",
1431 | "es5-ext": "~0.10.6",
1432 | "es6-iterator": "~0.1.3",
1433 | "es6-symbol": "~2.0.1"
1434 | },
1435 | "dependencies": {
1436 | "es6-iterator": {
1437 | "version": "0.1.3",
1438 | "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-0.1.3.tgz",
1439 | "integrity": "sha512-6TOmbFM6OPWkTe+bQ3ZuUkvqcWUjAnYjKUCLdbvRsAUz2Pr+fYIibwNXNkLNtIK9PPFbNMZZddaRNkyJhlGJhA==",
1440 | "requires": {
1441 | "d": "~0.1.1",
1442 | "es5-ext": "~0.10.5",
1443 | "es6-symbol": "~2.0.1"
1444 | }
1445 | },
1446 | "es6-symbol": {
1447 | "version": "2.0.1",
1448 | "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-2.0.1.tgz",
1449 | "integrity": "sha512-wjobO4zO8726HVU7mI2OA/B6QszqwHJuKab7gKHVx+uRfVVYGcWJkCIFxV2Madqb9/RUSrhJ/r6hPfG7FsWtow==",
1450 | "requires": {
1451 | "d": "~0.1.1",
1452 | "es5-ext": "~0.10.5"
1453 | }
1454 | }
1455 | }
1456 | },
1457 | "event-emitter": {
1458 | "version": "0.3.5",
1459 | "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz",
1460 | "integrity": "sha512-D9rRn9y7kLPnJ+hMq7S/nhvoKwwvVJahBi2BPmx3bvbsEdK3W9ii8cBSGjP+72/LnM4n6fo3+dkCX5FeTQruXA==",
1461 | "requires": {
1462 | "d": "1",
1463 | "es5-ext": "~0.10.14"
1464 | },
1465 | "dependencies": {
1466 | "d": {
1467 | "version": "1.0.1",
1468 | "resolved": "https://registry.npmjs.org/d/-/d-1.0.1.tgz",
1469 | "integrity": "sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==",
1470 | "requires": {
1471 | "es5-ext": "^0.10.50",
1472 | "type": "^1.0.1"
1473 | }
1474 | },
1475 | "type": {
1476 | "version": "1.2.0",
1477 | "resolved": "https://registry.npmjs.org/type/-/type-1.2.0.tgz",
1478 | "integrity": "sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg=="
1479 | }
1480 | }
1481 | },
1482 | "ext": {
1483 | "version": "1.7.0",
1484 | "resolved": "https://registry.npmjs.org/ext/-/ext-1.7.0.tgz",
1485 | "integrity": "sha512-6hxeJYaL110a9b5TEJSj0gojyHQAmA2ch5Os+ySCiA1QGdS697XWY1pzsrSjqA9LDEEgdB/KypIlR59RcLuHYw==",
1486 | "requires": {
1487 | "type": "^2.7.2"
1488 | }
1489 | },
1490 | "follow-redirects": {
1491 | "version": "1.15.5",
1492 | "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.5.tgz",
1493 | "integrity": "sha512-vSFWUON1B+yAw1VN4xMfxgn5fTUiaOzAJCKBwIIgT/+7CuGy9+r+5gITvP62j3RmaD5Ph65UaERdOSRGUzZtgw=="
1494 | },
1495 | "html-entities": {
1496 | "version": "2.4.0",
1497 | "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.4.0.tgz",
1498 | "integrity": "sha512-igBTJcNNNhvZFRtm8uA6xMY6xYleeDwn3PeBCkDz7tHttv4F2hsDI2aPgNERWzvRcNYHNT3ymRaQzllmXj4YsQ=="
1499 | },
1500 | "html-to-text": {
1501 | "version": "9.0.3",
1502 | "resolved": "https://registry.npmjs.org/html-to-text/-/html-to-text-9.0.3.tgz",
1503 | "integrity": "sha512-hxDF1kVCF2uw4VUJ3vr2doc91pXf2D5ngKcNviSitNkhP9OMOaJkDrFIFL6RMvko7NisWTEiqGpQ9LAxcVok1w==",
1504 | "requires": {
1505 | "@selderee/plugin-htmlparser2": "^0.10.0",
1506 | "deepmerge": "^4.2.2",
1507 | "dom-serializer": "^2.0.0",
1508 | "htmlparser2": "^8.0.1",
1509 | "selderee": "^0.10.0"
1510 | }
1511 | },
1512 | "htmlparser2": {
1513 | "version": "8.0.1",
1514 | "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-8.0.1.tgz",
1515 | "integrity": "sha512-4lVbmc1diZC7GUJQtRQ5yBAeUCL1exyMwmForWkRLnwyzWBFxN633SALPMGYaWZvKe9j1pRZJpauvmxENSp/EA==",
1516 | "requires": {
1517 | "domelementtype": "^2.3.0",
1518 | "domhandler": "^5.0.2",
1519 | "domutils": "^3.0.1",
1520 | "entities": "^4.3.0"
1521 | },
1522 | "dependencies": {
1523 | "entities": {
1524 | "version": "4.4.0",
1525 | "resolved": "https://registry.npmjs.org/entities/-/entities-4.4.0.tgz",
1526 | "integrity": "sha512-oYp7156SP8LkeGD0GF85ad1X9Ai79WtRsZ2gxJqtBuzH+98YUV6jkHEKlZkMbcrjJjIVJNIDP/3WL9wQkoPbWA=="
1527 | }
1528 | }
1529 | },
1530 | "iconv-lite": {
1531 | "version": "0.4.24",
1532 | "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
1533 | "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==",
1534 | "requires": {
1535 | "safer-buffer": ">= 2.1.2 < 3"
1536 | }
1537 | },
1538 | "inherits": {
1539 | "version": "2.0.4",
1540 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
1541 | "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
1542 | },
1543 | "ip-regex": {
1544 | "version": "4.3.0",
1545 | "resolved": "https://registry.npmjs.org/ip-regex/-/ip-regex-4.3.0.tgz",
1546 | "integrity": "sha512-B9ZWJxHHOHUhUjCPrMpLD4xEq35bUTClHM1S6CBU5ixQnkZmwipwgc96vAd7AAGM9TGHvJR+Uss+/Ak6UphK+Q=="
1547 | },
1548 | "leac": {
1549 | "version": "0.6.0",
1550 | "resolved": "https://registry.npmjs.org/leac/-/leac-0.6.0.tgz",
1551 | "integrity": "sha512-y+SqErxb8h7nE/fiEX07jsbuhrpO9lL8eca7/Y1nuWV2moNlXhyd59iDGcRf6moVyDMbmTNzL40SUyrFU/yDpg=="
1552 | },
1553 | "li": {
1554 | "version": "1.3.0",
1555 | "resolved": "https://registry.npmjs.org/li/-/li-1.3.0.tgz",
1556 | "integrity": "sha512-z34TU6GlMram52Tss5mt1m//ifRIpKH5Dqm7yUVOdHI+BQCs9qGPHFaCUTIzsWX7edN30aa2WrPwR7IO10FHaw=="
1557 | },
1558 | "lodash.assignin": {
1559 | "version": "4.2.0",
1560 | "resolved": "https://registry.npmjs.org/lodash.assignin/-/lodash.assignin-4.2.0.tgz",
1561 | "integrity": "sha512-yX/rx6d/UTVh7sSVWVSIMjfnz95evAgDFdb1ZozC35I9mSFCkmzptOzevxjgbQUsc78NR44LVHWjsoMQXy9FDg=="
1562 | },
1563 | "lodash.bind": {
1564 | "version": "4.2.1",
1565 | "resolved": "https://registry.npmjs.org/lodash.bind/-/lodash.bind-4.2.1.tgz",
1566 | "integrity": "sha512-lxdsn7xxlCymgLYo1gGvVrfHmkjDiyqVv62FAeF2i5ta72BipE1SLxw8hPEPLhD4/247Ijw07UQH7Hq/chT5LA=="
1567 | },
1568 | "lodash.defaults": {
1569 | "version": "4.2.0",
1570 | "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz",
1571 | "integrity": "sha512-qjxPLHd3r5DnsdGacqOMU6pb/avJzdh9tFX2ymgoZE27BmjXrNy/y4LoaiTeAb+O3gL8AfpJGtqfX/ae2leYYQ=="
1572 | },
1573 | "lodash.filter": {
1574 | "version": "4.6.0",
1575 | "resolved": "https://registry.npmjs.org/lodash.filter/-/lodash.filter-4.6.0.tgz",
1576 | "integrity": "sha512-pXYUy7PR8BCLwX5mgJ/aNtyOvuJTdZAo9EQFUvMIYugqmJxnrYaANvTbgndOzHSCSR0wnlBBfRXJL5SbWxo3FQ=="
1577 | },
1578 | "lodash.flatten": {
1579 | "version": "4.4.0",
1580 | "resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz",
1581 | "integrity": "sha512-C5N2Z3DgnnKr0LOpv/hKCgKdb7ZZwafIrsesve6lmzvZIRZRGaZ/l6Q8+2W7NaT+ZwO3fFlSCzCzrDCFdJfZ4g=="
1582 | },
1583 | "lodash.foreach": {
1584 | "version": "4.5.0",
1585 | "resolved": "https://registry.npmjs.org/lodash.foreach/-/lodash.foreach-4.5.0.tgz",
1586 | "integrity": "sha512-aEXTF4d+m05rVOAUG3z4vZZ4xVexLKZGF0lIxuHZ1Hplpk/3B6Z1+/ICICYRLm7c41Z2xiejbkCkJoTlypoXhQ=="
1587 | },
1588 | "lodash.map": {
1589 | "version": "4.6.0",
1590 | "resolved": "https://registry.npmjs.org/lodash.map/-/lodash.map-4.6.0.tgz",
1591 | "integrity": "sha512-worNHGKLDetmcEYDvh2stPCrrQRkP20E4l0iIS7F8EvzMqBBi7ltvFN5m1HvTf1P7Jk1txKhvFcmYsCr8O2F1Q=="
1592 | },
1593 | "lodash.merge": {
1594 | "version": "4.6.2",
1595 | "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz",
1596 | "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ=="
1597 | },
1598 | "lodash.pick": {
1599 | "version": "4.4.0",
1600 | "resolved": "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz",
1601 | "integrity": "sha512-hXt6Ul/5yWjfklSGvLQl8vM//l3FtyHZeuelpzK6mm99pNvN9yTDruNZPEJZD1oWrqo+izBmB7oUfWgcCX7s4Q=="
1602 | },
1603 | "lodash.reduce": {
1604 | "version": "4.6.0",
1605 | "resolved": "https://registry.npmjs.org/lodash.reduce/-/lodash.reduce-4.6.0.tgz",
1606 | "integrity": "sha512-6raRe2vxCYBhpBu+B+TtNGUzah+hQjVdu3E17wfusjyrXBka2nBS8OH/gjVZ5PvHOhWmIZTYri09Z6n/QfnNMw=="
1607 | },
1608 | "lodash.reject": {
1609 | "version": "4.6.0",
1610 | "resolved": "https://registry.npmjs.org/lodash.reject/-/lodash.reject-4.6.0.tgz",
1611 | "integrity": "sha512-qkTuvgEzYdyhiJBx42YPzPo71R1aEr0z79kAv7Ixg8wPFEjgRgJdUsGMG3Hf3OYSF/kHI79XhNlt+5Ar6OzwxQ=="
1612 | },
1613 | "lodash.some": {
1614 | "version": "4.6.0",
1615 | "resolved": "https://registry.npmjs.org/lodash.some/-/lodash.some-4.6.0.tgz",
1616 | "integrity": "sha512-j7MJE+TuT51q9ggt4fSgVqro163BEFjAt3u97IqU+JA2DkWl80nFTrowzLpZ/BnpN7rrl0JA/593NAdd8p/scQ=="
1617 | },
1618 | "lru-queue": {
1619 | "version": "0.1.0",
1620 | "resolved": "https://registry.npmjs.org/lru-queue/-/lru-queue-0.1.0.tgz",
1621 | "integrity": "sha512-BpdYkt9EvGl8OfWHDQPISVpcl5xZthb+XPsbELj5AQXxIC8IriDZIQYjBJPEm5rS420sjZ0TLEzRcq5KdBhYrQ==",
1622 | "requires": {
1623 | "es5-ext": "~0.10.2"
1624 | }
1625 | },
1626 | "memoizee": {
1627 | "version": "0.3.10",
1628 | "resolved": "https://registry.npmjs.org/memoizee/-/memoizee-0.3.10.tgz",
1629 | "integrity": "sha512-LLzVUuWwGBKK188spgOK/ukrp5zvd9JGsiLDH41pH9vt5jvhZfsu5pxDuAnYAMG8YEGce72KO07sSBy9KkvOfw==",
1630 | "requires": {
1631 | "d": "~0.1.1",
1632 | "es5-ext": "~0.10.11",
1633 | "es6-weak-map": "~0.1.4",
1634 | "event-emitter": "~0.3.4",
1635 | "lru-queue": "0.1",
1636 | "next-tick": "~0.2.2",
1637 | "timers-ext": "0.1"
1638 | },
1639 | "dependencies": {
1640 | "next-tick": {
1641 | "version": "0.2.2",
1642 | "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-0.2.2.tgz",
1643 | "integrity": "sha512-f7h4svPtl+QidoBv4taKXUjJ70G2asaZ8G28nS0OkqaalX8dwwrtWtyxEDPK62AC00ur/+/E0pUwBwY5EPn15Q=="
1644 | }
1645 | }
1646 | },
1647 | "microformat-node": {
1648 | "version": "2.0.1",
1649 | "resolved": "https://registry.npmjs.org/microformat-node/-/microformat-node-2.0.1.tgz",
1650 | "integrity": "sha512-xMVKlQnCNP7DZyyEP3cpwMF3uahJ0NdTN+SnK+PuFpRtUglTvbIjX4ZbvmqF4U9nuMdW2F3Nh5aya4OjmDyEpQ==",
1651 | "requires": {
1652 | "bluebird": "3.4.x",
1653 | "cheerio": "0.22.x",
1654 | "ent": "^2.2.0",
1655 | "microformat-shiv": "^2.0.0"
1656 | },
1657 | "dependencies": {
1658 | "cheerio": {
1659 | "version": "0.22.0",
1660 | "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-0.22.0.tgz",
1661 | "integrity": "sha512-8/MzidM6G/TgRelkzDG13y3Y9LxBjCb+8yOEZ9+wwq5gVF2w2pV0wmHvjfT0RvuxGyR7UEuK36r+yYMbT4uKgA==",
1662 | "requires": {
1663 | "css-select": "~1.2.0",
1664 | "dom-serializer": "~0.1.0",
1665 | "entities": "~1.1.1",
1666 | "htmlparser2": "^3.9.1",
1667 | "lodash.assignin": "^4.0.9",
1668 | "lodash.bind": "^4.1.4",
1669 | "lodash.defaults": "^4.0.1",
1670 | "lodash.filter": "^4.4.0",
1671 | "lodash.flatten": "^4.2.0",
1672 | "lodash.foreach": "^4.3.0",
1673 | "lodash.map": "^4.4.0",
1674 | "lodash.merge": "^4.4.0",
1675 | "lodash.pick": "^4.2.1",
1676 | "lodash.reduce": "^4.4.0",
1677 | "lodash.reject": "^4.4.0",
1678 | "lodash.some": "^4.4.0"
1679 | }
1680 | },
1681 | "css-select": {
1682 | "version": "1.2.0",
1683 | "resolved": "https://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz",
1684 | "integrity": "sha512-dUQOBoqdR7QwV90WysXPLXG5LO7nhYBgiWVfxF80DKPF8zx1t/pUd2FYy73emg3zrjtM6dzmYgbHKfV2rxiHQA==",
1685 | "requires": {
1686 | "boolbase": "~1.0.0",
1687 | "css-what": "2.1",
1688 | "domutils": "1.5.1",
1689 | "nth-check": "~1.0.1"
1690 | }
1691 | },
1692 | "css-what": {
1693 | "version": "2.1.3",
1694 | "resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.3.tgz",
1695 | "integrity": "sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg=="
1696 | },
1697 | "dom-serializer": {
1698 | "version": "0.1.1",
1699 | "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.1.tgz",
1700 | "integrity": "sha512-l0IU0pPzLWSHBcieZbpOKgkIn3ts3vAh7ZuFyXNwJxJXk/c4Gwj9xaTJwIDVQCXawWD0qb3IzMGH5rglQaO0XA==",
1701 | "requires": {
1702 | "domelementtype": "^1.3.0",
1703 | "entities": "^1.1.1"
1704 | }
1705 | },
1706 | "domelementtype": {
1707 | "version": "1.3.1",
1708 | "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz",
1709 | "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w=="
1710 | },
1711 | "domhandler": {
1712 | "version": "2.4.2",
1713 | "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz",
1714 | "integrity": "sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==",
1715 | "requires": {
1716 | "domelementtype": "1"
1717 | }
1718 | },
1719 | "domutils": {
1720 | "version": "1.5.1",
1721 | "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz",
1722 | "integrity": "sha512-gSu5Oi/I+3wDENBsOWBiRK1eoGxcywYSqg3rR960/+EfY0CF4EX1VPkgHOZ3WiS/Jg2DtliF6BhWcHlfpYUcGw==",
1723 | "requires": {
1724 | "dom-serializer": "0",
1725 | "domelementtype": "1"
1726 | }
1727 | },
1728 | "entities": {
1729 | "version": "1.1.2",
1730 | "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz",
1731 | "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w=="
1732 | },
1733 | "htmlparser2": {
1734 | "version": "3.10.1",
1735 | "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.10.1.tgz",
1736 | "integrity": "sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ==",
1737 | "requires": {
1738 | "domelementtype": "^1.3.1",
1739 | "domhandler": "^2.3.0",
1740 | "domutils": "^1.5.1",
1741 | "entities": "^1.1.1",
1742 | "inherits": "^2.0.1",
1743 | "readable-stream": "^3.1.1"
1744 | }
1745 | },
1746 | "nth-check": {
1747 | "version": "1.0.2",
1748 | "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz",
1749 | "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==",
1750 | "requires": {
1751 | "boolbase": "~1.0.0"
1752 | }
1753 | }
1754 | }
1755 | },
1756 | "microformat-shiv": {
1757 | "version": "2.0.3",
1758 | "resolved": "https://registry.npmjs.org/microformat-shiv/-/microformat-shiv-2.0.3.tgz",
1759 | "integrity": "sha512-pktHqCmZsrmogS1egCryvZlAqDdvIQPxsDqa7hZ56nFkovqrszMXWJ94CUE9iWRjQRKOUKqLp62iCVO0+iwM2Q=="
1760 | },
1761 | "minimist": {
1762 | "version": "0.0.10",
1763 | "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz",
1764 | "integrity": "sha512-iotkTvxc+TwOm5Ieim8VnSNvCDjCK9S8G3scJ50ZthspSxa7jx50jkhYduuAtAjvfDUwSgOwf8+If99AlOEhyw=="
1765 | },
1766 | "ms": {
1767 | "version": "2.1.3",
1768 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
1769 | "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA=="
1770 | },
1771 | "next-tick": {
1772 | "version": "1.1.0",
1773 | "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.1.0.tgz",
1774 | "integrity": "sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ=="
1775 | },
1776 | "node-fetch": {
1777 | "version": "2.7.0",
1778 | "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz",
1779 | "integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==",
1780 | "requires": {
1781 | "whatwg-url": "^5.0.0"
1782 | }
1783 | },
1784 | "nth-check": {
1785 | "version": "2.1.1",
1786 | "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz",
1787 | "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==",
1788 | "requires": {
1789 | "boolbase": "^1.0.0"
1790 | }
1791 | },
1792 | "optimist": {
1793 | "version": "0.6.1",
1794 | "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz",
1795 | "integrity": "sha512-snN4O4TkigujZphWLN0E//nQmm7790RYaE53DdL7ZYwee2D8DDo9/EyYiKUfN3rneWUjhJnueija3G9I2i0h3g==",
1796 | "requires": {
1797 | "minimist": "~0.0.1",
1798 | "wordwrap": "~0.0.2"
1799 | }
1800 | },
1801 | "parse5": {
1802 | "version": "7.1.2",
1803 | "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz",
1804 | "integrity": "sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==",
1805 | "requires": {
1806 | "entities": "^4.4.0"
1807 | },
1808 | "dependencies": {
1809 | "entities": {
1810 | "version": "4.4.0",
1811 | "resolved": "https://registry.npmjs.org/entities/-/entities-4.4.0.tgz",
1812 | "integrity": "sha512-oYp7156SP8LkeGD0GF85ad1X9Ai79WtRsZ2gxJqtBuzH+98YUV6jkHEKlZkMbcrjJjIVJNIDP/3WL9wQkoPbWA=="
1813 | }
1814 | }
1815 | },
1816 | "parse5-htmlparser2-tree-adapter": {
1817 | "version": "7.0.0",
1818 | "resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-7.0.0.tgz",
1819 | "integrity": "sha512-B77tOZrqqfUfnVcOrUvfdLbz4pu4RopLD/4vmu3HUPswwTA8OH0EMW9BlWR2B0RCoiZRAHEUu7IxeP1Pd1UU+g==",
1820 | "requires": {
1821 | "domhandler": "^5.0.2",
1822 | "parse5": "^7.0.0"
1823 | }
1824 | },
1825 | "parseley": {
1826 | "version": "0.11.0",
1827 | "resolved": "https://registry.npmjs.org/parseley/-/parseley-0.11.0.tgz",
1828 | "integrity": "sha512-VfcwXlBWgTF+unPcr7yu3HSSA6QUdDaDnrHcytVfj5Z8azAyKBDrYnSIfeSxlrEayndNcLmrXzg+Vxbo6DWRXQ==",
1829 | "requires": {
1830 | "leac": "^0.6.0",
1831 | "peberminta": "^0.8.0"
1832 | }
1833 | },
1834 | "peberminta": {
1835 | "version": "0.8.0",
1836 | "resolved": "https://registry.npmjs.org/peberminta/-/peberminta-0.8.0.tgz",
1837 | "integrity": "sha512-YYEs+eauIjDH5nUEGi18EohWE0nV2QbGTqmxQcqgZ/0g+laPCQmuIqq7EBLVi9uim9zMgfJv0QBZEnQ3uHw/Tw=="
1838 | },
1839 | "readable-stream": {
1840 | "version": "3.6.2",
1841 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz",
1842 | "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==",
1843 | "requires": {
1844 | "inherits": "^2.0.3",
1845 | "string_decoder": "^1.1.1",
1846 | "util-deprecate": "^1.0.1"
1847 | }
1848 | },
1849 | "rss-parser": {
1850 | "version": "3.13.0",
1851 | "resolved": "https://registry.npmjs.org/rss-parser/-/rss-parser-3.13.0.tgz",
1852 | "integrity": "sha512-7jWUBV5yGN3rqMMj7CZufl/291QAhvrrGpDNE4k/02ZchL0npisiYYqULF71jCEKoIiHvK/Q2e6IkDwPziT7+w==",
1853 | "requires": {
1854 | "entities": "^2.0.3",
1855 | "xml2js": "^0.5.0"
1856 | }
1857 | },
1858 | "safe-buffer": {
1859 | "version": "5.2.1",
1860 | "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
1861 | "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ=="
1862 | },
1863 | "safer-buffer": {
1864 | "version": "2.1.2",
1865 | "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
1866 | "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg=="
1867 | },
1868 | "sax": {
1869 | "version": "1.3.0",
1870 | "resolved": "https://registry.npmjs.org/sax/-/sax-1.3.0.tgz",
1871 | "integrity": "sha512-0s+oAmw9zLl1V1cS9BtZN7JAd0cW5e0QH4W3LWEK6a4LaLEA2OTpGYWDY+6XasBLtz6wkm3u1xRw95mRuJ59WA=="
1872 | },
1873 | "selderee": {
1874 | "version": "0.10.0",
1875 | "resolved": "https://registry.npmjs.org/selderee/-/selderee-0.10.0.tgz",
1876 | "integrity": "sha512-DEL/RW/f4qLw/NrVg97xKaEBC8IpzIG2fvxnzCp3Z4yk4jQ3MXom+Imav9wApjxX2dfS3eW7x0DXafJr85i39A==",
1877 | "requires": {
1878 | "parseley": "^0.11.0"
1879 | }
1880 | },
1881 | "string_decoder": {
1882 | "version": "1.3.0",
1883 | "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz",
1884 | "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==",
1885 | "requires": {
1886 | "safe-buffer": "~5.2.0"
1887 | }
1888 | },
1889 | "timers-ext": {
1890 | "version": "0.1.7",
1891 | "resolved": "https://registry.npmjs.org/timers-ext/-/timers-ext-0.1.7.tgz",
1892 | "integrity": "sha512-b85NUNzTSdodShTIbky6ZF02e8STtVVfD+fu4aXXShEELpozH+bCpJLYMPZbsABN2wDH7fJpqIoXxJpzbf0NqQ==",
1893 | "requires": {
1894 | "es5-ext": "~0.10.46",
1895 | "next-tick": "1"
1896 | }
1897 | },
1898 | "tlds": {
1899 | "version": "1.248.0",
1900 | "resolved": "https://registry.npmjs.org/tlds/-/tlds-1.248.0.tgz",
1901 | "integrity": "sha512-noj0KdpWTBhwsKxMOXk0rN9otg4kTgLm4WohERRHbJ9IY+kSDKr3RmjitaQ3JFzny+DyvBOQKlFZhp0G0qNSfg=="
1902 | },
1903 | "tr46": {
1904 | "version": "0.0.3",
1905 | "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz",
1906 | "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw=="
1907 | },
1908 | "turndown": {
1909 | "version": "7.1.1",
1910 | "resolved": "https://registry.npmjs.org/turndown/-/turndown-7.1.1.tgz",
1911 | "integrity": "sha512-BEkXaWH7Wh7e9bd2QumhfAXk5g34+6QUmmWx+0q6ThaVOLuLUqsnkq35HQ5SBHSaxjSfSM7US5o4lhJNH7B9MA==",
1912 | "requires": {
1913 | "domino": "^2.1.6"
1914 | }
1915 | },
1916 | "type": {
1917 | "version": "2.7.2",
1918 | "resolved": "https://registry.npmjs.org/type/-/type-2.7.2.tgz",
1919 | "integrity": "sha512-dzlvlNlt6AXU7EBSfpAscydQ7gXB+pPGsPnfJnZpiNJBDj7IaJzQlBZYGdEi4R9HmPdBv2XmWJ6YUtoTa7lmCw=="
1920 | },
1921 | "url-regex": {
1922 | "version": "5.0.0",
1923 | "resolved": "https://registry.npmjs.org/url-regex/-/url-regex-5.0.0.tgz",
1924 | "integrity": "sha512-O08GjTiAFNsSlrUWfqF1jH0H1W3m35ZyadHrGv5krdnmPPoxP27oDTqux/579PtaroiSGm5yma6KT1mHFH6Y/g==",
1925 | "requires": {
1926 | "ip-regex": "^4.1.0",
1927 | "tlds": "^1.203.0"
1928 | }
1929 | },
1930 | "util-deprecate": {
1931 | "version": "1.0.2",
1932 | "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
1933 | "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw=="
1934 | },
1935 | "uuid": {
1936 | "version": "9.0.0",
1937 | "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.0.tgz",
1938 | "integrity": "sha512-MXcSTerfPa4uqyzStbRoTgt5XIe3x5+42+q1sDuy3R5MDk66URdLMOZe5aPX/SQd+kuYAh0FdP/pO28IkQyTeg=="
1939 | },
1940 | "webidl-conversions": {
1941 | "version": "3.0.1",
1942 | "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz",
1943 | "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ=="
1944 | },
1945 | "whatwg-url": {
1946 | "version": "5.0.0",
1947 | "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz",
1948 | "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==",
1949 | "requires": {
1950 | "tr46": "~0.0.3",
1951 | "webidl-conversions": "^3.0.0"
1952 | }
1953 | },
1954 | "wordwrap": {
1955 | "version": "0.0.3",
1956 | "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz",
1957 | "integrity": "sha512-1tMA907+V4QmxV7dbRvb4/8MaRALK6q9Abid3ndMYnbyo8piisCmeONVqVSXqQA3KaP4SLt5b7ud6E2sqP8TFw=="
1958 | },
1959 | "xml2js": {
1960 | "version": "0.5.0",
1961 | "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.5.0.tgz",
1962 | "integrity": "sha512-drPFnkQJik/O+uPKpqSgr22mpuFHqKdbS835iAQrUC73L2F5WkboIRd63ai/2Yg6I1jzifPFKH2NTK+cfglkIA==",
1963 | "requires": {
1964 | "sax": ">=0.6.0",
1965 | "xmlbuilder": "~11.0.0"
1966 | }
1967 | },
1968 | "xmlbuilder": {
1969 | "version": "11.0.1",
1970 | "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz",
1971 | "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA=="
1972 | }
1973 | }
1974 | }
1975 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "dependencies": {
3 | "@remy/webmention": "^1.5.0",
4 | "cheerio": "^1.0.0-rc.12",
5 | "html-entities": "^2.4.0",
6 | "html-to-text": "^9.0.3",
7 | "rss-parser": "^3.12.0",
8 | "turndown": "^7.1.1",
9 | "url-regex": "^5.0.0",
10 | "uuid": "^9.0.0"
11 | },
12 | "type": "module"
13 | }
14 |
--------------------------------------------------------------------------------
/readme.md:
--------------------------------------------------------------------------------
1 | # Echo - RSS Cross Poster
2 |
3 | 
4 |
5 | ## What is it?
6 |
7 | Echo is a node script to post new items from an RSS feed to various services including Micro.blog and Mastodon.
8 |
9 | ### Why "Echo"?
10 |
11 | It does RSS feeds, so Feeder. Feeder are a band with an album called Echo Park. Echo is a good name because the album link AND the meaning of the word echo. So there.
12 |
13 | ## Requirements
14 |
15 | - Node 19 (it might work with earlier versions but that's what I used)
16 | - A server/computer/potato to run it on
17 |
18 | ## Installation
19 |
20 | 1. Clone this repository
21 | 2. Run `npm install` to install the node module
22 | 3. Run `cp config.example.js config.js` to create a new config file
23 | 4. Setup your RSS feeds and services (see [configuration](#configuration) for options)
24 | 5. Run `node index.js init` to setup - this will store the latest ID so only new posts going forward will be posted. If you want to post _some_ items from a feed, add the ID of the latest item you don't want to post in `data/nameofsite.txt`.
25 | 6. Setup a cron to run `node index.js` regularly
26 |
27 | 🚨 **Warning**: If you don't run `node index.js init` first, the script will post **all** the posts in the RSS feeds. You _probably_ don't want this.
28 |
29 | You can also run `node index.js dry`. This will log which posts will be created, but _will not_ post anything.
30 |
31 | Echo keeps track of the last item posted so on subsequent runs it will only post new posts.
32 |
33 | You can also run Echo with GitHub actions. [See Lewis' blog post for more info](https://lewisdale.dev/post/using-gitea-github-actions-for-triggering-echo/)
34 |
35 | ## Configuration
36 |
37 | There are two parts to configure: `sites` and `services`. `sites` is the RSS feeds you want to cross-post and `services` is the services you want to cross-post to.
38 |
39 | Go to [the Echo website](https://echo.rknight.me) to use the config generator and paste the generated config into `config.js` or see below for setting it up manually.
40 |
41 | ### Sites
42 |
43 | `config.sites` is an array of RSS feeds you wish to cross-post. A site has five attribute:
44 |
45 | - `name` (required): this can be anything (this is used in a filename so probably don't use special characters).
46 | - `feed` (required): the feed URL you want to post to Micro.blog (e.g.