Add cspell and use real English words

This commit is contained in:
Christian Bundy 2019-06-27 14:54:32 -07:00
parent bebb854cec
commit 762cc50f9a
No known key found for this signature in database
GPG Key ID: EB541AAEF4366237
15 changed files with 420 additions and 46 deletions

9
.cspell.json Normal file
View File

@ -0,0 +1,9 @@
{
"version": "0.1",
"language": "en",
"words": [
"backlinks",
"hyperaxe",
"whoami"
]
}

View File

@ -18,7 +18,7 @@
"pull-stream": "^3.6.12",
"ssb-client": "^4.7.7",
"ssb-markdown": "^5.0.1",
"ssb-msgs": "^5.2.0",
"ssb-messages": "^5.2.0",
"ssb-ref": "^2.13.9"
},
"bin": {
@ -27,11 +27,12 @@
"description": "friendly neighborhood scuttlebutt interface",
"repository": "git@github.com:fraction/oasis.git",
"devDependencies": {
"cspell": "^4.0.23",
"dependency-check": "^3.3.0",
"standard": "^12.0.1"
},
"scripts": {
"start": "node index.js",
"test": "standard && dependency-check ./package.json --unused --no-dev --ignore-module highlight.js"
"test": "test/script.sh"
}
}

View File

@ -18,13 +18,13 @@ module.exports = (options) => {
const assets = new Koa()
assets.use(koaStatic(path.join(__dirname, 'assets')))
const hljs = new Koa()
hljs.use(koaStatic(path.join(__dirname, '..', 'node_modules', 'highlight.js', 'styles')))
const highlightJs = new Koa()
highlightJs.use(koaStatic(path.join(__dirname, '..', 'node_modules', 'highlight.js', 'styles')))
const app = module.exports = new Koa()
app.use(mount('/static/assets', assets))
app.use(mount('/static/hljs', hljs))
app.use(mount('/static/highlight.js', highlightJs))
router
.get('/', home)

View File

@ -15,12 +15,12 @@ module.exports = async function (ctx) {
const name = await about.name(feedId)
const image = await about.image(feedId)
const msgs = await post.fromFeed(feedId)
const messages = await post.fromFeed(feedId)
const avatarUrl = `http://localhost:8989/blobs/get/${image}`
ctx.body = authorView({
msgs,
messages,
name,
description,
avatarUrl

View File

@ -4,7 +4,7 @@ const listView = require('./views/list')
module.exports = async function hashtag (ctx) {
const hashtag = ctx.params.id
const msgs = await post.fromHashtag(hashtag)
const messages = await post.fromHashtag(hashtag)
ctx.body = listView({ msgs })
ctx.body = listView({ messages })
}

View File

@ -2,7 +2,7 @@ const listView = require('./views/list')
const post = require('./models/post')
module.exports = async function home (ctx) {
const msgs = await post.latest()
const messages = await post.latest()
ctx.body = listView({ msgs })
ctx.body = listView({ messages })
}

View File

@ -1,11 +1,11 @@
const md = require('ssb-markdown')
const ssbMsgs = require('ssb-msgs')
const ssbMessages = require('ssb-messages')
const ssbRef = require('ssb-ref')
const toUrl = (mentions = []) => {
var mentionNames = {}
ssbMsgs.links(mentions, 'feed').forEach(function (link) {
ssbMessages.links(mentions, 'feed').forEach(function (link) {
if (link.name && typeof link.name === 'string') {
var name = (link.name.charAt(0) === '@') ? link.name : '@' + link.name
mentionNames[name] = link.link

View File

@ -19,7 +19,7 @@ const transform = (ssb, messages) => Promise.all(messages.map(async (msg) => {
const whoami = await cooler.get(ssb.whoami)
const backlinkStream = await cooler.read(ssb.backlinks.read, {
const referenceStream = await cooler.read(ssb.backlinks.read, {
query: [ filterQuery ],
index: 'DTA', // use asserted timestamps
private: true,
@ -28,7 +28,7 @@ const transform = (ssb, messages) => Promise.all(messages.map(async (msg) => {
const rawVotes = await new Promise((resolve, reject) => {
pull(
backlinkStream,
referenceStream,
pull.filter(ref =>
typeof ref.value.content !== 'string' &&
ref.value.content.type === 'vote' &&
@ -37,9 +37,9 @@ const transform = (ssb, messages) => Promise.all(messages.map(async (msg) => {
ref.value.content.vote.value >= 0 &&
ref.value.content.vote.link === msg.key
),
pull.collect((err, msgs) => {
pull.collect((err, messages) => {
if (err) return reject(err)
resolve(msgs)
resolve(messages)
})
)
})
@ -109,9 +109,9 @@ module.exports = {
msg.value.content.type === 'post'
),
pull.take(32),
pull.collect((err, msgs) => {
pull.collect((err, messages) => {
if (err) return reject(err)
resolve(transform(ssb, msgs))
resolve(transform(ssb, messages))
})
)
})
@ -140,9 +140,9 @@ module.exports = {
msg.value.content.type === 'post'
),
pull.take(32),
pull.collect((err, msgs) => {
pull.collect((err, messages) => {
if (err) return reject(err)
resolve(transform(ssb, msgs))
resolve(transform(ssb, messages))
})
)
})
@ -164,9 +164,9 @@ module.exports = {
const messages = await new Promise((resolve, reject) => {
pull(
source,
pull.collect((err, msgs) => {
pull.collect((err, messages) => {
if (err) return reject(err)
resolve(transform(ssb, msgs))
resolve(transform(ssb, messages))
})
)
})
@ -218,14 +218,14 @@ module.exports = {
}
}
const backlinkStream = await cooler.read(ssb.backlinks.read, {
const referenceStream = await cooler.read(ssb.backlinks.read, {
query: [filterQuery],
index: 'DTA' // use asserted timestamps
})
const replies = await new Promise((resolve, reject) =>
pull(
backlinkStream,
referenceStream,
pull.filter(msg => {
const isPost = lodash.get(msg, 'value.content.type') === 'post'
if (isPost === false) {
@ -243,9 +243,9 @@ module.exports = {
return true
}
),
pull.collect((err, msgs) => {
pull.collect((err, messages) => {
if (err) return reject(err)
resolve(msgs)
resolve(messages)
})
)
)

View File

@ -17,12 +17,12 @@ module.exports = async function (ctx) {
const name = await about.name(feedId)
const image = await about.image(feedId)
const msgs = await post.fromFeed(feedId)
const messages = await post.fromFeed(feedId)
const avatarUrl = `http://localhost:8989/blobs/get/${image}`
ctx.body = authorView({
msgs,
messages,
name,
description,
avatarUrl

View File

@ -3,7 +3,7 @@ const post = require('./models/post')
module.exports = async function thread (ctx) {
const msgId = ctx.params.id
const msgs = await post.fromThread(msgId)
const messages = await post.fromThread(msgId)
ctx.body = listView({ msgs })
ctx.body = listView({ messages })
}

View File

@ -8,7 +8,7 @@ const {
section
} = require('hyperaxe')
module.exports = ({ avatarUrl, name, description, msgs }) => {
module.exports = ({ avatarUrl, name, description, messages }) => {
const authorHeader =
header({ class: 'profile' },
img({ class: 'avatar', src: avatarUrl }),
@ -23,7 +23,7 @@ module.exports = ({ avatarUrl, name, description, msgs }) => {
return template(
authorHeader,
authorDescription,
msgs.map(msg =>
messages.map(msg =>
post({ msg })
)
)

View File

@ -11,14 +11,12 @@ const {
var doctypeString = '<!DOCTYPE html>'
const desertIslandEmoji = '\ud83c' + '\udfdd' + '\ufe0f'
module.exports = (...elements) => {
const nodes = html(
head(
title(`${desertIslandEmoji} Oasis`),
title(`🏝️ Oasis`),
link({ rel: 'stylesheet', href: '/static/assets/style.css' }),
link({ rel: 'stylesheet', href: '/static/hljs/github.css' })
link({ rel: 'stylesheet', href: '/static/highlight.js/github.css' })
),
body(
nav(

View File

@ -1,9 +1,9 @@
const template = require('./components/template')
const post = require('./components/post')
module.exports = ({ msgs }) => {
module.exports = ({ messages }) => {
return template(
msgs.map(msg =>
messages.map(msg =>
post({ msg })
)
)

10
test/script.sh Executable file
View File

@ -0,0 +1,10 @@
#!/usr/bin/env sh
# http://redsymbol.net/articles/unofficial-bash-strict-mode/
set -euo pipefail
IFS=$'\n\t'
standard
dependency-check ./package.json --unused --no-dev --ignore-module highlight.js
cspell "src/**/*.js"

370
yarn.lock
View File

@ -231,6 +231,13 @@ braces@^2.3.1:
split-string "^3.0.2"
to-regex "^3.0.1"
braces@^3.0.1:
version "3.0.2"
resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107"
integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==
dependencies:
fill-range "^7.0.1"
browser-split@0.0.0:
version "0.0.0"
resolved "https://registry.yarnpkg.com/browser-split/-/browser-split-0.0.0.tgz#41419caef769755929dd518967d3eec0a6262771"
@ -299,7 +306,7 @@ chalk@^1.1.3:
strip-ansi "^3.0.0"
supports-color "^2.0.0"
chalk@^2.0.0, chalk@^2.1.0:
chalk@^2.0.0, chalk@^2.1.0, chalk@^2.4.2:
version "2.4.2"
resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424"
integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==
@ -401,11 +408,18 @@ color-name@1.1.3:
resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25"
integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=
commander@^2.19.0:
commander@^2.19.0, commander@^2.20.0:
version "2.20.0"
resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.0.tgz#d58bb2b5c1ee8f87b0d340027e9e94e222c5a422"
integrity sha512-7j2y+40w61zy6YC2iRNpUe/NwhNyoXrYpHMrSunaMG64nRnaf96zO/KMQR4OyN/UnE5KLyEBnKHd4aG3rskjpQ==
comment-json@^1.1.3:
version "1.1.3"
resolved "https://registry.yarnpkg.com/comment-json/-/comment-json-1.1.3.tgz#6986c3330fee0c4c9e00c2398cd61afa5d8f239e"
integrity sha1-aYbDMw/uDEyeAMI5jNYa+l2PI54=
dependencies:
json-parser "^1.0.0"
component-emitter@^1.2.1:
version "1.3.0"
resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.3.0.tgz#16e4070fba8ae29b679f2215853ee181ab2eabc0"
@ -416,6 +430,18 @@ concat-map@0.0.1:
resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b"
integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=
configstore@^4.0.0:
version "4.0.0"
resolved "https://registry.yarnpkg.com/configstore/-/configstore-4.0.0.tgz#5933311e95d3687efb592c528b922d9262d227e7"
integrity sha512-CmquAXFBocrzaSM8mtGPMM/HiWmyIpr4CcJl/rgY2uCObZ/S7cKU0silxslqJejl+t/T9HS8E0PUNQD81JGUEQ==
dependencies:
dot-prop "^4.1.0"
graceful-fs "^4.1.2"
make-dir "^1.0.0"
unique-string "^1.0.0"
write-file-atomic "^2.0.0"
xdg-basedir "^3.0.0"
contains-path@^0.1.0:
version "0.1.0"
resolved "https://registry.yarnpkg.com/contains-path/-/contains-path-0.1.0.tgz#fe8cf184ff6670b6baef01a9d4861a5cbec4120a"
@ -457,6 +483,206 @@ cross-spawn@^6.0.5:
shebang-command "^1.2.0"
which "^1.2.9"
crypto-random-string@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/crypto-random-string/-/crypto-random-string-1.0.0.tgz#a230f64f568310e1498009940790ec99545bca7e"
integrity sha1-ojD2T1aDEOFJgAmUB5DsmVRbyn4=
cspell-dict-companies@^1.0.10:
version "1.0.10"
resolved "https://registry.yarnpkg.com/cspell-dict-companies/-/cspell-dict-companies-1.0.10.tgz#694fd485d3fef077971f4b517d8f7e97b9d42563"
integrity sha512-mLJnxxtkQt4nX2uWwz1BfAmq03Q0YyM5Gjh4uf4EFhT/8v7KJ/gGWBvjPZuUlOnyqNFG1FdKFNyH23WP3SI6uA==
dependencies:
configstore "^4.0.0"
cspell-dict-cpp@^1.1.19:
version "1.1.19"
resolved "https://registry.yarnpkg.com/cspell-dict-cpp/-/cspell-dict-cpp-1.1.19.tgz#913e5a5e100ba7f1a6371fde0610b2d30e543527"
integrity sha512-KaKDc4H7FwjZnGL2kjn7fa6SXbymETKVyDWwq/XmoI2q16ZOrs0pYz/aOVjBwBbFy3QNmDIKODswYe0FSQhDNA==
dependencies:
configstore "^4.0.0"
cspell-dict-django@^1.0.11:
version "1.0.11"
resolved "https://registry.yarnpkg.com/cspell-dict-django/-/cspell-dict-django-1.0.11.tgz#d368ecd7d95a362855584a58df847fec1412e162"
integrity sha512-cCVDgYTxHjNGsXOkOXFlIFFYyD/+QKa4P5gjAO+ftVe5YkYLgR/ToIqBjLkeMpd5XLcUp9I2+4qAW4bXUGXvhA==
dependencies:
configstore "^4.0.0"
cspell-dict-elixir@^1.0.9:
version "1.0.9"
resolved "https://registry.yarnpkg.com/cspell-dict-elixir/-/cspell-dict-elixir-1.0.9.tgz#2ae775684f1a5004eb841d68f3697257f0e1e89b"
integrity sha512-gez2DdKiiR0z51kGR8YI61qW5ARKDgoOxlwz9w84biCWDeN0m3th/xqFDf7D6IaA9PosNhSk1uD/OgoIWLH3mA==
dependencies:
configstore "^4.0.0"
cspell-dict-en-gb@^1.1.10:
version "1.1.10"
resolved "https://registry.yarnpkg.com/cspell-dict-en-gb/-/cspell-dict-en-gb-1.1.10.tgz#4baa5cc39661f017b226ba27bc7cefa3f54bcd89"
integrity sha512-Gx6vcaHBnNzYs9W9LlSjomYq1XCw9+aGVsU+Ayl3oMG5zuJGi3I7G5xPyWcTTkWqb6/z6F5LXnW/vFtkTGE5fg==
dependencies:
configstore "^4.0.0"
cspell-dict-en_us@^1.2.16:
version "1.2.16"
resolved "https://registry.yarnpkg.com/cspell-dict-en_us/-/cspell-dict-en_us-1.2.16.tgz#30f7f1c2f3ae6fb2248e1514dbfbac4f3dc84481"
integrity sha512-qrc5Mh2hWT53jlcDo3hFFvAgC+hpekQnNN5seHohz6yWr2XeAsATZP/2ftnrKadZ1iAkeJU2LABymhzK+ZAIHg==
dependencies:
configstore "^4.0.0"
cspell-dict-fullstack@^1.0.13:
version "1.0.13"
resolved "https://registry.yarnpkg.com/cspell-dict-fullstack/-/cspell-dict-fullstack-1.0.13.tgz#9cdcc829cba4eebc99b725e8a71c2bcdc84398a2"
integrity sha512-2173pXRCNzC6v5ACFlbFAfp5HNcoX5ANYcAHtNa/cBIjP4G0ASdLJY1SRSPBojNh3qxAulwIASck4fX3DgGe1A==
dependencies:
configstore "^4.0.0"
cspell-dict-golang@^1.1.11:
version "1.1.11"
resolved "https://registry.yarnpkg.com/cspell-dict-golang/-/cspell-dict-golang-1.1.11.tgz#fd84f77cc2dff0a0f404c2d0d489e895c2d5e327"
integrity sha512-dInmq72nAtTBV4B1kX+6STIpKzMNfFTrzC1YBE3x3AKMdyCvKpuoIQHHpm/PFsfIeW2hiu+ZZrTYv1xc+diGlw==
dependencies:
configstore "^4.0.0"
cspell-dict-html-symbol-entities@^1.0.10:
version "1.0.10"
resolved "https://registry.yarnpkg.com/cspell-dict-html-symbol-entities/-/cspell-dict-html-symbol-entities-1.0.10.tgz#08e79b8c38cc23702f26f2c2c615cea2b9145122"
integrity sha512-8467CM6fUGnw9biN1OSJ2vXNe/I3UQrOv+rWhOJ79YiYz2rlNMZzIKmizIIvH03OqVHnzKtnHdP+udmyqHOMvQ==
dependencies:
configstore "^4.0.0"
cspell-dict-java@^1.0.9:
version "1.0.9"
resolved "https://registry.yarnpkg.com/cspell-dict-java/-/cspell-dict-java-1.0.9.tgz#61a527c6bb37a00880bbc23885594575e288ff4f"
integrity sha512-z3u1SZ9IpwhmQ9wps1qj0BTtkNNz6piMcDxzMOQDkTM+hkK/BSLEJ/+DMsnKr1Kiob1mde8LxHr/MvB9qcWXtQ==
dependencies:
configstore "^4.0.0"
cspell-dict-latex@^1.0.10:
version "1.0.10"
resolved "https://registry.yarnpkg.com/cspell-dict-latex/-/cspell-dict-latex-1.0.10.tgz#30da58a5605534dfeab3a6ea5e09f4d696540202"
integrity sha512-H2Kdu/7N5rcPpjr/5qBPdWluu2+0SdQaFrqZPWyn8XYXpYAs9YLqvsl+0MgyV3VTUJPAbz1B34UvByLfZy7FWg==
dependencies:
configstore "^4.0.0"
cspell-dict-lorem-ipsum@^1.0.9:
version "1.0.9"
resolved "https://registry.yarnpkg.com/cspell-dict-lorem-ipsum/-/cspell-dict-lorem-ipsum-1.0.9.tgz#544706b25a21ebffd115f9f064ab6984c9666cce"
integrity sha512-cGZ8vkt6dfZGZm/pMtnvYZ4coPHA/FyYL0cuA8fy30wNTdW00CnWWilQvdh0JH53eSTDDWNO9x8Uz+OFIgOeLA==
dependencies:
configstore "^4.0.0"
cspell-dict-php@^1.0.10:
version "1.0.10"
resolved "https://registry.yarnpkg.com/cspell-dict-php/-/cspell-dict-php-1.0.10.tgz#edde59bbe4d0f481886e1139a354ecaeda0c1221"
integrity sha512-9efe0p3eL8gPtjanYdMqXSj6G7SdIZaz2kiDH3vWP4qc9j4oa67rq/F+WxsLcZuye7Scm9Tw1nZWetvs/u0M8w==
dependencies:
configstore "^4.0.0"
cspell-dict-powershell@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/cspell-dict-powershell/-/cspell-dict-powershell-1.0.1.tgz#59a65426674dbd5805c84142ab616fc7deca70dc"
integrity sha512-uNmnu2wn+Yw6JDnt4jdu08HvEmZjbxbndtkStfDqIdhg/iBFRdm4VUZIY7vL5Z5xPwAgC9QwT6h86mqT8ZnCag==
dependencies:
configstore "^4.0.0"
cspell-dict-python@^1.0.12:
version "1.0.12"
resolved "https://registry.yarnpkg.com/cspell-dict-python/-/cspell-dict-python-1.0.12.tgz#c3a1b76f4eaf11ed4b3d2e8ef1c748e8a6cda461"
integrity sha512-h82By/vlnZvaag0mn+Qoj4yURZ0s/5/hpNwmIWiQWSHK61b9GMcZSmFLoJ7Nc8wi8NkxYJdL3ot5mmjBzHVPiA==
dependencies:
configstore "^4.0.0"
cspell-dict-rust@^1.0.9:
version "1.0.9"
resolved "https://registry.yarnpkg.com/cspell-dict-rust/-/cspell-dict-rust-1.0.9.tgz#cc804152537db0b812b8d2ca22bd987758f14103"
integrity sha512-8KiEawwcixyVw8EuTTQIcxHc3GTxQ3PFW+T9D8r+Y4crw5JcJeyOQlRHZcyG2+2qAhamS+tlAh/puaKwANuWWg==
dependencies:
configstore "^4.0.0"
cspell-dict-scala@^1.0.8:
version "1.0.8"
resolved "https://registry.yarnpkg.com/cspell-dict-scala/-/cspell-dict-scala-1.0.8.tgz#b7ed4df50e7c97a674d196a5953675db3ef88bfc"
integrity sha512-/t2SyLnl/zaOBilTWlBNsD2X/Sd6+WyUi5REKQhopQ1MoJc9AFUavI17ZIFHq/vCyu1ziO7xslFWYRTwfQ8yBA==
dependencies:
configstore "^4.0.0"
cspell-glob@^0.1.10:
version "0.1.10"
resolved "https://registry.yarnpkg.com/cspell-glob/-/cspell-glob-0.1.10.tgz#86c5af07dd46c2c2827a7378ffeee1c212349fba"
integrity sha512-zE8dnd5c3HA5J6mFgdKJY7cC9CUOQBCPUvRn88VRJbz1UOqezCYs2oaWZwzaZq3t2aQaR3LPsHx6022t8M5ufg==
dependencies:
micromatch "^4.0.2"
cspell-io@^4.0.16:
version "4.0.16"
resolved "https://registry.yarnpkg.com/cspell-io/-/cspell-io-4.0.16.tgz#0cadeace4320ac78a1d219d9a5974c6d24260e81"
integrity sha512-DDCsWbMMn2lPBASYddAt1tXpR+F5W9LnsGHz+z2uJe34ByilBEslnChyl35B5Kz46oecZM7re08qYjLEF47omw==
dependencies:
iconv-lite "^0.4.24"
iterable-to-stream "^1.0.1"
cspell-lib@^4.0.20:
version "4.0.20"
resolved "https://registry.yarnpkg.com/cspell-lib/-/cspell-lib-4.0.20.tgz#9f3c82b4c061c8715450865bf1ad8e362c52a307"
integrity sha512-Y6fxoe+dKL/VUjyBOaVvwIMR98Kq04C451H/qDEQHt5sDP5+TEo9AgvyWee+QhA1KV4fOGfOrLwOaSf0HPRDZQ==
dependencies:
comment-json "^1.1.3"
configstore "^4.0.0"
cspell-dict-companies "^1.0.10"
cspell-dict-cpp "^1.1.19"
cspell-dict-django "^1.0.11"
cspell-dict-elixir "^1.0.9"
cspell-dict-en-gb "^1.1.10"
cspell-dict-en_us "^1.2.16"
cspell-dict-fullstack "^1.0.13"
cspell-dict-golang "^1.1.11"
cspell-dict-html-symbol-entities "^1.0.10"
cspell-dict-java "^1.0.9"
cspell-dict-latex "^1.0.10"
cspell-dict-lorem-ipsum "^1.0.9"
cspell-dict-php "^1.0.10"
cspell-dict-powershell "^1.0.1"
cspell-dict-python "^1.0.12"
cspell-dict-rust "^1.0.9"
cspell-dict-scala "^1.0.8"
cspell-io "^4.0.16"
cspell-trie-lib "^4.0.14"
cspell-util-bundle "^4.0.4"
fs-extra "^7.0.1"
gensequence "^2.1.2"
vscode-uri "^2.0.1"
cspell-trie-lib@^4.0.14:
version "4.0.14"
resolved "https://registry.yarnpkg.com/cspell-trie-lib/-/cspell-trie-lib-4.0.14.tgz#614e538eee59847057af5cb540b776c6a6724d0e"
integrity sha512-wQWZg0ppmYobH1I8fEX7nBW4L/gAhHpG0hx9ywwLDBfrUSkNccyey6ttm4fovkTbHxw6y7G8FYFCu8oqxQWkTw==
dependencies:
gensequence "^2.1.2"
js-xxhash "^1.0.1"
cspell-util-bundle@^4.0.4:
version "4.0.4"
resolved "https://registry.yarnpkg.com/cspell-util-bundle/-/cspell-util-bundle-4.0.4.tgz#fb563d2003c3362c8dba20c9509b535e6a666c26"
integrity sha512-rJ5lz9j5TglN1WfaFTiA5eoEQwWixGMIL9dTNTbZe2XU+Owz3KhCmHUJO5xnYPNF88AnT6x/oo2qnve3/WUJ0g==
cspell@^4.0.23:
version "4.0.23"
resolved "https://registry.yarnpkg.com/cspell/-/cspell-4.0.23.tgz#0b33349c984cc85203f6702d52065738324b435b"
integrity sha512-RQEPn+e0hTO1zaX9ci9MHOhnZYLquKQYzbnhM3BYe/0QBwnCWP5NyUl/eMAjxxI46LePsyAxC1g4PiLdxtQwag==
dependencies:
chalk "^2.4.2"
commander "^2.20.0"
comment-json "^1.1.3"
configstore "^4.0.0"
cspell-glob "^0.1.10"
cspell-lib "^4.0.20"
fs-extra "^7.0.1"
gensequence "^2.1.2"
get-stdin "^7.0.0"
glob "^7.1.4"
minimatch "^3.0.4"
debug-log@^1.0.0:
version "1.0.1"
resolved "https://registry.yarnpkg.com/debug-log/-/debug-log-1.0.1.tgz#2307632d4c04382b8df8a32f70b895046d52745f"
@ -622,6 +848,13 @@ doctrine@^2.1.0:
dependencies:
esutils "^2.0.2"
dot-prop@^4.1.0:
version "4.2.0"
resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-4.2.0.tgz#1f19e0c2e1aa0e32797c49799f2837ac6af69c57"
integrity sha512-tUMXrxlExSW6U2EXiiKGSBVdYgtV8qlHL+C10TsW4PURY/ic+eaysnSkwB4kA/mBlCyy/IKDJ+Lc3wbWeaXtuQ==
dependencies:
is-obj "^1.0.0"
ed2curve@^0.1.4:
version "0.1.4"
resolved "https://registry.yarnpkg.com/ed2curve/-/ed2curve-0.1.4.tgz#94a44248bb87da35db0eff7af0aa576168117f59"
@ -841,6 +1074,11 @@ espree@^4.0.0:
acorn-jsx "^5.0.0"
eslint-visitor-keys "^1.0.0"
esprima@^2.7.0:
version "2.7.3"
resolved "https://registry.yarnpkg.com/esprima/-/esprima-2.7.3.tgz#96e3b70d5779f6ad49cd032673d1c312767ba581"
integrity sha1-luO3DVd59q1JzQMmc9HDEnZ7pYE=
esprima@^4.0.0:
version "4.0.1"
resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71"
@ -978,6 +1216,13 @@ fill-range@^4.0.0:
repeat-string "^1.6.1"
to-regex-range "^2.1.0"
fill-range@^7.0.1:
version "7.0.1"
resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40"
integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==
dependencies:
to-regex-range "^5.0.1"
find-root@^1.0.0:
version "1.1.0"
resolved "https://registry.yarnpkg.com/find-root/-/find-root-1.1.0.tgz#abcfc8ba76f708c42a97b3d685b7e9450bfb9ce4"
@ -1022,6 +1267,15 @@ fresh@~0.5.2:
resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7"
integrity sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=
fs-extra@^7.0.1:
version "7.0.1"
resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-7.0.1.tgz#4f189c44aa123b895f722804f55ea23eadc348e9"
integrity sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==
dependencies:
graceful-fs "^4.1.2"
jsonfile "^4.0.0"
universalify "^0.1.0"
fs.realpath@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f"
@ -1037,11 +1291,21 @@ functional-red-black-tree@^1.0.1:
resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327"
integrity sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=
gensequence@^2.1.2:
version "2.1.2"
resolved "https://registry.yarnpkg.com/gensequence/-/gensequence-2.1.2.tgz#ab213a705bf88699a1ab1f6b9a1b4ed487423488"
integrity sha512-TH0HcxnR7gpvpdMbiQ7+mL10Vf+9zekenuaSmUl7dHWzzeiiaCelk3Xv3V2ebrsVMLfi1KJ8Q0CpGthaxiM9zQ==
get-stdin@^6.0.0:
version "6.0.0"
resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-6.0.0.tgz#9e09bf712b360ab9225e812048f71fde9c89657b"
integrity sha512-jp4tHawyV7+fkkSKyvjuLZswblUtz+SQKzSWnBbii16BuZksJlU1wuBYXY75r+duh/llF1ur6oNwi+2ZzjKZ7g==
get-stdin@^7.0.0:
version "7.0.0"
resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-7.0.0.tgz#8d5de98f15171a125c5e516643c7a6d0ea8a96f6"
integrity sha512-zRKcywvrXlXsA0v0i9Io4KDRaAw7+a1ZpjRwl9Wox8PFlVCCHra7E9c4kqXCoCM9nR5tBkaTTZRBoCm60bFqTQ==
get-value@^2.0.3, get-value@^2.0.6:
version "2.0.6"
resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28"
@ -1060,7 +1324,7 @@ glob-to-regexp@^0.3.0:
resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.3.0.tgz#8c5a1494d2066c570cc3bfe4496175acc4d502ab"
integrity sha1-jFoUlNIGbFcMw7/kSWF1rMTVAqs=
glob@^7.0.5, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3:
glob@^7.0.5, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4:
version "7.1.4"
resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.4.tgz#aa608a2f6c577ad357e1ae5a5c26d9a8d1969255"
integrity sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A==
@ -1090,7 +1354,7 @@ globby@^8.0.1:
pify "^3.0.0"
slash "^1.0.0"
graceful-fs@^4.1.2:
graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.6:
version "4.2.0"
resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.0.tgz#8d8fdc73977cb04104721cb53666c1ca64cd328b"
integrity sha512-jpSvDPV4Cq/bgtpndIWbI5hmYxhQGHPC4d4cqBPb4DLniCfhJokdXhwhaDuLBGLQdvvRum/UiX6ECVIPvDXqdg==
@ -1218,7 +1482,7 @@ hyperscript@^2.0.2:
class-list "~0.1.0"
html-element "^2.0.0"
iconv-lite@0.4.24, iconv-lite@^0.4.17:
iconv-lite@0.4.24, iconv-lite@^0.4.17, iconv-lite@^0.4.24:
version "0.4.24"
resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b"
integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==
@ -1426,6 +1690,16 @@ is-number@^3.0.0:
dependencies:
kind-of "^3.0.2"
is-number@^7.0.0:
version "7.0.0"
resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b"
integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==
is-obj@^1.0.0:
version "1.0.1"
resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-1.0.1.tgz#3e4729ac1f5fde025cd7d83a896dab9f4f67db0f"
integrity sha1-PkcprB9f3gJc19g6iW2rn09n2w8=
is-plain-object@^2.0.3, is-plain-object@^2.0.4:
version "2.0.4"
resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677"
@ -1513,6 +1787,11 @@ isobject@^3.0.0, isobject@^3.0.1:
resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df"
integrity sha1-TkMekrEalzFjaqH5yNHMvP2reN8=
iterable-to-stream@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/iterable-to-stream/-/iterable-to-stream-1.0.1.tgz#37e86baacf6b1a0e9233dad4eb526d0423d08bf3"
integrity sha512-O62gD5ADMUGtJoOoM9U6LQ7i4byPXUNoHJ6mqsmkQJcom331ZJGDApWgDESWyBMEHEJRjtHozgIiTzYo9RU4UA==
"js-tokens@^3.0.0 || ^4.0.0":
version "4.0.0"
resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499"
@ -1523,6 +1802,11 @@ js-tokens@^3.0.2:
resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b"
integrity sha1-mGbfOVECEw449/mWvOtlRDIJwls=
js-xxhash@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/js-xxhash/-/js-xxhash-1.0.1.tgz#8ef97ff13576abac8539e91512a4033f0e9d69c5"
integrity sha512-ociwKjHkCPjqNMmZtD7uUoL+AVhcSZX3WPmirRwXg+PzKD0v5x9K2yLpvkSglbThvbGN/TVA+3XFjPVolQwDpQ==
js-yaml@^3.11.0:
version "3.13.1"
resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.13.1.tgz#aff151b30bfdfa8e49e05da22e7415e9dfa37847"
@ -1541,6 +1825,13 @@ json-parse-better-errors@^1.0.1:
resolved "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9"
integrity sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==
json-parser@^1.0.0:
version "1.1.5"
resolved "https://registry.yarnpkg.com/json-parser/-/json-parser-1.1.5.tgz#e62ec5261d1a6a5fc20e812a320740c6d9005677"
integrity sha1-5i7FJh0aal/CDoEqMgdAxtkAVnc=
dependencies:
esprima "^2.7.0"
json-schema-traverse@^0.4.1:
version "0.4.1"
resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660"
@ -1551,6 +1842,13 @@ json-stable-stringify-without-jsonify@^1.0.1:
resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651"
integrity sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=
jsonfile@^4.0.0:
version "4.0.0"
resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-4.0.0.tgz#8771aae0799b64076b76640fca058f9c10e33ecb"
integrity sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=
optionalDependencies:
graceful-fs "^4.1.6"
jsx-ast-utils@^2.0.1:
version "2.2.0"
resolved "https://registry.yarnpkg.com/jsx-ast-utils/-/jsx-ast-utils-2.2.0.tgz#e2bade6d09c8ef9d5f6b9ff2ace67b2cdbc7e370"
@ -1772,6 +2070,13 @@ loose-envify@^1.4.0:
dependencies:
js-tokens "^3.0.0 || ^4.0.0"
make-dir@^1.0.0:
version "1.3.0"
resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-1.3.0.tgz#79c1033b80515bd6d24ec9933e860ca75ee27f0c"
integrity sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==
dependencies:
pify "^3.0.0"
map-cache@^0.2.2:
version "0.2.2"
resolved "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf"
@ -1844,6 +2149,14 @@ micromatch@^3.1.10:
snapdragon "^0.8.1"
to-regex "^3.0.2"
micromatch@^4.0.2:
version "4.0.2"
resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.2.tgz#4fcb0999bf9fbc2fcbdd212f6d629b9a56c39259"
integrity sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==
dependencies:
braces "^3.0.1"
picomatch "^2.0.5"
mime-db@1.40.0:
version "1.40.0"
resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.40.0.tgz#a65057e998db090f732a68f6c276d387d4126c32"
@ -2261,6 +2574,11 @@ path-type@^3.0.0:
dependencies:
pify "^3.0.0"
picomatch@^2.0.5:
version "2.0.7"
resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.0.7.tgz#514169d8c7cd0bdbeecc8a2609e34a7163de69f6"
integrity sha512-oLHIdio3tZ0qH76NybpeneBhYVj0QFTfXEFTc/B3zKQspYfYYkWYgFsmzo+4kvId/bQRcNkVeguI3y+CD22BtA==
pify@^2.0.0:
version "2.3.0"
resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c"
@ -2897,9 +3215,9 @@ ssb-markdown@^5.0.1:
markdown-it-hashtag "^0.4.0"
node-emoji "^1.10.0"
ssb-msgs@^5.2.0:
ssb-messages@^5.2.0:
version "5.2.0"
resolved "https://registry.yarnpkg.com/ssb-msgs/-/ssb-msgs-5.2.0.tgz#c681da5cd70c574c922dca4f03c521538135c243"
resolved "https://registry.yarnpkg.com/ssb-messages/-/ssb-messages-5.2.0.tgz#c681da5cd70c574c922dca4f03c521538135c243"
integrity sha1-xoHaXNcMV0ySLcpPA8UhU4E1wkM=
dependencies:
ssb-ref "^2.0.0"
@ -3067,6 +3385,13 @@ to-regex-range@^2.1.0:
is-number "^3.0.0"
repeat-string "^1.6.1"
to-regex-range@^5.0.1:
version "5.0.1"
resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4"
integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==
dependencies:
is-number "^7.0.0"
to-regex@^3.0.1, to-regex@^3.0.2:
version "3.0.2"
resolved "https://registry.yarnpkg.com/to-regex/-/to-regex-3.0.2.tgz#13cfdd9b336552f30b51f33a8ae1b42a7a7599ce"
@ -3144,6 +3469,18 @@ uniq@^1.0.1:
resolved "https://registry.yarnpkg.com/uniq/-/uniq-1.0.1.tgz#b31c5ae8254844a3a8281541ce2b04b865a734ff"
integrity sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8=
unique-string@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/unique-string/-/unique-string-1.0.0.tgz#9e1057cca851abb93398f8b33ae187b99caec11a"
integrity sha1-nhBXzKhRq7kzmPizOuGHuZyuwRo=
dependencies:
crypto-random-string "^1.0.0"
universalify@^0.1.0:
version "0.1.2"
resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66"
integrity sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==
unpipe@1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec"
@ -3192,6 +3529,11 @@ vary@^1.1.2:
resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc"
integrity sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=
vscode-uri@^2.0.1:
version "2.0.2"
resolved "https://registry.yarnpkg.com/vscode-uri/-/vscode-uri-2.0.2.tgz#cbc7982525e1cd102d2da6515e6f103650cb507c"
integrity sha512-VebpIxm9tG0fG2sBOhnsSPzDYuNUPP1UQW4K3mwthlca4e4f3d6HKq3HkITC2OPFomOaB7pHTSjcpdFWjfYTzg==
which@^1.2.9:
version "1.3.1"
resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a"
@ -3209,6 +3551,15 @@ wrappy@1:
resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"
integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=
write-file-atomic@^2.0.0:
version "2.4.3"
resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-2.4.3.tgz#1fd2e9ae1df3e75b8d8c367443c692d4ca81f481"
integrity sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ==
dependencies:
graceful-fs "^4.1.11"
imurmurhash "^0.1.4"
signal-exit "^3.0.2"
write@^0.2.1:
version "0.2.1"
resolved "https://registry.yarnpkg.com/write/-/write-0.2.1.tgz#5fc03828e264cea3fe91455476f7a3c566cb0757"
@ -3224,6 +3575,11 @@ ws@^1.1.0:
options ">=0.0.5"
ultron "1.0.x"
xdg-basedir@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/xdg-basedir/-/xdg-basedir-3.0.0.tgz#496b2cc109eca8dbacfe2dc72b603c17c5870ad4"
integrity sha1-SWsswQnsqNus/i3HK2A8F8WHCtQ=
xtend@^4.0.1:
version "4.0.1"
resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af"