Localforage 2: Add support for localstorage.
This commit is contained in:
commit
3880da9749
11 changed files with 99 additions and 171 deletions
|
@ -22,12 +22,9 @@
|
||||||
"cropperjs": "^1.4.3",
|
"cropperjs": "^1.4.3",
|
||||||
"diff": "^3.0.1",
|
"diff": "^3.0.1",
|
||||||
"escape-html": "^1.0.3",
|
"escape-html": "^1.0.3",
|
||||||
"karma-mocha-reporter": "^2.2.1",
|
|
||||||
"localforage": "^1.5.0",
|
"localforage": "^1.5.0",
|
||||||
"object-path": "^0.11.3",
|
|
||||||
"phoenix": "^1.3.0",
|
"phoenix": "^1.3.0",
|
||||||
"portal-vue": "^2.1.4",
|
"portal-vue": "^2.1.4",
|
||||||
"sanitize-html": "^1.13.0",
|
|
||||||
"v-click-outside": "^2.1.1",
|
"v-click-outside": "^2.1.1",
|
||||||
"vue": "^2.6.11",
|
"vue": "^2.6.11",
|
||||||
"vue-chat-scroll": "^1.2.1",
|
"vue-chat-scroll": "^1.2.1",
|
||||||
|
@ -35,10 +32,10 @@
|
||||||
"vue-router": "^3.0.1",
|
"vue-router": "^3.0.1",
|
||||||
"vue-template-compiler": "^2.6.11",
|
"vue-template-compiler": "^2.6.11",
|
||||||
"vuelidate": "^0.7.4",
|
"vuelidate": "^0.7.4",
|
||||||
"vuex": "^3.0.1",
|
"vuex": "^3.0.1"
|
||||||
"whatwg-fetch": "^2.0.3"
|
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
|
"karma-mocha-reporter": "^2.2.1",
|
||||||
"@babel/core": "^7.7.5",
|
"@babel/core": "^7.7.5",
|
||||||
"@babel/plugin-transform-runtime": "^7.7.6",
|
"@babel/plugin-transform-runtime": "^7.7.6",
|
||||||
"@babel/preset-env": "^7.7.6",
|
"@babel/preset-env": "^7.7.6",
|
||||||
|
|
|
@ -78,6 +78,7 @@
|
||||||
video,
|
video,
|
||||||
canvas {
|
canvas {
|
||||||
object-fit: contain;
|
object-fit: contain;
|
||||||
|
height: 100%;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -23,13 +23,6 @@
|
||||||
|
|
||||||
<style lang="scss">
|
<style lang="scss">
|
||||||
@import '../../_variables.scss';
|
@import '../../_variables.scss';
|
||||||
.contain-fit {
|
|
||||||
.still-image {
|
|
||||||
img {
|
|
||||||
height: 100%;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.still-image {
|
.still-image {
|
||||||
position: relative;
|
position: relative;
|
||||||
|
@ -38,6 +31,7 @@
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
display: flex;
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
|
||||||
&:hover canvas {
|
&:hover canvas {
|
||||||
display: none;
|
display: none;
|
||||||
|
@ -45,8 +39,8 @@
|
||||||
|
|
||||||
img {
|
img {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
|
min-height: 100%;
|
||||||
object-fit: contain;
|
object-fit: contain;
|
||||||
align-self: center;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
&.animated {
|
&.animated {
|
||||||
|
|
|
@ -238,13 +238,42 @@
|
||||||
"alert_warning": "Attenzione",
|
"alert_warning": "Attenzione",
|
||||||
"alert_error": "Errore",
|
"alert_error": "Errore",
|
||||||
"alert": "Sfondo degli avvertimenti",
|
"alert": "Sfondo degli avvertimenti",
|
||||||
"_tab_label": "Avanzate"
|
"_tab_label": "Avanzate",
|
||||||
|
"tabs": "Etichette",
|
||||||
|
"disabled": "Disabilitato",
|
||||||
|
"selectedMenu": "Voce menù selezionata",
|
||||||
|
"selectedPost": "Messaggio selezionato",
|
||||||
|
"pressed": "Premuto",
|
||||||
|
"highlight": "Elementi evidenziati",
|
||||||
|
"icons": "Icone",
|
||||||
|
"poll": "Grafico sondaggi",
|
||||||
|
"underlay": "Sottostante",
|
||||||
|
"faint_text": "Testo sbiadito",
|
||||||
|
"inputs": "Campi d'immissione",
|
||||||
|
"buttons": "Pulsanti",
|
||||||
|
"borders": "Bordi",
|
||||||
|
"top_bar": "Barra superiore",
|
||||||
|
"panel_header": "Titolo pannello",
|
||||||
|
"badge_notification": "Notifica",
|
||||||
|
"popover": "Suggerimenti, menù, sbalzi"
|
||||||
},
|
},
|
||||||
"common_colors": {
|
"common_colors": {
|
||||||
"rgbo": "Icone, accenti, medaglie",
|
"rgbo": "Icone, accenti, medaglie",
|
||||||
"foreground_hint": "Seleziona l'etichetta \"Avanzate\" per controlli più fini",
|
"foreground_hint": "Seleziona l'etichetta \"Avanzate\" per controlli più fini",
|
||||||
"main": "Colori comuni",
|
"main": "Colori comuni",
|
||||||
"_tab_label": "Comuni"
|
"_tab_label": "Comuni"
|
||||||
|
},
|
||||||
|
"shadows": {
|
||||||
|
"inset": "Includi",
|
||||||
|
"spread": "Spandi",
|
||||||
|
"blur": "Sfoca",
|
||||||
|
"shadow_id": "Ombra numero {value}",
|
||||||
|
"override": "Sostituisci",
|
||||||
|
"component": "Componente",
|
||||||
|
"_tab_label": "Luci ed ombre"
|
||||||
|
},
|
||||||
|
"radii": {
|
||||||
|
"_tab_label": "Raggio"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"enable_web_push_notifications": "Abilita notifiche web push",
|
"enable_web_push_notifications": "Abilita notifiche web push",
|
||||||
|
@ -261,7 +290,7 @@
|
||||||
"notifications": "Notifiche",
|
"notifications": "Notifiche",
|
||||||
"greentext": "Frecce da meme",
|
"greentext": "Frecce da meme",
|
||||||
"upload_a_photo": "Carica un'immagine",
|
"upload_a_photo": "Carica un'immagine",
|
||||||
"type_domains_to_mute": "Inserisci domini da zittire",
|
"type_domains_to_mute": "Cerca domini da zittire",
|
||||||
"theme_help_v2_2": "Le icone dietro alcuni elementi sono indicatori del contrasto fra testo e sfondo, passaci sopra col puntatore per ulteriori informazioni. Se si usano delle trasparenze, questi indicatori mostrano il peggior caso possibile.",
|
"theme_help_v2_2": "Le icone dietro alcuni elementi sono indicatori del contrasto fra testo e sfondo, passaci sopra col puntatore per ulteriori informazioni. Se si usano delle trasparenze, questi indicatori mostrano il peggior caso possibile.",
|
||||||
"theme_help_v2_1": "Puoi anche forzare colore ed opacità di alcuni elementi selezionando la casella. Usa il pulsante \"Azzera\" per azzerare tutte le forzature.",
|
"theme_help_v2_1": "Puoi anche forzare colore ed opacità di alcuni elementi selezionando la casella. Usa il pulsante \"Azzera\" per azzerare tutte le forzature.",
|
||||||
"useStreamingApiWarning": "(Sconsigliato, sperimentale, può saltare messaggi)",
|
"useStreamingApiWarning": "(Sconsigliato, sperimentale, può saltare messaggi)",
|
||||||
|
|
|
@ -14,9 +14,11 @@ const getDb = (database, version) => {
|
||||||
return wrap(request)
|
return wrap(request)
|
||||||
}
|
}
|
||||||
|
|
||||||
const storageBuilder = (database = 'storage_2', version = 1) => ({
|
const storageBuilder = async (database = 'storage_2', version = 1) => {
|
||||||
|
try {
|
||||||
|
let db = await getDb(database, version)
|
||||||
|
const storage = {
|
||||||
getItem: async (key) => {
|
getItem: async (key) => {
|
||||||
const db = await getDb(database, version)
|
|
||||||
const dataRequest =
|
const dataRequest =
|
||||||
db
|
db
|
||||||
.transaction(['keyvaluepairs'])
|
.transaction(['keyvaluepairs'])
|
||||||
|
@ -28,7 +30,6 @@ const storageBuilder = (database = 'storage_2', version = 1) => ({
|
||||||
return dataRequestPromise
|
return dataRequestPromise
|
||||||
},
|
},
|
||||||
setItem: async (key, value) => {
|
setItem: async (key, value) => {
|
||||||
const db = await getDb(database, version)
|
|
||||||
const dataRequest =
|
const dataRequest =
|
||||||
db
|
db
|
||||||
.transaction(['keyvaluepairs'], 'readwrite')
|
.transaction(['keyvaluepairs'], 'readwrite')
|
||||||
|
@ -37,6 +38,28 @@ const storageBuilder = (database = 'storage_2', version = 1) => ({
|
||||||
|
|
||||||
return wrap(dataRequest)
|
return wrap(dataRequest)
|
||||||
}
|
}
|
||||||
})
|
}
|
||||||
|
|
||||||
|
return storage
|
||||||
|
} catch (e) {
|
||||||
|
console.log("Can't get indexeddb going, let's use localstorage")
|
||||||
|
|
||||||
|
const storage = {
|
||||||
|
getItem: async (key) => {
|
||||||
|
const result = window.localStorage.getItem(`${database}/${key}`)
|
||||||
|
try {
|
||||||
|
return JSON.parse(result)
|
||||||
|
} catch (e) {
|
||||||
|
return undefined
|
||||||
|
}
|
||||||
|
},
|
||||||
|
setItem: async (key, value) => {
|
||||||
|
const json = JSON.stringify(value)
|
||||||
|
return window.localStorage.setItem(`${database}/${key}`, json)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return storage
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
export default storageBuilder
|
export default storageBuilder
|
||||||
|
|
|
@ -1,14 +1,11 @@
|
||||||
import merge from 'lodash.merge'
|
|
||||||
import objectPath from 'object-path'
|
|
||||||
// import localforage from 'localforage'
|
|
||||||
import localforage2 from './localforage_redux'
|
import localforage2 from './localforage_redux'
|
||||||
import { each } from 'lodash'
|
import { merge, each, get, set } from 'lodash'
|
||||||
|
|
||||||
let loaded = false
|
let loaded = false
|
||||||
|
|
||||||
const defaultReducer = (state, paths) => (
|
const defaultReducer = (state, paths) => (
|
||||||
paths.length === 0 ? state : paths.reduce((substate, path) => {
|
paths.length === 0 ? state : paths.reduce((substate, path) => {
|
||||||
objectPath.set(substate, path, objectPath.get(state, path))
|
set(substate, path, get(state, path))
|
||||||
return substate
|
return substate
|
||||||
}, {})
|
}, {})
|
||||||
)
|
)
|
||||||
|
@ -24,13 +21,13 @@ const saveImmedeatelyActions = [
|
||||||
'clearToken'
|
'clearToken'
|
||||||
]
|
]
|
||||||
|
|
||||||
const defaultStorage = (() => {
|
const defaultStorageBuilder = () => {
|
||||||
// Use this to use the existing localforage db
|
// Use this to use the existing localforage db
|
||||||
// return localforage2('localforage', 2)
|
// return localforage2('localforage', 2)
|
||||||
return localforage2()
|
return localforage2()
|
||||||
})()
|
}
|
||||||
|
|
||||||
export default function createPersistedState ({
|
export default async function createPersistedState ({
|
||||||
key = 'vuex-lz',
|
key = 'vuex-lz',
|
||||||
paths = [],
|
paths = [],
|
||||||
getState = (key, storage) => {
|
getState = (key, storage) => {
|
||||||
|
@ -46,9 +43,10 @@ export default function createPersistedState ({
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
reducer = defaultReducer,
|
reducer = defaultReducer,
|
||||||
storage = defaultStorage,
|
storageBuilder = defaultStorageBuilder,
|
||||||
subscriber = store => handler => store.subscribe(handler)
|
subscriber = store => handler => store.subscribe(handler)
|
||||||
} = {}) {
|
} = {}) {
|
||||||
|
const storage = await storageBuilder()
|
||||||
return getState(key, storage).then((savedState) => {
|
return getState(key, storage).then((savedState) => {
|
||||||
return store => {
|
return store => {
|
||||||
try {
|
try {
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
import { each, map, concat, last, get } from 'lodash'
|
import { each, map, concat, last, get } from 'lodash'
|
||||||
import { parseStatus, parseUser, parseNotification, parseAttachment } from '../entity_normalizer/entity_normalizer.service.js'
|
import { parseStatus, parseUser, parseNotification, parseAttachment } from '../entity_normalizer/entity_normalizer.service.js'
|
||||||
import 'whatwg-fetch'
|
|
||||||
import { RegistrationError, StatusCodeError } from '../errors/errors'
|
import { RegistrationError, StatusCodeError } from '../errors/errors'
|
||||||
|
|
||||||
/* eslint-env browser */
|
/* eslint-env browser */
|
||||||
|
|
|
@ -1,17 +1,4 @@
|
||||||
import { filter } from 'lodash'
|
import { filter } from 'lodash'
|
||||||
import sanitize from 'sanitize-html'
|
|
||||||
|
|
||||||
export const removeAttachmentLinks = (html) => {
|
|
||||||
return sanitize(html, {
|
|
||||||
allowedTags: false,
|
|
||||||
allowedAttributes: false,
|
|
||||||
exclusiveFilter: ({ tag, attribs }) => tag === 'a' && typeof attribs.class === 'string' && attribs.class.match(/attachment/)
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
export const parse = (html) => {
|
|
||||||
return removeAttachmentLinks(html)
|
|
||||||
}
|
|
||||||
|
|
||||||
export const muteWordHits = (status, muteWords) => {
|
export const muteWordHits = (status, muteWords) => {
|
||||||
const statusText = status.text.toLowerCase()
|
const statusText = status.text.toLowerCase()
|
||||||
|
@ -22,5 +9,3 @@ export const muteWordHits = (status, muteWords) => {
|
||||||
|
|
||||||
return hits
|
return hits
|
||||||
}
|
}
|
||||||
|
|
||||||
export default parse
|
|
||||||
|
|
|
@ -1,9 +1,10 @@
|
||||||
/* eslint-env serviceworker */
|
/* eslint-env serviceworker */
|
||||||
|
|
||||||
import localForage from 'localforage'
|
import localForage from './lib/localforage_redux'
|
||||||
|
|
||||||
function isEnabled () {
|
async function isEnabled () {
|
||||||
return localForage.getItem('vuex-lz')
|
const storage = await localForage()
|
||||||
|
return storage.getItem('vuex-lz')
|
||||||
.then(data => data.config.webPushNotifications)
|
.then(data => data.config.webPushNotifications)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,17 +0,0 @@
|
||||||
import { removeAttachmentLinks } from '../../../../../src/services/status_parser/status_parser.js'
|
|
||||||
|
|
||||||
const example = '<div class="status-content">@<a href="https://sealion.club/user/4" class="h-card mention" title="dewoo">dwmatiz</a> <a href="https://social.heldscal.la/file/3deb764ada10ce64a61b7a070b75dac45f86d2d5bf213bf18873da71d8714d86.png" title="https://social.heldscal.la/file/3deb764ada10ce64a61b7a070b75dac45f86d2d5bf213bf18873da71d8714d86.png" class="attachment" id="attachment-159853" rel="nofollow external">https://social.heldscal.la/attachment/159853</a></div>'
|
|
||||||
|
|
||||||
describe('statusParser.removeAttachmentLinks', () => {
|
|
||||||
const exampleWithoutAttachmentLinks = '<div class="status-content">@<a href="https://sealion.club/user/4" class="h-card mention" title="dewoo">dwmatiz</a> </div>'
|
|
||||||
|
|
||||||
it('removes attachment links', () => {
|
|
||||||
const parsed = removeAttachmentLinks(example)
|
|
||||||
expect(parsed).to.eql(exampleWithoutAttachmentLinks)
|
|
||||||
})
|
|
||||||
|
|
||||||
it('works when the class is empty', () => {
|
|
||||||
const parsed = removeAttachmentLinks('<a></a>')
|
|
||||||
expect(parsed).to.eql('<a></a>')
|
|
||||||
})
|
|
||||||
})
|
|
100
yarn.lock
100
yarn.lock
|
@ -1062,7 +1062,7 @@ array-union@^1.0.1:
|
||||||
dependencies:
|
dependencies:
|
||||||
array-uniq "^1.0.1"
|
array-uniq "^1.0.1"
|
||||||
|
|
||||||
array-uniq@^1.0.1, array-uniq@^1.0.2:
|
array-uniq@^1.0.1:
|
||||||
version "1.0.3"
|
version "1.0.3"
|
||||||
resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6"
|
resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6"
|
||||||
|
|
||||||
|
@ -2545,7 +2545,7 @@ domain-browser@^1.1.1:
|
||||||
version "1.2.0"
|
version "1.2.0"
|
||||||
resolved "https://registry.yarnpkg.com/domain-browser/-/domain-browser-1.2.0.tgz#3d31f50191a6749dd1375a7f522e823d42e54eda"
|
resolved "https://registry.yarnpkg.com/domain-browser/-/domain-browser-1.2.0.tgz#3d31f50191a6749dd1375a7f522e823d42e54eda"
|
||||||
|
|
||||||
domelementtype@1, domelementtype@^1.3.0:
|
domelementtype@1:
|
||||||
version "1.3.1"
|
version "1.3.1"
|
||||||
resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.3.1.tgz#d048c44b37b0d10a7f2a3d5fee3f4333d790481f"
|
resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.3.1.tgz#d048c44b37b0d10a7f2a3d5fee3f4333d790481f"
|
||||||
|
|
||||||
|
@ -2559,12 +2559,6 @@ domhandler@2.1:
|
||||||
dependencies:
|
dependencies:
|
||||||
domelementtype "1"
|
domelementtype "1"
|
||||||
|
|
||||||
domhandler@^2.3.0:
|
|
||||||
version "2.4.2"
|
|
||||||
resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-2.4.2.tgz#8805097e933d65e85546f726d60f5eb88b44f803"
|
|
||||||
dependencies:
|
|
||||||
domelementtype "1"
|
|
||||||
|
|
||||||
domutils@1.1:
|
domutils@1.1:
|
||||||
version "1.1.6"
|
version "1.1.6"
|
||||||
resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.1.6.tgz#bddc3de099b9a2efacc51c623f28f416ecc57485"
|
resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.1.6.tgz#bddc3de099b9a2efacc51c623f28f416ecc57485"
|
||||||
|
@ -2578,13 +2572,6 @@ domutils@1.5.1:
|
||||||
dom-serializer "0"
|
dom-serializer "0"
|
||||||
domelementtype "1"
|
domelementtype "1"
|
||||||
|
|
||||||
domutils@^1.5.1:
|
|
||||||
version "1.7.0"
|
|
||||||
resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.7.0.tgz#56ea341e834e06e6748af7a1cb25da67ea9f8c2a"
|
|
||||||
dependencies:
|
|
||||||
dom-serializer "0"
|
|
||||||
domelementtype "1"
|
|
||||||
|
|
||||||
duplexer2@~0.1.4:
|
duplexer2@~0.1.4:
|
||||||
version "0.1.4"
|
version "0.1.4"
|
||||||
resolved "https://registry.yarnpkg.com/duplexer2/-/duplexer2-0.1.4.tgz#8b12dab878c0d69e3e7891051662a32fc6bddcc1"
|
resolved "https://registry.yarnpkg.com/duplexer2/-/duplexer2-0.1.4.tgz#8b12dab878c0d69e3e7891051662a32fc6bddcc1"
|
||||||
|
@ -2711,7 +2698,7 @@ ent@~2.2.0:
|
||||||
version "2.2.0"
|
version "2.2.0"
|
||||||
resolved "https://registry.yarnpkg.com/ent/-/ent-2.2.0.tgz#e964219325a21d05f44466a2f686ed6ce5f5dd1d"
|
resolved "https://registry.yarnpkg.com/ent/-/ent-2.2.0.tgz#e964219325a21d05f44466a2f686ed6ce5f5dd1d"
|
||||||
|
|
||||||
entities@^1.1.1, entities@~1.1.1:
|
entities@~1.1.1:
|
||||||
version "1.1.2"
|
version "1.1.2"
|
||||||
resolved "https://registry.yarnpkg.com/entities/-/entities-1.1.2.tgz#bdfa735299664dfafd34529ed4f8522a275fea56"
|
resolved "https://registry.yarnpkg.com/entities/-/entities-1.1.2.tgz#bdfa735299664dfafd34529ed4f8522a275fea56"
|
||||||
|
|
||||||
|
@ -3762,17 +3749,6 @@ html-webpack-plugin@^3.0.0, html-webpack-plugin@^3.2.0:
|
||||||
toposort "^1.0.0"
|
toposort "^1.0.0"
|
||||||
util.promisify "1.0.0"
|
util.promisify "1.0.0"
|
||||||
|
|
||||||
htmlparser2@^3.10.0:
|
|
||||||
version "3.10.0"
|
|
||||||
resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-3.10.0.tgz#5f5e422dcf6119c0d983ed36260ce9ded0bee464"
|
|
||||||
dependencies:
|
|
||||||
domelementtype "^1.3.0"
|
|
||||||
domhandler "^2.3.0"
|
|
||||||
domutils "^1.5.1"
|
|
||||||
entities "^1.1.1"
|
|
||||||
inherits "^2.0.1"
|
|
||||||
readable-stream "^3.0.6"
|
|
||||||
|
|
||||||
htmlparser2@~3.3.0:
|
htmlparser2@~3.3.0:
|
||||||
version "3.3.0"
|
version "3.3.0"
|
||||||
resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-3.3.0.tgz#cc70d05a59f6542e43f0e685c982e14c924a9efe"
|
resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-3.3.0.tgz#cc70d05a59f6542e43f0e685c982e14c924a9efe"
|
||||||
|
@ -4757,10 +4733,6 @@ lodash.clone@3.0.3:
|
||||||
lodash._bindcallback "^3.0.0"
|
lodash._bindcallback "^3.0.0"
|
||||||
lodash._isiterateecall "^3.0.0"
|
lodash._isiterateecall "^3.0.0"
|
||||||
|
|
||||||
lodash.clonedeep@^4.5.0:
|
|
||||||
version "4.5.0"
|
|
||||||
resolved "https://registry.yarnpkg.com/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz#e23f3f9c4f8fbdde872529c1071857a086e5ccef"
|
|
||||||
|
|
||||||
lodash.create@3.1.1:
|
lodash.create@3.1.1:
|
||||||
version "3.1.1"
|
version "3.1.1"
|
||||||
resolved "https://registry.yarnpkg.com/lodash.create/-/lodash.create-3.1.1.tgz#d7f2849f0dbda7e04682bb8cd72ab022461debe7"
|
resolved "https://registry.yarnpkg.com/lodash.create/-/lodash.create-3.1.1.tgz#d7f2849f0dbda7e04682bb8cd72ab022461debe7"
|
||||||
|
@ -4780,10 +4752,6 @@ lodash.defaultsdeep@4.3.2:
|
||||||
lodash.mergewith "^4.0.0"
|
lodash.mergewith "^4.0.0"
|
||||||
lodash.rest "^4.0.0"
|
lodash.rest "^4.0.0"
|
||||||
|
|
||||||
lodash.escaperegexp@^4.1.2:
|
|
||||||
version "4.1.2"
|
|
||||||
resolved "https://registry.yarnpkg.com/lodash.escaperegexp/-/lodash.escaperegexp-4.1.2.tgz#64762c48618082518ac3df4ccf5d5886dae20347"
|
|
||||||
|
|
||||||
lodash.find@^3.2.1:
|
lodash.find@^3.2.1:
|
||||||
version "3.2.1"
|
version "3.2.1"
|
||||||
resolved "https://registry.yarnpkg.com/lodash.find/-/lodash.find-3.2.1.tgz#046e319f3ace912ac6c9246c7f683c5ec07b36ad"
|
resolved "https://registry.yarnpkg.com/lodash.find/-/lodash.find-3.2.1.tgz#046e319f3ace912ac6c9246c7f683c5ec07b36ad"
|
||||||
|
@ -4815,14 +4783,10 @@ lodash.isplainobject@^3.0.0, lodash.isplainobject@^3.2.0:
|
||||||
lodash.isarguments "^3.0.0"
|
lodash.isarguments "^3.0.0"
|
||||||
lodash.keysin "^3.0.0"
|
lodash.keysin "^3.0.0"
|
||||||
|
|
||||||
lodash.isplainobject@^4.0.0, lodash.isplainobject@^4.0.6:
|
lodash.isplainobject@^4.0.0:
|
||||||
version "4.0.6"
|
version "4.0.6"
|
||||||
resolved "https://registry.yarnpkg.com/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz#7c526a52d89b45c45cc690b88163be0497f550cb"
|
resolved "https://registry.yarnpkg.com/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz#7c526a52d89b45c45cc690b88163be0497f550cb"
|
||||||
|
|
||||||
lodash.isstring@^4.0.1:
|
|
||||||
version "4.0.1"
|
|
||||||
resolved "https://registry.yarnpkg.com/lodash.isstring/-/lodash.isstring-4.0.1.tgz#d527dfb5456eca7cc9bb95d5daeaf88ba54a5451"
|
|
||||||
|
|
||||||
lodash.istypedarray@^3.0.0:
|
lodash.istypedarray@^3.0.0:
|
||||||
version "3.0.6"
|
version "3.0.6"
|
||||||
resolved "https://registry.yarnpkg.com/lodash.istypedarray/-/lodash.istypedarray-3.0.6.tgz#c9a477498607501d8e8494d283b87c39281cef62"
|
resolved "https://registry.yarnpkg.com/lodash.istypedarray/-/lodash.istypedarray-3.0.6.tgz#c9a477498607501d8e8494d283b87c39281cef62"
|
||||||
|
@ -4871,7 +4835,7 @@ lodash.merge@^3.3.2:
|
||||||
lodash.keysin "^3.0.0"
|
lodash.keysin "^3.0.0"
|
||||||
lodash.toplainobject "^3.0.0"
|
lodash.toplainobject "^3.0.0"
|
||||||
|
|
||||||
lodash.mergewith@^4.0.0, lodash.mergewith@^4.6.1:
|
lodash.mergewith@^4.0.0:
|
||||||
version "4.6.1"
|
version "4.6.1"
|
||||||
resolved "https://registry.yarnpkg.com/lodash.mergewith/-/lodash.mergewith-4.6.1.tgz#639057e726c3afbdb3e7d42741caa8d6e4335927"
|
resolved "https://registry.yarnpkg.com/lodash.mergewith/-/lodash.mergewith-4.6.1.tgz#639057e726c3afbdb3e7d42741caa8d6e4335927"
|
||||||
|
|
||||||
|
@ -5538,10 +5502,6 @@ object-keys@^1.0.11, object-keys@^1.0.12:
|
||||||
version "1.1.1"
|
version "1.1.1"
|
||||||
resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e"
|
resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e"
|
||||||
|
|
||||||
object-path@^0.11.3:
|
|
||||||
version "0.11.4"
|
|
||||||
resolved "https://registry.yarnpkg.com/object-path/-/object-path-0.11.4.tgz#370ae752fbf37de3ea70a861c23bba8915691949"
|
|
||||||
|
|
||||||
object-visit@^1.0.0:
|
object-visit@^1.0.0:
|
||||||
version "1.0.1"
|
version "1.0.1"
|
||||||
resolved "https://registry.yarnpkg.com/object-visit/-/object-visit-1.0.1.tgz#f79c4493af0c5377b59fe39d395e41042dd045bb"
|
resolved "https://registry.yarnpkg.com/object-visit/-/object-visit-1.0.1.tgz#f79c4493af0c5377b59fe39d395e41042dd045bb"
|
||||||
|
@ -6245,14 +6205,6 @@ postcss@^7.0.0:
|
||||||
source-map "^0.6.1"
|
source-map "^0.6.1"
|
||||||
supports-color "^6.1.0"
|
supports-color "^6.1.0"
|
||||||
|
|
||||||
postcss@^7.0.5:
|
|
||||||
version "7.0.8"
|
|
||||||
resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.8.tgz#2a3c5f2bdd00240cd0d0901fd998347c93d36696"
|
|
||||||
dependencies:
|
|
||||||
chalk "^2.4.2"
|
|
||||||
source-map "^0.6.1"
|
|
||||||
supports-color "^6.0.0"
|
|
||||||
|
|
||||||
prelude-ls@~1.1.2:
|
prelude-ls@~1.1.2:
|
||||||
version "1.1.2"
|
version "1.1.2"
|
||||||
resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54"
|
resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54"
|
||||||
|
@ -6521,14 +6473,6 @@ readable-stream@1.1.x:
|
||||||
isarray "0.0.1"
|
isarray "0.0.1"
|
||||||
string_decoder "~0.10.x"
|
string_decoder "~0.10.x"
|
||||||
|
|
||||||
readable-stream@^3.0.6:
|
|
||||||
version "3.1.1"
|
|
||||||
resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.1.1.tgz#ed6bbc6c5ba58b090039ff18ce670515795aeb06"
|
|
||||||
dependencies:
|
|
||||||
inherits "^2.0.3"
|
|
||||||
string_decoder "^1.1.1"
|
|
||||||
util-deprecate "^1.0.1"
|
|
||||||
|
|
||||||
readdirp@^2.2.1:
|
readdirp@^2.2.1:
|
||||||
version "2.2.1"
|
version "2.2.1"
|
||||||
resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-2.2.1.tgz#0e87622a3325aa33e892285caf8b4e846529a525"
|
resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-2.2.1.tgz#0e87622a3325aa33e892285caf8b4e846529a525"
|
||||||
|
@ -6839,21 +6783,6 @@ samsam@1.x, samsam@^1.1.3:
|
||||||
version "1.3.0"
|
version "1.3.0"
|
||||||
resolved "https://registry.yarnpkg.com/samsam/-/samsam-1.3.0.tgz#8d1d9350e25622da30de3e44ba692b5221ab7c50"
|
resolved "https://registry.yarnpkg.com/samsam/-/samsam-1.3.0.tgz#8d1d9350e25622da30de3e44ba692b5221ab7c50"
|
||||||
|
|
||||||
sanitize-html@^1.13.0:
|
|
||||||
version "1.20.0"
|
|
||||||
resolved "https://registry.yarnpkg.com/sanitize-html/-/sanitize-html-1.20.0.tgz#9a602beb1c9faf960fb31f9890f61911cc4d9156"
|
|
||||||
dependencies:
|
|
||||||
chalk "^2.4.1"
|
|
||||||
htmlparser2 "^3.10.0"
|
|
||||||
lodash.clonedeep "^4.5.0"
|
|
||||||
lodash.escaperegexp "^4.1.2"
|
|
||||||
lodash.isplainobject "^4.0.6"
|
|
||||||
lodash.isstring "^4.0.1"
|
|
||||||
lodash.mergewith "^4.6.1"
|
|
||||||
postcss "^7.0.5"
|
|
||||||
srcset "^1.0.0"
|
|
||||||
xtend "^4.0.1"
|
|
||||||
|
|
||||||
"sass-loader@git://github.com/webpack-contrib/sass-loader":
|
"sass-loader@git://github.com/webpack-contrib/sass-loader":
|
||||||
version "7.1.0"
|
version "7.1.0"
|
||||||
resolved "git://github.com/webpack-contrib/sass-loader#e279f2a129eee0bd0b624b5acd498f23a81ee35e"
|
resolved "git://github.com/webpack-contrib/sass-loader#e279f2a129eee0bd0b624b5acd498f23a81ee35e"
|
||||||
|
@ -7225,13 +7154,6 @@ sprintf-js@~1.0.2:
|
||||||
version "1.0.3"
|
version "1.0.3"
|
||||||
resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c"
|
resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c"
|
||||||
|
|
||||||
srcset@^1.0.0:
|
|
||||||
version "1.0.0"
|
|
||||||
resolved "https://registry.yarnpkg.com/srcset/-/srcset-1.0.0.tgz#a5669de12b42f3b1d5e83ed03c71046fc48f41ef"
|
|
||||||
dependencies:
|
|
||||||
array-uniq "^1.0.2"
|
|
||||||
number-is-nan "^1.0.0"
|
|
||||||
|
|
||||||
sshpk@^1.7.0:
|
sshpk@^1.7.0:
|
||||||
version "1.16.0"
|
version "1.16.0"
|
||||||
resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.16.0.tgz#1d4963a2fbffe58050aa9084ca20be81741c07de"
|
resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.16.0.tgz#1d4963a2fbffe58050aa9084ca20be81741c07de"
|
||||||
|
@ -7331,7 +7253,7 @@ string-width@^3.0.0:
|
||||||
is-fullwidth-code-point "^2.0.0"
|
is-fullwidth-code-point "^2.0.0"
|
||||||
strip-ansi "^5.1.0"
|
strip-ansi "^5.1.0"
|
||||||
|
|
||||||
string_decoder@^1.0.0, string_decoder@^1.1.1:
|
string_decoder@^1.0.0:
|
||||||
version "1.2.0"
|
version "1.2.0"
|
||||||
resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.2.0.tgz#fe86e738b19544afe70469243b2a1ee9240eae8d"
|
resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.2.0.tgz#fe86e738b19544afe70469243b2a1ee9240eae8d"
|
||||||
dependencies:
|
dependencies:
|
||||||
|
@ -7415,7 +7337,7 @@ supports-color@^5.3.0, supports-color@^5.4.0:
|
||||||
dependencies:
|
dependencies:
|
||||||
has-flag "^3.0.0"
|
has-flag "^3.0.0"
|
||||||
|
|
||||||
supports-color@^6.0.0, supports-color@^6.1.0:
|
supports-color@^6.1.0:
|
||||||
version "6.1.0"
|
version "6.1.0"
|
||||||
resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-6.1.0.tgz#0764abc69c63d5ac842dd4867e8d025e880df8f3"
|
resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-6.1.0.tgz#0764abc69c63d5ac842dd4867e8d025e880df8f3"
|
||||||
dependencies:
|
dependencies:
|
||||||
|
@ -7780,7 +7702,7 @@ useragent@2.3.0:
|
||||||
lru-cache "4.1.x"
|
lru-cache "4.1.x"
|
||||||
tmp "0.0.x"
|
tmp "0.0.x"
|
||||||
|
|
||||||
util-deprecate@^1.0.1, util-deprecate@~1.0.1:
|
util-deprecate@~1.0.1:
|
||||||
version "1.0.2"
|
version "1.0.2"
|
||||||
resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"
|
resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"
|
||||||
|
|
||||||
|
@ -8015,10 +7937,6 @@ webpack@^4.0.0:
|
||||||
watchpack "^1.5.0"
|
watchpack "^1.5.0"
|
||||||
webpack-sources "^1.3.0"
|
webpack-sources "^1.3.0"
|
||||||
|
|
||||||
whatwg-fetch@^2.0.3:
|
|
||||||
version "2.0.4"
|
|
||||||
resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-2.0.4.tgz#dde6a5df315f9d39991aa17621853d720b85566f"
|
|
||||||
|
|
||||||
whet.extend@~0.9.9:
|
whet.extend@~0.9.9:
|
||||||
version "0.9.9"
|
version "0.9.9"
|
||||||
resolved "https://registry.yarnpkg.com/whet.extend/-/whet.extend-0.9.9.tgz#f877d5bf648c97e5aa542fadc16d6a259b9c11a1"
|
resolved "https://registry.yarnpkg.com/whet.extend/-/whet.extend-0.9.9.tgz#f877d5bf648c97e5aa542fadc16d6a259b9c11a1"
|
||||||
|
@ -8090,7 +8008,7 @@ xregexp@2.0.0:
|
||||||
version "2.0.0"
|
version "2.0.0"
|
||||||
resolved "https://registry.yarnpkg.com/xregexp/-/xregexp-2.0.0.tgz#52a63e56ca0b84a7f3a5f3d61872f126ad7a5943"
|
resolved "https://registry.yarnpkg.com/xregexp/-/xregexp-2.0.0.tgz#52a63e56ca0b84a7f3a5f3d61872f126ad7a5943"
|
||||||
|
|
||||||
xtend@^4.0.0, xtend@^4.0.1, xtend@~4.0.1:
|
xtend@^4.0.0, xtend@~4.0.1:
|
||||||
version "4.0.1"
|
version "4.0.1"
|
||||||
resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af"
|
resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af"
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue