diff --git a/mon-entreprise/package.json b/mon-entreprise/package.json index 840aa1240..86fc06463 100644 --- a/mon-entreprise/package.json +++ b/mon-entreprise/package.json @@ -25,18 +25,19 @@ }, "dependencies": { "@babel/runtime": "^7.3.4", + "@react-pdf/renderer": "^2.0.0-beta.6", "@rehooks/local-storage": "^2.1.1", "@sentry/browser": "5.15.5", "classnames": "^2.2.5", "color-convert": "^1.9.2", "core-js": "^3.2.1", + "focus-trap-react": "^3.1.2", "fuse.js": "5.2.1", "iframe-resizer": "^4.1.1", "js-yaml": "^3.13.1", "moo": "^0.5.0", "nearley": "^2.19.0", "publicodes": "^1.0.0-beta.4", - "focus-trap-react": "^3.1.2", "ramda": "^0.27.0", "react": "^16.13.1", "react-color": "^2.14.0", diff --git a/mon-entreprise/source/components/conversation/RuleInput.tsx b/mon-entreprise/source/components/conversation/RuleInput.tsx index df3f15adc..f4f17e961 100644 --- a/mon-entreprise/source/components/conversation/RuleInput.tsx +++ b/mon-entreprise/source/components/conversation/RuleInput.tsx @@ -39,13 +39,12 @@ export default function RuleInput({ isTarget = false, autoFocus = false, className, - onSubmit + onSubmit = () => null }: RuleInputProps) { const rule = rules[dottedName] const unit = rule.unit const language = useTranslation().i18n.language const engine = useContext(EngineContext) - const handleSubmit = onSubmit ?? (() => null) const commonProps = { key: dottedName, dottedName, @@ -62,7 +61,7 @@ export default function RuleInput({ return ( ) @@ -79,7 +78,7 @@ export default function RuleInput({ ) @@ -100,7 +99,7 @@ export default function RuleInput({ { value: 'non', label: 'Non' }, { value: 'oui', label: 'Oui' } ]} - onSubmit={handleSubmit} + onSubmit={onSubmit} /> ) } @@ -132,7 +131,7 @@ export default function RuleInput({ return } - return + return } const getVariant = (rule: ParsedRule) => diff --git a/mon-entreprise/source/components/conversation/select/SelectGeo.js b/mon-entreprise/source/components/conversation/select/SelectGeo.js index 1d835b6da..62425dc38 100644 --- a/mon-entreprise/source/components/conversation/select/SelectGeo.js +++ b/mon-entreprise/source/components/conversation/select/SelectGeo.js @@ -70,11 +70,13 @@ export default function Select({ onChange, onSubmit, value }) { setName(option.nom) }) } + const noResult = !isLoading && searchResults && searchResults.length === 0 return (
- {!isLoading && searchResults && searchResults.length === 0 && ( -

- Aucun résultat + {noResult && ( +

+ Cette commune n'existe pas

)} diff --git a/mon-entreprise/source/components/utils/index.tsx b/mon-entreprise/source/components/utils/index.tsx new file mode 100644 index 000000000..671701f99 --- /dev/null +++ b/mon-entreprise/source/components/utils/index.tsx @@ -0,0 +1,22 @@ +import { useEffect, useState } from 'react' + +export function useDebounce(value: T, delay: number) { + const [debouncedValue, setDebouncedValue] = useState(value) + useEffect( + () => { + // Update debounced value after delay + const handler = setTimeout(() => { + setDebouncedValue(value) + }, delay) + + // Cancel the timeout if value changes (also on delay change or unmount) + // This is how we prevent debounced value from updating if value is changed ... + // .. within the delay period. Timeout gets cleared and restarted. + return () => { + clearTimeout(handler) + } + }, + [value, delay] // Only re-call effect if value or delay changes + ) + return debouncedValue +} diff --git a/mon-entreprise/source/sites/mon-entreprise.fr/pages/Gérer/DétachementIndépendant/FormPDF.tsx b/mon-entreprise/source/sites/mon-entreprise.fr/pages/Gérer/DétachementIndépendant/FormPDF.tsx new file mode 100644 index 000000000..7b3c025fd --- /dev/null +++ b/mon-entreprise/source/sites/mon-entreprise.fr/pages/Gérer/DétachementIndépendant/FormPDF.tsx @@ -0,0 +1,140 @@ +import { + Document, + Page, + Text, + View, + StyleSheet, + Font, + PDFViewer, + PDFDownloadLink +} from '@react-pdf/renderer' +import React from 'react' +import robotoUrl from './Roboto-Regular.ttf' +import montserratUrl from './Montserrat-SemiBold.ttf' +import { formatValue } from 'publicodes' +import emoji from 'react-easy-emoji' + +// function FormPDFViewer({ fields, title, description }) { +// return ( +//
+// +// +// +//
+// ) +// } + +export default function FormPDFDownloadLink({ + fields, + title, + className, + description, + fileName, + children +}) { + return ( + + } + fileName={fileName} + className={className} + > + {({ blob, url, loading, error }) => children} + + ) + // } fileName="somename.pdf"> + // {({ blob, url, loading, error }) => (loading ? 'Loading document...' : 'Download now!')} + // +} + +function FormPDF({ fields, title, description }) { + return ( + + + + {title} + {description} + + {fields.map(field => ( + + {field.type === 'groupe' ? ( + {field.title} + ) : ( + <> + {field.question ?? field.title} + {field.nodeValue != null && ( + {formatValue(field)} + )} + + )} + + ))} + + + ) +} + +Font.register({ + family: 'Roboto', + src: robotoUrl +}) + +Font.register({ + family: 'Montserrat', + src: montserratUrl +}) +const styles = StyleSheet.create({ + body: { + paddingTop: 35, + color: '#18457B', + lineHeight: 1.5, + paddingBottom: 65, + paddingHorizontal: 35 + }, + title: { + fontSize: 20, + marginBottom: 20, + fontFamily: 'Montserrat' + }, + description: { + fontFamily: 'Roboto', + marginBottom: 12, + fontSize: 14 + }, + subtitle: { + paddingTop: 10, + fontFamily: 'Montserrat', + fontSize: 16 + }, + field: { + marginBottom: 12, + lineHeight: 1.2 + }, + name: { + fontSize: 11, + marginBottom: 4, + opacity: 0.7, + fontFamily: 'Roboto' + }, + value: { + fontSize: 14, + fontFamily: 'Roboto' + } +}) diff --git a/mon-entreprise/source/sites/mon-entreprise.fr/pages/Gérer/DétachementIndépendant/Montserrat-Bold.ttf b/mon-entreprise/source/sites/mon-entreprise.fr/pages/Gérer/DétachementIndépendant/Montserrat-Bold.ttf new file mode 100644 index 000000000..221819bca Binary files /dev/null and b/mon-entreprise/source/sites/mon-entreprise.fr/pages/Gérer/DétachementIndépendant/Montserrat-Bold.ttf differ diff --git a/mon-entreprise/source/sites/mon-entreprise.fr/pages/Gérer/DétachementIndépendant/Montserrat-Regular.ttf b/mon-entreprise/source/sites/mon-entreprise.fr/pages/Gérer/DétachementIndépendant/Montserrat-Regular.ttf new file mode 100644 index 000000000..8d443d5d5 Binary files /dev/null and b/mon-entreprise/source/sites/mon-entreprise.fr/pages/Gérer/DétachementIndépendant/Montserrat-Regular.ttf differ diff --git a/mon-entreprise/source/sites/mon-entreprise.fr/pages/Gérer/DétachementIndépendant/Montserrat-SemiBold.ttf b/mon-entreprise/source/sites/mon-entreprise.fr/pages/Gérer/DétachementIndépendant/Montserrat-SemiBold.ttf new file mode 100644 index 000000000..f8a43f2b2 Binary files /dev/null and b/mon-entreprise/source/sites/mon-entreprise.fr/pages/Gérer/DétachementIndépendant/Montserrat-SemiBold.ttf differ diff --git a/mon-entreprise/source/sites/mon-entreprise.fr/pages/Gérer/DétachementIndépendant/Roboto-Regular.ttf b/mon-entreprise/source/sites/mon-entreprise.fr/pages/Gérer/DétachementIndépendant/Roboto-Regular.ttf new file mode 100644 index 000000000..2b6392ffe Binary files /dev/null and b/mon-entreprise/source/sites/mon-entreprise.fr/pages/Gérer/DétachementIndépendant/Roboto-Regular.ttf differ diff --git a/mon-entreprise/source/sites/mon-entreprise.fr/pages/Gérer/DétachementIndépendant/formulaire-détachement.yaml b/mon-entreprise/source/sites/mon-entreprise.fr/pages/Gérer/DétachementIndépendant/formulaire-détachement.yaml index 7343e8a78..4979052af 100644 --- a/mon-entreprise/source/sites/mon-entreprise.fr/pages/Gérer/DétachementIndépendant/formulaire-détachement.yaml +++ b/mon-entreprise/source/sites/mon-entreprise.fr/pages/Gérer/DétachementIndépendant/formulaire-détachement.yaml @@ -1,11 +1,3 @@ -formulaire: - type: groupe - titre: Formulaire de demande de détachement pour les indépendant - description: >- - Vous exercez une activité non salariée ou salariée dans un ou plusieurs - Etats (pays) membres de l’UE, de l’EEE ou en Suisse. Remplissez ce - formulaire pour définir votre régime de Sécurité sociale applicable. - coordonnées assuré: titre: Vos coordonnées type: groupe @@ -22,10 +14,10 @@ coordonnées assuré . commune de naissance: API: géo coordonnées assuré . numéro de sécurité sociale: type: texte -coordonnées assuré . organisme de sécurité sociale: +coordonnées assuré . organisme urssaf: type: texte description: > - Nom et adresse de l’organisme de sécurite sociale dont vous relevez en france + Nom de l'organisme Urssaf dont vous relevez en france coordonnées assuré . domicile personnel: type: groupe @@ -90,14 +82,14 @@ demande . détachement . activité . nature: demande . détachement . activité . localisation: type: groupe formule: oui +demande . détachement . activité . localisation . pays: + type: texte demande . détachement . activité . localisation . adresse: type: texte demande . détachement . activité . localisation . code postal: type: texte demande . détachement . activité . localisation . commune: type: texte -demande . détachement . activité . localisation . pays: - type: texte demande . détachement . période: type: groupe formule: oui @@ -112,8 +104,8 @@ demande . activité transfrontalière simultanée: type: groupe formule: oui description: > - Vous actif en tant qu'indépendant en Belgique et travaillez - également dans un ou plusieurs autres Etats membres + Vous êtes actif en tant qu'indépendant en France et travaillez également + dans un ou plusieurs autres Etats membres de l'Espace Economique Européen demande . activité transfrontalière simultanée . indépendant hors France: question: > diff --git a/mon-entreprise/source/sites/mon-entreprise.fr/pages/Gérer/DétachementIndépendant/index.tsx b/mon-entreprise/source/sites/mon-entreprise.fr/pages/Gérer/DétachementIndépendant/index.tsx index dec8e0eca..8cd2f124a 100644 --- a/mon-entreprise/source/sites/mon-entreprise.fr/pages/Gérer/DétachementIndépendant/index.tsx +++ b/mon-entreprise/source/sites/mon-entreprise.fr/pages/Gérer/DétachementIndépendant/index.tsx @@ -1,89 +1,145 @@ -import React, { useState, useEffect, useMemo, useCallback } from 'react' -import Engine from 'publicodes' -import formulaire from './formulaire-détachement.yaml' import RuleInput from 'Components/conversation/RuleInput' import * as Animate from 'Components/ui/animate' -import { Explicable } from 'Components/conversation/Explicable' -import { Markdown } from 'Components/utils/markdown' -import { uniq } from 'ramda' import InfoBulle from 'Components/ui/InfoBulle' +import { Markdown } from 'Components/utils/markdown' +import Engine from 'publicodes' +import React, { useCallback, useState, Suspense } from 'react' +import formulaire from './formulaire-détachement.yaml' +import { usePersistingState } from 'Components/utils/persistState' +import { hash } from '../../../../../utils' +import Overlay from 'Components/Overlay' +import { useDebounce } from 'Components/utils' +import emoji from 'react-easy-emoji' export default function FormulaireDétachementIndépendant() { const engine = new Engine(formulaire) return ( <> +

Demande de mobilité en Europe pour travailleur indépendant

+

+ Vous exercez une activité non salariée ou salariée dans un ou plusieurs + Etats (pays) membres de l’UE, de l’EEE ou en Suisse. Remplissez ce + formulaire pour définir votre régime de Sécurité sociale applicable, et + envoyez la demande générée à l'adresse :{' '} + + relations.internationales@urssaf.fr + + . +

) } -const titleTags = ['h1'] +const useFields = (engine: Engine, fieldNames: Array) => { + const fields = fieldNames + .map(name => engine.evaluate(name)) + .filter(node => node.isApplicable !== false && node.isApplicable !== null) + return fields +} +const VERSION = hash(JSON.stringify(Object.keys(formulaire))) function FormulairePublicodes({ engine }) { - const [situation, setSituation] = useState({}) - engine.setSituation(situation) + const [situation, setSituation] = usePersistingState( + `formulaire-détachement:${VERSION}`, + {} + ) + const [renderPdf, setRenderPdf] = useState(false) const onChange = useCallback( - dottedName => value => - setSituation({ + (dottedName, value) => { + setSituation(situation => ({ ...situation, [dottedName]: value - }), - [setSituation, situation] + })) + setRenderPdf(false) + }, + [setSituation, setRenderPdf] + ) + engine.setSituation(situation) + const fields = useFields(engine, Object.keys(formulaire)) + const isMissingValues = fields.some( + ({ dottedName, type }) => + type !== 'groupe' && + (situation[dottedName] == null || situation[dottedName] === '') ) - const rules = engine.getParsedRules() return ( - {Object.entries(formulaire).map(([name, value]) => { - const rule = rules[name] - const node = engine.evaluate(name) - if (node.isApplicable === false || node.isApplicable === null) { - return - } - return ( - - {rule.type === 'groupe' ? ( - <> - {React.createElement( - `h${Math.min(name.split(' . ').length + 1, 6)}`, - {}, - rule.title - )} - {rule.description && } - - ) : ( - - )} - - ) - })} + + Générer la demande + ) } + +const LazyPDFDownloadLink = React.lazy(() => import('./FormPDF')) +function LazyPDFButton({ fields, className, disabled, children }) { + const fieldsDebounced = useDebounce(fields.slice(1), 1000) + const DisabledButton = ( + + ) + if (disabled) { + return DisabledButton + } + return ( + + + {children} + + + ) +} diff --git a/mon-entreprise/source/sites/publi.codes/Studio.tsx b/mon-entreprise/source/sites/publi.codes/Studio.tsx index d0d637820..34dff1e07 100644 --- a/mon-entreprise/source/sites/publi.codes/Studio.tsx +++ b/mon-entreprise/source/sites/publi.codes/Studio.tsx @@ -7,6 +7,7 @@ import MonacoEditor from 'react-monaco-editor' import { useHistory, useLocation, Redirect } from 'react-router-dom' import styled from 'styled-components' import yaml from 'yaml' +import { useDebounce } from 'Components/utils' const EXAMPLE_CODE = ` # Bienvenue dans le bac à sable du langage publicode ! @@ -26,26 +27,6 @@ dépenses primeur: - prix . avocat * 3 avocat ` -function useDebounce(value: T, delay: number) { - const [debouncedValue, setDebouncedValue] = useState(value) - useEffect( - () => { - // Update debounced value after delay - const handler = setTimeout(() => { - setDebouncedValue(value) - }, delay) - - // Cancel the timeout if value changes (also on delay change or unmount) - // This is how we prevent debounced value from updating if value is changed ... - // .. within the delay period. Timeout gets cleared and restarted. - return () => { - clearTimeout(handler) - } - }, - [value, delay] // Only re-call effect if value or delay changes - ) - return debouncedValue -} export default function Studio() { const { search, pathname } = useLocation() const initialValue = useMemo(() => { diff --git a/mon-entreprise/source/utils.ts b/mon-entreprise/source/utils.ts index e59bb0e8d..41230ed1f 100644 --- a/mon-entreprise/source/utils.ts +++ b/mon-entreprise/source/utils.ts @@ -78,3 +78,14 @@ export const currencyFormat = (language: string) => ({ thousandSeparator: formatValue(1000, { language }).charAt(1), decimalSeparator: formatValue(0.1, { language }).charAt(1) }) + +export function hash(str: string): number { + let hash = 0 + let chr + for (let i = 0; i < str.length; i++) { + chr = str.charCodeAt(i) + hash = (hash << 5) - hash + chr + hash |= 0 // Convert to 32bit integer + } + return hash +} diff --git a/publicodes/source/format.ts b/publicodes/source/format.ts index 6ebfb7735..7fe7ba738 100644 --- a/publicodes/source/format.ts +++ b/publicodes/source/format.ts @@ -108,7 +108,12 @@ type Options = { } export function formatValue( - value: number | { nodeValue: Evaluation; unit?: Unit } | undefined, + value: + | number + | { nodeValue: Evaluation; unit?: Unit } + | { nodeValue: { nom: string; code: string }; API: 'géo' } + | undefined, + { language = 'fr', displayedUnit, precision = 2 }: Options = {} ) { const nodeValue = @@ -132,6 +137,8 @@ export function formatValue( } return typeof nodeValue === 'string' ? capitalise0(nodeValue) + : typeof value === 'object' && 'API' in value && value.API === 'géo' + ? `${(nodeValue as any).nom} (${(nodeValue as any).code})` : typeof nodeValue === 'object' ? (nodeValue as any).nom : typeof nodeValue === 'boolean' diff --git a/yarn.lock b/yarn.lock index eedf64b8d..2a7a3306f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -840,6 +840,13 @@ dependencies: regenerator-runtime "^0.13.4" +"@babel/runtime@^7.4.3", "@babel/runtime@^7.6.2": + version "7.10.2" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.10.2.tgz#d103f21f2602497d38348a32e008637d506db839" + integrity sha512-6sF3uQw2ivImfVIl62RZ7MXhO2tap69WeWK57vAaimT6AZbE4FbqjdEJIN1UqoD6wI6B+1n9UiagafH1sxjOtg== + dependencies: + regenerator-runtime "^0.13.4" + "@babel/template@^7.4.0", "@babel/template@^7.8.3", "@babel/template@^7.8.6": version "7.8.6" resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.8.6.tgz#86b22af15f828dfb086474f964dcc3e39c43ce2b" @@ -1160,6 +1167,80 @@ promise-limit "^2.5.0" puppeteer "^1.7.0" +"@react-pdf/fontkit@^1.11.0", "@react-pdf/fontkit@^1.13.0": + version "1.13.0" + resolved "https://registry.yarnpkg.com/@react-pdf/fontkit/-/fontkit-1.13.0.tgz#ec14cc61120e814c1d48cf276771684ec615be9e" + integrity sha512-g4rxtkSkEbIwDoqZc6ZM2yHq/imqmgGXQuMDnrkM2yI9TpTGhQfJGnz9IrCadrRgOrEx9orxRuTALOxzAce7Kg== + dependencies: + "@react-pdf/unicode-properties" "^2.2.0" + brotli "^1.2.0" + clone "^1.0.1" + deep-equal "^1.0.0" + dfa "^1.0.0" + restructure "^0.5.3" + tiny-inflate "^1.0.2" + unicode-trie "^0.3.0" + +"@react-pdf/pdfkit@^1.4.2": + version "1.5.0" + resolved "https://registry.yarnpkg.com/@react-pdf/pdfkit/-/pdfkit-1.5.0.tgz#f51502e899ba8559b0ee91b292a5f54520c9de39" + integrity sha512-f7Xo5ePW3orEXjIsmH9QsCqxSN3wA8LnBBI0fdxfbkWX25PjM4qypdR1sQghECqbBFfdtPlcG0rJEhGJbA8WHg== + dependencies: + "@react-pdf/fontkit" "^1.11.0" + "@react-pdf/png-js" "^1.0.0" + lz-string "^1.4.4" + +"@react-pdf/png-js@^1.0.0": + version "1.0.0" + resolved "https://registry.yarnpkg.com/@react-pdf/png-js/-/png-js-1.0.0.tgz#00fcb969dca4ce82a0a7673413ade039e47b361e" + integrity sha1-APy5adykzoKgp2c0E63gOeR7Nh4= + +"@react-pdf/renderer@^2.0.0-beta.6": + version "2.0.0-beta.6" + resolved "https://registry.yarnpkg.com/@react-pdf/renderer/-/renderer-2.0.0-beta.6.tgz#7d6d63ae69a6e54bb95968f6e7732e7fd843c456" + integrity sha512-kxToDcGwzHb0WrcTJFjaG5mMhvYAIOu527zwHcohV+cnY16rL41h3ky3m6NmmSMvZWB/qmcfJd73L3+G0KIR4A== + dependencies: + "@babel/runtime" "^7.6.2" + "@react-pdf/fontkit" "^1.13.0" + "@react-pdf/pdfkit" "^1.4.2" + "@react-pdf/png-js" "^1.0.0" + "@react-pdf/textkit" "^0.3.7" + abs-svg-path "^0.1.1" + blob-stream "^0.1.3" + color-string "^1.5.3" + cross-fetch "^3.0.4" + emoji-regex "^8.0.0" + hsl-to-hex "^1.0.0" + is-url "^1.2.4" + media-engine "^1.0.3" + normalize-svg-path "^1.0.1" + parse-svg-path "^0.1.2" + queue "^6.0.1" + ramda "^0.26.1" + react-reconciler "^0.23.0" + scheduler "^0.15.0" + svg-arc-to-cubic-bezier "^3.2.0" + svgpath "^2.2.2" + yoga-layout-prebuilt "^1.9.3" + +"@react-pdf/textkit@^0.3.7": + version "0.3.7" + resolved "https://registry.yarnpkg.com/@react-pdf/textkit/-/textkit-0.3.7.tgz#67bcc4d952ad1cd738b3cb38c8396219450f536b" + integrity sha512-JyK06VofTG4/6Mxv9ugqGyKS/nnbg7MXXHmzeYLP+wwxZsgiatjybVBSXI+DW+++UeyUKLrCYQh2RaxliRm+NQ== + dependencies: + "@babel/runtime" "^7.4.3" + "@react-pdf/unicode-properties" "^2.2.0" + babel-runtime "^6.26.0" + hyphen "^1.1.1" + ramda "^0.26.1" + +"@react-pdf/unicode-properties@^2.2.0": + version "2.2.0" + resolved "https://registry.yarnpkg.com/@react-pdf/unicode-properties/-/unicode-properties-2.2.0.tgz#f109eaac244ceb108011d4038cee4cc787cb40f3" + integrity sha1-8QnqrCRM6xCAEdQDjO5Mx4fLQPM= + dependencies: + unicode-trie "^0.3.0" + "@rehooks/local-storage@^2.1.1": version "2.4.0" resolved "https://registry.yarnpkg.com/@rehooks/local-storage/-/local-storage-2.4.0.tgz#fb884b2b657cad5f77aa6ab60bb3532f0e0725d2" @@ -1596,6 +1677,11 @@ dependencies: "@types/yargs-parser" "*" +"@types/yoga-layout@1.9.2": + version "1.9.2" + resolved "https://registry.yarnpkg.com/@types/yoga-layout/-/yoga-layout-1.9.2.tgz#efaf9e991a7390dc081a0b679185979a83a9639a" + integrity sha512-S9q47ByT2pPvD65IvrWp7qppVMpk9WGMbVq9wbWZOHg6tnXSD4vyhao6nOSBwwfDdV2p3Kx9evA9vI+XWTfDvw== + "@typescript-eslint/eslint-plugin@^2.31.0": version "2.31.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-2.31.0.tgz#942c921fec5e200b79593c71fafb1e3f57aa2e36" @@ -1804,6 +1890,11 @@ abab@^2.0.0: resolved "https://registry.yarnpkg.com/abab/-/abab-2.0.3.tgz#623e2075e02eb2d3f2475e49f99c91846467907a" integrity sha512-tsFzPpcttalNjFBCFMqsKYQcWxxen1pgJR56by//QwvJc4/OUS3kPOOttx2tSIfjsylB0pYu7f5D3K1RCxUnUg== +abs-svg-path@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/abs-svg-path/-/abs-svg-path-0.1.1.tgz#df601c8e8d2ba10d4a76d625e236a9a39c2723bf" + integrity sha1-32Acjo0roQ1KdtYl4japo5wnI78= + accepts@~1.3.5, accepts@~1.3.7: version "1.3.7" resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.7.tgz#531bc726517a3b2b41f850021c6cc15eaab507cd" @@ -1916,6 +2007,11 @@ alphanum-sort@^1.0.1, alphanum-sort@^1.0.2: resolved "https://registry.yarnpkg.com/alphanum-sort/-/alphanum-sort-1.0.2.tgz#97a1119649b211ad33691d9f9f486a8ec9fbe0a3" integrity sha1-l6ERlkmyEa0zaR2fn0hqjsn74KM= +amdefine@>=0.0.4: + version "1.0.1" + resolved "https://registry.yarnpkg.com/amdefine/-/amdefine-1.0.1.tgz#4a5282ac164729e93619bcfd3ad151f817ce91f5" + integrity sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU= + ansi-align@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/ansi-align/-/ansi-align-2.0.0.tgz#c36aeccba563b89ceb556f3690f0b1d9e3547f7f" @@ -2151,11 +2247,25 @@ assign-symbols@^1.0.0: resolved "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367" integrity sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c= +ast-transform@0.0.0: + version "0.0.0" + resolved "https://registry.yarnpkg.com/ast-transform/-/ast-transform-0.0.0.tgz#74944058887d8283e189d954600947bc98fe0062" + integrity sha1-dJRAWIh9goPhidlUYAlHvJj+AGI= + dependencies: + escodegen "~1.2.0" + esprima "~1.0.4" + through "~2.3.4" + ast-types@0.9.6: version "0.9.6" resolved "https://registry.yarnpkg.com/ast-types/-/ast-types-0.9.6.tgz#102c9e9e9005d3e7e3829bf0c4fa24ee862ee9b9" integrity sha1-ECyenpAF0+fjgpvwxPok7oYu6bk= +ast-types@^0.7.0: + version "0.7.8" + resolved "https://registry.yarnpkg.com/ast-types/-/ast-types-0.7.8.tgz#902d2e0d60d071bdcd46dc115e1809ed11c138a9" + integrity sha1-kC0uDWDQcb3NRtwRXhgJ7RHBOKk= + astral-regex@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-1.0.0.tgz#6c8c3fb827dd43ee3918f27b82782ab7658a6fd9" @@ -2435,7 +2545,7 @@ balanced-match@^1.0.0: resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" integrity sha1-ibTRmasr7kneFk6gK4nORi1xt2c= -base64-js@^1.0.2: +base64-js@^1.0.2, base64-js@^1.1.2: version "1.3.1" resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.3.1.tgz#58ece8cb75dd07e71ed08c736abc5fac4dbf8df1" integrity sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g== @@ -2501,6 +2611,18 @@ bl@^4.0.1: inherits "^2.0.4" readable-stream "^3.4.0" +blob-stream@^0.1.3: + version "0.1.3" + resolved "https://registry.yarnpkg.com/blob-stream/-/blob-stream-0.1.3.tgz#98d668af6996e0f32ef666d06e215ccc7d77686c" + integrity sha1-mNZor2mW4PMu9mbQbiFczH13aGw= + dependencies: + blob "0.0.4" + +blob@0.0.4: + version "0.0.4" + resolved "https://registry.yarnpkg.com/blob/-/blob-0.0.4.tgz#bcf13052ca54463f30f9fc7e95b9a47630a94921" + integrity sha1-vPEwUspURj8w+fx+lbmkdjCpSSE= + bluebird@3.5.0: version "3.5.0" resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.0.tgz#791420d7f551eea2897453a8a77653f96606d67c" @@ -2602,12 +2724,19 @@ brotli-size@0.1.0: duplexer "^0.1.1" iltorb "^2.4.3" +brotli@^1.2.0: + version "1.3.2" + resolved "https://registry.yarnpkg.com/brotli/-/brotli-1.3.2.tgz#525a9cad4fcba96475d7d388f6aecb13eed52f46" + integrity sha1-UlqcrU/LqWR119OI9q7LE+7VL0Y= + dependencies: + base64-js "^1.1.2" + browser-process-hrtime@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz#3c9b4b7d782c8121e56f10106d84c0d0ffc94626" integrity sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow== -browser-resolve@^1.11.3: +browser-resolve@^1.11.3, browser-resolve@^1.8.1: version "1.11.3" resolved "https://registry.yarnpkg.com/browser-resolve/-/browser-resolve-1.11.3.tgz#9b7cbb3d0f510e4cb86bdbd796124d28b5890af6" integrity sha512-exDi1BYWB/6raKHmDTCicQfTkqwN5fioMFV4j8BsfMU4R2DK/QfZfK7kOVkmWCNANf0snkBzqGqAJBao9gZMdQ== @@ -2650,6 +2779,15 @@ browserify-des@^1.0.0: inherits "^2.0.1" safe-buffer "^5.1.2" +browserify-optional@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/browserify-optional/-/browserify-optional-1.0.1.tgz#1e13722cfde0d85f121676c2a72ced533a018869" + integrity sha1-HhNyLP3g2F8SFnbCpyztUzoBiGk= + dependencies: + ast-transform "0.0.0" + ast-types "^0.7.0" + browser-resolve "^1.8.1" + browserify-rsa@^4.0.0, browserify-rsa@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/browserify-rsa/-/browserify-rsa-4.0.1.tgz#21e0abfaf6f2029cf2fafb133567a701d4135524" @@ -3216,7 +3354,7 @@ clone-stats@^1.0.0: resolved "https://registry.yarnpkg.com/clone-stats/-/clone-stats-1.0.0.tgz#b3782dff8bb5474e18b9b6bf0fdfe782f8777680" integrity sha1-s3gt/4u1R04Yuba/D9/ngvh3doA= -clone@^1.0.0, clone@^1.0.2: +clone@^1.0.0, clone@^1.0.1, clone@^1.0.2: version "1.0.4" resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.4.tgz#da309cc263df15994c688ca902179ca3c7cd7c7e" integrity sha1-2jCcwmPfFZlMaIypAheco8fNfH4= @@ -3296,6 +3434,14 @@ color-string@^0.3.0: dependencies: color-name "^1.0.0" +color-string@^1.5.3: + version "1.5.3" + resolved "https://registry.yarnpkg.com/color-string/-/color-string-1.5.3.tgz#c9bbc5f01b58b5492f3d6857459cb6590ce204cc" + integrity sha512-dC2C5qeWoYkxki5UAXapdjqO672AM4vZuPGRQfO8b5HKuKGBbKWpITyDYN7TOFKvRW7kOgAn3746clDBMDJyQw== + dependencies: + color-name "^1.0.0" + simple-swizzle "^0.2.2" + color@^0.11.0: version "0.11.4" resolved "https://registry.yarnpkg.com/color/-/color-0.11.4.tgz#6d7b5c74fb65e841cd48792ad1ed5e07b904d764" @@ -3593,6 +3739,13 @@ create-hmac@^1.1.0, create-hmac@^1.1.4, create-hmac@^1.1.7: safe-buffer "^5.0.1" sha.js "^2.4.8" +cross-fetch@^3.0.4: + version "3.0.5" + resolved "https://registry.yarnpkg.com/cross-fetch/-/cross-fetch-3.0.5.tgz#2739d2981892e7ab488a7ad03b92df2816e03f4c" + integrity sha512-FFLcLtraisj5eteosnX1gf01qYDCOc4fDy0+euOt8Kn9YBY2NtXL/pCoYPavw24NIQkQqm5ZOLsGD5Zzj0gyew== + dependencies: + node-fetch "2.6.0" + cross-spawn@6.0.5, cross-spawn@^6.0.0, cross-spawn@^6.0.5: version "6.0.5" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4" @@ -3964,6 +4117,18 @@ deep-eql@^3.0.1: dependencies: type-detect "^4.0.0" +deep-equal@^1.0.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-1.1.1.tgz#b5c98c942ceffaf7cb051e24e1434a25a2e6076a" + integrity sha512-yd9c5AdiqVcR+JjcwUQb9DkhJc8ngNr0MahEBGvDiJw8puWab2yZlh+nkasOnZP+EGTAP6rRp2JzJhJZzvNF8g== + dependencies: + is-arguments "^1.0.4" + is-date-object "^1.0.1" + is-regex "^1.0.4" + object-is "^1.0.1" + object-keys "^1.1.1" + regexp.prototype.flags "^1.2.0" + deep-extend@^0.6.0: version "0.6.0" resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac" @@ -4056,6 +4221,11 @@ detect-newline@^2.1.0: resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-2.1.0.tgz#f41f1c10be4b00e87b5f13da680759f2c5bfd3e2" integrity sha1-9B8cEL5LAOh7XxPaaAdZ8sW/0+I= +dfa@^1.0.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/dfa/-/dfa-1.2.0.tgz#96ac3204e2d29c49ea5b57af8d92c2ae12790657" + integrity sha512-ED3jP8saaweFTjeGX8HQPjeC1YYyZs98jGNZx6IiBvxW7JG5v492kamAQB3m2wop07CvU/RQmzcKr6bgcC5D/Q== + diff-sequences@^24.9.0: version "24.9.0" resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-24.9.0.tgz#5715d6244e2aa65f48bba0bc972db0b0b11e95b5" @@ -4485,6 +4655,17 @@ escodegen@^1.11.0, escodegen@^1.9.1: optionalDependencies: source-map "~0.6.1" +escodegen@~1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.2.0.tgz#09de7967791cc958b7f89a2ddb6d23451af327e1" + integrity sha1-Cd55Z3kcyVi3+Jot220jRRrzJ+E= + dependencies: + esprima "~1.0.4" + estraverse "~1.5.0" + esutils "~1.0.0" + optionalDependencies: + source-map "~0.1.30" + eslint-config-prettier@^4.0.0: version "4.3.0" resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-4.3.0.tgz#c55c1fcac8ce4518aeb77906984e134d9eb5a4f0" @@ -4612,6 +4793,11 @@ esprima@^4.0.0, esprima@^4.0.1: resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== +esprima@~1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/esprima/-/esprima-1.0.4.tgz#9f557e08fc3b4d26ece9dd34f8fbf476b62585ad" + integrity sha1-n1V+CPw7TSbs6d00+Pv0drYlha0= + esprima@~3.1.0: version "3.1.3" resolved "https://registry.yarnpkg.com/esprima/-/esprima-3.1.3.tgz#fdca51cee6133895e3c88d535ce49dbff62a4633" @@ -4641,11 +4827,21 @@ estraverse@^5.1.0: resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.1.0.tgz#374309d39fd935ae500e7b92e8a6b4c720e59642" integrity sha512-FyohXK+R0vE+y1nHLoBM7ZTyqRpqAlhdZHCWIWEviFLiGB8b04H6bQs8G+XTthacvT8VuwvteiP7RJSxMs8UEw== +estraverse@~1.5.0: + version "1.5.1" + resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-1.5.1.tgz#867a3e8e58a9f84618afb6c2ddbcd916b7cbaf71" + integrity sha1-hno+jlip+EYYr7bC3bzZFrfLr3E= + esutils@^2.0.2: version "2.0.3" resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== +esutils@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/esutils/-/esutils-1.0.0.tgz#8151d358e20c8acc7fb745e7472c0025fe496570" + integrity sha1-gVHTWOIMisx/t0XnRywAJf5JZXA= + etag@~1.8.1: version "1.8.1" resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" @@ -5746,6 +5942,18 @@ hosted-git-info@^2.1.4: resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.8.tgz#7539bd4bc1e0e0a895815a2e0262420b12858488" integrity sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg== +hsl-to-hex@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/hsl-to-hex/-/hsl-to-hex-1.0.0.tgz#c58c826dc6d2f1e0a5ff1da5a7ecbf03faac1352" + integrity sha1-xYyCbcbS8eCl/x2lp+y/A/qsE1I= + dependencies: + hsl-to-rgb-for-reals "^1.1.0" + +hsl-to-rgb-for-reals@^1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/hsl-to-rgb-for-reals/-/hsl-to-rgb-for-reals-1.1.1.tgz#e1eb23f6b78016e3722431df68197e6dcdc016d9" + integrity sha512-LgOWAkrN0rFaQpfdWBQlv/VhkOxb5AsBjk6NQVx4yEzWS923T07X0M1Y0VNko2H52HeSpZrZNNMJ0aFqsdVzQg== + html-comment-regex@^1.1.0: version "1.1.2" resolved "https://registry.yarnpkg.com/html-comment-regex/-/html-comment-regex-1.1.2.tgz#97d4688aeb5c81886a364faa0cad1dda14d433a7" @@ -5928,6 +6136,11 @@ https-proxy-agent@^2.2.1: agent-base "^4.3.0" debug "^3.1.0" +hyphen@^1.1.1: + version "1.6.2" + resolved "https://registry.yarnpkg.com/hyphen/-/hyphen-1.6.2.tgz#321d794d92b778f39cb5db740a575c092463978c" + integrity sha512-WcyRGy0kB+QcSlgV9ovP4UQ7E+LpDCv7q9gziO2Q2eqpJ4AtHVfVhNXxlW0EBKgUMmcEHecQKy9AWdm2EavW1Q== + i18next-parser@^1.0.6: version "1.0.6" resolved "https://registry.yarnpkg.com/i18next-parser/-/i18next-parser-1.0.6.tgz#520575d6560b716b83fbbd32a2b6df500c97f134" @@ -6210,11 +6423,21 @@ is-alphanumerical@^1.0.0: is-alphabetical "^1.0.0" is-decimal "^1.0.0" +is-arguments@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/is-arguments/-/is-arguments-1.0.4.tgz#3faf966c7cba0ff437fb31f6250082fcf0448cf3" + integrity sha512-xPh0Rmt8NE65sNzvyUmWgI1tz3mKq74lGA0mL8LYZcoIzKOzDh6HmrYm3d18k60nHerC8A9Km8kYu87zfSFnLA== + is-arrayish@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" integrity sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0= +is-arrayish@^0.3.1: + version "0.3.2" + resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.3.2.tgz#4574a2ae56f7ab206896fb431eaeed066fdf8f03" + integrity sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ== + is-binary-path@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-1.0.1.tgz#75f16642b480f187a711c814161fd3a4a7655898" @@ -6480,6 +6703,11 @@ is-unc-path@^1.0.0: dependencies: unc-path-regex "^0.1.2" +is-url@^1.2.4: + version "1.2.4" + resolved "https://registry.yarnpkg.com/is-url/-/is-url-1.2.4.tgz#04a4df46d28c4cff3d73d01ff06abeb318a1aa52" + integrity sha512-ITvGim8FhRiYe4IQ5uHSkj7pVaPDrCTkNd3yq3cV7iZAcJdHTUMPMEHcqSOy9xZ9qFenQCvi+2wjH9a1nXqHww== + is-utf8@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72" @@ -7567,6 +7795,11 @@ lru-cache@^5.1.1: dependencies: yallist "^3.0.2" +lz-string@^1.4.4: + version "1.4.4" + resolved "https://registry.yarnpkg.com/lz-string/-/lz-string-1.4.4.tgz#c0d8eaf36059f705796e1e344811cf4c498d3a26" + integrity sha1-wNjq82BZ9wV5bh40SBHPTEmNOiY= + make-dir@^1.0.0: version "1.3.0" resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-1.3.0.tgz#79c1033b80515bd6d24ec9933e860ca75ee27f0c" @@ -7646,6 +7879,11 @@ mdast-add-list-metadata@1.0.1: dependencies: unist-util-visit-parents "1.1.2" +media-engine@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/media-engine/-/media-engine-1.0.3.tgz#be3188f6cd243ea2a40804a35de5a5b032f58dad" + integrity sha1-vjGI9s0kPqKkCASjXeWlsDL1ja0= + media-typer@0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" @@ -8119,6 +8357,11 @@ node-abi@^2.7.0: dependencies: semver "^5.4.1" +node-fetch@2.6.0: + version "2.6.0" + resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.0.tgz#e633456386d4aa55863f676a7ab0daa8fdecb0fd" + integrity sha512-8dG4H5ujfvFiqDmVu9fQ5bOHUC15JMjMY/Zumv26oOvvVJjM67KF8koCWIabKQ1GJIa9r2mMZscBq/TbdOcmNA== + node-fetch@^1.0.1: version "1.7.3" resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-1.7.3.tgz#980f6f72d85211a5347c6b2bc18c5b84c3eb47ef" @@ -8219,6 +8462,13 @@ normalize-range@^0.1.2: resolved "https://registry.yarnpkg.com/normalize-range/-/normalize-range-0.1.2.tgz#2d10c06bdfd312ea9777695a4d28439456b75942" integrity sha1-LRDAa9/TEuqXd2laTShDlFa3WUI= +normalize-svg-path@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/normalize-svg-path/-/normalize-svg-path-1.0.1.tgz#6f729ad6b70bb4ca4eff2fe4b107489efe1d56fe" + integrity sha1-b3Ka1rcLtMpO/y/ksQdInv4dVv4= + dependencies: + svg-arc-to-cubic-bezier "^3.0.0" + normalize-url@^1.4.0: version "1.9.1" resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-1.9.1.tgz#2cc0d66b31ea23036458436e3620d85954c66c3c" @@ -8560,6 +8810,11 @@ p-try@^2.0.0: resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== +pako@^0.2.5: + version "0.2.9" + resolved "https://registry.yarnpkg.com/pako/-/pako-0.2.9.tgz#f3f7522f4ef782348da8161bad9ecfd51bf83a75" + integrity sha1-8/dSL073gjSNqBYbrZ7P1Rv4OnU= + pako@~1.0.5: version "1.0.11" resolved "https://registry.yarnpkg.com/pako/-/pako-1.0.11.tgz#6c9599d340d54dfd3946380252a35705a6b992bf" @@ -8640,6 +8895,11 @@ parse-passwd@^1.0.0: resolved "https://registry.yarnpkg.com/parse-passwd/-/parse-passwd-1.0.0.tgz#6d5b934a456993b23d37f40a382d6f1666a8e5c6" integrity sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY= +parse-svg-path@^0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/parse-svg-path/-/parse-svg-path-0.1.2.tgz#7a7ec0d1eb06fa5325c7d3e009b859a09b5d49eb" + integrity sha1-en7A0esG+lMlx9PgCbhZoJtdSes= + parse5@4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/parse5/-/parse5-4.0.0.tgz#6d78656e3da8d78b4ec0b906f7c08ef1dfe3f608" @@ -9433,6 +9693,13 @@ querystring@0.2.0, querystring@^0.2.0: resolved "https://registry.yarnpkg.com/querystring/-/querystring-0.2.0.tgz#b209849203bb25df820da756e747005878521620" integrity sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA= +queue@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/queue/-/queue-6.0.1.tgz#abd5a5b0376912f070a25729e0b6a7d565683791" + integrity sha512-AJBQabRCCNr9ANq8v77RJEv73DPbn55cdTb+Giq4X0AVnNVZvMHlYp7XlQiN+1npCZj1DuSmaA2hYVUUDgxFDg== + dependencies: + inherits "~2.0.3" + quick-temp@^0.1.3: version "0.1.8" resolved "https://registry.yarnpkg.com/quick-temp/-/quick-temp-0.1.8.tgz#bab02a242ab8fb0dd758a3c9776b32f9a5d94408" @@ -9464,7 +9731,7 @@ ramda@^0.25.0: resolved "https://registry.yarnpkg.com/ramda/-/ramda-0.25.0.tgz#8fdf68231cffa90bc2f9460390a0cb74a29b29a9" integrity sha512-GXpfrYVPwx3K7RQ6aYT8KPS8XViSXUVJT1ONhoKPE9VAleW42YE+U+8VEyGWt41EnEQW7gwecYJriTI0pKoecQ== -ramda@^0.26: +ramda@^0.26, ramda@^0.26.1: version "0.26.1" resolved "https://registry.yarnpkg.com/ramda/-/ramda-0.26.1.tgz#8d41351eb8111c55353617fc3bbffad8e4d35d06" integrity sha512-hLWjpy7EnsDBb0p+Z3B7rPi3GDeRG5ZtiI33kJhTt+ORCd38AbAIjB/9zRIUoeTbE/AVX5ZkU7m6bznsvrf8eQ== @@ -9651,6 +9918,16 @@ react-number-format@^4.3.1: dependencies: prop-types "^15.7.2" +react-reconciler@^0.23.0: + version "0.23.0" + resolved "https://registry.yarnpkg.com/react-reconciler/-/react-reconciler-0.23.0.tgz#5f0bfc35dda030b0220c07de11f93131c5d6db63" + integrity sha512-vV0KlLimP9a/NuRcM6GRVakkmT6MKSzhfo8K72fjHMnlXMOhz9GlPe+/tCp5CWBkg+lsMUt/CR1nypJBTPfwuw== + dependencies: + loose-envify "^1.1.0" + object-assign "^4.1.1" + prop-types "^15.6.2" + scheduler "^0.17.0" + react-redux@^7.0.3: version "7.2.0" resolved "https://registry.yarnpkg.com/react-redux/-/react-redux-7.2.0.tgz#f970f62192b3981642fec46fd0db18a074fe879d" @@ -9967,7 +10244,7 @@ regex-not@^1.0.0, regex-not@^1.0.2: extend-shallow "^3.0.2" safe-regex "^1.1.0" -regexp.prototype.flags@^1.3.0: +regexp.prototype.flags@^1.2.0, regexp.prototype.flags@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.3.0.tgz#7aba89b3c13a64509dabcf3ca8d9fbb9bdf5cb75" integrity sha512-2+Q0C5g951OlYlJz6yu5/M33IcsESLlLfsyIaLJaG4FA2r4yP8MvVMJUUP/fVBkSpbbbZlS5gynbEWLipiiXiQ== @@ -10285,6 +10562,13 @@ restore-cursor@^3.1.0: onetime "^5.1.0" signal-exit "^3.0.2" +restructure@^0.5.3: + version "0.5.4" + resolved "https://registry.yarnpkg.com/restructure/-/restructure-0.5.4.tgz#f54e7dd563590fb34fd6bf55876109aeccb28de8" + integrity sha1-9U591WNZD7NP1r9Vh2EJrsyyjeg= + dependencies: + browserify-optional "^1.0.0" + ret@~0.1.10: version "0.1.15" resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc" @@ -10422,6 +10706,22 @@ saxes@^3.1.3: dependencies: xmlchars "^2.1.1" +scheduler@^0.15.0: + version "0.15.0" + resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.15.0.tgz#6bfcf80ff850b280fed4aeecc6513bc0b4f17f8e" + integrity sha512-xAefmSfN6jqAa7Kuq7LIJY0bwAPG3xlCj0HMEBQk1lxYiDKZscY2xJ5U/61ZTrYbmNQbXa+gc7czPkVo11tnCg== + dependencies: + loose-envify "^1.1.0" + object-assign "^4.1.1" + +scheduler@^0.17.0: + version "0.17.0" + resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.17.0.tgz#7c9c673e4ec781fac853927916d1c426b6f3ddfe" + integrity sha512-7rro8Io3tnCPuY4la/NuI5F2yfESpnfZyT6TtkXnSWVkcu0BCDJ+8gk5ozUaFaxpIyNuWAPXrH0yFcSi28fnDA== + dependencies: + loose-envify "^1.1.0" + object-assign "^4.1.1" + scheduler@^0.19.0, scheduler@^0.19.1: version "0.19.1" resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.19.1.tgz#4f3e2ed2c1a7d65681f4c854fa8c5a1ccb40f196" @@ -10641,6 +10941,13 @@ simple-get@^3.0.3: once "^1.3.1" simple-concat "^1.0.0" +simple-swizzle@^0.2.2: + version "0.2.2" + resolved "https://registry.yarnpkg.com/simple-swizzle/-/simple-swizzle-0.2.2.tgz#a4da6b635ffcccca33f70d17cb92592de95e557a" + integrity sha1-pNprY1/8zMoz9w0Xy5JZLeleVXo= + dependencies: + is-arrayish "^0.3.1" + sinon-chai@^3.0.0: version "3.5.0" resolved "https://registry.yarnpkg.com/sinon-chai/-/sinon-chai-3.5.0.tgz#c9a78304b0e15befe57ef68e8a85a00553f5c60e" @@ -10769,6 +11076,13 @@ source-map@^0.7.3: resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.7.3.tgz#5302f8169031735226544092e64981f751750383" integrity sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ== +source-map@~0.1.30: + version "0.1.43" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.1.43.tgz#c24bc146ca517c1471f5dacbe2571b2b7f9e3346" + integrity sha1-wkvBRspRfBRx9drL4lcbK3+eM0Y= + dependencies: + amdefine ">=0.0.4" + space-separated-tokens@^1.0.0: version "1.1.5" resolved "https://registry.yarnpkg.com/space-separated-tokens/-/space-separated-tokens-1.1.5.tgz#85f32c3d10d9682007e917414ddc5c26d1aa6899" @@ -11180,6 +11494,11 @@ supports-color@^7.0.0, supports-color@^7.1.0: dependencies: has-flag "^4.0.0" +svg-arc-to-cubic-bezier@^3.0.0, svg-arc-to-cubic-bezier@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/svg-arc-to-cubic-bezier/-/svg-arc-to-cubic-bezier-3.2.0.tgz#390c450035ae1c4a0104d90650304c3bc814abe6" + integrity sha512-djbJ/vZKZO+gPoSDThGNpKDO+o+bAeA4XQKovvkNCqnIS2t+S4qnLAGQhyyrulhCFRl1WWzAp0wUDV8PpTVU3g== + svgo@^0.7.0: version "0.7.2" resolved "https://registry.yarnpkg.com/svgo/-/svgo-0.7.2.tgz#9f5772413952135c6fefbf40afe6a4faa88b4bb5" @@ -11193,6 +11512,11 @@ svgo@^0.7.0: sax "~1.2.1" whet.extend "~0.9.9" +svgpath@^2.2.2: + version "2.3.0" + resolved "https://registry.yarnpkg.com/svgpath/-/svgpath-2.3.0.tgz#efc76705deab6bd1774e9f0ed038bb661b5e4d23" + integrity sha512-N/4UDu3Y2ICik0daMmFW1tplw0XPs1nVIEVYkTiQfj9/JQZeEtAKaSYwheCwje1I4pQ5r22fGpoaNIvGgsyJyg== + swr@^0.1.16: version "0.1.18" resolved "https://registry.yarnpkg.com/swr/-/swr-0.1.18.tgz#be62df4cb8d188dc092305b35ecda1f3be8e61c1" @@ -11369,7 +11693,7 @@ through2@^2.0.0, through2@^2.0.1, through2@^2.0.3, through2@~2.0.0, through2@~2. readable-stream "~2.3.6" xtend "~4.0.1" -through@^2.3.6, through@~2.3.6: +through@^2.3.6, through@~2.3.4, through@~2.3.6: version "2.3.8" resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" integrity sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU= @@ -11386,6 +11710,11 @@ tiny-emitter@^2.0.0: resolved "https://registry.yarnpkg.com/tiny-emitter/-/tiny-emitter-2.1.0.tgz#1d1a56edfc51c43e863cbb5382a72330e3555423" integrity sha512-NB6Dk1A9xgQPMoGqC5CVXn123gWyte215ONT5Pp5a0yt4nlEoO1ZWeCwpncaekPHXO60i47ihFnZPiRPjRMq4Q== +tiny-inflate@^1.0.0, tiny-inflate@^1.0.2: + version "1.0.3" + resolved "https://registry.yarnpkg.com/tiny-inflate/-/tiny-inflate-1.0.3.tgz#122715494913a1805166aaf7c93467933eea26c4" + integrity sha512-pkY1fj1cKHb2seWDy0B16HeWyczlJA9/WW3u3c4z/NiWDsO3DOU5D7nhTLE9CF0yXv/QZFY7sEJmj24dK+Rrqw== + tiny-invariant@^1.0.2: version "1.1.0" resolved "https://registry.yarnpkg.com/tiny-invariant/-/tiny-invariant-1.1.0.tgz#634c5f8efdc27714b7f386c35e6760991d230875" @@ -11678,6 +12007,14 @@ unicode-property-aliases-ecmascript@^1.0.4: resolved "https://registry.yarnpkg.com/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.1.0.tgz#dd57a99f6207bedff4628abefb94c50db941c8f4" integrity sha512-PqSoPh/pWetQ2phoj5RLiaqIk4kCNwoV3CI+LfGmWLKI3rE3kl1h59XpX2BjgDrmbxD9ARtQobPGU1SguCYuQg== +unicode-trie@^0.3.0: + version "0.3.1" + resolved "https://registry.yarnpkg.com/unicode-trie/-/unicode-trie-0.3.1.tgz#d671dddd89101a08bac37b6a5161010602052085" + integrity sha1-1nHd3YkQGgi6w3tqUWEBBgIFIIU= + dependencies: + pako "^0.2.5" + tiny-inflate "^1.0.0" + unified@^6.1.5: version "6.2.0" resolved "https://registry.yarnpkg.com/unified/-/unified-6.2.0.tgz#7fbd630f719126d67d40c644b7e3f617035f6dba" @@ -12626,3 +12963,10 @@ yauzl@2.4.1: integrity sha1-lSj0QtqxsihOWLQ3m7GU4i4MQAU= dependencies: fd-slicer "~1.0.1" + +yoga-layout-prebuilt@^1.9.3: + version "1.9.6" + resolved "https://registry.yarnpkg.com/yoga-layout-prebuilt/-/yoga-layout-prebuilt-1.9.6.tgz#98dde95bbf8e6e12835876e9305f1e995c4bb801" + integrity sha512-Wursw6uqLXLMjBAO4SEShuzj8+EJXhCF71/rJ7YndHTkRAYSU0GY3OghRqfAk9HPUAAFMuqp3U1Wl+01vmGRQQ== + dependencies: + "@types/yoga-layout" "1.9.2"