From 8fc46dc5df21946479fa101dd790ea43460f674f Mon Sep 17 00:00:00 2001 From: Jakub Antolak Date: Sun, 18 Aug 2024 12:58:03 +0200 Subject: [PATCH 01/56] use vite, upgrade deps --- .eslintrc.js | 18 + index.html | 16 + package.json | 55 +- public/favicon.ico | Bin 3870 -> 0 bytes .../fira-mono-v6-latin-700.woff | Bin 22240 -> 0 bytes .../fira-mono-v6-latin-700.woff2 | Bin 17864 -> 0 bytes .../fira-mono-v6-latin-regular.woff | Bin 20640 -> 0 bytes .../fira-mono-v6-latin-regular.woff2 | Bin 16528 -> 0 bytes .../open-sans-v15-latin-300.woff | Bin 18280 -> 0 bytes .../open-sans-v15-latin-300.woff2 | Bin 14564 -> 0 bytes .../open-sans-v15-latin-700.woff | Bin 18476 -> 0 bytes .../open-sans-v15-latin-700.woff2 | Bin 14720 -> 0 bytes .../open-sans-v15-latin-regular.woff | Bin 17704 -> 0 bytes .../open-sans-v15-latin-regular.woff2 | Bin 14048 -> 0 bytes public/index.html | 83 - public/manifest.json | 15 - src/App.tsx | 52 +- src/components/common/AppInput.tsx | 72 - src/components/common/AppModal.tsx | 100 - src/components/common/SaveIcon.tsx | 44 - src/components/common/SmallButton.tsx | 25 - src/components/editor/artboard/Artboard.tsx | 40 - .../editor/artboard/DefsRenderer.tsx | 92 - .../editor/artboard/FiguresRenderer.tsx | 46 - .../editor/artboard/FiltersRenderer.tsx | 48 - src/components/editor/settings/Settings.tsx | 16 - .../settings/content/SettingsContent.tsx | 41 - .../editor/settings/content/layout.ts | 29 - .../settings/content/list_item/ListItem.tsx | 77 - .../list_item/attributes/Attributes.tsx | 226 - .../content/list_item/chroma/Chroma.tsx | 112 - .../content/list_item/colors/Colors.tsx | 43 - .../content/list_item/colors/color/Color.tsx | 122 - .../content/list_item/colors/color/layout.ts | 69 - .../list_item/colors/header/ColorsHeader.tsx | 88 - .../list_item/colors/list/ColorList.tsx | 52 - .../content/list_item/colors/list/layout.ts | 18 - .../settings/content/list_item/layout.ts | 66 - .../list_item/properties/Properties.tsx | 36 - .../blend_mode/BlendModeSelector.tsx | 65 - .../properties/focal_points/FocalPoints.tsx | 40 - .../properties/type/GradientType.tsx | 45 - .../editor/settings/header/SettingsHeader.tsx | 123 - .../blend_mode_selector/BlendModeSelector.tsx | 58 - .../editor/settings/header/layout.ts | 34 - .../header/preset_selector/PresetSelector.tsx | 45 - src/components/editor/settings/layout.ts | 12 - src/components/form/FormButton.tsx | 59 - src/components/form/FormFieldset.tsx | 41 - src/components/form/FormLabel.tsx | 8 - src/components/form/FormNumber.tsx | 49 - src/components/form/FormRange.tsx | 121 - src/components/form/FormRow.tsx | 15 - src/components/form/FormSelect.tsx | 75 - src/components/form/FormSwitch.tsx | 34 - src/components/layout/GlobalStyles.ts | 21 - src/components/layout/StoreThemeProvider.tsx | 28 - src/components/layout/ThemeSwitch.tsx | 98 - src/components/layout/ViewWrapper.tsx | 26 - src/components/presets/PresetForm.tsx | 104 - src/index.tsx | 19 - src/main.tsx | 9 + src/react-app-env.d.ts | 1 - src/serviceWorker.js | 135 - src/store/_types.ts | 82 - src/store/application/actions.ts | 20 - src/store/application/reducer.ts | 51 - src/store/application/selectors.ts | 10 - src/store/application/thunks.ts | 24 - src/store/editor/_payloads.ts | 42 - src/store/editor/actions.ts | 87 - src/store/editor/helpers.ts | 61 - src/store/editor/mutations.ts | 269 - src/store/editor/reducer.ts | 60 - src/store/editor/selectors.ts | 62 - src/store/editor/thunks.ts | 83 - src/store/reducers.ts | 8 - src/store/store.ts | 24 - src/styles/fontFace.ts | 47 - src/styles/mixins.ts | 10 - src/styles/styledComponents.ts | 19 - src/styles/themes.ts | 52 - src/styles/typography.ts | 56 - src/utils/gradient.ts | 64 - src/utils/presets.ts | 14 - src/views/editor/Editor.tsx | 19 - .../editor/components/layout/EditorArea.tsx | 11 - .../editor/components/layout/EditorBar.tsx | 29 - .../editor/components/layout/EditorMain.tsx | 12 - src/vite-env.d.ts | 1 + tsconfig.app.json | 25 + tsconfig.json | 32 +- tsconfig.node.json | 13 + vite.config.ts | 10 + yarn.lock | 11177 ++-------------- 95 files changed, 1044 insertions(+), 14396 deletions(-) create mode 100644 .eslintrc.js create mode 100644 index.html delete mode 100644 public/favicon.ico delete mode 100644 public/fonts/fira-mono-v6-latin/fira-mono-v6-latin-700.woff delete mode 100644 public/fonts/fira-mono-v6-latin/fira-mono-v6-latin-700.woff2 delete mode 100644 public/fonts/fira-mono-v6-latin/fira-mono-v6-latin-regular.woff delete mode 100644 public/fonts/fira-mono-v6-latin/fira-mono-v6-latin-regular.woff2 delete mode 100644 public/fonts/open-sans-v15-latin/open-sans-v15-latin-300.woff delete mode 100644 public/fonts/open-sans-v15-latin/open-sans-v15-latin-300.woff2 delete mode 100644 public/fonts/open-sans-v15-latin/open-sans-v15-latin-700.woff delete mode 100644 public/fonts/open-sans-v15-latin/open-sans-v15-latin-700.woff2 delete mode 100644 public/fonts/open-sans-v15-latin/open-sans-v15-latin-regular.woff delete mode 100644 public/fonts/open-sans-v15-latin/open-sans-v15-latin-regular.woff2 delete mode 100644 public/index.html delete mode 100644 public/manifest.json delete mode 100644 src/components/common/AppInput.tsx delete mode 100644 src/components/common/AppModal.tsx delete mode 100644 src/components/common/SaveIcon.tsx delete mode 100644 src/components/common/SmallButton.tsx delete mode 100644 src/components/editor/artboard/Artboard.tsx delete mode 100644 src/components/editor/artboard/DefsRenderer.tsx delete mode 100644 src/components/editor/artboard/FiguresRenderer.tsx delete mode 100644 src/components/editor/artboard/FiltersRenderer.tsx delete mode 100644 src/components/editor/settings/Settings.tsx delete mode 100644 src/components/editor/settings/content/SettingsContent.tsx delete mode 100644 src/components/editor/settings/content/layout.ts delete mode 100644 src/components/editor/settings/content/list_item/ListItem.tsx delete mode 100644 src/components/editor/settings/content/list_item/attributes/Attributes.tsx delete mode 100644 src/components/editor/settings/content/list_item/chroma/Chroma.tsx delete mode 100644 src/components/editor/settings/content/list_item/colors/Colors.tsx delete mode 100644 src/components/editor/settings/content/list_item/colors/color/Color.tsx delete mode 100644 src/components/editor/settings/content/list_item/colors/color/layout.ts delete mode 100644 src/components/editor/settings/content/list_item/colors/header/ColorsHeader.tsx delete mode 100644 src/components/editor/settings/content/list_item/colors/list/ColorList.tsx delete mode 100644 src/components/editor/settings/content/list_item/colors/list/layout.ts delete mode 100644 src/components/editor/settings/content/list_item/layout.ts delete mode 100644 src/components/editor/settings/content/list_item/properties/Properties.tsx delete mode 100644 src/components/editor/settings/content/list_item/properties/blend_mode/BlendModeSelector.tsx delete mode 100644 src/components/editor/settings/content/list_item/properties/focal_points/FocalPoints.tsx delete mode 100644 src/components/editor/settings/content/list_item/properties/type/GradientType.tsx delete mode 100644 src/components/editor/settings/header/SettingsHeader.tsx delete mode 100644 src/components/editor/settings/header/blend_mode_selector/BlendModeSelector.tsx delete mode 100644 src/components/editor/settings/header/layout.ts delete mode 100644 src/components/editor/settings/header/preset_selector/PresetSelector.tsx delete mode 100644 src/components/editor/settings/layout.ts delete mode 100644 src/components/form/FormButton.tsx delete mode 100644 src/components/form/FormFieldset.tsx delete mode 100644 src/components/form/FormLabel.tsx delete mode 100644 src/components/form/FormNumber.tsx delete mode 100644 src/components/form/FormRange.tsx delete mode 100644 src/components/form/FormRow.tsx delete mode 100644 src/components/form/FormSelect.tsx delete mode 100644 src/components/form/FormSwitch.tsx delete mode 100644 src/components/layout/GlobalStyles.ts delete mode 100644 src/components/layout/StoreThemeProvider.tsx delete mode 100644 src/components/layout/ThemeSwitch.tsx delete mode 100644 src/components/layout/ViewWrapper.tsx delete mode 100644 src/components/presets/PresetForm.tsx delete mode 100644 src/index.tsx create mode 100644 src/main.tsx delete mode 100644 src/react-app-env.d.ts delete mode 100644 src/serviceWorker.js delete mode 100644 src/store/_types.ts delete mode 100644 src/store/application/actions.ts delete mode 100644 src/store/application/reducer.ts delete mode 100644 src/store/application/selectors.ts delete mode 100644 src/store/application/thunks.ts delete mode 100644 src/store/editor/_payloads.ts delete mode 100644 src/store/editor/actions.ts delete mode 100644 src/store/editor/helpers.ts delete mode 100644 src/store/editor/mutations.ts delete mode 100644 src/store/editor/reducer.ts delete mode 100644 src/store/editor/selectors.ts delete mode 100644 src/store/editor/thunks.ts delete mode 100644 src/store/reducers.ts delete mode 100644 src/store/store.ts delete mode 100644 src/styles/fontFace.ts delete mode 100644 src/styles/mixins.ts delete mode 100644 src/styles/styledComponents.ts delete mode 100644 src/styles/themes.ts delete mode 100644 src/styles/typography.ts delete mode 100644 src/utils/gradient.ts delete mode 100644 src/utils/presets.ts delete mode 100644 src/views/editor/Editor.tsx delete mode 100644 src/views/editor/components/layout/EditorArea.tsx delete mode 100644 src/views/editor/components/layout/EditorBar.tsx delete mode 100644 src/views/editor/components/layout/EditorMain.tsx create mode 100644 src/vite-env.d.ts create mode 100644 tsconfig.app.json create mode 100644 tsconfig.node.json create mode 100644 vite.config.ts diff --git a/.eslintrc.js b/.eslintrc.js new file mode 100644 index 0000000..6e8698b --- /dev/null +++ b/.eslintrc.js @@ -0,0 +1,18 @@ +module.exports = { + root: true, + env: { browser: true, es2020: true }, + extends: [ + "eslint:recommended", + "plugin:@typescript-eslint/recommended", + "plugin:react-hooks/recommended", + ], + ignorePatterns: ["dist", ".eslintrc.cjs"], + parser: "@typescript-eslint/parser", + plugins: ["react-refresh"], + rules: { + "react-refresh/only-export-components": [ + "warn", + { allowConstantExport: true }, + ], + }, +}; diff --git a/index.html b/index.html new file mode 100644 index 0000000..a50b87a --- /dev/null +++ b/index.html @@ -0,0 +1,16 @@ + + + + + + + + SVG Gradient Editor + + + +
+ + + + \ No newline at end of file diff --git a/package.json b/package.json index 973db22..94d7ca1 100644 --- a/package.json +++ b/package.json @@ -4,40 +4,13 @@ "private": true, "homepage": "https://afternoon2.github.io/svg-gradient-editor", "dependencies": { - "@fortawesome/fontawesome-svg-core": "^1.2.8", - "@fortawesome/free-solid-svg-icons": "^5.5.0", - "@fortawesome/react-fontawesome": "^0.1.3", - "@types/jest": "^23.3.10", - "@types/node": "^10.12.11", - "@types/react": "^16.7.10", - "@types/react-dom": "^16.0.11", - "chroma-js": "^2.0.2", - "file-saver": "^2.0.0", - "gh-pages": "^2.0.1", - "immutability-helper": "^2.9.0", - "lodash.throttle": "^4.1.1", - "nanoid": "^2.0.0", - "polished": "^2.3.0", - "react": "16.7.0-alpha.0", - "react-color": "^2.17.0", - "react-dom": "16.7.0-alpha.0", - "react-numeric-input": "^2.2.3", - "react-redux": "6.0.0", - "react-router": "^4.3.1", - "react-scripts": "2.1.1", - "react-switch": "^3.0.4", - "redux": "^4.0.1", - "redux-devtools-extension": "^2.13.7", - "redux-thunk": "^2.3.0", - "styled-components": "^4.1.2", - "typescript": "^3.2.1" + "react": "^18.3.1", + "react-dom": "^18.3.1" }, "scripts": { - "start": "react-scripts start", - "build": "react-scripts build", - "test": "react-scripts test", - "eject": "react-scripts eject", - "predeploy": "npm run build", + "dev": "vite", + "build": "vite build", + "predeploy": "yarn build", "deploy": "gh-pages -d build" }, "eslintConfig": { @@ -50,16 +23,12 @@ "not op_mini all" ], "devDependencies": { - "@types/chroma-js": "^1.4.1", - "@types/file-saver": "^2.0.0", - "@types/history": "^4.7.2", - "@types/lodash.throttle": "^4.1.4", - "@types/nanoid": "^1.2.0", - "@types/react-color": "^2.14.0", - "@types/react-numeric-input": "^2.2.3", - "@types/react-redux": "^6.0.10", - "@types/redux": "^3.6.0", - "@types/styled-components": "^4.1.2", - "typesafe-actions": "^2.0.4" + "@types/react": "^18.3.3", + "@types/react-dom": "^18.3.0", + "@typescript-eslint/eslint-plugin": "^8.1.0", + "@typescript-eslint/parser": "^8.1.0", + "@vitejs/plugin-react": "^4.3.1", + "typescript": "^5.5.4", + "vite": "^5.4.1" } } diff --git a/public/favicon.ico b/public/favicon.ico deleted file mode 100644 index a11777cc471a4344702741ab1c8a588998b1311a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3870 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 baj7?x%VD!5Cxk2YbYLNVeiXvvpMCWYo=by@ diff --git a/public/fonts/fira-mono-v6-latin/fira-mono-v6-latin-700.woff b/public/fonts/fira-mono-v6-latin/fira-mono-v6-latin-700.woff deleted file mode 100644 index 23ec0e960e7ba5642c5024c199d37bab4bf788fc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 22240 zcmYg$V{|6X^Y$Ivwr$(CZQHi9;l{RY+qO1NHs09Qo9B1_AKsd|x~s0K?m5%lr_MAy z6vV{=K!6`n{|i9+FE9D`WB-r&&-(vGLR3r~000X7;c)*05G0VAgrb7V510L86aEKL zcUduKNf3001cIZUfMSf(ipO005HzQiL%qEX8xuPt#~<$H2PXgkR5vlZ zL9>awD?@fQF9@ckeWx{?9Q+|j}g0DvR}0KlRF0GPBL)Xf_UBbT4DaMeFPkpBln z3tKPqAFdey5Hbb;{PTAyuoo@Oj7$Ll1mN+__{ghRg{qaluLB8E7pa1~$qrv{* zKLP%^Kmmb2+#=xNC;jgk^iNyk1As)uWmSK^6!bs0@9+Oo0Kju2CxN9MR|zwGm&FER zRX??&HP+4!Wz#)#t+hwZo`B~xZ>@E+7>dHcRqgU>+Go}Q7W~F#)!De^e4b9kbH6?# zsiGh1<^TeIeM<7cZo9w+tw#IV!9XmowT49v)^>C3_@%byU4yAjgJZLk*W`RX^VDRw zDc@5h(0MyY6Lg{on3M}LL4i!t8M!o&I{uJYm`Ex9uoOvbSTOO|C@Knslzyh7Ffi$> zr8Je4G6{u3#_;(Tr}tYulJ9gZN?A<$xW(-`1GdaVlo68xEm9TvTqf&wu``L`4G{bX zD5UgLg!}?orDRxNu}M85`}2@yagr*$SB+_=$jC?%g}v3L|Z}b!L%n#exEWEpOE=>16n**b$=CE;U zeX<#?1sILii1n=VZwTHav6ue(MH3 zg&g%LuA5@$*0#mMuXoJ}l;|s+aN-Og=0U$_FS1I!rA%fP}d+-yQAaP)j!9z+&q!6282Xp|vf zaD6hR6h7Dh$}i$hsM!*qm16J+xZ=wejNbRa+qjL-kZj_I5TKn)5NFn`a~nxNlm zx7li!l{M}6pR!HA$zBU5iX;Rq3bl%eBn*tS+xJwoM=ME$_*j%zoT|n!Ct@XXG^8^~ zF<2HX5b_RMpl+ILEzX{ z#+~F`7xf|V+*XAVs92jO#Jet9m*Q^Z@cJn~9#V%O5eb9a9lYT8dyd2+z6-;=0~<&H z`IOu(|Mk+(-R4xerum=R)$*t1Nj zZ8VyNToRT%3W7Y6fZPN=*RYn;DEGy3+CAXf1Mu3vmZk^oz2 zah`-ho|LbQX|S3RIJ9Ia>WMHm6Tz{E1M2((@@Iw&yL*Iej>!^^iJY7=RJx?-waPFY zuV5Y(zkYQGQ*;}`Iar0pB@bv+?oq(sq}4$p(tu8yfJ*TOAAt!UatR-i4GzQXEn*`@ zh{A|U>4?hE3`^n+OY;m%Nes&%kP<@aCD4Mz2eUqib-Id&!%CFK2%$GJA#*XqcQ9jn zDF^vtMFVGq38R{DOPlgbn-NbQGEbUeQ7cA{lqaHjlF8g^ryj&s59?@!cr;>N-y-4M zNImVdR5qZnHNv+zqq;dmKU(%Xu})(7rX;;g{-mXc!wU6zFVU*w{Jmbkz@Kw>O6@E8j%9n#qorQb~gtwdZ24M`UY z0{0{(fWu*OLOM#}7LNjNWAq_lbDOCEV#eE`I64QpAqq+G96?G1)V}GuQ`|fB-moLPzvAy=atN>|BDmV zYOC%C;;?v?9chU1kTk}Di6k_yM+#X@*>U>h}cd;vsO~9L-Bc+|4UWZsK+S#AMZ8~X=R0D6H zQOkfuUN@ShC*q~agtta~Ywk}jOKe-&a6)nnrNog)@VKKRG0=&@GYqreifHl0m`wVJ zpQ0;>tn4D~Cf{e(hc-n3h-D&wr4@o=CpH;rZKth#4$JRzwys-`Hkh}d+Kn|#nTgz} zRFnZ!;Zlift@CU)AU@J-hL55a`o(m-+=eK)PQlU?=qdKd({SJ)fXtEyJp7xqCA6oM z8coY+oQh4d>8rxxl8P1CBvA%e{{QoNU!>sNZo)i)G6nj41xkng*+?A-+t0dXPQ zeyJ2K)-g$D%+r=Ps$?SD8d-&#(>L z5}P>cl-KD&Bq`H9Id3ml(D?j2qn)wYA%9xo*l}O9Vx;0#Tf0 z-Y>SdnKID5fZXin<@UQz+KIV8nICpbz2KR%ByBEoX$OaI78SQJ^Ww=P{Oh z)`fARJ!T<%jxtmZ|MFeTX9<}0#8H;dQ3L&5thjy)edxkWyX1}fz;wk}8{9U{%}!7b z8a_fWl*moeKDkL{q;9%Zoai85USV76z$E8D{a@A{rO?2w+kH~u6ysh0FB3? z>K)Yo4Y8gzHy-5CeV>0+aeQs2kM5PHQz6jblk*5(xpy9Cwln z=Zhww-&hR=LBd%LMO6@EtolR2Wv%*S$Vt+d0>R)k7XwookWMmJVY3kJRHYVDvy6&O zFJfZ3A9D*Hg~a?+6LMo>xlS_*PQ}E$)e?4MVtGz;3Qk4D-c%EMr#b%Ke-J2S#6Q+m zb7=Z~e^c!d82HFp{Y)(YKtKQf2%a0wT407a8cDesZC!~m#uK(yV8@)P8I4ZaoDGAK z2h{V+PS94L5L46B(-Kl0a+_7r0xUnGviD80>m#E*#?@*j93Jy?*x4^4GU z6J*TahxdFe5XASKjDeQoQ9`|v86iVOj~9VpuFV4;a&#ngOQP26(&OuY!qYdVkd}(> zVBRpQS(u)J4i>CkTD7~<8Rg<7Lc{==`2-7eU!rZ#hosMb%n#+v_3QQel+xA|k`f0; z-UN&A(-IE!*VIe#>s3<>YQm?j*Ho=hr$7V_5y_rTXC3&Kw572~Ufa->zwg=xToHR9 zwf7(0zv^B|y2Q!AnF3pL&#Xxx&-uQZ82IxmrOfR3FwEdj?fB4}-{oawv6!0G3E`3g z2*qUlSq5RI^0X1QQ0fr7AB)_X4Z?JdXO5lDi$^=oFDLo+x}-ay^{ zbp(?ITNWQ07qyFWxGoh5vXURep%r;G{)d!1r#@Uy<8YB(_YUeW%-aaOf=%zayYCyl z5Kjk=Um^YZ7=hsJqh^Rf-tD%nm}KUsx+J2B8LV`y+vYZ%aM@An8Fvbs)9~mu{zPbk zxvXBMnqz8r!^jP#nzBwB>=dYKj~QtsxbRBSY9blGuWIWbgTe7TKFW6auV+*ENH+PC zPf!0{+ScLz(_>$2bA5Nu+;+X|KWp4)t8x;#%Uh)Dv-09wfeJ*-d&jFOh!X>XsA?1|XB{!_C&?DoArJbtt(nUmQ8 z17Ii1t5>{U_X$l1xI4tG6MaQCi?9Z(m6eLdr`Cxj;Hrn_q$44c_Mocm>SVh1Xp%x< zvj9-RHK>nVdk{S_E%nx*!Wc?nF{8lHfvERy6a8&mr>s?Ol>;n_vOo2KQs7~xBZla$ z$nb%KK+f7qj0utu$WRy_rV}y0PVw!jkyw3XW!!KbL^L1`{%y6>@}tTR+jMDfM9=j^ z>ewIg`q+22cQr8;y-I7mo&lScfg1z_;w&0%KzZ;1geU-T=T3_-Jh0KBxbkyrPVxlx z+Z#fQg0(_lJy0m(JheYJY6%ui|`beINY6qUQE(24oQ38@w}bio2iNI$eg^V?{IhcM*x4ErwLTP`xSZ> zP^Rs%3wfb}jQnV3CVC;ElJhD$ttDC$)n_4z0y7>u#*`nAcL z^-Y70Hw8?1W1w0&<=RQ4A}S2vf@s`IGmDVy@S;Zo&S1%hRe>*zpNvG=3l$UBrbJ`F z?QECTW1{Z4Z2h>gYukgcq7?8P0DIZHKRJfYaJ{anr(uQRvo3N`6eK_`*DIiV0aYph z6864AP@Q#q9Kf#`4&+_QMYebU3H5VMWoRnHDWbY(g?Y@8^Js^gss3Ao` z7t&nq_^7RFsd(BOb`+VrV>ozqFz~eTyI8h#v<0IVAb$j z8AG?zJ=*ueqM@B&gES+Id*=4+kApwe2gt=hG??kT@h!~=Aue6OJb@aVruibq5a~*U zjg-I~^j9**TeY305S}HrR)fb4l3OzcCr*C#D~Q0KG^R#b$p2MAi|fp^U=7O5>fVKe zW_3A&GD5kV=q)RuM)!FvdeZ)F`hFpcU%aNuK`ZSWr|nt; zzZ;)#tkK0K9M@Z+5SuR&R?wSNf0D$BNfdpVT;_7a)YQmspY-!r3lxL0iSVD$BA%9_ zN=l{F9rsJOwx~P`=FiUz*>AzIXo9!?C55}ZsX6|4=i8x@)uZKW_r>4v=-$iXC;5T= zZLA3r6HK8ag=etK>E)dzp@ICc;j?vIZ#Cmug)VChK*Je?4DpIVK27 zqk$=9hOrEXJ9M=cR(czB=k-OXuUte2H1Rk))tk1{_$o!_&AyanPzaDJj6Ah|EoqHL zC%DvhmlNd0-+lck?G$}#jWs0QBwGJ83nGe8ws?qfKlPqonTswU$dR(BpW-3?1|@kp z+m#Yynl~AA%mPNu#p1?VY9RIKdw_zokrYU!<~TpK9J}Jqfzh4Jzfe1Qm)y~e{nsK1 zmbkw{D7G5+b5Y5%h^5&NsM-oSAQmi92{U8J&#Vc7_uA(ezEXZ>3xjxp8-XKh&)ZPcE05x6ta#5Zrq{#a?W8 zIr!#{eQxyaPk;T+NOItOpN}n@ZUz}(1l&?Wiv49!wMf)&h=3{e2-#AcZ6{!F$!vX{ zelY-n^c0W<_%{_-5_wyt_kZqA|zL%TXsE@XVq<|#zInJu0 z%LBaaKt*GBAgQ&g6p45xRU|8@f!yrSYMJ_n&?77$k-hW#NfsPE&0Mm~mG*=vQO!#x z2d52eAk@lFN73nD-VzL1zQ@gS=jPmLt~K2^%||CS-i9aGZXzx|3St4@8D+ceT^7$z zXf<#Z$Bxd=oqLy;IxcK%*0j1hr*#5uG=!luQ6pekux`HYkJAiM_kxo_oKTQuvYId< z{_vsYZ7Jy{<`v(K<>g_>-X_x|sQS(?BF$^>+>g566`tjhIxTW_N#wY@mAkTQSFHK+ zguMSqEsbD6@}-i5>vIDf7?BiXH`Fy17&wEChNAtjtj`5}?n^WXsBC0Qu%~{1_#OdW zZiu{Oe0-Umm{~=pqaU7l8WBd7!h7usA=54t4y)TIJ|-ur5_{r<%L4vX$wu<%lASh&}D2I${y;%JB)%K+#T+W zBa;gWw6*ZQ@f1}Y;zX%A0t~nwDtg$krkvO7tAScU558!h)|-0i-S#QSa<@kBcJt=h zivi=*<|WoQ6B`JT6p%U3)0vZ5HcnP>Xh}#~dSWTOiOe3w1+yXyjEE;11ZW@4W=9uk z*u72@10y(H=z`FPZbHa&`qNbBzaIuO7jQMy#QMH{eJqgP2ekd#<|sf9(cjTFT{{YA zQrB)~9QeCQ$aM!81%%g9FNpZPh7+gHAUpQPdz%!Nf$w7|t+w-Roq%`<heSajfa7gf%nJOBgH&fVH>Go2h;pID)0E3Z6Q` z`**J-v|e)&?R-#EgEn+|Z;Ga!`kU@U|Eots&kd>9X?^7NR@m*$s_QFJMc6x~2rfAk zTXM)xn=yEJFhVu1v6#`A5W}1dGBM_jQ4is@NJ}Xi4}+;{=8xOPe(qS&2u9+gS7-2S zkhhkdon0q;iu5Q795E5a1C^9^!{ocH1_eT4ZF599QE$k;OH#X}2dNK8gZqp@SC7j< z?avm@rb-J@%J_xN=c|YJ%we#3ZYEDq>QHc+5fk!}ZU9GjVpPsM% zY(1C`xRYjK-i5&qIF6oakpuTUHjdwvcuwBUZ;+hEg+8A7@>qNyoWPl$p@k$$sMvY< zknv{4%3RYDc(M)y(ZoArVpNHJG#+dYX*03nRm&25D)UK)r{E?CkpI<0lLY#vEG~H3huPbJAYbtt&8~tC3om`8U zSh}e^OQ03ojO%S%rIsTQn+n;pa3(99})= zZ|rTQ3bXbTV)AtKS+FmOx0=@8o{#NMuchK_YC5|Mz@RiQku6JEe?zEWVipEK{l@c& zrIBfblGobXvJK5vc++V)EqIX|p!*i8V-iC*A(15Jxx1;es#p8S5j1IQyyd|ANe!1^ zu!bi^gd-jMMo6MP7K=y73j8rkcmW!(G)qCIvU^@@4)z|8Qb{t8k1rpi=$xptxHvZH zxo4baT0@qi9j^-%S=bm9=jeO7XIC~HdcD;8tMUSmM**3A$G3O~L%R+Tp+{TNE6JhI zoCY+{Lv)UGS#ZepcA2vgauRGeld<{ z-OX+OV%E?7!(t>wX}0*B9Zt;w|GM{fG9*1c{H#Yxve@;w@T0G7IUB8HEfWJIR*Rv` zo1q(qq$BavRZKDyZ0+hzRm!B}#fnQ#5B?|@C1T!gvehR|Xen6ZtL@T6D!&M9(r~Rx z|2nBjaldq-R-018+vIboLTx|L1B2_B6}j>zwERnPeByr@X3bd%Hl;*-)g{Y3I}IaB zBe#mCU%WbBByM4{OxSwPJ&{f5iQZ1{L@vJg01VEgZ!r#d#_)XMVYgytT5|E4(Y~yb zrclef(S4|J&qg$Bi>rp>i9yg4xJg!jm#!mKNYsUng+r{yvLM ztGf`S`hE+i+iVgMfchn;(_D{T9%i1tJeVS>85d*O-CDYFscb5aulp)+eyA_cTDtKd zmBp#eLTIs=&YGhsB zQdC5@B!80PBhOHw*;DBAuZY98(|zXe02>VgZAJOk%F1f$w@tB^>-t(F8x8<+qupOF zIh0X#Xhu7M(-;bAyn_NLQZABLk8|=sz5zR8i7c^<&YdC-od*aDiCm6cknd4~IN?lE zjWC(n+o|@;DNWrpM6)g8;miXe<~P069PNx=x9PuZxT{T)LhyqCn@VBvM? z`6NzVn*1C5S4np2Yiyo_PxL;d+R`gC2weBeT4uioL-HkyWqI%qT5q49pW~hwWH>x3 zgG@ape^!L7#Kl@_wKmdIFl)^`wMQ*^#FE*JBhYMyw)qlg=_06OU2``wPWkM#sz)y) z%PHXOuiFnwPeE!pAh>zdT}xE5IP9ydt}L;#wR-&n0=~v(=q6m3z&~6l3*AiFo2e4# zRIY3^7aFZ34m=&i+_e1Un$7cTTBi(JDqa2-ixpQYv~jSvF<57ThN1xu%ld)|-0z3P zgPHdr4*Us%yy*D}nPouP>)>cOHgq!C4ZFYuhK&}l^V$~$js1}nL74b3Pb>0xevdy# zMfd%Cy=~lzT8Rs{DXdwLAQ-v+ZKs{nhuGFyX8icd^RG;waE;j1G*%Io$aCW6Gu^*S zFQQ!*w=@w%3~O5Y-&Xkf;;Iuq0LZGpMu@g1UNVgNqN0;SF5_!F&~jZRAK2JU#Y;xENjO0h)ZJGexU z`Gn;#ne1x==^Ga~@GN6vdyfQh>>e&VQ2efVT=F&goIX1JkJ0L%$@0=Hr#WBi{qGW; z?v9b*HfAK_Q2>~O%}J$dsD`7rk*_Y=e@9$MtMgKQKdf%6E~F7u((IEVx;n8lxx26x zHhmAH{tf3|J@32!p`5KEnVGxj5AtzF!vOX6FlS;eItK_=oyz&KbSlxf6CwU)A!c?^ zheCuiKbg}71?Pf6Nka%Er;Rs^#iRs%3=$4E$Q2YcA|>?RDBwBq8e7&H3%7 z8h{Xpc)&FxBM`>iAdreE>28YP6Ttgdwqy2_i7_+Js_17{KXCWifX!lVOWXu~k43)8 zo+(Swvh^De!Q}e@WQS#?sr1ILQvmApYHxAG=vM>RNaBZ*i;MU2R<=6OJR(^E{FfL_ zMI_>+|3cbgyAn~9XUHA9J{6PJ@pI<57NL6Z&v~9fEm4NELquzFuxTtoAtZc4i=`Iq zc%;Kf6sGZf12+ahT9x|at6CrSO~miT-?sE)yRyT!q%4P5owe=Voz{IXZbJq8ld|2l z6H7gziR*B$_cz^{^_hMBA0k1r#OfM-pcj}qp#WV5aT!=&$?3+RUHaJA{yz@8VT_K` z^xhJ7)&;jlp|;w2LfWhgmrTKt2a$rpCmNoZ8jq4lj4jULcW4~w6o1@k4NOLzp<&sI zIV`*w1u96?G_v}@EU!EO$%TC)RLdlocWE6+^U=&Jg``cl)If|7hEEM_?)?OaKnBfk z`*)O-QlH(Y4Nby9kx7@l0@f_tO~6F5Iq5UA(Ck_1noL@vXjB$VR!(DM<>G*h72B{=BY+OB_XZkSCbThmDVh-LPm&J zAxpjO+&=izQB0RV`=yqtVcPlZFjN<_OaiQ^1g)A`k#B$$f}qU&CD9I0ec&qg6L7w2 zTB`yb4#wZEXKG2CXw9dL>th;8HyiLWGWOf$_v^F5agLKWQR6bnPamC6nOrjByt!!c zSXhRxH@a*N9n95f>d+`IC9KS(SRC9fc4nuuUgy5~w%s58+1Wvip4(WTtw)3Icn?J` zmC4KMt$G;RdXKEVMA3|zeq`%JYE8UR)<13No=rumYS2HT1&Y<)H~)tKO%thFiB%Lo;-3z~Z&fihqm$sLvz!DD~un02f=Qi_=d%?d$4m-okNz z={2M2lGy=(W%3OxttA604+IQ5UCvX$+RmJa#%jhu9+8C-;?+7!3$csg*ZIdkq2WkF zM}x(RXHzL7DP7=GkBfk;i`kg18>>pD&YOJ~jvNYYO-G^Wwql~9n##Zpj8K~L(P>gz zmu4{1m7>E~9LeZc{ymx^q)Jcanv-UAHp?uWwdW9I#J4T4b%xmTuY;iO7aNeQYiRB# z4@rp5PndQdha}x4VZ`EhmwYY1;c=52#w{c~Tvme%|Fgly!eVo_3A;k`fwoV?s$uSL z#n75H(~2xX2DRnhwY{-hvJ%S{_lwwL*Z)4Fa@;wJ8=h_jVW#+f`|9hrn#kg0^b87a zo)@zntr!xVH*o}*FE1+ET|qy7gW8M|KN?X)jhDsTA{UR0g|Ml37;;pSfWB^EC{cJ9 z){=U-5$eHcm!v=b;=r=a{3!ra(S&Ki+a?w$mNz(^UJiQ#QU#Kx?Rya8&!0MdZsmY0 z`dA-Q)~UcuO*c+iUN9vJ*lBaM zMVL*RC{Sa5M?f%8?KGA2mTuqn0)D}TuJ2=ItFXmTy<>1CDXgi}S&U@WGGkXlrx4h!!&_}X zuh-~19SmR|azFI7Te4->h;bi5ep5-OH8->B&3d+bL5FJ=`PC@a+mvrhlL61op3PPx z@AHBydO#?*HBC7>(YWFZv*?XYWFSB3J!QA7TfE|nuLAO49YD5Td|E3_A{0{TkuK4R zG;*k5OI=jaP4*wu#8dN3T!O;jc_m_!tu;LxOW9ZkfyVod6d4F`5g-xb1zyCfolO=` zPVPT_zCAPIX=d6>iYNVNzu8vARWgFSW5Jf-M9nDY(o1J&|rsg3Pq)7_LV zGtcAuARlC|K*JH8!h=?1NU0+N?_kH3c*WR7aL@~)*DUD~Q73GB0TQ?Ir ziT?nWeg|$X4dt=)!Yg2-)PL(y4HQk?ib+$K5yR!pdhVBfD)AfDsXNc@--rj1-rV^h$5s@uMzw4T}R%);t6>}$(w zs;k|&e9f~+)?N2BhU@PUt4v{5D)PF~WT#OkBB)u3${|_Uiw*QWZog;@-FtHTt_rbi z)ubImm|5&JiW&Bej+U@o!=?RU2e*;1vNMe5OIgh{Z@QW^>~>ntw|-6S9wTt5vYoY7 zf1c0!g`@C%W8Z0W-1cAz%rFK9)#61jLu$r=I{UDwTk#i8SR3u_&}NA&X|~p5gBGZa zGaVI=9-laa2!ZAw2tLIoF$-a){p{j~q+QM`FJ{1z{0TRmoMOO*w-I^m;9-42dlVr# z;YW1r!t?w)NU#}_aH`b(y9UHd=LOoUu6uO0 z>I6y$%Xll1$?9e`d9$?XBP2{S3t_+mI$6wRp}8$N*lL(|S!O3fT+c`vx6*Z=4JL=# zj<^lSZypwkTNI41bTf4~WDwM$4cg7H=_b9#F3%uJ3*TI6^<(8FaZ&Z6idR=cj3mAN zaK)c69~*Qy>roTM_v@A#Ae(P}R|RYmYNFTf%o5P*-E?Sj834XX%!z9@Dq)dWz&{0#@N0PC$KJhwfT02&iSgA7%QZ+s(kX@@_4yAXIo|t*IQ|}oUAngGZJ+lVAAAJvY}QpIP{COY zc&FOeKN4#NoQb#|O8dP~ph)Uezu2dQ8a<5UH^?cR=aO~F2QA%oF@zG7C}M4Tp-cbC z=t>A@JU#bSoKtw<@%v)#wpgFoVepSlh5|(d`6v*`re!2Rl7kNBBaz*bp78qJO2tMX zXYyA~%WR@fyy{0WUy~L$%~Mb6$sQD_DDo)9aO(Dvtaw^dgu7*onnRgTLSpw7yu=1HQW5PehP#&=I$BL( z6v+H7k{dceJgnlRk}c{zYj|9i$A5cu@P@+YvFrDY{-G^mzWct*@cQ+c(QcXNF~E~C zlpS$IS>7B4rxqwQQz*TbbD#ixGm)d@b^olvucaxzaVRXk;QF$tZ2Js0IfLQi3J=``m?v3ld%@4o?@0J_JRY)`dsSVm_26Cd*-GZD@@i*W zM&&UnWvBL#2<8f6(4vcyKnsX7?N1ts5FYe!OyOU#6iOC}ZR_dip?Rj_j&$y`L@H*k zTQFg(UE^2Vs(dX$e722Cz*FG1f!4q%p`EW#5Sc?}+H(%}TLNhlNg_4KwE>dDCY$HM zBS>3K?wKXrsuI55h@_$l8Z>v3d3Dr5^hAwc&wD4n&r}cuhgzM7z5YS%bazExN!g6m zrau`#_<749B7tQjYe|f{H$uG#RvKeUMUurvk?ZDE&RJvM-UH#xHB^{{Dsr+5L+TjJ zm*^gW!--(Sf6tFl5N*YiZKWMAcpjj$7^ak#TL0>F^F1;~s*MKIAVxGDXF-M&>_)a= zJ8{YXXlq6EzIA#aN1=@%D}P~gYAvVMW`B9Hv6%SktT$+a@Jo0B0(ZjGqPw>jKVVB| z-H)`Tm5MFNTFdJBk*!5`Rb7F7gdhiVgu@RjEa%AR+rR3vwYgV-N%- zx3L57^J^Z0a61)(XNM2w zr(3qE#cwUoh}DPwVFraq1YM^Q!S7}No)KeKZQ8fU)6<59l%)f>0ZBVKQdJ1ZJmCIk zV~BF1S4biFbXaLLYJEeWse4&^98Pd{M_^yPzeB^C2Yl!50ep)Bsb1jm)-X4`b_H0Y zi)P&RbV22>(1P~Y#^gKDY4tbFJw!SB)^+5)^Oa4h2Pk$^JL;LQUIBS4wv6p=el_P^ z;rO=C3^#1$h@M_e&m+g}{R=*)0eFgMOh2`RE8xEK#~~cWu$aNp3Q_tyLylzq3MJAX1(h z7HRj5gCaphKHCHJjl-d5Td#lPo$Kiy9GOs?;7t=j>!;5y$G=hR^aiXr#G4!#`7w>FZO$N$xnHK`*``fYt1T{Y@0S> zz<)Vm!bo2&tUuoVR@EUcpD-@-QLR|1;6!W>IlJMy03lKBpKaa=B*aA03Y(89 zluq`cIs}Ghs-&n~yGxp;>|wfZfOV<_Z+ns{S_t(DFjc3AQIUdbS z%D<(SC>zCbxacelFt%QrOx1iO&oX5G<@Off(ShPN@%zZnr0Gw|`HZ_xe?Ca@{h`1u z7XO&%(v{bHwnJ1?IOhl=$lgR3e|XS4@0^0GnLZHWOSvD?`wM;@HuzGQkWYqf*tf)z z1t<2A`yT-Td^47*&02L#Eta+hU*%8N5(;d6CVqA-$PT>&K0cE;teQ^dB7FzVJ@^-F zyQgb))D&HlZNoRX1`*RLD_13u0IsvJgU zOah_!moUGy<24*u@Uj7M0u25r{{@y2@+MOmum$V6^Ri}`Va#-(Ijo^Y8DeY1QDyP+D+Si?s~{{8 zvje*t{%_p>eJHUDi=`_zvjFirU*%1{UnhqCg}knK2o+ryaPr*8PI+AE6=DpxSuR8r zXE2)YNOv)WF|MKr{&hzuDFfH=g!wkPee)N>6A(Pj5kY77HHjwxjv?S9{A1 zqX`rC(P;4RZJzS4T#~pVKpDW%!2RNC>i71$BM$$4-xd*8G73wsw>?%)#(K^=rdPu5 zYmBc2k&lIbT~*^_Cr6z=?K6;W@HNSp)m0Xd6V%j*gp(BeGac(QZwJ!)2F{)Hx*y65 zTdvP@VTX)mUQgI@?)02lI=U_S$S}YRQO-stDjGUN1geRgOsj-ys;5=T^z_| zLcMzr2m{^Jz?c8_yj+=NunB)wJ+s5;XzJw#8ysxjXi;%Y4`Tm<)xaMot;_+#^y$0!_yNcAum^2f7_soBDh`03lIG37OeWD1cP_5FD!EQ z_1q~jAY3dfL->QMupo43w)x!db93KZ$7janl5JM?YtJ{gX|Yf;WV(ae-n4egtL|6F z><28mMeRGRlWuCw&N77DDzYT_XJn{AdN<-&nI>Kab&_f{yyMUuDGmYsY9*MVLK5Ka zAIFSH@=EanYBentF&Nk@?g62U8L(phx~J1R@2pciIXdc9k13WGw;lzQGe@!C>%K45 zumGSonH#^XS(P(KzHLcw&v^|iFYn#R^gHDoT6el@Kmr0NfNcK*ZM7alrflM6aS>@K zHvBOh=dmW_sf6S$Yt2Grb6)G+`@OHVJM3%o?&1%}Vt`Jb-;)-5)q?&DJ2!uHfp$1b zvg_+zwB;Rww2Gc{L&a6??Ce?Q>?}6nyy!wZvopRfVvx!yF$8e~&8*orfRZ?(3rJ~S z)6KD0ZKwJuaikoS5HVYiF!_ltl>u_UnU);d77>%08bD2qX4IFaK91!kNlK$0FpJOh zYUz+vLAL(@LtVD=3 z7JSBxeRR>F9#iMRAOcE|pfbLKU2>lJ-vcUGjne39Nl_e}rp4rOJ}9UNQ;yYEY5q$L z^(lFMd9A=>pa{sOC|mhsgkRb2(UEavkH-3h%yF{t$~0`;LRw4{rhzSHfi3e`_s@%e zsms9GDYB6qSno<-jnce&OGzX<*qi-oNO&x}hUomOs^~3^FS~&9h8&U%Zp+tW7rD$U z0wa{S+Q_N}u+YONM0T!Sgw$Z22FCO`ve_@b#<7O*@2aL9<}+X62tShb-wFHN*}58y zS(*-&vof6jD6Aj(drS9a=|!#FW^|-hZ#NHtAYdgxrpK1sD9PGUtIpab?sChSxctfV zV!}FX*IlTTL6_rkUMiH%>`*ID$Haok`DNacwg&qqMo_^&M_xOgd2mMNEi-rQoz&8j z$w``|yOR5=XfwToD)8LWh%I3&wNv@)pc=h7A7zrCayGd(9mRP%!ec&~TFKR59ruJL&H9&`NlnDPb!(FO%LirPKa1WbFr2^O$E< z6EdG*uR#(aFG?v6L}iCc#=KuWeJ~{;xewcG*k9N5k2VvSCO}x*xY&(NYNgCgPTK7V zfjUKc@vJCH?OwhjRT(6FOgw>2@LyUbC)w(awHVGrST!6#lIdLM28;*{JN%C>HL|_E zsh2D-=szvn?(eT@jj-hbm>FL53%dtug-MMB6PsfPy2Gk+)45Ix7K5H|e_LMnc;7w3 zq&3zyBmtW0VCIdqDAA3yK(HO-njOBzxo5ahluITr3yC1VclUR+(@C@$Ci=QmRG zlh4mIR|ev;l4y$Sf0owQmyRn~x7N0Gvo5%JnVgDww9?LM%{5-&dj{9RG$84#g{Kuy z6KWMtnSA?r)Y2~anVFp0DYQ1X@Jx6zDCR>~p&lvwS(vFqkg129`$EKdX_gnZ6hQud z*exYd6_q6w}C(H{}$c8|pK z^gH&h7_Mm^j;_<&SI3>^ot8$l1jV~e!YnU9g~q2|gcLlhR3-wa)udhAjN^YO$oPEU z{n$g8yVxvyA4u7C_!{NNDrt+J#K4G}5baJc;&EG!6f zOR9v>#cj zoY|Bs&r5MU|2l`14|pD>EcEIV{Hq@u<1ThySb+wL+c`Fc8a9K5!^5%Ekua04;h6cQ z(?ZRYyaqT}=Xuyu&)ziD!~C;qAU-1kvii&d)rWOuX!a|QJOmU39dEnZ__OWWZC8)7 zMA8Op6&RY&oogQIBuEzWg-H(Enw3j4|4t}y+l0hcEBiko0rqHKSa(KT2cPCgd}XNS zG?)Pv=Kn7b7Vzmy)I43_t;sOI(WDY8|tpSrLerj;P=UE z-3#-#AwQv8DHFYoT=Tg>d;`2wt~t9={x$g(^Lo&W(iQtx#ezFoy=(m0dXLSmBZcHa zaKU8S;2?}cs}%@>NncLi=0RBmf_(8I#afmC_xztXka_hFTh0CeduYgJ(7d4hzJxTV zCgONoe{;9J&Ouj@jrN$UucdF#x~<#S?k4V%x^*V~==4;N-n6Nv?&XpQrI=3q*UXRrEcGr*hjaGWb`o`yl|lIYs8>FU{u-u>ZWUw_s1wL8{KT>QY?-F6f`KRq=@y!GbLDDyx1>GglPr@DzAY&=+Hxy)YbF;*3>pbv$SK{6nUD ziK4Mv%4$2|o&cLU$EDX_s9b5A|;h|`Zf`bNkJjXO)fytAQHfhY9uP; zVStM`ma?G9l{5_s_bw(aH##hdu*U6E%JF5cn#Zl6C5XUVZZRv+5+2EfHJH78tgY-N z#0~U6ynpt@i4*5;zWL_$pZdVH;<0z*`eohA4j-m}a4Pe2bOC3%zeGCmV_<{EbUh0| zEtpM&O;P}afrc{kcpe+cM$`)M6F83w0QK6h-rmydAmR1wRv>x zi+{2mKjwCtjDbjKWLbsFWDJJGgUdmHNhl*KvWw$z4!CmY6aFmqR|eI9s06ZsalOQu zTz6S4Uldi-vY1L7lYer^QEoRIFB$EFv3=Ew?;Me1M)|v$QT)^c*)L>QLc$0VnUhBz zm5`BOVs0+S=OJ(>=hO_qTZk5a1cJ2ZkkQM0Xi(mBAicYezKAx{f?r@S+;}|mz%d?E zKuZi{6JNur3D#AiNfinNQpAus+K1hlCwp<<-oNd5=CQqyFD)=>l}Zyx1gP{A*wddm zhPUD?Pd~orZ+rd@NOiu2sPGu5n61u_1`9}VBpa?Y;7hRDscxivv`=lh?+74t&H0Fx z7{Ccz(|S7+ET-xgfe`LtnKf;?d3TPPOT~qqxnx{enb7>O!EX&oF)NtSkh&VR943t% zAeOn%kdl%&7K)Y@uQOmW=uW*|ZME5|b?2U3Ia}t51tLagcxm;ja`KnVOZ9O_g#-5k z*T8>>N?!fv?+B&Ue}K1~^@9Jf=dlsC;y>{M6wA9foIi(2;Xe-?nBKQE^Y*^sV z;awy@-;E<(EYI)-1?T61^c4+q3L;`{uCB{&eqfx-P{A?^o6+R%cynrA~ z%cT?yqqLa?S&b&6iTYX=UX?<5fk2VW*^m~C%18z}qa3{;XVHl~ep3lLe!uu8M^Afl ziAL1-H!L6BzAZ8xHkb^0m3MlyX z0FjV4=8LiQr%&e(6f!_Uxr<~VWjE_jDHbNTZXWbr0#edGh9MJ8wLS$(M?S(5t^F z#$OfgTC?FG@W@!J$ryQ=+pY$9Lt0ybq9)>Ikx!BC{jz96pa?Y}sx*q9%af?s^9F1Q z(|46*hcwg<<(F85on66f5P-A6Szlch4*EQj1p+OU1&bH>a9td@#ytOQx$lc4(va9a{qyQx-7QV;^IWhPDf|`=Cw2107S6CH%L3zkQ-tUhwnb*M^%B0v(&3m zR8eh_-6g0gBVq z4U0IA1*@woE19ON$_|bee>TdnV&FNrpDq6@!!wT zm>8kRhexmJ>$_%T^xFRZYe$<`H8!qlZd%pQu&QZ~+c7fPZt0)aS{f7N<^F3&hL896 zA0HmMw!bU2uBBy7GP$OuWnHRyg)>}qaPww#CVK*vtj42rA0b8LJd2YJYdAP3v?ikt zy`Uyw=dnH(;w$q%kqNT@77zjQ@s%u7x(;e9oHk4LxLy&aKM*yolk*k!)j^wC zXEv8x``RKMmRN7?V5Dh7mEEK>Tg$DzZQ-<~rn`19nt89+?68>wE|cAE0s?*bZv04g zgzn;O z)Ze#b%h{*iOtk0EV;kchk*o1xp(}UZ$9bOk@E@zbN4~mt;$}d2f9Bu#Nhk*c)TOIc z2&hE?%DBH)*0Nu8_~j4kbj-4gK?(t>wjw?sZ~5A?>(lC7aAnq>tH~_> zR$#G{^l2?)c8SmjtSOAgWk|)@_TlO`u75+*Ew_;O+<9lm+OO^p#ply?bzWaxo$m|v^-E&s zc)YdpJ0Ltq4&m)Q%41ThONmVB!mfO3Q_kU_NalLw?X__#8&7jSjwUPdZu;yVS3Wxf z1vTH@_Pr|d)kC+8Gl`SrZhV%^QHeyh76g?CI;+UBvQoX#8ccMQ zl@=BnEx|+@*q9=Jrcds%yixb~AA{c!x|WY0<*oSx9RnYi#sK3sX2*bua~b*mIgY=j zBcS<>>xJr$si}?|fxve1Z+uy}kB@<9I<#nK|8Mm4x3QjHTg!Vodnf;{p)6zes`Yqk z+54s268KZAuylO+K_Kux@-2Kq_z|lW>o?_#_nWTQ?l+56{gV6TU9{V@4=Z}jk65o6 zO{Io&orVKAnFkldX;rF*~+qP}n%=XM|+xA>z#+Ykr4D+(x*DY($`4)cX zCxCQ7baX{?iscPXVC#O@rJQXK-#d&UXlc$sRu!ybf9`&4) zeC90|xyf-ha)x7EJzT3ARf}rJlQevA5}vpcD&2M7Tl)CrEqll&l0vdrOO-ez z`*rSMLmj#7;UWe&5RNlC1d>VhXu>XxapJOw5Z^}?kAipX<0Shfm$Q{m!?nENsrbYr zNlg~b4Zsb{4x|q^51bGX5S9@J5qc4Y z5s(p^5vCFh64w(c6Q>jG6ZaGX6b%#@6eARc6vY)36($v_77iA{7R(nb7d96`7fcsd z7ugr&7~mOf8QU6X8u}Y>92y*V9Niq~9P=Fh9SI#h9giK>9wHts9ylI|9+Mw7AF3cJ zAao$wAzmS)A|WEHBHANcBfcZiBjO|TBm^W$By}XhB{C&+CKe`pCY>h+Cr>9{CyOW8 zC|f9vDJ>~HDQYQsDTpbTDW)m4Da0xFDhetrDp4w>D&H$ID}yW5EOjiQEh{aXEy*qI zE^;n}E}bs;FH$dcFPJa5FW4{nFd8r^FgP$#FlsP^Fq|;FFx)WlF$OV2F@rJAG50bn zGE*{BGOIHiGk!D`G?O&~HAgk3HLf+&HR?72HXk;EHk&rMH)=PcH|jVJI43wxI9)hw zID0shIJh}XIpI1NI;cBfJLo)2JZe09JhVK|Jr+GkJy|_~JuXrTk{;8LkBOx zxzzI-oJVa|esI2=g3Ia28e)P2_SCg{WQT2%+R)#Swm9RQ2QIOSeWQsd)#a{EzpX*N zv>08nV#jmVu17nLHK#D8f5U0aJ>X1EvJvdE=UDAx-0T+iuuL1HYRbqZ8!`1%jj3Zh zyUn_tK86{0$^>Il)W27^zSsYpl-_e|?3lZH|F`$q|IG6>v~z}N*RI&I?m+)qZd2ah z^UUa;`FSVJyaCV0L;iT$T){&S5DF9kzwr$&-Yp5+??e(JfdmpNaV&QYO3X)L53I_i49g;9d#p#dg@0~!!$75NTZCf(r7z1^hP6%H8D+7&5SY5 zcw;r!LQAc@a!Bh)W~pT|$|SQavdSjA9CFI#h)+KI63HV)q>NONI?_biNEhiNLu8Ch zkvXzN*2oswBS++nT#-BSMBd0JwLhIUMQ&+rmdI*Jq*uTyiKUQ72LEWIoj?2~rBsnW z3PiyuWVc^2sl+HBsDK?tPY$>iyb4ob~D6vnSTr+M(SqfD+|9_|+z z^zn8-qq^H=owmk#YucLD%=qOWS+i4U(<~TG0{&YjOTM-wv>`8;QS2?i~Nfoue<( zg2Ywr36bBFv(0tImw|8|O>p`rCy?U^BdbHN2 zmb9W$K5iYY9enI?jkMAAF#Yl-*1ehAU=5-V_K&0Lc!@qks^m8`tb+qCwkneBktcf~ z_A-=*$x}z`IomumrJ^77s|AxK#}3_6Wz#P?T(qn!8G2R)$@SO^Zw+JnqYhf9E1Y=R zWANU=a3UyTBO_y9Cfe{-VIwCeQr?_lX1MzloG%zr- tICLb3M1Yh;0>O4m4pk0ec4i)}9gP25H?Z_>WCH4CO>qGL?42jy006}@7jggq diff --git a/public/fonts/fira-mono-v6-latin/fira-mono-v6-latin-700.woff2 b/public/fonts/fira-mono-v6-latin/fira-mono-v6-latin-700.woff2 deleted file mode 100644 index 6d7ecd06daf0cfe4fa21ad506aa1584dddb0ef07..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17864 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 diff --git a/public/fonts/fira-mono-v6-latin/fira-mono-v6-latin-regular.woff b/public/fonts/fira-mono-v6-latin/fira-mono-v6-latin-regular.woff deleted file mode 100644 index 1301f88a4aee9d4cd681d407494990a92b36c853..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 20640 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 DKdF1G diff --git a/public/fonts/fira-mono-v6-latin/fira-mono-v6-latin-regular.woff2 b/public/fonts/fira-mono-v6-latin/fira-mono-v6-latin-regular.woff2 deleted file mode 100644 index e81b9f3c56ccc92bf6b0d80171fb29cdedcc6de3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16528 zcmV)0K+eB+Pew8T0RR9106>rc5dZ)H0F4*`06;7N0RR9100000000000000000000 z0000Q92+1Uh$IGJ0Fyijff5Oq7ZC^wfy+37u2Ktx4gdi*0we>35(FRxgKP(gW(~u%(L!{+kxiuwtnB)2pcvIKpyX9qY)8o9FR@m+u8qrPf%kFA8hwfxwI|EE)ZR3 z>Edp%CZWnxsH(ar9opYVtx92DUeOuTxykzS=q9Ozto622qn{idi4b0gt+$hFgwi@- zrjwC7<8bG{k6jzcAR~pb^N}+`$%9k-PAryV84>@o&SX`EedG}uyC#?PLH@Lt{B{6S zjBrOBB=_hJtbKhh?e6zxW*4}_=t5Qqncx6N6=)P3uPC%it9ATCw!i-}Q8h;P>;rIs zJh0>Pj0#X_G@eLB$QY4|iYHRJ0n*KXtQZIgDl=n|kdTmsY{=%48`%TG4iMO3h=DDF z3v}aNDAfO@igs;nw=H(7ukOyJQmAQJ|$ zEMi|4%NZ&Onw-^?6m`1lWxp7Z`u5A?IC()JxL>ilvR-(^%g?DRo!bP3O{WpF`=QtxQEbZQ%$5v8;Kh z{%<<79jzUp7W`Kt!THelWNQYjr#mk=pEISOT`&*t)?&tcS-+LLk&s zdn!QL&KQ$$nKfU1e5A~2KkXX~Y_^o90*ZoyQdKO;+rPW_DhNOg000!lGZt~53_$=Y z%vd0M_9bRQ2@e3d8~|X^;ZG|bbiBrua|4@Tq3~JW{q>}zNrRXuaX>2wQ{t>j)A1z%rP~qZM$-sd`DagWg}FX56!xx4{wLQgZHqLQc~ z>WLyv#y7(z6M{>OxQt!96xjigDvInh3sB4_*>e0c%Y(fX& z2_kA3GiEiIVVas_DfIZVJ1O^Qh!&zA7UM;{$!Gz43 z`LjqiknI!_p}t%WP{+9Pw>AN%@^D>d#LQOrli)r78;}NoTnv5dC!7GJ?*Qq2>9};W zR3~+po_xLd`Vt7h9uVy|kcR*Oe=9U;GhoPwF$_dWK&6F>aZ;g2z{c7hQ1EEjOqEpm-Jl04o9NjZ&jA zTmp8uJE4P#>`m-pR^DapS2hl@W#?4(w&dV_j&|ncQqK0};s{rM#^rBE0S*`Fl_0@h z6k>m&einu&Tm-cuX%72>Ous7kFgbs7|C)O1S#G%K$~y?z^@GjM|@4K~b>4R=O0!m&pB-YCZ# z?P+V>Yn?rma~{77RJus9OO(4zwJS8b zO5Zg%=ya30TkbIFF0JkncYk*0*F)BO1cx58?TNQNW#2PCo_oo&S3i&k=iX>Zx(G|} zgzi0}`XIcIBKst|&*J(b)mPso^+Ud&e#`EUg#Ie)pKAZfR78eWwY90L-LpE>)M>CT zJqFZkM12~PpOI>`ko6sq1!R8*I08A~L|qeo59>AQ2f*H>9|1bq1RZb@*rXdS0Gmbg zZnzC>5iNDVO<>D9;0CZ&9k3nPIydYBwjJ&0fNQ|^bifQ?cRFA*u$LY12!!JuAO+#n z3ykL=jVM4-Ro*_JBY@oTKVVv&Y^`OYU?hJr`ywz);oSW4=<_20k5GNI{uBiZI1Ga* z@@f;|-B(!q-vc8B8mDP4p(tZbmO5Q zVjdM!0g}jQH*?Z%jfLqL+rz?PdO%G!4cr(FXg51CJCypnm*nNn6M!1{YgW?8moIs* zpTX|QRiH3rl0gw&nJURdL6J|TTA-;KiJ6Rg`{kdT0Bw+-0*s;%1xaHncLBe?7_3nn zuUX6pan-a%?lO8EVKz*_4yu>5@?r@eqvQ+T!y)OHim(usM}}+~xGkbv!W6S&USq<- zt0T&CBSAGH1oBIPZkkHx?X&_3?L!L8bwqSg zKf$|d+T!OxM0gnx7~jW~wlom9U z5pi5Im?Tcu`64rN3oqpi2@R^iFiq``dMycd=aYa0Qofl_aPpXs9me zNC*b%5lkcn3)zAPy%D^qA@~>rYEcLE4oyTm($k~f>k394XH)yS>0^3bdL2hUi;Scf z;+hxKhfO`#GB!5GK-bi!H2qFBDK!YUV&jZKr4-NV8)CUHsy3W+F%~PZA-Ceu3 zp2X>1yu!b;A&`nlPw|;F%Dtk@i8u(2v}(=Gb2djXL^ENocups|&{Vb(f9e z@kL2^+Ab`0Sw%`4)aK%4Z^|;w4lc+Jzd1*ohh!zO$`y17GK#%x%=m=Xw}8Rb<#;-AV&UyrrSMzJJwwNnx407s z(&V}TkZu5=g8-QcntuTO=Kyyc=oPSi1fJVRq-_Y{5W>_TDV!khE9Ah>oWe~^y+fqv zRX({=1PB4-)c_CqqN%lBG`cS_Fr_PHuiM>HLILIsQb*zR90n~&&TamcDnRbb4CJmr z5xQ?6hZ6)Exal~N<`8_4t1cfEK)jk!nHPIeK0YNPGsb$OZZVCnDXTKi$fktQZYcXH z^;nXoE-f8n2g;PE`2xBQ&P~p(kM6&;nKLQD7ai-6Jz%MDbv5?3zdj9iCcg!Rk!5uB z*{EQw>`7+9VB@1c@t>FNjKS8&a3MR5ngE*!n~OCQA!cgg=@etD)o6$n;dBeS%RI9Q zmk7JnU|2$Of?+y)trS9wC8irTkPS=?#k1KUq=PKUcaH>>vB6=nt~)0_(@tE`j#+0a z{8<&nJHupqAv=O9+BwWuh#5&Ex@SeM9XcU%Q_Ud380zBeX~e94d4NE^C;r!gcp_41 zdYU3L#tA_uEnnt0sZ;SqtB~o$sK$y-)~oppgId$XrTQ`ML_VeV~nLbMjLe zsX>nS0QpQw(M<9Pg(v1sq19>N+aoJz5a&{9A10%dlCtEm+d#)Gq*O;7WtXF7P87{#j>AaVEmdhCu9l@QTks$Ve(7P3TD|9jtC{ zuaVPLqOsE+#g!tGIN>SSS!x*!Ck#+!%fLpfjZ2|TbWu%KCJvCP{gh7HGurOwTEI${2D>m%g2jxta6Ze+ zMmzN|lKR9yVh)vw9P1BIe+cz?HPU29rC!LjgFZ* zvwo=!jt9*`MnEWFc0rmRIM9)(7}-EY4KbK56Qy1+OwU`Bpsb?LY<&#ZnYq8}RsyX*OAM#GcA*O!yK5$2G7)~@#K(O zDIGPHB)v@FVxw;fb6%}WFc6@#tq)aRbivf@VW8dAdSb=)e%H!Eu2S;G?u1!@axjs9 zt_r5<3JOkF>XYDX33*Hu&VmO;Ir=a&Z>dq{Z^p8(gfK3MUg!^02r~5KZPBg2OLuqt zFuqr}P`d`Wmq3eq5nMO}q>K@@1_Cq6EB9-f&7j(*^^pWo*W2`dO^Q^P!j^Ai;Dpmj z%wY7J1;dIJq;|gG9j{Tln$y?UOYN}Dhk9lph1l zIOz#V1Gd^N!_%+itU^CV0t1QaOv+Z+6fUN1Ocw4u*U|{S3ty4@Syep0M;<#r%@wds)1)ZXb==GUBMjpJPa)I4J+8S z<|oYtm~SJ#g+M9Ti8{b-@kY;ce9%bUbkb2vga5MU#_PWlc{OH;p@TMsg;Zhb4H$%N zIM56ggF7At-~Xd>@bPF2ji6DJw&W3GRC%i=+<=CWTSDDOL|miC8TKN$wHc=p2YEjV z(E5dlT{ACX4J9F=&Sr8j0V?4oSTxXPZ2>Aa0C`o?2*?Hwc;=*}3Nj`;PJi8~Wtpud zpoG&EtB&TcACBzm6**bF8SVDmRLfqIayFyGNz5CnD^+Ho^Lf*_k%S%FG_>n6n6~aA zacgrI<$8;7+**d0zL~xsc_Z#)!;&+H1d`cY;EB)J=Rd4PRBSnU&MKYc(}LOI#iOOA z<2PERl6D5V$}MN(Wa^Z5S8hRwbLL+92G}t~0l5zp=!a$$O{hqkjHRY<)DCw0c;JNd zwU+>)eKu_CA07x_kOC9utKd!YuGa%TOV8Iupqw~PQ6$)a$m1lhK>2htUzOks{wcSD zcA|{)N@7OBCP#_c!WtAp_uAWKwFn&T%ibocq=^2@L0(ZK2V>`3i*P;L+9&EbzLYt& znoKYOPar^-Zyy8{-5V#B;&GErOUCOqK;9gpB2oDVo^Z;la7)yXGch_qDsG7#bjHOD zquwf57d;$e1h^}MHj6Kq7a~F3BgWoQP_N$R20j^3}(|f(;Cb98_lFe|3@4~_GDP?HErY}4hYzc zQZZB6j^}Y@E)!>qgF}xB)q^*On<>UJ67k_*$peS)1nelpCPp~>_N2>&xy&A-W3w^t zzV4<5>^aX&bVmA|8p`4;9@dyYfCJ?6wrf{YKe>D*=_+kq1FV^j{F9tjwe1S5!~0Gt z0*X&#VF;vDU)eC@MS_(`QOe~fw+rt58ohPmr7+9KN7i%mDs|2f47Z|8eDJt(xz)f6 zt=x2L5W4ev!4qA|Gd7;SXzYf-YEMS{l}<-Ef?P!-X)pbio&2yo#lyac@xq zumPk;(%a)mxLFo2oz+Gkun(zAS%#R4k}gu!3p_*Bx2b%4GOo|G%*6N(rX&T6tnDG0 zuGBihp$-6^*h0cE(HbHqpO0?D?5?PVDGmwQXh{meQpAj1Y`Zz-B^t&nE4O-l>C=iD z2X8GCvl0P)C*cUx8AO<}0Qp;=Un9Jj)Mq6UgE+x{i7#P6T$+F6O>(8QvD|)%N_ZDY zGwd3ka}wifxM$!=xGuY@3vB0(oQSr!^Jr%$;>WM6-PzuGIKcws7jc3mNUY=qI$;;G z)Q11ugpSID4k?R4*}L!ma~I)9JKm5FLL&)Z9a%B=56}lxDMcp_mLJ}G_v#1YA*^dZ z6c-p8{&t&xY*y&{^%&R?X6kI+U~Tb5_{6XCUNO`1vvPwY0Yg`p@&v2i}h2`(QrY)l}lRcR+jKPp9&Op}1wpbob!FdZpLnSJ^aCrtfzf{C)~23UsORJ@EZ$^dP~qT{I-t9ip=_E z(`Ld;739ulOe`&FHd-b;9?Rs!M(akm$FgyP z{HR`Wq~&nZR&!5KBE~d&_i5$fR_uMr`HkFSOsDte?ICnO*_jl^dCZ@zUoqy&SNZMN ziT3CDAdE(SmO-eadvtpip8^cYI!AuaM^)z=E;Xoi(lt{%1xdnoXA9^ zFA$gga$#_Nq@mQ{g-kVhl~yn4qP?J~8eH4h+&R$_s~Ymn`mP9?txm{maqG=o)@|(p z6U&h5G+>M+v>bPd#ba&uN)I$fWQU^xXKeNJM}v*RR)_8XX60j!l~kD0-saa|WrXs) zvok{@l@%o#lgv>QSGj3b!)(lmBG@jpnqr*Ga#tx`36*HnwEY0>P%EX`ZxIza!W<3M zkoRg4qAF8bL_*RZ2AVdl0$(2pFulIoo2GrBV=^+ew1E@iFBj7|eCy6IwD&}VcE z_*Pok((hGDGp@CiVy~zP*#CK2jpS90o85+@!kRFG#=6J)va(Z9L9tVUfALrZt--QH zI?e_j#1tS7pV8Iii4?FSCAj&5G9(9(0-U5zfC3&LW}B9jUR&g0IR&?_!#hR7PAWO& z#m~T3elCLH@=YUs%{!}0L>jO0whK+Wycwyht5w&jnOffJCAJUfu_-0U?Os}$Q_wZC zwcjT1Z`E094XQDS3+mkU;jp_(FW&Chx7b&;v}rO*`lf(EZuc8*%FzPgr*Cc>6QI{j zd7PS>EkiazUnx@TYe~DD#lhdXK)u>j=t9}w&#m}l3uJ&2D*b zgH{LB$rLRXy{xrTC970GH?-lWthVXQl%jDPOQ5j$y*_gppmR2bd8fC!eVRNVOIK$u zBlDvJ+xu-reRT+26J6hvompjnVDiSh(&C(pK9%h5BM^T+v$)0A_;jN7^ij{zey~5H zYx256tY1Hc;|ohzCH6>FDeuo`9;R}Ualgpel_KnlPEgm z{>GJ|`V{&8lO~E_Sm$GXU5Yd5+!hdb1pHNxeu$lPt+m98 zKE{hCcU$+1v@FwvqA=Z<0k^vtf$CH}%J6L&N5nKhaXpmBrdOn6&<%UO`!`#9;VY(B zNbIi0X8)Vb{Yt;Y@LN_3ZwG1?j1^Ds#&&KU?Cajy)ZC@(^mp%Qh9EFpU$3o!VXsAC zIK=trmUO_AU6lyt#^7|;V7Y9-i?=UX$LKw92D9&P#*I-`SKl{jV|x}Cr>pl<0LjGK z*Ysy)C!m5trx*$Tk@9+eOr$*yl!Xn6rde^JFMT(wLndMy)3M* zpL_ddYaZvhgw2_YD#;@Fr;?%>TL?w;w_WI^Mdr|pX|c$z@@DXzIz^3&rQvj-Y`5v* zZ?SulpN86(#DvpdG-}c`t_hcB>#{yF=m(*Bmkj1IaLa?uC0RZI&^B9wEe=@#rNi)| zFlJ(GlPAlKK(;|ksLz4??~ngTTtU~P3LB71{ByJ+9V=W{pGX6^Qi0vg6qy|?+@mbf zsD!;ZHGXiKoRfU>*yiklO&dIoc zNeb^J3g>o-&KKlcc-5osWqK6yzhFMkWVV?G-Ee8;v#G(U7k9kq$9F=*hT+b#R1dh| znyR)=feVgcYJv2H%rn2&ta>T-QstSSU%=LG{(AG*jLN4-!N$f4bh1`|r|==+Qfgr5 zjqNvllpl0x-3UM%O)*BbIitLeM=m}1O4e@~^q)5D=|xC+kV~)Bwj*^4qOH0}i)pYC z&BQxv%#2I6}#u7m(ERlXG@E7`rQ8#wX6lnly&PU368Z1DY;DEMP6SRmPLkAb zd<+vWJ^d=`MZ-%0&O+1jPoLjN@z%E2Lejd36zOm~gx`5!lgnlWAsPO%67n~z2A}iu zL=`%ttff+>>S>xj5>=jxme@_7BrKKM{M!}{{^!_a{8ABim(dAaTfz8=-g!?*2 z3@8-}Kv9%JyM&NoOoO07VbCIo1(q_mTxs1fu*G{AQ5-84fTF3ht60b3#KvX zR0ig^TQDpZLy$y5SX_y;@Xi-h+7~(0FKOVU>NVPteO^hbuF`VsNe-Q5f5u$!@x75z<@!MQ zbCt=j>ka4bJAjgm)4I&lTe5B{*#IBubB8vNbwa1~t$^82ftt@Betx$RJ~zDIPNg%_ z=!_K%I+dOto)5732$Qi!d-p@~AeHLQW6gK{K47NiYj|S1G55oBuBv_%Q2iq*%d@x{ ztgBnSAIYdVDk_rV^n+h!W@t4DLnd3WZ7cl)Z$3$Vx#!iZyFA#aV`HU zise-Ga{N!Ix%rOEX5K3g7H3c|le}U*?qXC+mis;n8h(|Nifb zSHTMOzV8Z)b#=A1x=N5-eQ$#TO4w%F7D}$%(9v48HMDff$eT&1fDPaK{b8?9 zqJxY+Z#dv1Bf8>RGJjm0Kk6+{a#!){oydoBQsE;c+d0@}%92+k4+?ZE+W0QO7 zk|yP<8}b`{Jgi3KMC)cCQ|<&~$SHRYNw_W#Pp)q9uar-ECl!;E{>hDsjoyv&&gXp< z$CdFXlmXcfo7I2S+)k5l-Ot_B!wTxs5=c+r>6>How}Pq2os6nQ8Gj4^4s)n zdym~b_d}JB+eh`ID5^(|t3K*|biLx!icdD7;;>j13vZv_nZChCsM~8SlQexB>Gnx0 zE?`Y=x}6@j6fl{W6p29gZWsEto2g8OY8f1uJu>X(-cD;XwP6;fW7ZHoTH;u*OG9xF zesWPuZ-`WswG?7g4O%vrtL0GjY{*s$KCBk-YRMF>NDNRMU{C->POE_puKdd(!j^6;(L!%GW4>0DJ zJ!(%t6Y#3NK@9_qM%%-t3DXMuOQz~hhCdRiZ_W?gxiXf0sMxN^E5~Y+6b+7qNH7+U_jQIw=EGU+8{=H08yycM)R^M8!4ybuhXo$D^_v? zak?>A>?{c z^k+T$b#qd2o7kN6i>*~u6p+eg!Km1=m@@QWm9u!l=PTa0%Hej$9KeLv2Ta7AZdgzO z@w<&ierE-UAQd35(`e*%S3n3;C-^^gb6&m(fB*r&;X9XEVMCxgpk%uZY|cd6gANGn zgki9w1BBsD5bW6NcXmSXKuM9fTq+ZXN(!Y?NE3x*GEv$6Q(f9v>>(B1^K@yAO~hs? z&hwU+qT;fOKW&@0;$=O*Tx78&6pTtPaN=N4md6GpX92Lm;;qt4dhY(bVUJO=)iS;l zk7(r#4j?%PXq#;IFn1!8u&D>Z@>e^m_GJ++Ty~KPQyv*}If#JIL5#WiY(p+r$LDjC zdk_}M!|d7`aB0hs{eZ{+lg;^)Kk)?)_XQUFEDrZ9)|M$sddztcsO-c>rc0agnDD3U?eVdZ z?tsKYH-~nvtviLn(CUUK*VZ3KWsY$|JOI_#fsZ@1aiZs-5t}>Y}IR)_H;%VJs9SuYqsiFXQ>AA-KJ}{>f5tSouYGNR>pM~H-bxREjw+9 zCe^5kPOsR3)?BYiHJ(o}1iI7Wd7G${l`?0JuV1IK2B#}uw;$mlg{UfLjzhnN%4F@p zFrXcaz&Z3~VAR2vHCmu{{>FNb3Lw9Yhd3A2d9pK`j;(n2txkJB2GFdY^ zxH%SX5>fNc$H}{ao~(VX4}1*wE_|Ynm{(IS>#~J4DKQk@ zZq0I>@VlZ9OPtIJ4>Y)a1okxo7{F`sfTHD`NUZmVpylpP@}WOt!;7Whg?T+tluV&W zH5QizM?nWH6Mfn`2KbCPCq&*J+={;kqGunsGEm?RWkVIJfbX&g!8e>cyD$2HfOXf+ z2xSDT6ti&ys0wQmc7#31rIa?0@3y)&V%P4C+1_KqO&m*71;LoxTlmeN7Jwq7eg%Md zPuwa>bajYlm^ewhX-RO2xk4GPz3MF2iRW&^O6#WFtBfgjS-V^7)<%&`V$Db^t(3K4 zNlNG}a}2EQ#n=CObuxw(+Pz$QZ5lcPfI?Av2VWA$T433dvVnQ4R*#is^jM*I76sh{ zT4Tv zK<()kKv)7&1e;+kD_67a(M1mZpmGbyrKjq^gtYEN4)QvISdIwhkwE{&v{cceP?3Ve zU_E=cL^A*s4eRyg+a)%4N8UUB-v{TSRqV!S%wRBLrI?v|{}wYUmtoa%1=iI_LRQ}< z#Z(ZrZyUyFvZ6|L;Lj{U=H*LSSfy4H%<_RE<|UTQip{b>?B1r<{j}K{ZqLgbHODBgV4V%xZd^}!N5#|2-aAFInc^OI5E@_s;=B|!%+k* z8*A!{Ix8bLbg9*$1fuOZzf+Dq1@5~OR3Jw+ZXHe(-5sfwcVwtDD6HOo~ z6FIii8Q5wHAw&>EyV_{$#4lc{T(nHHeNX~a6Pp*17zxSK0MJtJ5-S^_MA<7a8`n?F zKwFE{8QZ}{1kVCy01pi5RF>wnnVqM-?8Z(S8#M_br=I%Re0dxHKj>5#9j_iy!l>|z z=uq@*X{haWiUXU$T4xL1YFK~;>e*LFwkB5+pEjStAtaz@#`G1g0r2z&&owSYaE^v+&cil62)c66W@Esl1Nq&rI>#Fl{#O ztODeu+f7%g#I%(x9T;;Rq;}Fl`hO>~cZ{a$X^7aROk$YvXnXlIxSRoD2bfS}W8-6K zT^bRNz5W=n>rqyz>(iMcRJ%(qRwI5C(?&H*y2ap2|K@i6kr1{N6^pv2);Yg7WenfgjTm{w4An_rlo8drD! z1|XFQ<%*hw-zlG8B7H@7;~3EuZ}Kh^{!x=_``Z6-t*70EAnH;Qe~(1VP@97b0`0!j_MMfk~~JvE}}jbR8uGY9f%wk9l zHb$P;OGD<3dKRHzLjIJMG1NV3*C@GB2&OtE>ECcE;s%IPgq4it)DkZsfmLxP-ED`e zxY0rwY0J>LS;AM6gCh7a&v|9nF#yg$D=-mmd&zPSM$96_SmL> z`s)b)o}7u0D^OPVJ%VR4l%Q;1mYU+-jHc^_A%s$?xf2KXfpwdCs2C*6V}8aIOEC|m zb5ZB&evxsmZ>o$@A}Oq)vkk0`4MDG$O^4jHDFQk>385nHU%?suQ)-y!wkaDYT((b6 zRXpnI_G@y}FxH4>U^S~Y(%Eg%|Fy=ZQ=vz%u;o#v`sBAQC9eis?n38|N{jqCa1L<$ z;&6U?!uNch6!g%ID?A8LS(sqI%;T6mSX^Ny-B9if3O5lAk)x?i+;k1!btl}K5tN%X z+;tLtfDvSJLm|Z4=E)U1c0(}0-mOJSd5MMj6pAxM<>xV27=gM)41-B;*wl`=ocThc zXabr6r5FW|3ZP~Y;0)ix*7uUD#2sl~EC7`F9SjS^L_xVD&P_+(EI#ub?47j-pom|i zT@(&Gz{<;amryHoA-&5-iQ_5BM^SGDHrKrcbQmx>0X6j@ggDnnWt>)lDk;cayt-Wk zv6VZeohS4f&=#WKKH*ZMhd7c~gDM}!Ef~=C$~cyrMa0UDRLM?$yjc)k%^49M<2sMv z;`C&{D|1Sm-K2v&rbcrc1?4f2<_f8$JC{IYXFcJ>(K-9LZ(|e~W=sox90!8l2%x_} zgi{3sdqdeol9eZ%3>$QA5veX6IdF2f99l@u#sr0xV07D-_QMc5=)}e}o`7>K#oHm1 zpaRKYvjU8sr1f zKE`-tQUUXgai&PTMn|;J+RUr%S&F1K36ZJmKRaCfws@1Lg5NdDTby-lR-8|T89uyKfXii^) zy^q`wDU^sej9fp)#?T(6a}6rnGACBXh#X7Z8B~?45@27JqH7wuQmAneVz%LWB*FX3 zPLBL~QtjHv3Y|GGg;#vcyZBk|nV@!dgjvJ@!+U(B5?w^tXYhO;HAj6G@~#BjX_F~B z_@WtCzvDr1?3jQ2Casq*iQ@>^zLfaRo3y6}j**l|s6#Pw2?BKzx;v!v zNKmG-CTKUXRwK~ox(>T3=i|ZD>1o1R`@kXNlhk|A-r0b#>JSA_R-&TBOT#~WdFcaw zi42r&tv-UDOKQx$bzEb{+Ol5|NppI>?pQ0por~I>F4Nn!6mz63SCzdP zL30-oq?2X#5qr^9V4|nXg!whX$y-TZOCu;~z6)lV20Wl4FuFA$adF%)L4AF}&f7Wo zF&=H;XAecsC^{|+7$wj^(-0OymG~Orns#-#fMG;EWTrXpJ6XYr%3ey2u7+kZLI(!UPLpu6*-W8v)mEFkNu_9!p>!)eqfOh?fK5OK)&(DENFw`{` zKIY+oqF|nKveUUjGFaC{Y?0X9n&|_gF~hOP5$g5Kq~eYDBX{;*>K~V#N|p_~u+nMA ze4hj_=gcGBNdgEI->;EyIX?k_(*)aSQj00KC4LQo)nrFZ^?025;-u1czn;c6V>Ai$ zpc}fJ&yLpbi1;J8#BXtHVjk@O2(*pFmeIb=1kVF3x1qn21xxf`UL&-tiFW%Sbwz|r zAP3%em`p*8kq3TkulEQMn?_7I!La%b+Z=ohJhQ*r233{#xQZH+}Z2gZkiGfok@N1y8{rcDgu{9T(jQWo7zaaO@g`unXBy{aLq8n6C~6Q=JL!VKFm8 z-k0EC|KZ?js<>oyy|}Xjx@qenLUr4wBxf=hEJOIC=Y$hs>3?}ZF0w71d+m+{DX*h4 z%r+kK59}?M*?QX4Q-F2$e(sIDA<$z~>fg+_YYl`pQw*u;XVQ*hPHbO~Pju>a&S2xg zIaD&4V!!IcJhv?&R&IXJS7#^fuH7m@8dB%X`nJ9vD`lQgfDMHc#m~PakSj4LOJe)w z?Xc>QixIL84^J~%-zaO!u%N`{^}2@N*PLf&v4=IG(OS20<}B~w&t7!Z*S1=zILQR;qd0j^(dFHa7zf%T|Nlk)UmW*UhD z!@Nz49a)AVNRes~yvn%ur6<}rkY@>Sb1RSP2m%Iym0Ak4%f=4joB{X;!g2SMdVNWV zhVL#ql632Y+HW(#JaLxtNbrz0pW32Ayb%M!dri`Z8>aFqU!Q-XHN?~-BD6}d+rD?% zSMlt1e|37Cx1)@^xXl?vSic!1AuX5{re|B={=YF>(H+xi#!pVI4 z9041DR*4DbzA?rq!%5D+IqiiT;VvAzrpS~X_4%l{VqB_Px$0s4u9%cdh;O9z3l3&< z#6d7Sj2iw7phRiA+uML$8rCVZtm}oRQh_=)G~vOa8y#SaEL+qR{!LNmD)8tS_mq# z77iD$CzTdC&6iDS+Em38pySQbrJ_oBg42{vtts$#gxOLy1CX`egJ2+;0B+N*o%;T+ zL^JRyaoiUGxIbC?4FDcqekbgm(^und?ZgErq5yzEK(+uq8gX_voJfAvjjLSwq?`c%*@8y`<1MFqzWq{CNmq)HqomPk+{fTxzE z``IrQCVZ{C^|fB}T(R5&^R2MZTC**f^nI0j5?&tI?}b~KFOC)`=Bu?)yBo5wyFnH? zYLiiRd*y>0cnuJ^$Xw~*len?H!E;ad2dEW0&6Wb zuohFUS&L!%D{xJO*@n+OV4lyZH`I$GCUYUKtd*qMaJ3pV7~tsWAWfE$TFnE*$OO&d zUa3K)D%_-(%ft-M!Z?d|Vt+kpQFgO*m8uQ0P4(x&dHvh>79c{VNZ|rc8GL;(QghqwcX z>PJ2421tS8h+T6NNEtI}21-C)O_14lRAa@!qFoVjE%T)C;@?yh^P zJuuH6dwKX7FmPKwd_D9?jmKdSM+W*XDDhWF?RpLBG-1gk z=!qLW*pT=b6l(C}Dg~rUOA$k*8)k%&hFfQpeKP!#DND9#a^xCqtZ~N3ldnLbAC4%OThHffWyunuAQ}|%i^QofnMR^I)6LPB4I9x7Rp)_a z9y!Kc8mMFP2r@nrg~Z&aRR6m+JT~%G;$k@%Lk>M88h| zP|T33e=Dr^0bc;1|LVfP>Ai6JXWSU~ibJu3x;H&m%W?V!(ntY8~kSvUxe|#Yxer*1)UwidhjqJ>Rw4EP* z_MaWGiGcJk2WJ-mKy>nl2miE5nFeo-^vlWY$5&kOM??Do_f|}S9suaa3-$;9CE)+D zjsHFW)1iNA;Qvb^tC7(@XU&puD?>k1} zZ1;$8eDOiUYLO!xp7BzgC7*y4`^^?ROcVDF|b#U|zHCq)t50W$vyhx^m~ z?==%cb1RDlBSSMo!|WmJ$-X{Hg#2^{<|3w^T|?tNb8{1OGb3YTD?>v?3q!+S=KjDU zBZd~>5a3{BMC`AA#ISU@-Lgo~uu=CyPP9)|>;6f=AS?hzPnh?gwv)%1Ab}iF`*yd# zF|`;a=gt$xj7`}&NxW8BGA_lmF4B{@%@~a86(AU=Wnx*!$l%qZlDt+?Z^Flgb1Xk%B-Q z)>|N&r49Ane8c?-Bm55k_#W&7D1Tdwe{X)jeG9y_-hJbw{LZ5?1%ih}8$ujGoJIsC zMZqe-BE~}YzhDd{ffW+`nWBvAc!mEPQ&&|9_jPf^tq|-=kd8Ajs>moRj=64)U{XWs zv&-&~IY6_-VUdjIK9$+wM{0mezV{u|BS+D8L7{WAMe0yC9LqL`orU@7rmq)M63o4G zBg?!>BFesrL-djZgm1OB$9$*j{qUoWMy+m-%kAIv`BM258Hv~^RD=PXtMh?(m?s&p zyH#0kHdfBrZ3{Y|fF zYH(6y3fmy8Lygr?kRd8LO@$*|^|;qjrA~7?<{MU(U5HzOX>NIt-;M9oe0r3(jdwxu zgRt@6FLI5zU#U~_j`pGOTy0xYEiRO#V?e}kf;(nTIP2cG6D2o}8~>DmeVjnQ}4*!P}cIjBO|dcx*3=b6^{vsV^8}YWx-OwxjCXMb{q#@L^Zlj{Qc!np+8LvY?}@`}iC5FgO_l zgVxR+A=Yp%3v8?7W_>TXBmVr=cLbx1irEh$aOEdp3#IbU6JJ(n!Z6Y=&>-oL;_b zUNksv!${AD8YC9VuX(ASq=mD+r(Y{GY*)_|0(@{jFx91rBUqNCTuX0EEBfMAx zA#n(L2vgkEVV%AwkrA4(CFDa1S@u-Zh)erC?EL+7)lu%O=hPfFbE>7X=hWa1s8#G~ zYxI`Nxx&9fJ?%2os3|HuTy7vNHU0?M+B*049m_xGFmOV!f6;~Bg)0Z|AI$7^7ljO6 z#QL+k?5jr14^yWtxR>?WhewWR4wa4TrGY;>(+Bsrr|8Ddx4^QHufeB%jt(#ohGbJ+<5-|kr#~;ll9BI z?O6H@E?(1|H#|ya++=28*(vU7N^QJLN&E$8hvbyXl5%9rGjhKnHEOfeN4F(AmowjD znGk}}LZkmX$ZwU@l%FiWvlA^9u0j89glZXgF43|mx&?*mFN4F&2V0W`C3 z9bZVQXCkVf%?Stq0)YHEUC;p#-`@a)-)m8x5Z5aj=Xa9~@jGxrbo;PeXQ^+`D#p4u_LLsM6Y%3g^2%bwuO<0u zDRut!XWq?~MU~DcZs=?a3X&XPC8amb?;-Nm;FUZ_5kN_G#Ntl@s@opY#)<=DkO-^L z%J!bL`De!-xqe#5JhgxO#==7*3(pwLik?KeN@GKmfuAQtmxiaDK4ow7$5q%1z0E~K zgm$V_W99q;VeNTMD@4CkVYytd^<246giWeX1IaNp6$1?ppSDG(OoVjq%a$7tai-+@ zO0d06xi%s)ac0<8n7^JN)+0H1l16xHB5aS&rxZK#C8i|BoWHfaJ=`xkWbuQ9*5<7i zGse!|dU*0Bld~g5KKOwdD{ZrcER#iJf-%l{rZ0+f(A|QxA9DW5O^Y*vP`A2{QA5O;8^XI*T zhv6OHJTeXi|F7fCw%c8@FOu!}z-f|BRFf{9dp)^ly2q;(^K#2})&0{{0l%5%{f;}} zcOO%)c{-1mlymwx!@ud*X5`%v*e_t@n|Tzle~z9nwhGHsDB~Ekgj&z?Kd!`_9BZdB z^cE7iamDx!3-Zp?<~obQt5CPa3nW||U03pM?a&jJ38LVyDxQu(8t>QowjQb zZ2LPr*^T3?Gods~xWjwiCD*_E{&mM+6G*V&cXMAos(IWu=(_I7q>%rsQ`*H}vU@gC zQNp0b_*tS>=%IDkupU#r-`l(BB-hHgxcThnzL({T!;DY8jYSewn~GJ4qxl=n|3 zF1>rG6NoYylgV@3zEPlf4XWXZ-uOcdWIIqGvbQc=|3FcY#WNlZ*KO)$px~*3{prdn zvKo0aWS4jDW@8en@z`j_u`!3Ndp6KZz2-QcrH|z`&FqDp@B!`I*Ue4O8tHtzZ?I$1 z$$s+>K4X>>5*chq$g7m^7;;v$0rB3IhQ_Ua=t$uxFm`J9 zj(=2{iY*dar+K}07X2cS;%x~Qi%DfW&{&~j#`PFoB4s-ZM(*A1dhB+q&*o?Eofj`B ziNVv|ze4iE`$LWW?vLHddM3X)N^fYy;eIM~bDDl=42c1BL)nB2_KGrT5!fv2cr88v?5GXEBVgUYSp5`cqQ z0S$eVMe<5GV5Fj&1xaoB1qCERMwnxPqU)3ibkz##L;*T8xJFt9(A9|kHA=NOwhgdW zLXoxP=1OIaK4sg#8AdRLP5I8zdvAHimyzaP#ExA9+}mS1AnYVGyvjn9|N zilPNZbNk+J;k^MP_fp>62Ga%uo)@ti#(V~Fkk^1Xv%h$74TbPX#G;vM^@ed;riIz< z6DnDBv|)ceubH({?wEvA;99vFUo8$ftHaSIe{Zdxo>$iQ^_c(zSl%oUBMMI=cm)4! z;+dXWk^0M5lOL%vD&hvX*BSrpz_2ngmxB+S9%3J zg07FAIxoOb@nr|LAQ?PJTVG#Yj#lBHE*leFb&yVfLB0rhW-T}JqE^lw%(5osNKu7x zqfdy8GJ})pZs#uV=T0((hQq=3y^38V_A?y!%WEpc(Ud{2-_X9va`d(9<;?RHcV8%P z3zyzgZD!~D4I4=ZTCI=A@cn@LWRHdVb_GpMk2wz_C8%Mm%(@^5hiD;DrI^u4iW%tH zE5LVBbWUM*ouk!RhDQ0Tc8r>Th%TC9%!P6qw&2^7DM z;0wvg^Dkb!=b`m51vEE2E%leJh*XZ_<3x;5vb}Uc!-N|eT5C#34@I2rvP25oMj%T3 zHMZ@myUvC)WBKJE`U0iYiJ7!w`e9T*ZMn&B0uej*JNo!Ne}xxFR^^OwiCb}Q97`?4 zG`~6LwAZV+wJ(y`d%x4CGmep~ucubN+d8RsvsR(+Ri3GUhlL}{$i#GL|n?{ruyr4;{hdo1QEA3B{lC6|aW zYvn1`X~hLn;%J()-vs^DPMi@@ts*z+X5`NuV^({t`vm>Gle z-W)C~8CD}sez0~qy9yJLs;{~OdE!|{5B~OB&or>6QIN2Z99=Pu{BBpkBJiKH7N^?9 z4%Eb0c88d7+f;RU>{Rt3(>m@}i%j<1u!Gx^Ajv!#}Bnf9* zY7+o{>k%%dv$dFZHoLr+VrI=4d_{92T2afaeEnrpapp|uIeEY$2Wp73Cnl@-dMEA!(G%_)T@9oh)DhVoI>Ge?@qIxbaBFQxUG%f&TTEfiCGOd4sRWaB+$cPzWsATe+% z3;iot^62yfZ$9)WA_x_9q~ZMGzqS;kfqpJfKLsk-o2}8uJxJ``0=J|uhT!5?r3ysaWqx2aeTXjt~o65iCL8iJmQ;hr3s;< z|6QHlP`DGU>R8X50=c!e+915%O`u*Xr&cm5>dSjsD_s&rTWdSo8yy>qv}1&Kp(f_- zy0zbS4A4*856QqLoG4lXoyk0+%#mdc{FwnG$|v%6;>2-jRA6Z>FW|**WMc4qY+vDo zq0wbDe+o3v&t+cUcGww}x_`0I>Dgtl8`6$~-TGSbBDhI?<;&e^QX$y&Z!Q&RJDg^* z*Vr5^RZsjhxFscz=}ekAij$$+Op{J= zh2~-gQFbqw&=dP}%VFjo1m4VB8TVLyT4!s_3zIm`SjBLYH9wYTC{pTkoK z^l;;+GRGHhN$B!9T=%u%>nMr!(48QEbHy;WDXsq^cqlQr{#FZ1Ti#Hli|C`)7^=Dy zo83Ya1;!kU8xPqcx1jN83jB`j4adlL*l%Rv-@U%~kg31+^J{A|>|u?WIre(t@m5lj z0nP2hS+8?c`ONbK7!y()LLaF9!a`{e(((_uO1W5M3TKvZjcR9LjTfOLb%S5#gMS@Cieqk=0)&i$(}x(z&%m5XBzC97slYKxeZk7Bx*#D^ZUlm;WG zh%EnC2ntnSN<&+SQiSjah_P}}4X=^;2&2#Q>vI8f?ocsoHgrZ@_hLqf`D-lpUd;Oq zyz6O4VI8`qduIIwx(kQM*)!!<^SW0P?xAB`k}3mX2Yn=j;JUHjFXtT1EwR6u>n zsWwz9GJY&}LJJV_IVBNe?>#t(-^fa^;+pDTc{JcynpT=5(>pU^Ld7JU_VY zxie>JfuN}>l~4^IwrL+G*2J9Q0_ib-6CPbl9W`EX zp@LI2B7!lu!PnPv25XuIX_t?knO~t9&Y^gDA_Xboy_08e@$bgWIr{9B;H0eIS5``E zxZN0{Y~u^~AZ-*k#9-O+-)s@m#@ChG<_BH_O6>*x9>lN$%=-F67ZPwKaWs(7oP*NW z<%7JJ?0+vwmP|p8-~=>n7j`|UIQ0x)P!M;AWA?+;li2Pe*Onb1tVp0(UHH-A1H5uO zJ2f#>s#l6zRM%@BX(6)z(xNTY=qnKi&chkB>ys^SO|J0;Zv6N^liR;vLlE)L_dgEd zWDLMT;Cg072f(ri57xAdRpI^Z!N_$&%w7JRxieCiSF}=>kUKhd<5@YJ;SJk^iS>js zL@9N_*`VJ#2y1;Kl_|Ui74K^d6_23e9y@m)t--9P~f;n=tAUWk1yXD zCNQ4+x3A>+`*x`I;A@c7>a(-c{PHZtlI)q|`?7e*83-<0Bo-?4g4j4C{HNePZ!@I8r(mSIGHG?jQM|}R>Qo={P%!*=DlVpL_zeg#!b>WN-^;IU4q_Rb{STT+ zUJ;F98-bVG_05F~l)cC)mYII~2u~^{ATskm1et2ZePv9=;X643xnhj8^hCB3n*Z7c z`%^^MHF3AoPA?OA4>L3S)VCVr;7k!E8n)g+mLmtC_G`cG%alAjSBxr=nEiMMBZuUK+KP2;WuV+sxQQw#W0y zhL`0~X*jp*FpOTLIBaZgn;50vWE(b=y}zTUe3A>6@!PU_*h+YY@@nSQx-Y78yrxj~6>ZX) z`(CFHAfd(jd&1yAB_`efE#mai;Ofr-7zM$Lk*btaOHyG+NMqGNo0~vLS>LMBa z?*5f`Ytw!mm&i=Wny60<9$GUM+YxT01)evIlmt4tGJ3UlKeugiB*4DkLv#Cy^K$7; zd@7b36Ga17vLO^^eD>%>3p`P=lqDsbzwo&U){# z)j1Za4dY@Amvp;hyn`GWmWGKbCbp`=n(Bfx;EW_`Y}J2AYvKE9Wq5A8hsEM^b(zz} zY_xe(+1O$~_HDkLjFCjLn;_by#b7jNagRp|@Rp1qkoy!#fKls@`d1ddTBYPIN|%e3 zre_B(ji<4sp^*+}Lm-YRTL~UA=Dj^<)R6qL&t)*p$%0ui%^;y6+C5qEyWNM(y?EjM zf?4hMxoKhw%ISR$v7=}9%g5-<3xu6`z206R;7-tAnPW?Af9k1s6(BSPj{9^%f5~%T zow$0W4pz)dfFyd<64TO*o<4sxHk&+WJ=Ol5Aj)!>!K0QC3Jjh4$BEJ|wrc0Lf`!p| zxkf8eM;rLjwN)=xus0Us?#{cFEDs-$UbW(yLv!JD6f^4-oZoxt--141*{foag`rzlF@h~bhC=sEe2;~Z46iTSKvp_r^#y#@SK49 z&V&0o!M#PArJHCINuA+nl+*q32h>z4=}i5-84J%82rD|bdzBqO=DKJt=P6@Jt8HxS zr+nz-!2sR6x`ykOv(@H~o!>Swxnj@z%>s|tV>{hdzFe2PdJf&+Ob zej2yg+(Nkm&|go$QC#;a5+kI&hSxvxzDE+j3Gpva6$9gcH0 z7$zY%-hi!TB9>zTqn1*=SDn#S6`j!lrPi4nl>qHM4*rb;1MAgdfuExAocoZgUdFj(ZmKEl5`Z_m)$b5S8M zg>{=pVwLDMpV3uWe4!#ikX=5gyd=kJl_@w6kAb5N77j#_FWVw150QKc-Ixb{lB67W z_FY@WUYgxFmtpLWx<&Tlvz_fdn1Mus$}1UqpA(Kn>JHRv@HFgq{I250B)3w$6RQnS zG6tPZC4O(*!HOH(I&he%E>L&MV_qZEYZi?8(>_tG^MJcXmbJSWWKW^#LeL0i_i3CR zM88|fWr}mBE#N1OLhwO^q-%jfY7x%PUaOPvLIh0%Gi^-r%;E z!FI5TVPWr0!xZivnd8ncLu-Vl02g(M>pjrYO{_M3RCcor*Igh4qV!8=1HX1^&m{uY zwS)CIMCIWF7Of_D`p}|Kq6aJc^3_UH&z#&M0&hG-3CXkfO+-oRiNSB^<;6cGb#OY-={iUFFsoLv2+x2{lkjOXcIycai%38BeV5by5 zo8RZ;CVZdVJnc^*7U5k~PEw9qk?T>c`wZxXmYvQ z363}K`&y0^knFziPs4M2zxdO64$^LB%}#(ihYG9)tJm4;xY=@7A$4c3ltwhMKjxX@ z$8IXmcr~7KJIqB3OLUo1*|rA%bn)Y?^3w!1~;LrmimxyyX^LHHD8XS2sj zkX4j4`fu;nanaeAb}G;2f+ioEYa|wt^cOh8(p^oYOY8>@z$VZ~rriykk9>-}slj_V z-N`VZNz?^i+xE<<5qLj2n68s;#@;5%g}=Q=d(BOViXo{3*`Hv+t)PmD=q-2QcdEJa zRP#5+sFbLjRSm2vN&A(8(-sE*V>cT<#|h==ILsU}nzdGF6skK|3MZMDRoW-8rK#Wp=yXu1Ufppw#hU^t!ZlN!}VtNx8c88fU#V({oG{BYsVJvhi8Q27Ot8? z)O0mFBdgpq*1DNPd%h7a<#qNbMhC*p4oDms1)2ltt!n;oh};R>jDA-i@a`0FcYyht zAEjJ+wbs|cbkfogB7+8?(bPOP7T8BYL$lMa)ERN4;s3Q*K=q0|4Nrbyo4-&n@jmT- zJ{Wqi4xY&5aewZRIXHYC-1J)In%q2fo_@`>D(Y~?P73D356ULh0*Df0|JhD8X2gtU z|GR3Jv7gYh_uOmiE+5t*gJn3hnqSj2B9l%ZFfF8nfYo8P`j&{`+v7x^;W~15t5TZe zWg$y}!hR`O$ndN1X2Gfq`VboJ<3j5WhNH&yH0!YvfM}fp#;Y%>^bD>kgbE~Sy|E?8 z6k2!`juMiz-2(&~WJSgPPx&QD8L{-A&El)Ked)T)+-KJO>94dd{KC_3YB1$r>$JtF zssrjNzQw9lm_o&>WmVqeNq1_|5HZs_x357I%hiIbm1o)9$7`92sp-xy5to?<-HR$W zlvjb?zuu3ae!s~MsfSxQ3eDl@y5K9cP*#L&8aLI3Xy@y%&><34aUh_V3FS46I_KXc zxll(O5ml@PCw+$Tl$_7TB!!H3&|b2;%U!q6*Vdk~mo^#h#*wY7@7H=hS7lsxmq=XS z9MJFf+Y;QwZTN#bo2<~Q5zW;Hx@*$`BF0UN@`7F1h_ho>cF^2*;UbE7)NFyimk&|A zqs3{vgqNdWK0G9Yq;_+-nb?x)v#(gEujf^a6#$<^pG=>Tp40LVZ>&gN`qKAOTP_X( zsj^S>H#LvQwH$J&^UD75f0JRg9*I|AGGPC{TLNK!J{ zUmUVu4_=)m>^pqEIm%p2kJ z#o9o!UDKv+ufZ+?X>>>Nhvn#zC%;HzDc%2Y%cHh8I5BZKT9O@Cf?5=Sm$|rhRMkx@ zaB=EvP)nxbG?^%3jakWO_MRnc$bX*iJnc;LEV1QXz67XiHk2CPVQS3VK}sl2-(MqO zt~*@wza~Q(mPvri@3{qFG*FrBJc^WnG1hWuk%q0CjGm_1B4lO-UD8kIA)bsqZ0*Et z;3wvcbf_{FE;VmG21K@@9y}}xyFatEhamfqRc#jNOsaFIr0Eruxvi4fAKIk04UwX5 zf-u`mL!d?T;T$=vaUaLzM58@?#iaAJF0;;hwI3~&=C&U$S>z1Y+SX_-pHGjE^LSNf zcAs9Yt@u=Dz1j|3Qpj)kzB36%9aff*utJrDc==Nz75*EPHg#8$lc?jlNKzzL58DoS z435!A?Kf_YqQy9`KCkYq4qo$*lVK#Q3{}*w3ieH$rM@b&N@5R}*|$k1Pz?^F4xLjP zr6CYRdKHZJMvN}0CFN2MYmHwxij0RrdIehu(f@-27?~0w){DOcz2}w4#}*ciK>-qF zCv%-C{oaowIVy{sRv3p}{M+ok^p}Z2i={pKNF7kjNS%do=XU2Rb1HTri~%6VRO#xG z)oW8=*dr!#z=t|{Tp~L3gfvBjlCCD3vE>g#_GM6t(lJbx=Vw28IjEblrozqPkOjq_K+O-+hZ2= zen1PI8iTEUqMx^LM!6*ydQTw)!A|xh?y%br4Br_pNqo=>WtV?wbRchj0Umu<8aCiF zi|w|1?0UuNcAE>G?4wg>9w3D#$qnu@%33aabzxU*K=@dT69NyAXVriJ!{w zu^;y#jKZ;VIugTv7&G(!F@?c^W{^qYVD3kJ?Q_-iF&oK{7r`QTCnGm*fG3#!?W5_7 z&zKYs!0-FUAQck4J;71b)=tntw3S+LJ7dAb#Rm{0$dAKm##>!3>PQj(P?-2 zq-MA$8&{(1!%~@~$ZOXf_ec#uL}g->={%I{@|C%ZO}&uONNw#fsnAqdoV9Hr4RpYs zK80?)OD@lyg&XOgz+n>Cg&xF92-fc%g(UtlWHgyBTXr@NXw*D4<%J?Dn$#?XUPtB_ zmBS?-S7ks#rA|Ine&x*w>3B*x+`4mKiN$t0^g5JlKViR4)=92w{Dr;&%ZnN^&$Jgu zNF9_W{L7nvJ1lo_`TqPh=%euiqAMr1;MbXO6&IaI7TMefsC~+%r39$9j)^TFx*#w> z{@m5LXL^U`bFL zg$&kxkqi&^&gC|rrgg8hgeSE3Eb8SU5UNprMq*t8_RD-|B39PV?6b!FiouJ-x3s}~ zdw@j4baY~t)&oYXPMiNx;}fa*i-?m;C@ud@z+Xb+-tX7n!(6n)mWCs?1nv(czZ@pe z{yI|(*}Opz&G(b|Eiq1Qj#BFVQt&WlKp~2bRMugEsp*;2ad=1tZ)hhki=`bM2VVwvq~`!3__+6g&M-cZFq}Lxb7I-&@{!Eax`&BT#o!<2dV)bt)Tdqr%J_|Yp=*7wYZ`-%!w6iSzn?=7TesVOuQr%*Y^t+#S}&{> zzjACD^u~8;vQto9=i@9tV;gY0ZZw;j3`d^`bl55`-nHOU|D_s-Y*o+Q$v2Ldrx!vD zDl;1Ooaumnw}9L0!G6sJ*17F*1pHb3Lo3^PhVsOcolzrfA4D+}Z_BJQ#hq@wWM3=l zY9rN%VAW&z6z8UD+tS12j3nJ|5>#P{kyD+yq&TP`Guteon&OhHS%UdTb1-ycQVf(r z^EB%~xbL~x~>j;^CCS#JVHb9>?P`3>)GMhm9OKN{4A(PPKX&3R!}(keh!n# zgviH)?Lw*t$TgPuvshXoSAT-egrg>xWqsEbr?9#IytC7!vq>WXFvJuE{*9rh6Sbo} z90E!X1Zo|wq=6c?^F*nERzxukU(HwEI=ktqgy}SBLTrrKO2-T}T?SR$o$) zzm^t-lGGt(hGqg3+DJ%0CDOc*tNjl8XF;#=^8vkpHI+0N9=ZcoZ-B2r{6&AG`OV%j z%nAtAMZ2viLY7s#W6D z^;#WW)ZzA$KrhPmu$|o)YtDyKDbZA-pNC9VX5P}!jcUvTq0#GIYNQ12pr{+P5VAj^ zMs`)KlqPMZaD<&x4POw2swH;>=2RmlQ~FyhwcwvCjTwV@VL_~6I>(y6zY}IxMdnSq zhFr}I_~tP=!ewOGQ2E7Kwm4%f#I2|(Vw!N#HDSf5qP*ZAm2@Eok7gN*#UbBl;G zGzA7!i&a@o#HZu9_0gf>NcmART8~Vq=(h6b`uMxMSaSNK2)&l%Ub|)Q*8~&q{T*Cc zc}DzGFDL>N%8%**7Sl_1_p9WjfV9b{g)lp@A{4C(@mJ8MwBpv*6Yp#NnnD^wz-ayOmN|lN0@Z?;kxT?^OvS!%(0=_1`aPFjXY0$MqPVf=6 z@X7xh-lsBTtp9t%7>N;~5lbFI%}~bU!=G51m%r?NxMG=QY_17C`riRLCq!hu%;h4V;-T6~|{-PeUkvjke(A|z- z7-w*Kp>3)ZMcDq!SXFKv&G`gmjsd8ZdLz!F%rJwvnCkXNlG42N(ANIm1@rM=1ugZ~ zJ%+rjEP9AkIAmy4Wkonb%8_2?kf`JZ(>_Ys2U>bQq}8cXwmrA7gaK zHHgI%sn1mck?7P(2N87LEj@ycgE_GVUsf%F(&H8c$FM91KGoIKsUvIUq-#r?i(5N? znuT@3xnJ~?Z(4rl9eV}xmnc*!xzYe>5>j$JW1*`>`$H5zg~Zg*wCEnECJARUr8JbR zC-`6T_6K?HvWGy+0zumzsB~Fj)G)I;cO6ppfN;7FY&0H_el*$?O#M&IEeXf(?LtFZ zW7`=(Kf=%~M^=BSMZiebGS=j2cDDC&9EA+^#Rc^wmaaZzf>&M3XJM`AceQyRvT-U>JF`DtCWrZsq7t8J5?Jmdb zCX5{4GtwEhrO+@_1C?0@hm|I-Pj}v&)67IQMu(?nny_dc{uT|_*eexJRrPHpzjlJ> znNI~fTRXLK8Y02C0jQulQmN@}m3WrU#UFEl*$L zHz~UABQ8S{{z1?h-d%FJy_bm!Q3*BRKg2|oTRLW2lmR#cBEnWH2TzVeL+!8J*(7vn zm06Mg9;s9uF~s|NL;PodXr3_U4I(2wH1dlS&8XZ`lX9jkR4mAHQI8{HIo8QSR|lKx z_{L?5QFdpJ{`+ao0LBDbUsE(1$nnM z<+6GO3AHqEr^V{&66Xw%kNhqP0c@~~dV!4|9q^{9r1ffj z^bL-+%D!3O&$0Tw8+S(=n;`8sV6P+e07Ne4 z-=#S9Ce{&+@pIvraE*SaEB(ndl!*6(<6|Ngbe6tlu zbt8Axsi?f>OJ@n8oqqhC$ON@7m-`ke%@2{f_CE^?c&TT9;p>+1T;Qy(UD|UKHYI0G z|BVSoMnOUHSi$;~4c%22yt&!mqfHAQWr4zb)Jf6HFlyh(TdzZSl=PmzbCFugTf7gz zZ3{9MNre|khDXNf>es&`-k-gLmNr6Oz!?EiOq)Q}b)nOXed& zA3t7V<dzfWAK_~c%QICDX&x#=nxMDiX5lUcjR`AdwW?dDNgUYT zCx>wh><7f25D46#wLG?ArO4GR?!gU-cY;knSiNhPdNWv^&VBI;J5*W}Zzg5$MHs&o zEiuKcmXNyLyx*OWW6@GEyL!~Pd0g06|EvS*-4U+T?dR?EHX7iEzv+HJ+UoueM5F)g zf8Ub1w1s5y?`!MN2K34M>oM%ZP(A{~_uXq)s&D7R9u)KkuyFf=XS*V#zt-)+sb~yl zS^qymNjp4CPAm?~<>HSgCmn zh6>Oqbm!|h*^A?8$t^afpzvCh!s6nL6*E$%1* zROuV-Yx@YeowDP|Qi`)UxvUd4T=CW<+5 zBY7dF(OL13Ofx=^grbS2!PK5k;!1I@CM6wRu;r!^; z_#uv{kR%8~;%4X$O3kD;Q@40!sXXN(R3r|J-Q27>zjh^NLtGyyxllVup2fz=dPNp= z5=vT8VPW+*^;J`Z=(TZ|0#clDqPRq}E`U+OS*U_cdqRvwxUf*8kqd={oYl-D(2&Ta9gjpS1CU)Z{6W0deUnau%n9RAZeo~%aHzEwY zb%%ewI5aZv4vWuP_x%=o^w?pCSr!~-^Z%T1DDSq)1 zBSyBW?5`Q5Be3bNZDMX2M^C>&+K z!l;cR5BpW1NIO`=vB~=%q{)%r4A6fKGW>+?{a;)-);d%5bEyFW?;`*T@;?{uj#rQ}{2w+thI9o9=0Y=<0>5eI(x zQ*Rf~(v~KKD0Y1{J>0T7$X>D1Vz>TNXtBdlaJ6k>`f@+k8hUjzU$QuWvIqDd0BD&E z>es~$0~n&u8o)bM8gq*c^<`_ zOH3lK9OY#Wl>O(^k;A&oiN1`&rgD7LL*b7RJgP8x>%|36Hu(v1#DQq+3lS}L{)&`v z26FDsi9U$Sh0Wp=?Q)!s79Vq7JFZUX>ZqEM;=e$e`5K1CS#f=+neOiHCKuG(ut*!< zaYEDjYl*L)v|a4Y&@*OH01uq{wr#e z^rR%cH&y2;k!nKlU;CgvNQl3P^0D5N!goy4QQap*-D{8JAkM1ilt^_8ed(Uw6GP|E z>3bN*yX1>(#DrMy$)E=v)qO(Lz4l1QsNR*woYWgJiLOeMaU{P0ZPO4_5(T5Uh5Fim z#R2u5#RvXVEn`$!(D)NN6ASAefYr#wSNInJS!Fbv% z!2@s{0RRBNH_x_R+qP}nwrve-+qP}nwrwZb_4#~8+RDD3{-A%H|94x9ZKQSNTr?3a7Ht!q8Qm8XW2<7X;^pFF;|Jq^ z5?K>N5*rgYl4vqhvRiUV@*R*77z5k{GlA8>QQ&3>gi1o)pvBNJ=rJ6Fv%qEGcJN6= zMd~6eQ6E|qy^V2LNo)kR54(zI#@pb_@n1wmVkmKr#K>}FKk_04QdOwo)EVjtot5tJ z?@anDQ;FHi;%r`aH~WHX!)@a}@)B?H>-b}WPXL5c!gOJ$7!q@dg~hJo6!Ekal|(74 zR9adjZI+HmSEXmt4;hr(%01;#@>F@5yhC9WSIMiCQ|c=nltIcGRaP^rMbxTlbG3)M zU9+@YS}CoT)=KNGjnNf7y`En$uh-W*=mYgh`dodzAsQKs0!9U+fziPjXk0K0m=(+h zW(RYiInjJzezcNSck7$&*p2L2_D1`J{n7!P%uY*ZhO^gsSO5h80ss&IF92Ks00A`s z40`=9RDw|~6{ zj1y&uf#C_c2yGrQrq8kZ}z$0iRdb|{}t%^|MMs#&pz8m4MW!lc@^?B zV&xr(d79Q0vf~bO$<8fToN&fHFJ|Av>775~>p;%{0C?JL!Gn`cx`%)D;cH~5+5(D~_y5_oQHw?L{-=KB3 zOc^(!%x!yO%$hdij!oPCxaY3>9(v%BbdNpt#52#m^ujBzZFu9Ix8D2cgL)Z0`{awS zw(Mv$r(A`3D;89$Qman4YBhTNQlwRz=5Wq#I3F&Ai{VnZ9Im)(%&-xsJI9h&nv=s` znwM!{;ON4cUzS=_oSa{j%HmpDln)Yib22c5(ndUK`K3k0r3I-)nfXOfL1QRw!jzT< z038i@uz1=OOT|HhQ4D_RZ+LKr;O_2D-P=@$;K~Viw>u;B^@Pg?jKT)Bcs^PA%@3Me zDd10&-y9*Y`H)(zE!+YMlU3nnB~2bzgxoGaxy(N59`E8V9HY+h4z3%oWn)}nJ*#or zJ>;-&lifT=731ZsW&LWFBLz@dRuYP$+sqNNnh(fgexgEigV{9wVTShcHf|hm;Og-z zE(7G!ab!dfnh1CC8UIj4yu~ysx(NisxZo|ZD-z;gsHFn-szHNSxJw2D{r!$tBkgy{ zd~aOBnd}VY=87*S^)o3r7LOzWZlcH6*J7>7A;$s{Inoq$$jnlJ32JO_j*41ziv zCSE1%m{EZ902Ik@{`o~w&Zfv`|Nkv{FhumDs%>PEw!%R;2xeo~VkOjVv@pWkYWD;t z!vp5)kqAFQ@LFGSUaZ0Ww;$(H*zA#7e*X1K2Zr^ws)ud)z#?S%;ZugiwQ?>M=5W~w zPnvQ~Tybe`4t3$6wCRK&{#I4|vm-P)#Yew)?cY0-nQZnGVgX3ia%_7(xdJPcA_Yu<_P*9Fm!~jJ_jPB{In6qaMYi6&~W&Gx%fA_6@S=B{djRSu^ zEMR~qVV8|MSit8mN}iMv!i5L^_xJxlm-e|2bR|l8NkV$#HGd&N$qhn+6S$ZEsj6UF zl~Q#<%13@Wo!%&dCmr3X+yPR~N4ip(S|2OyZFsQzmNm;($G8B%A*eMC&=XwXKES9l zb+sE5xce+VVRe+vBNNg2iV#G$$-g#Er1S@g@i)ndw}f$=AU%>-br#&zjtRS;r7?!g!>0R=@dJSi3)7V zZ;|cIPRlbf3k=Bz{CS&N?H`TCE5m|!51eB!+FhV%ysT2~K?m5^=CAKk(`sp z@tr&h2m*?{ASt9TEl56ea^OvMKowAhvX*2o*>ccXun!PAKrEV)s=MtD_s6t1j6~~v z#<3973f%2K4wCb~efII;@Z`r#V z2+NVg0t4@Fu7MVg9cyF50X_mwL-u>OGW`9xOA?X`PM;_irt*}Lp$O(CE}Nj;xaxOv z3upWqP949B6MH$(jdSJmK?@J)tzrnEF{|5R-W3$yb#Zd8u||biP5?RqSZmkz@UqMv zumK$}1d(scklR%jNn-(yyAKbLC4~)$;Nng<+zNR@V0{wfcHXy}xJtLvp!^kBSJ?+xzoI=C{WQR^j6U6uH#d+lx%XMxJf zK+jxZH%z5o+|@Y&S_UZH#J86V5HouS@-nz?PrE@foMK|AV?b1#%EFV2OW$X8L#pc6 zPtoA9JOOJRCb*_jB1lhv;bL%D57jms#G1%i;O9dN(mUAkr)%m_hoW_3Ijf=|&5TR* zuu08z7ks)8H2^D~NacpOg3N!Z*o{}|=6PGKm!SE&lWjyW8*rs9=n*kp{YG9$9zT*? zrmDN>CimKT8XGk09Ob?)YfuC7M^Fj{5P~fX^LQENg|f!9KX*PjT;z{PHjqkc z$F@5@37X4suzZq?RNxlaw`?XXj)UVm{tI@xHIr*;nKa{csBLaA0fe-*KRwiKVB?o) zdKe+>a1%3Y7S`_FVwF>vk|oB`ogB-^!j&vIP0(80;=sEF3nGT&zxoZNC*msbo^Mez zbZKq9L5Z11pn=;FsVwg>#@U)@26ZY2YnucbXzWKCM%h1^gmnU=R@3+bGCaYS%iZFG zW>_E^1z=SW3f!ui>Ra!qpa5k6*=h?@LB=6MRZher#X^Zgs7z2kIXjd;t%PPfHj}QNx>?lAlnW314}l`TP?)$&2h%T+MSBvOX8p8dn~}XNP}uCGRxoz zL_QxpYkM9%>$c5GAOw51Wo8MI^*pk^AY%bBkvj-rc;jF|g$;wlPFT6Z?}%#$oQ4!j)3}!8eYB

m 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 OUye9n0jiN%8vy`H>JCQ$ diff --git a/public/fonts/open-sans-v15-latin/open-sans-v15-latin-700.woff b/public/fonts/open-sans-v15-latin/open-sans-v15-latin-700.woff deleted file mode 100644 index 2523e953cb97117d52681ed859c4a4f5fdbb18cc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 18476 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 Zs~4RW#}$`=Xb^z_5^(_ROh5?$004?XtWy90 diff --git a/public/fonts/open-sans-v15-latin/open-sans-v15-latin-700.woff2 b/public/fonts/open-sans-v15-latin/open-sans-v15-latin-700.woff2 deleted file mode 100644 index 2b04b15bb70adf99751f55d58b3b9fce20e25c05..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14720 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 diff --git a/public/fonts/open-sans-v15-latin/open-sans-v15-latin-regular.woff b/public/fonts/open-sans-v15-latin/open-sans-v15-latin-regular.woff deleted file mode 100644 index e495e6f010c94b0b095d287f1811a30b4e5303c4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17704 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 S;!94Je$jcs3Lw8Xr*8q*m{%hJ diff --git a/public/index.html b/public/index.html deleted file mode 100644 index 12b59bd..0000000 --- a/public/index.html +++ /dev/null @@ -1,83 +0,0 @@ - - - - - - - - - - - SVG Gradient Editor - - - -

- - - - - - diff --git a/public/manifest.json b/public/manifest.json deleted file mode 100644 index 1f2f141..0000000 --- a/public/manifest.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "short_name": "React App", - "name": "Create React App Sample", - "icons": [ - { - "src": "favicon.ico", - "sizes": "64x64 32x32 24x24 16x16", - "type": "image/x-icon" - } - ], - "start_url": ".", - "display": "standalone", - "theme_color": "#000000", - "background_color": "#ffffff" -} diff --git a/src/App.tsx b/src/App.tsx index 7f69f3a..175711f 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -1,49 +1,5 @@ -import * as React from 'react'; -import { Provider } from 'react-redux'; -import { store } from './store/store'; -import { library } from '@fortawesome/fontawesome-svg-core'; -import { - faChevronLeft, - faList, - faPaintRoller, - faCaretDown, - faCaretUp, - faPlus, - faSearch, - faTrash, - faEdit, - faCode, - faSave, - faTimes, -} from '@fortawesome/free-solid-svg-icons'; -import { StoreThemeProvider } from './components/layout/StoreThemeProvider'; -import { Editor } from './views/editor/Editor'; -import { GlobalStyles } from './components/layout/GlobalStyles'; -import { ThemeSwitch } from './components/layout/ThemeSwitch'; +function App() { + return <>Hello world; +} -library.add(faChevronLeft); -library.add(faList); -library.add(faPaintRoller); -library.add(faCaretDown); -library.add(faCaretUp); -library.add(faPlus); -library.add(faSearch); -library.add(faTrash); -library.add(faEdit); -library.add(faCode); -library.add(faSave); -library.add(faTimes); - -const App = () => ( - - - - - - - - - -); - -export { App }; +export default App; diff --git a/src/components/common/AppInput.tsx b/src/components/common/AppInput.tsx deleted file mode 100644 index 2dee720..0000000 --- a/src/components/common/AppInput.tsx +++ /dev/null @@ -1,72 +0,0 @@ -import * as React from 'react'; -import styled from '../../styles/styledComponents'; -import { placeholder } from 'polished'; - -const AppInputWrapper = styled.div` - width: 100%; - height: auto; - box-sizing: border-box; - display: flex; - flex-direction: column; -`; - -const WrapperInput = styled.input<{ error: boolean }>` - box-sizing: border-box; - padding: .5em; - width: 100%; - height: 35px; - box-sizing: border-box; - border-radius: 4px; - border: 1px solid ${props => props.theme.colors.main_400}; - outline: none; - background-color: ${props => props.theme.colors.main_300}; - color: ${props => props.theme.colors.text}; - border-bottom: ${props => props.error ? `2px solid ${props.theme.colors.danger}px` : null}; - &:focus { - outline: none; - } -`; - -const WrapperMessage = styled.span` - width: 100%; - height: 12px; - font-size: 10px; - font-weight: bold; - box-sizing: border-box; - padding-top: 5px; - color: ${props => props.theme.colors.danger}; -`; - -type AppInputProps = { - placeholder: string, - errorMessage: string, - error: boolean, - value?: string, - onChange?: (event: React.ChangeEvent) => void, - onKeyDown?: (event: React.KeyboardEvent) => void, -}; - -export const AppInput = (props: AppInputProps) => { - const { - placeholder, - value, - onChange, - onKeyDown, - error, - errorMessage, - } = props; - return ( - - - - {error ? errorMessage : null} - - - ); -}; diff --git a/src/components/common/AppModal.tsx b/src/components/common/AppModal.tsx deleted file mode 100644 index 5fbaec0..0000000 --- a/src/components/common/AppModal.tsx +++ /dev/null @@ -1,100 +0,0 @@ -import * as React from 'react'; -import { createPortal } from 'react-dom'; -import { rgba } from 'polished'; -import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'; -import { SHeaderIconButton } from '../editor/settings/header/layout'; -import styled from '../../styles/styledComponents'; -import { mediaMixin } from '../../styles/mixins'; - -const AppModalWrapper = styled.div` - box-sizing: border-box; - position: fixed; - top: 15%; - z-index: 999; - background-color: ${props => props.theme.colors.main_200}; - border-radius: 4px; - display: flex; - flex-direction: column; - padding: .5em; - ${props => mediaMixin(props.theme, { - sm: ` - width: 80%; - left: 10%; - `, - md: ` - width: 500px; - left: calc(50% - 250px); - `, - })} -`; - -const AppModalOverlay = styled.div` - position: fixed; - top: 0; - left: 0; - width: 100%; - height: 100vh; - z-index: 998; - background-color: ${props => rgba(props.theme.colors.main_200, 0.85)}; -`; - -const AppModalHeader = styled.header` - box-sizing: border-box; - width: 100%; - display: flex; - align-items: center; - padding: 0; - justify-content: space-between; - h4 { - margin: 0; - } -`; - -const AppModalContent = styled.main` - box-sizing: border-box; - width: 100%; - padding: 1em; -`; - -export type AppModalProps = { - containerId: string, - children: any, - heading: string, - onClose: () => void, -}; - -export const AppModal = (props: AppModalProps): React.ReactPortal => { - const { - containerId, - children, - heading, - onClose, - } = props; - const container = document.getElementById(containerId); - return createPortal( - - - - -

{heading}

- - - -
- - {children} - -
-
, - container as HTMLElement, - ); -}; diff --git a/src/components/common/SaveIcon.tsx b/src/components/common/SaveIcon.tsx deleted file mode 100644 index 3aa4a18..0000000 --- a/src/components/common/SaveIcon.tsx +++ /dev/null @@ -1,44 +0,0 @@ -import * as React from 'react'; -import styled from '../../styles/styledComponents'; -import { mediaMixin } from '../../styles/mixins'; -import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'; - -const SIWrapper = styled.a` - position: absolute; - bottom: .5em; - right: calc(400px + .5em); - z-index: 2; - text-decoration: none; - color: ${props => props.theme.colors.text}; - mix-blend-mode: difference; - ${props => mediaMixin(props.theme, { - sm: ` - right: .5em; - bottom: calc(280px + 0.5em); - `, - md: ` - bottom: .5em; - `, - })} - &:hover { - cursor: pointer; - } -`; - -type SaveIconProps = { - download: () => void, -}; - -export const SaveIcon = (props: SaveIconProps) => { - return ( - - - - ); -}; diff --git a/src/components/common/SmallButton.tsx b/src/components/common/SmallButton.tsx deleted file mode 100644 index 4e43c9e..0000000 --- a/src/components/common/SmallButton.tsx +++ /dev/null @@ -1,25 +0,0 @@ -import { darken } from 'polished'; -import styled from '../../styles/styledComponents'; - -type SmallButtonProps = { - width: string; -}; - -export const SmallButton = styled.button` - width: ${props => props.width}; - height: 35px; - box-sizing: border-box; - padding: .5em; - text-transform: uppercase; - background-color: ${props => props.theme.colors.primary}; - border: none; - border-radius: 4px; - transition: 120ms all ease-in-out; - &:focus { - outline: 1px solid ${props => props.theme.colors.main_100}; - } - &:hover { - cursor: pointer; - background-color: ${props => darken(0.2, props.theme.colors.primary)}; - } -`; diff --git a/src/components/editor/artboard/Artboard.tsx b/src/components/editor/artboard/Artboard.tsx deleted file mode 100644 index fd7aea0..0000000 --- a/src/components/editor/artboard/Artboard.tsx +++ /dev/null @@ -1,40 +0,0 @@ -import * as React from 'react'; -import styled from '../../../styles/styledComponents'; -import { DefsRenderer } from './DefsRenderer'; -import { FiguresRenderer } from './FiguresRenderer'; -import { SaveIcon } from '../../common/SaveIcon'; -import saveAs from 'file-saver'; - -const ArtboardSVG = styled.svg` - box-sizing: border-box; - width: 100%; - min-height: calc(100vh - 5px); -`; - -const Artboard = () => { - - const svg = React.useRef(null); - const download = () => { - if (svg) { - // @ts-ignore - const content: string = svg.current.outerHTML; - const file = new Blob([content], { - type: 'text/plain;charset=utf-8', - }); - // @ts-ignore - saveAs(file, 'gradient.svg'); - } - }; - - return ( - - - - - - - - ); -} - -export { Artboard }; diff --git a/src/components/editor/artboard/DefsRenderer.tsx b/src/components/editor/artboard/DefsRenderer.tsx deleted file mode 100644 index 5c156bf..0000000 --- a/src/components/editor/artboard/DefsRenderer.tsx +++ /dev/null @@ -1,92 +0,0 @@ -import * as React from 'react'; -import { connect } from 'react-redux'; -import nanoid from 'nanoid'; -import { gradients } from '../../../store/editor/selectors'; -import { Gradient, OutputColor, InputColor, RadialGradientAttributes } from '../../../store/_types'; -import { FiltersRenderer } from './FiltersRenderer'; - -const SVGGradient = (props: { gradient: Gradient }): JSX.Element => { - const renderStops = () => { - if (props.gradient.useChroma) { - return props.gradient.output.map( - (color: OutputColor) => ( - - ) - ) - } else { - return props.gradient.colors.map( - (color: InputColor) => ( - - ) - ) - } - }; - if (props.gradient.type === 'linear') { - return ( - - {renderStops()} - - ); - } else { - const { - cx, cy, r, fx, fy, spreadMethod - } = props.gradient.attributes as RadialGradientAttributes; - // @ts-ignore - const _spreadMethod = spreadMethod === 'none' ? undefined : spreadMethod; - return ( - - {renderStops()} - - ) - } -}; - -export type DefsRendererProps = { - gradients: Gradient[], -}; - -const DefsRendererComponent = (props: DefsRendererProps) => { - return ( - - {props.gradients.map((gradient: Gradient) => ( - - ))} - - - ); -}; - -const mapStateToProps = (state: any) => ({ - gradients: gradients(state), -}); - -export const DefsRenderer = connect( - mapStateToProps, - null, - null, - { pure: false }, -)(DefsRendererComponent) \ No newline at end of file diff --git a/src/components/editor/artboard/FiguresRenderer.tsx b/src/components/editor/artboard/FiguresRenderer.tsx deleted file mode 100644 index 8ba1f4d..0000000 --- a/src/components/editor/artboard/FiguresRenderer.tsx +++ /dev/null @@ -1,46 +0,0 @@ -import * as React from 'react'; -import { connect } from 'react-redux'; -import { idList, localBlendModes, localBlendModesIds } from '../../../store/editor/selectors'; -import { BlendMode } from '../../../store/_types'; -import nanoid from 'nanoid'; - -export type FiguresRendererProps = { - gradients: string[], - blendModeIds: string[], -}; - -const FiguresRendererComponent = (props: FiguresRendererProps): JSX.Element => { - return ( - - { - props.gradients.map( - (gradient: string) => { - const key: string = nanoid(); - return ( - - ) - }, - ) - } - - ); -}; - -const mapStateToProps = (state: any) => ({ - gradients: idList(state), - blendModeIds: localBlendModesIds(state), -}); - -export const FiguresRenderer = connect( - mapStateToProps, - null, -)(FiguresRendererComponent as React.ComponentType); \ No newline at end of file diff --git a/src/components/editor/artboard/FiltersRenderer.tsx b/src/components/editor/artboard/FiltersRenderer.tsx deleted file mode 100644 index fde384e..0000000 --- a/src/components/editor/artboard/FiltersRenderer.tsx +++ /dev/null @@ -1,48 +0,0 @@ -import * as React from 'react'; -import nanoid from 'nanoid'; -import { connect } from 'react-redux'; -import { blendMode, localBlendModeObjects } from '../../../store/editor/selectors'; -import { BlendMode, BlendModeObject } from '../../../store/_types'; - -type FiltersRendererComponentProps = { - mode: BlendMode, - localBlendModes: BlendModeObject[], -}; - -export const FiltersRendererComponent = (props: FiltersRendererComponentProps) => { - const { mode, localBlendModes } = props; - return ( - - - - - { - localBlendModes.map((blendModeObj: BlendModeObject) => ( - - - - )) - } - - ); -}; - -const mapStateToProps = (state: any) => ({ - mode: blendMode(state), - localBlendModes: localBlendModeObjects(state), -}); - -export const FiltersRenderer = connect( - mapStateToProps, - null, -)(FiltersRendererComponent as React.ComponentType); diff --git a/src/components/editor/settings/Settings.tsx b/src/components/editor/settings/Settings.tsx deleted file mode 100644 index e763ce2..0000000 --- a/src/components/editor/settings/Settings.tsx +++ /dev/null @@ -1,16 +0,0 @@ -import * as React from 'react'; -import nanoid from 'nanoid'; -import { SettingsWrapper } from './layout'; -import { SettingsHeader } from './header/SettingsHeader'; -import { SettingsContent } from './content/SettingsContent'; - -export const Settings = () => { - const presetRootId: string = nanoid(); - return ( - - - - - ) -}; - diff --git a/src/components/editor/settings/content/SettingsContent.tsx b/src/components/editor/settings/content/SettingsContent.tsx deleted file mode 100644 index dd6af7e..0000000 --- a/src/components/editor/settings/content/SettingsContent.tsx +++ /dev/null @@ -1,41 +0,0 @@ -import * as React from 'react'; -import { connect } from 'react-redux'; -import { SContent, ContentList } from './layout'; -import { ListItem } from './list_item/ListItem'; -import * as selectors from '../../../../store/editor/selectors'; - -type SettingsContentComponentProps = { - idList: string[], -}; - -class SettingsContentComponent extends React.PureComponent { - public render(): React.ReactNode { - return ( - - - {this.renderList()} - - - ); - } - - private renderList = () => { - return this.props.idList - .map((id: string): React.ReactElement => ( - - )); - } -} - -const mapStateToProps = (state: any) => ({ - idList: selectors.idList(state), -}); - -export const SettingsContent = connect( - mapStateToProps, - null, -)(SettingsContentComponent); diff --git a/src/components/editor/settings/content/layout.ts b/src/components/editor/settings/content/layout.ts deleted file mode 100644 index 004649e..0000000 --- a/src/components/editor/settings/content/layout.ts +++ /dev/null @@ -1,29 +0,0 @@ -import styled from '../../../../styles/styledComponents'; -import { mediaMixin } from '../../../../styles/mixins'; - -export const SContent = styled.div` - width: 100%; - box-sizing: border-box; - overflow-y: auto; - box-shadow: inset 0 1px 2px 0 rgba(0, 0, 0, 0.23); - &::-webkit-scrollbar { - display: none; - } - ${props => mediaMixin(props.theme, { - sm: ` - height: calc(280px - 40px); - `, - md: ` - height: 95vh; - `, -})} -`; - -export const ContentList = styled.ul` - box-sizing: border-box; - list-style-type: none; - padding: .5em; - margin: 0; - width: 100%; - height: auto; -`; \ No newline at end of file diff --git a/src/components/editor/settings/content/list_item/ListItem.tsx b/src/components/editor/settings/content/list_item/ListItem.tsx deleted file mode 100644 index c5caa5c..0000000 --- a/src/components/editor/settings/content/list_item/ListItem.tsx +++ /dev/null @@ -1,77 +0,0 @@ -import * as React from 'react'; -import { connect } from 'react-redux'; -import { bindActionCreators, Dispatch } from 'redux'; -import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'; -import { Item, ItemHeader, ItemContent, IconButton, HeaderLink } from './layout'; -import { Colors } from './colors/Colors'; -import { Properties } from './properties/Properties'; -import { Attributes } from './attributes/Attributes'; -import { Chroma } from './chroma/Chroma'; -import * as actions from '../../../../../store/editor/actions'; -import { isUsingChroma, colorsAmountInGradient } from '../../../../../store/editor/selectors' - -type ListItemComponentProps = { - id: string, - index: number, - chroma: boolean, - colorsAmount: number, - deleteGradient: (id: string) => void, -}; - -const ListItemComponent = (props: ListItemComponentProps) => { - - const [ collapsed, toggleCollapsed ] = React.useState(false); - const { colorsAmount, chroma, index, id, deleteGradient } = props; - const renderContent = () => collapsed ? null : - - { - chroma && colorsAmount >= 2 - ? - : null - } - - - - return ( - - - { - event.preventDefault(); - toggleCollapsed(!collapsed); - }} - > - - - Gradient {index + 1} - deleteGradient(id)} - danger - > - - - - {renderContent()} - - ); -}; - -const mapStateToProps = (state: any, ownProps: { [key: string]: any }) => ({ - chroma: isUsingChroma(state, ownProps.id), - colorsAmount: colorsAmountInGradient(state, ownProps.id), -}); - -const mapDispatchToProps = (dispatch: Dispatch) => bindActionCreators({ - deleteGradient: actions.deleteGradient, -}, dispatch); - -export const ListItem = connect( - mapStateToProps, - mapDispatchToProps, - null, - { pure: false }, -)(ListItemComponent); diff --git a/src/components/editor/settings/content/list_item/attributes/Attributes.tsx b/src/components/editor/settings/content/list_item/attributes/Attributes.tsx deleted file mode 100644 index 0cf592a..0000000 --- a/src/components/editor/settings/content/list_item/attributes/Attributes.tsx +++ /dev/null @@ -1,226 +0,0 @@ -import * as React from 'react'; -import { connect } from 'react-redux'; -import { FormFieldset } from '../../../../../form/FormFieldset'; -import { FormRow } from '../../../../../form/FormRow'; -import { FormRange } from '../../../../../form/FormRange'; -import { FormSelect } from '../../../../../form/FormSelect'; -import * as selectors from '../../../../../../store/editor/selectors'; -import * as payloads from '../../../../../../store/editor/_payloads'; -import { setAttribute } from '../../../../../../store/editor/thunks'; -import { LinearGradientAttributes, RadialGradientAttributes } from '../../../../../../store/_types'; -import { Dispatch, bindActionCreators } from 'redux'; - -type AttributesComponentProps = { - id: string, - gradientType: 'linear' | 'radial', - attributes: LinearGradientAttributes | RadialGradientAttributes, - focalPoints: boolean, - setAttribute: (payload: payloads.AttributeEditionPayload) => void, -}; - -const AttributesComponent = (props: AttributesComponentProps) => { - const inputWidth: string = '70%'; - const labelWidth: string = '30px'; - const { - id, - attributes, - setAttribute, - focalPoints, - gradientType, - } = props; - const renderLinearAttributes = () => ( - - - setAttribute({ - id, - attribute: 'x1', - value: parseFloat((event.target as HTMLInputElement).value) - })} - /> - - - setAttribute({ - id, - attribute: 'y1', - value: parseFloat((event.target as HTMLInputElement).value) - })} - /> - - - setAttribute({ - id, - attribute: 'x2', - value: parseFloat((event.target as HTMLInputElement).value) - })} - /> - - - setAttribute({ - id, - attribute: 'y2', - value: parseFloat((event.target as HTMLInputElement).value) - })} - /> - - - ); - const renderRadialAttributes = () => ( - - - setAttribute({ - id, - attribute: 'cx', - value: parseFloat((event.target as HTMLInputElement).value) - })} - /> - - - setAttribute({ - id, - attribute: 'cy', - value: parseFloat((event.target as HTMLInputElement).value) - })} - /> - - - setAttribute({ - id, - attribute: 'r', - value: parseFloat((event.target as HTMLInputElement).value) - })} - /> - - { - focalPoints - ? - - setAttribute({ - id, - attribute: 'fx', - value: parseFloat((event.target as HTMLInputElement).value) - })} - /> - - - setAttribute({ - id, - attribute: 'fy', - value: parseFloat((event.target as HTMLInputElement).value) - })} - /> - - - : null - } - - setAttribute({ - id, - attribute: 'spreadMethod', - value: (event.target as HTMLInputElement).value, - })} - /> - - - ); - - return ( - - { - gradientType === 'linear' - ? renderLinearAttributes() - : renderRadialAttributes() - } - - ); -}; - -const mapStateToProps = (state: any, ownProps: { [key: string]: string }) => ({ - gradientType: selectors.typeofGradient(state, ownProps.id), - attributes: selectors.attributesOf(state, ownProps.id), - focalPoints: selectors.hasFocalPoints(state, ownProps.id), -}); - -const mapDispatchToProps = (dispatch: Dispatch) => bindActionCreators({ - setAttribute, -}, dispatch); - -export const Attributes = connect( - mapStateToProps, - mapDispatchToProps, -)(AttributesComponent as React.ComponentType); diff --git a/src/components/editor/settings/content/list_item/chroma/Chroma.tsx b/src/components/editor/settings/content/list_item/chroma/Chroma.tsx deleted file mode 100644 index 92ec002..0000000 --- a/src/components/editor/settings/content/list_item/chroma/Chroma.tsx +++ /dev/null @@ -1,112 +0,0 @@ -import * as React from 'react'; -import { connect } from 'react-redux'; -import { FormFieldset } from '../../../../../form/FormFieldset'; -import { FormRow } from '../../../../../form/FormRow'; -import { FormRange } from '../../../../../form/FormRange'; -import { FormSwitch } from '../../../../../form/FormSwitch'; -import { FormSelect } from '../../../../../form/FormSelect'; -import * as selectors from '../../../../../../store/editor/selectors'; -import { setChromaAttribute } from '../../../../../../store/editor/thunks'; -import { ChromaEditionPayload } from '../../../../../../store/editor/_payloads'; -import { ChromaAttributes, ColorInterpolation, ColorMode } from '../../../../../../store/_types'; -import { Dispatch, bindActionCreators } from 'redux'; - -type ChromaAttributesComponentProps = { - id: string, - chromaAttributes: ChromaAttributes, - setChromaAttribute: (payload: ChromaEditionPayload) => void, -}; - -const ChromaAttributesComponent = (props: ChromaAttributesComponentProps) => { - const [ interpolations ] = React.useState([ - 'linear', 'bezier', - ]); - const [ modes ] = React.useState([ - 'rgb', - 'lch', - 'hsv', - 'lab', - 'hsi', - 'hsl', - 'hcl', - ]); - const { - interpolation, - lightnessCorrection, - mode, - samples, - } = props.chromaAttributes; - const { id, setChromaAttribute } = props; - return ( - - - setChromaAttribute({ - id, - attribute: 'interpolation', - value: (event.target as HTMLInputElement).value as ColorInterpolation - })} - /> - - { - interpolation === 'linear' - ? - setChromaAttribute({ - id, - attribute: 'mode', - value: (event.target as HTMLInputElement).value as ColorMode, - })} - /> - - : null - } - - setChromaAttribute({ - id, - value: (value as boolean), - attribute: 'lightnessCorrection', - })} - /> - - - setChromaAttribute({ - id, - attribute: 'samples', - value: parseInt((event.target as HTMLInputElement).value), - })} - /> - - - ); -}; - -const mapStateToProps = (state: any, ownProps: { [key: string]: string }) => ({ - chromaAttributes: selectors.chromaAttributesOf(state, ownProps.id), -}); - -const mapDispatchToProps = (dispatch: Dispatch) => bindActionCreators({ - setChromaAttribute, -}, dispatch); - -export const Chroma = connect( - mapStateToProps, - mapDispatchToProps, -)(ChromaAttributesComponent as React.ComponentType); diff --git a/src/components/editor/settings/content/list_item/colors/Colors.tsx b/src/components/editor/settings/content/list_item/colors/Colors.tsx deleted file mode 100644 index 4102f1b..0000000 --- a/src/components/editor/settings/content/list_item/colors/Colors.tsx +++ /dev/null @@ -1,43 +0,0 @@ -import * as React from 'react'; -import { connect } from 'react-redux'; -import { Dispatch, bindActionCreators } from 'redux'; -import { FormFieldset } from '../../../../../form/FormFieldset'; -import { FormRow } from '../../../../../form/FormRow'; -import { ColorList } from './list/ColorList'; -import { ColorsHeader } from './header/ColorsHeader'; -import * as selectors from '../../../../../../store/editor/selectors'; -import * as actions from '../../../../../../store/editor/actions'; - -type ColorsComponentProps = { - id: string, - colorsAmount: number, -}; - -const ColorsComponent = (props: ColorsComponentProps): React.ReactNode => { - - const { id } = props; - - return ( - - - - - - - ); -}; - -const mapStateToProps = (state: any, ownProps: { [key: string]: string }) => ({ - chroma: selectors.isUsingChroma(state, ownProps.id), -}); - -const mapDispatchToProps = (dispatch: Dispatch) => bindActionCreators({ - addColor: actions.addColor, - deleteAllColors: actions.deleteAllColors, - toggleChroma: actions.toggleChroma, -}, dispatch); - -export const Colors = connect( - mapStateToProps, - mapDispatchToProps, -)(ColorsComponent as React.ComponentType); diff --git a/src/components/editor/settings/content/list_item/colors/color/Color.tsx b/src/components/editor/settings/content/list_item/colors/color/Color.tsx deleted file mode 100644 index 15d8d17..0000000 --- a/src/components/editor/settings/content/list_item/colors/color/Color.tsx +++ /dev/null @@ -1,122 +0,0 @@ -import * as React from 'react'; -import { connect } from 'react-redux'; -import { Dispatch, bindActionCreators } from 'redux'; -import { SketchPicker, ColorResult } from 'react-color'; -import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'; -import { - CSample, - CWrapper, - CName, - CManager, - CLink, - CPickerWrapper -} from './layout'; -import { InputColor } from '../../../../../../../store/_types'; -import * as selectors from '../../../../../../../store/editor/selectors'; -import * as thunks from '../../../../../../../store/editor/thunks'; -import * as payloads from '../../../../../../../store/editor/_payloads'; - -export type ColorComponentProps = { - colorId: string, - gradientId: string, - color: InputColor, - editColor: (payload: payloads.ColorEditionPayload) => void, - deleteColor: (payload: payloads.ColorPayload) => void, -}; - -const ColorComponent = (props: ColorComponentProps) => { - const { color, editColor, deleteColor, colorId, gradientId } = props; - const [ picker, togglePicker ] = React.useState(false); - - let pickerParent: React.MutableRefObject = React.useRef(null); - - const outsideClickHandler = () => { - const clickHandler = (event: MouseEvent) => { - if ( - pickerParent.current !== null && - !(pickerParent.current as HTMLDivElement).contains(event.target as HTMLDivElement) - ) { - togglePicker(false); - document.removeEventListener('click', clickHandler, false); - } else if (pickerParent.current === null) { - document.removeEventListener('click', clickHandler, false); - } - }; - if (pickerParent && picker) { - document.addEventListener('click', clickHandler, false); - } - }; - React.useEffect(outsideClickHandler, [picker]); - - const renderPicker = () => picker - ? - editColor({ - gradientId, - colorId, - color: [ - newColor.rgb.r, - newColor.rgb.g, - newColor.rgb.b, - newColor.rgb.a as number, - ], - })} - /> - - : null; - - return ( - - togglePicker(!picker)} - /> - - R {color.color[0]},  - G {color.color[1]},  - B {color.color[2]},  - A {color.color[3] || 1} - - - togglePicker(!picker)} - > - - - deleteColor({ - gradientId, - colorId, - })} - > - - - - {renderPicker()} - - ); -}; - -const mapStateToProps = (state: any, ownProps: { [key: string]: string }) => ({ - color: selectors.colorById(state, ownProps.gradientId)(ownProps.colorId), -}); - -const mapDispatchToProps = (dispatch: Dispatch) => bindActionCreators({ - editColor: thunks.editColor, - deleteColor: thunks.deleteColor, -}, dispatch); - -export const Color = connect( - mapStateToProps, - mapDispatchToProps, - null, - { pure: false }, -)(ColorComponent as React.ComponentType); diff --git a/src/components/editor/settings/content/list_item/colors/color/layout.ts b/src/components/editor/settings/content/list_item/colors/color/layout.ts deleted file mode 100644 index 8f8b9a7..0000000 --- a/src/components/editor/settings/content/list_item/colors/color/layout.ts +++ /dev/null @@ -1,69 +0,0 @@ -import styled from '../../../../../../../styles/styledComponents'; -import { modularSize } from '../../../../../../../styles/typography'; - -type ColorSampleProps = { - background: string, -}; - -export const CSample = styled.div` - width: 40px; - height: 40px; - background-color: ${props => props.background}; - border-radius: 4px; - &:hover { - cursor: pointer; - } -`; - - -export const CWrapper = styled.div` - position: relative; - width: 100%; - height: 40px; - box-sizing: border-box; - display: flex; - align-items: center; - justify-content: space-around; - color: ${props => props.theme.colors.text}; - border-radius: 4px; - padding: .5em; - margin: 0; -`; - -export const CName = styled.span` - width: 50%; - font-size: ${modularSize(-1.65)}; - box-sizing: border-box; - margin-left: .5em; - padding-right: 1em; -`; - -export const CManager = styled.div` - width: 30%; - display: flex; - box-sizing: border-box; -`; - -export const CLink = styled.a` - font-size: ${modularSize(-1.65)}; - box-sizing: border-box; - text-decoration: none; - display: flex; - align-items: center; - justify-content: center; - width: 50%; - height: inherit; - &:hover { - cursor: pointer; - } -`; - -export const CPickerWrapper = styled.div` - position: absolute; - z-index: 10; - right: 3em; - top: 3em; - .sketch-picker input { - color: #212121 !important; - } -`; \ No newline at end of file diff --git a/src/components/editor/settings/content/list_item/colors/header/ColorsHeader.tsx b/src/components/editor/settings/content/list_item/colors/header/ColorsHeader.tsx deleted file mode 100644 index 1db1d95..0000000 --- a/src/components/editor/settings/content/list_item/colors/header/ColorsHeader.tsx +++ /dev/null @@ -1,88 +0,0 @@ -import * as React from 'react'; -import { connect } from 'react-redux'; -import { bindActionCreators, Dispatch } from 'redux'; -import nanoid from 'nanoid'; -import { FormRow } from '../../../../../../form/FormRow'; -import { FormButton } from '../../../../../../form/FormButton'; -import { FormSwitch } from '../../../../../../form/FormSwitch'; -import * as selectors from '../../../../../../../store/editor/selectors'; -import * as actions from '../../../../../../../store/editor/actions'; -import * as thunks from '../../../../../../../store/editor/thunks'; -import * as payloads from '../../../../../../../store/editor/_payloads'; - -type ColorsHeaderComponentProps = { - id: string, - colorsAmount: number, - chroma: boolean, - addColor: (payload: payloads.ColorPayload) => (dispatch: Dispatch) => void, - deleteAllColors: (payload: string) => void, - toggleChroma: (payload: string) => void, -}; - -class ColorsHeaderComponent extends React.PureComponent { - public render() { - const { - colorsAmount, - addColor, - id, - deleteAllColors, - toggleChroma, - chroma, - } = this.props; - return ( - - - { - (event as React.MouseEvent).preventDefault(); - addColor({ - gradientId: id, - colorId: nanoid(), - }) - }} - > - Add Color - - { - (event as React.MouseEvent).preventDefault(); - deleteAllColors(id); - }} - title="Delete All" - > - Delete All - - - - toggleChroma(id)} - /> - - - ); - } -}; - -const mapStateToProps = (state: any, ownProps: { [key: string]: string }) => ({ - colorsAmount: selectors.colorsAmountInGradient(state, ownProps.id), - chroma: selectors.isUsingChroma(state, ownProps.id), -}); - -const mapDispatchToProps = (dispatch: Dispatch) => bindActionCreators({ - addColor: thunks.addColor, - deleteAllColors: actions.deleteAllColors, - toggleChroma: thunks.toggleChroma, -}, dispatch); - -export const ColorsHeader = connect( - mapStateToProps, - mapDispatchToProps, - // @ts-ignore -)(ColorsHeaderComponent); diff --git a/src/components/editor/settings/content/list_item/colors/list/ColorList.tsx b/src/components/editor/settings/content/list_item/colors/list/ColorList.tsx deleted file mode 100644 index 9874f3a..0000000 --- a/src/components/editor/settings/content/list_item/colors/list/ColorList.tsx +++ /dev/null @@ -1,52 +0,0 @@ -import * as React from 'react'; -import { connect } from 'react-redux'; -import { CList, CListItem } from './layout'; -import { Color } from '../color/Color'; -import * as selectors from '../../../../../../../store/editor/selectors'; - -type ColorListComponentProps = { - colorIdsList: string[], - gradientId: string, -}; - -class ColorListComponent extends React.Component { - - public render() { - const { colorIdsList } = this.props; - return ( - - {colorIdsList.length > 0 ? this.renderColors() : null} - - ); - } - - private renderColors = () => { - return this.props.colorIdsList - .map((id: string) => ( - - - - )); - } - - public shouldComponentUpdate(nextProps: ColorListComponentProps, nextState: any) { - if (nextProps.colorIdsList.length !== this.props.colorIdsList.length) { - return true; - } - return false; - } -}; - -const mapStateToProps = (state: any, ownProps: { [key: string]: string }) => ({ - colorIdsList: selectors.colorIdsFromGradient(state, ownProps.gradientId), -}); - -export const ColorList = connect( - mapStateToProps, - null, - null, - { pure: true }, -)(ColorListComponent); diff --git a/src/components/editor/settings/content/list_item/colors/list/layout.ts b/src/components/editor/settings/content/list_item/colors/list/layout.ts deleted file mode 100644 index afa1ae6..0000000 --- a/src/components/editor/settings/content/list_item/colors/list/layout.ts +++ /dev/null @@ -1,18 +0,0 @@ -import styled from '../../../../../../../styles/styledComponents'; - -export const CList = styled.ul` - box-sizing: border-box; - width: 100%; - margin: 0; - padding: 0; - display: flex; - flex-direction: column; - list-style-type: none; -`; - -export const CListItem = styled.li` - box-sizing: border-box; - margin: 0; - padding: .5em; - width: 100%; -`; \ No newline at end of file diff --git a/src/components/editor/settings/content/list_item/layout.ts b/src/components/editor/settings/content/list_item/layout.ts deleted file mode 100644 index 07b6157..0000000 --- a/src/components/editor/settings/content/list_item/layout.ts +++ /dev/null @@ -1,66 +0,0 @@ -import styled from '../../../../../styles/styledComponents'; - -export const Item = styled.li` - box-sizing: border-box; - padding: 0; - display: flex; - flex-direction: column; - margin: .5em 0; - width: 100%; - height: auto; -`; - -export const ItemHeader = styled.header` - background-color: ${props => props.theme.colors.main_200}; - box-sizing: border-box; - display: flex; - align-items: center; - justify-content: space-between; - padding: .25em; - transition: 120ms all ease-in-out; - width: 100%; - height: 35px; -`; - -export const ItemContent = styled.main` - box-sizing: border-box; - background-color: ${props => props.theme.colors.main_400}; - border: 2px solid ${props => props.theme.colors.main_200}; - padding: .5em; - display: ${props => props.hidden ? 'none' : 'flex'}; - width: 100%; - height: auto; - border-radius: 0 0 4px 4px; - flex-direction: column; -`; - -export const IconButton = styled.button` - padding: .3em; - border: none; - outline: none; - background-color: transparent; - color: ${props => props.theme.colors.text}; - display: flex; - align-items: center; - justify-content: space-between; - &:hover { - cursor: pointer; - } -`; - -type HeaderLinkProps = { - danger?: boolean; -}; - -export const HeaderLink = styled.a` - text-decoration: none; - display: flex; - align-items: center; - justify-content: center; - color: ${props => props.danger ? props.theme.colors.danger : props.theme.colors.text}; - width: 35px; - height: 100%; - &:hover { - cursor: pointer; - } -`; diff --git a/src/components/editor/settings/content/list_item/properties/Properties.tsx b/src/components/editor/settings/content/list_item/properties/Properties.tsx deleted file mode 100644 index 79bb080..0000000 --- a/src/components/editor/settings/content/list_item/properties/Properties.tsx +++ /dev/null @@ -1,36 +0,0 @@ -import * as React from 'react'; -import { connect } from 'react-redux'; -import { typeofGradient } from '../../../../../../store/editor/selectors'; -import { FormFieldset } from '../../../../../form/FormFieldset'; -import { GradientType } from './type/GradientType'; -import { FocalPoints } from './focal_points/FocalPoints'; -import { BlendModeSelector } from './blend_mode/BlendModeSelector'; - -type PropertiesComponentProps = { - id: string, - type: 'linear' | 'radial', -}; - -const PropertiesComponent = (props: PropertiesComponentProps) => { - const { id, type } = props; - return ( - - - - { - type === 'radial' - ? - : null - } - - ); -}; - -const mapStateToProps = (state: any, ownProps: { [key: string]: string }) => ({ - type: typeofGradient(state, ownProps.id), -}); - -export const Properties = connect( - mapStateToProps, - null, -)(PropertiesComponent); diff --git a/src/components/editor/settings/content/list_item/properties/blend_mode/BlendModeSelector.tsx b/src/components/editor/settings/content/list_item/properties/blend_mode/BlendModeSelector.tsx deleted file mode 100644 index b89023d..0000000 --- a/src/components/editor/settings/content/list_item/properties/blend_mode/BlendModeSelector.tsx +++ /dev/null @@ -1,65 +0,0 @@ -import * as React from 'react'; -import { connect } from 'react-redux'; -import { Dispatch, bindActionCreators } from 'redux'; -import { FormRow } from '../../../../../../form/FormRow'; -import { FormSelect } from '../../../../../../form/FormSelect'; -import { BlendMode, BlendModeObject } from '../../../../../../../store/_types'; -import { setLocalBlendMode } from '../../../../../../../store/editor/actions'; -import { LocalBlendModePayload } from '../../../../../../../store/editor/_payloads'; -import { localBlendMode } from '../../../../../../../store/editor/selectors'; - -type BlendModeComponentProps = { - id: string, - blendMode: BlendModeObject, - setLocalBlendMode: (payload: LocalBlendModePayload) => void, -}; - -const BlendModeComponent = (props: BlendModeComponentProps) => { - const [ modes ] = React.useState([ - 'normal', - 'multiply', - 'screen', - 'overlay', - 'darken', - 'lighten', - 'color-dodge', - 'color-burn', - 'hard-light', - 'soft-light', - 'difference', - 'exclusion', - 'hue', - 'saturation', - 'color', - 'luminosity' - ]); - const { blendMode, id, setLocalBlendMode } = props; - return ( - - { - setLocalBlendMode({ - id, - blendMode: (event.target as HTMLInputElement).value as BlendMode, - }) - }} - /> - - ); -}; - -const mapStateToProps = (state: any, ownProps: { [key: string]: string }) => ({ - blendMode: localBlendMode(state, ownProps.id), -}); - -const mapDispatchToProps = (dispatch: Dispatch) => bindActionCreators({ - setLocalBlendMode, -}, dispatch); - -export const BlendModeSelector = connect( - mapStateToProps, - mapDispatchToProps, -)(BlendModeComponent as React.ComponentType); diff --git a/src/components/editor/settings/content/list_item/properties/focal_points/FocalPoints.tsx b/src/components/editor/settings/content/list_item/properties/focal_points/FocalPoints.tsx deleted file mode 100644 index 080b638..0000000 --- a/src/components/editor/settings/content/list_item/properties/focal_points/FocalPoints.tsx +++ /dev/null @@ -1,40 +0,0 @@ - -import * as React from 'react'; -import { connect } from 'react-redux'; -import { bindActionCreators, Dispatch } from 'redux'; -import { FormRow } from '../../../../../../form/FormRow'; -import { FormSwitch } from '../../../../../../form/FormSwitch'; -import * as selectors from '../../../../../../../store/editor/selectors'; -import { toggleFocalPoints } from '../../../../../../../store/editor/actions'; - -type FocalPointsComponentProps = { - id: string, - focalPoints: boolean, - toggleFocalPoints: (payload: string) => boolean, -}; - -const FocalPointsComponent = (props: FocalPointsComponentProps) => { - const { focalPoints, id, toggleFocalPoints } = props; - return ( - - toggleFocalPoints(id)} - /> - - ); -}; - -const mapStateToProps = (state: any, ownProps: { [key: string]: string }) => ({ - focalPoints: selectors.hasFocalPoints(state, ownProps.id), -}); - -const mapDispatchToProps = (dispatch: Dispatch) => bindActionCreators({ - toggleFocalPoints, -}, dispatch); - -export const FocalPoints = connect( - mapStateToProps, - mapDispatchToProps, -)(FocalPointsComponent as React.ComponentType); diff --git a/src/components/editor/settings/content/list_item/properties/type/GradientType.tsx b/src/components/editor/settings/content/list_item/properties/type/GradientType.tsx deleted file mode 100644 index 84cefad..0000000 --- a/src/components/editor/settings/content/list_item/properties/type/GradientType.tsx +++ /dev/null @@ -1,45 +0,0 @@ -import * as React from 'react'; -import { connect } from 'react-redux'; -import { bindActionCreators, Dispatch } from 'redux'; -import { FormRow } from '../../../../../../form/FormRow'; -import { FormSelect } from '../../../../../../form/FormSelect'; -import * as selectors from '../../../../../../../store/editor/selectors'; -import * as payloads from '../../../../../../../store/editor/_payloads'; -import { setGradientType } from '../../../../../../../store/editor/thunks'; - -type GradientTypeComponentProps = { - id: string, - gradientType: 'linear' | 'radial', - setGradientType: (payload: payloads.GradientTypePayload) => void, -}; - -const GradientTypeComponent = (props: GradientTypeComponentProps) => { - const [ options ] = React.useState(['linear', 'radial']); - const { id, gradientType, setGradientType } = props; - return ( - - setGradientType({ - id, - type: ((event as React.ChangeEvent).target as HTMLSelectElement).value as 'linear' | 'radial', - })} - /> - - ); -}; - -const mapStateToProps = (state: any, ownProps: { [key: string]: string }) => ({ - gradientType: selectors.typeofGradient(state, ownProps.id), -}); - -const mapDispatchToProps = (dispatch: Dispatch) => bindActionCreators({ - setGradientType, -}, dispatch); - -export const GradientType = connect( - mapStateToProps, - mapDispatchToProps, -)(GradientTypeComponent as React.ComponentType); diff --git a/src/components/editor/settings/header/SettingsHeader.tsx b/src/components/editor/settings/header/SettingsHeader.tsx deleted file mode 100644 index 91350ba..0000000 --- a/src/components/editor/settings/header/SettingsHeader.tsx +++ /dev/null @@ -1,123 +0,0 @@ -import * as React from 'react'; -import nanoid from 'nanoid'; -import { connect } from 'react-redux'; -import { bindActionCreators, Dispatch } from 'redux'; -import throttle from 'lodash.throttle'; -import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'; -import { FormRow } from '../../../form/FormRow'; -import { FormButton } from '../../../form/FormButton'; -import { AppModal } from '../../../common/AppModal'; -import { SHeader, SHeaderContentDivider, SHeaderIconButton } from './layout'; -import * as editorActions from '../../../../store/editor/actions'; -import * as appActions from '../../../../store/application/actions'; -import * as appSelectors from '../../../../store/application/selectors'; -import { gradientsAmount } from '../../../../store/editor/selectors'; -import { PresetForm } from '../../../presets/PresetForm'; -import { PresetSelector } from './preset_selector/PresetSelector'; -import { BlendModeSelector } from './blend_mode_selector/BlendModeSelector'; - -export type SettingsHeaderComponentProps = { - addGradient: (id: string) => void, - deleteAllGradients: () => void, - openModal: () => void, - closeModal: () => void, - modal: boolean, - gradientsAmount: number, - presetRootId: string, -}; - -class SettingsHeaderComponent extends React.PureComponent { - - createGradient = (event?: React.MouseEvent) => { - const { addGradient } = this.props; - const throttled = throttle( - () => addGradient(nanoid()), - 500, - ); - (event as React.MouseEvent).preventDefault(); - throttled(); - }; - - deleteAllGradients = () => this.props.deleteAllGradients(); - - public render() { - const { - gradientsAmount, - openModal, - closeModal, - modal, - presetRootId, - } = this.props; - return ( - - - - - Add Gradient - - - Delete All - - - - - - - - { - modal - ? - - - : null - } - - - - - - - - - ); - } -}; - -const mapStateToProps = (state: any) => ({ - gradientsAmount: gradientsAmount(state), - modal: appSelectors.modal(state), -}) - -const mapDispatchToProps = (dispatch: Dispatch) => bindActionCreators({ - addGradient: editorActions.addGradient, - deleteAllGradients: editorActions.deleteAllGradients, - openModal: appActions.openModal, - closeModal: appActions.closeModal, -}, dispatch); - -export const SettingsHeader = connect( - mapStateToProps, - mapDispatchToProps, -)(SettingsHeaderComponent); diff --git a/src/components/editor/settings/header/blend_mode_selector/BlendModeSelector.tsx b/src/components/editor/settings/header/blend_mode_selector/BlendModeSelector.tsx deleted file mode 100644 index 435a9e9..0000000 --- a/src/components/editor/settings/header/blend_mode_selector/BlendModeSelector.tsx +++ /dev/null @@ -1,58 +0,0 @@ -import * as React from 'react'; -import { connect } from 'react-redux'; -import { Dispatch, bindActionCreators } from 'redux'; -import { BlendMode } from '../../../../../store/_types'; -import { FormSelect } from '../../../../form/FormSelect'; -import { blendMode } from '../../../../../store/editor/selectors'; -import { setGlobalBlendMode } from '../../../../../store/editor/actions'; - -export type BlendModeSelectorComponentProps = { - blendMode: BlendMode, - setGlobalBlendMode: (mode: BlendMode) => void, -}; - -const BlendModeSelectorComponent = (props: BlendModeSelectorComponentProps) => { - const [ modes ] = React.useState([ - 'normal', - 'multiply', - 'screen', - 'overlay', - 'darken', - 'lighten', - 'color-dodge', - 'color-burn', - 'hard-light', - 'soft-light', - 'difference', - 'exclusion', - 'hue', - 'saturation', - 'color', - 'luminosity' - ]); - const { blendMode, setGlobalBlendMode } = props; - return ( - setGlobalBlendMode( - (event.target as HTMLSelectElement).value as BlendMode) - } - placeholder="Select preset" - /> - ); -}; - -const mapStateToProps = (state: any) => ({ - blendMode: blendMode(state), -}); - -const mapDispatchToProps = (dispatch: Dispatch) => bindActionCreators({ - setGlobalBlendMode, -}, dispatch); - -export const BlendModeSelector = connect( - mapStateToProps, - mapDispatchToProps, -)(BlendModeSelectorComponent); diff --git a/src/components/editor/settings/header/layout.ts b/src/components/editor/settings/header/layout.ts deleted file mode 100644 index d6c8c5e..0000000 --- a/src/components/editor/settings/header/layout.ts +++ /dev/null @@ -1,34 +0,0 @@ -import styled from '../../../../styles/styledComponents'; -import { darken } from 'polished'; - -export const SHeader = styled.header` - box-sizing: border-box; - background-color: ${props => props.theme.colors.main_200}; - padding: .5em; - display: flex; - justify-content: space-around; - width: 100%; - flex-direction: column; -`; - -export const SHeaderContentDivider = styled.div` - display: flex; - align-items: center; -`; - -export const SHeaderIconButton = styled.button` - background-color: transparent; - border: none; - outline: none; - text-decoration: none; - color: ${props => props.theme.colors.text}; - transition: 120ms all ease-in-out; - &:hover { - cursor: pointer; - color: ${props => darken(0.25, props.theme.colors.text)}; - } - &:disabled { - opacity: 0.5; - cursor: not-allowed; - } -`; \ No newline at end of file diff --git a/src/components/editor/settings/header/preset_selector/PresetSelector.tsx b/src/components/editor/settings/header/preset_selector/PresetSelector.tsx deleted file mode 100644 index f7d5950..0000000 --- a/src/components/editor/settings/header/preset_selector/PresetSelector.tsx +++ /dev/null @@ -1,45 +0,0 @@ -import * as React from 'react'; -import { connect } from 'react-redux'; -import { Dispatch, bindActionCreators } from 'redux'; -import * as appSelectors from '../../../../../store/application/selectors'; -import { Preset } from '../../../../../store/_types'; -import { selectPreset } from '../../../../../store/application/thunks'; -import { FormSelect } from '../../../../form/FormSelect'; - -export type PresetSelectorComponentProps = { - presets: Preset[], - selected: string, - selectPreset: (preset: string) => void, -}; - -const PresetSelectorComponent = (props: PresetSelectorComponentProps) => { - const { presets, selectPreset, selected } = props; - const mapPresets = (presets: Preset[]): string[] => presets - .map((preset: Preset): string => preset.name); - return ( - selectPreset( - (event.target as HTMLSelectElement).value) - } - placeholder="Select preset" - disabled={presets.length === 0} - /> - ); -}; - -const mapStateToProps = (state: any) => ({ - presets: appSelectors.presetList(state), - selected: appSelectors.selectedPreset(state), -}); - -const mapDispatchToProps = (dispatch: Dispatch) => bindActionCreators({ - selectPreset, -}, dispatch); - -export const PresetSelector = connect( - mapStateToProps, - mapDispatchToProps, -)(PresetSelectorComponent as React.ComponentType); diff --git a/src/components/editor/settings/layout.ts b/src/components/editor/settings/layout.ts deleted file mode 100644 index fe55f78..0000000 --- a/src/components/editor/settings/layout.ts +++ /dev/null @@ -1,12 +0,0 @@ -import styled from '../../../styles/styledComponents'; - -export const SettingsWrapper = styled.div` - box-sizing: border-box; - width: 100%; - height: inherit; - display: flex; - flex-direction: column; - h6 { - margin: 0 0 .2em 0; - } -`; diff --git a/src/components/form/FormButton.tsx b/src/components/form/FormButton.tsx deleted file mode 100644 index fd2afe3..0000000 --- a/src/components/form/FormButton.tsx +++ /dev/null @@ -1,59 +0,0 @@ -import * as React from 'react'; -import { darken } from 'polished'; -import styled from '../../styles/styledComponents'; - -type FButtonProps = { - level?: 'primary' | 'danger', -}; - -const FButton = styled.button` - padding: .5em .5em; - border: none; - border-radius: 4px; - background-color: ${props => props.level === 'danger' ? props.theme.colors.danger : props.theme.colors.primary}; - color: ${props => props.level === 'danger' ? '#fcfcfc' : props.theme.colors.text}; - transition: 120ms all ease-in-out; - border: 1px solid ${props => props.theme.colors.main_300}; - outline: none; - &:hover { - cursor: pointer; - background-color: ${props => darken(0.05, props.level === 'danger' ? props.theme.colors.danger : props.theme.colors.primary)}; - } - &:focus { - outline: 1px solid ${props => props.theme.colors.main_100}; - } - &:disabled { - opacity: 0.5; - cursor: not-allowed; - } -`; - -export type FormButtonProps = { - onClick: (event?: React.MouseEvent) => void, - children?: React.ReactNode, - disabled?: boolean, - title?: string, - style?: any, - level?: 'primary' | 'danger', -}; - -export const FormButton = (props: FormButtonProps) => { - const { - onClick, - disabled, - title, - children, - style, - } = props; - return ( - - {children} - - ); -}; diff --git a/src/components/form/FormFieldset.tsx b/src/components/form/FormFieldset.tsx deleted file mode 100644 index b4c6926..0000000 --- a/src/components/form/FormFieldset.tsx +++ /dev/null @@ -1,41 +0,0 @@ -import * as React from 'react'; -import styled from '../../styles/styledComponents'; -import { modularSize } from '../../styles/typography'; -import { rgba } from 'polished'; - -const FFieldset = styled.fieldset` - box-sizing: border-box; - width: 100%; - height: auto; - padding: 0.5em; - border: 1px solid ${props => rgba(props.theme.colors.text, 0.45)}; - border-radius: 3px; - color: ${props => props.theme.colors.text}; - display: flex; - flex-direction: column; -`; - -const FLegend = styled.legend` - box-sizing: border-box; - padding: .3em; - background-color: ${props => props.theme.colors.main_400}; - border: ${props => props.theme.colors.text}; - border-radius: 4px; - color: ${props => props.theme.colors.text}; - font-size: ${modularSize(-1)}; -`; - -export type FormFieldsetProps = { - legend: string, - children?: React.ReactNode, -}; - -export const FormFieldset = (props: FormFieldsetProps) => { - const { legend, children } = props; - return ( - - {legend} - {children} - - ); -}; diff --git a/src/components/form/FormLabel.tsx b/src/components/form/FormLabel.tsx deleted file mode 100644 index 56bbd79..0000000 --- a/src/components/form/FormLabel.tsx +++ /dev/null @@ -1,8 +0,0 @@ -import styled from '../../styles/styledComponents'; -import { modularSize } from '../../styles/typography'; - -export const FormLabel = styled.label` - font-size: ${modularSize(-1.65)}; - padding-right: .5em; - min-width: 30px; -`; diff --git a/src/components/form/FormNumber.tsx b/src/components/form/FormNumber.tsx deleted file mode 100644 index ff8a7f9..0000000 --- a/src/components/form/FormNumber.tsx +++ /dev/null @@ -1,49 +0,0 @@ -import * as React from 'react'; -import { rgba } from 'polished'; -import styled from '../../styles/styledComponents'; -import { FormLabel } from './FormLabel'; - -const FNumber = styled.input` - color: ${props => props.theme.colors.text}; - background-color: ${props => props.theme.colors.main_400}; - border: 1px solid ${props => rgba(props.theme.colors.text, 0.45)}; - border-radius: 4px; - padding: .3em; -`; - -export type FormNumberProps = { - label: string, - value: number, - min: number, - max: number, - step: number, - onChange?: any, -}; - -export const FormNumber = (props: FormNumberProps) => { - - const { - label, - value, - min, - max, - step, - onChange, - } = props; - - return ( - - - {label}: - - - - ); -}; diff --git a/src/components/form/FormRange.tsx b/src/components/form/FormRange.tsx deleted file mode 100644 index d27e8cc..0000000 --- a/src/components/form/FormRange.tsx +++ /dev/null @@ -1,121 +0,0 @@ -import * as React from 'react'; -import { FormLabel } from './FormLabel'; -import styled from '../../styles/styledComponents'; -import { modularSize } from '../../styles/typography'; -import { AppTheme } from '../../styles/themes'; - -type FRangeInputProps = { - width?: string, -}; - -const thumbStyles = (theme: AppTheme): string => ` - height: 16px; - width: 16px; - border-radius: 4px; - background: ${theme.colors.primary}; -`; - -const trackStyles = (theme: AppTheme): string => ` - width: 100%; - height: 16px; - cursor: pointer; - background: ${theme.colors.main_300}; - border-radius: 4px; - border: none; -`; - -const FRangeInput = styled.input` - -webkit-appearance: none; - margin-right: .5em; - background: transparent; - width: ${props => props.width || '100%'}; - height: 35px; - - &:hover { - cursor: pointer; - } - - &::-webkit-slider-thumb { - -webkit-appearance: none; - ${props => thumbStyles(props.theme)}; - } - - &::-moz-range-thumb { - ${props => thumbStyles(props.theme)}; - } - - &::-ms-thumb { - ${props => thumbStyles(props.theme)}; - } - - &:focus { - outline: none; - } - - &::ms-track { - width: ${props => props.width || '100%'}; - cursor: pointer; - background: transparent; - border-color: transparent; - color: transparent; - ${props => trackStyles(props.theme)}; - } - - &::-webkit-slider-runnable-track { - ${props => trackStyles(props.theme)}; - } - - &::-moz-range-track { - ${props => trackStyles(props.theme)}; - } -`; - -const FRangeValue = styled.span` - width: 50px; - font-weight: bold; - font-size: ${modularSize(-1)}; - text-align: right; -`; - -export type FormRangeProps = { - label: string, - value: number, - min: number, - max: number, - step: number, - onChange: (event: React.ChangeEvent) => void, - inputWidth: string, - labelWidth: string, -}; - -export const FormRange = (props: FormRangeProps) => { - const { - label, - value, - min, - max, - step, - onChange, - inputWidth, - labelWidth, - } = props; - return ( - - - {label}: - - - - {value} - - - ); -}; \ No newline at end of file diff --git a/src/components/form/FormRow.tsx b/src/components/form/FormRow.tsx deleted file mode 100644 index 850599c..0000000 --- a/src/components/form/FormRow.tsx +++ /dev/null @@ -1,15 +0,0 @@ -import styled from '../../styles/styledComponents'; -import { modularSize } from '../../styles/typography'; - -export const FormRow = styled.div` - box-sizing: border-box; - width: 100%; - height: auto; - display: flex; - align-items: center; - padding: .5em; - h5 { - font-size: ${modularSize(-1.2)}; - margin: 0; - } -`; diff --git a/src/components/form/FormSelect.tsx b/src/components/form/FormSelect.tsx deleted file mode 100644 index 074dfa2..0000000 --- a/src/components/form/FormSelect.tsx +++ /dev/null @@ -1,75 +0,0 @@ -import * as React from 'react'; -import styled from '../../styles/styledComponents'; -import { FormLabel } from './FormLabel'; - -export const FSelect = styled.select` - color: ${props => props.theme.colors.text}; - background-color: ${props => props.theme.colors.main_400}; - &:hover { - cursor: pointer; - } - &:disabled { - opacity: 0.5; - cursor: not-allowed; - } -`; - -export type FormSelectOption = { - text: string, - value: string, -}; - -export type FormSelectProps = { - label: string, - options: string[], - value?: string, - onChange?: any, - placeholder?: string, - disabled?: boolean -}; - -export const FormSelect = (props: FormSelectProps) => { - - const { - disabled, - label, - options, - value, - onChange, - placeholder, - } = props; - - const renderOpts = () => options.map((opt: string): JSX.Element => ( - - )); - - return ( - - - {label}: - - - { - placeholder - ? - : null - } - {renderOpts()} - - - ); -}; \ No newline at end of file diff --git a/src/components/form/FormSwitch.tsx b/src/components/form/FormSwitch.tsx deleted file mode 100644 index 85b72a0..0000000 --- a/src/components/form/FormSwitch.tsx +++ /dev/null @@ -1,34 +0,0 @@ -import * as React from 'react'; -import nanoid from 'nanoid'; -import Switch from 'react-switch'; -import { FormLabel } from './FormLabel'; - -export type FormSwitchProps = { - label: string, - checked: boolean, - onChange: (value?: boolean) => void, - disabled?: boolean, -}; - -export const FormSwitch = (props: FormSwitchProps) => { - const { label, checked, onChange, disabled } = props; - return ( - - - {label}: - - - - ); -}; \ No newline at end of file diff --git a/src/components/layout/GlobalStyles.ts b/src/components/layout/GlobalStyles.ts deleted file mode 100644 index 6293914..0000000 --- a/src/components/layout/GlobalStyles.ts +++ /dev/null @@ -1,21 +0,0 @@ -import { createGlobalStyle } from '../../styles/styledComponents'; -import { typography } from '../../styles/typography'; - -export const GlobalStyles = createGlobalStyle` - - ${typography}; - - html { - margin: 0; - padding: 0; - } - - body { - margin: 0; - padding: 0; - background-color: ${props => props.theme.colors.main_400}; - font-family: 'Open Sans', sans-serif; - -webkit-font-smoothing: antialiased; - -moz-osx-font-smoothing: grayscale; - } -`; diff --git a/src/components/layout/StoreThemeProvider.tsx b/src/components/layout/StoreThemeProvider.tsx deleted file mode 100644 index 0dceb64..0000000 --- a/src/components/layout/StoreThemeProvider.tsx +++ /dev/null @@ -1,28 +0,0 @@ -import * as React from 'react'; -import { ThemeProvider } from '../../styles/styledComponents'; -import { connect } from 'react-redux'; -import { darkTheme, lightTheme } from '../../styles/themes'; - -type StoreThemeProviderProps = { - theme: 'dark' | 'light'; - children: any; -}; - -const $StoreThemeProvider = ( - props: StoreThemeProviderProps -): React.ReactNode => ( - - {props.children} - -); - -const mapStateToProps = (state: any) => ({ - theme: state.application.theme, -}); - -export const StoreThemeProvider = connect( - mapStateToProps, - null, - null, - { pure: false }, -)($StoreThemeProvider as React.ComponentType); diff --git a/src/components/layout/ThemeSwitch.tsx b/src/components/layout/ThemeSwitch.tsx deleted file mode 100644 index e4ef98d..0000000 --- a/src/components/layout/ThemeSwitch.tsx +++ /dev/null @@ -1,98 +0,0 @@ -import * as React from 'react'; -import { connect } from 'react-redux'; -import Switch, { ReactSwitchProps } from 'react-switch'; -import { setTheme } from '../../store/application/actions'; -import { bindActionCreators } from 'redux'; -import { modularSize } from '../../styles/typography'; -import styled from '../../styles/styledComponents'; -import { AppTheme } from '../../styles/themes'; -import { mediaMixin } from '../../styles/mixins'; -import { rgba } from 'polished'; - -const SwitchWrapper = styled.div` - position: fixed; - display: flex; - align-items: center; - z-index: 1; - padding: .5em; - box-sizing: border-box; - background-color: ${props => rgba(props.theme.colors.main_400, 0.5)}; - box-shadow: 0 1px 3px rgba(0, 0, 0, 0.23); - border-radius: 4px; - ${props => mediaMixin(props.theme, { - sm: ` - right: 10px; - top: 10px; - `, - md: ` - left: 10px; - bottom: 10px; - `, - })} -`; - -type SwitchLabelProps = { - theme: AppTheme, - children: React.ReactNode, - htmlFor: string, -}; - -const SwitchLabel = styled.label` - color: ${props => props.theme.colors.text}; - padding-right: 10px; - font-size: ${modularSize(-2)}; - font-weight: bold; -`; - -type SwitchProps = { - theme: 'dark' | 'light', - onChange: (newTheme: 'light' | 'dark') => void, -}; - -class SwitchComp extends React.PureComponent { - - private changeHandler = () => { - const { theme, onChange } = this.props; - const newTheme: 'dark' | 'light' = theme === 'dark' ? - 'light' : 'dark'; - onChange(newTheme); - } - - public render() { - const { theme } = this.props; - return ( - - - Toggle theme - - - - ); - } -}; - -const mapStateToProps = (state: any) => ({ - theme: state.application.theme, -}); - -const mapDispatchToProps = (dispatch: any) => bindActionCreators( - { onChange: setTheme }, - dispatch -); - -export const ThemeSwitch = connect( - mapStateToProps, - mapDispatchToProps, - // @ts-ignore -)(SwitchComp); diff --git a/src/components/layout/ViewWrapper.tsx b/src/components/layout/ViewWrapper.tsx deleted file mode 100644 index f12fda5..0000000 --- a/src/components/layout/ViewWrapper.tsx +++ /dev/null @@ -1,26 +0,0 @@ -import styled from '../../styles/styledComponents'; -import { AppTheme } from '../../styles/themes'; -import { mediaMixin } from '../../styles/mixins'; - -export type ViewWrapperProps = { - theme: AppTheme, -}; - -const ViewWrapper = styled.div` - margin: 0 auto; - min-height: 100vh; - position: relative; - top: 0; - left: 0; - box-sizing: border-box; - margin: 0 auto; - padding: 0; - box-sizing: border-box; - background-color: ${props => props.theme.colors.main_400}; - ${props => mediaMixin(props.theme, { - sm: `width: 100%;`, - md: `max-width: 1440px;`, - })} -`; - -export { ViewWrapper }; \ No newline at end of file diff --git a/src/components/presets/PresetForm.tsx b/src/components/presets/PresetForm.tsx deleted file mode 100644 index b8f578b..0000000 --- a/src/components/presets/PresetForm.tsx +++ /dev/null @@ -1,104 +0,0 @@ -import * as React from 'react'; -import { connect } from 'react-redux'; -import { bindActionCreators, Dispatch } from 'redux'; -import { presetList } from '../../store/application/selectors'; -import { gradients } from '../../store/editor/selectors'; -import * as appActions from '../../store/application/actions'; -import { FormRow } from '../form/FormRow'; -import { FormButton } from '../form/FormButton'; -import { AppInput } from '../common/AppInput'; -import { savePreset } from '../../utils/presets'; -import { Preset, Gradient } from '../../store/_types'; - -type PresetFormComponentProps = { - presets: Preset[], - gradients: Gradient[], - onCancel: () => void, -}; - -export const PresetFormComponent = (props: PresetFormComponentProps) => { - const { presets, gradients, onCancel } = props; - const [ presetName, setPresetName ] = React.useState(''); - const [ error, setError ] = React.useState(false); - - const isDuplicatedName = (name: string): boolean => - presets.findIndex((preset: Preset) => preset.name === name) > -1; - - const typeHandler = (event: React.ChangeEvent) => { - const newName: string = (event.target as HTMLInputElement).value; - setPresetName(newName); - if (isDuplicatedName(newName)) { - setError(true); - } else { - setError(false); - } - }; - - const keydownHandler = (event: React.KeyboardEvent) => { - if ( - presetName.length > 0 && - !error && - event.key === 'Enter' - ) { - onSave(); - } - }; - - const onSave = () => { - savePreset({ - name: presetName, - value: gradients, - }); - onCancel(); - }; - - return ( - - - - - - - Cancel - - - Save - - - - ); -}; - -const mapStateToProps = (state: any) => ({ - presets: presetList(state), - gradients: gradients(state), -}); - -const mapDispatchToProps = (dispatch: Dispatch) => bindActionCreators({ - onCancel: appActions.closeModal, -}, dispatch); - -export const PresetForm = connect( - mapStateToProps, - mapDispatchToProps, -)(PresetFormComponent); diff --git a/src/index.tsx b/src/index.tsx deleted file mode 100644 index 3ccacb9..0000000 --- a/src/index.tsx +++ /dev/null @@ -1,19 +0,0 @@ -import React from 'react'; -import ReactDOM from 'react-dom'; -import { App } from './App'; -// import * as serviceWorker from './serviceWorker'; -import { fontFace } from './styles/fontFace'; - -const loadFonts = () => { - const head = document.getElementsByTagName('head')[0]; - const style = document.createElement('style'); - style.innerHTML = fontFace; - head.appendChild(style); -}; - -ReactDOM.render(, document.getElementById('root'), loadFonts); - -// If you want your app to work offline and load faster, you can change -// unregister() to register() below. Note this comes with some pitfalls. -// Learn more about service workers: http://bit.ly/CRA-PWA -// serviceWorker.unregister(); diff --git a/src/main.tsx b/src/main.tsx new file mode 100644 index 0000000..f46c379 --- /dev/null +++ b/src/main.tsx @@ -0,0 +1,9 @@ +import React from "react"; +import ReactDOM from "react-dom/client"; +import App from "./App"; + +ReactDOM.createRoot(document.getElementById("root")!).render( + + + +); diff --git a/src/react-app-env.d.ts b/src/react-app-env.d.ts deleted file mode 100644 index 6431bc5..0000000 --- a/src/react-app-env.d.ts +++ /dev/null @@ -1 +0,0 @@ -/// diff --git a/src/serviceWorker.js b/src/serviceWorker.js deleted file mode 100644 index 2283ff9..0000000 --- a/src/serviceWorker.js +++ /dev/null @@ -1,135 +0,0 @@ -// This optional code is used to register a service worker. -// register() is not called by default. - -// This lets the app load faster on subsequent visits in production, and gives -// it offline capabilities. However, it also means that developers (and users) -// will only see deployed updates on subsequent visits to a page, after all the -// existing tabs open on the page have been closed, since previously cached -// resources are updated in the background. - -// To learn more about the benefits of this model and instructions on how to -// opt-in, read http://bit.ly/CRA-PWA - -const isLocalhost = Boolean( - window.location.hostname === 'localhost' || - // [::1] is the IPv6 localhost address. - window.location.hostname === '[::1]' || - // 127.0.0.1/8 is considered localhost for IPv4. - window.location.hostname.match( - /^127(?:\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/ - ) -); - -export function register(config) { - if (process.env.NODE_ENV === 'production' && 'serviceWorker' in navigator) { - // The URL constructor is available in all browsers that support SW. - const publicUrl = new URL(process.env.PUBLIC_URL, window.location.href); - if (publicUrl.origin !== window.location.origin) { - // Our service worker won't work if PUBLIC_URL is on a different origin - // from what our page is served on. This might happen if a CDN is used to - // serve assets; see https://github.com/facebook/create-react-app/issues/2374 - return; - } - - window.addEventListener('load', () => { - const swUrl = `${process.env.PUBLIC_URL}/service-worker.js`; - - if (isLocalhost) { - // This is running on localhost. Let's check if a service worker still exists or not. - checkValidServiceWorker(swUrl, config); - - // Add some additional logging to localhost, pointing developers to the - // service worker/PWA documentation. - navigator.serviceWorker.ready.then(() => { - console.log( - 'This web app is being served cache-first by a service ' + - 'worker. To learn more, visit http://bit.ly/CRA-PWA' - ); - }); - } else { - // Is not localhost. Just register service worker - registerValidSW(swUrl, config); - } - }); - } -} - -function registerValidSW(swUrl, config) { - navigator.serviceWorker - .register(swUrl) - .then(registration => { - registration.onupdatefound = () => { - const installingWorker = registration.installing; - if (installingWorker == null) { - return; - } - installingWorker.onstatechange = () => { - if (installingWorker.state === 'installed') { - if (navigator.serviceWorker.controller) { - // At this point, the updated precached content has been fetched, - // but the previous service worker will still serve the older - // content until all client tabs are closed. - console.log( - 'New content is available and will be used when all ' + - 'tabs for this page are closed. See http://bit.ly/CRA-PWA.' - ); - - // Execute callback - if (config && config.onUpdate) { - config.onUpdate(registration); - } - } else { - // At this point, everything has been precached. - // It's the perfect time to display a - // "Content is cached for offline use." message. - console.log('Content is cached for offline use.'); - - // Execute callback - if (config && config.onSuccess) { - config.onSuccess(registration); - } - } - } - }; - }; - }) - .catch(error => { - console.error('Error during service worker registration:', error); - }); -} - -function checkValidServiceWorker(swUrl, config) { - // Check if the service worker can be found. If it can't reload the page. - fetch(swUrl) - .then(response => { - // Ensure service worker exists, and that we really are getting a JS file. - const contentType = response.headers.get('content-type'); - if ( - response.status === 404 || - (contentType != null && contentType.indexOf('javascript') === -1) - ) { - // No service worker found. Probably a different app. Reload the page. - navigator.serviceWorker.ready.then(registration => { - registration.unregister().then(() => { - window.location.reload(); - }); - }); - } else { - // Service worker found. Proceed as normal. - registerValidSW(swUrl, config); - } - }) - .catch(() => { - console.log( - 'No internet connection found. App is running in offline mode.' - ); - }); -} - -export function unregister() { - if ('serviceWorker' in navigator) { - navigator.serviceWorker.ready.then(registration => { - registration.unregister(); - }); - } -} diff --git a/src/store/_types.ts b/src/store/_types.ts deleted file mode 100644 index 00b53ee..0000000 --- a/src/store/_types.ts +++ /dev/null @@ -1,82 +0,0 @@ -export type LinearGradientAttributes = { - x1: number, - y1: number, - x2: number, - y2: number, -}; - -export type RadialGradientAttributes = { - cx: number, - cy: number, - r: number, - fx: number, - fy: number, - spreadMethod?: 'pad' | 'repeat' | 'reflect', -}; - -export type ColorMode = 'lch' - | 'hsv' - | 'lab' - | 'rgb' - | 'hsl' - | 'hsi' - | 'hcl'; - -export type ColorInterpolation = 'linear' | 'bezier'; - -export type ChromaAttributes = { - interpolation: ColorInterpolation, - mode: ColorMode, - lightnessCorrection: boolean, - samples: number, -}; - -export type InputColor = { - id: string, - color: number[], -}; - -export type OutputColor = { - color: number[], - offset: number, -}; - -export type Gradient = { - id: string, - type: 'linear' | 'radial', - blendMode: BlendModeObject, - focalPoints: boolean, - useChroma: boolean, - attributes: LinearGradientAttributes | RadialGradientAttributes, - chroma: ChromaAttributes, - colors: InputColor[], - output: OutputColor[], -}; - -export type Preset = { - name: string, - value: Gradient[], -}; - -export type BlendModeObject = { - id: string, - mode: BlendMode, -}; - -export type BlendMode = - 'normal' - | 'multiply' - | 'screen' - | 'overlay' - | 'darken' - | 'lighten' - | 'color-dodge' - | 'color-burn' - | 'hard-light' - | 'soft-light' - | 'difference' - | 'exclusion' - | 'hue' - | 'saturation' - | 'color' - | 'luminosity' \ No newline at end of file diff --git a/src/store/application/actions.ts b/src/store/application/actions.ts deleted file mode 100644 index 39f2d29..0000000 --- a/src/store/application/actions.ts +++ /dev/null @@ -1,20 +0,0 @@ -import { createAction } from 'typesafe-actions'; - -export const setTheme = createAction('@application/SET_THEME', (resolve) => { - return (theme: 'dark' | 'light') => resolve(theme); -}); - -export const selectPreset = createAction( - '@application/SELECT_PRESET', (resolve) => - (selectedPreset: string) => resolve(selectedPreset) -); - -export const openModal = createAction( - '@application/OPEN_MODAL', (resolve) => - () => resolve() -); - -export const closeModal = createAction( - '@application/CLOSE_MODAL', (resolve) => - () => resolve() -); diff --git a/src/store/application/reducer.ts b/src/store/application/reducer.ts deleted file mode 100644 index 5326353..0000000 --- a/src/store/application/reducer.ts +++ /dev/null @@ -1,51 +0,0 @@ -import { ActionType, getType } from 'typesafe-actions'; -import * as appActions from './actions'; -import { Preset } from '../_types'; -import { loadPresets } from '../../utils/presets'; - -export type ApplicationReducer = { - theme: 'dark' | 'light', - presets: Preset[], - selectedPreset: string | undefined, - modal: boolean, -}; - -export type ApplicationAction = ActionType; - -export const initialState: ApplicationReducer = { - theme: 'dark', - presets: loadPresets(), - selectedPreset: undefined, - modal: false, -}; - -export const application = - ( - state: ApplicationReducer = initialState, - action: ApplicationAction - ): ApplicationReducer => { - switch (action.type) { - case getType(appActions.setTheme): - return { - ...state, - theme: action.payload as ('dark' | 'light'), - }; - case getType(appActions.selectPreset): - return { - ...state, - selectedPreset: action.payload, - }; - case getType(appActions.openModal): - return { - ...state, - modal: true, - }; - case getType(appActions.closeModal): - return { - ...state, - modal: false, - }; - default: - return state; - } - } diff --git a/src/store/application/selectors.ts b/src/store/application/selectors.ts deleted file mode 100644 index 0cc65d7..0000000 --- a/src/store/application/selectors.ts +++ /dev/null @@ -1,10 +0,0 @@ -import { Preset } from "../_types"; - -export const modal = (state: any): boolean => - state.application.modal; - -export const presetList = (state: any): Preset[] => - state.application.presets; - -export const selectedPreset = (state: any): string => - state.application.selectedPreset; \ No newline at end of file diff --git a/src/store/application/thunks.ts b/src/store/application/thunks.ts deleted file mode 100644 index a2211af..0000000 --- a/src/store/application/thunks.ts +++ /dev/null @@ -1,24 +0,0 @@ -import { Dispatch } from "redux"; -import { ApplicationAction } from "./reducer"; -import * as appActions from './actions'; -import { addPredefinedGradient, deleteAllGradients } from '../editor/actions'; -import { Preset, Gradient } from "../_types"; -import { EditorAction } from "../editor/reducer"; - -export const selectPreset = (payload: string) => - ( - dispatch: Dispatch, - getState: () => any, - ) => { - const list: Preset[] = getState().application.presets; - const gradientsLength = getState().editor.gradients.length; - const gradientsFromPreset = list - .find((preset: Preset) => preset.name === payload); - if (gradientsLength > 0) { - dispatch(deleteAllGradients()); - } - dispatch(appActions.selectPreset(payload)); - (gradientsFromPreset as Preset).value.forEach((gradient: Gradient) => - dispatch(addPredefinedGradient(gradient)) - ); - }; \ No newline at end of file diff --git a/src/store/editor/_payloads.ts b/src/store/editor/_payloads.ts deleted file mode 100644 index 0a4da60..0000000 --- a/src/store/editor/_payloads.ts +++ /dev/null @@ -1,42 +0,0 @@ -import { - LinearGradientAttributes, - RadialGradientAttributes, - ColorMode, - ColorInterpolation, - BlendMode, -} from "../_types"; - -export type ColorPayload = { - gradientId: string, - colorId: string -}; - -export type ColorEditionPayload = ColorPayload & { - color: number[], -}; - -export type GradientTypePayload = { - id: string, - type: 'linear' | 'radial', -}; - -export type AttributeEditionPayload = { - id: string, - attribute: string, - value: number | string, -}; - -export type AttributesReplacementPayload = GradientTypePayload & { - attributes: LinearGradientAttributes | RadialGradientAttributes, -}; - -export type ChromaEditionPayload = { - id: string, - attribute: 'interpolation' | 'mode' | 'lightnessCorrection' | 'samples', - value: ColorInterpolation | (ColorMode) | boolean | number, -}; - -export type LocalBlendModePayload = { - id: string, - blendMode: BlendMode, -}; diff --git a/src/store/editor/actions.ts b/src/store/editor/actions.ts deleted file mode 100644 index 678bd1c..0000000 --- a/src/store/editor/actions.ts +++ /dev/null @@ -1,87 +0,0 @@ -import { createAction } from 'typesafe-actions'; -import * as payloads from './_payloads'; -import { Gradient, BlendMode } from '../_types'; - -export const addGradient = createAction( - '@editor/ADD_GRADIENT', (resolve) => - (id: string) => resolve(id) - ); - -export const addPredefinedGradient = createAction( - '@editor/ADD_PREDEFINED_GRADIENT', (resolve) => - (payload: Gradient) => resolve(payload) -); - -export const deleteGradient = createAction( - '@editor/DELETE_GRADIENT', (resolve) => - (id: string) => resolve(id) -); - -export const addColor = createAction( - '@editor/ADD_COLOR', (resolve) => - (payload: payloads.ColorPayload) => resolve(payload) -); - -export const deleteColor = createAction( - '@editor/DELETE_COLOR', (resolve) => - (payload: payloads.ColorPayload) => resolve(payload) -); - -export const editColor = createAction( - '@editor/EDIT_COLOR', (resolve) => - (payload: payloads.ColorEditionPayload) => resolve(payload) -); - -export const deleteAllColors = createAction( - '@editor/DELETE_ALL_COLORS', (resolve) => - (id: string) => resolve(id), -); - -export const toggleChroma = createAction( - '@editor/TOGGLE_CHROMA', (resolve) => - (id: string) => resolve(id) -); - -export const setGradientType = createAction( - '@editor/SET_GRADIENT_TYPE', (resolve) => - (payload: payloads.GradientTypePayload) => resolve(payload), -); - -export const setAttribute = createAction( - '@editor/SET_ATTRIBUTE', (resolve) => - (payload: payloads.AttributeEditionPayload) => resolve(payload) -); - -export const toggleFocalPoints = createAction( - '@editor/TOGGLE_FOCAL_POINTS', (resolve) => - (id: string) => resolve(id) -); - -export const replaceGradientAttributes = createAction( - '@editor/REPLACE_GRADIENT_ATTRIBUTES', (resolve) => - (payload: payloads.AttributesReplacementPayload) => resolve(payload) -); - -export const setChromaAttribute = createAction( - '@editor/SET_CHROMA_ATTRIBUTE', (resolve) => - (payload: payloads.ChromaEditionPayload) => resolve(payload) -); - -export const computeChromaColors = createAction( - '@editor/COMPUTE_CHROMA_COLORS', - (resolve) => (gradientId: string) => resolve(gradientId), -); - -export const deleteAllGradients = createAction( - '@editor/DELETE_ALL_GRADIENTS', (resolve) => - () => resolve(), -); -export const setGlobalBlendMode = createAction( - '@editor/SET_GLOBAL_BLEND_MODE', (resolve) => - (payload: BlendMode) => resolve(payload) -); - -export const setLocalBlendMode = createAction( - '@editor/SET_LOCAL_BLEND_MODE', (resolve) => - (payload: payloads.LocalBlendModePayload) => resolve(payload) -); diff --git a/src/store/editor/helpers.ts b/src/store/editor/helpers.ts deleted file mode 100644 index 2d8ecaa..0000000 --- a/src/store/editor/helpers.ts +++ /dev/null @@ -1,61 +0,0 @@ -import nanoid from 'nanoid'; -import { Gradient, InputColor } from "../_types"; -import { EditorReducer } from "./reducer"; - -export const createGradient = (id: string): Gradient => ({ - id, - type: 'linear', - blendMode: { - id: nanoid(), - mode: 'normal', - }, - focalPoints: false, - useChroma: false, - attributes: { - x1: 0, - y1: 0, - x2: 1, - y2: 0, - }, - chroma: { - interpolation: 'linear', - mode: 'rgb', - lightnessCorrection: false, - samples: 10, - }, - colors: [], - output: [], -}); - -export const createColor = (id: string): InputColor => ({ - id, - color: [ - Math.floor(Math.random() * 255), - Math.floor(Math.random() * 255), - Math.floor(Math.random() * 255), - 0.5, - ], -}); - -export const getGradientIndex = (state: EditorReducer, id: string): number => - state.gradients.findIndex((gradient: Gradient) => gradient.id === id); - -export const getColorIndex = (state: EditorReducer, gradientIndex: number, colorId: string): number => { - return state.gradients[gradientIndex].colors - .findIndex((color: InputColor) => color.id === colorId); -} - -export const defaultLinearAttributes = () => ({ - x1: 0, - y1: 0, - x2: 1, - y2: 0, -}); - -export const defaultRadialAttributes = () => ({ - cx: 0.5, - cy: 0.5, - r: 1, - fx: 0, - fy: 0 -}); \ No newline at end of file diff --git a/src/store/editor/mutations.ts b/src/store/editor/mutations.ts deleted file mode 100644 index f2726e6..0000000 --- a/src/store/editor/mutations.ts +++ /dev/null @@ -1,269 +0,0 @@ -import update from 'immutability-helper'; -import { EditorReducer } from './reducer'; -import { gradient } from '../../utils/gradient'; -import * as helpers from './helpers'; -import * as payloads from './_payloads'; -import { Gradient } from '../_types'; -import { BlendMode } from 'csstype'; - -export const addGradient = (state: EditorReducer, payload: string): EditorReducer => - update( - state, - { - gradients: { - $push: [helpers.createGradient(payload)], - }, - }, - ); - -export const addPredefinedGradient = (state: EditorReducer, payload: Gradient): EditorReducer => - update( - state, - { - gradients: { - $push: [payload], - }, - }, - ); - -export const deleteGradient = (state: EditorReducer, payload: string): EditorReducer => - update( - state, - { - gradients: { - $splice: [ - [ helpers.getGradientIndex(state, payload), 1 ] - ], - }, - }, - ); - -export const addColor = (state: EditorReducer, payload: payloads.ColorPayload): EditorReducer => { - const targetIndex: number = helpers.getGradientIndex(state, payload.gradientId); - return update( - state, - { - gradients: { - [targetIndex]: { - colors: { - $push: [ helpers.createColor(payload.colorId) ], - }, - }, - }, - }, - ); -}; - -export const deleteColor = (state: EditorReducer, payload: payloads.ColorPayload): EditorReducer => { - const targetIndex: number = helpers.getGradientIndex(state, payload.gradientId); - const colorIndex: number = helpers.getColorIndex(state, targetIndex, payload.colorId); - return update( - state, - { - gradients: { - [targetIndex]: { - colors: { - $splice: [ - [colorIndex, 1], - ], - }, - }, - }, - }, - ); -}; - -export const editColor = (state: EditorReducer, payload: payloads.ColorEditionPayload): EditorReducer => { - const targetIndex: number = helpers.getGradientIndex(state, payload.gradientId); - const colorIndex: number = helpers.getColorIndex(state, targetIndex, payload.colorId); - return update( - state, - { - gradients: { - [targetIndex]: { - colors: { - [colorIndex]: { - color: { - $set: payload.color, - }, - }, - }, - }, - }, - }, - ); -}; - -export const deleteAllColors = (state: EditorReducer, payload: string): EditorReducer => { - const targetIndex: number = helpers.getGradientIndex(state, payload); - return update( - state, - { - gradients: { - [targetIndex]: { - colors: { - $set: [], - }, - }, - }, - }, - ); -}; - -export const toggleChroma = (state: EditorReducer, payload: string): EditorReducer => { - const targetIndex: number = helpers.getGradientIndex(state, payload); - return update( - state, - { - gradients: { - [targetIndex]: { - $toggle: [ 'useChroma' ], - } - }, - }, - ); -}; - -export const setGradientType = (state: EditorReducer, payload: payloads.GradientTypePayload): EditorReducer => { - const targetIndex: number = helpers.getGradientIndex(state, payload.id); - return update( - state, - { - gradients: { - [targetIndex]: { - type: { - $set: payload.type, - }, - }, - }, - }, - ); -}; - -export const setAttribute = (state: EditorReducer, payload: payloads.AttributeEditionPayload): EditorReducer => { - const targetIndex: number = helpers.getGradientIndex(state, payload.id); - return update( - state, - { - gradients: { - [targetIndex]: { - attributes: { - [payload.attribute]: { - $set: payload.value, - }, - }, - }, - }, - }, - ); -}; - -export const toggleFocalPoints = (state: EditorReducer, payload: string): EditorReducer => { - const targetIndex: number = helpers.getGradientIndex(state, payload); - return update( - state, - { - gradients: { - [targetIndex]: { - focalPoints: { - $set: !state.gradients[targetIndex].focalPoints, - }, - }, - }, - }, - ); -}; - -export const replaceGradientAttributes = ( - state: EditorReducer, - payload: payloads.AttributesReplacementPayload -): EditorReducer => { - const targetIndex: number = helpers.getGradientIndex(state, payload.id); - return update( - state, - { - gradients: { - [targetIndex]: { - attributes: { - $set: payload.attributes, - }, - }, - }, - }, - ); -}; - -export const setChromaAttribute = (state: EditorReducer, payload: payloads.ChromaEditionPayload): EditorReducer => { - const targetIndex: number = helpers.getGradientIndex(state, payload.id); - return update( - state, - { - gradients: { - [targetIndex]: { - chroma: { - [payload.attribute]: { - $set: payload.value, - }, - }, - }, - }, - }, - ); -}; - -export const computeChromaColors = (state: EditorReducer, payload: string): EditorReducer => { - const targetIndex: number = helpers.getGradientIndex(state, payload); - return update( - state, - { - gradients: { - [targetIndex]: { - output: { - $set: gradient(state.gradients[targetIndex]), - } - } - } - } - ); -}; - -export const deleteAllGradients = (state: EditorReducer): EditorReducer => - update( - state, - { - gradients: { - $set: [], - }, - }, - ); - -export const setGlobalBlendMode = (state: EditorReducer, payload: BlendMode): EditorReducer => - update( - state, - { - blendMode: { - $set: payload, - }, - }, - ); - -export const setLocalBlendMode = ( - state: EditorReducer, - payload: payloads.LocalBlendModePayload -): EditorReducer => { - const targetIndex = helpers.getGradientIndex(state, payload.id); - return update( - state, - { - gradients: { - [targetIndex]: { - blendMode: { - mode: { - $set: payload.blendMode, - }, - }, - }, - }, - }, - ); -}; diff --git a/src/store/editor/reducer.ts b/src/store/editor/reducer.ts deleted file mode 100644 index ffaeb6b..0000000 --- a/src/store/editor/reducer.ts +++ /dev/null @@ -1,60 +0,0 @@ -import { Gradient, BlendMode } from '../_types'; -import { getType, ActionType } from 'typesafe-actions'; -import * as EditorActions from './actions'; -import * as mutations from './mutations'; - -export type EditorReducer = { - gradients: Gradient[], - blendMode: BlendMode, -}; - -export type EditorAction = ActionType; - -const initialState: EditorReducer = { - gradients: [], - blendMode: 'normal', -}; - -export const editor = ( - state: EditorReducer = initialState, - action: EditorAction -): EditorReducer => { - switch (action.type) { - case getType(EditorActions.addGradient): - return mutations.addGradient(state, action.payload); - case getType(EditorActions.addPredefinedGradient): - return mutations.addPredefinedGradient(state, action.payload); - case getType(EditorActions.deleteGradient): - return mutations.deleteGradient(state, action.payload); - case getType(EditorActions.addColor): - return mutations.addColor(state, action.payload); - case getType(EditorActions.deleteColor): - return mutations.deleteColor(state, action.payload); - case getType(EditorActions.editColor): - return mutations.editColor(state, action.payload); - case getType(EditorActions.deleteAllColors): - return mutations.deleteAllColors(state, action.payload); - case getType(EditorActions.toggleChroma): - return mutations.toggleChroma(state, action.payload); - case getType(EditorActions.setGradientType): - return mutations.setGradientType(state, action.payload); - case getType(EditorActions.setAttribute): - return mutations.setAttribute(state, action.payload); - case getType(EditorActions.toggleFocalPoints): - return mutations.toggleFocalPoints(state, action.payload); - case getType(EditorActions.replaceGradientAttributes): - return mutations.replaceGradientAttributes(state, action.payload); - case getType(EditorActions.setChromaAttribute): - return mutations.setChromaAttribute(state, action.payload); - case getType(EditorActions.computeChromaColors): - return mutations.computeChromaColors(state, action.payload); - case getType(EditorActions.deleteAllGradients): - return mutations.deleteAllGradients(state); - case getType(EditorActions.setGlobalBlendMode): - return mutations.setGlobalBlendMode(state, action.payload); - case getType(EditorActions.setLocalBlendMode): - return mutations.setLocalBlendMode(state, action.payload); - default: - return state; - } -}; diff --git a/src/store/editor/selectors.ts b/src/store/editor/selectors.ts deleted file mode 100644 index 2dfb6a4..0000000 --- a/src/store/editor/selectors.ts +++ /dev/null @@ -1,62 +0,0 @@ -import { Gradient, InputColor, LinearGradientAttributes, RadialGradientAttributes, ChromaAttributes, BlendMode, BlendModeObject } from '../_types'; - -export const gradients = (state: any): Gradient[] => - state.editor.gradients; - -export const gradientsAmount = (state: any): number => - gradients(state).length; - -export const idList = (state: any): string[] => - state.editor.gradients.map((gradient: Gradient): string => gradient.id); - -export const fromGradients = (state: any, id: string): Gradient => - state.editor.gradients.find((gradient: Gradient) => gradient.id === id); - -export const colorsFromGradient = (state: any, id: string): InputColor[] => - fromGradients(state, id).colors; - -export const colorIdsFromGradient = (state: any, id: string): string[] => - colorsFromGradient(state, id) - .map((color: InputColor): string => color.id); - -export const colorsAmountInGradient = (state: any, id: string): number => - colorsFromGradient(state, id).length; - -export const isUsingChroma = (state: any, id: string): boolean => - fromGradients(state, id).useChroma; - -export const colorById = (state: any, gradientId: string) => - (colorId: string): InputColor => colorsFromGradient(state, gradientId) - .find((color: InputColor) => color.id === colorId); - -export const typeofGradient = (state: any, gradientId: string): 'linear' | 'radial' => - fromGradients(state, gradientId).type; - -export const attributeFromGradient = (state: any, id: string) => - (attribute: string): number => - // @ts-ignore - fromGradients(state, id).attributes[attribute]; - -export const hasFocalPoints = (state: any, id: string): boolean => - fromGradients(state, id).focalPoints; - -export const attributesOf = (state: any, id: string): LinearGradientAttributes | RadialGradientAttributes => - fromGradients(state, id).attributes; - -export const chromaAttributesOf = (state: any, id: string): ChromaAttributes => - fromGradients(state, id).chroma; - -export const blendMode = (state: any): BlendMode => - state.editor.blendMode; - -export const localBlendMode = (state: any, id: string) => - fromGradients(state, id).blendMode; - -export const localBlendModeObjects = (state: any): BlendModeObject[] => - state.editor.gradients.map((gradient: Gradient) => gradient.blendMode); - -export const localBlendModes = (state: any): BlendMode[] => - localBlendModeObjects(state).map((obj: BlendModeObject) => obj.mode); - -export const localBlendModesIds = (state: any): string[] => - state.editor.gradients.map((gradient: Gradient) => gradient.blendMode.id); diff --git a/src/store/editor/thunks.ts b/src/store/editor/thunks.ts deleted file mode 100644 index 651bcae..0000000 --- a/src/store/editor/thunks.ts +++ /dev/null @@ -1,83 +0,0 @@ -import { Dispatch } from 'redux'; -import * as payloads from './_payloads'; -import * as actions from './actions'; -import * as helpers from './helpers'; -import * as selectors from './selectors'; -import { Gradient } from '../_types'; -import { EditorAction, EditorReducer } from './reducer'; - -const decideAboutChroma = (state: any, id: string) => (dispatch: Dispatch) => { - const gradient: Gradient = selectors.fromGradients(state, id); - if (gradient.useChroma && gradient.colors.length >= 2) { - dispatch(actions.computeChromaColors(id)); - } -} - -export const setGradientType = (payload: payloads.GradientTypePayload) => - ( - dispatch: Dispatch, - getState: () => EditorReducer, - ) => { - dispatch(actions.setGradientType(payload)); - dispatch(actions.replaceGradientAttributes({ - ...payload, - attributes: payload.type === 'linear' - ? helpers.defaultLinearAttributes() - : helpers.defaultRadialAttributes(), - })); - decideAboutChroma(getState(), payload.id)(dispatch as Dispatch); - }; - -export const addColor = (payload: payloads.ColorPayload) => - ( - dispatch: Dispatch, - getState: () => EditorReducer, - ) => { - dispatch(actions.addColor(payload)); - decideAboutChroma(getState(), payload.gradientId)(dispatch as Dispatch); - }; - -export const deleteColor = (payload: payloads.ColorPayload) => - ( - dispatch: Dispatch, - getState: () => EditorReducer, - ) => { - dispatch(actions.deleteColor(payload)); - decideAboutChroma(getState(), payload.gradientId)(dispatch as Dispatch); - }; - -export const editColor = (payload: payloads.ColorEditionPayload) => - ( - dispatch: Dispatch, - getState: () => EditorReducer, - ) => { - dispatch(actions.editColor(payload)); - decideAboutChroma(getState(), payload.gradientId)(dispatch as Dispatch); - }; - -export const toggleChroma = (payload: string) => - ( - dispatch: Dispatch, - getState: () => EditorReducer, - ) => { - dispatch(actions.toggleChroma(payload)); - decideAboutChroma(getState(), payload)(dispatch as Dispatch); - }; - -export const setAttribute = (payload: payloads.AttributeEditionPayload) => - ( - dispatch: Dispatch, - getState: () => EditorReducer, - ) => { - dispatch(actions.setAttribute(payload)); - decideAboutChroma(getState(), payload.id)(dispatch as Dispatch); - }; - -export const setChromaAttribute = (payload: payloads.ChromaEditionPayload) => - ( - dispatch: Dispatch, - getState: () => EditorReducer, - ) => { - dispatch(actions.setChromaAttribute(payload)); - decideAboutChroma(getState(), payload.id)(dispatch as Dispatch); - }; \ No newline at end of file diff --git a/src/store/reducers.ts b/src/store/reducers.ts deleted file mode 100644 index 67e708f..0000000 --- a/src/store/reducers.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { combineReducers } from 'redux'; -import { application } from './application/reducer'; -import { editor } from './editor/reducer'; - -export const rootReducer = combineReducers({ - application, - editor, -}); diff --git a/src/store/store.ts b/src/store/store.ts deleted file mode 100644 index 4185530..0000000 --- a/src/store/store.ts +++ /dev/null @@ -1,24 +0,0 @@ -import { applyMiddleware, compose, createStore } from 'redux'; -import { composeWithDevTools } from 'redux-devtools-extension'; -import thunk from 'redux-thunk'; -import { rootReducer } from './reducers'; - -const initialState = {}; - -const middlewares = [ - applyMiddleware(thunk), -]; - -let composed = middlewares; - -if (process.env.NODE_ENV === 'development') { - composed = [composeWithDevTools(...middlewares)] -} else { - composed = [compose(...middlewares)]; -} - -export const store = createStore( - rootReducer, - initialState, - ...composed, -); diff --git a/src/styles/fontFace.ts b/src/styles/fontFace.ts deleted file mode 100644 index 28c1812..0000000 --- a/src/styles/fontFace.ts +++ /dev/null @@ -1,47 +0,0 @@ -export const fontFace = ` - /* fira-mono-regular - latin */ - @font-face { - font-family: 'Fira Mono'; - font-style: normal; - font-weight: 400; - src: local('Fira Mono Regular'), local('FiraMono-Regular'), - url('./fonts/fira-mono-v6-latin/fira-mono-v6-latin-regular.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */ - url('./fonts/fira-mono-v6-latin/fira-mono-v6-latin-regular.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */ - } - /* fira-mono-700 - latin */ - @font-face { - font-family: 'Fira Mono'; - font-style: normal; - font-weight: 700; - src: local('Fira Mono Bold'), local('FiraMono-Bold'), - url('./fonts/fira-mono-v6-latin/fira-mono-v6-latin-700.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */ - url('./fonts/fira-mono-v6-latin/fira-mono-v6-latin-700.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */ - } - - /* open-sans-300 - latin */ - @font-face { - font-family: 'Open Sans'; - font-style: normal; - font-weight: 300; - src: local('Open Sans Light'), local('OpenSans-Light'), - url('./fonts/open-sans-v15-latin/open-sans-v15-latin-300.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */ - url('./fonts/open-sans-v15-latin/open-sans-v15-latin-300.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */ - } - /* open-sans-regular - latin */ - @font-face { - font-family: 'Open Sans'; - font-style: normal; - font-weight: 400; - src: local('Open Sans Regular'), local('OpenSans-Regular'), - url('./fonts/open-sans-v15-latin/open-sans-v15-latin-regular.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */ - url('./fonts/open-sans-v15-latin/open-sans-v15-latin-regular.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */ - } - /* open-sans-700 - latin */ - @font-face { - font-family: 'Open Sans'; - font-style: normal; - font-weight: 700; - src: local('Open Sans Bold'), local('OpenSans-Bold'), - url('./fonts/open-sans-v15-latin/open-sans-v15-latin-700.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */ - url('./fonts/open-sans-v15-latin/open-sans-v15-latin-700.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */ -` \ No newline at end of file diff --git a/src/styles/mixins.ts b/src/styles/mixins.ts deleted file mode 100644 index c720f22..0000000 --- a/src/styles/mixins.ts +++ /dev/null @@ -1,10 +0,0 @@ -import { AppTheme } from './themes'; - -export const mediaMixin = (theme: AppTheme, contents: { sm: string, md: string }): string => ` - @media screen and (max-width: ${theme.breakpoints.sm}px) { - ${contents.sm} - } - @media screen and (min-width: ${theme.breakpoints.sm + 1}px) { - ${contents.md} - } -`; diff --git a/src/styles/styledComponents.ts b/src/styles/styledComponents.ts deleted file mode 100644 index fb3820b..0000000 --- a/src/styles/styledComponents.ts +++ /dev/null @@ -1,19 +0,0 @@ -import * as styledComponents from "styled-components"; -import { ThemedStyledComponentsModule } from "styled-components"; -import { AppTheme } from './themes'; - -const { - default: styled, - css, - createGlobalStyle, - keyframes, - ThemeProvider, -} = styledComponents as ThemedStyledComponentsModule; - -export { - css, - createGlobalStyle, - keyframes, - ThemeProvider, -}; -export default styled; diff --git a/src/styles/themes.ts b/src/styles/themes.ts deleted file mode 100644 index 1c47b6c..0000000 --- a/src/styles/themes.ts +++ /dev/null @@ -1,52 +0,0 @@ -export type AppThemeColors = { - primary: string; - danger: string; - main_100: string; - main_200: string; - main_300: string; - main_400: string; - text: string; -}; - -export type AppThemeBreakpoints = { - sm: number, - md: number, - lg: number, -}; - -export type AppTheme = { - colors: AppThemeColors, - breakpoints: AppThemeBreakpoints, -}; - -const breakpoints: AppThemeBreakpoints = { - sm: 768, - md: 1440, - lg: 1800, -}; - -export const darkTheme: AppTheme = { - colors: { - primary: '#5383D6', - danger: '#CC0E3A', - main_100: '#11151c', - main_200: '#212C3F', - main_300: '#364256', - main_400: '#4D5E7C', - text: '#FCFCFC', - }, - breakpoints, -}; - -export const lightTheme: AppTheme = { - colors: { - primary: '#18e09d', - danger: '#CC0E3A', - main_100: '#898993', - main_200: '#B6B6C1', - main_300: '#CECEE0', - main_400: '#DEDEEF', - text: '#212121', - }, - breakpoints, -}; diff --git a/src/styles/typography.ts b/src/styles/typography.ts deleted file mode 100644 index d4f3944..0000000 --- a/src/styles/typography.ts +++ /dev/null @@ -1,56 +0,0 @@ -import { css } from './styledComponents'; -import { modularScale } from 'polished'; - -export const modularSize = (size: number): string => modularScale(size, 1, 'minorThird'); - -export const typography = css` - - h1, h2, h3, h4, h5, h6, code, - label, span, a, dd, dt, dl, pre, legend, select, option, input, - button, p, legend { - color: ${props => props.theme.colors.text}; - } - - h1, h2, h3, h4, h5, h6, code, legend, p, input, select, option, button, - label, span, dd, dt, a { - font-family: 'Fira Mono', source-code-pro, Menlo, Monaco, Consolas, 'Courier New', monospace; - } - - h1 { - font-size: ${modularSize(5)}; - } - - h2 { - font-size: ${modularSize(4)} - } - - h3 { - font-size: ${modularSize(3)} - } - - h4 { - font-size: ${modularSize(2)}; - } - - h5 { - font-size: ${modularSize(1)}; - } - - h6 { - font-size: ${modularSize(0)}; - } - - p, label, span, dl, dd, dt, a { - font-size: ${modularSize(0)}; - letter-spacing: .035em; - } - - legend { - font-size: ${modularSize(0)}; - } - - input, select, option { - font-size: ${modularSize(-1)}; - } - -`; diff --git a/src/utils/gradient.ts b/src/utils/gradient.ts deleted file mode 100644 index 89ad2c8..0000000 --- a/src/utils/gradient.ts +++ /dev/null @@ -1,64 +0,0 @@ -import chroma from 'chroma-js'; -import { - Gradient, - OutputColor, - InputColor, - ChromaAttributes -} from '../store/_types'; - -const createLinearScale = (attrs: ChromaAttributes, colors: string[]) => { - if (attrs.lightnessCorrection) { - return chroma - .scale(colors) - .mode(attrs.mode) - .correctLightness(); - } else { - return chroma - .scale(colors) - .mode(attrs.mode); - } -}; - -const createBezierScale = (attrs: ChromaAttributes, colors: string[]) => { - if (attrs.lightnessCorrection) { - return chroma - .bezier(colors) - .scale() - .correctLightness(); - } else { - return chroma.bezier(colors); - } -}; - -const createBase = (samples: number, scale: any): chroma.Color[] => { - const base: chroma.Color[] = []; - for (let i = 0; i < samples; i++) { - base.push(scale(i / samples)); - } - return base; -}; - -const normalize = (base: any) => { - return base.map((color: any) => color._rgb) - .map((val: any) => val.filter( - (el: any) => typeof el !== 'boolean' - )) - } - -export const gradient = (grad: Gradient): OutputColor[] => { - const _colors: string[] = grad.colors - .map((color: InputColor): string => { - const c = color.color; - return `rgba(${c[0]}, ${c[1]}, ${c[2]}, ${c[3]})`; - }); - const scaleCreator = grad.chroma.interpolation === 'linear' ? - createLinearScale : createBezierScale; - const scale = scaleCreator(grad.chroma, _colors); - const base: chroma.Color[] = createBase(grad.chroma.samples, scale); - const rawResult = normalize(base); - const toReturn: OutputColor[] = rawResult.map((color: any): OutputColor => ({ - color, - offset: (rawResult.indexOf(color) / rawResult.length) * 100, - })); - return toReturn; -}; diff --git a/src/utils/presets.ts b/src/utils/presets.ts deleted file mode 100644 index ee6281d..0000000 --- a/src/utils/presets.ts +++ /dev/null @@ -1,14 +0,0 @@ -import nanoid from 'nanoid'; -import { Preset } from '../store/_types'; - -export const loadPresets = (): Preset[] => { - const itemsInStorage: string[] = Object.values(localStorage); - if (itemsInStorage.length > 0) { - return itemsInStorage - .map((item: string): Preset => JSON.parse(item)); - } - return []; -}; - -export const savePreset = (preset: Preset) => - localStorage.setItem(nanoid(), JSON.stringify(preset)); diff --git a/src/views/editor/Editor.tsx b/src/views/editor/Editor.tsx deleted file mode 100644 index eb1d4d4..0000000 --- a/src/views/editor/Editor.tsx +++ /dev/null @@ -1,19 +0,0 @@ -import * as React from 'react'; -import { EditorMain } from './components/layout/EditorMain'; -import { EditorArea } from './components/layout/EditorArea'; -import { EditorBar } from './components/layout/EditorBar'; -import { Settings } from '../../components/editor/settings/Settings'; -import { Artboard } from '../../components/editor/artboard/Artboard'; - -export const Editor = () => { - return ( - - - - - - - - - ); -} diff --git a/src/views/editor/components/layout/EditorArea.tsx b/src/views/editor/components/layout/EditorArea.tsx deleted file mode 100644 index 4f977d0..0000000 --- a/src/views/editor/components/layout/EditorArea.tsx +++ /dev/null @@ -1,11 +0,0 @@ -import styled from '../../../../styles/styledComponents'; -import { mediaMixin } from '../../../../styles/mixins'; - -export const EditorArea = styled.section` - box-sizing: border-box; - margin: 0; - padding: 0; - ${props => mediaMixin(props.theme, { - sm: 'width: 100%;', md: 'width: calc(100% - 400px);' - })} -`; \ No newline at end of file diff --git a/src/views/editor/components/layout/EditorBar.tsx b/src/views/editor/components/layout/EditorBar.tsx deleted file mode 100644 index daf9c0b..0000000 --- a/src/views/editor/components/layout/EditorBar.tsx +++ /dev/null @@ -1,29 +0,0 @@ -import styled from '../../../../styles/styledComponents'; -import { mediaMixin } from '../../../../styles/mixins'; - -export const EditorBar = styled.aside` - box-sizing: border-box; - margin: 0; - padding: 0; - background-color: ${props => props.theme.colors.main_300}; - overflow-y: auto; - ${props => mediaMixin(props.theme, { - sm: ` - position: absolute; - bottom: 0; - left: 0; - z-index: 2; - width: 100%; - height: 280px; - `, - md: ` - position: absolute; - z-index: 2; - right: 0; - top: 0; - height: 100vh; - min-width: 400px; - max-width: 400px; - ` - })} -`; diff --git a/src/views/editor/components/layout/EditorMain.tsx b/src/views/editor/components/layout/EditorMain.tsx deleted file mode 100644 index 9656422..0000000 --- a/src/views/editor/components/layout/EditorMain.tsx +++ /dev/null @@ -1,12 +0,0 @@ -import styled from '../../../../styles/styledComponents'; -import { mediaMixin } from '../../../../styles/mixins'; - -export const EditorMain = styled.main` - width: 100%; - display: flex; - justify-content: flex-start; - ${props => mediaMixin(props.theme, { - sm: 'flex-direction: column;', - md: 'flex-direction: row;' - })} -`; diff --git a/src/vite-env.d.ts b/src/vite-env.d.ts new file mode 100644 index 0000000..11f02fe --- /dev/null +++ b/src/vite-env.d.ts @@ -0,0 +1 @@ +/// diff --git a/tsconfig.app.json b/tsconfig.app.json new file mode 100644 index 0000000..a47e6aa --- /dev/null +++ b/tsconfig.app.json @@ -0,0 +1,25 @@ +{ + "compilerOptions": { + "composite": true, + "tsBuildInfoFile": "./node_modules/.tmp/tsconfig.app.tsbuildinfo", + "target": "ES2020", + "useDefineForClassFields": true, + "lib": ["ES2020", "DOM", "DOM.Iterable", "es2021"], + "module": "ESNext", + "skipLibCheck": true, + + "moduleResolution": "bundler", + "allowImportingTsExtensions": true, + "resolveJsonModule": true, + "isolatedModules": true, + "moduleDetection": "force", + "noEmit": true, + "jsx": "react-jsx", + + "strict": true, + "noUnusedLocals": true, + "noUnusedParameters": true, + "noFallthroughCasesInSwitch": true + }, + "include": ["src"] +} diff --git a/tsconfig.json b/tsconfig.json index 647e197..ea9d0cd 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,27 +1,11 @@ { - "compilerOptions": { - "target": "es5", - "allowJs": true, - "skipLibCheck": false, - "esModuleInterop": true, - "allowSyntheticDefaultImports": true, - "strict": true, - "forceConsistentCasingInFileNames": true, - "module": "esnext", - "moduleResolution": "node", - "resolveJsonModule": true, - "experimentalDecorators": true, - "noEmit": true, - "jsx": "preserve", - "lib": [ - "es2016", - "es2017", - "es2018", - "dom" - ], - "isolatedModules": true - }, - "include": [ - "src" + "files": [], + "references": [ + { + "path": "./tsconfig.app.json" + }, + { + "path": "./tsconfig.node.json" + } ] } diff --git a/tsconfig.node.json b/tsconfig.node.json new file mode 100644 index 0000000..3afdd6e --- /dev/null +++ b/tsconfig.node.json @@ -0,0 +1,13 @@ +{ + "compilerOptions": { + "composite": true, + "tsBuildInfoFile": "./node_modules/.tmp/tsconfig.node.tsbuildinfo", + "skipLibCheck": true, + "module": "ESNext", + "moduleResolution": "bundler", + "allowSyntheticDefaultImports": true, + "strict": true, + "noEmit": true + }, + "include": ["vite.config.ts"] +} diff --git a/vite.config.ts b/vite.config.ts new file mode 100644 index 0000000..fb45313 --- /dev/null +++ b/vite.config.ts @@ -0,0 +1,10 @@ +import { defineConfig } from "vite"; +import react from "@vitejs/plugin-react"; + +// https://vitejs.dev/config/ +export default defineConfig({ + plugins: [react()], + server: { + port: 4000, + }, +}); diff --git a/yarn.lock b/yarn.lock index 332486e..b4249d9 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2,10391 +2,1070 @@ # yarn lockfile v1 -"@babel/code-frame@7.0.0", "@babel/code-frame@^7.0.0", "@babel/code-frame@^7.0.0-beta.35": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.0.0.tgz#06e2ab19bdb535385559aabb5ba59729482800f8" - integrity sha512-OfC2uemaknXr87bdLUkWog7nYuliM9Ij5HUcajsVcMCpQrcLmtxRbVFTIqmcSkSeYRBFBRxs2FiUqFJDLdiebA== - dependencies: - "@babel/highlight" "^7.0.0" - -"@babel/core@7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.1.0.tgz#08958f1371179f62df6966d8a614003d11faeb04" - integrity sha512-9EWmD0cQAbcXSc+31RIoYgEHx3KQ2CCSMDBhnXrShWvo45TMw+3/55KVxlhkG53kw9tl87DqINgHDgFVhZJV/Q== - dependencies: - "@babel/code-frame" "^7.0.0" - "@babel/generator" "^7.0.0" - "@babel/helpers" "^7.1.0" - "@babel/parser" "^7.1.0" - "@babel/template" "^7.1.0" - "@babel/traverse" "^7.1.0" - "@babel/types" "^7.0.0" - convert-source-map "^1.1.0" - debug "^3.1.0" - json5 "^0.5.0" - lodash "^4.17.10" - resolve "^1.3.2" - semver "^5.4.1" - source-map "^0.5.0" - -"@babel/core@^7.0.1": - version "7.1.2" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.1.2.tgz#f8d2a9ceb6832887329a7b60f9d035791400ba4e" - integrity sha512-IFeSSnjXdhDaoysIlev//UzHZbdEmm7D0EIH2qtse9xK7mXEZQpYjs2P00XlP1qYsYvid79p+Zgg6tz1mp6iVw== - dependencies: - "@babel/code-frame" "^7.0.0" - "@babel/generator" "^7.1.2" - "@babel/helpers" "^7.1.2" - "@babel/parser" "^7.1.2" - "@babel/template" "^7.1.2" - "@babel/traverse" "^7.1.0" - "@babel/types" "^7.1.2" - convert-source-map "^1.1.0" - debug "^3.1.0" - json5 "^0.5.0" - lodash "^4.17.10" - resolve "^1.3.2" - semver "^5.4.1" - source-map "^0.5.0" - -"@babel/generator@^7.0.0", "@babel/generator@^7.1.2", "@babel/generator@^7.1.3": - version "7.1.3" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.1.3.tgz#2103ec9c42d9bdad9190a6ad5ff2d456fd7b8673" - integrity sha512-ZoCZGcfIJFJuZBqxcY9OjC1KW2lWK64qrX1o4UYL3yshVhwKFYgzpWZ0vvtGMNJdTlvkw0W+HR1VnYN8q3QPFQ== - dependencies: - "@babel/types" "^7.1.3" +"@ampproject/remapping@^2.2.0": + version "2.3.0" + resolved "https://registry.yarnpkg.com/@ampproject/remapping/-/remapping-2.3.0.tgz#ed441b6fa600072520ce18b43d2c8cc8caecc7f4" + integrity sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw== + dependencies: + "@jridgewell/gen-mapping" "^0.3.5" + "@jridgewell/trace-mapping" "^0.3.24" + +"@babel/code-frame@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.24.7.tgz#882fd9e09e8ee324e496bd040401c6f046ef4465" + integrity sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA== + dependencies: + "@babel/highlight" "^7.24.7" + picocolors "^1.0.0" + +"@babel/compat-data@^7.25.2": + version "7.25.2" + resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.25.2.tgz#e41928bd33475305c586f6acbbb7e3ade7a6f7f5" + integrity sha512-bYcppcpKBvX4znYaPEeFau03bp89ShqNMLs+rmdptMw+heSZh9+z84d2YG+K7cYLbWwzdjtDoW/uqZmPjulClQ== + +"@babel/core@^7.24.5": + version "7.25.2" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.25.2.tgz#ed8eec275118d7613e77a352894cd12ded8eba77" + integrity sha512-BBt3opiCOxUr9euZ5/ro/Xv8/V7yJ5bjYMqG/C1YAo8MIKAnumZalCN+msbci3Pigy4lIQfPUpfMM27HMGaYEA== + dependencies: + "@ampproject/remapping" "^2.2.0" + "@babel/code-frame" "^7.24.7" + "@babel/generator" "^7.25.0" + "@babel/helper-compilation-targets" "^7.25.2" + "@babel/helper-module-transforms" "^7.25.2" + "@babel/helpers" "^7.25.0" + "@babel/parser" "^7.25.0" + "@babel/template" "^7.25.0" + "@babel/traverse" "^7.25.2" + "@babel/types" "^7.25.2" + convert-source-map "^2.0.0" + debug "^4.1.0" + gensync "^1.0.0-beta.2" + json5 "^2.2.3" + semver "^6.3.1" + +"@babel/generator@^7.25.0": + version "7.25.0" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.25.0.tgz#f858ddfa984350bc3d3b7f125073c9af6988f18e" + integrity sha512-3LEEcj3PVW8pW2R1SR1M89g/qrYk/m/mB/tLqn7dn4sbBUQyTqnlod+II2U4dqiGtUmkcnAmkMDralTFZttRiw== + dependencies: + "@babel/types" "^7.25.0" + "@jridgewell/gen-mapping" "^0.3.5" + "@jridgewell/trace-mapping" "^0.3.25" jsesc "^2.5.1" - lodash "^4.17.10" - source-map "^0.5.0" - trim-right "^1.0.1" - -"@babel/helper-annotate-as-pure@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.0.0.tgz#323d39dd0b50e10c7c06ca7d7638e6864d8c5c32" - integrity sha512-3UYcJUj9kvSLbLbUIfQTqzcy5VX7GRZ/CCDrnOaZorFFM01aXp1+GJwuFGV4NDDoAS+mOUyHcO6UD/RfqOks3Q== - dependencies: - "@babel/types" "^7.0.0" - -"@babel/helper-builder-binary-assignment-operator-visitor@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.1.0.tgz#6b69628dfe4087798e0c4ed98e3d4a6b2fbd2f5f" - integrity sha512-qNSR4jrmJ8M1VMM9tibvyRAHXQs2PmaksQF7c1CGJNipfe3D8p+wgNwgso/P2A2r2mdgBWAXljNWR0QRZAMW8w== - dependencies: - "@babel/helper-explode-assignable-expression" "^7.1.0" - "@babel/types" "^7.0.0" -"@babel/helper-builder-react-jsx@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/helper-builder-react-jsx/-/helper-builder-react-jsx-7.0.0.tgz#fa154cb53eb918cf2a9a7ce928e29eb649c5acdb" - integrity sha512-ebJ2JM6NAKW0fQEqN8hOLxK84RbRz9OkUhGS/Xd5u56ejMfVbayJ4+LykERZCOUM6faa6Fp3SZNX3fcT16MKHw== - dependencies: - "@babel/types" "^7.0.0" - esutils "^2.0.0" +"@babel/helper-compilation-targets@^7.25.2": + version "7.25.2" + resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.25.2.tgz#e1d9410a90974a3a5a66e84ff55ef62e3c02d06c" + integrity sha512-U2U5LsSaZ7TAt3cfaymQ8WHh0pxvdHoEk6HVpaexxixjyEquMh0L0YNJNM6CTGKMXV1iksi0iZkGw4AcFkPaaw== + dependencies: + "@babel/compat-data" "^7.25.2" + "@babel/helper-validator-option" "^7.24.8" + browserslist "^4.23.1" + lru-cache "^5.1.1" + semver "^6.3.1" + +"@babel/helper-module-imports@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.24.7.tgz#f2f980392de5b84c3328fc71d38bd81bbb83042b" + integrity sha512-8AyH3C+74cgCVVXow/myrynrAGv+nTVg5vKu2nZph9x7RcRwzmh0VFallJuFTZ9mx6u4eSdXZfcOzSqTUm0HCA== + dependencies: + "@babel/traverse" "^7.24.7" + "@babel/types" "^7.24.7" + +"@babel/helper-module-transforms@^7.25.2": + version "7.25.2" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.25.2.tgz#ee713c29768100f2776edf04d4eb23b8d27a66e6" + integrity sha512-BjyRAbix6j/wv83ftcVJmBt72QtHI56C7JXZoG2xATiLpmoC7dpd8WnkikExHDVPpi/3qCmO6WY1EaXOluiecQ== + dependencies: + "@babel/helper-module-imports" "^7.24.7" + "@babel/helper-simple-access" "^7.24.7" + "@babel/helper-validator-identifier" "^7.24.7" + "@babel/traverse" "^7.25.2" + +"@babel/helper-plugin-utils@^7.24.7": + version "7.24.8" + resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.8.tgz#94ee67e8ec0e5d44ea7baeb51e571bd26af07878" + integrity sha512-FFWx5142D8h2Mgr/iPVGH5G7w6jDn4jUSpZTyDnQO0Yn7Ks2Kuz6Pci8H6MPCoUJegd/UZQ3tAvfLCxQSnWWwg== + +"@babel/helper-simple-access@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.24.7.tgz#bcade8da3aec8ed16b9c4953b74e506b51b5edb3" + integrity sha512-zBAIvbCMh5Ts+b86r/CjU+4XGYIs+R1j951gxI3KmmxBMhCg4oQMsv6ZXQ64XOm/cvzfU1FmoCyt6+owc5QMYg== + dependencies: + "@babel/traverse" "^7.24.7" + "@babel/types" "^7.24.7" + +"@babel/helper-string-parser@^7.24.8": + version "7.24.8" + resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.24.8.tgz#5b3329c9a58803d5df425e5785865881a81ca48d" + integrity sha512-pO9KhhRcuUyGnJWwyEgnRJTSIZHiT+vMD0kPeD+so0l7mxkMT19g3pjY9GTnHySck/hDzq+dtW/4VgnMkippsQ== + +"@babel/helper-validator-identifier@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.7.tgz#75b889cfaf9e35c2aaf42cf0d72c8e91719251db" + integrity sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w== + +"@babel/helper-validator-option@^7.24.8": + version "7.24.8" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.24.8.tgz#3725cdeea8b480e86d34df15304806a06975e33d" + integrity sha512-xb8t9tD1MHLungh/AIoWYN+gVHaB9kwlu8gffXGSt3FFEIT7RjS+xWbc2vUD1UTZdIpKj/ab3rdqJ7ufngyi2Q== + +"@babel/helpers@^7.25.0": + version "7.25.0" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.25.0.tgz#e69beb7841cb93a6505531ede34f34e6a073650a" + integrity sha512-MjgLZ42aCm0oGjJj8CtSM3DB8NOOf8h2l7DCTePJs29u+v7yO/RBX9nShlKMgFnRks/Q4tBAe7Hxnov9VkGwLw== + dependencies: + "@babel/template" "^7.25.0" + "@babel/types" "^7.25.0" + +"@babel/highlight@^7.24.7": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.24.7.tgz#a05ab1df134b286558aae0ed41e6c5f731bf409d" + integrity sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw== + dependencies: + "@babel/helper-validator-identifier" "^7.24.7" + chalk "^2.4.2" + js-tokens "^4.0.0" + picocolors "^1.0.0" -"@babel/helper-call-delegate@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/helper-call-delegate/-/helper-call-delegate-7.1.0.tgz#6a957f105f37755e8645343d3038a22e1449cc4a" - integrity sha512-YEtYZrw3GUK6emQHKthltKNZwszBcHK58Ygcis+gVUrF4/FmTVr5CCqQNSfmvg2y+YDEANyYoaLz/SHsnusCwQ== +"@babel/parser@^7.1.0", "@babel/parser@^7.20.7", "@babel/parser@^7.25.0", "@babel/parser@^7.25.3": + version "7.25.3" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.25.3.tgz#91fb126768d944966263f0657ab222a642b82065" + integrity sha512-iLTJKDbJ4hMvFPgQwwsVoxtHyWpKKPBrxkANrSYewDPaPpT5py5yeVkgPIJ7XYXhndxJpaA3PyALSXQ7u8e/Dw== dependencies: - "@babel/helper-hoist-variables" "^7.0.0" - "@babel/traverse" "^7.1.0" - "@babel/types" "^7.0.0" + "@babel/types" "^7.25.2" -"@babel/helper-define-map@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/helper-define-map/-/helper-define-map-7.1.0.tgz#3b74caec329b3c80c116290887c0dd9ae468c20c" - integrity sha512-yPPcW8dc3gZLN+U1mhYV91QU3n5uTbx7DUdf8NnPbjS0RMwBuHi9Xt2MUgppmNz7CJxTBWsGczTiEp1CSOTPRg== +"@babel/plugin-transform-react-jsx-self@^7.24.5": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.24.7.tgz#66bff0248ea0b549972e733516ffad577477bdab" + integrity sha512-fOPQYbGSgH0HUp4UJO4sMBFjY6DuWq+2i8rixyUMb3CdGixs/gccURvYOAhajBdKDoGajFr3mUq5rH3phtkGzw== dependencies: - "@babel/helper-function-name" "^7.1.0" - "@babel/types" "^7.0.0" - lodash "^4.17.10" + "@babel/helper-plugin-utils" "^7.24.7" -"@babel/helper-explode-assignable-expression@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.1.0.tgz#537fa13f6f1674df745b0c00ec8fe4e99681c8f6" - integrity sha512-NRQpfHrJ1msCHtKjbzs9YcMmJZOg6mQMmGRB+hbamEdG5PNpaSm95275VD92DvJKuyl0s2sFiDmMZ+EnnvufqA== +"@babel/plugin-transform-react-jsx-source@^7.24.1": + version "7.24.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.24.7.tgz#1198aab2548ad19582013815c938d3ebd8291ee3" + integrity sha512-J2z+MWzZHVOemyLweMqngXrgGC42jQ//R0KdxqkIz/OrbVIIlhFI3WigZ5fO+nwFvBlncr4MGapd8vTyc7RPNQ== dependencies: - "@babel/traverse" "^7.1.0" - "@babel/types" "^7.0.0" + "@babel/helper-plugin-utils" "^7.24.7" -"@babel/helper-function-name@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.1.0.tgz#a0ceb01685f73355d4360c1247f582bfafc8ff53" - integrity sha512-A95XEoCpb3TO+KZzJ4S/5uW5fNe26DjBGqf1o9ucyLyCmi1dXq/B3c8iaWTfBk3VvetUxl16e8tIrd5teOCfGw== +"@babel/template@^7.25.0": + version "7.25.0" + resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.25.0.tgz#e733dc3134b4fede528c15bc95e89cb98c52592a" + integrity sha512-aOOgh1/5XzKvg1jvVz7AVrx2piJ2XBi227DHmbY6y+bM9H2FlN+IfecYu4Xl0cNiiVejlsCri89LUsbj8vJD9Q== dependencies: - "@babel/helper-get-function-arity" "^7.0.0" - "@babel/template" "^7.1.0" - "@babel/types" "^7.0.0" + "@babel/code-frame" "^7.24.7" + "@babel/parser" "^7.25.0" + "@babel/types" "^7.25.0" -"@babel/helper-get-function-arity@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0.tgz#83572d4320e2a4657263734113c42868b64e49c3" - integrity sha512-r2DbJeg4svYvt3HOS74U4eWKsUAMRH01Z1ds1zx8KNTPtpTL5JAsdFv8BNyOpVqdFhHkkRDIg5B4AsxmkjAlmQ== +"@babel/traverse@^7.24.7", "@babel/traverse@^7.25.2": + version "7.25.3" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.25.3.tgz#f1b901951c83eda2f3e29450ce92743783373490" + integrity sha512-HefgyP1x754oGCsKmV5reSmtV7IXj/kpaE1XYY+D9G5PvKKoFfSbiS4M77MdjuwlZKDIKFCffq9rPU+H/s3ZdQ== dependencies: - "@babel/types" "^7.0.0" + "@babel/code-frame" "^7.24.7" + "@babel/generator" "^7.25.0" + "@babel/parser" "^7.25.3" + "@babel/template" "^7.25.0" + "@babel/types" "^7.25.2" + debug "^4.3.1" + globals "^11.1.0" -"@babel/helper-hoist-variables@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.0.0.tgz#46adc4c5e758645ae7a45deb92bab0918c23bb88" - integrity sha512-Ggv5sldXUeSKsuzLkddtyhyHe2YantsxWKNi7A+7LeD12ExRDWTRk29JCXpaHPAbMaIPZSil7n+lq78WY2VY7w== +"@babel/types@^7.0.0", "@babel/types@^7.20.7", "@babel/types@^7.24.7", "@babel/types@^7.25.0", "@babel/types@^7.25.2": + version "7.25.2" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.25.2.tgz#55fb231f7dc958cd69ea141a4c2997e819646125" + integrity sha512-YTnYtra7W9e6/oAZEHj0bJehPRUlLH9/fbpT5LfB0NhQXyALCRkRs3zH9v07IYhkgpqX6Z78FnuccZr/l4Fs4Q== dependencies: - "@babel/types" "^7.0.0" + "@babel/helper-string-parser" "^7.24.8" + "@babel/helper-validator-identifier" "^7.24.7" + to-fast-properties "^2.0.0" -"@babel/helper-member-expression-to-functions@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.0.0.tgz#8cd14b0a0df7ff00f009e7d7a436945f47c7a16f" - integrity sha512-avo+lm/QmZlv27Zsi0xEor2fKcqWG56D5ae9dzklpIaY7cQMK5N8VSpaNVPPagiqmy7LrEjK1IWdGMOqPu5csg== +"@esbuild/aix-ppc64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/aix-ppc64/-/aix-ppc64-0.21.5.tgz#c7184a326533fcdf1b8ee0733e21c713b975575f" + integrity sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ== + +"@esbuild/android-arm64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/android-arm64/-/android-arm64-0.21.5.tgz#09d9b4357780da9ea3a7dfb833a1f1ff439b4052" + integrity sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A== + +"@esbuild/android-arm@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/android-arm/-/android-arm-0.21.5.tgz#9b04384fb771926dfa6d7ad04324ecb2ab9b2e28" + integrity sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg== + +"@esbuild/android-x64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/android-x64/-/android-x64-0.21.5.tgz#29918ec2db754cedcb6c1b04de8cd6547af6461e" + integrity sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA== + +"@esbuild/darwin-arm64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/darwin-arm64/-/darwin-arm64-0.21.5.tgz#e495b539660e51690f3928af50a76fb0a6ccff2a" + integrity sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ== + +"@esbuild/darwin-x64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/darwin-x64/-/darwin-x64-0.21.5.tgz#c13838fa57372839abdddc91d71542ceea2e1e22" + integrity sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw== + +"@esbuild/freebsd-arm64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.21.5.tgz#646b989aa20bf89fd071dd5dbfad69a3542e550e" + integrity sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g== + +"@esbuild/freebsd-x64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/freebsd-x64/-/freebsd-x64-0.21.5.tgz#aa615cfc80af954d3458906e38ca22c18cf5c261" + integrity sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ== + +"@esbuild/linux-arm64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/linux-arm64/-/linux-arm64-0.21.5.tgz#70ac6fa14f5cb7e1f7f887bcffb680ad09922b5b" + integrity sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q== + +"@esbuild/linux-arm@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/linux-arm/-/linux-arm-0.21.5.tgz#fc6fd11a8aca56c1f6f3894f2bea0479f8f626b9" + integrity sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA== + +"@esbuild/linux-ia32@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/linux-ia32/-/linux-ia32-0.21.5.tgz#3271f53b3f93e3d093d518d1649d6d68d346ede2" + integrity sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg== + +"@esbuild/linux-loong64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/linux-loong64/-/linux-loong64-0.21.5.tgz#ed62e04238c57026aea831c5a130b73c0f9f26df" + integrity sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg== + +"@esbuild/linux-mips64el@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/linux-mips64el/-/linux-mips64el-0.21.5.tgz#e79b8eb48bf3b106fadec1ac8240fb97b4e64cbe" + integrity sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg== + +"@esbuild/linux-ppc64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/linux-ppc64/-/linux-ppc64-0.21.5.tgz#5f2203860a143b9919d383ef7573521fb154c3e4" + integrity sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w== + +"@esbuild/linux-riscv64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/linux-riscv64/-/linux-riscv64-0.21.5.tgz#07bcafd99322d5af62f618cb9e6a9b7f4bb825dc" + integrity sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA== + +"@esbuild/linux-s390x@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/linux-s390x/-/linux-s390x-0.21.5.tgz#b7ccf686751d6a3e44b8627ababc8be3ef62d8de" + integrity sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A== + +"@esbuild/linux-x64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/linux-x64/-/linux-x64-0.21.5.tgz#6d8f0c768e070e64309af8004bb94e68ab2bb3b0" + integrity sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ== + +"@esbuild/netbsd-x64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/netbsd-x64/-/netbsd-x64-0.21.5.tgz#bbe430f60d378ecb88decb219c602667387a6047" + integrity sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg== + +"@esbuild/openbsd-x64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/openbsd-x64/-/openbsd-x64-0.21.5.tgz#99d1cf2937279560d2104821f5ccce220cb2af70" + integrity sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow== + +"@esbuild/sunos-x64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/sunos-x64/-/sunos-x64-0.21.5.tgz#08741512c10d529566baba837b4fe052c8f3487b" + integrity sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg== + +"@esbuild/win32-arm64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/win32-arm64/-/win32-arm64-0.21.5.tgz#675b7385398411240735016144ab2e99a60fc75d" + integrity sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A== + +"@esbuild/win32-ia32@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/win32-ia32/-/win32-ia32-0.21.5.tgz#1bfc3ce98aa6ca9a0969e4d2af72144c59c1193b" + integrity sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA== + +"@esbuild/win32-x64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/win32-x64/-/win32-x64-0.21.5.tgz#acad351d582d157bb145535db2a6ff53dd514b5c" + integrity sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw== + +"@eslint-community/eslint-utils@^4.4.0": + version "4.4.0" + resolved "https://registry.yarnpkg.com/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz#a23514e8fb9af1269d5f7788aa556798d61c6b59" + integrity sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA== dependencies: - "@babel/types" "^7.0.0" + eslint-visitor-keys "^3.3.0" -"@babel/helper-module-imports@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.0.0.tgz#96081b7111e486da4d2cd971ad1a4fe216cc2e3d" - integrity sha512-aP/hlLq01DWNEiDg4Jn23i+CXxW/owM4WpDLFUbpjxe4NS3BhLVZQ5i7E0ZrxuQ/vwekIeciyamgB1UIYxxM6A== - dependencies: - "@babel/types" "^7.0.0" +"@eslint-community/regexpp@^4.10.0": + version "4.11.0" + resolved "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.11.0.tgz#b0ffd0312b4a3fd2d6f77237e7248a5ad3a680ae" + integrity sha512-G/M/tIiMrTAxEWRfLfQJMmGNX28IxBg4PBz8XqQhqUHLFI6TL2htpIB1iQCj144V5ee/JaKyT9/WZ0MGZWfA7A== -"@babel/helper-module-transforms@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.1.0.tgz#470d4f9676d9fad50b324cdcce5fbabbc3da5787" - integrity sha512-0JZRd2yhawo79Rcm4w0LwSMILFmFXjugG3yqf+P/UsKsRS1mJCmMwwlHDlMg7Avr9LrvSpp4ZSULO9r8jpCzcw== +"@jridgewell/gen-mapping@^0.3.5": + version "0.3.5" + resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz#dcce6aff74bdf6dad1a95802b69b04a2fcb1fb36" + integrity sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg== dependencies: - "@babel/helper-module-imports" "^7.0.0" - "@babel/helper-simple-access" "^7.1.0" - "@babel/helper-split-export-declaration" "^7.0.0" - "@babel/template" "^7.1.0" - "@babel/types" "^7.0.0" - lodash "^4.17.10" + "@jridgewell/set-array" "^1.2.1" + "@jridgewell/sourcemap-codec" "^1.4.10" + "@jridgewell/trace-mapping" "^0.3.24" -"@babel/helper-optimise-call-expression@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.0.0.tgz#a2920c5702b073c15de51106200aa8cad20497d5" - integrity sha512-u8nd9NQePYNQV8iPWu/pLLYBqZBa4ZaY1YWRFMuxrid94wKI1QNt67NEZ7GAe5Kc/0LLScbim05xZFWkAdrj9g== - dependencies: - "@babel/types" "^7.0.0" +"@jridgewell/resolve-uri@^3.1.0": + version "3.1.2" + resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz#7a0ee601f60f99a20c7c7c5ff0c80388c1189bd6" + integrity sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw== -"@babel/helper-plugin-utils@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.0.0.tgz#bbb3fbee98661c569034237cc03967ba99b4f250" - integrity sha512-CYAOUCARwExnEixLdB6sDm2dIJ/YgEAKDM1MOeMeZu9Ld/bDgVo8aiWrXwcY7OBh+1Ea2uUcVRcxKk0GJvW7QA== +"@jridgewell/set-array@^1.2.1": + version "1.2.1" + resolved "https://registry.yarnpkg.com/@jridgewell/set-array/-/set-array-1.2.1.tgz#558fb6472ed16a4c850b889530e6b36438c49280" + integrity sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A== -"@babel/helper-regex@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/helper-regex/-/helper-regex-7.0.0.tgz#2c1718923b57f9bbe64705ffe5640ac64d9bdb27" - integrity sha512-TR0/N0NDCcUIUEbqV6dCO+LptmmSQFQ7q70lfcEB4URsjD0E1HzicrwUH+ap6BAQ2jhCX9Q4UqZy4wilujWlkg== - dependencies: - lodash "^4.17.10" +"@jridgewell/sourcemap-codec@^1.4.10", "@jridgewell/sourcemap-codec@^1.4.14": + version "1.5.0" + resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz#3188bcb273a414b0d215fd22a58540b989b9409a" + integrity sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ== -"@babel/helper-remap-async-to-generator@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.1.0.tgz#361d80821b6f38da75bd3f0785ece20a88c5fe7f" - integrity sha512-3fOK0L+Fdlg8S5al8u/hWE6vhufGSn0bN09xm2LXMy//REAF8kDCrYoOBKYmA8m5Nom+sV9LyLCwrFynA8/slg== +"@jridgewell/trace-mapping@^0.3.24", "@jridgewell/trace-mapping@^0.3.25": + version "0.3.25" + resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz#15f190e98895f3fc23276ee14bc76b675c2e50f0" + integrity sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ== dependencies: - "@babel/helper-annotate-as-pure" "^7.0.0" - "@babel/helper-wrap-function" "^7.1.0" - "@babel/template" "^7.1.0" - "@babel/traverse" "^7.1.0" - "@babel/types" "^7.0.0" + "@jridgewell/resolve-uri" "^3.1.0" + "@jridgewell/sourcemap-codec" "^1.4.14" -"@babel/helper-replace-supers@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.1.0.tgz#5fc31de522ec0ef0899dc9b3e7cf6a5dd655f362" - integrity sha512-BvcDWYZRWVuDeXTYZWxekQNO5D4kO55aArwZOTFXw6rlLQA8ZaDicJR1sO47h+HrnCiDFiww0fSPV0d713KBGQ== +"@nodelib/fs.scandir@2.1.5": + version "2.1.5" + resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz#7619c2eb21b25483f6d167548b4cfd5a7488c3d5" + integrity sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g== dependencies: - "@babel/helper-member-expression-to-functions" "^7.0.0" - "@babel/helper-optimise-call-expression" "^7.0.0" - "@babel/traverse" "^7.1.0" - "@babel/types" "^7.0.0" + "@nodelib/fs.stat" "2.0.5" + run-parallel "^1.1.9" -"@babel/helper-simple-access@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.1.0.tgz#65eeb954c8c245beaa4e859da6188f39d71e585c" - integrity sha512-Vk+78hNjRbsiu49zAPALxTb+JUQCz1aolpd8osOF16BGnLtseD21nbHgLPGUwrXEurZgiCOUmvs3ExTu4F5x6w== - dependencies: - "@babel/template" "^7.1.0" - "@babel/types" "^7.0.0" +"@nodelib/fs.stat@2.0.5", "@nodelib/fs.stat@^2.0.2": + version "2.0.5" + resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz#5bd262af94e9d25bd1e71b05deed44876a222e8b" + integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A== -"@babel/helper-split-export-declaration@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.0.0.tgz#3aae285c0311c2ab095d997b8c9a94cad547d813" - integrity sha512-MXkOJqva62dfC0w85mEf/LucPPS/1+04nmmRMPEBUB++hiiThQ2zPtX/mEWQ3mtzCEjIJvPY8nuwxXtQeQwUag== +"@nodelib/fs.walk@^1.2.3": + version "1.2.8" + resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz#e95737e8bb6746ddedf69c556953494f196fe69a" + integrity sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg== + dependencies: + "@nodelib/fs.scandir" "2.1.5" + fastq "^1.6.0" + +"@rollup/rollup-android-arm-eabi@4.21.0": + version "4.21.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.21.0.tgz#d941173f82f9b041c61b0dc1a2a91dcd06e4b31e" + integrity sha512-WTWD8PfoSAJ+qL87lE7votj3syLavxunWhzCnx3XFxFiI/BA/r3X7MUM8dVrH8rb2r4AiO8jJsr3ZjdaftmnfA== + +"@rollup/rollup-android-arm64@4.21.0": + version "4.21.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.21.0.tgz#7e7157c8543215245ceffc445134d9e843ba51c0" + integrity sha512-a1sR2zSK1B4eYkiZu17ZUZhmUQcKjk2/j9Me2IDjk1GHW7LB5Z35LEzj9iJch6gtUfsnvZs1ZNyDW2oZSThrkA== + +"@rollup/rollup-darwin-arm64@4.21.0": + version "4.21.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.21.0.tgz#f0a18a4fc8dc6eb1e94a51fa2adb22876f477947" + integrity sha512-zOnKWLgDld/svhKO5PD9ozmL6roy5OQ5T4ThvdYZLpiOhEGY+dp2NwUmxK0Ld91LrbjrvtNAE0ERBwjqhZTRAA== + +"@rollup/rollup-darwin-x64@4.21.0": + version "4.21.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.21.0.tgz#34b7867613e5cc42d2b85ddc0424228cc33b43f0" + integrity sha512-7doS8br0xAkg48SKE2QNtMSFPFUlRdw9+votl27MvT46vo44ATBmdZdGysOevNELmZlfd+NEa0UYOA8f01WSrg== + +"@rollup/rollup-linux-arm-gnueabihf@4.21.0": + version "4.21.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.21.0.tgz#422b19ff9ae02b05d3395183d1d43b38c7c8be0b" + integrity sha512-pWJsfQjNWNGsoCq53KjMtwdJDmh/6NubwQcz52aEwLEuvx08bzcy6tOUuawAOncPnxz/3siRtd8hiQ32G1y8VA== + +"@rollup/rollup-linux-arm-musleabihf@4.21.0": + version "4.21.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.21.0.tgz#568aa29195ef6fc57ec6ed3f518923764406a8ee" + integrity sha512-efRIANsz3UHZrnZXuEvxS9LoCOWMGD1rweciD6uJQIx2myN3a8Im1FafZBzh7zk1RJ6oKcR16dU3UPldaKd83w== + +"@rollup/rollup-linux-arm64-gnu@4.21.0": + version "4.21.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.21.0.tgz#22309c8bcba9a73114f69165c72bc94b2fbec085" + integrity sha512-ZrPhydkTVhyeGTW94WJ8pnl1uroqVHM3j3hjdquwAcWnmivjAwOYjTEAuEDeJvGX7xv3Z9GAvrBkEzCgHq9U1w== + +"@rollup/rollup-linux-arm64-musl@4.21.0": + version "4.21.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.21.0.tgz#c93c388af6d33f082894b8a60839d7265b2b9bc5" + integrity sha512-cfaupqd+UEFeURmqNP2eEvXqgbSox/LHOyN9/d2pSdV8xTrjdg3NgOFJCtc1vQ/jEke1qD0IejbBfxleBPHnPw== + +"@rollup/rollup-linux-powerpc64le-gnu@4.21.0": + version "4.21.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.21.0.tgz#493c5e19e395cf3c6bd860c7139c8a903dea72b4" + integrity sha512-ZKPan1/RvAhrUylwBXC9t7B2hXdpb/ufeu22pG2psV7RN8roOfGurEghw1ySmX/CmDDHNTDDjY3lo9hRlgtaHg== + +"@rollup/rollup-linux-riscv64-gnu@4.21.0": + version "4.21.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.21.0.tgz#a2eab4346fbe5909165ce99adb935ba30c9fb444" + integrity sha512-H1eRaCwd5E8eS8leiS+o/NqMdljkcb1d6r2h4fKSsCXQilLKArq6WS7XBLDu80Yz+nMqHVFDquwcVrQmGr28rg== + +"@rollup/rollup-linux-s390x-gnu@4.21.0": + version "4.21.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.21.0.tgz#0bc49a79db4345d78d757bb1b05e73a1b42fa5c3" + integrity sha512-zJ4hA+3b5tu8u7L58CCSI0A9N1vkfwPhWd/puGXwtZlsB5bTkwDNW/+JCU84+3QYmKpLi+XvHdmrlwUwDA6kqw== + +"@rollup/rollup-linux-x64-gnu@4.21.0": + version "4.21.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.21.0.tgz#4fd36a6a41f3406d8693321b13d4f9b7658dd4b9" + integrity sha512-e2hrvElFIh6kW/UNBQK/kzqMNY5mO+67YtEh9OA65RM5IJXYTWiXjX6fjIiPaqOkBthYF1EqgiZ6OXKcQsM0hg== + +"@rollup/rollup-linux-x64-musl@4.21.0": + version "4.21.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.21.0.tgz#10ebb13bd4469cbad1a5d9b073bd27ec8a886200" + integrity sha512-1vvmgDdUSebVGXWX2lIcgRebqfQSff0hMEkLJyakQ9JQUbLDkEaMsPTLOmyccyC6IJ/l3FZuJbmrBw/u0A0uCQ== + +"@rollup/rollup-win32-arm64-msvc@4.21.0": + version "4.21.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.21.0.tgz#2fef1a90f1402258ef915ae5a94cc91a5a1d5bfc" + integrity sha512-s5oFkZ/hFcrlAyBTONFY1TWndfyre1wOMwU+6KCpm/iatybvrRgmZVM+vCFwxmC5ZhdlgfE0N4XorsDpi7/4XQ== + +"@rollup/rollup-win32-ia32-msvc@4.21.0": + version "4.21.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.21.0.tgz#a18ad47a95c5f264defb60acdd8c27569f816fc1" + integrity sha512-G9+TEqRnAA6nbpqyUqgTiopmnfgnMkR3kMukFBDsiyy23LZvUCpiUwjTRx6ezYCjJODXrh52rBR9oXvm+Fp5wg== + +"@rollup/rollup-win32-x64-msvc@4.21.0": + version "4.21.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.21.0.tgz#20c09cf44dcb082140cc7f439dd679fe4bba3375" + integrity sha512-2jsCDZwtQvRhejHLfZ1JY6w6kEuEtfF9nzYsZxzSlNVKDX+DpsDJ+Rbjkm74nvg2rdx0gwBS+IMdvwJuq3S9pQ== + +"@types/babel__core@^7.20.5": + version "7.20.5" + resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.20.5.tgz#3df15f27ba85319caa07ba08d0721889bb39c017" + integrity sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA== + dependencies: + "@babel/parser" "^7.20.7" + "@babel/types" "^7.20.7" + "@types/babel__generator" "*" + "@types/babel__template" "*" + "@types/babel__traverse" "*" + +"@types/babel__generator@*": + version "7.6.8" + resolved "https://registry.yarnpkg.com/@types/babel__generator/-/babel__generator-7.6.8.tgz#f836c61f48b1346e7d2b0d93c6dacc5b9535d3ab" + integrity sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw== dependencies: "@babel/types" "^7.0.0" -"@babel/helper-wrap-function@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.1.0.tgz#8cf54e9190706067f016af8f75cb3df829cc8c66" - integrity sha512-R6HU3dete+rwsdAfrOzTlE9Mcpk4RjU3aX3gi9grtmugQY0u79X7eogUvfXA5sI81Mfq1cn6AgxihfN33STjJA== +"@types/babel__template@*": + version "7.4.4" + resolved "https://registry.yarnpkg.com/@types/babel__template/-/babel__template-7.4.4.tgz#5672513701c1b2199bc6dad636a9d7491586766f" + integrity sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A== dependencies: - "@babel/helper-function-name" "^7.1.0" - "@babel/template" "^7.1.0" - "@babel/traverse" "^7.1.0" + "@babel/parser" "^7.1.0" "@babel/types" "^7.0.0" -"@babel/helpers@^7.1.0", "@babel/helpers@^7.1.2": - version "7.1.2" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.1.2.tgz#ab752e8c35ef7d39987df4e8586c63b8846234b5" - integrity sha512-Myc3pUE8eswD73aWcartxB16K6CGmHDv9KxOmD2CeOs/FaEAQodr3VYGmlvOmog60vNQ2w8QbatuahepZwrHiA== +"@types/babel__traverse@*": + version "7.20.6" + resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.20.6.tgz#8dc9f0ae0f202c08d8d4dab648912c8d6038e3f7" + integrity sha512-r1bzfrm0tomOI8g1SzvCaQHo6Lcv6zu0EA+W2kHrt8dyrHQxGzBBL4kdkzIS+jBMV+EYcMAEAqXqYaLJq5rOZg== dependencies: - "@babel/template" "^7.1.2" - "@babel/traverse" "^7.1.0" - "@babel/types" "^7.1.2" + "@babel/types" "^7.20.7" -"@babel/highlight@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.0.0.tgz#f710c38c8d458e6dd9a201afb637fcb781ce99e4" - integrity sha512-UFMC4ZeFC48Tpvj7C8UgLvtkaUuovQX+5xNWrsIoMG8o2z+XFKjKaN9iVmS84dPwVN00W4wPmqvYoZF3EGAsfw== - dependencies: - chalk "^2.0.0" - esutils "^2.0.2" - js-tokens "^4.0.0" +"@types/estree@1.0.5": + version "1.0.5" + resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.5.tgz#a6ce3e556e00fd9895dd872dd172ad0d4bd687f4" + integrity sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw== -"@babel/parser@^7.0.0", "@babel/parser@^7.1.0", "@babel/parser@^7.1.2", "@babel/parser@^7.1.3": - version "7.1.3" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.1.3.tgz#2c92469bac2b7fbff810b67fca07bd138b48af77" - integrity sha512-gqmspPZOMW3MIRb9HlrnbZHXI1/KHTOroBwN1NcLL6pWxzqzEKGvRTq0W/PxS45OtQGbaFikSQpkS5zbnsQm2w== +"@types/prop-types@*": + version "15.5.6" + resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.5.6.tgz#9c03d3fed70a8d517c191b7734da2879b50ca26c" + integrity sha512-ZBFR7TROLVzCkswA3Fmqq+IIJt62/T7aY/Dmz+QkU7CaW2QFqAitCE8Ups7IzmGhcN1YWMBT4Qcoc07jU9hOJQ== -"@babel/plugin-proposal-async-generator-functions@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.1.0.tgz#41c1a702e10081456e23a7b74d891922dd1bb6ce" - integrity sha512-Fq803F3Jcxo20MXUSDdmZZXrPe6BWyGcWBPPNB/M7WaUYESKDeKMOGIxEzQOjGSmW/NWb6UaPZrtTB2ekhB/ew== +"@types/react-dom@^18.3.0": + version "18.3.0" + resolved "https://registry.yarnpkg.com/@types/react-dom/-/react-dom-18.3.0.tgz#0cbc818755d87066ab6ca74fbedb2547d74a82b0" + integrity sha512-EhwApuTmMBmXuFOikhQLIBUn6uFg81SwLMOAUgodJF14SOBOCMdU04gDoYi0WOJJHD144TL32z4yDqCW3dnkQg== dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/helper-remap-async-to-generator" "^7.1.0" - "@babel/plugin-syntax-async-generators" "^7.0.0" - -"@babel/plugin-proposal-class-properties@7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.1.0.tgz#9af01856b1241db60ec8838d84691aa0bd1e8df4" - integrity sha512-/PCJWN+CKt5v1xcGn4vnuu13QDoV+P7NcICP44BoonAJoPSGwVkgrXihFIQGiEjjPlUDBIw1cM7wYFLARS2/hw== - dependencies: - "@babel/helper-function-name" "^7.1.0" - "@babel/helper-member-expression-to-functions" "^7.0.0" - "@babel/helper-optimise-call-expression" "^7.0.0" - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/helper-replace-supers" "^7.1.0" - "@babel/plugin-syntax-class-properties" "^7.0.0" - -"@babel/plugin-proposal-decorators@7.1.2": - version "7.1.2" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.1.2.tgz#79829bd75fced6581ec6c7ab1930e8d738e892e7" - integrity sha512-YooynBO6PmBgHvAd0fl5e5Tq/a0pEC6RqF62ouafme8FzdIVH41Mz/u1dn8fFVm4jzEJ+g/MsOxouwybJPuP8Q== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/helper-replace-supers" "^7.1.0" - "@babel/helper-split-export-declaration" "^7.0.0" - "@babel/plugin-syntax-decorators" "^7.1.0" + "@types/react" "*" -"@babel/plugin-proposal-json-strings@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.0.0.tgz#3b4d7b5cf51e1f2e70f52351d28d44fc2970d01e" - integrity sha512-kfVdUkIAGJIVmHmtS/40i/fg/AGnw/rsZBCaapY5yjeO5RA9m165Xbw9KMOu2nqXP5dTFjEjHdfNdoVcHv133Q== +"@types/react@*": + version "16.7.10" + resolved "https://registry.yarnpkg.com/@types/react/-/react-16.7.10.tgz#a0ebd3af6632d6997506f6d1aac67fed8d0851b0" + integrity sha512-8EFSjCFLUA7JJQ6lJ9+9/99urIrdHACwH8GqPlYAPyIjxOkz2snkttOzItwUwXgqc2xg+r/IYW8M1J8WXax7xg== dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-syntax-json-strings" "^7.0.0" + "@types/prop-types" "*" + csstype "^2.2.0" -"@babel/plugin-proposal-object-rest-spread@7.0.0", "@babel/plugin-proposal-object-rest-spread@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.0.0.tgz#9a17b547f64d0676b6c9cecd4edf74a82ab85e7e" - integrity sha512-14fhfoPcNu7itSen7Py1iGN0gEm87hX/B+8nZPqkdmANyyYWYMY2pjA3r8WXbWVKMzfnSNS0xY8GVS0IjXi/iw== +"@types/react@^18.3.3": + version "18.3.3" + resolved "https://registry.yarnpkg.com/@types/react/-/react-18.3.3.tgz#9679020895318b0915d7a3ab004d92d33375c45f" + integrity sha512-hti/R0pS0q1/xx+TsI73XIqk26eBsISZ2R0wUijXIngRK9R/e7Xw/cXVxQK7R5JjW+SV4zGcn5hXjudkN/pLIw== dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-syntax-object-rest-spread" "^7.0.0" - -"@babel/plugin-proposal-optional-catch-binding@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.0.0.tgz#b610d928fe551ff7117d42c8bb410eec312a6425" - integrity sha512-JPqAvLG1s13B/AuoBjdBYvn38RqW6n1TzrQO839/sIpqLpbnXKacsAgpZHzLD83Sm8SDXMkkrAvEnJ25+0yIpw== + "@types/prop-types" "*" + csstype "^3.0.2" + +"@typescript-eslint/eslint-plugin@^8.1.0": + version "8.1.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.1.0.tgz#3c020deeaaba82a6f741d00dacf172c53be4911f" + integrity sha512-LlNBaHFCEBPHyD4pZXb35mzjGkuGKXU5eeCA1SxvHfiRES0E82dOounfVpL4DCqYvJEKab0bZIA0gCRpdLKkCw== + dependencies: + "@eslint-community/regexpp" "^4.10.0" + "@typescript-eslint/scope-manager" "8.1.0" + "@typescript-eslint/type-utils" "8.1.0" + "@typescript-eslint/utils" "8.1.0" + "@typescript-eslint/visitor-keys" "8.1.0" + graphemer "^1.4.0" + ignore "^5.3.1" + natural-compare "^1.4.0" + ts-api-utils "^1.3.0" + +"@typescript-eslint/parser@^8.1.0": + version "8.1.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-8.1.0.tgz#b7e77f5fa212df59eba51ecd4986f194bccc2303" + integrity sha512-U7iTAtGgJk6DPX9wIWPPOlt1gO57097G06gIcl0N0EEnNw8RGD62c+2/DiP/zL7KrkqnnqF7gtFGR7YgzPllTA== + dependencies: + "@typescript-eslint/scope-manager" "8.1.0" + "@typescript-eslint/types" "8.1.0" + "@typescript-eslint/typescript-estree" "8.1.0" + "@typescript-eslint/visitor-keys" "8.1.0" + debug "^4.3.4" + +"@typescript-eslint/scope-manager@8.1.0": + version "8.1.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-8.1.0.tgz#dd8987d2efebb71d230a1c71d82e84a7aead5c3d" + integrity sha512-DsuOZQji687sQUjm4N6c9xABJa7fjvfIdjqpSIIVOgaENf2jFXiM9hIBZOL3hb6DHK9Nvd2d7zZnoMLf9e0OtQ== + dependencies: + "@typescript-eslint/types" "8.1.0" + "@typescript-eslint/visitor-keys" "8.1.0" + +"@typescript-eslint/type-utils@8.1.0": + version "8.1.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-8.1.0.tgz#dbf5a4308166dfc37a36305390dea04a3a3b5048" + integrity sha512-oLYvTxljVvsMnldfl6jIKxTaU7ok7km0KDrwOt1RHYu6nxlhN3TIx8k5Q52L6wR33nOwDgM7VwW1fT1qMNfFIA== + dependencies: + "@typescript-eslint/typescript-estree" "8.1.0" + "@typescript-eslint/utils" "8.1.0" + debug "^4.3.4" + ts-api-utils "^1.3.0" + +"@typescript-eslint/types@8.1.0": + version "8.1.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-8.1.0.tgz#fbf1eaa668a7e444ac507732ca9d3c3468e5db9c" + integrity sha512-q2/Bxa0gMOu/2/AKALI0tCKbG2zppccnRIRCW6BaaTlRVaPKft4oVYPp7WOPpcnsgbr0qROAVCVKCvIQ0tbWog== + +"@typescript-eslint/typescript-estree@8.1.0": + version "8.1.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-8.1.0.tgz#c44e5667683c0bb5caa43192e27de6a994f4e4c4" + integrity sha512-NTHhmufocEkMiAord/g++gWKb0Fr34e9AExBRdqgWdVBaKoei2dIyYKD9Q0jBnvfbEA5zaf8plUFMUH6kQ0vGg== + dependencies: + "@typescript-eslint/types" "8.1.0" + "@typescript-eslint/visitor-keys" "8.1.0" + debug "^4.3.4" + globby "^11.1.0" + is-glob "^4.0.3" + minimatch "^9.0.4" + semver "^7.6.0" + ts-api-utils "^1.3.0" + +"@typescript-eslint/utils@8.1.0": + version "8.1.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-8.1.0.tgz#a922985a43d2560ce0d293be79148fa80c1325e0" + integrity sha512-ypRueFNKTIFwqPeJBfeIpxZ895PQhNyH4YID6js0UoBImWYoSjBsahUn9KMiJXh94uOjVBgHD9AmkyPsPnFwJA== + dependencies: + "@eslint-community/eslint-utils" "^4.4.0" + "@typescript-eslint/scope-manager" "8.1.0" + "@typescript-eslint/types" "8.1.0" + "@typescript-eslint/typescript-estree" "8.1.0" + +"@typescript-eslint/visitor-keys@8.1.0": + version "8.1.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-8.1.0.tgz#ab2b3a9699a8ddebf0c205e133f114c1fed9daad" + integrity sha512-ba0lNI19awqZ5ZNKh6wCModMwoZs457StTebQ0q1NP58zSi2F6MOZRXwfKZy+jB78JNJ/WH8GSh2IQNzXX8Nag== + dependencies: + "@typescript-eslint/types" "8.1.0" + eslint-visitor-keys "^3.4.3" + +"@vitejs/plugin-react@^4.3.1": + version "4.3.1" + resolved "https://registry.yarnpkg.com/@vitejs/plugin-react/-/plugin-react-4.3.1.tgz#d0be6594051ded8957df555ff07a991fb618b48e" + integrity sha512-m/V2syj5CuVnaxcUJOQRel/Wr31FFXRFlnOoq1TVtkCxsY5veGMTEmpWHndrhB2U8ScHtCQB1e+4hWYExQc6Lg== dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-syntax-optional-catch-binding" "^7.0.0" + "@babel/core" "^7.24.5" + "@babel/plugin-transform-react-jsx-self" "^7.24.5" + "@babel/plugin-transform-react-jsx-source" "^7.24.1" + "@types/babel__core" "^7.20.5" + react-refresh "^0.14.2" -"@babel/plugin-proposal-unicode-property-regex@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.0.0.tgz#498b39cd72536cd7c4b26177d030226eba08cd33" - integrity sha512-tM3icA6GhC3ch2SkmSxv7J/hCWKISzwycub6eGsDrFDgukD4dZ/I+x81XgW0YslS6mzNuQ1Cbzh5osjIMgepPQ== +ansi-styles@^3.2.1: + version "3.2.1" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" + integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/helper-regex" "^7.0.0" - regexpu-core "^4.2.0" + color-convert "^1.9.0" -"@babel/plugin-syntax-async-generators@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.0.0.tgz#bf0891dcdbf59558359d0c626fdc9490e20bc13c" - integrity sha512-im7ged00ddGKAjcZgewXmp1vxSZQQywuQXe2B1A7kajjZmDeY/ekMPmWr9zJgveSaQH0k7BcGrojQhcK06l0zA== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" +array-union@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d" + integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw== -"@babel/plugin-syntax-class-properties@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.0.0.tgz#e051af5d300cbfbcec4a7476e37a803489881634" - integrity sha512-cR12g0Qzn4sgkjrbrzWy2GE7m9vMl/sFkqZ3gIpAQdrvPDnLM8180i+ANDFIXfjHo9aqp0ccJlQ0QNZcFUbf9w== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" +balanced-match@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" + integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== -"@babel/plugin-syntax-decorators@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-decorators/-/plugin-syntax-decorators-7.1.0.tgz#2fa7c1a7905a299c9853ebcef340306675f9cbdc" - integrity sha512-uQvRSbgQ0nQg3jsmIixXXDCgSpkBolJ9X7NYThMKCcjvE8dN2uWJUzTUNNAeuKOjARTd+wUQV0ztXpgunZYKzQ== +brace-expansion@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-2.0.1.tgz#1edc459e0f0c548486ecf9fc99f2221364b9a0ae" + integrity sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA== dependencies: - "@babel/helper-plugin-utils" "^7.0.0" + balanced-match "^1.0.0" -"@babel/plugin-syntax-dynamic-import@7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.0.0.tgz#6dfb7d8b6c3be14ce952962f658f3b7eb54c33ee" - integrity sha512-Gt9xNyRrCHCiyX/ZxDGOcBnlJl0I3IWicpZRC4CdC0P5a/I07Ya2OAMEBU+J7GmRFVmIetqEYRko6QYRuKOESw== +braces@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.3.tgz#490332f40919452272d55a8480adc0c441358789" + integrity sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA== dependencies: - "@babel/helper-plugin-utils" "^7.0.0" + fill-range "^7.1.1" -"@babel/plugin-syntax-flow@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-flow/-/plugin-syntax-flow-7.0.0.tgz#70638aeaad9ee426bc532e51523cff8ff02f6f17" - integrity sha512-zGcuZWiWWDa5qTZ6iAnpG0fnX/GOu49pGR5PFvkQ9GmKNaSphXQnlNXh/LG20sqWtNrx/eB6krzfEzcwvUyeFA== +browserslist@^4.23.1: + version "4.23.3" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.23.3.tgz#debb029d3c93ebc97ffbc8d9cbb03403e227c800" + integrity sha512-btwCFJVjI4YWDNfau8RhZ+B1Q/VLoUITrm3RlP6y1tYGWIOa+InuYiRGXUBXo8nA1qKmHMyLB/iVQg5TT4eFoA== dependencies: - "@babel/helper-plugin-utils" "^7.0.0" + caniuse-lite "^1.0.30001646" + electron-to-chromium "^1.5.4" + node-releases "^2.0.18" + update-browserslist-db "^1.1.0" -"@babel/plugin-syntax-json-strings@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.0.0.tgz#0d259a68090e15b383ce3710e01d5b23f3770cbd" - integrity sha512-UlSfNydC+XLj4bw7ijpldc1uZ/HB84vw+U6BTuqMdIEmz/LDe63w/GHtpQMdXWdqQZFeAI9PjnHe/vDhwirhKA== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" +caniuse-lite@^1.0.30001646: + version "1.0.30001651" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001651.tgz#52de59529e8b02b1aedcaaf5c05d9e23c0c28138" + integrity sha512-9Cf+Xv1jJNe1xPZLGuUXLNkE1BoDkqRqYyFJ9TDYSqhduqA4hu4oR9HluGoWYQC/aj8WHjsGVV+bwkh0+tegRg== -"@babel/plugin-syntax-jsx@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.0.0.tgz#034d5e2b4e14ccaea2e4c137af7e4afb39375ffd" - integrity sha512-PdmL2AoPsCLWxhIr3kG2+F9v4WH06Q3z+NoGVpQgnUNGcagXHq5sB3OXxkSahKq9TLdNMN/AJzFYSOo8UKDMHg== +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== dependencies: - "@babel/helper-plugin-utils" "^7.0.0" + ansi-styles "^3.2.1" + escape-string-regexp "^1.0.5" + supports-color "^5.3.0" -"@babel/plugin-syntax-object-rest-spread@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.0.0.tgz#37d8fbcaf216bd658ea1aebbeb8b75e88ebc549b" - integrity sha512-5A0n4p6bIiVe5OvQPxBnesezsgFJdHhSs3uFSvaPdMqtsovajLZ+G2vZyvNe10EzJBWWo3AcHGKhAFUxqwp2dw== +color-convert@^1.9.0: + version "1.9.3" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" + integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== dependencies: - "@babel/helper-plugin-utils" "^7.0.0" + color-name "1.1.3" -"@babel/plugin-syntax-optional-catch-binding@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.0.0.tgz#886f72008b3a8b185977f7cb70713b45e51ee475" - integrity sha512-Wc+HVvwjcq5qBg1w5RG9o9RVzmCaAg/Vp0erHCKpAYV8La6I94o4GQAmFYNmkzoMO6gzoOSulpKeSSz6mPEoZw== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" +color-name@1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" + integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw== -"@babel/plugin-syntax-typescript@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.0.0.tgz#90f4fe0a741ae9c0dcdc3017717c05a0cbbd5158" - integrity sha512-5fxmdqiAQVQTIS+KSvYeZuTt91wKtBTYi6JlIkvbQ6hmO+9fZE81ezxmMiFMIsxE7CdRSgzn7nQ1BChcvK9OpA== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" +convert-source-map@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-2.0.0.tgz#4b560f649fc4e918dd0ab75cf4961e8bc882d82a" + integrity sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg== -"@babel/plugin-transform-arrow-functions@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.0.0.tgz#a6c14875848c68a3b4b3163a486535ef25c7e749" - integrity sha512-2EZDBl1WIO/q4DIkIp4s86sdp4ZifL51MoIviLY/gG/mLSuOIEg7J8o6mhbxOTvUJkaN50n+8u41FVsr5KLy/w== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" +csstype@^2.2.0: + version "2.5.7" + resolved "https://registry.yarnpkg.com/csstype/-/csstype-2.5.7.tgz#bf9235d5872141eccfb2d16d82993c6b149179ff" + integrity sha512-Nt5VDyOTIIV4/nRFswoCKps1R5CD1hkiyjBE9/thNaNZILLEviVw9yWQw15+O+CpNjQKB/uvdcxFFOrSflY3Yw== -"@babel/plugin-transform-async-to-generator@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.1.0.tgz#109e036496c51dd65857e16acab3bafdf3c57811" - integrity sha512-rNmcmoQ78IrvNCIt/R9U+cixUHeYAzgusTFgIAv+wQb9HJU4szhpDD6e5GCACmj/JP5KxuCwM96bX3L9v4ZN/g== - dependencies: - "@babel/helper-module-imports" "^7.0.0" - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/helper-remap-async-to-generator" "^7.1.0" +csstype@^3.0.2: + version "3.1.3" + resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.3.tgz#d80ff294d114fb0e6ac500fbf85b60137d7eff81" + integrity sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw== -"@babel/plugin-transform-block-scoped-functions@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.0.0.tgz#482b3f75103927e37288b3b67b65f848e2aa0d07" - integrity sha512-AOBiyUp7vYTqz2Jibe1UaAWL0Hl9JUXEgjFvvvcSc9MVDItv46ViXFw2F7SVt1B5k+KWjl44eeXOAk3UDEaJjQ== +debug@^4.1.0, debug@^4.3.1, debug@^4.3.4: + version "4.3.6" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.6.tgz#2ab2c38fbaffebf8aa95fdfe6d88438c7a13c52b" + integrity sha512-O/09Bd4Z1fBrU4VzkhFqVgpPzaGbw6Sm9FEkBT1A/YBXQFGuuSxa1dN2nxgxS34JmKXqYx8CZAwEVoJFImUXIg== dependencies: - "@babel/helper-plugin-utils" "^7.0.0" + ms "2.1.2" -"@babel/plugin-transform-block-scoping@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.0.0.tgz#1745075edffd7cdaf69fab2fb6f9694424b7e9bc" - integrity sha512-GWEMCrmHQcYWISilUrk9GDqH4enf3UmhOEbNbNrlNAX1ssH3MsS1xLOS6rdjRVPgA7XXVPn87tRkdTEoA/dxEg== +dir-glob@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f" + integrity sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA== dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - lodash "^4.17.10" + path-type "^4.0.0" -"@babel/plugin-transform-classes@7.1.0", "@babel/plugin-transform-classes@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.1.0.tgz#ab3f8a564361800cbc8ab1ca6f21108038432249" - integrity sha512-rNaqoD+4OCBZjM7VaskladgqnZ1LO6o2UxuWSDzljzW21pN1KXkB7BstAVweZdxQkHAujps5QMNOTWesBciKFg== - dependencies: - "@babel/helper-annotate-as-pure" "^7.0.0" - "@babel/helper-define-map" "^7.1.0" - "@babel/helper-function-name" "^7.1.0" - "@babel/helper-optimise-call-expression" "^7.0.0" - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/helper-replace-supers" "^7.1.0" - "@babel/helper-split-export-declaration" "^7.0.0" - globals "^11.1.0" +electron-to-chromium@^1.5.4: + version "1.5.11" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.5.11.tgz#258077f1077a1c72f2925cd5b326c470a7f5adef" + integrity sha512-R1CccCDYqndR25CaXFd6hp/u9RaaMcftMkphmvuepXr5b1vfLkRml6aWVeBhXJ7rbevHkKEMJtz8XqPf7ffmew== -"@babel/plugin-transform-computed-properties@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.0.0.tgz#2fbb8900cd3e8258f2a2ede909b90e7556185e31" - integrity sha512-ubouZdChNAv4AAWAgU7QKbB93NU5sHwInEWfp+/OzJKA02E6Woh9RVoX4sZrbRwtybky/d7baTUqwFx+HgbvMA== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" +esbuild@^0.21.3: + version "0.21.5" + resolved "https://registry.yarnpkg.com/esbuild/-/esbuild-0.21.5.tgz#9ca301b120922959b766360d8ac830da0d02997d" + integrity sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw== + optionalDependencies: + "@esbuild/aix-ppc64" "0.21.5" + "@esbuild/android-arm" "0.21.5" + "@esbuild/android-arm64" "0.21.5" + "@esbuild/android-x64" "0.21.5" + "@esbuild/darwin-arm64" "0.21.5" + "@esbuild/darwin-x64" "0.21.5" + "@esbuild/freebsd-arm64" "0.21.5" + "@esbuild/freebsd-x64" "0.21.5" + "@esbuild/linux-arm" "0.21.5" + "@esbuild/linux-arm64" "0.21.5" + "@esbuild/linux-ia32" "0.21.5" + "@esbuild/linux-loong64" "0.21.5" + "@esbuild/linux-mips64el" "0.21.5" + "@esbuild/linux-ppc64" "0.21.5" + "@esbuild/linux-riscv64" "0.21.5" + "@esbuild/linux-s390x" "0.21.5" + "@esbuild/linux-x64" "0.21.5" + "@esbuild/netbsd-x64" "0.21.5" + "@esbuild/openbsd-x64" "0.21.5" + "@esbuild/sunos-x64" "0.21.5" + "@esbuild/win32-arm64" "0.21.5" + "@esbuild/win32-ia32" "0.21.5" + "@esbuild/win32-x64" "0.21.5" + +escalade@^3.1.2: + version "3.1.2" + resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.2.tgz#54076e9ab29ea5bf3d8f1ed62acffbb88272df27" + integrity sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA== + +escape-string-regexp@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" + integrity sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg== -"@babel/plugin-transform-destructuring@7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.0.0.tgz#68e911e1935dda2f06b6ccbbf184ffb024e9d43a" - integrity sha512-Fr2GtF8YJSXGTyFPakPFB4ODaEKGU04bPsAllAIabwoXdFrPxL0LVXQX5dQWoxOjjgozarJcC9eWGsj0fD6Zsg== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" +eslint-visitor-keys@^3.3.0, eslint-visitor-keys@^3.4.3: + version "3.4.3" + resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz#0cd72fe8550e3c2eae156a96a4dddcd1c8ac5800" + integrity sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag== -"@babel/plugin-transform-destructuring@^7.0.0": - version "7.1.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.1.3.tgz#e69ff50ca01fac6cb72863c544e516c2b193012f" - integrity sha512-Mb9M4DGIOspH1ExHOUnn2UUXFOyVTiX84fXCd+6B5iWrQg/QMeeRmSwpZ9lnjYLSXtZwiw80ytVMr3zue0ucYw== +fast-glob@^3.2.9: + version "3.3.2" + resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.3.2.tgz#a904501e57cfdd2ffcded45e99a54fef55e46129" + integrity sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow== dependencies: - "@babel/helper-plugin-utils" "^7.0.0" + "@nodelib/fs.stat" "^2.0.2" + "@nodelib/fs.walk" "^1.2.3" + glob-parent "^5.1.2" + merge2 "^1.3.0" + micromatch "^4.0.4" -"@babel/plugin-transform-dotall-regex@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.0.0.tgz#73a24da69bc3c370251f43a3d048198546115e58" - integrity sha512-00THs8eJxOJUFVx1w8i1MBF4XH4PsAjKjQ1eqN/uCH3YKwP21GCKfrn6YZFZswbOk9+0cw1zGQPHVc1KBlSxig== +fastq@^1.6.0: + version "1.17.1" + resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.17.1.tgz#2a523f07a4e7b1e81a42b91b8bf2254107753b47" + integrity sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w== dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/helper-regex" "^7.0.0" - regexpu-core "^4.1.3" + reusify "^1.0.4" -"@babel/plugin-transform-duplicate-keys@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.0.0.tgz#a0601e580991e7cace080e4cf919cfd58da74e86" - integrity sha512-w2vfPkMqRkdxx+C71ATLJG30PpwtTpW7DDdLqYt2acXU7YjztzeWW2Jk1T6hKqCLYCcEA5UQM/+xTAm+QCSnuQ== +fill-range@^7.1.1: + version "7.1.1" + resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.1.1.tgz#44265d3cac07e3ea7dc247516380643754a05292" + integrity sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg== dependencies: - "@babel/helper-plugin-utils" "^7.0.0" + to-regex-range "^5.0.1" -"@babel/plugin-transform-exponentiation-operator@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.1.0.tgz#9c34c2ee7fd77e02779cfa37e403a2e1003ccc73" - integrity sha512-uZt9kD1Pp/JubkukOGQml9tqAeI8NkE98oZnHZ2qHRElmeKCodbTZgOEUtujSCSLhHSBWbzNiFSDIMC4/RBTLQ== - dependencies: - "@babel/helper-builder-binary-assignment-operator-visitor" "^7.1.0" - "@babel/helper-plugin-utils" "^7.0.0" +fsevents@~2.3.2, fsevents@~2.3.3: + version "2.3.3" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.3.tgz#cac6407785d03675a2a5e1a5305c697b347d90d6" + integrity sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw== -"@babel/plugin-transform-flow-strip-types@7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-flow-strip-types/-/plugin-transform-flow-strip-types-7.0.0.tgz#c40ced34c2783985d90d9f9ac77a13e6fb396a01" - integrity sha512-WhXUNb4It5a19RsgKKbQPrjmy4yWOY1KynpEbNw7bnd1QTcrT/EIl3MJvnGgpgvrKyKbqX7nUNOJfkpLOnoDKA== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-syntax-flow" "^7.0.0" +gensync@^1.0.0-beta.2: + version "1.0.0-beta.2" + resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.2.tgz#32a6ee76c3d7f52d46b2b1ae5d93fea8580a25e0" + integrity sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg== -"@babel/plugin-transform-for-of@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.0.0.tgz#f2ba4eadb83bd17dc3c7e9b30f4707365e1c3e39" - integrity sha512-TlxKecN20X2tt2UEr2LNE6aqA0oPeMT1Y3cgz8k4Dn1j5ObT8M3nl9aA37LLklx0PBZKETC9ZAf9n/6SujTuXA== +glob-parent@^5.1.2: + version "5.1.2" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" + integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== dependencies: - "@babel/helper-plugin-utils" "^7.0.0" + is-glob "^4.0.1" -"@babel/plugin-transform-function-name@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.1.0.tgz#29c5550d5c46208e7f730516d41eeddd4affadbb" - integrity sha512-VxOa1TMlFMtqPW2IDYZQaHsFrq/dDoIjgN098NowhexhZcz3UGlvPgZXuE1jEvNygyWyxRacqDpCZt+par1FNg== - dependencies: - "@babel/helper-function-name" "^7.1.0" - "@babel/helper-plugin-utils" "^7.0.0" +globals@^11.1.0: + version "11.12.0" + resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" + integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== -"@babel/plugin-transform-literals@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.0.0.tgz#2aec1d29cdd24c407359c930cdd89e914ee8ff86" - integrity sha512-1NTDBWkeNXgpUcyoVFxbr9hS57EpZYXpje92zv0SUzjdu3enaRwF/l3cmyRnXLtIdyJASyiS6PtybK+CgKf7jA== +globby@^11.1.0: + version "11.1.0" + resolved "https://registry.yarnpkg.com/globby/-/globby-11.1.0.tgz#bd4be98bb042f83d796f7e3811991fbe82a0d34b" + integrity sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g== dependencies: - "@babel/helper-plugin-utils" "^7.0.0" + array-union "^2.1.0" + dir-glob "^3.0.1" + fast-glob "^3.2.9" + ignore "^5.2.0" + merge2 "^1.4.1" + slash "^3.0.0" -"@babel/plugin-transform-modules-amd@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.1.0.tgz#f9e0a7072c12e296079b5a59f408ff5b97bf86a8" - integrity sha512-wt8P+xQ85rrnGNr2x1iV3DW32W8zrB6ctuBkYBbf5/ZzJY99Ob4MFgsZDFgczNU76iy9PWsy4EuxOliDjdKw6A== - dependencies: - "@babel/helper-module-transforms" "^7.1.0" - "@babel/helper-plugin-utils" "^7.0.0" +graphemer@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/graphemer/-/graphemer-1.4.0.tgz#fb2f1d55e0e3a1849aeffc90c4fa0dd53a0e66c6" + integrity sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag== -"@babel/plugin-transform-modules-commonjs@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.1.0.tgz#0a9d86451cbbfb29bd15186306897c67f6f9a05c" - integrity sha512-wtNwtMjn1XGwM0AXPspQgvmE6msSJP15CX2RVfpTSTNPLhKhaOjaIfBaVfj4iUZ/VrFSodcFedwtPg/NxwQlPA== - dependencies: - "@babel/helper-module-transforms" "^7.1.0" - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/helper-simple-access" "^7.1.0" - -"@babel/plugin-transform-modules-systemjs@^7.0.0": - version "7.1.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.1.3.tgz#2119a3e3db612fd74a19d88652efbfe9613a5db0" - integrity sha512-PvTxgjxQAq4pvVUZF3mD5gEtVDuId8NtWkJsZLEJZMZAW3TvgQl1pmydLLN1bM8huHFVVU43lf0uvjQj9FRkKw== - dependencies: - "@babel/helper-hoist-variables" "^7.0.0" - "@babel/helper-plugin-utils" "^7.0.0" +has-flag@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" + integrity sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw== -"@babel/plugin-transform-modules-umd@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.1.0.tgz#a29a7d85d6f28c3561c33964442257cc6a21f2a8" - integrity sha512-enrRtn5TfRhMmbRwm7F8qOj0qEYByqUvTttPEGimcBH4CJHphjyK1Vg7sdU7JjeEmgSpM890IT/efS2nMHwYig== +ignore@^5.2.0, ignore@^5.3.1: + version "5.3.2" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.3.2.tgz#3cd40e729f3643fd87cb04e50bf0eb722bc596f5" + integrity sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g== + +is-extglob@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" + integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ== + +is-glob@^4.0.1, is-glob@^4.0.3: + version "4.0.3" + resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084" + integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg== dependencies: - "@babel/helper-module-transforms" "^7.1.0" - "@babel/helper-plugin-utils" "^7.0.0" + is-extglob "^2.1.1" -"@babel/plugin-transform-new-target@^7.0.0": +is-number@^7.0.0: version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.0.0.tgz#ae8fbd89517fa7892d20e6564e641e8770c3aa4a" - integrity sha512-yin069FYjah+LbqfGeTfzIBODex/e++Yfa0rH0fpfam9uTbuEeEOx5GLGr210ggOV77mVRNoeqSYqeuaqSzVSw== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" + resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" + integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== -"@babel/plugin-transform-object-super@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.1.0.tgz#b1ae194a054b826d8d4ba7ca91486d4ada0f91bb" - integrity sha512-/O02Je1CRTSk2SSJaq0xjwQ8hG4zhZGNjE8psTsSNPXyLRCODv7/PBozqT5AmQMzp7MI3ndvMhGdqp9c96tTEw== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/helper-replace-supers" "^7.1.0" +"js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" + integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== -"@babel/plugin-transform-parameters@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.1.0.tgz#44f492f9d618c9124026e62301c296bf606a7aed" - integrity sha512-vHV7oxkEJ8IHxTfRr3hNGzV446GAb+0hgbA7o/0Jd76s+YzccdWuTU296FOCOl/xweU4t/Ya4g41yWz80RFCRw== - dependencies: - "@babel/helper-call-delegate" "^7.1.0" - "@babel/helper-get-function-arity" "^7.0.0" - "@babel/helper-plugin-utils" "^7.0.0" +jsesc@^2.5.1: + version "2.5.2" + resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4" + integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA== -"@babel/plugin-transform-react-constant-elements@7.0.0", "@babel/plugin-transform-react-constant-elements@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-constant-elements/-/plugin-transform-react-constant-elements-7.0.0.tgz#ab413e33e9c46a766f5326014bcbf9e2b34ef7a4" - integrity sha512-z8yrW4KCVcqPYr0r9dHXe7fu3daLzn0r6TQEFoGbXahdrzEwT1d1ux+/EnFcqIHv9uPilUlnRnPIUf7GMO0ehg== - dependencies: - "@babel/helper-annotate-as-pure" "^7.0.0" - "@babel/helper-plugin-utils" "^7.0.0" +json5@^2.2.3: + version "2.2.3" + resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" + integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== -"@babel/plugin-transform-react-display-name@7.0.0", "@babel/plugin-transform-react-display-name@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.0.0.tgz#93759e6c023782e52c2da3b75eca60d4f10533ee" - integrity sha512-BX8xKuQTO0HzINxT6j/GiCwoJB0AOMs0HmLbEnAvcte8U8rSkNa/eSCAY+l1OA4JnCVq2jw2p6U8QQryy2fTPg== +loose-envify@^1.1.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf" + integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q== dependencies: - "@babel/helper-plugin-utils" "^7.0.0" + js-tokens "^3.0.0 || ^4.0.0" -"@babel/plugin-transform-react-jsx-self@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.0.0.tgz#a84bb70fea302d915ea81d9809e628266bb0bc11" - integrity sha512-pymy+AK12WO4safW1HmBpwagUQRl9cevNX+82AIAtU1pIdugqcH+nuYP03Ja6B+N4gliAaKWAegIBL/ymALPHA== +lru-cache@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920" + integrity sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w== dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-syntax-jsx" "^7.0.0" + yallist "^3.0.2" -"@babel/plugin-transform-react-jsx-source@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.0.0.tgz#28e00584f9598c0dd279f6280eee213fa0121c3c" - integrity sha512-OSeEpFJEH5dw/TtxTg4nijl4nHBbhqbKL94Xo/Y17WKIf2qJWeIk/QeXACF19lG1vMezkxqruwnTjVizaW7u7w== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-syntax-jsx" "^7.0.0" +merge2@^1.3.0, merge2@^1.4.1: + version "1.4.1" + resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae" + integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== -"@babel/plugin-transform-react-jsx@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.0.0.tgz#524379e4eca5363cd10c4446ba163f093da75f3e" - integrity sha512-0TMP21hXsSUjIQJmu/r7RiVxeFrXRcMUigbKu0BLegJK9PkYodHstaszcig7zxXfaBji2LYUdtqIkHs+hgYkJQ== +micromatch@^4.0.4: + version "4.0.7" + resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.7.tgz#33e8190d9fe474a9895525f5618eee136d46c2e5" + integrity sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q== dependencies: - "@babel/helper-builder-react-jsx" "^7.0.0" - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-syntax-jsx" "^7.0.0" + braces "^3.0.3" + picomatch "^2.3.1" -"@babel/plugin-transform-regenerator@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.0.0.tgz#5b41686b4ed40bef874d7ed6a84bdd849c13e0c1" - integrity sha512-sj2qzsEx8KDVv1QuJc/dEfilkg3RRPvPYx/VnKLtItVQRWt1Wqf5eVCOLZm29CiGFfYYsA3VPjfizTCV0S0Dlw== +minimatch@^9.0.4: + version "9.0.5" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-9.0.5.tgz#d74f9dd6b57d83d8e98cfb82133b03978bc929e5" + integrity sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow== dependencies: - regenerator-transform "^0.13.3" + brace-expansion "^2.0.1" -"@babel/plugin-transform-runtime@7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.1.0.tgz#9f76920d42551bb577e2dc594df229b5f7624b63" - integrity sha512-WFLMgzu5DLQEah0lKTJzYb14vd6UiES7PTnXcvrPZ1VrwFeJ+mTbvr65fFAsXYMt2bIoOoC0jk76zY1S7HZjUg== - dependencies: - "@babel/helper-module-imports" "^7.0.0" - "@babel/helper-plugin-utils" "^7.0.0" - resolve "^1.8.1" - semver "^5.5.1" +ms@2.1.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" + integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== -"@babel/plugin-transform-shorthand-properties@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.0.0.tgz#85f8af592dcc07647541a0350e8c95c7bf419d15" - integrity sha512-g/99LI4vm5iOf5r1Gdxq5Xmu91zvjhEG5+yZDJW268AZELAu4J1EiFLnkSG3yuUsZyOipVOVUKoGPYwfsTymhw== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" +nanoid@^3.3.7: + version "3.3.7" + resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.7.tgz#d0c301a691bc8d54efa0a2226ccf3fe2fd656bd8" + integrity sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g== -"@babel/plugin-transform-spread@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.0.0.tgz#93583ce48dd8c85e53f3a46056c856e4af30b49b" - integrity sha512-L702YFy2EvirrR4shTj0g2xQp7aNwZoWNCkNu2mcoU0uyzMl0XRwDSwzB/xp6DSUFiBmEXuyAyEN16LsgVqGGQ== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" +natural-compare@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" + integrity sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw== -"@babel/plugin-transform-sticky-regex@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.0.0.tgz#30a9d64ac2ab46eec087b8530535becd90e73366" - integrity sha512-LFUToxiyS/WD+XEWpkx/XJBrUXKewSZpzX68s+yEOtIbdnsRjpryDw9U06gYc6klYEij/+KQVRnD3nz3AoKmjw== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/helper-regex" "^7.0.0" +node-releases@^2.0.18: + version "2.0.18" + resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.18.tgz#f010e8d35e2fe8d6b2944f03f70213ecedc4ca3f" + integrity sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g== -"@babel/plugin-transform-template-literals@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.0.0.tgz#084f1952efe5b153ddae69eb8945f882c7a97c65" - integrity sha512-vA6rkTCabRZu7Nbl9DfLZE1imj4tzdWcg5vtdQGvj+OH9itNNB6hxuRMHuIY8SGnEt1T9g5foqs9LnrHzsqEFg== - dependencies: - "@babel/helper-annotate-as-pure" "^7.0.0" - "@babel/helper-plugin-utils" "^7.0.0" +path-type@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" + integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== -"@babel/plugin-transform-typeof-symbol@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.0.0.tgz#4dcf1e52e943e5267b7313bff347fdbe0f81cec9" - integrity sha512-1r1X5DO78WnaAIvs5uC48t41LLckxsYklJrZjNKcevyz83sF2l4RHbw29qrCPr/6ksFsdfRpT/ZgxNWHXRnffg== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" +picocolors@^1.0.0, picocolors@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.1.tgz#a8ad579b571952f0e5d25892de5445bcfe25aaa1" + integrity sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew== -"@babel/plugin-transform-typescript@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.1.0.tgz#81e7b4be90e7317cbd04bf1163ebf06b2adee60b" - integrity sha512-TOTtVeT+fekAesiCHnPz+PSkYSdOSLyLn42DI45nxg6iCdlQY6LIj/tYqpMB0y+YicoTUiYiXqF8rG6SKfhw6Q== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-syntax-typescript" "^7.0.0" +picomatch@^2.3.1: + version "2.3.1" + resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" + integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== -"@babel/plugin-transform-unicode-regex@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.0.0.tgz#c6780e5b1863a76fe792d90eded9fcd5b51d68fc" - integrity sha512-uJBrJhBOEa3D033P95nPHu3nbFwFE9ZgXsfEitzoIXIwqAZWk7uXcg06yFKXz9FSxBH5ucgU/cYdX0IV8ldHKw== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/helper-regex" "^7.0.0" - regexpu-core "^4.1.3" - -"@babel/preset-env@7.1.0", "@babel/preset-env@^7.0.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.1.0.tgz#e67ea5b0441cfeab1d6f41e9b5c79798800e8d11" - integrity sha512-ZLVSynfAoDHB/34A17/JCZbyrzbQj59QC1Anyueb4Bwjh373nVPq5/HMph0z+tCmcDjXDe+DlKQq9ywQuvWrQg== +postcss@^8.4.41: + version "8.4.41" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.41.tgz#d6104d3ba272d882fe18fc07d15dc2da62fa2681" + integrity sha512-TesUflQ0WKZqAvg52PWL6kHgLKP6xB6heTOdoYM0Wt2UHyxNa4K25EZZMgKns3BH1RLVbZCREPpLY0rhnNoHVQ== dependencies: - "@babel/helper-module-imports" "^7.0.0" - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-proposal-async-generator-functions" "^7.1.0" - "@babel/plugin-proposal-json-strings" "^7.0.0" - "@babel/plugin-proposal-object-rest-spread" "^7.0.0" - "@babel/plugin-proposal-optional-catch-binding" "^7.0.0" - "@babel/plugin-proposal-unicode-property-regex" "^7.0.0" - "@babel/plugin-syntax-async-generators" "^7.0.0" - "@babel/plugin-syntax-object-rest-spread" "^7.0.0" - "@babel/plugin-syntax-optional-catch-binding" "^7.0.0" - "@babel/plugin-transform-arrow-functions" "^7.0.0" - "@babel/plugin-transform-async-to-generator" "^7.1.0" - "@babel/plugin-transform-block-scoped-functions" "^7.0.0" - "@babel/plugin-transform-block-scoping" "^7.0.0" - "@babel/plugin-transform-classes" "^7.1.0" - "@babel/plugin-transform-computed-properties" "^7.0.0" - "@babel/plugin-transform-destructuring" "^7.0.0" - "@babel/plugin-transform-dotall-regex" "^7.0.0" - "@babel/plugin-transform-duplicate-keys" "^7.0.0" - "@babel/plugin-transform-exponentiation-operator" "^7.1.0" - "@babel/plugin-transform-for-of" "^7.0.0" - "@babel/plugin-transform-function-name" "^7.1.0" - "@babel/plugin-transform-literals" "^7.0.0" - "@babel/plugin-transform-modules-amd" "^7.1.0" - "@babel/plugin-transform-modules-commonjs" "^7.1.0" - "@babel/plugin-transform-modules-systemjs" "^7.0.0" - "@babel/plugin-transform-modules-umd" "^7.1.0" - "@babel/plugin-transform-new-target" "^7.0.0" - "@babel/plugin-transform-object-super" "^7.1.0" - "@babel/plugin-transform-parameters" "^7.1.0" - "@babel/plugin-transform-regenerator" "^7.0.0" - "@babel/plugin-transform-shorthand-properties" "^7.0.0" - "@babel/plugin-transform-spread" "^7.0.0" - "@babel/plugin-transform-sticky-regex" "^7.0.0" - "@babel/plugin-transform-template-literals" "^7.0.0" - "@babel/plugin-transform-typeof-symbol" "^7.0.0" - "@babel/plugin-transform-unicode-regex" "^7.0.0" - browserslist "^4.1.0" - invariant "^2.2.2" - js-levenshtein "^1.1.3" - semver "^5.3.0" - -"@babel/preset-react@7.0.0", "@babel/preset-react@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/preset-react/-/preset-react-7.0.0.tgz#e86b4b3d99433c7b3e9e91747e2653958bc6b3c0" - integrity sha512-oayxyPS4Zj+hF6Et11BwuBkmpgT/zMxyuZgFrMeZID6Hdh3dGlk4sHCAhdBCpuCKW2ppBfl2uCCetlrUIJRY3w== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-transform-react-display-name" "^7.0.0" - "@babel/plugin-transform-react-jsx" "^7.0.0" - "@babel/plugin-transform-react-jsx-self" "^7.0.0" - "@babel/plugin-transform-react-jsx-source" "^7.0.0" - -"@babel/preset-typescript@7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.1.0.tgz#49ad6e2084ff0bfb5f1f7fb3b5e76c434d442c7f" - integrity sha512-LYveByuF9AOM8WrsNne5+N79k1YxjNB6gmpCQsnuSBAcV8QUeB+ZUxQzL7Rz7HksPbahymKkq2qBR+o36ggFZA== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-transform-typescript" "^7.1.0" + nanoid "^3.3.7" + picocolors "^1.0.1" + source-map-js "^1.2.0" -"@babel/runtime@7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.0.0.tgz#adeb78fedfc855aa05bc041640f3f6f98e85424c" - integrity sha512-7hGhzlcmg01CvH1EHdSPVXYX1aJ8KCEyz6I9xYIi/asDtzBPMyMhVibhM/K6g/5qnKBwjZtp10bNZIEFTRW1MA== - dependencies: - regenerator-runtime "^0.12.0" +queue-microtask@^1.2.2: + version "1.2.3" + resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243" + integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A== -"@babel/runtime@^7.0.0": - version "7.1.5" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.1.5.tgz#4170907641cf1f61508f563ece3725150cc6fe39" - integrity sha512-xKnPpXG/pvK1B90JkwwxSGii90rQGKtzcMt2gI5G6+M0REXaq6rOHsGC2ay6/d0Uje7zzvSzjEzfR3ENhFlrfA== +react-dom@^18.3.1: + version "18.3.1" + resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-18.3.1.tgz#c2265d79511b57d479b3dd3fdfa51536494c5cb4" + integrity sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw== dependencies: - regenerator-runtime "^0.12.0" + loose-envify "^1.1.0" + scheduler "^0.23.2" -"@babel/runtime@^7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.2.0.tgz#b03e42eeddf5898e00646e4c840fa07ba8dcad7f" - integrity sha512-oouEibCbHMVdZSDlJBO6bZmID/zA/G/Qx3H1d3rSNPTD+L8UNKvCat7aKWSJ74zYbm5zWGh0GQN0hKj8zYFTCg== - dependencies: - regenerator-runtime "^0.12.0" +react-refresh@^0.14.2: + version "0.14.2" + resolved "https://registry.yarnpkg.com/react-refresh/-/react-refresh-0.14.2.tgz#3833da01ce32da470f1f936b9d477da5c7028bf9" + integrity sha512-jCvmsr+1IUSMUyzOkRcvnVbX3ZYC6g9TDrDbFuFmRDq7PD4yaGbLKNQL6k2jnArV8hjYxh7hVhAZB6s9HDGpZA== -"@babel/template@^7.1.0", "@babel/template@^7.1.2": - version "7.1.2" - resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.1.2.tgz#090484a574fef5a2d2d7726a674eceda5c5b5644" - integrity sha512-SY1MmplssORfFiLDcOETrW7fCLl+PavlwMh92rrGcikQaRq4iWPVH0MpwPpY3etVMx6RnDjXtr6VZYr/IbP/Ag== +react@^18.3.1: + version "18.3.1" + resolved "https://registry.yarnpkg.com/react/-/react-18.3.1.tgz#49ab892009c53933625bd16b2533fc754cab2891" + integrity sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ== dependencies: - "@babel/code-frame" "^7.0.0" - "@babel/parser" "^7.1.2" - "@babel/types" "^7.1.2" - -"@babel/traverse@^7.0.0", "@babel/traverse@^7.1.0": - version "7.1.4" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.1.4.tgz#f4f83b93d649b4b2c91121a9087fa2fa949ec2b4" - integrity sha512-my9mdrAIGdDiSVBuMjpn/oXYpva0/EZwWL3sm3Wcy/AVWO2eXnsoZruOT9jOGNRXU8KbCIu5zsKnXcAJ6PcV6Q== - dependencies: - "@babel/code-frame" "^7.0.0" - "@babel/generator" "^7.1.3" - "@babel/helper-function-name" "^7.1.0" - "@babel/helper-split-export-declaration" "^7.0.0" - "@babel/parser" "^7.1.3" - "@babel/types" "^7.1.3" - debug "^3.1.0" - globals "^11.1.0" - lodash "^4.17.10" + loose-envify "^1.1.0" -"@babel/types@^7.0.0", "@babel/types@^7.1.2", "@babel/types@^7.1.3": - version "7.1.3" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.1.3.tgz#3a767004567060c2f40fca49a304712c525ee37d" - integrity sha512-RpPOVfK+yatXyn8n4PB1NW6k9qjinrXrRR8ugBN8fD6hCy5RXI6PSbVqpOJBO9oSaY7Nom4ohj35feb0UR9hSA== - dependencies: - esutils "^2.0.2" - lodash "^4.17.10" - to-fast-properties "^2.0.0" +reusify@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76" + integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw== -"@csstools/convert-colors@^1.4.0": - version "1.4.0" - resolved "https://registry.yarnpkg.com/@csstools/convert-colors/-/convert-colors-1.4.0.tgz#ad495dc41b12e75d588c6db8b9834f08fa131eb7" - integrity sha512-5a6wqoJV/xEdbRNKVo6I4hO3VjyDq//8q2f9I6PBAvMesJHFauXDorcNCsr9RzvsZnaWi5NYCcfyqP1QeFHFbw== +rollup@^4.13.0: + version "4.21.0" + resolved "https://registry.yarnpkg.com/rollup/-/rollup-4.21.0.tgz#28db5f5c556a5180361d35009979ccc749560b9d" + integrity sha512-vo+S/lfA2lMS7rZ2Qoubi6I5hwZwzXeUIctILZLbHI+laNtvhhOIon2S1JksA5UEDQ7l3vberd0fxK44lTYjbQ== + dependencies: + "@types/estree" "1.0.5" + optionalDependencies: + "@rollup/rollup-android-arm-eabi" "4.21.0" + "@rollup/rollup-android-arm64" "4.21.0" + "@rollup/rollup-darwin-arm64" "4.21.0" + "@rollup/rollup-darwin-x64" "4.21.0" + "@rollup/rollup-linux-arm-gnueabihf" "4.21.0" + "@rollup/rollup-linux-arm-musleabihf" "4.21.0" + "@rollup/rollup-linux-arm64-gnu" "4.21.0" + "@rollup/rollup-linux-arm64-musl" "4.21.0" + "@rollup/rollup-linux-powerpc64le-gnu" "4.21.0" + "@rollup/rollup-linux-riscv64-gnu" "4.21.0" + "@rollup/rollup-linux-s390x-gnu" "4.21.0" + "@rollup/rollup-linux-x64-gnu" "4.21.0" + "@rollup/rollup-linux-x64-musl" "4.21.0" + "@rollup/rollup-win32-arm64-msvc" "4.21.0" + "@rollup/rollup-win32-ia32-msvc" "4.21.0" + "@rollup/rollup-win32-x64-msvc" "4.21.0" + fsevents "~2.3.2" + +run-parallel@^1.1.9: + version "1.2.0" + resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.2.0.tgz#66d1368da7bdf921eb9d95bd1a9229e7f21a43ee" + integrity sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA== + dependencies: + queue-microtask "^1.2.2" -"@emotion/is-prop-valid@^0.6.8": - version "0.6.8" - resolved "https://registry.yarnpkg.com/@emotion/is-prop-valid/-/is-prop-valid-0.6.8.tgz#68ad02831da41213a2089d2cab4e8ac8b30cbd85" - integrity sha512-IMSL7ekYhmFlILXcouA6ket3vV7u9BqStlXzbKOF9HBtpUPMMlHU+bBxrLOa2NvleVwNIxeq/zL8LafLbeUXcA== +scheduler@^0.23.2: + version "0.23.2" + resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.23.2.tgz#414ba64a3b282892e944cf2108ecc078d115cdc3" + integrity sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ== dependencies: - "@emotion/memoize" "^0.6.6" + loose-envify "^1.1.0" -"@emotion/memoize@^0.6.6": - version "0.6.6" - resolved "https://registry.yarnpkg.com/@emotion/memoize/-/memoize-0.6.6.tgz#004b98298d04c7ca3b4f50ca2035d4f60d2eed1b" - integrity sha512-h4t4jFjtm1YV7UirAFuSuFGyLa+NNxjdkq6DpFLANNQY5rHueFZHVY+8Cu1HYVP6DrheB0kv4m5xPjo7eKT7yQ== +semver@^6.3.1: + version "6.3.1" + resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" + integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== -"@emotion/unitless@^0.7.0": - version "0.7.3" - resolved "https://registry.yarnpkg.com/@emotion/unitless/-/unitless-0.7.3.tgz#6310a047f12d21a1036fb031317219892440416f" - integrity sha512-4zAPlpDEh2VwXswwr/t8xGNDGg8RQiPxtxZ3qQEXyQsBV39ptTdESCjuBvGze1nLMVrxmTIKmnO/nAV8Tqjjzg== +semver@^7.6.0: + version "7.6.3" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.6.3.tgz#980f7b5550bc175fb4dc09403085627f9eb33143" + integrity sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A== -"@fortawesome/fontawesome-common-types@^0.2.8": - version "0.2.8" - resolved "https://registry.yarnpkg.com/@fortawesome/fontawesome-common-types/-/fontawesome-common-types-0.2.8.tgz#8cacd1efd1aa956e1ef173f0abcf2ce1b7a0c66f" - integrity sha512-0sU7JDLdEeGQlWBSr5uEE6PZOM15YM1s9rFlpZV+WhNdX2V6Co3Sj0OW5el4F54X1Tw+nfxf4Cc3dUedudaDWg== +slash@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" + integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q== -"@fortawesome/fontawesome-svg-core@^1.2.8": - version "1.2.8" - resolved "https://registry.yarnpkg.com/@fortawesome/fontawesome-svg-core/-/fontawesome-svg-core-1.2.8.tgz#b802b7f3d5b9d9d92ae92c18e865df468dcdf561" - integrity sha512-cvcMQZ5F8WSNSGMk9uWlkmZNfDzmdsWLRrTMrNwwihHcEmWRlIuSbDt+PQ/rXsnGmJnmLQJLFBT1cse/3swxbg== - dependencies: - "@fortawesome/fontawesome-common-types" "^0.2.8" +source-map-js@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.2.0.tgz#16b809c162517b5b8c3e7dcd315a2a5c2612b2af" + integrity sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg== -"@fortawesome/free-solid-svg-icons@^5.5.0": +supports-color@^5.3.0: version "5.5.0" - resolved "https://registry.yarnpkg.com/@fortawesome/free-solid-svg-icons/-/free-solid-svg-icons-5.5.0.tgz#4d815df4bba076f209eb409bc56d9d830367a7c0" - integrity sha512-VawIT2owNP97EwehZmxkvZDhoKwEevU/1HOMkln6kc4OtfE+JKYr6DpyzQnHVWXvz/eFj36QElHNe6zT8gR+Tg== - dependencies: - "@fortawesome/fontawesome-common-types" "^0.2.8" - -"@fortawesome/react-fontawesome@^0.1.3": - version "0.1.3" - resolved "https://registry.yarnpkg.com/@fortawesome/react-fontawesome/-/react-fontawesome-0.1.3.tgz#266b4047892c3d10498af1075d89252f74015b11" - integrity sha512-tc689l67rPZ7+ynZVUgOXY80rAt5KxvuH1qjPpJcbyJzJHzk5yhrD993BjsSEdPBLTtPqmvwynsO/XrAQqHbtg== - dependencies: - humps "^2.0.1" - prop-types "^15.5.10" - -"@icons/material@^0.2.4": - version "0.2.4" - resolved "https://registry.yarnpkg.com/@icons/material/-/material-0.2.4.tgz#e90c9f71768b3736e76d7dd6783fc6c2afa88bc8" - integrity sha512-QPcGmICAPbGLGb6F/yNf/KzKqvFx8z5qx3D1yFqVAjoFmXK35EgyW+cJ57Te3CNsmzblwtzakLGFqHPqrfb4Tw== - -"@mrmlnc/readdir-enhanced@^2.2.1": - version "2.2.1" - resolved "https://registry.yarnpkg.com/@mrmlnc/readdir-enhanced/-/readdir-enhanced-2.2.1.tgz#524af240d1a360527b730475ecfa1344aa540dde" - integrity sha512-bPHp6Ji8b41szTOcaP63VlnbbO5Ny6dwAATtY6JTjh5N2OLrb5Qk/Th5cRkRQhkWCt+EJsYrNB0MiL+Gpn6e3g== - dependencies: - call-me-maybe "^1.0.1" - glob-to-regexp "^0.3.0" - -"@nodelib/fs.stat@^1.0.1": - version "1.1.2" - resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-1.1.2.tgz#54c5a964462be3d4d78af631363c18d6fa91ac26" - integrity sha512-yprFYuno9FtNsSHVlSWd+nRlmGoAbqbeCwOryP6sC/zoCjhpArcRMYp19EvpSUSizJAlsXEwJv+wcWS9XaXdMw== - -"@svgr/core@^2.4.1": - version "2.4.1" - resolved "https://registry.yarnpkg.com/@svgr/core/-/core-2.4.1.tgz#03a407c28c4a1d84305ae95021e8eabfda8fa731" - integrity sha512-2i1cUbjpKt1KcIP05e10vkmu9Aedp32EFqVcSQ08onbB8lVxJqMPci3Hr54aI14S9cLg4JdcpO0D35HHUtT8oQ== - dependencies: - camelcase "^5.0.0" - cosmiconfig "^5.0.6" - h2x-core "^1.1.0" - h2x-plugin-jsx "^1.1.0" - merge-deep "^3.0.2" - prettier "^1.14.2" - svgo "^1.0.5" - -"@svgr/webpack@2.4.1": - version "2.4.1" - resolved "https://registry.yarnpkg.com/@svgr/webpack/-/webpack-2.4.1.tgz#68bc581ecb4c09fadeb7936bd1afaceb9da960d2" - integrity sha512-sMHYq0zbMtSHcc9kVfkYI2zrl88u4mKGyQLgKt7r+ul5nITcncm/EPBhzEUrJY5izdlaU6EvyH8zOhZnfaSmOA== + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" + integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== dependencies: - "@babel/core" "^7.0.1" - "@babel/plugin-transform-react-constant-elements" "^7.0.0" - "@babel/preset-env" "^7.0.0" - "@babel/preset-react" "^7.0.0" - "@svgr/core" "^2.4.1" - loader-utils "^1.1.0" - -"@types/chroma-js@^1.4.1": - version "1.4.1" - resolved "https://registry.yarnpkg.com/@types/chroma-js/-/chroma-js-1.4.1.tgz#7c52d461173d569ba1f27e0c2dd26ee76691ec82" - integrity sha512-i9hUiO3bwgmzZUDwBuR65WqsBQ/nwN+H2fKX0bykXCdd8cFQEuIj8vI7FXjyb2f5z5h+pv76I/uakikKSgaqTA== + has-flag "^3.0.0" -"@types/file-saver@^2.0.0": +to-fast-properties@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/@types/file-saver/-/file-saver-2.0.0.tgz#cbb49815a5e1129d5f23836a98d65d93822409af" - integrity sha512-dxdRrUov2HVTbSRFX+7xwUPlbGYVEZK6PrSqClg2QPos3PNe0bCajkDDkDeeC1znjSH03KOEqVbXpnJuWa2wgQ== - -"@types/history@^4.7.2": - version "4.7.2" - resolved "https://registry.yarnpkg.com/@types/history/-/history-4.7.2.tgz#0e670ea254d559241b6eeb3894f8754991e73220" - integrity sha512-ui3WwXmjTaY73fOQ3/m3nnajU/Orhi6cEu5rzX+BrAAJxa3eITXZ5ch9suPqtM03OWhAHhPSyBGCN4UKoxO20Q== - -"@types/jest@^23.3.10": - version "23.3.10" - resolved "https://registry.yarnpkg.com/@types/jest/-/jest-23.3.10.tgz#4897974cc317bf99d4fe6af1efa15957fa9c94de" - integrity sha512-DC8xTuW/6TYgvEg3HEXS7cu9OijFqprVDXXiOcdOKZCU/5PJNLZU37VVvmZHdtMiGOa8wAA/We+JzbdxFzQTRQ== - -"@types/lodash.throttle@^4.1.4": - version "4.1.4" - resolved "https://registry.yarnpkg.com/@types/lodash.throttle/-/lodash.throttle-4.1.4.tgz#db210627eb05ef68af99344669818c5baad24039" - integrity sha512-ZniM2KbesKU9Qyv+mxbp1/3xAzJyrrXcfdYdOpuO8VFIG04E2VGqzXUKjNiqOKTBpNXR3r0F9yukldLBX4z5HA== - dependencies: - "@types/lodash" "*" - -"@types/lodash@*": - version "4.14.119" - resolved "https://registry.yarnpkg.com/@types/lodash/-/lodash-4.14.119.tgz#be847e5f4bc3e35e46d041c394ead8b603ad8b39" - integrity sha512-Z3TNyBL8Vd/M9D9Ms2S3LmFq2sSMzahodD6rCS9V2N44HUMINb75jNkSuwAx7eo2ufqTdfOdtGQpNbieUjPQmw== + resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" + integrity sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog== -"@types/nanoid@^1.2.0": - version "1.2.0" - resolved "https://registry.yarnpkg.com/@types/nanoid/-/nanoid-1.2.0.tgz#c0141cfec5b4818016355389b0bd539097d872ff" - integrity sha512-3/PFKYBTN3xDsABhbXS007PVhdKvDMkaG6nE83/dIaC2LOLhW6fPt9bOR6UdlRGLk4vy6fEvC9MjKy4CLFAjuQ== +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: - "@types/node" "*" - -"@types/node@*", "@types/node@^10.12.11": - version "10.12.11" - resolved "https://registry.yarnpkg.com/@types/node/-/node-10.12.11.tgz#715c476c99a5f6898a1ae61caf9825e43c03912e" - integrity sha512-3iIOhNiPGTdcUNVCv9e5G7GotfvJJe2pc9w2UgDXlUwnxSZ3RgcUocIU+xYm+rTU54jIKih998QE4dMOyMN1NQ== + is-number "^7.0.0" -"@types/prop-types@*": - version "15.5.6" - resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.5.6.tgz#9c03d3fed70a8d517c191b7734da2879b50ca26c" - integrity sha512-ZBFR7TROLVzCkswA3Fmqq+IIJt62/T7aY/Dmz+QkU7CaW2QFqAitCE8Ups7IzmGhcN1YWMBT4Qcoc07jU9hOJQ== +ts-api-utils@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/ts-api-utils/-/ts-api-utils-1.3.0.tgz#4b490e27129f1e8e686b45cc4ab63714dc60eea1" + integrity sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ== -"@types/react-color@^2.14.0": - version "2.14.0" - resolved "https://registry.yarnpkg.com/@types/react-color/-/react-color-2.14.0.tgz#e01f6069902819fe9f6544375829a485f894206f" - integrity sha512-5UfGjUsu7bXop7K064nNrIGgS7wPjGEY7Or9tAE6BLslDtfhRnAlqWo9N2BIntEZ/3KpXlRnt0MBuc+hZJTevw== - dependencies: - "@types/react" "*" +typescript@^5.5.4: + version "5.5.4" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.5.4.tgz#d9852d6c82bad2d2eda4fd74a5762a8f5909e9ba" + integrity sha512-Mtq29sKDAEYP7aljRgtPOpTvOfbwRWlS6dPRzwjdE+C0R4brX/GUyhHSecbHMFLNBLcJIPt9nl9yG5TZ1weH+Q== -"@types/react-dom@^16.0.11": - version "16.0.11" - resolved "https://registry.yarnpkg.com/@types/react-dom/-/react-dom-16.0.11.tgz#bd10ccb0d9260343f4b9a49d4f7a8330a5c1f081" - integrity sha512-x6zUx9/42B5Kl2Vl9HlopV8JF64wLpX3c+Pst9kc1HgzrsH+mkehe/zmHMQTplIrR48H2gpU7ZqurQolYu8XBA== +update-browserslist-db@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.1.0.tgz#7ca61c0d8650766090728046e416a8cde682859e" + integrity sha512-EdRAaAyk2cUE1wOf2DkEhzxqOQvFOoRJFNS6NeyJ01Gp2beMRpBAINjM2iDXE3KCuKhwnvHIQCJm6ThL2Z+HzQ== dependencies: - "@types/react" "*" + escalade "^3.1.2" + picocolors "^1.0.1" -"@types/react-numeric-input@^2.2.3": - version "2.2.3" - resolved "https://registry.yarnpkg.com/@types/react-numeric-input/-/react-numeric-input-2.2.3.tgz#fbb0e8f24a4775374eda9cdce2355679d40f9e92" - integrity sha512-TQtZ+0PM3/Pk15YYY3xJGOmfwETFQYHGydMaY42OvAbRTBmYJSmGPL7f/Yi/9FfXWb4m4T8FrZborccZX6VXDw== +vite@^5.4.1: + version "5.4.1" + resolved "https://registry.yarnpkg.com/vite/-/vite-5.4.1.tgz#2aa72370de824d23f53658affd807e4c9905b058" + integrity sha512-1oE6yuNXssjrZdblI9AfBbHCC41nnyoVoEZxQnID6yvQZAFBzxxkqoFLtHUMkYunL8hwOLEjgTuxpkRxvba3kA== dependencies: - "@types/react" "*" + esbuild "^0.21.3" + postcss "^8.4.41" + rollup "^4.13.0" + optionalDependencies: + fsevents "~2.3.3" -"@types/react-redux@^6.0.10": - version "6.0.10" - resolved "https://registry.yarnpkg.com/@types/react-redux/-/react-redux-6.0.10.tgz#80a3003a7d50112c65692a8b41752f623217a17c" - integrity sha512-+0Qfks+ODOtOpRB99E7W/w+IO2Nz4II19+sYErtlix/b3ok85SCgDcQzXUeH0z0VDvkKdKPPB2DCSls4jpQ/OA== - dependencies: - "@types/react" "*" - redux "^4.0.0" - -"@types/react@*", "@types/react@^16.7.10": - version "16.7.10" - resolved "https://registry.yarnpkg.com/@types/react/-/react-16.7.10.tgz#a0ebd3af6632d6997506f6d1aac67fed8d0851b0" - integrity sha512-8EFSjCFLUA7JJQ6lJ9+9/99urIrdHACwH8GqPlYAPyIjxOkz2snkttOzItwUwXgqc2xg+r/IYW8M1J8WXax7xg== - dependencies: - "@types/prop-types" "*" - csstype "^2.2.0" - -"@types/redux@^3.6.0": - version "3.6.0" - resolved "https://registry.yarnpkg.com/@types/redux/-/redux-3.6.0.tgz#f1ebe1e5411518072e4fdfca5c76e16e74c1399a" - integrity sha1-8evh5UEVGAcuT9/KXHbhbnTBOZo= - dependencies: - redux "*" - -"@types/styled-components@^4.1.2": - version "4.1.2" - resolved "https://registry.yarnpkg.com/@types/styled-components/-/styled-components-4.1.2.tgz#3219dd745cc2638ade5b2f6c0d771a32fdfc855f" - integrity sha512-Mi2E14EAd3tOhM2C2nJeracSI0u0EqCaMvtywsfuPnOSUeM3dIhc4mFT5s2ByKN7mV140EJ1AoCMeJq/txpsaQ== - dependencies: - "@types/node" "*" - "@types/react" "*" - csstype "^2.2.0" - -"@types/tapable@1.0.2": - version "1.0.2" - resolved "https://registry.yarnpkg.com/@types/tapable/-/tapable-1.0.2.tgz#e13182e1b69871a422d7863e11a4a6f5b814a4bd" - integrity sha512-42zEJkBpNfMEAvWR5WlwtTH22oDzcMjFsL9gDGExwF8X8WvAiw7Vwop7hPw03QT8TKfec83LwbHj6SvpqM4ELQ== - -"@webassemblyjs/ast@1.7.6": - version "1.7.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.7.6.tgz#3ef8c45b3e5e943a153a05281317474fef63e21e" - integrity sha512-8nkZS48EVsMUU0v6F1LCIOw4RYWLm2plMtbhFTjNgeXmsTNLuU3xTRtnljt9BFQB+iPbLRobkNrCWftWnNC7wQ== - dependencies: - "@webassemblyjs/helper-module-context" "1.7.6" - "@webassemblyjs/helper-wasm-bytecode" "1.7.6" - "@webassemblyjs/wast-parser" "1.7.6" - mamacro "^0.0.3" - -"@webassemblyjs/floating-point-hex-parser@1.7.6": - version "1.7.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.7.6.tgz#7cb37d51a05c3fe09b464ae7e711d1ab3837801f" - integrity sha512-VBOZvaOyBSkPZdIt5VBMg3vPWxouuM13dPXGWI1cBh3oFLNcFJ8s9YA7S9l4mPI7+Q950QqOmqj06oa83hNWBA== - -"@webassemblyjs/helper-api-error@1.7.6": - version "1.7.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-api-error/-/helper-api-error-1.7.6.tgz#99b7e30e66f550a2638299a109dda84a622070ef" - integrity sha512-SCzhcQWHXfrfMSKcj8zHg1/kL9kb3aa5TN4plc/EREOs5Xop0ci5bdVBApbk2yfVi8aL+Ly4Qpp3/TRAUInjrg== - -"@webassemblyjs/helper-buffer@1.7.6": - version "1.7.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.7.6.tgz#ba0648be12bbe560c25c997e175c2018df39ca3e" - integrity sha512-1/gW5NaGsEOZ02fjnFiU8/OEEXU1uVbv2um0pQ9YVL3IHSkyk6xOwokzyqqO1qDZQUAllb+V8irtClPWntbVqw== - -"@webassemblyjs/helper-code-frame@1.7.6": - version "1.7.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.7.6.tgz#5a94d21b0057b69a7403fca0c253c3aaca95b1a5" - integrity sha512-+suMJOkSn9+vEvDvgyWyrJo5vJsWSDXZmJAjtoUq4zS4eqHyXImpktvHOZwXp1XQjO5H+YQwsBgqTQEc0J/5zg== - dependencies: - "@webassemblyjs/wast-printer" "1.7.6" - -"@webassemblyjs/helper-fsm@1.7.6": - version "1.7.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-fsm/-/helper-fsm-1.7.6.tgz#ae1741c6f6121213c7a0b587fb964fac492d3e49" - integrity sha512-HCS6KN3wgxUihGBW7WFzEC/o8Eyvk0d56uazusnxXthDPnkWiMv+kGi9xXswL2cvfYfeK5yiM17z2K5BVlwypw== - -"@webassemblyjs/helper-module-context@1.7.6": - version "1.7.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-module-context/-/helper-module-context-1.7.6.tgz#116d19a51a6cebc8900ad53ca34ff8269c668c23" - integrity sha512-e8/6GbY7OjLM+6OsN7f2krC2qYVNaSr0B0oe4lWdmq5sL++8dYDD1TFbD1TdAdWMRTYNr/Qq7ovXWzia2EbSjw== - dependencies: - mamacro "^0.0.3" - -"@webassemblyjs/helper-wasm-bytecode@1.7.6": - version "1.7.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.7.6.tgz#98e515eaee611aa6834eb5f6a7f8f5b29fefb6f1" - integrity sha512-PzYFCb7RjjSdAOljyvLWVqd6adAOabJW+8yRT+NWhXuf1nNZWH+igFZCUK9k7Cx7CsBbzIfXjJc7u56zZgFj9Q== - -"@webassemblyjs/helper-wasm-section@1.7.6": - version "1.7.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.7.6.tgz#783835867bdd686df7a95377ab64f51a275e8333" - integrity sha512-3GS628ppDPSuwcYlQ7cDCGr4W2n9c4hLzvnRKeuz+lGsJSmc/ADVoYpm1ts2vlB1tGHkjtQMni+yu8mHoMlKlA== - dependencies: - "@webassemblyjs/ast" "1.7.6" - "@webassemblyjs/helper-buffer" "1.7.6" - "@webassemblyjs/helper-wasm-bytecode" "1.7.6" - "@webassemblyjs/wasm-gen" "1.7.6" - -"@webassemblyjs/ieee754@1.7.6": - version "1.7.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/ieee754/-/ieee754-1.7.6.tgz#c34fc058f2f831fae0632a8bb9803cf2d3462eb1" - integrity sha512-V4cIp0ruyw+hawUHwQLn6o2mFEw4t50tk530oKsYXQhEzKR+xNGDxs/SFFuyTO7X3NzEu4usA3w5jzhl2RYyzQ== - dependencies: - "@xtuc/ieee754" "^1.2.0" - -"@webassemblyjs/leb128@1.7.6": - version "1.7.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/leb128/-/leb128-1.7.6.tgz#197f75376a29f6ed6ace15898a310d871d92f03b" - integrity sha512-ojdlG8WpM394lBow4ncTGJoIVZ4aAtNOWHhfAM7m7zprmkVcKK+2kK5YJ9Bmj6/ketTtOn7wGSHCtMt+LzqgYQ== - dependencies: - "@xtuc/long" "4.2.1" - -"@webassemblyjs/utf8@1.7.6": - version "1.7.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/utf8/-/utf8-1.7.6.tgz#eb62c66f906af2be70de0302e29055d25188797d" - integrity sha512-oId+tLxQ+AeDC34ELRYNSqJRaScB0TClUU6KQfpB8rNT6oelYlz8axsPhf6yPTg7PBJ/Z5WcXmUYiHEWgbbHJw== - -"@webassemblyjs/wasm-edit@1.7.6": - version "1.7.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.7.6.tgz#fa41929160cd7d676d4c28ecef420eed5b3733c5" - integrity sha512-pTNjLO3o41v/Vz9VFLl+I3YLImpCSpodFW77pNoH4agn5I6GgSxXHXtvWDTvYJFty0jSeXZWLEmbaSIRUDlekg== - dependencies: - "@webassemblyjs/ast" "1.7.6" - "@webassemblyjs/helper-buffer" "1.7.6" - "@webassemblyjs/helper-wasm-bytecode" "1.7.6" - "@webassemblyjs/helper-wasm-section" "1.7.6" - "@webassemblyjs/wasm-gen" "1.7.6" - "@webassemblyjs/wasm-opt" "1.7.6" - "@webassemblyjs/wasm-parser" "1.7.6" - "@webassemblyjs/wast-printer" "1.7.6" - -"@webassemblyjs/wasm-gen@1.7.6": - version "1.7.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-gen/-/wasm-gen-1.7.6.tgz#695ac38861ab3d72bf763c8c75e5f087ffabc322" - integrity sha512-mQvFJVumtmRKEUXMohwn8nSrtjJJl6oXwF3FotC5t6e2hlKMh8sIaW03Sck2MDzw9xPogZD7tdP5kjPlbH9EcQ== - dependencies: - "@webassemblyjs/ast" "1.7.6" - "@webassemblyjs/helper-wasm-bytecode" "1.7.6" - "@webassemblyjs/ieee754" "1.7.6" - "@webassemblyjs/leb128" "1.7.6" - "@webassemblyjs/utf8" "1.7.6" - -"@webassemblyjs/wasm-opt@1.7.6": - version "1.7.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.7.6.tgz#fbafa78e27e1a75ab759a4b658ff3d50b4636c21" - integrity sha512-go44K90fSIsDwRgtHhX14VtbdDPdK2sZQtZqUcMRvTojdozj5tLI0VVJAzLCfz51NOkFXezPeVTAYFqrZ6rI8Q== - dependencies: - "@webassemblyjs/ast" "1.7.6" - "@webassemblyjs/helper-buffer" "1.7.6" - "@webassemblyjs/wasm-gen" "1.7.6" - "@webassemblyjs/wasm-parser" "1.7.6" - -"@webassemblyjs/wasm-parser@1.7.6": - version "1.7.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.7.6.tgz#84eafeeff405ad6f4c4b5777d6a28ae54eed51fe" - integrity sha512-t1T6TfwNY85pDA/HWPA8kB9xA4sp9ajlRg5W7EKikqrynTyFo+/qDzIpvdkOkOGjlS6d4n4SX59SPuIayR22Yg== - dependencies: - "@webassemblyjs/ast" "1.7.6" - "@webassemblyjs/helper-api-error" "1.7.6" - "@webassemblyjs/helper-wasm-bytecode" "1.7.6" - "@webassemblyjs/ieee754" "1.7.6" - "@webassemblyjs/leb128" "1.7.6" - "@webassemblyjs/utf8" "1.7.6" - -"@webassemblyjs/wast-parser@1.7.6": - version "1.7.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-parser/-/wast-parser-1.7.6.tgz#ca4d20b1516e017c91981773bd7e819d6bd9c6a7" - integrity sha512-1MaWTErN0ziOsNUlLdvwS+NS1QWuI/kgJaAGAMHX8+fMJFgOJDmN/xsG4h/A1Gtf/tz5VyXQciaqHZqp2q0vfg== - dependencies: - "@webassemblyjs/ast" "1.7.6" - "@webassemblyjs/floating-point-hex-parser" "1.7.6" - "@webassemblyjs/helper-api-error" "1.7.6" - "@webassemblyjs/helper-code-frame" "1.7.6" - "@webassemblyjs/helper-fsm" "1.7.6" - "@xtuc/long" "4.2.1" - mamacro "^0.0.3" - -"@webassemblyjs/wast-printer@1.7.6": - version "1.7.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-printer/-/wast-printer-1.7.6.tgz#a6002c526ac5fa230fe2c6d2f1bdbf4aead43a5e" - integrity sha512-vHdHSK1tOetvDcl1IV1OdDeGNe/NDDQ+KzuZHMtqTVP1xO/tZ/IKNpj5BaGk1OYFdsDWQqb31PIwdEyPntOWRQ== - dependencies: - "@webassemblyjs/ast" "1.7.6" - "@webassemblyjs/wast-parser" "1.7.6" - "@xtuc/long" "4.2.1" - -"@xtuc/ieee754@^1.2.0": - version "1.2.0" - resolved "https://registry.yarnpkg.com/@xtuc/ieee754/-/ieee754-1.2.0.tgz#eef014a3145ae477a1cbc00cd1e552336dceb790" - integrity sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA== - -"@xtuc/long@4.2.1": - version "4.2.1" - resolved "https://registry.yarnpkg.com/@xtuc/long/-/long-4.2.1.tgz#5c85d662f76fa1d34575766c5dcd6615abcd30d8" - integrity sha512-FZdkNBDqBRHKQ2MEbSC17xnPFOhZxeJ2YGSfr2BKf3sujG49Qe3bB+rGCwQfIaA7WHnGeGkSijX4FuBCdrzW/g== - -abab@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/abab/-/abab-2.0.0.tgz#aba0ab4c5eee2d4c79d3487d85450fb2376ebb0f" - integrity sha512-sY5AXXVZv4Y1VACTtR11UJCPHHudgY5i26Qj5TypE6DKlIApbwb5uqhXcJ5UUGbvZNRh7EeIoW+LrJumBsKp7w== - -abbrev@1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" - integrity sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q== - -accepts@~1.3.4, accepts@~1.3.5: - version "1.3.5" - resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.5.tgz#eb777df6011723a3b14e8a72c0805c8e86746bd2" - integrity sha1-63d99gEXI6OxTopywIBcjoZ0a9I= - dependencies: - mime-types "~2.1.18" - negotiator "0.6.1" - -acorn-dynamic-import@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/acorn-dynamic-import/-/acorn-dynamic-import-3.0.0.tgz#901ceee4c7faaef7e07ad2a47e890675da50a278" - integrity sha512-zVWV8Z8lislJoOKKqdNMOB+s6+XV5WERty8MnKBeFgwA+19XJjJHs2RP5dzM57FftIs+jQnRToLiWazKr6sSWg== - dependencies: - acorn "^5.0.0" - -acorn-globals@^4.1.0, acorn-globals@^4.3.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/acorn-globals/-/acorn-globals-4.3.0.tgz#e3b6f8da3c1552a95ae627571f7dd6923bb54103" - integrity sha512-hMtHj3s5RnuhvHPowpBYvJVj3rAar82JiDQHvGs1zO0l10ocX/xEdBShNHTJaboucJUsScghp74pH3s7EnHHQw== - dependencies: - acorn "^6.0.1" - acorn-walk "^6.0.1" - -acorn-jsx@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.0.0.tgz#958584ddb60990c02c97c1bd9d521fce433bb101" - integrity sha512-XkB50fn0MURDyww9+UYL3c1yLbOBz0ZFvrdYlGB8l+Ije1oSC75qAqrzSPjYQbdnQUzhlUGNKuesryAv0gxZOg== - -acorn-walk@^6.0.1: - version "6.1.0" - resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-6.1.0.tgz#c957f4a1460da46af4a0388ce28b4c99355b0cbc" - integrity sha512-ugTb7Lq7u4GfWSqqpwE0bGyoBZNMTok/zDBXxfEG0QM50jNlGhIWjRC1pPN7bvV1anhF+bs+/gNcRw+o55Evbg== - -acorn@^5.0.0, acorn@^5.5.3, acorn@^5.6.2: - version "5.7.3" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.7.3.tgz#67aa231bf8812974b85235a96771eb6bd07ea279" - integrity sha512-T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw== - -acorn@^6.0.1, acorn@^6.0.2: - version "6.0.2" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.0.2.tgz#6a459041c320ab17592c6317abbfdf4bbaa98ca4" - integrity sha512-GXmKIvbrN3TV7aVqAzVFaMW8F8wzVX7voEBRO3bDA64+EX37YSayggRJP5Xig6HYHBkWKpFg9W5gg6orklubhg== - -address@1.0.3, address@^1.0.1: - version "1.0.3" - resolved "https://registry.yarnpkg.com/address/-/address-1.0.3.tgz#b5f50631f8d6cec8bd20c963963afb55e06cbce9" - integrity sha512-z55ocwKBRLryBs394Sm3ushTtBeg6VAeuku7utSoSnsJKvKcnXFIyC6vh27n3rXyxSgkJBBCAvyOn7gSUcTYjg== - -ajv-errors@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/ajv-errors/-/ajv-errors-1.0.0.tgz#ecf021fa108fd17dfb5e6b383f2dd233e31ffc59" - integrity sha1-7PAh+hCP0X37Xms4Py3SM+Mf/Fk= - -ajv-keywords@^3.0.0, ajv-keywords@^3.1.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.2.0.tgz#e86b819c602cf8821ad637413698f1dec021847a" - integrity sha1-6GuBnGAs+IIa1jdBNpjx3sAhhHo= - -ajv@^5.3.0: - version "5.5.2" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-5.5.2.tgz#73b5eeca3fab653e3d3f9422b341ad42205dc965" - integrity sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU= - dependencies: - co "^4.6.0" - fast-deep-equal "^1.0.0" - fast-json-stable-stringify "^2.0.0" - json-schema-traverse "^0.3.0" - -ajv@^6.0.1, ajv@^6.1.0, ajv@^6.5.3: - version "6.5.4" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.5.4.tgz#247d5274110db653706b550fcc2b797ca28cfc59" - integrity sha512-4Wyjt8+t6YszqaXnLDfMmG/8AlO5Zbcsy3ATHncCzjW/NoPzAId8AK6749Ybjmdt+kUY1gP60fCu46oDxPv/mg== - dependencies: - fast-deep-equal "^2.0.1" - fast-json-stable-stringify "^2.0.0" - json-schema-traverse "^0.4.1" - uri-js "^4.2.2" - -alphanum-sort@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/alphanum-sort/-/alphanum-sort-1.0.2.tgz#97a1119649b211ad33691d9f9f486a8ec9fbe0a3" - integrity sha1-l6ERlkmyEa0zaR2fn0hqjsn74KM= - -ansi-colors@^3.0.0: - version "3.2.1" - resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-3.2.1.tgz#9638047e4213f3428a11944a7d4b31cba0a3ff95" - integrity sha512-Xt+zb6nqgvV9SWAVp0EG3lRsHcbq5DDgqjPPz6pwgtj6RKz65zGXMNa82oJfOSBA/to6GmRP7Dr+6o+kbApTzQ== - -ansi-escapes@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-3.1.0.tgz#f73207bb81207d75fd6c83f125af26eea378ca30" - integrity sha512-UgAb8H9D41AQnu/PbWlCofQVcnV4Gs2bBJi9eZPxfU/hgglFh3SMDMENRIqdr7H6XFnXdoknctFByVsCOotTVw== - -ansi-html@0.0.7: - version "0.0.7" - resolved "https://registry.yarnpkg.com/ansi-html/-/ansi-html-0.0.7.tgz#813584021962a9e9e6fd039f940d12f56ca7859e" - integrity sha1-gTWEAhliqenm/QOflA0S9WynhZ4= - -ansi-regex@^2.0.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" - integrity sha1-w7M6te42DYbg5ijwRorn7yfWVN8= - -ansi-regex@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.0.tgz#ed0317c322064f79466c02966bddb605ab37d998" - integrity sha1-7QMXwyIGT3lGbAKWa922Bas32Zg= - -ansi-styles@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" - integrity sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4= - -ansi-styles@^3.2.0, ansi-styles@^3.2.1: - version "3.2.1" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" - integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== - dependencies: - color-convert "^1.9.0" - -anymatch@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-2.0.0.tgz#bcb24b4f37934d9aa7ac17b4adaf89e7c76ef2eb" - integrity sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw== - dependencies: - micromatch "^3.1.4" - normalize-path "^2.1.1" - -append-transform@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/append-transform/-/append-transform-0.4.0.tgz#d76ebf8ca94d276e247a36bad44a4b74ab611991" - integrity sha1-126/jKlNJ24keja61EpLdKthGZE= - dependencies: - default-require-extensions "^1.0.0" - -aproba@^1.0.3, aproba@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a" - integrity sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw== - -are-we-there-yet@~1.1.2: - version "1.1.5" - resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz#4b35c2944f062a8bfcda66410760350fe9ddfc21" - integrity sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w== - dependencies: - delegates "^1.0.0" - readable-stream "^2.0.6" - -argparse@^1.0.7: - version "1.0.10" - resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" - integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg== - dependencies: - sprintf-js "~1.0.2" - -aria-query@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/aria-query/-/aria-query-3.0.0.tgz#65b3fcc1ca1155a8c9ae64d6eee297f15d5133cc" - integrity sha1-ZbP8wcoRVajJrmTW7uKX8V1RM8w= - dependencies: - ast-types-flow "0.0.7" - commander "^2.11.0" - -arr-diff@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-2.0.0.tgz#8f3b827f955a8bd669697e4a4256ac3ceae356cf" - integrity sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8= - dependencies: - arr-flatten "^1.0.1" - -arr-diff@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-4.0.0.tgz#d6461074febfec71e7e15235761a329a5dc7c520" - integrity sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA= - -arr-flatten@^1.0.1, arr-flatten@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1" - integrity sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg== - -arr-union@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/arr-union/-/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4" - integrity sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ= - -array-equal@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/array-equal/-/array-equal-1.0.0.tgz#8c2a5ef2472fd9ea742b04c77a75093ba2757c93" - integrity sha1-jCpe8kcv2ep0KwTHenUJO6J1fJM= - -array-filter@~0.0.0: - version "0.0.1" - resolved "https://registry.yarnpkg.com/array-filter/-/array-filter-0.0.1.tgz#7da8cf2e26628ed732803581fd21f67cacd2eeec" - integrity sha1-fajPLiZijtcygDWB/SH2fKzS7uw= - -array-flatten@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2" - integrity sha1-ml9pkFGx5wczKPKgCJaLZOopVdI= - -array-flatten@^2.1.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-2.1.1.tgz#426bb9da84090c1838d812c8150af20a8331e296" - integrity sha1-Qmu52oQJDBg42BLIFQryCoMx4pY= - -array-includes@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.0.3.tgz#184b48f62d92d7452bb31b323165c7f8bd02266d" - integrity sha1-GEtI9i2S10UrsxsyMWXH+L0CJm0= - dependencies: - define-properties "^1.1.2" - es-abstract "^1.7.0" - -array-map@~0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/array-map/-/array-map-0.0.0.tgz#88a2bab73d1cf7bcd5c1b118a003f66f665fa662" - integrity sha1-iKK6tz0c97zVwbEYoAP2b2ZfpmI= - -array-reduce@~0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/array-reduce/-/array-reduce-0.0.0.tgz#173899d3ffd1c7d9383e4479525dbe278cab5f2b" - integrity sha1-FziZ0//Rx9k4PkR5Ul2+J4yrXys= - -array-union@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/array-union/-/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39" - integrity sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk= - dependencies: - array-uniq "^1.0.1" - -array-uniq@^1.0.1: - version "1.0.3" - resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6" - integrity sha1-r2rId6Jcx/dOBYiUdThY39sk/bY= - -array-unique@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.2.1.tgz#a1d97ccafcbc2625cc70fadceb36a50c58b01a53" - integrity sha1-odl8yvy8JiXMcPrc6zalDFiwGlM= - -array-unique@^0.3.2: - version "0.3.2" - resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428" - integrity sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg= - -arrify@^1.0.0, arrify@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" - integrity sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0= - -asap@~2.0.3, asap@~2.0.6: - version "2.0.6" - resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46" - integrity sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY= - -asn1.js@^4.0.0: - version "4.10.1" - resolved "https://registry.yarnpkg.com/asn1.js/-/asn1.js-4.10.1.tgz#b9c2bf5805f1e64aadeed6df3a2bfafb5a73f5a0" - integrity sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw== - dependencies: - bn.js "^4.0.0" - inherits "^2.0.1" - minimalistic-assert "^1.0.0" - -asn1@~0.2.3: - version "0.2.4" - resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.4.tgz#8d2475dfab553bb33e77b54e59e880bb8ce23136" - integrity sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg== - dependencies: - safer-buffer "~2.1.0" - -assert-plus@1.0.0, assert-plus@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525" - integrity sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU= - -assert@^1.1.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/assert/-/assert-1.4.1.tgz#99912d591836b5a6f5b345c0f07eefc08fc65d91" - integrity sha1-mZEtWRg2tab1s0XA8H7vwI/GXZE= - dependencies: - util "0.10.3" - -assign-symbols@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367" - integrity sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c= - -ast-types-flow@0.0.7, ast-types-flow@^0.0.7: - version "0.0.7" - resolved "https://registry.yarnpkg.com/ast-types-flow/-/ast-types-flow-0.0.7.tgz#f70b735c6bca1a5c9c22d982c3e39e7feba3bdad" - integrity sha1-9wtzXGvKGlycItmCw+Oef+ujva0= - -astral-regex@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-1.0.0.tgz#6c8c3fb827dd43ee3918f27b82782ab7658a6fd9" - integrity sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg== - -async-each@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.1.tgz#19d386a1d9edc6e7c1c85d388aedbcc56d33602d" - integrity sha1-GdOGodntxufByF04iu28xW0zYC0= - -async-limiter@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/async-limiter/-/async-limiter-1.0.0.tgz#78faed8c3d074ab81f22b4e985d79e8738f720f8" - integrity sha512-jp/uFnooOiO+L211eZOoSyzpOITMXx1rBITauYykG3BRYPu8h0UcxsPNB04RR5vo4Tyz3+ay17tR6JVf9qzYWg== - -async@^1.5.2: - version "1.5.2" - resolved "https://registry.yarnpkg.com/async/-/async-1.5.2.tgz#ec6a61ae56480c0c3cb241c95618e20892f9672a" - integrity sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo= - -async@^2.1.4, async@^2.5.0, async@^2.6.1: - version "2.6.1" - resolved "https://registry.yarnpkg.com/async/-/async-2.6.1.tgz#b245a23ca71930044ec53fa46aa00a3e87c6a610" - integrity sha512-fNEiL2+AZt6AlAw/29Cr0UDe4sRAHCpEHh54WMz+Bb7QfNcFw4h3loofyJpLeQs4Yx7yuqu/2dLgM5hKOs6HlQ== - dependencies: - lodash "^4.17.10" - -asynckit@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" - integrity sha1-x57Zf380y48robyXkLzDZkdLS3k= - -atob@^2.1.1: - version "2.1.2" - resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9" - integrity sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg== - -autoprefixer@^9.1.5: - version "9.3.1" - resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-9.3.1.tgz#71b622174de2b783d5fd99f9ad617b7a3c78443e" - integrity sha512-DY9gOh8z3tnCbJ13JIWaeQsoYncTGdsrgCceBaQSIL4nvdrLxgbRSBPevg2XbX7u4QCSfLheSJEEIUUSlkbx6Q== - dependencies: - browserslist "^4.3.3" - caniuse-lite "^1.0.30000898" - normalize-range "^0.1.2" - num2fraction "^1.2.2" - postcss "^7.0.5" - postcss-value-parser "^3.3.1" - -aws-sign2@~0.7.0: - version "0.7.0" - resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8" - integrity sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg= - -aws4@^1.8.0: - version "1.8.0" - resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.8.0.tgz#f0e003d9ca9e7f59c7a508945d7b2ef9a04a542f" - integrity sha512-ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ== - -axobject-query@^2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/axobject-query/-/axobject-query-2.0.2.tgz#ea187abe5b9002b377f925d8bf7d1c561adf38f9" - integrity sha512-MCeek8ZH7hKyO1rWUbKNQBbl4l2eY0ntk7OGi+q0RlafrCnfPxC06WZA+uebCfmYp4mNU9jRBP1AhGyf8+W3ww== - dependencies: - ast-types-flow "0.0.7" - -babel-code-frame@^6.22.0, babel-code-frame@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.26.0.tgz#63fd43f7dc1e3bb7ce35947db8fe369a3f58c74b" - integrity sha1-Y/1D99weO7fONZR9uP42mj9Yx0s= - dependencies: - chalk "^1.1.3" - esutils "^2.0.2" - js-tokens "^3.0.2" - -babel-core@7.0.0-bridge.0: - version "7.0.0-bridge.0" - resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-7.0.0-bridge.0.tgz#95a492ddd90f9b4e9a4a1da14eb335b87b634ece" - integrity sha512-poPX9mZH/5CSanm50Q+1toVci6pv5KSRv/5TWCwtzQS5XEwn40BcCrgIeMFWP9CKKIniKXNxoIOnOq4VVlGXhg== - -babel-core@^6.0.0, babel-core@^6.26.0: - version "6.26.3" - resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-6.26.3.tgz#b2e2f09e342d0f0c88e2f02e067794125e75c207" - integrity sha512-6jyFLuDmeidKmUEb3NM+/yawG0M2bDZ9Z1qbZP59cyHLz8kYGKYwpJP0UwUKKUiTRNvxfLesJnTedqczP7cTDA== - dependencies: - babel-code-frame "^6.26.0" - babel-generator "^6.26.0" - babel-helpers "^6.24.1" - babel-messages "^6.23.0" - babel-register "^6.26.0" - babel-runtime "^6.26.0" - babel-template "^6.26.0" - babel-traverse "^6.26.0" - babel-types "^6.26.0" - babylon "^6.18.0" - convert-source-map "^1.5.1" - debug "^2.6.9" - json5 "^0.5.1" - lodash "^4.17.4" - minimatch "^3.0.4" - path-is-absolute "^1.0.1" - private "^0.1.8" - slash "^1.0.0" - source-map "^0.5.7" - -babel-eslint@9.0.0: - version "9.0.0" - resolved "https://registry.yarnpkg.com/babel-eslint/-/babel-eslint-9.0.0.tgz#7d9445f81ed9f60aff38115f838970df9f2b6220" - integrity sha512-itv1MwE3TMbY0QtNfeL7wzak1mV47Uy+n6HtSOO4Xd7rvmO+tsGQSgyOEEgo6Y2vHZKZphaoelNeSVj4vkLA1g== - dependencies: - "@babel/code-frame" "^7.0.0" - "@babel/parser" "^7.0.0" - "@babel/traverse" "^7.0.0" - "@babel/types" "^7.0.0" - eslint-scope "3.7.1" - eslint-visitor-keys "^1.0.0" - -babel-extract-comments@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/babel-extract-comments/-/babel-extract-comments-1.0.0.tgz#0a2aedf81417ed391b85e18b4614e693a0351a21" - integrity sha512-qWWzi4TlddohA91bFwgt6zO/J0X+io7Qp184Fw0m2JYRSTZnJbFR8+07KmzudHCZgOiKRCrjhylwv9Xd8gfhVQ== - dependencies: - babylon "^6.18.0" - -babel-generator@^6.18.0, babel-generator@^6.26.0: - version "6.26.1" - resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.26.1.tgz#1844408d3b8f0d35a404ea7ac180f087a601bd90" - integrity sha512-HyfwY6ApZj7BYTcJURpM5tznulaBvyio7/0d4zFOeMPUmfxkCjHocCuoLa2SAGzBI8AREcH3eP3758F672DppA== - dependencies: - babel-messages "^6.23.0" - babel-runtime "^6.26.0" - babel-types "^6.26.0" - detect-indent "^4.0.0" - jsesc "^1.3.0" - lodash "^4.17.4" - source-map "^0.5.7" - trim-right "^1.0.1" - -babel-helpers@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helpers/-/babel-helpers-6.24.1.tgz#3471de9caec388e5c850e597e58a26ddf37602b2" - integrity sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI= - dependencies: - babel-runtime "^6.22.0" - babel-template "^6.24.1" - -babel-jest@23.6.0, babel-jest@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-23.6.0.tgz#a644232366557a2240a0c083da6b25786185a2f1" - integrity sha512-lqKGG6LYXYu+DQh/slrQ8nxXQkEkhugdXsU6St7GmhVS7Ilc/22ArwqXNJrf0QaOBjZB0360qZMwXqDYQHXaew== - dependencies: - babel-plugin-istanbul "^4.1.6" - babel-preset-jest "^23.2.0" - -babel-loader@8.0.4: - version "8.0.4" - resolved "https://registry.yarnpkg.com/babel-loader/-/babel-loader-8.0.4.tgz#7bbf20cbe4560629e2e41534147692d3fecbdce6" - integrity sha512-fhBhNkUToJcW9nV46v8w87AJOwAJDz84c1CL57n3Stj73FANM/b9TbCUK4YhdOwEyZ+OxhYpdeZDNzSI29Firw== - dependencies: - find-cache-dir "^1.0.0" - loader-utils "^1.0.2" - mkdirp "^0.5.1" - util.promisify "^1.0.0" - -babel-messages@^6.23.0: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-messages/-/babel-messages-6.23.0.tgz#f3cdf4703858035b2a2951c6ec5edf6c62f2630e" - integrity sha1-8830cDhYA1sqKVHG7F7fbGLyYw4= - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-dynamic-import-node@2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.2.0.tgz#c0adfb07d95f4a4495e9aaac6ec386c4d7c2524e" - integrity sha512-fP899ELUnTaBcIzmrW7nniyqqdYWrWuJUyPWHxFa/c7r7hS6KC8FscNfLlBNIoPSc55kYMGEEKjPjJGCLbE1qA== - dependencies: - object.assign "^4.1.0" - -babel-plugin-istanbul@^4.1.6: - version "4.1.6" - resolved "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-4.1.6.tgz#36c59b2192efce81c5b378321b74175add1c9a45" - integrity sha512-PWP9FQ1AhZhS01T/4qLSKoHGY/xvkZdVBGlKM/HuxxS3+sC66HhTNR7+MpbO/so/cz/wY94MeSWJuP1hXIPfwQ== - dependencies: - babel-plugin-syntax-object-rest-spread "^6.13.0" - find-up "^2.1.0" - istanbul-lib-instrument "^1.10.1" - test-exclude "^4.2.1" - -babel-plugin-jest-hoist@^23.2.0: - version "23.2.0" - resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-23.2.0.tgz#e61fae05a1ca8801aadee57a6d66b8cefaf44167" - integrity sha1-5h+uBaHKiAGq3uV6bWa4zvr0QWc= - -babel-plugin-macros@2.4.2: - version "2.4.2" - resolved "https://registry.yarnpkg.com/babel-plugin-macros/-/babel-plugin-macros-2.4.2.tgz#21b1a2e82e2130403c5ff785cba6548e9b644b28" - integrity sha512-NBVpEWN4OQ/bHnu1fyDaAaTPAjnhXCEPqr1RwqxrU7b6tZ2hypp+zX4hlNfmVGfClD5c3Sl6Hfj5TJNF5VG5aA== - dependencies: - cosmiconfig "^5.0.5" - resolve "^1.8.1" - -babel-plugin-named-asset-import@^0.2.3: - version "0.2.3" - resolved "https://registry.yarnpkg.com/babel-plugin-named-asset-import/-/babel-plugin-named-asset-import-0.2.3.tgz#b40ed50a848e7bb0a2a7e34d990d1f9d46fe9b38" - integrity sha512-9mx2Z9M4EGbutvXxoLV7aUBCY6ps3sqLFl094FeA2tFQzQffIh0XSsmwwQRxiSfpg3rnb5x/o46qRLxS/OzFTg== - -"babel-plugin-styled-components@>= 1": - version "1.9.2" - resolved "https://registry.yarnpkg.com/babel-plugin-styled-components/-/babel-plugin-styled-components-1.9.2.tgz#0e6a6587454dcb1c9a362a8fd31fc0b075ccd260" - integrity sha512-McnheW8RkBkur/mQw7rEwQO/oUUruQ/nIIj5LIRpsVL8pzG1oo1Y53xyvAYeOfamIrl4/ta7g1G/kuTR1ekO3A== - dependencies: - "@babel/helper-annotate-as-pure" "^7.0.0" - babel-plugin-syntax-jsx "^6.18.0" - lodash "^4.17.10" - -babel-plugin-syntax-jsx@^6.18.0: - version "6.18.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz#0af32a9a6e13ca7a3fd5069e62d7b0f58d0d8946" - integrity sha1-CvMqmm4Tyno/1QaeYtew9Y0NiUY= - -babel-plugin-syntax-object-rest-spread@^6.13.0, babel-plugin-syntax-object-rest-spread@^6.8.0: - version "6.13.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz#fd6536f2bce13836ffa3a5458c4903a597bb3bf5" - integrity sha1-/WU28rzhODb/o6VFjEkDpZe7O/U= - -babel-plugin-transform-object-rest-spread@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-object-rest-spread/-/babel-plugin-transform-object-rest-spread-6.26.0.tgz#0f36692d50fef6b7e2d4b3ac1478137a963b7b06" - integrity sha1-DzZpLVD+9rfi1LOsFHgTepY7ewY= - dependencies: - babel-plugin-syntax-object-rest-spread "^6.8.0" - babel-runtime "^6.26.0" - -babel-plugin-transform-react-remove-prop-types@0.4.18: - version "0.4.18" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-react-remove-prop-types/-/babel-plugin-transform-react-remove-prop-types-0.4.18.tgz#85ff79d66047b34288c6f7cc986b8854ab384f8c" - integrity sha512-azed2nHo8vmOy7EY26KH+om5oOcWRs0r1U8wOmhwta+SBMMnmJ4H6yaBZRCcHBtMeWp9AVhvBTL/lpR1kEx+Xw== - -babel-preset-jest@^23.2.0: - version "23.2.0" - resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-23.2.0.tgz#8ec7a03a138f001a1a8fb1e8113652bf1a55da46" - integrity sha1-jsegOhOPABoaj7HoETZSvxpV2kY= - dependencies: - babel-plugin-jest-hoist "^23.2.0" - babel-plugin-syntax-object-rest-spread "^6.13.0" - -babel-preset-react-app@^6.1.0: - version "6.1.0" - resolved "https://registry.yarnpkg.com/babel-preset-react-app/-/babel-preset-react-app-6.1.0.tgz#477ae7f8557eb99ce26d179530127913b733310d" - integrity sha512-8PJ4N+acfYsjhDK4gMWkqJMVRMjDKb93D+nz7lWlNe73Jcv38FNu37i5K/dVQnFDdRYHbe1SjII+Y0mCgink9A== - dependencies: - "@babel/core" "7.1.0" - "@babel/plugin-proposal-class-properties" "7.1.0" - "@babel/plugin-proposal-decorators" "7.1.2" - "@babel/plugin-proposal-object-rest-spread" "7.0.0" - "@babel/plugin-syntax-dynamic-import" "7.0.0" - "@babel/plugin-transform-classes" "7.1.0" - "@babel/plugin-transform-destructuring" "7.0.0" - "@babel/plugin-transform-flow-strip-types" "7.0.0" - "@babel/plugin-transform-react-constant-elements" "7.0.0" - "@babel/plugin-transform-react-display-name" "7.0.0" - "@babel/plugin-transform-runtime" "7.1.0" - "@babel/preset-env" "7.1.0" - "@babel/preset-react" "7.0.0" - "@babel/preset-typescript" "7.1.0" - "@babel/runtime" "7.0.0" - babel-loader "8.0.4" - babel-plugin-dynamic-import-node "2.2.0" - babel-plugin-macros "2.4.2" - babel-plugin-transform-react-remove-prop-types "0.4.18" - -babel-register@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-register/-/babel-register-6.26.0.tgz#6ed021173e2fcb486d7acb45c6009a856f647071" - integrity sha1-btAhFz4vy0htestFxgCahW9kcHE= - dependencies: - babel-core "^6.26.0" - babel-runtime "^6.26.0" - core-js "^2.5.0" - home-or-tmp "^2.0.0" - lodash "^4.17.4" - mkdirp "^0.5.1" - source-map-support "^0.4.15" - -babel-runtime@^6.22.0, babel-runtime@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.26.0.tgz#965c7058668e82b55d7bfe04ff2337bc8b5647fe" - integrity sha1-llxwWGaOgrVde/4E/yM3vItWR/4= - dependencies: - core-js "^2.4.0" - regenerator-runtime "^0.11.0" - -babel-template@^6.16.0, babel-template@^6.24.1, babel-template@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-template/-/babel-template-6.26.0.tgz#de03e2d16396b069f46dd9fff8521fb1a0e35e02" - integrity sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI= - dependencies: - babel-runtime "^6.26.0" - babel-traverse "^6.26.0" - babel-types "^6.26.0" - babylon "^6.18.0" - lodash "^4.17.4" - -babel-traverse@^6.0.0, babel-traverse@^6.18.0, babel-traverse@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-traverse/-/babel-traverse-6.26.0.tgz#46a9cbd7edcc62c8e5c064e2d2d8d0f4035766ee" - integrity sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4= - dependencies: - babel-code-frame "^6.26.0" - babel-messages "^6.23.0" - babel-runtime "^6.26.0" - babel-types "^6.26.0" - babylon "^6.18.0" - debug "^2.6.8" - globals "^9.18.0" - invariant "^2.2.2" - lodash "^4.17.4" - -babel-types@^6.0.0, babel-types@^6.18.0, babel-types@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-6.26.0.tgz#a3b073f94ab49eb6fa55cd65227a334380632497" - integrity sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc= - dependencies: - babel-runtime "^6.26.0" - esutils "^2.0.2" - lodash "^4.17.4" - to-fast-properties "^1.0.3" - -babylon@^6.18.0: - version "6.18.0" - resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.18.0.tgz#af2f3b88fa6f5c1e4c634d1a0f8eac4f55b395e3" - integrity sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ== - -balanced-match@^1.0.0: - version "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: - version "1.3.0" - resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.3.0.tgz#cab1e6118f051095e58b5281aea8c1cd22bfc0e3" - integrity sha512-ccav/yGvoa80BQDljCxsmmQ3Xvx60/UpBIij5QN21W3wBi/hhIC9OoO+KLpu9IJTS9j4DRVJ3aDDF9cMSoa2lw== - -base@^0.11.1: - version "0.11.2" - resolved "https://registry.yarnpkg.com/base/-/base-0.11.2.tgz#7bde5ced145b6d551a90db87f83c558b4eb48a8f" - integrity sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg== - dependencies: - cache-base "^1.0.1" - class-utils "^0.3.5" - component-emitter "^1.2.1" - define-property "^1.0.0" - isobject "^3.0.1" - mixin-deep "^1.2.0" - pascalcase "^0.1.1" - -batch@0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/batch/-/batch-0.6.1.tgz#dc34314f4e679318093fc760272525f94bf25c16" - integrity sha1-3DQxT05nkxgJP8dgJyUl+UvyXBY= - -bcrypt-pbkdf@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz#a4301d389b6a43f9b67ff3ca11a3f6637e360e9e" - integrity sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4= - dependencies: - tweetnacl "^0.14.3" - -bfj@6.1.1: - version "6.1.1" - resolved "https://registry.yarnpkg.com/bfj/-/bfj-6.1.1.tgz#05a3b7784fbd72cfa3c22e56002ef99336516c48" - integrity sha512-+GUNvzHR4nRyGybQc2WpNJL4MJazMuvf92ueIyA0bIkPRwhhQu3IfZQ2PSoVPpCBJfmoSdOxu5rnotfFLlvYRQ== - dependencies: - bluebird "^3.5.1" - check-types "^7.3.0" - hoopy "^0.1.2" - tryer "^1.0.0" - -big.js@^3.1.3: - version "3.2.0" - resolved "https://registry.yarnpkg.com/big.js/-/big.js-3.2.0.tgz#a5fc298b81b9e0dca2e458824784b65c52ba588e" - integrity sha512-+hN/Zh2D08Mx65pZ/4g5bsmNiZUuChDiQfTUQ7qJr4/kuopCr88xZsAXv6mBoZEsUI4OuGHlX59qE94K2mMW8Q== - -binary-extensions@^1.0.0: - version "1.12.0" - resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.12.0.tgz#c2d780f53d45bba8317a8902d4ceeaf3a6385b14" - integrity sha512-DYWGk01lDcxeS/K9IHPGWfT8PsJmbXRtRd2Sx72Tnb8pcYZQFF1oSDb8hJtS1vhp212q1Rzi5dUf9+nq0o9UIg== - -bluebird@^3.5.1: - version "3.5.2" - resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.2.tgz#1be0908e054a751754549c270489c1505d4ab15a" - integrity sha512-dhHTWMI7kMx5whMQntl7Vr9C6BvV10lFXDAasnqnrMYhXVCzzk6IO9Fo2L75jXHT07WrOngL1WDXOp+yYS91Yg== - -bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.1.1, bn.js@^4.4.0: - version "4.11.8" - resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.11.8.tgz#2cde09eb5ee341f484746bb0309b3253b1b1442f" - integrity sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA== - -body-parser@1.18.3: - version "1.18.3" - resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.18.3.tgz#5b292198ffdd553b3a0f20ded0592b956955c8b4" - integrity sha1-WykhmP/dVTs6DyDe0FkrlWlVyLQ= - dependencies: - bytes "3.0.0" - content-type "~1.0.4" - debug "2.6.9" - depd "~1.1.2" - http-errors "~1.6.3" - iconv-lite "0.4.23" - on-finished "~2.3.0" - qs "6.5.2" - raw-body "2.3.3" - type-is "~1.6.16" - -bonjour@^3.5.0: - version "3.5.0" - resolved "https://registry.yarnpkg.com/bonjour/-/bonjour-3.5.0.tgz#8e890a183d8ee9a2393b3844c691a42bcf7bc9f5" - integrity sha1-jokKGD2O6aI5OzhExpGkK897yfU= - dependencies: - array-flatten "^2.1.0" - deep-equal "^1.0.1" - dns-equal "^1.0.0" - dns-txt "^2.0.2" - multicast-dns "^6.0.1" - multicast-dns-service-types "^1.1.0" - -boolbase@^1.0.0, boolbase@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e" - integrity sha1-aN/1++YMUes3cl6p4+0xDcwed24= - -brace-expansion@^1.1.7: - version "1.1.11" - resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" - integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== - dependencies: - balanced-match "^1.0.0" - concat-map "0.0.1" - -braces@^1.8.2: - version "1.8.5" - resolved "https://registry.yarnpkg.com/braces/-/braces-1.8.5.tgz#ba77962e12dff969d6b76711e914b737857bf6a7" - integrity sha1-uneWLhLf+WnWt2cR6RS3N4V79qc= - dependencies: - expand-range "^1.8.1" - preserve "^0.2.0" - repeat-element "^1.1.2" - -braces@^2.3.0, braces@^2.3.1: - version "2.3.2" - resolved "https://registry.yarnpkg.com/braces/-/braces-2.3.2.tgz#5979fd3f14cd531565e5fa2df1abfff1dfaee729" - integrity sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w== - dependencies: - arr-flatten "^1.1.0" - array-unique "^0.3.2" - extend-shallow "^2.0.1" - fill-range "^4.0.0" - isobject "^3.0.1" - repeat-element "^1.1.2" - snapdragon "^0.8.1" - snapdragon-node "^2.0.1" - split-string "^3.0.2" - to-regex "^3.0.1" - -brorand@^1.0.1: - version "1.1.0" - resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f" - integrity sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8= - -browser-process-hrtime@^0.1.2: - version "0.1.3" - resolved "https://registry.yarnpkg.com/browser-process-hrtime/-/browser-process-hrtime-0.1.3.tgz#616f00faef1df7ec1b5bf9cfe2bdc3170f26c7b4" - integrity sha512-bRFnI4NnjO6cnyLmOV/7PVoDEMJChlcfN0z4s1YMBY989/SvlfMI1lgCnkFUs53e9gQF+w7qu7XdllSTiSl8Aw== - -browser-resolve@^1.11.3: - version "1.11.3" - resolved "https://registry.yarnpkg.com/browser-resolve/-/browser-resolve-1.11.3.tgz#9b7cbb3d0f510e4cb86bdbd796124d28b5890af6" - integrity sha512-exDi1BYWB/6raKHmDTCicQfTkqwN5fioMFV4j8BsfMU4R2DK/QfZfK7kOVkmWCNANf0snkBzqGqAJBao9gZMdQ== - dependencies: - resolve "1.1.7" - -browserify-aes@^1.0.0, browserify-aes@^1.0.4: - version "1.2.0" - resolved "https://registry.yarnpkg.com/browserify-aes/-/browserify-aes-1.2.0.tgz#326734642f403dabc3003209853bb70ad428ef48" - integrity sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA== - dependencies: - buffer-xor "^1.0.3" - cipher-base "^1.0.0" - create-hash "^1.1.0" - evp_bytestokey "^1.0.3" - inherits "^2.0.1" - safe-buffer "^5.0.1" - -browserify-cipher@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/browserify-cipher/-/browserify-cipher-1.0.1.tgz#8d6474c1b870bfdabcd3bcfcc1934a10e94f15f0" - integrity sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w== - dependencies: - browserify-aes "^1.0.4" - browserify-des "^1.0.0" - evp_bytestokey "^1.0.0" - -browserify-des@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/browserify-des/-/browserify-des-1.0.2.tgz#3af4f1f59839403572f1c66204375f7a7f703e9c" - integrity sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A== - dependencies: - cipher-base "^1.0.1" - des.js "^1.0.0" - inherits "^2.0.1" - safe-buffer "^5.1.2" - -browserify-rsa@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/browserify-rsa/-/browserify-rsa-4.0.1.tgz#21e0abfaf6f2029cf2fafb133567a701d4135524" - integrity sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ= - dependencies: - bn.js "^4.1.0" - randombytes "^2.0.1" - -browserify-sign@^4.0.0: - version "4.0.4" - resolved "https://registry.yarnpkg.com/browserify-sign/-/browserify-sign-4.0.4.tgz#aa4eb68e5d7b658baa6bf6a57e630cbd7a93d298" - integrity sha1-qk62jl17ZYuqa/alfmMMvXqT0pg= - dependencies: - bn.js "^4.1.1" - browserify-rsa "^4.0.0" - create-hash "^1.1.0" - create-hmac "^1.1.2" - elliptic "^6.0.0" - inherits "^2.0.1" - parse-asn1 "^5.0.0" - -browserify-zlib@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/browserify-zlib/-/browserify-zlib-0.2.0.tgz#2869459d9aa3be245fe8fe2ca1f46e2e7f54d73f" - integrity sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA== - dependencies: - pako "~1.0.5" - -browserslist@4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.1.1.tgz#328eb4ff1215b12df6589e9ab82f8adaa4fc8cd6" - integrity sha512-VBorw+tgpOtZ1BYhrVSVTzTt/3+vSE3eFUh0N2GCFK1HffceOaf32YS/bs6WiFhjDAblAFrx85jMy3BG9fBK2Q== - dependencies: - caniuse-lite "^1.0.30000884" - electron-to-chromium "^1.3.62" - node-releases "^1.0.0-alpha.11" - -browserslist@^4.0.0, browserslist@^4.1.0, browserslist@^4.1.1, browserslist@^4.3.3: - version "4.3.4" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.3.4.tgz#4477b737db6a1b07077275b24791e680d4300425" - integrity sha512-u5iz+ijIMUlmV8blX82VGFrB9ecnUg5qEt55CMZ/YJEhha+d8qpBfOFuutJ6F/VKRXjZoD33b6uvarpPxcl3RA== - dependencies: - caniuse-lite "^1.0.30000899" - electron-to-chromium "^1.3.82" - node-releases "^1.0.1" - -bser@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/bser/-/bser-2.0.0.tgz#9ac78d3ed5d915804fd87acb158bc797147a1719" - integrity sha1-mseNPtXZFYBP2HrLFYvHlxR6Fxk= - dependencies: - node-int64 "^0.4.0" - -buffer-from@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.1.tgz#32713bc028f75c02fdb710d7c7bcec1f2c6070ef" - integrity sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A== - -buffer-indexof@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/buffer-indexof/-/buffer-indexof-1.1.1.tgz#52fabcc6a606d1a00302802648ef68f639da268c" - integrity sha512-4/rOEg86jivtPTeOUUT61jJO1Ya1TrR/OkqCSZDyq84WJh3LuuiphBYJN+fm5xufIk4XAFcEwte/8WzC8If/1g== - -buffer-xor@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/buffer-xor/-/buffer-xor-1.0.3.tgz#26e61ed1422fb70dd42e6e36729ed51d855fe8d9" - integrity sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk= - -buffer@^4.3.0: - version "4.9.1" - resolved "https://registry.yarnpkg.com/buffer/-/buffer-4.9.1.tgz#6d1bb601b07a4efced97094132093027c95bc298" - integrity sha1-bRu2AbB6TvztlwlBMgkwJ8lbwpg= - dependencies: - base64-js "^1.0.2" - ieee754 "^1.1.4" - isarray "^1.0.0" - -builtin-modules@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-1.1.1.tgz#270f076c5a72c02f5b65a47df94c5fe3a278892f" - integrity sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8= - -builtin-status-codes@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz#85982878e21b98e1c66425e03d0174788f569ee8" - integrity sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug= - -bytes@3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.0.0.tgz#d32815404d689699f85a4ea4fa8755dd13a96048" - integrity sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg= - -cacache@^10.0.4: - version "10.0.4" - resolved "https://registry.yarnpkg.com/cacache/-/cacache-10.0.4.tgz#6452367999eff9d4188aefd9a14e9d7c6a263460" - integrity sha512-Dph0MzuH+rTQzGPNT9fAnrPmMmjKfST6trxJeK7NQuHRaVw24VzPRWTmg9MpcwOVQZO0E1FBICUlFeNaKPIfHA== - dependencies: - bluebird "^3.5.1" - chownr "^1.0.1" - glob "^7.1.2" - graceful-fs "^4.1.11" - lru-cache "^4.1.1" - mississippi "^2.0.0" - mkdirp "^0.5.1" - move-concurrently "^1.0.1" - promise-inflight "^1.0.1" - rimraf "^2.6.2" - ssri "^5.2.4" - unique-filename "^1.1.0" - y18n "^4.0.0" - -cacache@^11.0.2: - version "11.2.0" - resolved "https://registry.yarnpkg.com/cacache/-/cacache-11.2.0.tgz#617bdc0b02844af56310e411c0878941d5739965" - integrity sha512-IFWl6lfK6wSeYCHUXh+N1lY72UDrpyrYQJNIVQf48paDuWbv5RbAtJYf/4gUQFObTCHZwdZ5sI8Iw7nqwP6nlQ== - dependencies: - bluebird "^3.5.1" - chownr "^1.0.1" - figgy-pudding "^3.1.0" - glob "^7.1.2" - graceful-fs "^4.1.11" - lru-cache "^4.1.3" - mississippi "^3.0.0" - mkdirp "^0.5.1" - move-concurrently "^1.0.1" - promise-inflight "^1.0.1" - rimraf "^2.6.2" - ssri "^6.0.0" - unique-filename "^1.1.0" - y18n "^4.0.0" - -cache-base@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2" - integrity sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ== - dependencies: - collection-visit "^1.0.0" - component-emitter "^1.2.1" - get-value "^2.0.6" - has-value "^1.0.0" - isobject "^3.0.1" - set-value "^2.0.0" - to-object-path "^0.3.0" - union-value "^1.0.0" - unset-value "^1.0.0" - -call-me-maybe@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/call-me-maybe/-/call-me-maybe-1.0.1.tgz#26d208ea89e37b5cbde60250a15f031c16a4d66b" - integrity sha1-JtII6onje1y95gJQoV8DHBak1ms= - -caller-path@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/caller-path/-/caller-path-0.1.0.tgz#94085ef63581ecd3daa92444a8fe94e82577751f" - integrity sha1-lAhe9jWB7NPaqSREqP6U6CV3dR8= - dependencies: - callsites "^0.2.0" - -callsites@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/callsites/-/callsites-0.2.0.tgz#afab96262910a7f33c19a5775825c69f34e350ca" - integrity sha1-r6uWJikQp/M8GaV3WCXGnzTjUMo= - -callsites@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/callsites/-/callsites-2.0.0.tgz#06eb84f00eea413da86affefacbffb36093b3c50" - integrity sha1-BuuE8A7qQT2oav/vrL/7Ngk7PFA= - -camel-case@3.0.x: - version "3.0.0" - resolved "https://registry.yarnpkg.com/camel-case/-/camel-case-3.0.0.tgz#ca3c3688a4e9cf3a4cda777dc4dcbc713249cf73" - integrity sha1-yjw2iKTpzzpM2nd9xNy8cTJJz3M= - dependencies: - no-case "^2.2.0" - upper-case "^1.1.1" - -camelcase@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-4.1.0.tgz#d545635be1e33c542649c69173e5de6acfae34dd" - integrity sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0= - -camelcase@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.0.0.tgz#03295527d58bd3cd4aa75363f35b2e8d97be2f42" - integrity sha512-faqwZqnWxbxn+F1d399ygeamQNy3lPp/H9H6rNrqYh4FSVCtcY+3cub1MxA8o9mDd55mM8Aghuu/kuyYA6VTsA== - -caniuse-api@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/caniuse-api/-/caniuse-api-3.0.0.tgz#5e4d90e2274961d46291997df599e3ed008ee4c0" - integrity sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw== - dependencies: - browserslist "^4.0.0" - caniuse-lite "^1.0.0" - lodash.memoize "^4.1.2" - lodash.uniq "^4.5.0" - -caniuse-lite@^1.0.0, caniuse-lite@^1.0.30000884, caniuse-lite@^1.0.30000887, caniuse-lite@^1.0.30000898, caniuse-lite@^1.0.30000899: - version "1.0.30000903" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000903.tgz#86d46227759279b3db345ddbe778335dbba9e858" - integrity sha512-T1XVJEpGCoaq7MDw7/6hCdYUukmSaS+1l/OQJkLtw7Cr2+/+d67tNGKEbyiqf7Ck8x6EhNFUxjYFXXka0N/w5g== - -capture-exit@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/capture-exit/-/capture-exit-1.2.0.tgz#1c5fcc489fd0ab00d4f1ac7ae1072e3173fbab6f" - integrity sha1-HF/MSJ/QqwDU8ax64QcuMXP7q28= - dependencies: - rsvp "^3.3.3" - -case-sensitive-paths-webpack-plugin@2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/case-sensitive-paths-webpack-plugin/-/case-sensitive-paths-webpack-plugin-2.1.2.tgz#c899b52175763689224571dad778742e133f0192" - integrity sha512-oEZgAFfEvKtjSRCu6VgYkuGxwrWXMnQzyBmlLPP7r6PWQVtHxP5Z5N6XsuJvtoVax78am/r7lr46bwo3IVEBOg== - -caseless@~0.12.0: - version "0.12.0" - resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" - integrity sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw= - -chalk@2.4.1, chalk@^2.0.0, chalk@^2.0.1, chalk@^2.1.0, chalk@^2.4.1: - version "2.4.1" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.1.tgz#18c49ab16a037b6eb0152cc83e3471338215b66e" - integrity sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ== - dependencies: - ansi-styles "^3.2.1" - escape-string-regexp "^1.0.5" - supports-color "^5.3.0" - -chalk@^1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" - integrity sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg= - dependencies: - ansi-styles "^2.2.1" - escape-string-regexp "^1.0.2" - has-ansi "^2.0.0" - strip-ansi "^3.0.0" - supports-color "^2.0.0" - -chardet@^0.7.0: - version "0.7.0" - resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e" - integrity sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA== - -check-types@^7.3.0: - version "7.4.0" - resolved "https://registry.yarnpkg.com/check-types/-/check-types-7.4.0.tgz#0378ec1b9616ec71f774931a3c6516fad8c152f4" - integrity sha512-YbulWHdfP99UfZ73NcUDlNJhEIDgm9Doq9GhpyXbF+7Aegi3CVV7qqMCKTTqJxlvEvnQBp9IA+dxsGN6xK/nSg== - -chokidar@^2.0.0, chokidar@^2.0.2, chokidar@^2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-2.0.4.tgz#356ff4e2b0e8e43e322d18a372460bbcf3accd26" - integrity sha512-z9n7yt9rOvIJrMhvDtDictKrkFHeihkNl6uWMmZlmL6tJtX9Cs+87oK+teBx+JIgzvbX3yZHT3eF8vpbDxHJXQ== - dependencies: - anymatch "^2.0.0" - async-each "^1.0.0" - braces "^2.3.0" - glob-parent "^3.1.0" - inherits "^2.0.1" - is-binary-path "^1.0.0" - is-glob "^4.0.0" - lodash.debounce "^4.0.8" - normalize-path "^2.1.1" - path-is-absolute "^1.0.0" - readdirp "^2.0.0" - upath "^1.0.5" - optionalDependencies: - fsevents "^1.2.2" - -chownr@^1.0.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.1.tgz#54726b8b8fff4df053c42187e801fb4412df1494" - integrity sha512-j38EvO5+LHX84jlo6h4UzmOwi0UgW61WRyPtJz4qaadK5eY3BTS5TY/S1Stc3Uk2lIM6TPevAlULiEJwie860g== - -chroma-js@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/chroma-js/-/chroma-js-2.0.2.tgz#507bfe0e22da9c30673ffc4532c8ca6b4f2926db" - integrity sha512-VtDXaYcaDr45wheOXasIs4S4IWEjpqh74UfQA0TwoLuBR7TG12ztmjj9JqTIe1sgzVTMDNwSPEJYcw/jYK2TSw== - -chrome-trace-event@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/chrome-trace-event/-/chrome-trace-event-1.0.0.tgz#45a91bd2c20c9411f0963b5aaeb9a1b95e09cc48" - integrity sha512-xDbVgyfDTT2piup/h8dK/y4QZfJRSa73bw1WZ8b4XM1o7fsFubUVGYcE+1ANtOzJJELGpYoG2961z0Z6OAld9A== - dependencies: - tslib "^1.9.0" - -ci-info@^1.5.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-1.6.0.tgz#2ca20dbb9ceb32d4524a683303313f0304b1e497" - integrity sha512-vsGdkwSCDpWmP80ncATX7iea5DWQemg1UgCW5J8tqjU3lYw4FBYuj89J0CTVomA7BEfvSZd84GmHko+MxFQU2A== - -cipher-base@^1.0.0, cipher-base@^1.0.1, cipher-base@^1.0.3: - version "1.0.4" - resolved "https://registry.yarnpkg.com/cipher-base/-/cipher-base-1.0.4.tgz#8760e4ecc272f4c363532f926d874aae2c1397de" - integrity sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q== - dependencies: - inherits "^2.0.1" - safe-buffer "^5.0.1" - -circular-json@^0.3.1: - version "0.3.3" - resolved "https://registry.yarnpkg.com/circular-json/-/circular-json-0.3.3.tgz#815c99ea84f6809529d2f45791bdf82711352d66" - integrity sha512-UZK3NBx2Mca+b5LsG7bY183pHWt5Y1xts4P3Pz7ENTwGVnJOUWbRb3ocjvX7hx9tq/yTAdclXm9sZ38gNuem4A== - -class-utils@^0.3.5: - version "0.3.6" - resolved "https://registry.yarnpkg.com/class-utils/-/class-utils-0.3.6.tgz#f93369ae8b9a7ce02fd41faad0ca83033190c463" - integrity sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg== - dependencies: - arr-union "^3.1.0" - define-property "^0.2.5" - isobject "^3.0.0" - static-extend "^0.1.1" - -clean-css@4.2.x: - version "4.2.1" - resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-4.2.1.tgz#2d411ef76b8569b6d0c84068dabe85b0aa5e5c17" - integrity sha512-4ZxI6dy4lrY6FHzfiy1aEOXgu4LIsW2MhwG0VBKdcoGoH/XLFgaHSdLTGr4O8Be6A8r3MOphEiI8Gc1n0ecf3g== - dependencies: - source-map "~0.6.0" - -cli-cursor@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-2.1.0.tgz#b35dac376479facc3e94747d41d0d0f5238ffcb5" - integrity sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU= - dependencies: - restore-cursor "^2.0.0" - -cli-width@^2.0.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.2.0.tgz#ff19ede8a9a5e579324147b0c11f0fbcbabed639" - integrity sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk= - -cliui@^4.0.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/cliui/-/cliui-4.1.0.tgz#348422dbe82d800b3022eef4f6ac10bf2e4d1b49" - integrity sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ== - dependencies: - string-width "^2.1.1" - strip-ansi "^4.0.0" - wrap-ansi "^2.0.0" - -clone-deep@^0.2.4: - version "0.2.4" - resolved "https://registry.yarnpkg.com/clone-deep/-/clone-deep-0.2.4.tgz#4e73dd09e9fb971cc38670c5dced9c1896481cc6" - integrity sha1-TnPdCen7lxzDhnDF3O2cGJZIHMY= - dependencies: - for-own "^0.1.3" - is-plain-object "^2.0.1" - kind-of "^3.0.2" - lazy-cache "^1.0.3" - shallow-clone "^0.1.2" - -clone-deep@^2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/clone-deep/-/clone-deep-2.0.2.tgz#00db3a1e173656730d1188c3d6aced6d7ea97713" - integrity sha512-SZegPTKjCgpQH63E+eN6mVEEPdQBOUzjyJm5Pora4lrwWRFS8I0QAxV/KD6vV/i0WuijHZWQC1fMsPEdxfdVCQ== - dependencies: - for-own "^1.0.0" - is-plain-object "^2.0.4" - kind-of "^6.0.0" - shallow-clone "^1.0.0" - -co@^4.6.0: - version "4.6.0" - resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" - integrity sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ= - -coa@~2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/coa/-/coa-2.0.1.tgz#f3f8b0b15073e35d70263fb1042cb2c023db38af" - integrity sha512-5wfTTO8E2/ja4jFSxePXlG5nRu5bBtL/r1HCIpJW/lzT6yDtKl0u0Z4o/Vpz32IpKmBn7HerheEZQgA9N2DarQ== - dependencies: - q "^1.1.2" - -code-point-at@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" - integrity sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c= - -collection-visit@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/collection-visit/-/collection-visit-1.0.0.tgz#4bc0373c164bc3291b4d368c829cf1a80a59dca0" - integrity sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA= - dependencies: - map-visit "^1.0.0" - object-visit "^1.0.0" - -color-convert@^1.9.0, color-convert@^1.9.1: - version "1.9.3" - resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" - integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== - dependencies: - color-name "1.1.3" - -color-name@1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" - integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= - -color-name@^1.0.0: - version "1.1.4" - resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" - integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== - -color-string@^1.5.2: - 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@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/color/-/color-3.1.0.tgz#d8e9fb096732875774c84bf922815df0308d0ffc" - integrity sha512-CwyopLkuRYO5ei2EpzpIh6LqJMt6Mt+jZhO5VI5f/wJLZriXQE32/SSqzmrh+QB+AZT81Cj8yv+7zwToW8ahZg== - dependencies: - color-convert "^1.9.1" - color-string "^1.5.2" - -colors@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/colors/-/colors-1.1.2.tgz#168a4701756b6a7f51a12ce0c97bfa28c084ed63" - integrity sha1-FopHAXVran9RoSzgyXv6KMCE7WM= - -combined-stream@^1.0.6, combined-stream@~1.0.6: - version "1.0.7" - resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.7.tgz#2d1d24317afb8abe95d6d2c0b07b57813539d828" - integrity sha512-brWl9y6vOB1xYPZcpZde3N9zDByXTosAeMDo4p1wzo6UMOX4vumB+TP1RZ76sfE6Md68Q0NJSrE/gbezd4Ul+w== - dependencies: - delayed-stream "~1.0.0" - -commander@2.17.x, commander@~2.17.1: - version "2.17.1" - resolved "https://registry.yarnpkg.com/commander/-/commander-2.17.1.tgz#bd77ab7de6de94205ceacc72f1716d29f20a77bf" - integrity sha512-wPMUt6FnH2yzG95SA6mzjQOEKUU3aLaDEmzs1ti+1E9h+CsrZghRlqEM/EJ4KscsQVG8uNN4uVreUeT8+drlgg== - -commander@^2.11.0, commander@^2.18.0: - version "2.19.0" - resolved "https://registry.yarnpkg.com/commander/-/commander-2.19.0.tgz#f6198aa84e5b83c46054b94ddedbfed5ee9ff12a" - integrity sha512-6tvAOO+D6OENvRAh524Dh9jcfKTYDQAqvqezbCW82xj5X0pSrcpxtvRKHLG0yBY6SD7PSDrJaj+0AiOcKVd1Xg== - -commander@~2.13.0: - version "2.13.0" - resolved "https://registry.yarnpkg.com/commander/-/commander-2.13.0.tgz#6964bca67685df7c1f1430c584f07d7597885b9c" - integrity sha512-MVuS359B+YzaWqjCL/c+22gfryv+mCBPHAv3zyVI2GN8EY6IRP8VwtasXn8jyyhvvq84R4ImN1OKRtcbIasjYA== - -common-tags@^1.4.0: - version "1.8.0" - resolved "https://registry.yarnpkg.com/common-tags/-/common-tags-1.8.0.tgz#8e3153e542d4a39e9b10554434afaaf98956a937" - integrity sha512-6P6g0uetGpW/sdyUy/iQQCbFF0kWVMSIVSyYz7Zgjcgh8mgw8PQzDNZeyZ5DQ2gM7LBoZPHmnjz8rUthkBG5tw== - -commondir@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" - integrity sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs= - -component-emitter@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.2.1.tgz#137918d6d78283f7df7a6b7c5a63e140e69425e6" - integrity sha1-E3kY1teCg/ffemt8WmPhQOaUJeY= - -compressible@~2.0.14: - version "2.0.15" - resolved "https://registry.yarnpkg.com/compressible/-/compressible-2.0.15.tgz#857a9ab0a7e5a07d8d837ed43fe2defff64fe212" - integrity sha512-4aE67DL33dSW9gw4CI2H/yTxqHLNcxp0yS6jB+4h+wr3e43+1z7vm0HU9qXOH8j+qjKuL8+UtkOxYQSMq60Ylw== - dependencies: - mime-db ">= 1.36.0 < 2" - -compression@^1.5.2: - version "1.7.3" - resolved "https://registry.yarnpkg.com/compression/-/compression-1.7.3.tgz#27e0e176aaf260f7f2c2813c3e440adb9f1993db" - integrity sha512-HSjyBG5N1Nnz7tF2+O7A9XUhyjru71/fwgNb7oIsEVHR0WShfs2tIS/EySLgiTe98aOK18YDlMXpzjCXY/n9mg== - dependencies: - accepts "~1.3.5" - bytes "3.0.0" - compressible "~2.0.14" - debug "2.6.9" - on-headers "~1.0.1" - safe-buffer "5.1.2" - vary "~1.1.2" - -concat-map@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" - integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= - -concat-stream@^1.5.0: - version "1.6.2" - resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.2.tgz#904bdf194cd3122fc675c77fc4ac3d4ff0fd1a34" - integrity sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw== - dependencies: - buffer-from "^1.0.0" - inherits "^2.0.3" - readable-stream "^2.2.2" - typedarray "^0.0.6" - -confusing-browser-globals@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/confusing-browser-globals/-/confusing-browser-globals-1.0.5.tgz#0171050cfdd4261e278978078bc00c4d88e135f4" - integrity sha512-tHo1tQL/9Ox5RELbkCAJhnViqWlzBz3MG1bB2czbHjH2mWd4aYUgNCNLfysFL7c4LoDws7pjg2tj48Gmpw4QHA== - -connect-history-api-fallback@^1.3.0: - version "1.5.0" - resolved "https://registry.yarnpkg.com/connect-history-api-fallback/-/connect-history-api-fallback-1.5.0.tgz#b06873934bc5e344fef611a196a6faae0aee015a" - integrity sha1-sGhzk0vF40T+9hGhlqb6rgruAVo= - -console-browserify@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/console-browserify/-/console-browserify-1.1.0.tgz#f0241c45730a9fc6323b206dbf38edc741d0bb10" - integrity sha1-8CQcRXMKn8YyOyBtvzjtx0HQuxA= - dependencies: - date-now "^0.1.4" - -console-control-strings@^1.0.0, console-control-strings@~1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" - integrity sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4= - -constants-browserify@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/constants-browserify/-/constants-browserify-1.0.0.tgz#c20b96d8c617748aaf1c16021760cd27fcb8cb75" - integrity sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U= - -contains-path@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/contains-path/-/contains-path-0.1.0.tgz#fe8cf184ff6670b6baef01a9d4861a5cbec4120a" - integrity sha1-/ozxhP9mcLa67wGp1IYaXL7EEgo= - -content-disposition@0.5.2: - version "0.5.2" - resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.2.tgz#0cf68bb9ddf5f2be7961c3a85178cb85dba78cb4" - integrity sha1-DPaLud318r55YcOoUXjLhdunjLQ= - -content-type@~1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.4.tgz#e138cc75e040c727b1966fe5e5f8c9aee256fe3b" - integrity sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA== - -convert-source-map@^1.1.0, convert-source-map@^1.4.0, convert-source-map@^1.5.1: - version "1.6.0" - resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.6.0.tgz#51b537a8c43e0f04dec1993bffcdd504e758ac20" - integrity sha512-eFu7XigvxdZ1ETfbgPBohgyQ/Z++C0eEhTor0qRwBw9unw+L0/6V8wkSuGgzdThkiS5lSpdptOQPD8Ak40a+7A== - dependencies: - safe-buffer "~5.1.1" - -cookie-signature@1.0.6: - version "1.0.6" - resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.6.tgz#e303a882b342cc3ee8ca513a79999734dab3ae2c" - integrity sha1-4wOogrNCzD7oylE6eZmXNNqzriw= - -cookie@0.3.1: - version "0.3.1" - resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.3.1.tgz#e7e0a1f9ef43b4c8ba925c5c5a96e806d16873bb" - integrity sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s= - -copy-concurrently@^1.0.0: - version "1.0.5" - resolved "https://registry.yarnpkg.com/copy-concurrently/-/copy-concurrently-1.0.5.tgz#92297398cae34937fcafd6ec8139c18051f0b5e0" - integrity sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A== - dependencies: - aproba "^1.1.1" - fs-write-stream-atomic "^1.0.8" - iferr "^0.1.5" - mkdirp "^0.5.1" - rimraf "^2.5.4" - run-queue "^1.0.0" - -copy-descriptor@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d" - integrity sha1-Z29us8OZl8LuGsOpJP1hJHSPV40= - -core-js@2.5.7, core-js@^2.4.0, core-js@^2.5.0: - version "2.5.7" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.5.7.tgz#f972608ff0cead68b841a16a932d0b183791814e" - integrity sha512-RszJCAxg/PP6uzXVXL6BsxSXx/B05oJAQ2vkJRjyjrEcNVycaqOmNb5OTxZPE3xa5gwZduqza6L9JOCenh/Ecw== - -core-js@^1.0.0: - version "1.2.7" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-1.2.7.tgz#652294c14651db28fa93bd2d5ff2983a4f08c636" - integrity sha1-ZSKUwUZR2yj6k70tX/KYOk8IxjY= - -core-util-is@1.0.2, core-util-is@~1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" - integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac= - -cosmiconfig@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-4.0.0.tgz#760391549580bbd2df1e562bc177b13c290972dc" - integrity sha512-6e5vDdrXZD+t5v0L8CrurPeybg4Fmf+FCSYxXKYVAqLUtyCSbuyqE059d0kDthTNRzKVjL7QMgNpEUlsoYH3iQ== - dependencies: - is-directory "^0.3.1" - js-yaml "^3.9.0" - parse-json "^4.0.0" - require-from-string "^2.0.1" - -cosmiconfig@^5.0.0, cosmiconfig@^5.0.5, cosmiconfig@^5.0.6: - version "5.0.6" - resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-5.0.6.tgz#dca6cf680a0bd03589aff684700858c81abeeb39" - integrity sha512-6DWfizHriCrFWURP1/qyhsiFvYdlJzbCzmtFWh744+KyWsJo5+kPzUZZaMRSSItoYc0pxFX7gEO7ZC1/gN/7AQ== - dependencies: - is-directory "^0.3.1" - js-yaml "^3.9.0" - parse-json "^4.0.0" - -create-ecdh@^4.0.0: - version "4.0.3" - resolved "https://registry.yarnpkg.com/create-ecdh/-/create-ecdh-4.0.3.tgz#c9111b6f33045c4697f144787f9254cdc77c45ff" - integrity sha512-GbEHQPMOswGpKXM9kCWVrremUcBmjteUaQ01T9rkKCPDXfUHX0IoP9LpHYo2NPFampa4e+/pFDc3jQdxrxQLaw== - dependencies: - bn.js "^4.1.0" - elliptic "^6.0.0" - -create-hash@^1.1.0, create-hash@^1.1.2: - version "1.2.0" - resolved "https://registry.yarnpkg.com/create-hash/-/create-hash-1.2.0.tgz#889078af11a63756bcfb59bd221996be3a9ef196" - integrity sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg== - dependencies: - cipher-base "^1.0.1" - inherits "^2.0.1" - md5.js "^1.3.4" - ripemd160 "^2.0.1" - sha.js "^2.4.0" - -create-hmac@^1.1.0, create-hmac@^1.1.2, create-hmac@^1.1.4: - version "1.1.7" - resolved "https://registry.yarnpkg.com/create-hmac/-/create-hmac-1.1.7.tgz#69170c78b3ab957147b2b8b04572e47ead2243ff" - integrity sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg== - dependencies: - cipher-base "^1.0.3" - create-hash "^1.1.0" - inherits "^2.0.1" - ripemd160 "^2.0.0" - safe-buffer "^5.0.1" - sha.js "^2.4.8" - -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" - integrity sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ== - dependencies: - nice-try "^1.0.4" - path-key "^2.0.1" - semver "^5.5.0" - shebang-command "^1.2.0" - which "^1.2.9" - -cross-spawn@^5.0.1: - version "5.1.0" - resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-5.1.0.tgz#e8bd0efee58fcff6f8f94510a0a554bbfa235449" - integrity sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk= - dependencies: - lru-cache "^4.0.1" - shebang-command "^1.2.0" - which "^1.2.9" - -crypto-browserify@^3.11.0: - version "3.12.0" - resolved "https://registry.yarnpkg.com/crypto-browserify/-/crypto-browserify-3.12.0.tgz#396cf9f3137f03e4b8e532c58f698254e00f80ec" - integrity sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg== - dependencies: - browserify-cipher "^1.0.0" - browserify-sign "^4.0.0" - create-ecdh "^4.0.0" - create-hash "^1.1.0" - create-hmac "^1.1.0" - diffie-hellman "^5.0.0" - inherits "^2.0.1" - pbkdf2 "^3.0.3" - public-encrypt "^4.0.0" - randombytes "^2.0.0" - randomfill "^1.0.3" - -css-color-keywords@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/css-color-keywords/-/css-color-keywords-1.0.0.tgz#fea2616dc676b2962686b3af8dbdbe180b244e05" - integrity sha1-/qJhbcZ2spYmhrOvjb2+GAskTgU= - -css-color-names@0.0.4, css-color-names@^0.0.4: - version "0.0.4" - resolved "https://registry.yarnpkg.com/css-color-names/-/css-color-names-0.0.4.tgz#808adc2e79cf84738069b646cb20ec27beb629e0" - integrity sha1-gIrcLnnPhHOAabZGyyDsJ762KeA= - -css-declaration-sorter@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/css-declaration-sorter/-/css-declaration-sorter-4.0.1.tgz#c198940f63a76d7e36c1e71018b001721054cb22" - integrity sha512-BcxQSKTSEEQUftYpBVnsH4SF05NTuBokb19/sBt6asXGKZ/6VP7PLG1CBCkFDYOnhXhPh0jMhO6xZ71oYHXHBA== - dependencies: - postcss "^7.0.1" - timsort "^0.3.0" - -css-loader@1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-1.0.0.tgz#9f46aaa5ca41dbe31860e3b62b8e23c42916bf56" - integrity sha512-tMXlTYf3mIMt3b0dDCOQFJiVvxbocJ5Ho577WiGPYPZcqVEO218L2iU22pDXzkTZCLDE+9AmGSUkWxeh/nZReA== - dependencies: - babel-code-frame "^6.26.0" - css-selector-tokenizer "^0.7.0" - icss-utils "^2.1.0" - loader-utils "^1.0.2" - lodash.camelcase "^4.3.0" - postcss "^6.0.23" - postcss-modules-extract-imports "^1.2.0" - postcss-modules-local-by-default "^1.2.0" - postcss-modules-scope "^1.1.0" - postcss-modules-values "^1.3.0" - postcss-value-parser "^3.3.0" - source-list-map "^2.0.0" - -css-select-base-adapter@~0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/css-select-base-adapter/-/css-select-base-adapter-0.1.1.tgz#3b2ff4972cc362ab88561507a95408a1432135d7" - integrity sha512-jQVeeRG70QI08vSTwf1jHxp74JoZsr2XSgETae8/xC8ovSnL2WF87GTLO86Sbwdt2lK4Umg4HnnwMO4YF3Ce7w== - -css-select@^1.1.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/css-select/-/css-select-1.2.0.tgz#2b3a110539c5355f1cd8d314623e870b121ec858" - integrity sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg= - dependencies: - boolbase "~1.0.0" - css-what "2.1" - domutils "1.5.1" - nth-check "~1.0.1" - -css-select@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/css-select/-/css-select-2.0.2.tgz#ab4386cec9e1f668855564b17c3733b43b2a5ede" - integrity sha512-dSpYaDVoWaELjvZ3mS6IKZM/y2PMPa/XYoEfYNZePL4U/XgyxZNroHEHReDx/d+VgXh9VbCTtFqLkFbmeqeaRQ== - dependencies: - boolbase "^1.0.0" - css-what "^2.1.2" - domutils "^1.7.0" - nth-check "^1.0.2" - -css-selector-tokenizer@^0.7.0: - version "0.7.1" - resolved "https://registry.yarnpkg.com/css-selector-tokenizer/-/css-selector-tokenizer-0.7.1.tgz#a177271a8bca5019172f4f891fc6eed9cbf68d5d" - integrity sha512-xYL0AMZJ4gFzJQsHUKa5jiWWi2vH77WVNg7JYRyewwj6oPh4yb/y6Y9ZCw9dsj/9UauMhtuxR+ogQd//EdEVNA== - dependencies: - cssesc "^0.1.0" - fastparse "^1.1.1" - regexpu-core "^1.0.0" - -css-to-react-native@^2.2.2: - version "2.2.2" - resolved "https://registry.yarnpkg.com/css-to-react-native/-/css-to-react-native-2.2.2.tgz#c077d0f7bf3e6c915a539e7325821c9dd01f9965" - integrity sha512-w99Fzop1FO8XKm0VpbQp3y5mnTnaS+rtCvS+ylSEOK76YXO5zoHQx/QMB1N54Cp+Ya9jB9922EHrh14ld4xmmw== - dependencies: - css-color-keywords "^1.0.0" - fbjs "^0.8.5" - postcss-value-parser "^3.3.0" - -css-tree@1.0.0-alpha.28: - version "1.0.0-alpha.28" - resolved "https://registry.yarnpkg.com/css-tree/-/css-tree-1.0.0-alpha.28.tgz#8e8968190d886c9477bc8d61e96f61af3f7ffa7f" - integrity sha512-joNNW1gCp3qFFzj4St6zk+Wh/NBv0vM5YbEreZk0SD4S23S+1xBKb6cLDg2uj4P4k/GUMlIm6cKIDqIG+vdt0w== - dependencies: - mdn-data "~1.1.0" - source-map "^0.5.3" - -css-tree@1.0.0-alpha.29: - version "1.0.0-alpha.29" - resolved "https://registry.yarnpkg.com/css-tree/-/css-tree-1.0.0-alpha.29.tgz#3fa9d4ef3142cbd1c301e7664c1f352bd82f5a39" - integrity sha512-sRNb1XydwkW9IOci6iB2xmy8IGCj6r/fr+JWitvJ2JxQRPzN3T4AGGVWCMlVmVwM1gtgALJRmGIlWv5ppnGGkg== - dependencies: - mdn-data "~1.1.0" - source-map "^0.5.3" - -css-unit-converter@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/css-unit-converter/-/css-unit-converter-1.1.1.tgz#d9b9281adcfd8ced935bdbaba83786897f64e996" - integrity sha1-2bkoGtz9jO2TW9urqDeGiX9k6ZY= - -css-url-regex@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/css-url-regex/-/css-url-regex-1.1.0.tgz#83834230cc9f74c457de59eebd1543feeb83b7ec" - integrity sha1-g4NCMMyfdMRX3lnuvRVD/uuDt+w= - -css-what@2.1, css-what@^2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/css-what/-/css-what-2.1.2.tgz#c0876d9d0480927d7d4920dcd72af3595649554d" - integrity sha512-wan8dMWQ0GUeF7DGEPVjhHemVW/vy6xUYmFzRY8RYqgA0JtXC9rJmbScBjqSu6dg9q0lwPQy6ZAmJVr3PPTvqQ== - -cssdb@^3.2.1: - version "3.2.1" - resolved "https://registry.yarnpkg.com/cssdb/-/cssdb-3.2.1.tgz#65e7dc90be476ce5b6e567b19f3bd73a8c66bcb5" - integrity sha512-I0IS8zvxED8sQtFZnV7M+AkhWqTgp1HIyfMQJBbjdn4GgurBt7NCZaDgrWiAN2kNJN34mhF1p50aZIMQu290mA== - -cssesc@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-0.1.0.tgz#c814903e45623371a0477b40109aaafbeeaddbb4" - integrity sha1-yBSQPkViM3GgR3tAEJqq++6t27Q= - -cssesc@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-2.0.0.tgz#3b13bd1bb1cb36e1bcb5a4dcd27f54c5dcb35703" - integrity sha512-MsCAG1z9lPdoO/IUMLSBWBSVxVtJ1395VGIQ+Fc2gNdkQ1hNDnQdw3YhA71WJCBW1vdwA0cAnk/DnW6bqoEUYg== - -cssnano-preset-default@^4.0.5: - version "4.0.5" - resolved "https://registry.yarnpkg.com/cssnano-preset-default/-/cssnano-preset-default-4.0.5.tgz#d1756c0259d98ad311e601ba76e95c60f6771ac1" - integrity sha512-f1uhya0ZAjPYtDD58QkBB0R+uYdzHPei7cDxJyQQIHt5acdhyGXaSXl2nDLzWHLwGFbZcHxQtkJS8mmNwnxTvw== - dependencies: - css-declaration-sorter "^4.0.1" - cssnano-util-raw-cache "^4.0.1" - postcss "^7.0.0" - postcss-calc "^7.0.0" - postcss-colormin "^4.0.2" - postcss-convert-values "^4.0.1" - postcss-discard-comments "^4.0.1" - postcss-discard-duplicates "^4.0.2" - postcss-discard-empty "^4.0.1" - postcss-discard-overridden "^4.0.1" - postcss-merge-longhand "^4.0.9" - postcss-merge-rules "^4.0.2" - postcss-minify-font-values "^4.0.2" - postcss-minify-gradients "^4.0.1" - postcss-minify-params "^4.0.1" - postcss-minify-selectors "^4.0.1" - postcss-normalize-charset "^4.0.1" - postcss-normalize-display-values "^4.0.1" - postcss-normalize-positions "^4.0.1" - postcss-normalize-repeat-style "^4.0.1" - postcss-normalize-string "^4.0.1" - postcss-normalize-timing-functions "^4.0.1" - postcss-normalize-unicode "^4.0.1" - postcss-normalize-url "^4.0.1" - postcss-normalize-whitespace "^4.0.1" - postcss-ordered-values "^4.1.1" - postcss-reduce-initial "^4.0.2" - postcss-reduce-transforms "^4.0.1" - postcss-svgo "^4.0.1" - postcss-unique-selectors "^4.0.1" - -cssnano-util-get-arguments@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/cssnano-util-get-arguments/-/cssnano-util-get-arguments-4.0.0.tgz#ed3a08299f21d75741b20f3b81f194ed49cc150f" - integrity sha1-7ToIKZ8h11dBsg87gfGU7UnMFQ8= - -cssnano-util-get-match@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/cssnano-util-get-match/-/cssnano-util-get-match-4.0.0.tgz#c0e4ca07f5386bb17ec5e52250b4f5961365156d" - integrity sha1-wOTKB/U4a7F+xeUiULT1lhNlFW0= - -cssnano-util-raw-cache@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/cssnano-util-raw-cache/-/cssnano-util-raw-cache-4.0.1.tgz#b26d5fd5f72a11dfe7a7846fb4c67260f96bf282" - integrity sha512-qLuYtWK2b2Dy55I8ZX3ky1Z16WYsx544Q0UWViebptpwn/xDBmog2TLg4f+DBMg1rJ6JDWtn96WHbOKDWt1WQA== - dependencies: - postcss "^7.0.0" - -cssnano-util-same-parent@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/cssnano-util-same-parent/-/cssnano-util-same-parent-4.0.1.tgz#574082fb2859d2db433855835d9a8456ea18bbf3" - integrity sha512-WcKx5OY+KoSIAxBW6UBBRay1U6vkYheCdjyVNDm85zt5K9mHoGOfsOsqIszfAqrQQFIIKgjh2+FDgIj/zsl21Q== - -cssnano@^4.1.0: - version "4.1.7" - resolved "https://registry.yarnpkg.com/cssnano/-/cssnano-4.1.7.tgz#0bf112294bec103ab5f68d3f805732c8325a0b1b" - integrity sha512-AiXL90l+MDuQmRNyypG2P7ux7K4XklxYzNNUd5HXZCNcH8/N9bHPcpN97v8tXgRVeFL/Ed8iP8mVmAAu0ZpT7A== - dependencies: - cosmiconfig "^5.0.0" - cssnano-preset-default "^4.0.5" - is-resolvable "^1.0.0" - postcss "^7.0.0" - -csso@^3.5.0: - version "3.5.1" - resolved "https://registry.yarnpkg.com/csso/-/csso-3.5.1.tgz#7b9eb8be61628973c1b261e169d2f024008e758b" - integrity sha512-vrqULLffYU1Q2tLdJvaCYbONStnfkfimRxXNaGjxMldI0C7JPBC4rB1RyjhfdZ4m1frm8pM9uRPKH3d2knZ8gg== - dependencies: - css-tree "1.0.0-alpha.29" - -cssom@0.3.x, "cssom@>= 0.3.2 < 0.4.0", cssom@^0.3.4: - version "0.3.4" - resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.3.4.tgz#8cd52e8a3acfd68d3aed38ee0a640177d2f9d797" - integrity sha512-+7prCSORpXNeR4/fUP3rL+TzqtiFfhMvTd7uEqMdgPvLPt4+uzFUeufx5RHjGTACCargg/DiEt/moMQmvnfkog== - -cssstyle@^1.0.0, cssstyle@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/cssstyle/-/cssstyle-1.1.1.tgz#18b038a9c44d65f7a8e428a653b9f6fe42faf5fb" - integrity sha512-364AI1l/M5TYcFH83JnOH/pSqgaNnKmYgKrm0didZMGKWjQB60dymwWy1rKUgL3J1ffdq9xVi2yGLHdSjjSNog== - dependencies: - cssom "0.3.x" - -csstype@^2.2.0: - version "2.5.7" - resolved "https://registry.yarnpkg.com/csstype/-/csstype-2.5.7.tgz#bf9235d5872141eccfb2d16d82993c6b149179ff" - integrity sha512-Nt5VDyOTIIV4/nRFswoCKps1R5CD1hkiyjBE9/thNaNZILLEviVw9yWQw15+O+CpNjQKB/uvdcxFFOrSflY3Yw== - -cyclist@~0.2.2: - version "0.2.2" - resolved "https://registry.yarnpkg.com/cyclist/-/cyclist-0.2.2.tgz#1b33792e11e914a2fd6d6ed6447464444e5fa640" - integrity sha1-GzN5LhHpFKL9bW7WRHRkRE5fpkA= - -damerau-levenshtein@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/damerau-levenshtein/-/damerau-levenshtein-1.0.4.tgz#03191c432cb6eea168bb77f3a55ffdccb8978514" - integrity sha1-AxkcQyy27qFou3fzpV/9zLiXhRQ= - -dashdash@^1.12.0: - version "1.14.1" - resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0" - integrity sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA= - dependencies: - assert-plus "^1.0.0" - -data-urls@^1.0.0, data-urls@^1.0.1: - version "1.1.0" - resolved "https://registry.yarnpkg.com/data-urls/-/data-urls-1.1.0.tgz#15ee0582baa5e22bb59c77140da8f9c76963bbfe" - integrity sha512-YTWYI9se1P55u58gL5GkQHW4P6VJBJ5iBT+B5a7i2Tjadhv52paJG0qHX4A0OR6/t52odI64KP2YvFpkDOi3eQ== - dependencies: - abab "^2.0.0" - whatwg-mimetype "^2.2.0" - whatwg-url "^7.0.0" - -date-now@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/date-now/-/date-now-0.1.4.tgz#eaf439fd4d4848ad74e5cc7dbef200672b9e345b" - integrity sha1-6vQ5/U1ISK105cx9vvIAZyueNFs= - -debug@2.6.9, debug@^2.1.2, debug@^2.2.0, debug@^2.3.3, debug@^2.6.0, debug@^2.6.6, debug@^2.6.8, debug@^2.6.9: - version "2.6.9" - resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" - integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== - dependencies: - ms "2.0.0" - -debug@=3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/debug/-/debug-3.1.0.tgz#5bb5a0672628b64149566ba16819e61518c67261" - integrity sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g== - dependencies: - ms "2.0.0" - -debug@^3.1.0: - version "3.2.6" - resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.6.tgz#e83d17de16d8a7efb7717edbe5fb10135eee629b" - integrity sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ== - dependencies: - ms "^2.1.1" - -decamelize@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" - integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA= - -decamelize@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-2.0.0.tgz#656d7bbc8094c4c788ea53c5840908c9c7d063c7" - integrity sha512-Ikpp5scV3MSYxY39ymh45ZLEecsTdv/Xj2CaQfI8RLMuwi7XvjX9H/fhraiSuU+C5w5NTDu4ZU72xNiZnurBPg== - dependencies: - xregexp "4.0.0" - -decode-uri-component@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545" - integrity sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU= - -deep-equal@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-1.0.1.tgz#f5d260292b660e084eff4cdbc9f08ad3247448b5" - integrity sha1-9dJgKStmDghO/0zbyfCK0yR0SLU= - -deep-extend@^0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac" - integrity sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA== - -deep-is@~0.1.3: - version "0.1.3" - resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34" - integrity sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ= - -default-gateway@^2.6.0: - version "2.7.2" - resolved "https://registry.yarnpkg.com/default-gateway/-/default-gateway-2.7.2.tgz#b7ef339e5e024b045467af403d50348db4642d0f" - integrity sha512-lAc4i9QJR0YHSDFdzeBQKfZ1SRDG3hsJNEkrpcZa8QhBfidLAilT60BDEIVUUGqosFp425KOgB3uYqcnQrWafQ== - dependencies: - execa "^0.10.0" - ip-regex "^2.1.0" - -default-require-extensions@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/default-require-extensions/-/default-require-extensions-1.0.0.tgz#f37ea15d3e13ffd9b437d33e1a75b5fb97874cb8" - integrity sha1-836hXT4T/9m0N9M+GnW1+5eHTLg= - dependencies: - strip-bom "^2.0.0" - -define-properties@^1.1.2: - version "1.1.3" - resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1" - integrity sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ== - dependencies: - object-keys "^1.0.12" - -define-property@^0.2.5: - version "0.2.5" - resolved "https://registry.yarnpkg.com/define-property/-/define-property-0.2.5.tgz#c35b1ef918ec3c990f9a5bc57be04aacec5c8116" - integrity sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY= - dependencies: - is-descriptor "^0.1.0" - -define-property@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/define-property/-/define-property-1.0.0.tgz#769ebaaf3f4a63aad3af9e8d304c9bbe79bfb0e6" - integrity sha1-dp66rz9KY6rTr56NMEybvnm/sOY= - dependencies: - is-descriptor "^1.0.0" - -define-property@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/define-property/-/define-property-2.0.2.tgz#d459689e8d654ba77e02a817f8710d702cb16e9d" - integrity sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ== - dependencies: - is-descriptor "^1.0.2" - isobject "^3.0.1" - -del@^2.0.2: - version "2.2.2" - resolved "https://registry.yarnpkg.com/del/-/del-2.2.2.tgz#c12c981d067846c84bcaf862cff930d907ffd1a8" - integrity sha1-wSyYHQZ4RshLyvhiz/kw2Qf/0ag= - dependencies: - globby "^5.0.0" - is-path-cwd "^1.0.0" - is-path-in-cwd "^1.0.0" - object-assign "^4.0.1" - pify "^2.0.0" - pinkie-promise "^2.0.0" - rimraf "^2.2.8" - -del@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/del/-/del-3.0.0.tgz#53ecf699ffcbcb39637691ab13baf160819766e5" - integrity sha1-U+z2mf/LyzljdpGrE7rxYIGXZuU= - dependencies: - globby "^6.1.0" - is-path-cwd "^1.0.0" - is-path-in-cwd "^1.0.0" - p-map "^1.1.1" - pify "^3.0.0" - rimraf "^2.2.8" - -delayed-stream@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" - integrity sha1-3zrhmayt+31ECqrgsp4icrJOxhk= - -delegates@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" - integrity sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o= - -depd@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9" - integrity sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak= - -des.js@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/des.js/-/des.js-1.0.0.tgz#c074d2e2aa6a8a9a07dbd61f9a15c2cd83ec8ecc" - integrity sha1-wHTS4qpqipoH29YfmhXCzYPsjsw= - dependencies: - inherits "^2.0.1" - minimalistic-assert "^1.0.0" - -destroy@~1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.0.4.tgz#978857442c44749e4206613e37946205826abd80" - integrity sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA= - -detect-indent@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-4.0.0.tgz#f76d064352cdf43a1cb6ce619c4ee3a9475de208" - integrity sha1-920GQ1LN9Docts5hnE7jqUdd4gg= - dependencies: - repeating "^2.0.0" - -detect-libc@^1.0.2: - version "1.0.3" - resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b" - integrity sha1-+hN8S9aY7fVc1c0CrFWfkaTEups= - -detect-newline@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-2.1.0.tgz#f41f1c10be4b00e87b5f13da680759f2c5bfd3e2" - integrity sha1-9B8cEL5LAOh7XxPaaAdZ8sW/0+I= - -detect-node@^2.0.3: - version "2.0.4" - resolved "https://registry.yarnpkg.com/detect-node/-/detect-node-2.0.4.tgz#014ee8f8f669c5c58023da64b8179c083a28c46c" - integrity sha512-ZIzRpLJrOj7jjP2miAtgqIfmzbxa4ZOr5jJc601zklsfEx9oTzmmj2nVpIPRpNlRTIh8lc1kyViIY7BWSGNmKw== - -detect-port-alt@1.1.6: - version "1.1.6" - resolved "https://registry.yarnpkg.com/detect-port-alt/-/detect-port-alt-1.1.6.tgz#24707deabe932d4a3cf621302027c2b266568275" - integrity sha512-5tQykt+LqfJFBEYaDITx7S7cR7mJ/zQmLXZ2qt5w04ainYZw6tBf9dBunMjVeVOdYVRUzUOE4HkY5J7+uttb5Q== - dependencies: - address "^1.0.1" - debug "^2.6.0" - -diff@^3.2.0: - version "3.5.0" - resolved "https://registry.yarnpkg.com/diff/-/diff-3.5.0.tgz#800c0dd1e0a8bfbc95835c202ad220fe317e5a12" - integrity sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA== - -diffie-hellman@^5.0.0: - version "5.0.3" - resolved "https://registry.yarnpkg.com/diffie-hellman/-/diffie-hellman-5.0.3.tgz#40e8ee98f55a2149607146921c63e1ae5f3d2875" - integrity sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg== - dependencies: - bn.js "^4.1.0" - miller-rabin "^4.0.0" - randombytes "^2.0.0" - -dir-glob@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-2.0.0.tgz#0b205d2b6aef98238ca286598a8204d29d0a0034" - integrity sha512-37qirFDz8cA5fimp9feo43fSuRo2gHwaIn6dXL8Ber1dGwUosDrGZeCCXq57WnIqE4aQ+u3eQZzsk1yOzhdwag== - dependencies: - arrify "^1.0.1" - path-type "^3.0.0" - -dns-equal@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/dns-equal/-/dns-equal-1.0.0.tgz#b39e7f1da6eb0a75ba9c17324b34753c47e0654d" - integrity sha1-s55/HabrCnW6nBcySzR1PEfgZU0= - -dns-packet@^1.3.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/dns-packet/-/dns-packet-1.3.1.tgz#12aa426981075be500b910eedcd0b47dd7deda5a" - integrity sha512-0UxfQkMhYAUaZI+xrNZOz/as5KgDU0M/fQ9b6SpkyLbk3GEswDi6PADJVaYJradtRVsRIlF1zLyOodbcTCDzUg== - dependencies: - ip "^1.1.0" - safe-buffer "^5.0.1" - -dns-txt@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/dns-txt/-/dns-txt-2.0.2.tgz#b91d806f5d27188e4ab3e7d107d881a1cc4642b6" - integrity sha1-uR2Ab10nGI5Ks+fRB9iBocxGQrY= - dependencies: - buffer-indexof "^1.0.0" - -doctrine@1.5.0: - version "1.5.0" - resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-1.5.0.tgz#379dce730f6166f76cefa4e6707a159b02c5a6fa" - integrity sha1-N53Ocw9hZvds76TmcHoVmwLFpvo= - dependencies: - esutils "^2.0.2" - isarray "^1.0.0" - -doctrine@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-2.1.0.tgz#5cd01fc101621b42c4cd7f5d1a66243716d3f39d" - integrity sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw== - dependencies: - esutils "^2.0.2" - -dom-converter@~0.2: - version "0.2.0" - resolved "https://registry.yarnpkg.com/dom-converter/-/dom-converter-0.2.0.tgz#6721a9daee2e293682955b6afe416771627bb768" - integrity sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA== - dependencies: - utila "~0.4" - -dom-serializer@0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.1.0.tgz#073c697546ce0780ce23be4a28e293e40bc30c82" - integrity sha1-BzxpdUbOB4DOI75KKOKT5AvDDII= - dependencies: - domelementtype "~1.1.1" - entities "~1.1.1" - -domain-browser@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/domain-browser/-/domain-browser-1.2.0.tgz#3d31f50191a6749dd1375a7f522e823d42e54eda" - integrity sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA== - -domelementtype@1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.2.1.tgz#578558ef23befac043a1abb0db07635509393479" - integrity sha512-SQVCLFS2E7G5CRCMdn6K9bIhRj1bS6QBWZfF0TUPh4V/BbqrQ619IdSS3/izn0FZ+9l+uODzaZjb08fjOfablA== - -domelementtype@~1.1.1: - version "1.1.3" - resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.1.3.tgz#bd28773e2642881aec51544924299c5cd822185b" - integrity sha1-vSh3PiZCiBrsUVRJJCmcXNgiGFs= - -domexception@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/domexception/-/domexception-1.0.1.tgz#937442644ca6a31261ef36e3ec677fe805582c90" - integrity sha512-raigMkn7CJNNo6Ihro1fzG7wr3fHuYVytzquZKX5n0yizGsTcYgzdIUwj1X9pK0VvjeihV+XiclP+DjwbsSKug== - dependencies: - webidl-conversions "^4.0.2" - -domhandler@2.1: - version "2.1.0" - resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-2.1.0.tgz#d2646f5e57f6c3bab11cf6cb05d3c0acf7412594" - integrity sha1-0mRvXlf2w7qxHPbLBdPArPdBJZQ= - dependencies: - domelementtype "1" - -domutils@1.1: - version "1.1.6" - resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.1.6.tgz#bddc3de099b9a2efacc51c623f28f416ecc57485" - integrity sha1-vdw94Jm5ou+sxRxiPyj0FuzFdIU= - dependencies: - domelementtype "1" - -domutils@1.5.1: - version "1.5.1" - resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.5.1.tgz#dcd8488a26f563d61079e48c9f7b7e32373682cf" - integrity sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8= - dependencies: - dom-serializer "0" - domelementtype "1" - -domutils@^1.7.0: - version "1.7.0" - resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.7.0.tgz#56ea341e834e06e6748af7a1cb25da67ea9f8c2a" - integrity sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg== - dependencies: - dom-serializer "0" - domelementtype "1" - -dot-prop@^4.1.1: - 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" - -dotenv-expand@4.2.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/dotenv-expand/-/dotenv-expand-4.2.0.tgz#def1f1ca5d6059d24a766e587942c21106ce1275" - integrity sha1-3vHxyl1gWdJKdm5YeULCEQbOEnU= - -dotenv@6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-6.0.0.tgz#24e37c041741c5f4b25324958ebbc34bca965935" - integrity sha512-FlWbnhgjtwD+uNLUGHbMykMOYQaTivdHEmYwAKFjn6GKe/CqY0fNae93ZHTd20snh9ZLr8mTzIL9m0APQ1pjQg== - -duplexer@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/duplexer/-/duplexer-0.1.1.tgz#ace6ff808c1ce66b57d1ebf97977acb02334cfc1" - integrity sha1-rOb/gIwc5mtX0ev5eXessCM0z8E= - -duplexify@^3.4.2, duplexify@^3.6.0: - version "3.6.1" - resolved "https://registry.yarnpkg.com/duplexify/-/duplexify-3.6.1.tgz#b1a7a29c4abfd639585efaecce80d666b1e34125" - integrity sha512-vM58DwdnKmty+FSPzT14K9JXb90H+j5emaR4KYbr2KTIz00WHGbWOe5ghQTx233ZCLZtrGDALzKwcjEtSt35mA== - dependencies: - end-of-stream "^1.0.0" - inherits "^2.0.1" - readable-stream "^2.0.0" - stream-shift "^1.0.0" - -ecc-jsbn@~0.1.1: - version "0.1.2" - resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz#3a83a904e54353287874c564b7549386849a98c9" - integrity sha1-OoOpBOVDUyh4dMVkt1SThoSamMk= - dependencies: - jsbn "~0.1.0" - safer-buffer "^2.1.0" - -ee-first@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" - integrity sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0= - -electron-to-chromium@^1.3.62, electron-to-chromium@^1.3.82: - version "1.3.82" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.82.tgz#7d13ae4437d2a783de3f4efba96b186c540b67b1" - integrity sha512-NI4nB2IWGcU4JVT1AE8kBb/dFor4zjLHMLsOROPahppeHrR0FG5uslxMmkp/thO1MvPjM2xhlKoY29/I60s0ew== - -elliptic@^6.0.0: - version "6.4.1" - resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.4.1.tgz#c2d0b7776911b86722c632c3c06c60f2f819939a" - integrity sha512-BsXLz5sqX8OHcsh7CqBMztyXARmGQ3LWPtGjJi6DiJHq5C/qvi9P3OqgswKSDftbu8+IoI/QDTAm2fFnQ9SZSQ== - dependencies: - bn.js "^4.4.0" - brorand "^1.0.1" - hash.js "^1.0.0" - hmac-drbg "^1.0.0" - inherits "^2.0.1" - minimalistic-assert "^1.0.0" - minimalistic-crypto-utils "^1.0.0" - -email-addresses@^3.0.1: - version "3.0.3" - resolved "https://registry.yarnpkg.com/email-addresses/-/email-addresses-3.0.3.tgz#fc3c6952f68da24239914e982c8a7783bc2ed96d" - integrity sha512-kUlSC06PVvvjlMRpNIl3kR1NRXLEe86VQ7N0bQeaCZb2g+InShCeHQp/JvyYNTugMnRN2NvJhHlc3q12MWbbpg== - -emoji-regex@^6.5.1: - version "6.5.1" - resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-6.5.1.tgz#9baea929b155565c11ea41c6626eaa65cef992c2" - integrity sha512-PAHp6TxrCy7MGMFidro8uikr+zlJJKJ/Q6mm2ExZ7HwkyR9lSVFfE3kt36qcwa24BQL7y0G9axycGjK1A/0uNQ== - -emojis-list@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/emojis-list/-/emojis-list-2.1.0.tgz#4daa4d9db00f9819880c79fa457ae5b09a1fd389" - integrity sha1-TapNnbAPmBmIDHn6RXrlsJof04k= - -encodeurl@~1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" - integrity sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k= - -encoding@^0.1.11: - version "0.1.12" - resolved "https://registry.yarnpkg.com/encoding/-/encoding-0.1.12.tgz#538b66f3ee62cd1ab51ec323829d1f9480c74beb" - integrity sha1-U4tm8+5izRq1HsMjgp0flIDHS+s= - dependencies: - iconv-lite "~0.4.13" - -end-of-stream@^1.0.0, end-of-stream@^1.1.0: - version "1.4.1" - resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.1.tgz#ed29634d19baba463b6ce6b80a37213eab71ec43" - integrity sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q== - dependencies: - once "^1.4.0" - -enhanced-resolve@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-4.1.0.tgz#41c7e0bfdfe74ac1ffe1e57ad6a5c6c9f3742a7f" - integrity sha512-F/7vkyTtyc/llOIn8oWclcB25KdRaiPBpZYDgJHgh/UHtpgT2p2eldQgtQnLtUvfMKPKxbRaQM/hHkvLHt1Vng== - dependencies: - graceful-fs "^4.1.2" - memory-fs "^0.4.0" - tapable "^1.0.0" - -entities@~1.1.1: - version "1.1.2" - resolved "https://registry.yarnpkg.com/entities/-/entities-1.1.2.tgz#bdfa735299664dfafd34529ed4f8522a275fea56" - integrity sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w== - -errno@^0.1.3, errno@~0.1.7: - version "0.1.7" - resolved "https://registry.yarnpkg.com/errno/-/errno-0.1.7.tgz#4684d71779ad39af177e3f007996f7c67c852618" - integrity sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg== - dependencies: - prr "~1.0.1" - -error-ex@^1.2.0, error-ex@^1.3.1: - version "1.3.2" - resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" - integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== - dependencies: - is-arrayish "^0.2.1" - -es-abstract@^1.5.1, es-abstract@^1.6.1, es-abstract@^1.7.0: - version "1.12.0" - resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.12.0.tgz#9dbbdd27c6856f0001421ca18782d786bf8a6165" - integrity sha512-C8Fx/0jFmV5IPoMOFPA9P9G5NtqW+4cOPit3MIuvR2t7Ag2K15EJTpxnHAYTzL+aYQJIESYeXZmDBfOBE1HcpA== - dependencies: - es-to-primitive "^1.1.1" - function-bind "^1.1.1" - has "^1.0.1" - is-callable "^1.1.3" - is-regex "^1.0.4" - -es-to-primitive@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.0.tgz#edf72478033456e8dda8ef09e00ad9650707f377" - integrity sha512-qZryBOJjV//LaxLTV6UC//WewneB3LcXOL9NP++ozKVXsIIIpm/2c13UDiD9Jp2eThsecw9m3jPqDwTyobcdbg== - dependencies: - is-callable "^1.1.4" - is-date-object "^1.0.1" - is-symbol "^1.0.2" - -escape-html@~1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" - integrity sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg= - -escape-string-regexp@1.0.5, escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" - integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= - -escodegen@^1.11.0, escodegen@^1.9.1: - version "1.11.0" - resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.11.0.tgz#b27a9389481d5bfd5bec76f7bb1eb3f8f4556589" - integrity sha512-IeMV45ReixHS53K/OmfKAIztN/igDHzTJUhZM3k1jMhIZWjk45SMwAtBsEXiJp3vSPmTcu6CXn7mDvFHRN66fw== - dependencies: - esprima "^3.1.3" - estraverse "^4.2.0" - esutils "^2.0.2" - optionator "^0.8.1" - optionalDependencies: - source-map "~0.6.1" - -eslint-config-react-app@^3.0.5: - version "3.0.5" - resolved "https://registry.yarnpkg.com/eslint-config-react-app/-/eslint-config-react-app-3.0.5.tgz#d199088ab486d7ccc56d40dedcb1482b01934fb2" - integrity sha512-GjPuy0pbaCkl4+9wm8p0xpl/x/AGFy3wKuju3WNVefDNDDu8T6Ap1OFMDDJbYnOAI+4jfyAE3VT06lAYcJVpdw== - dependencies: - confusing-browser-globals "^1.0.5" - -eslint-import-resolver-node@^0.3.1: - version "0.3.2" - resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.2.tgz#58f15fb839b8d0576ca980413476aab2472db66a" - integrity sha512-sfmTqJfPSizWu4aymbPr4Iidp5yKm8yDkHp+Ir3YiTHiiDfxh69mOUsmiqW6RZ9zRXFaF64GtYmN7e+8GHBv6Q== - dependencies: - debug "^2.6.9" - resolve "^1.5.0" - -eslint-loader@2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/eslint-loader/-/eslint-loader-2.1.1.tgz#2a9251523652430bfdd643efdb0afc1a2a89546a" - integrity sha512-1GrJFfSevQdYpoDzx8mEE2TDWsb/zmFuY09l6hURg1AeFIKQOvZ+vH0UPjzmd1CZIbfTV5HUkMeBmFiDBkgIsQ== - dependencies: - loader-fs-cache "^1.0.0" - loader-utils "^1.0.2" - object-assign "^4.0.1" - object-hash "^1.1.4" - rimraf "^2.6.1" - -eslint-module-utils@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.2.0.tgz#b270362cd88b1a48ad308976ce7fa54e98411746" - integrity sha1-snA2LNiLGkitMIl2zn+lTphBF0Y= - dependencies: - debug "^2.6.8" - pkg-dir "^1.0.0" - -eslint-plugin-flowtype@2.50.1: - version "2.50.1" - resolved "https://registry.yarnpkg.com/eslint-plugin-flowtype/-/eslint-plugin-flowtype-2.50.1.tgz#36d4c961ac8b9e9e1dc091d3fba0537dad34ae8a" - integrity sha512-9kRxF9hfM/O6WGZcZPszOVPd2W0TLHBtceulLTsGfwMPtiCCLnCW0ssRiOOiXyqrCA20pm1iXdXm7gQeN306zQ== - dependencies: - lodash "^4.17.10" - -eslint-plugin-import@2.14.0: - version "2.14.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.14.0.tgz#6b17626d2e3e6ad52cfce8807a845d15e22111a8" - integrity sha512-FpuRtniD/AY6sXByma2Wr0TXvXJ4nA/2/04VPlfpmUDPOpOY264x+ILiwnrk/k4RINgDAyFZByxqPUbSQ5YE7g== - dependencies: - contains-path "^0.1.0" - debug "^2.6.8" - doctrine "1.5.0" - eslint-import-resolver-node "^0.3.1" - eslint-module-utils "^2.2.0" - has "^1.0.1" - lodash "^4.17.4" - minimatch "^3.0.3" - read-pkg-up "^2.0.0" - resolve "^1.6.0" - -eslint-plugin-jsx-a11y@6.1.2: - version "6.1.2" - resolved "https://registry.yarnpkg.com/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.1.2.tgz#69bca4890b36dcf0fe16dd2129d2d88b98f33f88" - integrity sha512-7gSSmwb3A+fQwtw0arguwMdOdzmKUgnUcbSNlo+GjKLAQFuC2EZxWqG9XHRI8VscBJD5a8raz3RuxQNFW+XJbw== - dependencies: - aria-query "^3.0.0" - array-includes "^3.0.3" - ast-types-flow "^0.0.7" - axobject-query "^2.0.1" - damerau-levenshtein "^1.0.4" - emoji-regex "^6.5.1" - has "^1.0.3" - jsx-ast-utils "^2.0.1" - -eslint-plugin-react@7.11.1: - version "7.11.1" - resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.11.1.tgz#c01a7af6f17519457d6116aa94fc6d2ccad5443c" - integrity sha512-cVVyMadRyW7qsIUh3FHp3u6QHNhOgVrLQYdQEB1bPWBsgbNCHdFAeNMquBMCcZJu59eNthX053L70l7gRt4SCw== - dependencies: - array-includes "^3.0.3" - doctrine "^2.1.0" - has "^1.0.3" - jsx-ast-utils "^2.0.1" - prop-types "^15.6.2" - -eslint-scope@3.7.1: - version "3.7.1" - resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-3.7.1.tgz#3d63c3edfda02e06e01a452ad88caacc7cdcb6e8" - integrity sha1-PWPD7f2gLgbgGkUq2IyqzHzctug= - dependencies: - esrecurse "^4.1.0" - estraverse "^4.1.1" - -eslint-scope@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-4.0.0.tgz#50bf3071e9338bcdc43331794a0cb533f0136172" - integrity sha512-1G6UTDi7Jc1ELFwnR58HV4fK9OQK4S6N985f166xqXxpjU6plxFISJa2Ba9KCQuFa8RCnj/lSFJbHo7UFDBnUA== - dependencies: - esrecurse "^4.1.0" - estraverse "^4.1.1" - -eslint-utils@^1.3.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-1.3.1.tgz#9a851ba89ee7c460346f97cf8939c7298827e512" - integrity sha512-Z7YjnIldX+2XMcjr7ZkgEsOj/bREONV60qYeB/bjMAqqqZ4zxKyWX+BOUkdmRmA9riiIPVvo5x86m5elviOk0Q== - -eslint-visitor-keys@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz#3f3180fb2e291017716acb4c9d6d5b5c34a6a81d" - integrity sha512-qzm/XxIbxm/FHyH341ZrbnMUpe+5Bocte9xkmFMzPMjRaZMcXww+MpBptFvtU+79L362nqiLhekCxCxDPaUMBQ== - -eslint@5.6.0: - version "5.6.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-5.6.0.tgz#b6f7806041af01f71b3f1895cbb20971ea4b6223" - integrity sha512-/eVYs9VVVboX286mBK7bbKnO1yamUy2UCRjiY6MryhQL2PaaXCExsCQ2aO83OeYRhU2eCU/FMFP+tVMoOrzNrA== - dependencies: - "@babel/code-frame" "^7.0.0" - ajv "^6.5.3" - chalk "^2.1.0" - cross-spawn "^6.0.5" - debug "^3.1.0" - doctrine "^2.1.0" - eslint-scope "^4.0.0" - eslint-utils "^1.3.1" - eslint-visitor-keys "^1.0.0" - espree "^4.0.0" - esquery "^1.0.1" - esutils "^2.0.2" - file-entry-cache "^2.0.0" - functional-red-black-tree "^1.0.1" - glob "^7.1.2" - globals "^11.7.0" - ignore "^4.0.6" - imurmurhash "^0.1.4" - inquirer "^6.1.0" - is-resolvable "^1.1.0" - js-yaml "^3.12.0" - json-stable-stringify-without-jsonify "^1.0.1" - levn "^0.3.0" - lodash "^4.17.5" - minimatch "^3.0.4" - mkdirp "^0.5.1" - natural-compare "^1.4.0" - optionator "^0.8.2" - path-is-inside "^1.0.2" - pluralize "^7.0.0" - progress "^2.0.0" - regexpp "^2.0.0" - require-uncached "^1.0.3" - semver "^5.5.1" - strip-ansi "^4.0.0" - strip-json-comments "^2.0.1" - table "^4.0.3" - text-table "^0.2.0" - -espree@^4.0.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/espree/-/espree-4.1.0.tgz#728d5451e0fd156c04384a7ad89ed51ff54eb25f" - integrity sha512-I5BycZW6FCVIub93TeVY1s7vjhP9CY6cXCznIRfiig7nRviKZYdRnj/sHEWC6A7WE9RDWOFq9+7OsWSYz8qv2w== - dependencies: - acorn "^6.0.2" - acorn-jsx "^5.0.0" - eslint-visitor-keys "^1.0.0" - -esprima@^3.1.3: - version "3.1.3" - resolved "https://registry.yarnpkg.com/esprima/-/esprima-3.1.3.tgz#fdca51cee6133895e3c88d535ce49dbff62a4633" - integrity sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM= - -esprima@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" - integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== - -esquery@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.0.1.tgz#406c51658b1f5991a5f9b62b1dc25b00e3e5c708" - integrity sha512-SmiyZ5zIWH9VM+SRUReLS5Q8a7GxtRdxEBVZpm98rJM7Sb+A9DVCndXfkeFUd3byderg+EbDkfnevfCwynWaNA== - dependencies: - estraverse "^4.0.0" - -esrecurse@^4.1.0: - version "4.2.1" - resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.2.1.tgz#007a3b9fdbc2b3bb87e4879ea19c92fdbd3942cf" - integrity sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ== - dependencies: - estraverse "^4.1.0" - -estraverse@^4.0.0, estraverse@^4.1.0, estraverse@^4.1.1, estraverse@^4.2.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.2.0.tgz#0dee3fed31fcd469618ce7342099fc1afa0bdb13" - integrity sha1-De4/7TH81GlhjOc0IJn8GvoL2xM= - -esutils@^2.0.0, esutils@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.2.tgz#0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b" - integrity sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs= - -etag@~1.8.1: - version "1.8.1" - resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" - integrity sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc= - -eventemitter3@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-3.1.0.tgz#090b4d6cdbd645ed10bf750d4b5407942d7ba163" - integrity sha512-ivIvhpq/Y0uSjcHDcOIccjmYjGLcP09MFGE7ysAwkAvkXfpZlC985pH2/ui64DKazbTW/4kN3yqozUxlXzI6cA== - -events@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/events/-/events-1.1.1.tgz#9ebdb7635ad099c70dcc4c2a1f5004288e8bd924" - integrity sha1-nr23Y1rQmccNzEwqH1AEKI6L2SQ= - -eventsource@0.1.6: - version "0.1.6" - resolved "https://registry.yarnpkg.com/eventsource/-/eventsource-0.1.6.tgz#0acede849ed7dd1ccc32c811bb11b944d4f29232" - integrity sha1-Cs7ehJ7X3RzMMsgRuxG5RNTykjI= - dependencies: - original ">=0.0.5" - -evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz#7fcbdb198dc71959432efe13842684e0525acb02" - integrity sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA== - dependencies: - md5.js "^1.3.4" - safe-buffer "^5.1.1" - -exec-sh@^0.2.0: - version "0.2.2" - resolved "https://registry.yarnpkg.com/exec-sh/-/exec-sh-0.2.2.tgz#2a5e7ffcbd7d0ba2755bdecb16e5a427dfbdec36" - integrity sha512-FIUCJz1RbuS0FKTdaAafAByGS0CPvU3R0MeHxgtl+djzCc//F8HakL8GzmVNZanasTbTAY/3DRFA0KpVqj/eAw== - dependencies: - merge "^1.2.0" - -execa@^0.10.0: - version "0.10.0" - resolved "https://registry.yarnpkg.com/execa/-/execa-0.10.0.tgz#ff456a8f53f90f8eccc71a96d11bdfc7f082cb50" - integrity sha512-7XOMnz8Ynx1gGo/3hyV9loYNPWM94jG3+3T3Y8tsfSstFmETmENCMU/A/zj8Lyaj1lkgEepKepvd6240tBRvlw== - dependencies: - cross-spawn "^6.0.0" - get-stream "^3.0.0" - is-stream "^1.1.0" - npm-run-path "^2.0.0" - p-finally "^1.0.0" - signal-exit "^3.0.0" - strip-eof "^1.0.0" - -execa@^0.7.0: - version "0.7.0" - resolved "https://registry.yarnpkg.com/execa/-/execa-0.7.0.tgz#944becd34cc41ee32a63a9faf27ad5a65fc59777" - integrity sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c= - dependencies: - cross-spawn "^5.0.1" - get-stream "^3.0.0" - is-stream "^1.1.0" - npm-run-path "^2.0.0" - p-finally "^1.0.0" - signal-exit "^3.0.0" - strip-eof "^1.0.0" - -exit@^0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c" - integrity sha1-BjJjj42HfMghB9MKD/8aF8uhzQw= - -expand-brackets@^0.1.4: - version "0.1.5" - resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-0.1.5.tgz#df07284e342a807cd733ac5af72411e581d1177b" - integrity sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s= - dependencies: - is-posix-bracket "^0.1.0" - -expand-brackets@^2.1.4: - version "2.1.4" - resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-2.1.4.tgz#b77735e315ce30f6b6eff0f83b04151a22449622" - integrity sha1-t3c14xXOMPa27/D4OwQVGiJEliI= - dependencies: - debug "^2.3.3" - define-property "^0.2.5" - extend-shallow "^2.0.1" - posix-character-classes "^0.1.0" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.1" - -expand-range@^1.8.1: - version "1.8.2" - resolved "https://registry.yarnpkg.com/expand-range/-/expand-range-1.8.2.tgz#a299effd335fe2721ebae8e257ec79644fc85337" - integrity sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc= - dependencies: - fill-range "^2.1.0" - -expand-tilde@^2.0.0, expand-tilde@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/expand-tilde/-/expand-tilde-2.0.2.tgz#97e801aa052df02454de46b02bf621642cdc8502" - integrity sha1-l+gBqgUt8CRU3kawK/YhZCzchQI= - dependencies: - homedir-polyfill "^1.0.1" - -expect@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/expect/-/expect-23.6.0.tgz#1e0c8d3ba9a581c87bd71fb9bc8862d443425f98" - integrity sha512-dgSoOHgmtn/aDGRVFWclQyPDKl2CQRq0hmIEoUAuQs/2rn2NcvCWcSCovm6BLeuB/7EZuLGu2QfnR+qRt5OM4w== - dependencies: - ansi-styles "^3.2.0" - jest-diff "^23.6.0" - jest-get-type "^22.1.0" - jest-matcher-utils "^23.6.0" - jest-message-util "^23.4.0" - jest-regex-util "^23.3.0" - -express@^4.16.2: - version "4.16.4" - resolved "https://registry.yarnpkg.com/express/-/express-4.16.4.tgz#fddef61926109e24c515ea97fd2f1bdbf62df12e" - integrity sha512-j12Uuyb4FMrd/qQAm6uCHAkPtO8FDTRJZBDd5D2KOL2eLaz1yUNdUB/NOIyq0iU4q4cFarsUCrnFDPBcnksuOg== - dependencies: - accepts "~1.3.5" - array-flatten "1.1.1" - body-parser "1.18.3" - content-disposition "0.5.2" - content-type "~1.0.4" - cookie "0.3.1" - cookie-signature "1.0.6" - debug "2.6.9" - depd "~1.1.2" - encodeurl "~1.0.2" - escape-html "~1.0.3" - etag "~1.8.1" - finalhandler "1.1.1" - fresh "0.5.2" - merge-descriptors "1.0.1" - methods "~1.1.2" - on-finished "~2.3.0" - parseurl "~1.3.2" - path-to-regexp "0.1.7" - proxy-addr "~2.0.4" - qs "6.5.2" - range-parser "~1.2.0" - safe-buffer "5.1.2" - send "0.16.2" - serve-static "1.13.2" - setprototypeof "1.1.0" - statuses "~1.4.0" - type-is "~1.6.16" - utils-merge "1.0.1" - vary "~1.1.2" - -extend-shallow@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-2.0.1.tgz#51af7d614ad9a9f610ea1bafbb989d6b1c56890f" - integrity sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8= - dependencies: - is-extendable "^0.1.0" - -extend-shallow@^3.0.0, extend-shallow@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-3.0.2.tgz#26a71aaf073b39fb2127172746131c2704028db8" - integrity sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg= - dependencies: - assign-symbols "^1.0.0" - is-extendable "^1.0.1" - -extend@~3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" - integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== - -external-editor@^3.0.0: - version "3.0.3" - resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-3.0.3.tgz#5866db29a97826dbe4bf3afd24070ead9ea43a27" - integrity sha512-bn71H9+qWoOQKyZDo25mOMVpSmXROAsTJVVVYzrrtol3d4y+AsKjf4Iwl2Q+IuT0kFSQ1qo166UuIwqYq7mGnA== - dependencies: - chardet "^0.7.0" - iconv-lite "^0.4.24" - tmp "^0.0.33" - -extglob@^0.3.1: - version "0.3.2" - resolved "https://registry.yarnpkg.com/extglob/-/extglob-0.3.2.tgz#2e18ff3d2f49ab2765cec9023f011daa8d8349a1" - integrity sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE= - dependencies: - is-extglob "^1.0.0" - -extglob@^2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/extglob/-/extglob-2.0.4.tgz#ad00fe4dc612a9232e8718711dc5cb5ab0285543" - integrity sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw== - dependencies: - array-unique "^0.3.2" - define-property "^1.0.0" - expand-brackets "^2.1.4" - extend-shallow "^2.0.1" - fragment-cache "^0.2.1" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.1" - -extsprintf@1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05" - integrity sha1-lpGEQOMEGnpBT4xS48V06zw+HgU= - -extsprintf@^1.2.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.0.tgz#e2689f8f356fad62cca65a3a91c5df5f9551692f" - integrity sha1-4mifjzVvrWLMplo6kcXfX5VRaS8= - -fast-deep-equal@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz#c053477817c86b51daa853c81e059b733d023614" - integrity sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ= - -fast-deep-equal@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz#7b05218ddf9667bf7f370bf7fdb2cb15fdd0aa49" - integrity sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk= - -fast-glob@^2.0.2: - version "2.2.3" - resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-2.2.3.tgz#d09d378e9ef6b0076a0fa1ba7519d9d4d9699c28" - integrity sha512-NiX+JXjnx43RzvVFwRWfPKo4U+1BrK5pJPsHQdKMlLoFHrrGktXglQhHliSihWAq+m1z6fHk3uwGHrtRbS9vLA== - dependencies: - "@mrmlnc/readdir-enhanced" "^2.2.1" - "@nodelib/fs.stat" "^1.0.1" - glob-parent "^3.1.0" - is-glob "^4.0.0" - merge2 "^1.2.1" - micromatch "^3.1.10" - -fast-json-stable-stringify@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz#d5142c0caee6b1189f87d3a76111064f86c8bbf2" - integrity sha1-1RQsDK7msRifh9OnYREGT4bIu/I= - -fast-levenshtein@~2.0.4: - version "2.0.6" - resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" - integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc= - -fastparse@^1.1.1: - version "1.1.2" - resolved "https://registry.yarnpkg.com/fastparse/-/fastparse-1.1.2.tgz#91728c5a5942eced8531283c79441ee4122c35a9" - integrity sha512-483XLLxTVIwWK3QTrMGRqUfUpoOs/0hbQrl2oz4J0pAcm3A3bu84wxTFqGqkJzewCLdME38xJLJAxBABfQT8sQ== - -faye-websocket@^0.10.0: - version "0.10.0" - resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.10.0.tgz#4e492f8d04dfb6f89003507f6edbf2d501e7c6f4" - integrity sha1-TkkvjQTftviQA1B/btvy1QHnxvQ= - dependencies: - websocket-driver ">=0.5.1" - -faye-websocket@~0.11.0: - version "0.11.1" - resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.11.1.tgz#f0efe18c4f56e4f40afc7e06c719fd5ee6188f38" - integrity sha1-8O/hjE9W5PQK/H4Gxxn9XuYYjzg= - dependencies: - websocket-driver ">=0.5.1" - -fb-watchman@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/fb-watchman/-/fb-watchman-2.0.0.tgz#54e9abf7dfa2f26cd9b1636c588c1afc05de5d58" - integrity sha1-VOmr99+i8mzZsWNsWIwa/AXeXVg= - dependencies: - bser "^2.0.0" - -fbjs@^0.8.5: - version "0.8.17" - resolved "https://registry.yarnpkg.com/fbjs/-/fbjs-0.8.17.tgz#c4d598ead6949112653d6588b01a5cdcd9f90fdd" - integrity sha1-xNWY6taUkRJlPWWIsBpc3Nn5D90= - dependencies: - core-js "^1.0.0" - isomorphic-fetch "^2.1.1" - loose-envify "^1.0.0" - object-assign "^4.1.0" - promise "^7.1.1" - setimmediate "^1.0.5" - ua-parser-js "^0.7.18" - -figgy-pudding@^3.1.0, figgy-pudding@^3.5.1: - version "3.5.1" - resolved "https://registry.yarnpkg.com/figgy-pudding/-/figgy-pudding-3.5.1.tgz#862470112901c727a0e495a80744bd5baa1d6790" - integrity sha512-vNKxJHTEKNThjfrdJwHc7brvM6eVevuO5nTj6ez8ZQ1qbXTvGthucRF7S4vf2cr71QVnT70V34v0S1DyQsti0w== - -figures@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/figures/-/figures-2.0.0.tgz#3ab1a2d2a62c8bfb431a0c94cb797a2fce27c962" - integrity sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI= - dependencies: - escape-string-regexp "^1.0.5" - -file-entry-cache@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-2.0.0.tgz#c392990c3e684783d838b8c84a45d8a048458361" - integrity sha1-w5KZDD5oR4PYOLjISkXYoEhFg2E= - dependencies: - flat-cache "^1.2.1" - object-assign "^4.0.1" - -file-loader@2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/file-loader/-/file-loader-2.0.0.tgz#39749c82f020b9e85901dcff98e8004e6401cfde" - integrity sha512-YCsBfd1ZGCyonOKLxPiKPdu+8ld9HAaMEvJewzz+b2eTF7uL5Zm/HdBF6FjCrpCMRq25Mi0U1gl4pwn2TlH7hQ== - dependencies: - loader-utils "^1.0.2" - schema-utils "^1.0.0" - -file-saver@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/file-saver/-/file-saver-2.0.0.tgz#74eef7748159503b60008a15af2f1930fb5df7ab" - integrity sha512-cYM1ic5DAkg25pHKgi5f10ziAM7RJU37gaH1XQlyNDrtUnzhC/dfoV9zf2OmF0RMKi42jG5B0JWBnPQqyj/G6g== - -filename-regex@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/filename-regex/-/filename-regex-2.0.1.tgz#c1c4b9bee3e09725ddb106b75c1e301fe2f18b26" - integrity sha1-wcS5vuPglyXdsQa3XB4wH+LxiyY= - -filename-reserved-regex@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/filename-reserved-regex/-/filename-reserved-regex-1.0.0.tgz#e61cf805f0de1c984567d0386dc5df50ee5af7e4" - integrity sha1-5hz4BfDeHJhFZ9A4bcXfUO5a9+Q= - -filenamify-url@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/filenamify-url/-/filenamify-url-1.0.0.tgz#b32bd81319ef5863b73078bed50f46a4f7975f50" - integrity sha1-syvYExnvWGO3MHi+1Q9GpPeXX1A= - dependencies: - filenamify "^1.0.0" - humanize-url "^1.0.0" - -filenamify@^1.0.0: - version "1.2.1" - resolved "https://registry.yarnpkg.com/filenamify/-/filenamify-1.2.1.tgz#a9f2ffd11c503bed300015029272378f1f1365a5" - integrity sha1-qfL/0RxQO+0wABUCknI3jx8TZaU= - dependencies: - filename-reserved-regex "^1.0.0" - strip-outer "^1.0.0" - trim-repeated "^1.0.0" - -fileset@^2.0.2: - version "2.0.3" - resolved "https://registry.yarnpkg.com/fileset/-/fileset-2.0.3.tgz#8e7548a96d3cc2327ee5e674168723a333bba2a0" - integrity sha1-jnVIqW08wjJ+5eZ0FocjozO7oqA= - dependencies: - glob "^7.0.3" - minimatch "^3.0.3" - -filesize@3.6.1: - version "3.6.1" - resolved "https://registry.yarnpkg.com/filesize/-/filesize-3.6.1.tgz#090bb3ee01b6f801a8a8be99d31710b3422bb317" - integrity sha512-7KjR1vv6qnicaPMi1iiTcI85CyYwRO/PSFCu6SvqL8jN2Wjt/NIYQTFtFs7fSDCYOstUkEWIQGFUg5YZQfjlcg== - -fill-range@^2.1.0: - version "2.2.4" - resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-2.2.4.tgz#eb1e773abb056dcd8df2bfdf6af59b8b3a936565" - integrity sha512-cnrcCbj01+j2gTG921VZPnHbjmdAf8oQV/iGeV2kZxGSyfYjjTyY79ErsK1WJWMpw6DaApEX72binqJE+/d+5Q== - dependencies: - is-number "^2.1.0" - isobject "^2.0.0" - randomatic "^3.0.0" - repeat-element "^1.1.2" - repeat-string "^1.5.2" - -fill-range@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-4.0.0.tgz#d544811d428f98eb06a63dc402d2403c328c38f7" - integrity sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc= - dependencies: - extend-shallow "^2.0.1" - is-number "^3.0.0" - repeat-string "^1.6.1" - to-regex-range "^2.1.0" - -finalhandler@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.1.1.tgz#eebf4ed840079c83f4249038c9d703008301b105" - integrity sha512-Y1GUDo39ez4aHAw7MysnUD5JzYX+WaIj8I57kO3aEPT1fFRL4sr7mjei97FgnwhAyyzRYmQZaTHb2+9uZ1dPtg== - dependencies: - debug "2.6.9" - encodeurl "~1.0.2" - escape-html "~1.0.3" - on-finished "~2.3.0" - parseurl "~1.3.2" - statuses "~1.4.0" - unpipe "~1.0.0" - -find-cache-dir@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-0.1.1.tgz#c8defae57c8a52a8a784f9e31c57c742e993a0b9" - integrity sha1-yN765XyKUqinhPnjHFfHQumToLk= - dependencies: - commondir "^1.0.1" - mkdirp "^0.5.1" - pkg-dir "^1.0.0" - -find-cache-dir@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-1.0.0.tgz#9288e3e9e3cc3748717d39eade17cf71fc30ee6f" - integrity sha1-kojj6ePMN0hxfTnq3hfPcfww7m8= - dependencies: - commondir "^1.0.1" - make-dir "^1.0.0" - pkg-dir "^2.0.0" - -find-cache-dir@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-2.0.0.tgz#4c1faed59f45184530fb9d7fa123a4d04a98472d" - integrity sha512-LDUY6V1Xs5eFskUVYtIwatojt6+9xC9Chnlk/jYOOvn3FAFfSaWddxahDGyNHh0b2dMXa6YW2m0tk8TdVaXHlA== - dependencies: - commondir "^1.0.1" - make-dir "^1.0.0" - pkg-dir "^3.0.0" - -find-up@3.0.0, find-up@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73" - integrity sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg== - dependencies: - locate-path "^3.0.0" - -find-up@^1.0.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f" - integrity sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8= - dependencies: - path-exists "^2.0.0" - pinkie-promise "^2.0.0" - -find-up@^2.0.0, find-up@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7" - integrity sha1-RdG35QbHF93UgndaK3eSCjwMV6c= - dependencies: - locate-path "^2.0.0" - -flat-cache@^1.2.1: - version "1.3.0" - resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-1.3.0.tgz#d3030b32b38154f4e3b7e9c709f490f7ef97c481" - integrity sha1-0wMLMrOBVPTjt+nHCfSQ9++XxIE= - dependencies: - circular-json "^0.3.1" - del "^2.0.2" - graceful-fs "^4.1.2" - write "^0.2.1" - -flatten@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/flatten/-/flatten-1.0.2.tgz#dae46a9d78fbe25292258cc1e780a41d95c03782" - integrity sha1-2uRqnXj74lKSJYzB54CkHZXAN4I= - -flush-write-stream@^1.0.0: - version "1.0.3" - resolved "https://registry.yarnpkg.com/flush-write-stream/-/flush-write-stream-1.0.3.tgz#c5d586ef38af6097650b49bc41b55fabb19f35bd" - integrity sha512-calZMC10u0FMUqoiunI2AiGIIUtUIvifNwkHhNupZH4cbNnW1Itkoh/Nf5HFYmDrwWPjrUxpkZT0KhuCq0jmGw== - dependencies: - inherits "^2.0.1" - readable-stream "^2.0.4" - -follow-redirects@^1.0.0: - version "1.5.9" - resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.5.9.tgz#c9ed9d748b814a39535716e531b9196a845d89c6" - integrity sha512-Bh65EZI/RU8nx0wbYF9shkFZlqLP+6WT/5FnA3cE/djNSuKNHJEinGGZgu/cQEkeeb2GdFOgenAmn8qaqYke2w== - dependencies: - debug "=3.1.0" - -for-in@^0.1.3: - version "0.1.8" - resolved "https://registry.yarnpkg.com/for-in/-/for-in-0.1.8.tgz#d8773908e31256109952b1fdb9b3fa867d2775e1" - integrity sha1-2Hc5COMSVhCZUrH9ubP6hn0ndeE= - -for-in@^1.0.1, for-in@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" - integrity sha1-gQaNKVqBQuwKxybG4iAMMPttXoA= - -for-own@^0.1.3, for-own@^0.1.4: - version "0.1.5" - resolved "https://registry.yarnpkg.com/for-own/-/for-own-0.1.5.tgz#5265c681a4f294dabbf17c9509b6763aa84510ce" - integrity sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4= - dependencies: - for-in "^1.0.1" - -for-own@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/for-own/-/for-own-1.0.0.tgz#c63332f415cedc4b04dbfe70cf836494c53cb44b" - integrity sha1-xjMy9BXO3EsE2/5wz4NklMU8tEs= - dependencies: - for-in "^1.0.1" - -forever-agent@~0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" - integrity sha1-+8cfDEGt6zf5bFd60e1C2P2sypE= - -fork-ts-checker-webpack-plugin-alt@0.4.14: - version "0.4.14" - resolved "https://registry.yarnpkg.com/fork-ts-checker-webpack-plugin-alt/-/fork-ts-checker-webpack-plugin-alt-0.4.14.tgz#1bd6c0d97b7d4682dde61255fcbd78b72f7473a0" - integrity sha512-s0wjOBuPdylMRBzZ4yO8LSJuzem3g0MYZFxsjRXrFDQyL5KJBVSq30+GoHM/t/r2CRU4tI6zi04sq6OXK0UYnw== - dependencies: - babel-code-frame "^6.22.0" - chalk "^2.4.1" - chokidar "^2.0.4" - lodash "^4.17.11" - micromatch "^3.1.10" - minimatch "^3.0.4" - resolve "^1.5.0" - tapable "^1.0.0" - -form-data@~2.3.2: - version "2.3.3" - resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.3.tgz#dcce52c05f644f298c6a7ab936bd724ceffbf3a6" - integrity sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ== - dependencies: - asynckit "^0.4.0" - combined-stream "^1.0.6" - mime-types "^2.1.12" - -forwarded@~0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.1.2.tgz#98c23dab1175657b8c0573e8ceccd91b0ff18c84" - integrity sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ= - -fragment-cache@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/fragment-cache/-/fragment-cache-0.2.1.tgz#4290fad27f13e89be7f33799c6bc5a0abfff0d19" - integrity sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk= - dependencies: - map-cache "^0.2.2" - -fresh@0.5.2: - version "0.5.2" - resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" - integrity sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac= - -from2@^2.1.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/from2/-/from2-2.3.0.tgz#8bfb5502bde4a4d36cfdeea007fcca21d7e382af" - integrity sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8= - dependencies: - inherits "^2.0.1" - readable-stream "^2.0.0" - -fs-extra@7.0.0, fs-extra@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-7.0.0.tgz#8cc3f47ce07ef7b3593a11b9fb245f7e34c041d6" - integrity sha512-EglNDLRpmaTWiD/qraZn6HREAEAHJcJOmxNEYwq6xeMKnVMAy3GUcFB+wXt2C6k4CNvB/mP1y/U3dzvKKj5OtQ== - dependencies: - graceful-fs "^4.1.2" - jsonfile "^4.0.0" - universalify "^0.1.0" - -fs-extra@^4.0.2: - version "4.0.3" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-4.0.3.tgz#0d852122e5bc5beb453fb028e9c0c9bf36340c94" - integrity sha512-q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg== - dependencies: - graceful-fs "^4.1.2" - jsonfile "^4.0.0" - universalify "^0.1.0" - -fs-minipass@^1.2.5: - version "1.2.5" - resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-1.2.5.tgz#06c277218454ec288df77ada54a03b8702aacb9d" - integrity sha512-JhBl0skXjUPCFH7x6x61gQxrKyXsxB5gcgePLZCwfyCGGsTISMoIeObbrvVeP6Xmyaudw4TT43qV2Gz+iyd2oQ== - dependencies: - minipass "^2.2.1" - -fs-write-stream-atomic@^1.0.8: - version "1.0.10" - resolved "https://registry.yarnpkg.com/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz#b47df53493ef911df75731e70a9ded0189db40c9" - integrity sha1-tH31NJPvkR33VzHnCp3tAYnbQMk= - dependencies: - graceful-fs "^4.1.2" - iferr "^0.1.5" - imurmurhash "^0.1.4" - readable-stream "1 || 2" - -fs.realpath@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" - integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= - -fsevents@1.2.4, fsevents@^1.2.2, fsevents@^1.2.3: - version "1.2.4" - resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.2.4.tgz#f41dcb1af2582af3692da36fc55cbd8e1041c426" - integrity sha512-z8H8/diyk76B7q5wg+Ud0+CqzcAF3mBBI/bA5ne5zrRUUIvNkJY//D3BqyH571KuAC4Nr7Rw7CjWX4r0y9DvNg== - dependencies: - nan "^2.9.2" - node-pre-gyp "^0.10.0" - -function-bind@^1.1.0, function-bind@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" - integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== - -functional-red-black-tree@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327" - integrity sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc= - -gauge@~2.7.3: - version "2.7.4" - resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7" - integrity sha1-LANAXHU4w51+s3sxcCLjJfsBi/c= - dependencies: - aproba "^1.0.3" - console-control-strings "^1.0.0" - has-unicode "^2.0.0" - object-assign "^4.1.0" - signal-exit "^3.0.0" - string-width "^1.0.1" - strip-ansi "^3.0.1" - wide-align "^1.1.0" - -get-caller-file@^1.0.1: - version "1.0.3" - resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-1.0.3.tgz#f978fa4c90d1dfe7ff2d6beda2a515e713bdcf4a" - integrity sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w== - -get-own-enumerable-property-symbols@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.0.tgz#b877b49a5c16aefac3655f2ed2ea5b684df8d203" - integrity sha512-CIJYJC4GGF06TakLg8z4GQKvDsx9EMspVxOYih7LerEL/WosUnFIww45CGfxfeKHqlg3twgUrYRT1O3WQqjGCg== - -get-stream@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-3.0.0.tgz#8e943d1358dc37555054ecbe2edb05aa174ede14" - integrity sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ= - -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" - integrity sha1-3BXKHGcjh8p2vTesCjlbogQqLCg= - -getpass@^0.1.1: - version "0.1.7" - resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa" - integrity sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo= - dependencies: - assert-plus "^1.0.0" - -gh-pages@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/gh-pages/-/gh-pages-2.0.1.tgz#aefe47a43b8d9d2aa3130576b33fe95641e29a2f" - integrity sha512-uFlk3bukljeiWKQ2XvPfjcSi/ou7IfoDf2p+Fj672saLAr8bnOdFVqI/JSgrSgInKpCg5BksxEwGUl++dbg8Dg== - dependencies: - async "^2.6.1" - commander "^2.18.0" - email-addresses "^3.0.1" - filenamify-url "^1.0.0" - fs-extra "^7.0.0" - globby "^6.1.0" - graceful-fs "^4.1.11" - rimraf "^2.6.2" - -glob-base@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/glob-base/-/glob-base-0.3.0.tgz#dbb164f6221b1c0b1ccf82aea328b497df0ea3c4" - integrity sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q= - dependencies: - glob-parent "^2.0.0" - is-glob "^2.0.0" - -glob-parent@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-2.0.0.tgz#81383d72db054fcccf5336daa902f182f6edbb28" - integrity sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg= - dependencies: - is-glob "^2.0.0" - -glob-parent@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-3.1.0.tgz#9e6af6299d8d3bd2bd40430832bd113df906c5ae" - integrity sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4= - dependencies: - is-glob "^3.1.0" - path-dirname "^1.0.0" - -glob-to-regexp@^0.3.0: - version "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.3, glob@^7.0.5, glob@^7.1.1, glob@^7.1.2: - version "7.1.3" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.3.tgz#3960832d3f1574108342dafd3a67b332c0969df1" - integrity sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ== - dependencies: - fs.realpath "^1.0.0" - inflight "^1.0.4" - inherits "2" - minimatch "^3.0.4" - once "^1.3.0" - path-is-absolute "^1.0.0" - -global-modules@1.0.0, global-modules@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/global-modules/-/global-modules-1.0.0.tgz#6d770f0eb523ac78164d72b5e71a8877265cc3ea" - integrity sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg== - dependencies: - global-prefix "^1.0.1" - is-windows "^1.0.1" - resolve-dir "^1.0.0" - -global-prefix@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/global-prefix/-/global-prefix-1.0.2.tgz#dbf743c6c14992593c655568cb66ed32c0122ebe" - integrity sha1-2/dDxsFJklk8ZVVoy2btMsASLr4= - dependencies: - expand-tilde "^2.0.2" - homedir-polyfill "^1.0.1" - ini "^1.3.4" - is-windows "^1.0.1" - which "^1.2.14" - -globals@^11.1.0, globals@^11.7.0: - version "11.8.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-11.8.0.tgz#c1ef45ee9bed6badf0663c5cb90e8d1adec1321d" - integrity sha512-io6LkyPVuzCHBSQV9fmOwxZkUk6nIaGmxheLDgmuFv89j0fm2aqDbIXKAGfzCMHqz3HLF2Zf8WSG6VqMh2qFmA== - -globals@^9.18.0: - version "9.18.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-9.18.0.tgz#aa3896b3e69b487f17e31ed2143d69a8e30c2d8a" - integrity sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ== - -globby@8.0.1: - version "8.0.1" - resolved "https://registry.yarnpkg.com/globby/-/globby-8.0.1.tgz#b5ad48b8aa80b35b814fc1281ecc851f1d2b5b50" - integrity sha512-oMrYrJERnKBLXNLVTqhm3vPEdJ/b2ZE28xN4YARiix1NOIOBPEpOUnm844K1iu/BkphCaf2WNFwMszv8Soi1pw== - dependencies: - array-union "^1.0.1" - dir-glob "^2.0.0" - fast-glob "^2.0.2" - glob "^7.1.2" - ignore "^3.3.5" - pify "^3.0.0" - slash "^1.0.0" - -globby@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/globby/-/globby-5.0.0.tgz#ebd84667ca0dbb330b99bcfc68eac2bc54370e0d" - integrity sha1-69hGZ8oNuzMLmbz8aOrCvFQ3Dg0= - dependencies: - array-union "^1.0.1" - arrify "^1.0.0" - glob "^7.0.3" - object-assign "^4.0.1" - pify "^2.0.0" - pinkie-promise "^2.0.0" - -globby@^6.1.0: - version "6.1.0" - resolved "https://registry.yarnpkg.com/globby/-/globby-6.1.0.tgz#f5a6d70e8395e21c858fb0489d64df02424d506c" - integrity sha1-9abXDoOV4hyFj7BInWTfAkJNUGw= - dependencies: - array-union "^1.0.1" - glob "^7.0.3" - object-assign "^4.0.1" - pify "^2.0.0" - pinkie-promise "^2.0.0" - -graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.6: - version "4.1.11" - resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.11.tgz#0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658" - integrity sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg= - -growly@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/growly/-/growly-1.3.0.tgz#f10748cbe76af964b7c96c93c6bcc28af120c081" - integrity sha1-8QdIy+dq+WS3yWyTxrzCivEgwIE= - -gzip-size@5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/gzip-size/-/gzip-size-5.0.0.tgz#a55ecd99222f4c48fd8c01c625ce3b349d0a0e80" - integrity sha512-5iI7omclyqrnWw4XbXAmGhPsABkSIDQonv2K0h61lybgofWa6iZyvrI3r2zsJH4P8Nb64fFVzlvfhs0g7BBxAA== - dependencies: - duplexer "^0.1.1" - pify "^3.0.0" - -h2x-core@^1.1.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/h2x-core/-/h2x-core-1.1.1.tgz#7fb31ab28e30ebf11818e3c7d183487ecf489f9f" - integrity sha512-LdXe4Irs731knLtHgLyFrnJCumfiqXXQwKN1IMUhi37li29PLfLbMDvfK7Rk4wmgHLKP+sIITT1mcJV4QsC3nw== - dependencies: - h2x-generate "^1.1.0" - h2x-parse "^1.1.1" - h2x-traverse "^1.1.0" - -h2x-generate@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/h2x-generate/-/h2x-generate-1.1.0.tgz#c2c98c60070e1eed231e482d5826c3c5dab2a9ba" - integrity sha512-L7Hym0yb20QIjvqeULUPOeh/cyvScdOAyJ6oRlh5dF0+w92hf3OiTk1q15KBijde7jGEe+0R4aOmtW8gkPNIzg== - dependencies: - h2x-traverse "^1.1.0" - -h2x-parse@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/h2x-parse/-/h2x-parse-1.1.1.tgz#875712cd3be75cf736c610d279b8653b24f58385" - integrity sha512-WRSmPF+tIWuUXVEZaYRhcZx/JGEJx8LjZpDDtrvMr5m/GTR0NerydCik5dRzcKXPWCtfXxuJRLR4v2P4HB2B1A== - dependencies: - h2x-types "^1.1.0" - jsdom ">=11.0.0" - -h2x-plugin-jsx@^1.1.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/h2x-plugin-jsx/-/h2x-plugin-jsx-1.2.0.tgz#211fa02e5c4e0a07307b0005629923910e631c01" - integrity sha512-a7Vb3BHhJJq0dPDNdqguEyQirENkVsFtvM2YkiaT5h/fmGhmM1nDy3BLeJeSKi2tL2g9v4ykm2Z+GG9QrhDgPA== - dependencies: - h2x-types "^1.1.0" - -h2x-traverse@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/h2x-traverse/-/h2x-traverse-1.1.0.tgz#194b36c593f4e20a754dee47fa6b2288647b2271" - integrity sha512-1ND8ZbISLSUgpLHYJRvhvElITvs0g44L7RxjeXViz5XP6rooa+FtXTFLByl2Yg01zj2txubifHIuU4pgvj8l+A== - dependencies: - h2x-types "^1.1.0" - -h2x-types@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/h2x-types/-/h2x-types-1.1.0.tgz#ec0d5e3674e2207269f32976ac9c82aaff4818e6" - integrity sha512-QdH5qfLcdF209UsCdM0ZNZ9Dwm2PHvMfeLZtivBrjX3Y/df4US2pwsUC4HBfWhye/mx/t6puODeC7Oacb/Ol8g== - -handle-thing@^1.2.5: - version "1.2.5" - resolved "https://registry.yarnpkg.com/handle-thing/-/handle-thing-1.2.5.tgz#fd7aad726bf1a5fd16dfc29b2f7a6601d27139c4" - integrity sha1-/Xqtcmvxpf0W38KbL3pmAdJxOcQ= - -handlebars@^4.0.3: - version "4.0.12" - resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.0.12.tgz#2c15c8a96d46da5e266700518ba8cb8d919d5bc5" - integrity sha512-RhmTekP+FZL+XNhwS1Wf+bTTZpdLougwt5pcgA1tuz6Jcx0fpH/7z0qd71RKnZHBCxIRBHfBOnio4gViPemNzA== - dependencies: - async "^2.5.0" - optimist "^0.6.1" - source-map "^0.6.1" - optionalDependencies: - uglify-js "^3.1.4" - -har-schema@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92" - integrity sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI= - -har-validator@~5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-5.1.0.tgz#44657f5688a22cfd4b72486e81b3a3fb11742c29" - integrity sha512-+qnmNjI4OfH2ipQ9VQOw23bBd/ibtfbVdK2fYbY4acTDqKTW/YDp9McimZdDbG8iV9fZizUqQMD5xvriB146TA== - dependencies: - ajv "^5.3.0" - har-schema "^2.0.0" - -harmony-reflect@^1.4.6: - version "1.6.1" - resolved "https://registry.yarnpkg.com/harmony-reflect/-/harmony-reflect-1.6.1.tgz#c108d4f2bb451efef7a37861fdbdae72c9bdefa9" - integrity sha512-WJTeyp0JzGtHcuMsi7rw2VwtkvLa+JyfEKJCFyfcS0+CDkjQ5lHPu7zEhFZP+PDSRrEgXa5Ah0l1MbgbE41XjA== - -has-ansi@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91" - integrity sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE= - dependencies: - ansi-regex "^2.0.0" - -has-flag@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-1.0.0.tgz#9d9e793165ce017a00f00418c43f942a7b1d11fa" - integrity sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo= - -has-flag@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" - integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= - -has-symbols@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.0.tgz#ba1a8f1af2a0fc39650f5c850367704122063b44" - integrity sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q= - -has-unicode@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" - integrity sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk= - -has-value@^0.3.1: - version "0.3.1" - resolved "https://registry.yarnpkg.com/has-value/-/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f" - integrity sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8= - dependencies: - get-value "^2.0.3" - has-values "^0.1.4" - isobject "^2.0.0" - -has-value@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/has-value/-/has-value-1.0.0.tgz#18b281da585b1c5c51def24c930ed29a0be6b177" - integrity sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc= - dependencies: - get-value "^2.0.6" - has-values "^1.0.0" - isobject "^3.0.0" - -has-values@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/has-values/-/has-values-0.1.4.tgz#6d61de95d91dfca9b9a02089ad384bff8f62b771" - integrity sha1-bWHeldkd/Km5oCCJrThL/49it3E= - -has-values@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/has-values/-/has-values-1.0.0.tgz#95b0b63fec2146619a6fe57fe75628d5a39efe4f" - integrity sha1-lbC2P+whRmGab+V/51Yo1aOe/k8= - dependencies: - is-number "^3.0.0" - kind-of "^4.0.0" - -has@^1.0.0, has@^1.0.1, has@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" - integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== - dependencies: - function-bind "^1.1.1" - -hash-base@^3.0.0: - version "3.0.4" - resolved "https://registry.yarnpkg.com/hash-base/-/hash-base-3.0.4.tgz#5fc8686847ecd73499403319a6b0a3f3f6ae4918" - integrity sha1-X8hoaEfs1zSZQDMZprCj8/auSRg= - dependencies: - inherits "^2.0.1" - safe-buffer "^5.0.1" - -hash.js@^1.0.0, hash.js@^1.0.3: - version "1.1.5" - resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.5.tgz#e38ab4b85dfb1e0c40fe9265c0e9b54854c23812" - integrity sha512-eWI5HG9Np+eHV1KQhisXWwM+4EPPYe5dFX1UZZH7k/E3JzDEazVH+VGlZi6R94ZqImq+A3D1mCEtrFIfg/E7sA== - dependencies: - inherits "^2.0.3" - minimalistic-assert "^1.0.1" - -he@1.2.x: - version "1.2.0" - resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" - integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw== - -hex-color-regex@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/hex-color-regex/-/hex-color-regex-1.1.0.tgz#4c06fccb4602fe2602b3c93df82d7e7dbf1a8a8e" - integrity sha512-l9sfDFsuqtOqKDsQdqrMRk0U85RZc0RtOR9yPI7mRVOa4FsR/BVnZ0shmQRM96Ji99kYZP/7hn1cedc1+ApsTQ== - -history@^4.7.2: - version "4.7.2" - resolved "https://registry.yarnpkg.com/history/-/history-4.7.2.tgz#22b5c7f31633c5b8021c7f4a8a954ac139ee8d5b" - integrity sha512-1zkBRWW6XweO0NBcjiphtVJVsIQ+SXF29z9DVkceeaSLVMFXHool+fdCZD4spDCfZJCILPILc3bm7Bc+HRi0nA== - dependencies: - invariant "^2.2.1" - loose-envify "^1.2.0" - resolve-pathname "^2.2.0" - value-equal "^0.4.0" - warning "^3.0.0" - -hmac-drbg@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1" - integrity sha1-0nRXAQJabHdabFRXk+1QL8DGSaE= - dependencies: - hash.js "^1.0.3" - minimalistic-assert "^1.0.0" - minimalistic-crypto-utils "^1.0.1" - -hoek@4.x.x: - version "4.2.1" - resolved "https://registry.yarnpkg.com/hoek/-/hoek-4.2.1.tgz#9634502aa12c445dd5a7c5734b572bb8738aacbb" - integrity sha512-QLg82fGkfnJ/4iy1xZ81/9SIJiq1NGFUMGs6ParyjBZr6jW2Ufj/snDqTHixNlHdPNwN2RLVD0Pi3igeK9+JfA== - -hoist-non-react-statics@^2.5.0: - version "2.5.5" - resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-2.5.5.tgz#c5903cf409c0dfd908f388e619d86b9c1174cb47" - integrity sha512-rqcy4pJo55FTTLWt+bU8ukscqHeE/e9KWvsOW2b/a3afxQZhwkQdT1rPPCJ0rYXdj4vNcasY8zHTH+jF/qStxw== - -hoist-non-react-statics@^3.2.1: - version "3.2.1" - resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-3.2.1.tgz#c09c0555c84b38a7ede6912b61efddafd6e75e1e" - integrity sha512-TFsu3TV3YLY+zFTZDrN8L2DTFanObwmBLpWvJs1qfUuEQ5bTAdFcwfx2T/bsCXfM9QHSLvjfP+nihEl0yvozxw== - dependencies: - react-is "^16.3.2" - -home-or-tmp@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/home-or-tmp/-/home-or-tmp-2.0.0.tgz#e36c3f2d2cae7d746a857e38d18d5f32a7882db8" - integrity sha1-42w/LSyufXRqhX440Y1fMqeILbg= - dependencies: - os-homedir "^1.0.0" - os-tmpdir "^1.0.1" - -homedir-polyfill@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/homedir-polyfill/-/homedir-polyfill-1.0.1.tgz#4c2bbc8a758998feebf5ed68580f76d46768b4bc" - integrity sha1-TCu8inWJmP7r9e1oWA921GdotLw= - dependencies: - parse-passwd "^1.0.0" - -hoopy@^0.1.2: - version "0.1.4" - resolved "https://registry.yarnpkg.com/hoopy/-/hoopy-0.1.4.tgz#609207d661100033a9a9402ad3dea677381c1b1d" - integrity sha512-HRcs+2mr52W0K+x8RzcLzuPPmVIKMSv97RGHy0Ea9y/mpcaK+xTrjICA04KAHi4GRzxliNqNJEFYWHghy3rSfQ== - -hosted-git-info@^2.1.4: - version "2.7.1" - resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.7.1.tgz#97f236977bd6e125408930ff6de3eec6281ec047" - integrity sha512-7T/BxH19zbcCTa8XkMlbK5lTo1WtgkFi3GvdWEyNuc4Vex7/9Dqbnpsf4JMydcfj9HCg4zUWFTL3Za6lapg5/w== - -hpack.js@^2.1.6: - version "2.1.6" - resolved "https://registry.yarnpkg.com/hpack.js/-/hpack.js-2.1.6.tgz#87774c0949e513f42e84575b3c45681fade2a0b2" - integrity sha1-h3dMCUnlE/QuhFdbPEVoH63ioLI= - dependencies: - inherits "^2.0.1" - obuf "^1.0.0" - readable-stream "^2.0.1" - wbuf "^1.1.0" - -hsl-regex@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/hsl-regex/-/hsl-regex-1.0.0.tgz#d49330c789ed819e276a4c0d272dffa30b18fe6e" - integrity sha1-1JMwx4ntgZ4nakwNJy3/owsY/m4= - -hsla-regex@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/hsla-regex/-/hsla-regex-1.0.0.tgz#c1ce7a3168c8c6614033a4b5f7877f3b225f9c38" - integrity sha1-wc56MWjIxmFAM6S194d/OyJfnDg= - -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" - integrity sha512-P+M65QY2JQ5Y0G9KKdlDpo0zK+/OHptU5AaBwUfAIDJZk1MYf32Frm84EcOytfJE0t5JvkAnKlmjsXDnWzCJmQ== - -html-encoding-sniffer@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/html-encoding-sniffer/-/html-encoding-sniffer-1.0.2.tgz#e70d84b94da53aa375e11fe3a351be6642ca46f8" - integrity sha512-71lZziiDnsuabfdYiUeWdCVyKuqwWi23L8YeIgV9jSSZHCtb6wB1BKWooH7L3tn4/FuZJMVWyNaIDr4RGmaSYw== - dependencies: - whatwg-encoding "^1.0.1" - -html-entities@^1.2.0: - version "1.2.1" - resolved "https://registry.yarnpkg.com/html-entities/-/html-entities-1.2.1.tgz#0df29351f0721163515dfb9e5543e5f6eed5162f" - integrity sha1-DfKTUfByEWNRXfueVUPl9u7VFi8= - -html-minifier@^3.2.3: - version "3.5.21" - resolved "https://registry.yarnpkg.com/html-minifier/-/html-minifier-3.5.21.tgz#d0040e054730e354db008463593194015212d20c" - integrity sha512-LKUKwuJDhxNa3uf/LPR/KVjm/l3rBqtYeCOAekvG8F1vItxMUpueGd94i/asDDr8/1u7InxzFA5EeGjhhG5mMA== - dependencies: - camel-case "3.0.x" - clean-css "4.2.x" - commander "2.17.x" - he "1.2.x" - param-case "2.1.x" - relateurl "0.2.x" - uglify-js "3.4.x" - -html-webpack-plugin@4.0.0-alpha.2: - version "4.0.0-alpha.2" - resolved "https://registry.yarnpkg.com/html-webpack-plugin/-/html-webpack-plugin-4.0.0-alpha.2.tgz#7745967e389a57a098e26963f328ebe4c19b598d" - integrity sha512-tyvhjVpuGqD7QYHi1l1drMQTg5i+qRxpQEGbdnYFREgOKy7aFDf/ocQ/V1fuEDlQx7jV2zMap3Hj2nE9i5eGXw== - dependencies: - "@types/tapable" "1.0.2" - html-minifier "^3.2.3" - loader-utils "^1.1.0" - lodash "^4.17.10" - pretty-error "^2.0.2" - tapable "^1.0.0" - util.promisify "1.0.0" - -htmlparser2@~3.3.0: - version "3.3.0" - resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-3.3.0.tgz#cc70d05a59f6542e43f0e685c982e14c924a9efe" - integrity sha1-zHDQWln2VC5D8OaFyYLhTJJKnv4= - dependencies: - domelementtype "1" - domhandler "2.1" - domutils "1.1" - readable-stream "1.0" - -http-deceiver@^1.2.7: - version "1.2.7" - resolved "https://registry.yarnpkg.com/http-deceiver/-/http-deceiver-1.2.7.tgz#fa7168944ab9a519d337cb0bec7284dc3e723d87" - integrity sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc= - -http-errors@1.6.3, http-errors@~1.6.2, http-errors@~1.6.3: - version "1.6.3" - resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.6.3.tgz#8b55680bb4be283a0b5bf4ea2e38580be1d9320d" - integrity sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0= - dependencies: - depd "~1.1.2" - inherits "2.0.3" - setprototypeof "1.1.0" - statuses ">= 1.4.0 < 2" - -http-parser-js@>=0.4.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/http-parser-js/-/http-parser-js-0.5.0.tgz#d65edbede84349d0dc30320815a15d39cc3cbbd8" - integrity sha512-cZdEF7r4gfRIq7ezX9J0T+kQmJNOub71dWbgAXVHDct80TKP4MCETtZQ31xyv38UwgzkWPYF/Xc0ge55dW9Z9w== - -http-proxy-middleware@~0.18.0: - version "0.18.0" - resolved "https://registry.yarnpkg.com/http-proxy-middleware/-/http-proxy-middleware-0.18.0.tgz#0987e6bb5a5606e5a69168d8f967a87f15dd8aab" - integrity sha512-Fs25KVMPAIIcgjMZkVHJoKg9VcXcC1C8yb9JUgeDvVXY0S/zgVIhMb+qVswDIgtJe2DfckMSY2d6TuTEutlk6Q== - dependencies: - http-proxy "^1.16.2" - is-glob "^4.0.0" - lodash "^4.17.5" - micromatch "^3.1.9" - -http-proxy@^1.16.2: - version "1.17.0" - resolved "https://registry.yarnpkg.com/http-proxy/-/http-proxy-1.17.0.tgz#7ad38494658f84605e2f6db4436df410f4e5be9a" - integrity sha512-Taqn+3nNvYRfJ3bGvKfBSRwy1v6eePlm3oc/aWVxZp57DQr5Eq3xhKJi7Z4hZpS8PC3H4qI+Yly5EmFacGuA/g== - dependencies: - eventemitter3 "^3.0.0" - follow-redirects "^1.0.0" - requires-port "^1.0.0" - -http-signature@~1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.2.0.tgz#9aecd925114772f3d95b65a60abb8f7c18fbace1" - integrity sha1-muzZJRFHcvPZW2WmCruPfBj7rOE= - dependencies: - assert-plus "^1.0.0" - jsprim "^1.2.2" - sshpk "^1.7.0" - -https-browserify@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/https-browserify/-/https-browserify-1.0.0.tgz#ec06c10e0a34c0f2faf199f7fd7fc78fffd03c73" - integrity sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM= - -humanize-url@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/humanize-url/-/humanize-url-1.0.1.tgz#f4ab99e0d288174ca4e1e50407c55fbae464efff" - integrity sha1-9KuZ4NKIF0yk4eUEB8VfuuRk7/8= - dependencies: - normalize-url "^1.0.0" - strip-url-auth "^1.0.0" - -humps@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/humps/-/humps-2.0.1.tgz#dd02ea6081bd0568dc5d073184463957ba9ef9aa" - integrity sha1-3QLqYIG9BWjcXQcxhEY5V7qe+ao= - -iconv-lite@0.4.23: - version "0.4.23" - resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.23.tgz#297871f63be507adcfbfca715d0cd0eed84e9a63" - integrity sha512-neyTUVFtahjf0mB3dZT77u+8O0QB89jFdnBkd5P1JgYPbPaia3gXXOVL2fq8VyU2gMMD7SaN7QukTB/pmXYvDA== - dependencies: - safer-buffer ">= 2.1.2 < 3" - -iconv-lite@0.4.24, iconv-lite@^0.4.24, iconv-lite@^0.4.4, iconv-lite@~0.4.13: - version "0.4.24" - resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" - integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== - dependencies: - safer-buffer ">= 2.1.2 < 3" - -icss-replace-symbols@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/icss-replace-symbols/-/icss-replace-symbols-1.1.0.tgz#06ea6f83679a7749e386cfe1fe812ae5db223ded" - integrity sha1-Bupvg2ead0njhs/h/oEq5dsiPe0= - -icss-utils@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/icss-utils/-/icss-utils-2.1.0.tgz#83f0a0ec378bf3246178b6c2ad9136f135b1c962" - integrity sha1-g/Cg7DeL8yRheLbCrZE28TWxyWI= - dependencies: - postcss "^6.0.1" - -identity-obj-proxy@3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/identity-obj-proxy/-/identity-obj-proxy-3.0.0.tgz#94d2bda96084453ef36fbc5aaec37e0f79f1fc14" - integrity sha1-lNK9qWCERT7zb7xarsN+D3nx/BQ= - dependencies: - harmony-reflect "^1.4.6" - -ieee754@^1.1.4: - version "1.1.12" - resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.1.12.tgz#50bf24e5b9c8bb98af4964c941cdb0918da7b60b" - integrity sha512-GguP+DRY+pJ3soyIiGPTvdiVXjZ+DbXOxGpXn3eMvNW4x4irjqXm4wHKscC+TfxSJ0yw/S1F24tqdMNsMZTiLA== - -iferr@^0.1.5: - version "0.1.5" - resolved "https://registry.yarnpkg.com/iferr/-/iferr-0.1.5.tgz#c60eed69e6d8fdb6b3104a1fcbca1c192dc5b501" - integrity sha1-xg7taebY/bazEEofy8ocGS3FtQE= - -ignore-walk@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/ignore-walk/-/ignore-walk-3.0.1.tgz#a83e62e7d272ac0e3b551aaa82831a19b69f82f8" - integrity sha512-DTVlMx3IYPe0/JJcYP7Gxg7ttZZu3IInhuEhbchuqneY9wWe5Ojy2mXLBaQFUQmo0AW2r3qG7m1mg86js+gnlQ== - dependencies: - minimatch "^3.0.4" - -ignore@^3.3.5: - version "3.3.10" - resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.3.10.tgz#0a97fb876986e8081c631160f8f9f389157f0043" - integrity sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug== - -ignore@^4.0.6: - version "4.0.6" - resolved "https://registry.yarnpkg.com/ignore/-/ignore-4.0.6.tgz#750e3db5862087b4737ebac8207ffd1ef27b25fc" - integrity sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg== - -immer@1.7.2: - version "1.7.2" - resolved "https://registry.yarnpkg.com/immer/-/immer-1.7.2.tgz#a51e9723c50b27e132f6566facbec1c85fc69547" - integrity sha512-4Urocwu9+XLDJw4Tc6ZCg7APVjjLInCFvO4TwGsAYV5zT6YYSor14dsZR0+0tHlDIN92cFUOq+i7fC00G5vTxA== - -immutability-helper@^2.9.0: - version "2.9.0" - resolved "https://registry.yarnpkg.com/immutability-helper/-/immutability-helper-2.9.0.tgz#04a1c646300cd3a68aa5dc1daa7758da2ca75292" - integrity sha512-2LYtDuGugMLyoFV0qGvblnq39E2VVQ9m4dDktlRLVBBVV1LnUMK0rlqkbtlUjfT1UJO876OobtPlNZTEbOOYVQ== - dependencies: - invariant "^2.2.0" - -import-cwd@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/import-cwd/-/import-cwd-2.1.0.tgz#aa6cf36e722761285cb371ec6519f53e2435b0a9" - integrity sha1-qmzzbnInYShcs3HsZRn1PiQ1sKk= - dependencies: - import-from "^2.1.0" - -import-from@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/import-from/-/import-from-2.1.0.tgz#335db7f2a7affd53aaa471d4b8021dee36b7f3b1" - integrity sha1-M1238qev/VOqpHHUuAId7ja387E= - dependencies: - resolve-from "^3.0.0" - -import-local@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/import-local/-/import-local-1.0.0.tgz#5e4ffdc03f4fe6c009c6729beb29631c2f8227bc" - integrity sha512-vAaZHieK9qjGo58agRBg+bhHX3hoTZU/Oa3GESWLz7t1U62fk63aHuDJJEteXoDeTCcPmUT+z38gkHPZkkmpmQ== - dependencies: - pkg-dir "^2.0.0" - resolve-cwd "^2.0.0" - -import-local@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/import-local/-/import-local-2.0.0.tgz#55070be38a5993cf18ef6db7e961f5bee5c5a09d" - integrity sha512-b6s04m3O+s3CGSbqDIyP4R6aAwAeYlVq9+WUWep6iHa8ETRf9yei1U48C5MmfJmV9AiLYYBKPMq/W+/WRpQmCQ== - dependencies: - pkg-dir "^3.0.0" - resolve-cwd "^2.0.0" - -imurmurhash@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" - integrity sha1-khi5srkoojixPcT7a21XbyMUU+o= - -indexes-of@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/indexes-of/-/indexes-of-1.0.1.tgz#f30f716c8e2bd346c7b67d3df3915566a7c05607" - integrity sha1-8w9xbI4r00bHtn0985FVZqfAVgc= - -indexof@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/indexof/-/indexof-0.0.1.tgz#82dc336d232b9062179d05ab3293a66059fd435d" - integrity sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10= - -inflight@^1.0.4: - version "1.0.6" - resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" - integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk= - dependencies: - once "^1.3.0" - wrappy "1" - -inherits@2, inherits@2.0.3, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.1, inherits@~2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" - integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4= - -inherits@2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.1.tgz#b17d08d326b4423e568eff719f91b0b1cbdf69f1" - integrity sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE= - -ini@^1.3.4, ini@~1.3.0: - version "1.3.5" - resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.5.tgz#eee25f56db1c9ec6085e0c22778083f596abf927" - integrity sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw== - -inquirer@6.2.0, inquirer@^6.1.0: - version "6.2.0" - resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-6.2.0.tgz#51adcd776f661369dc1e894859c2560a224abdd8" - integrity sha512-QIEQG4YyQ2UYZGDC4srMZ7BjHOmNk1lR2JQj5UknBapklm6WHA+VVH7N+sUdX3A7NeCfGF8o4X1S3Ao7nAcIeg== - dependencies: - ansi-escapes "^3.0.0" - chalk "^2.0.0" - cli-cursor "^2.1.0" - cli-width "^2.0.0" - external-editor "^3.0.0" - figures "^2.0.0" - lodash "^4.17.10" - mute-stream "0.0.7" - run-async "^2.2.0" - rxjs "^6.1.0" - string-width "^2.1.0" - strip-ansi "^4.0.0" - through "^2.3.6" - -internal-ip@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/internal-ip/-/internal-ip-3.0.1.tgz#df5c99876e1d2eb2ea2d74f520e3f669a00ece27" - integrity sha512-NXXgESC2nNVtU+pqmC9e6R8B1GpKxzsAQhffvh5AL79qKnodd+L7tnEQmTiUAVngqLalPbSqRA7XGIEL5nCd0Q== - dependencies: - default-gateway "^2.6.0" - ipaddr.js "^1.5.2" - -invariant@^2.2.0, invariant@^2.2.1, invariant@^2.2.2, invariant@^2.2.4: - version "2.2.4" - resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.4.tgz#610f3c92c9359ce1db616e538008d23ff35158e6" - integrity sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA== - dependencies: - loose-envify "^1.0.0" - -invert-kv@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-1.0.0.tgz#104a8e4aaca6d3d8cd157a8ef8bfab2d7a3ffdb6" - integrity sha1-EEqOSqym09jNFXqO+L+rLXo//bY= - -invert-kv@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-2.0.0.tgz#7393f5afa59ec9ff5f67a27620d11c226e3eec02" - integrity sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA== - -ip-regex@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/ip-regex/-/ip-regex-2.1.0.tgz#fa78bf5d2e6913c911ce9f819ee5146bb6d844e9" - integrity sha1-+ni/XS5pE8kRzp+BnuUUa7bYROk= - -ip@^1.1.0, ip@^1.1.5: - version "1.1.5" - resolved "https://registry.yarnpkg.com/ip/-/ip-1.1.5.tgz#bdded70114290828c0a039e72ef25f5aaec4354a" - integrity sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo= - -ipaddr.js@1.8.0: - version "1.8.0" - resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.8.0.tgz#eaa33d6ddd7ace8f7f6fe0c9ca0440e706738b1e" - integrity sha1-6qM9bd16zo9/b+DJygRA5wZzix4= - -ipaddr.js@^1.5.2: - version "1.8.1" - resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.8.1.tgz#fa4b79fa47fd3def5e3b159825161c0a519c9427" - integrity sha1-+kt5+kf9Pe9eOxWYJRYcClGclCc= - -is-absolute-url@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-absolute-url/-/is-absolute-url-2.1.0.tgz#50530dfb84fcc9aa7dbe7852e83a37b93b9f2aa6" - integrity sha1-UFMN+4T8yap9vnhS6Do3uTufKqY= - -is-accessor-descriptor@^0.1.6: - version "0.1.6" - resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz#a9e12cb3ae8d876727eeef3843f8a0897b5c98d6" - integrity sha1-qeEss66Nh2cn7u84Q/igiXtcmNY= - dependencies: - kind-of "^3.0.2" - -is-accessor-descriptor@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz#169c2f6d3df1f992618072365c9b0ea1f6878656" - integrity sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ== - dependencies: - kind-of "^6.0.0" - -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" - integrity sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg= - dependencies: - binary-extensions "^1.0.0" - -is-buffer@^1.0.2, is-buffer@^1.1.5: - version "1.1.6" - resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" - integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w== - -is-builtin-module@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-builtin-module/-/is-builtin-module-1.0.0.tgz#540572d34f7ac3119f8f76c30cbc1b1e037affbe" - integrity sha1-VAVy0096wxGfj3bDDLwbHgN6/74= - dependencies: - builtin-modules "^1.0.0" - -is-callable@^1.1.3, is-callable@^1.1.4: - version "1.1.4" - resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.4.tgz#1e1adf219e1eeb684d691f9d6a05ff0d30a24d75" - integrity sha512-r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA== - -is-ci@^1.0.10: - version "1.2.1" - resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-1.2.1.tgz#e3779c8ee17fccf428488f6e281187f2e632841c" - integrity sha512-s6tfsaQaQi3JNciBH6shVqEDvhGut0SUXr31ag8Pd8BBbVVlcGfWhpPmEOoM6RJ5TFhbypvf5yyRw/VXW1IiWg== - dependencies: - ci-info "^1.5.0" - -is-color-stop@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-color-stop/-/is-color-stop-1.1.0.tgz#cfff471aee4dd5c9e158598fbe12967b5cdad345" - integrity sha1-z/9HGu5N1cnhWFmPvhKWe1za00U= - dependencies: - css-color-names "^0.0.4" - hex-color-regex "^1.1.0" - hsl-regex "^1.0.0" - hsla-regex "^1.0.0" - rgb-regex "^1.0.1" - rgba-regex "^1.0.0" - -is-data-descriptor@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz#0b5ee648388e2c860282e793f1856fec3f301b56" - integrity sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y= - dependencies: - kind-of "^3.0.2" - -is-data-descriptor@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz#d84876321d0e7add03990406abbbbd36ba9268c7" - integrity sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ== - dependencies: - kind-of "^6.0.0" - -is-date-object@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.1.tgz#9aa20eb6aeebbff77fbd33e74ca01b33581d3a16" - integrity sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY= - -is-descriptor@^0.1.0: - version "0.1.6" - resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-0.1.6.tgz#366d8240dde487ca51823b1ab9f07a10a78251ca" - integrity sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg== - dependencies: - is-accessor-descriptor "^0.1.6" - is-data-descriptor "^0.1.4" - kind-of "^5.0.0" - -is-descriptor@^1.0.0, is-descriptor@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-1.0.2.tgz#3b159746a66604b04f8c81524ba365c5f14d86ec" - integrity sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg== - dependencies: - is-accessor-descriptor "^1.0.0" - is-data-descriptor "^1.0.0" - kind-of "^6.0.2" - -is-directory@^0.3.1: - version "0.3.1" - resolved "https://registry.yarnpkg.com/is-directory/-/is-directory-0.3.1.tgz#61339b6f2475fc772fd9c9d83f5c8575dc154ae1" - integrity sha1-YTObbyR1/Hcv2cnYP1yFddwVSuE= - -is-dotfile@^1.0.0: - version "1.0.3" - resolved "https://registry.yarnpkg.com/is-dotfile/-/is-dotfile-1.0.3.tgz#a6a2f32ffd2dfb04f5ca25ecd0f6b83cf798a1e1" - integrity sha1-pqLzL/0t+wT1yiXs0Pa4PPeYoeE= - -is-equal-shallow@^0.1.3: - version "0.1.3" - resolved "https://registry.yarnpkg.com/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz#2238098fc221de0bcfa5d9eac4c45d638aa1c534" - integrity sha1-IjgJj8Ih3gvPpdnqxMRdY4qhxTQ= - dependencies: - is-primitive "^2.0.0" - -is-extendable@^0.1.0, is-extendable@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89" - integrity sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik= - -is-extendable@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-1.0.1.tgz#a7470f9e426733d81bd81e1155264e3a3507cab4" - integrity sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA== - dependencies: - is-plain-object "^2.0.4" - -is-extglob@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-1.0.0.tgz#ac468177c4943405a092fc8f29760c6ffc6206c0" - integrity sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA= - -is-extglob@^2.1.0, is-extglob@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" - integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI= - -is-finite@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-finite/-/is-finite-1.0.2.tgz#cc6677695602be550ef11e8b4aa6305342b6d0aa" - integrity sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko= - dependencies: - number-is-nan "^1.0.0" - -is-fullwidth-code-point@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb" - integrity sha1-754xOG8DGn8NZDr4L95QxFfvAMs= - dependencies: - number-is-nan "^1.0.0" - -is-fullwidth-code-point@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" - integrity sha1-o7MKXE8ZkYMWeqq5O+764937ZU8= - -is-generator-fn@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-generator-fn/-/is-generator-fn-1.0.0.tgz#969d49e1bb3329f6bb7f09089be26578b2ddd46a" - integrity sha1-lp1J4bszKfa7fwkIm+JleLLd1Go= - -is-glob@^2.0.0, is-glob@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-2.0.1.tgz#d096f926a3ded5600f3fdfd91198cb0888c2d863" - integrity sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM= - dependencies: - is-extglob "^1.0.0" - -is-glob@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-3.1.0.tgz#7ba5ae24217804ac70707b96922567486cc3e84a" - integrity sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo= - dependencies: - is-extglob "^2.1.0" - -is-glob@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.0.tgz#9521c76845cc2610a85203ddf080a958c2ffabc0" - integrity sha1-lSHHaEXMJhCoUgPd8ICpWML/q8A= - dependencies: - is-extglob "^2.1.1" - -is-number@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-2.1.0.tgz#01fcbbb393463a548f2f466cce16dece49db908f" - integrity sha1-Afy7s5NGOlSPL0ZszhbezknbkI8= - dependencies: - kind-of "^3.0.2" - -is-number@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195" - integrity sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU= - dependencies: - kind-of "^3.0.2" - -is-number@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-4.0.0.tgz#0026e37f5454d73e356dfe6564699867c6a7f0ff" - integrity sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ== - -is-obj@^1.0.0, is-obj@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-1.0.1.tgz#3e4729ac1f5fde025cd7d83a896dab9f4f67db0f" - integrity sha1-PkcprB9f3gJc19g6iW2rn09n2w8= - -is-path-cwd@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-path-cwd/-/is-path-cwd-1.0.0.tgz#d225ec23132e89edd38fda767472e62e65f1106d" - integrity sha1-0iXsIxMuie3Tj9p2dHLmLmXxEG0= - -is-path-in-cwd@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-path-in-cwd/-/is-path-in-cwd-1.0.1.tgz#5ac48b345ef675339bd6c7a48a912110b241cf52" - integrity sha512-FjV1RTW48E7CWM7eE/J2NJvAEEVektecDBVBE5Hh3nM1Jd0kvhHtX68Pr3xsDf857xt3Y4AkwVULK1Vku62aaQ== - dependencies: - is-path-inside "^1.0.0" - -is-path-inside@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-1.0.1.tgz#8ef5b7de50437a3fdca6b4e865ef7aa55cb48036" - integrity sha1-jvW33lBDej/cprToZe96pVy0gDY= - dependencies: - path-is-inside "^1.0.1" - -is-plain-obj@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e" - integrity sha1-caUMhCnfync8kqOQpKA7OfzVHT4= - -is-plain-object@^2.0.1, 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" - integrity sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og== - dependencies: - isobject "^3.0.1" - -is-posix-bracket@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz#3334dc79774368e92f016e6fbc0a88f5cd6e6bc4" - integrity sha1-MzTceXdDaOkvAW5vvAqI9c1ua8Q= - -is-primitive@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/is-primitive/-/is-primitive-2.0.0.tgz#207bab91638499c07b2adf240a41a87210034575" - integrity sha1-IHurkWOEmcB7Kt8kCkGochADRXU= - -is-promise@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-2.1.0.tgz#79a2a9ece7f096e80f36d2b2f3bc16c1ff4bf3fa" - integrity sha1-eaKp7OfwlugPNtKy87wWwf9L8/o= - -is-regex@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.0.4.tgz#5517489b547091b0930e095654ced25ee97e9491" - integrity sha1-VRdIm1RwkbCTDglWVM7SXul+lJE= - dependencies: - has "^1.0.1" - -is-regexp@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-regexp/-/is-regexp-1.0.0.tgz#fd2d883545c46bac5a633e7b9a09e87fa2cb5069" - integrity sha1-/S2INUXEa6xaYz57mgnof6LLUGk= - -is-resolvable@^1.0.0, is-resolvable@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-resolvable/-/is-resolvable-1.1.0.tgz#fb18f87ce1feb925169c9a407c19318a3206ed88" - integrity sha512-qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg== - -is-root@2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/is-root/-/is-root-2.0.0.tgz#838d1e82318144e5a6f77819d90207645acc7019" - integrity sha512-F/pJIk8QD6OX5DNhRB7hWamLsUilmkDGho48KbgZ6xg/lmAZXHxzXQ91jzB3yRSw5kdQGGGc4yz8HYhTYIMWPg== - -is-stream@^1.0.1, is-stream@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" - integrity sha1-EtSj3U5o4Lec6428hBc66A2RykQ= - -is-svg@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/is-svg/-/is-svg-3.0.0.tgz#9321dbd29c212e5ca99c4fa9794c714bcafa2f75" - integrity sha512-gi4iHK53LR2ujhLVVj+37Ykh9GLqYHX6JOVXbLAucaG/Cqw9xwdFOjDM2qeifLs1sF1npXXFvDu0r5HNgCMrzQ== - dependencies: - html-comment-regex "^1.1.0" - -is-symbol@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.2.tgz#a055f6ae57192caee329e7a860118b497a950f38" - integrity sha512-HS8bZ9ox60yCJLH9snBpIwv9pYUAkcuLhSA1oero1UB5y9aiQpRA8y2ex945AOtCZL1lJDeIk3G5LthswI46Lw== - dependencies: - has-symbols "^1.0.0" - -is-typedarray@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" - integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo= - -is-utf8@^0.2.0: - version "0.2.1" - resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72" - integrity sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI= - -is-windows@^1.0.1, is-windows@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" - integrity sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA== - -is-wsl@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-1.1.0.tgz#1f16e4aa22b04d1336b66188a66af3c600c3a66d" - integrity sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0= - -isarray@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf" - integrity sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8= - -isarray@1.0.0, isarray@^1.0.0, isarray@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" - integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE= - -isemail@3.x.x: - version "3.2.0" - resolved "https://registry.yarnpkg.com/isemail/-/isemail-3.2.0.tgz#59310a021931a9fb06bbb51e155ce0b3f236832c" - integrity sha512-zKqkK+O+dGqevc93KNsbZ/TqTUFd46MwWjYOoMrjIMZ51eU7DtQG3Wmd9SQQT7i7RVnuTPEiYEWHU3MSbxC1Tg== - dependencies: - punycode "2.x.x" - -isexe@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" - integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA= - -isobject@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89" - integrity sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk= - dependencies: - isarray "1.0.0" - -isobject@^3.0.0, isobject@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" - integrity sha1-TkMekrEalzFjaqH5yNHMvP2reN8= - -isomorphic-fetch@^2.1.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz#611ae1acf14f5e81f729507472819fe9733558a9" - integrity sha1-YRrhrPFPXoH3KVB0coGf6XM1WKk= - dependencies: - node-fetch "^1.0.1" - whatwg-fetch ">=0.10.0" - -isstream@~0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" - integrity sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo= - -istanbul-api@^1.3.1: - version "1.3.7" - resolved "https://registry.yarnpkg.com/istanbul-api/-/istanbul-api-1.3.7.tgz#a86c770d2b03e11e3f778cd7aedd82d2722092aa" - integrity sha512-4/ApBnMVeEPG3EkSzcw25wDe4N66wxwn+KKn6b47vyek8Xb3NBAcg4xfuQbS7BqcZuTX4wxfD5lVagdggR3gyA== - dependencies: - async "^2.1.4" - fileset "^2.0.2" - istanbul-lib-coverage "^1.2.1" - istanbul-lib-hook "^1.2.2" - istanbul-lib-instrument "^1.10.2" - istanbul-lib-report "^1.1.5" - istanbul-lib-source-maps "^1.2.6" - istanbul-reports "^1.5.1" - js-yaml "^3.7.0" - mkdirp "^0.5.1" - once "^1.4.0" - -istanbul-lib-coverage@^1.2.0, istanbul-lib-coverage@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-1.2.1.tgz#ccf7edcd0a0bb9b8f729feeb0930470f9af664f0" - integrity sha512-PzITeunAgyGbtY1ibVIUiV679EFChHjoMNRibEIobvmrCRaIgwLxNucOSimtNWUhEib/oO7QY2imD75JVgCJWQ== - -istanbul-lib-hook@^1.2.2: - version "1.2.2" - resolved "https://registry.yarnpkg.com/istanbul-lib-hook/-/istanbul-lib-hook-1.2.2.tgz#bc6bf07f12a641fbf1c85391d0daa8f0aea6bf86" - integrity sha512-/Jmq7Y1VeHnZEQ3TL10VHyb564mn6VrQXHchON9Jf/AEcmQ3ZIiyD1BVzNOKTZf/G3gE+kiGK6SmpF9y3qGPLw== - dependencies: - append-transform "^0.4.0" - -istanbul-lib-instrument@^1.10.1, istanbul-lib-instrument@^1.10.2: - version "1.10.2" - resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-1.10.2.tgz#1f55ed10ac3c47f2bdddd5307935126754d0a9ca" - integrity sha512-aWHxfxDqvh/ZlxR8BBaEPVSWDPUkGD63VjGQn3jcw8jCp7sHEMKcrj4xfJn/ABzdMEHiQNyvDQhqm5o8+SQg7A== - dependencies: - babel-generator "^6.18.0" - babel-template "^6.16.0" - babel-traverse "^6.18.0" - babel-types "^6.18.0" - babylon "^6.18.0" - istanbul-lib-coverage "^1.2.1" - semver "^5.3.0" - -istanbul-lib-report@^1.1.5: - version "1.1.5" - resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-1.1.5.tgz#f2a657fc6282f96170aaf281eb30a458f7f4170c" - integrity sha512-UsYfRMoi6QO/doUshYNqcKJqVmFe9w51GZz8BS3WB0lYxAllQYklka2wP9+dGZeHYaWIdcXUx8JGdbqaoXRXzw== - dependencies: - istanbul-lib-coverage "^1.2.1" - mkdirp "^0.5.1" - path-parse "^1.0.5" - supports-color "^3.1.2" - -istanbul-lib-source-maps@^1.2.4, istanbul-lib-source-maps@^1.2.6: - version "1.2.6" - resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-1.2.6.tgz#37b9ff661580f8fca11232752ee42e08c6675d8f" - integrity sha512-TtbsY5GIHgbMsMiRw35YBHGpZ1DVFEO19vxxeiDMYaeOFOCzfnYVxvl6pOUIZR4dtPhAGpSMup8OyF8ubsaqEg== - dependencies: - debug "^3.1.0" - istanbul-lib-coverage "^1.2.1" - mkdirp "^0.5.1" - rimraf "^2.6.1" - source-map "^0.5.3" - -istanbul-reports@^1.5.1: - version "1.5.1" - resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-1.5.1.tgz#97e4dbf3b515e8c484caea15d6524eebd3ff4e1a" - integrity sha512-+cfoZ0UXzWjhAdzosCPP3AN8vvef8XDkWtTfgaN+7L3YTpNYITnCaEkceo5SEYy644VkHka/P1FvkWvrG/rrJw== - dependencies: - handlebars "^4.0.3" - -jest-changed-files@^23.4.2: - version "23.4.2" - resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-23.4.2.tgz#1eed688370cd5eebafe4ae93d34bb3b64968fe83" - integrity sha512-EyNhTAUWEfwnK0Is/09LxoqNDOn7mU7S3EHskG52djOFS/z+IT0jT3h3Ql61+dklcG7bJJitIWEMB4Sp1piHmA== - dependencies: - throat "^4.0.0" - -jest-cli@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-23.6.0.tgz#61ab917744338f443ef2baa282ddffdd658a5da4" - integrity sha512-hgeD1zRUp1E1zsiyOXjEn4LzRLWdJBV//ukAHGlx6s5mfCNJTbhbHjgxnDUXA8fsKWN/HqFFF6X5XcCwC/IvYQ== - dependencies: - ansi-escapes "^3.0.0" - chalk "^2.0.1" - exit "^0.1.2" - glob "^7.1.2" - graceful-fs "^4.1.11" - import-local "^1.0.0" - is-ci "^1.0.10" - istanbul-api "^1.3.1" - istanbul-lib-coverage "^1.2.0" - istanbul-lib-instrument "^1.10.1" - istanbul-lib-source-maps "^1.2.4" - jest-changed-files "^23.4.2" - jest-config "^23.6.0" - jest-environment-jsdom "^23.4.0" - jest-get-type "^22.1.0" - jest-haste-map "^23.6.0" - jest-message-util "^23.4.0" - jest-regex-util "^23.3.0" - jest-resolve-dependencies "^23.6.0" - jest-runner "^23.6.0" - jest-runtime "^23.6.0" - jest-snapshot "^23.6.0" - jest-util "^23.4.0" - jest-validate "^23.6.0" - jest-watcher "^23.4.0" - jest-worker "^23.2.0" - micromatch "^2.3.11" - node-notifier "^5.2.1" - prompts "^0.1.9" - realpath-native "^1.0.0" - rimraf "^2.5.4" - slash "^1.0.0" - string-length "^2.0.0" - strip-ansi "^4.0.0" - which "^1.2.12" - yargs "^11.0.0" - -jest-config@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-23.6.0.tgz#f82546a90ade2d8c7026fbf6ac5207fc22f8eb1d" - integrity sha512-i8V7z9BeDXab1+VNo78WM0AtWpBRXJLnkT+lyT+Slx/cbP5sZJ0+NDuLcmBE5hXAoK0aUp7vI+MOxR+R4d8SRQ== - dependencies: - babel-core "^6.0.0" - babel-jest "^23.6.0" - chalk "^2.0.1" - glob "^7.1.1" - jest-environment-jsdom "^23.4.0" - jest-environment-node "^23.4.0" - jest-get-type "^22.1.0" - jest-jasmine2 "^23.6.0" - jest-regex-util "^23.3.0" - jest-resolve "^23.6.0" - jest-util "^23.4.0" - jest-validate "^23.6.0" - micromatch "^2.3.11" - pretty-format "^23.6.0" - -jest-diff@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-23.6.0.tgz#1500f3f16e850bb3d71233408089be099f610c7d" - integrity sha512-Gz9l5Ov+X3aL5L37IT+8hoCUsof1CVYBb2QEkOupK64XyRR3h+uRpYIm97K7sY8diFxowR8pIGEdyfMKTixo3g== - dependencies: - chalk "^2.0.1" - diff "^3.2.0" - jest-get-type "^22.1.0" - pretty-format "^23.6.0" - -jest-docblock@^23.2.0: - version "23.2.0" - resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-23.2.0.tgz#f085e1f18548d99fdd69b20207e6fd55d91383a7" - integrity sha1-8IXh8YVI2Z/dabICB+b9VdkTg6c= - dependencies: - detect-newline "^2.1.0" - -jest-each@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-23.6.0.tgz#ba0c3a82a8054387016139c733a05242d3d71575" - integrity sha512-x7V6M/WGJo6/kLoissORuvLIeAoyo2YqLOoCDkohgJ4XOXSqOtyvr8FbInlAWS77ojBsZrafbozWoKVRdtxFCg== - dependencies: - chalk "^2.0.1" - pretty-format "^23.6.0" - -jest-environment-jsdom@^23.4.0: - version "23.4.0" - resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-23.4.0.tgz#056a7952b3fea513ac62a140a2c368c79d9e6023" - integrity sha1-BWp5UrP+pROsYqFAosNox52eYCM= - dependencies: - jest-mock "^23.2.0" - jest-util "^23.4.0" - jsdom "^11.5.1" - -jest-environment-node@^23.4.0: - version "23.4.0" - resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-23.4.0.tgz#57e80ed0841dea303167cce8cd79521debafde10" - integrity sha1-V+gO0IQd6jAxZ8zozXlSHeuv3hA= - dependencies: - jest-mock "^23.2.0" - jest-util "^23.4.0" - -jest-get-type@^22.1.0: - version "22.4.3" - resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-22.4.3.tgz#e3a8504d8479342dd4420236b322869f18900ce4" - integrity sha512-/jsz0Y+V29w1chdXVygEKSz2nBoHoYqNShPe+QgxSNjAuP1i8+k4LbQNrfoliKej0P45sivkSCh7yiD6ubHS3w== - -jest-haste-map@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-23.6.0.tgz#2e3eb997814ca696d62afdb3f2529f5bbc935e16" - integrity sha512-uyNhMyl6dr6HaXGHp8VF7cK6KpC6G9z9LiMNsst+rJIZ8l7wY0tk8qwjPmEghczojZ2/ZhtEdIabZ0OQRJSGGg== - dependencies: - fb-watchman "^2.0.0" - graceful-fs "^4.1.11" - invariant "^2.2.4" - jest-docblock "^23.2.0" - jest-serializer "^23.0.1" - jest-worker "^23.2.0" - micromatch "^2.3.11" - sane "^2.0.0" - -jest-jasmine2@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-23.6.0.tgz#840e937f848a6c8638df24360ab869cc718592e0" - integrity sha512-pe2Ytgs1nyCs8IvsEJRiRTPC0eVYd8L/dXJGU08GFuBwZ4sYH/lmFDdOL3ZmvJR8QKqV9MFuwlsAi/EWkFUbsQ== - dependencies: - babel-traverse "^6.0.0" - chalk "^2.0.1" - co "^4.6.0" - expect "^23.6.0" - is-generator-fn "^1.0.0" - jest-diff "^23.6.0" - jest-each "^23.6.0" - jest-matcher-utils "^23.6.0" - jest-message-util "^23.4.0" - jest-snapshot "^23.6.0" - jest-util "^23.4.0" - pretty-format "^23.6.0" - -jest-leak-detector@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-23.6.0.tgz#e4230fd42cf381a1a1971237ad56897de7e171de" - integrity sha512-f/8zA04rsl1Nzj10HIyEsXvYlMpMPcy0QkQilVZDFOaPbv2ur71X5u2+C4ZQJGyV/xvVXtCCZ3wQ99IgQxftCg== - dependencies: - pretty-format "^23.6.0" - -jest-matcher-utils@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-23.6.0.tgz#726bcea0c5294261a7417afb6da3186b4b8cac80" - integrity sha512-rosyCHQfBcol4NsckTn01cdelzWLU9Cq7aaigDf8VwwpIRvWE/9zLgX2bON+FkEW69/0UuYslUe22SOdEf2nog== - dependencies: - chalk "^2.0.1" - jest-get-type "^22.1.0" - pretty-format "^23.6.0" - -jest-message-util@^23.4.0: - version "23.4.0" - resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-23.4.0.tgz#17610c50942349508d01a3d1e0bda2c079086a9f" - integrity sha1-F2EMUJQjSVCNAaPR4L2iwHkIap8= - dependencies: - "@babel/code-frame" "^7.0.0-beta.35" - chalk "^2.0.1" - micromatch "^2.3.11" - slash "^1.0.0" - stack-utils "^1.0.1" - -jest-mock@^23.2.0: - version "23.2.0" - resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-23.2.0.tgz#ad1c60f29e8719d47c26e1138098b6d18b261134" - integrity sha1-rRxg8p6HGdR8JuETgJi20YsmETQ= - -jest-pnp-resolver@1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/jest-pnp-resolver/-/jest-pnp-resolver-1.0.1.tgz#f397cd71dbcd4a1947b2e435f6da8e9a347308fa" - integrity sha512-kzhvJQp+9k0a/hpvIIzOJgOwfOqmnohdrAMZW2EscH3kxR2VWD7EcPa10cio8EK9V7PcD75bhG1pFnO70zGwSQ== - -jest-regex-util@^23.3.0: - version "23.3.0" - resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-23.3.0.tgz#5f86729547c2785c4002ceaa8f849fe8ca471bc5" - integrity sha1-X4ZylUfCeFxAAs6qj4Sf6MpHG8U= - -jest-resolve-dependencies@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-23.6.0.tgz#b4526af24c8540d9a3fab102c15081cf509b723d" - integrity sha512-EkQWkFWjGKwRtRyIwRwI6rtPAEyPWlUC2MpzHissYnzJeHcyCn1Hc8j7Nn1xUVrS5C6W5+ZL37XTem4D4pLZdA== - dependencies: - jest-regex-util "^23.3.0" - jest-snapshot "^23.6.0" - -jest-resolve@23.6.0, jest-resolve@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-23.6.0.tgz#cf1d1a24ce7ee7b23d661c33ba2150f3aebfa0ae" - integrity sha512-XyoRxNtO7YGpQDmtQCmZjum1MljDqUCob7XlZ6jy9gsMugHdN2hY4+Acz9Qvjz2mSsOnPSH7skBmDYCHXVZqkA== - dependencies: - browser-resolve "^1.11.3" - chalk "^2.0.1" - realpath-native "^1.0.0" - -jest-runner@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-23.6.0.tgz#3894bd219ffc3f3cb94dc48a4170a2e6f23a5a38" - integrity sha512-kw0+uj710dzSJKU6ygri851CObtCD9cN8aNkg8jWJf4ewFyEa6kwmiH/r/M1Ec5IL/6VFa0wnAk6w+gzUtjJzA== - dependencies: - exit "^0.1.2" - graceful-fs "^4.1.11" - jest-config "^23.6.0" - jest-docblock "^23.2.0" - jest-haste-map "^23.6.0" - jest-jasmine2 "^23.6.0" - jest-leak-detector "^23.6.0" - jest-message-util "^23.4.0" - jest-runtime "^23.6.0" - jest-util "^23.4.0" - jest-worker "^23.2.0" - source-map-support "^0.5.6" - throat "^4.0.0" - -jest-runtime@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-23.6.0.tgz#059e58c8ab445917cd0e0d84ac2ba68de8f23082" - integrity sha512-ycnLTNPT2Gv+TRhnAYAQ0B3SryEXhhRj1kA6hBPSeZaNQkJ7GbZsxOLUkwg6YmvWGdX3BB3PYKFLDQCAE1zNOw== - dependencies: - babel-core "^6.0.0" - babel-plugin-istanbul "^4.1.6" - chalk "^2.0.1" - convert-source-map "^1.4.0" - exit "^0.1.2" - fast-json-stable-stringify "^2.0.0" - graceful-fs "^4.1.11" - jest-config "^23.6.0" - jest-haste-map "^23.6.0" - jest-message-util "^23.4.0" - jest-regex-util "^23.3.0" - jest-resolve "^23.6.0" - jest-snapshot "^23.6.0" - jest-util "^23.4.0" - jest-validate "^23.6.0" - micromatch "^2.3.11" - realpath-native "^1.0.0" - slash "^1.0.0" - strip-bom "3.0.0" - write-file-atomic "^2.1.0" - yargs "^11.0.0" - -jest-serializer@^23.0.1: - version "23.0.1" - resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-23.0.1.tgz#a3776aeb311e90fe83fab9e533e85102bd164165" - integrity sha1-o3dq6zEekP6D+rnlM+hRAr0WQWU= - -jest-snapshot@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-23.6.0.tgz#f9c2625d1b18acda01ec2d2b826c0ce58a5aa17a" - integrity sha512-tM7/Bprftun6Cvj2Awh/ikS7zV3pVwjRYU2qNYS51VZHgaAMBs5l4o/69AiDHhQrj5+LA2Lq4VIvK7zYk/bswg== - dependencies: - babel-types "^6.0.0" - chalk "^2.0.1" - jest-diff "^23.6.0" - jest-matcher-utils "^23.6.0" - jest-message-util "^23.4.0" - jest-resolve "^23.6.0" - mkdirp "^0.5.1" - natural-compare "^1.4.0" - pretty-format "^23.6.0" - semver "^5.5.0" - -jest-util@^23.4.0: - version "23.4.0" - resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-23.4.0.tgz#4d063cb927baf0a23831ff61bec2cbbf49793561" - integrity sha1-TQY8uSe68KI4Mf9hvsLLv0l5NWE= - dependencies: - callsites "^2.0.0" - chalk "^2.0.1" - graceful-fs "^4.1.11" - is-ci "^1.0.10" - jest-message-util "^23.4.0" - mkdirp "^0.5.1" - slash "^1.0.0" - source-map "^0.6.0" - -jest-validate@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-23.6.0.tgz#36761f99d1ed33fcd425b4e4c5595d62b6597474" - integrity sha512-OFKapYxe72yz7agrDAWi8v2WL8GIfVqcbKRCLbRG9PAxtzF9b1SEDdTpytNDN12z2fJynoBwpMpvj2R39plI2A== - dependencies: - chalk "^2.0.1" - jest-get-type "^22.1.0" - leven "^2.1.0" - pretty-format "^23.6.0" - -jest-watcher@^23.4.0: - version "23.4.0" - resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-23.4.0.tgz#d2e28ce74f8dad6c6afc922b92cabef6ed05c91c" - integrity sha1-0uKM50+NrWxq/JIrksq+9u0FyRw= - dependencies: - ansi-escapes "^3.0.0" - chalk "^2.0.1" - string-length "^2.0.0" - -jest-worker@^23.2.0: - version "23.2.0" - resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-23.2.0.tgz#faf706a8da36fae60eb26957257fa7b5d8ea02b9" - integrity sha1-+vcGqNo2+uYOsmlXJX+ntdjqArk= - dependencies: - merge-stream "^1.0.1" - -jest@23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest/-/jest-23.6.0.tgz#ad5835e923ebf6e19e7a1d7529a432edfee7813d" - integrity sha512-lWzcd+HSiqeuxyhG+EnZds6iO3Y3ZEnMrfZq/OTGvF/C+Z4fPMCdhWTGSAiO2Oym9rbEXfwddHhh6jqrTF3+Lw== - dependencies: - import-local "^1.0.0" - jest-cli "^23.6.0" - -joi@^11.1.1: - version "11.4.0" - resolved "https://registry.yarnpkg.com/joi/-/joi-11.4.0.tgz#f674897537b625e9ac3d0b7e1604c828ad913ccb" - integrity sha512-O7Uw+w/zEWgbL6OcHbyACKSj0PkQeUgmehdoXVSxt92QFCq4+1390Rwh5moI2K/OgC7D8RHRZqHZxT2husMJHA== - dependencies: - hoek "4.x.x" - isemail "3.x.x" - topo "2.x.x" - -js-levenshtein@^1.1.3: - version "1.1.4" - resolved "https://registry.yarnpkg.com/js-levenshtein/-/js-levenshtein-1.1.4.tgz#3a56e3cbf589ca0081eb22cd9ba0b1290a16d26e" - integrity sha512-PxfGzSs0ztShKrUYPIn5r0MtyAhYcCwmndozzpz8YObbPnD1jFxzlBGbRnX2mIu6Z13xN6+PTu05TQFnZFlzow== - -"js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" - integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== - -js-tokens@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b" - integrity sha1-mGbfOVECEw449/mWvOtlRDIJwls= - -js-yaml@^3.12.0, js-yaml@^3.7.0, js-yaml@^3.9.0: - version "3.12.0" - resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.12.0.tgz#eaed656ec8344f10f527c6bfa1b6e2244de167d1" - integrity sha512-PIt2cnwmPfL4hKNwqeiuz4bKfnzHTBv6HyVgjahA6mPLwPDzjDWrplJBMjHUFxku/N3FlmrbyPclad+I+4mJ3A== - dependencies: - argparse "^1.0.7" - esprima "^4.0.0" - -jsbn@~0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" - integrity sha1-peZUwuWi3rXyAdls77yoDA7y9RM= - -jsdom@>=11.0.0: - version "13.0.0" - resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-13.0.0.tgz#f1df2411b714a4e08d1bdc343c0a0889c688210f" - integrity sha512-Kmq4ASMNkgpY+YufE322EnIKoiz0UWY2DRkKlU7d5YrIW4xiVRhWFrZV1fr6w/ZNxQ50wGAH5gGRzydgnmkkvw== - dependencies: - abab "^2.0.0" - acorn "^6.0.2" - acorn-globals "^4.3.0" - array-equal "^1.0.0" - cssom "^0.3.4" - cssstyle "^1.1.1" - data-urls "^1.0.1" - domexception "^1.0.1" - escodegen "^1.11.0" - html-encoding-sniffer "^1.0.2" - nwsapi "^2.0.9" - parse5 "5.1.0" - pn "^1.1.0" - request "^2.88.0" - request-promise-native "^1.0.5" - saxes "^3.1.3" - symbol-tree "^3.2.2" - tough-cookie "^2.4.3" - w3c-hr-time "^1.0.1" - w3c-xmlserializer "^1.0.0" - webidl-conversions "^4.0.2" - whatwg-encoding "^1.0.5" - whatwg-mimetype "^2.2.0" - whatwg-url "^7.0.0" - ws "^6.1.0" - xml-name-validator "^3.0.0" - -jsdom@^11.5.1: - version "11.12.0" - resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-11.12.0.tgz#1a80d40ddd378a1de59656e9e6dc5a3ba8657bc8" - integrity sha512-y8Px43oyiBM13Zc1z780FrfNLJCXTL40EWlty/LXUtcjykRBNgLlCjWXpfSPBl2iv+N7koQN+dvqszHZgT/Fjw== - dependencies: - abab "^2.0.0" - acorn "^5.5.3" - acorn-globals "^4.1.0" - array-equal "^1.0.0" - cssom ">= 0.3.2 < 0.4.0" - cssstyle "^1.0.0" - data-urls "^1.0.0" - domexception "^1.0.1" - escodegen "^1.9.1" - html-encoding-sniffer "^1.0.2" - left-pad "^1.3.0" - nwsapi "^2.0.7" - parse5 "4.0.0" - pn "^1.1.0" - request "^2.87.0" - request-promise-native "^1.0.5" - sax "^1.2.4" - symbol-tree "^3.2.2" - tough-cookie "^2.3.4" - w3c-hr-time "^1.0.1" - webidl-conversions "^4.0.2" - whatwg-encoding "^1.0.3" - whatwg-mimetype "^2.1.0" - whatwg-url "^6.4.1" - ws "^5.2.0" - xml-name-validator "^3.0.0" - -jsesc@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-1.3.0.tgz#46c3fec8c1892b12b0833db9bc7622176dbab34b" - integrity sha1-RsP+yMGJKxKwgz25vHYiF226s0s= - -jsesc@^2.5.1: - version "2.5.1" - resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.1.tgz#e421a2a8e20d6b0819df28908f782526b96dd1fe" - integrity sha1-5CGiqOINawgZ3yiQj3glJrlt0f4= - -jsesc@~0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" - integrity sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0= - -json-parse-better-errors@^1.0.1, json-parse-better-errors@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9" - integrity sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw== - -json-schema-traverse@^0.3.0: - version "0.3.1" - resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz#349a6d44c53a51de89b40805c5d5e59b417d3340" - integrity sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A= - -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" - integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== - -json-schema@0.2.3: - version "0.2.3" - resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.2.3.tgz#b480c892e59a2f05954ce727bd3f2a4e882f9e13" - integrity sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM= - -json-stable-stringify-without-jsonify@^1.0.1: - version "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= - -json-stable-stringify@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz#9a759d39c5f2ff503fd5300646ed445f88c4f9af" - integrity sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8= - dependencies: - jsonify "~0.0.0" - -json-stringify-safe@~5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" - integrity sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus= - -json3@^3.3.2: - version "3.3.2" - resolved "https://registry.yarnpkg.com/json3/-/json3-3.3.2.tgz#3c0434743df93e2f5c42aee7b19bcb483575f4e1" - integrity sha1-PAQ0dD35Pi9cQq7nsZvLSDV19OE= - -json5@^0.5.0, json5@^0.5.1: - version "0.5.1" - resolved "https://registry.yarnpkg.com/json5/-/json5-0.5.1.tgz#1eade7acc012034ad84e2396767ead9fa5495821" - integrity sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE= - -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" - -jsonify@~0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/jsonify/-/jsonify-0.0.0.tgz#2c74b6ee41d93ca51b7b5aaee8f503631d252a73" - integrity sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM= - -jsprim@^1.2.2: - version "1.4.1" - resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.1.tgz#313e66bc1e5cc06e438bc1b7499c2e5c56acb6a2" - integrity sha1-MT5mvB5cwG5Di8G3SZwuXFastqI= - dependencies: - assert-plus "1.0.0" - extsprintf "1.3.0" - json-schema "0.2.3" - verror "1.10.0" - -jsx-ast-utils@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/jsx-ast-utils/-/jsx-ast-utils-2.0.1.tgz#e801b1b39985e20fffc87b40e3748080e2dcac7f" - integrity sha1-6AGxs5mF4g//yHtA43SAgOLcrH8= - dependencies: - array-includes "^3.0.3" - -killable@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/killable/-/killable-1.0.1.tgz#4c8ce441187a061c7474fb87ca08e2a638194892" - integrity sha512-LzqtLKlUwirEUyl/nicirVmNiPvYs7l5n8wOPP7fyJVpUPkvCnW/vuiXGpylGUlnPDnB7311rARzAt3Mhswpjg== - -kind-of@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-2.0.1.tgz#018ec7a4ce7e3a86cb9141be519d24c8faa981b5" - integrity sha1-AY7HpM5+OobLkUG+UZ0kyPqpgbU= - dependencies: - is-buffer "^1.0.2" - -kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0: - version "3.2.2" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" - integrity sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ= - dependencies: - is-buffer "^1.1.5" - -kind-of@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-4.0.0.tgz#20813df3d712928b207378691a45066fae72dd57" - integrity sha1-IIE989cSkosgc3hpGkUGb65y3Vc= - dependencies: - is-buffer "^1.1.5" - -kind-of@^5.0.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-5.1.0.tgz#729c91e2d857b7a419a1f9aa65685c4c33f5845d" - integrity sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw== - -kind-of@^6.0.0, kind-of@^6.0.2: - version "6.0.2" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.2.tgz#01146b36a6218e64e58f3a8d66de5d7fc6f6d051" - integrity sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA== - -kleur@^2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/kleur/-/kleur-2.0.2.tgz#b704f4944d95e255d038f0cb05fb8a602c55a300" - integrity sha512-77XF9iTllATmG9lSlIv0qdQ2BQ/h9t0bJllHlbvsQ0zUWfU7Yi0S8L5JXzPZgkefIiajLmBJJ4BsMJmqcf7oxQ== - -last-call-webpack-plugin@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/last-call-webpack-plugin/-/last-call-webpack-plugin-3.0.0.tgz#9742df0e10e3cf46e5c0381c2de90d3a7a2d7555" - integrity sha512-7KI2l2GIZa9p2spzPIVZBYyNKkN+e/SQPpnjlTiPhdbDW3F86tdKKELxKpzJ5sgU19wQWsACULZmpTPYHeWO5w== - dependencies: - lodash "^4.17.5" - webpack-sources "^1.1.0" - -lazy-cache@^0.2.3: - version "0.2.7" - resolved "https://registry.yarnpkg.com/lazy-cache/-/lazy-cache-0.2.7.tgz#7feddf2dcb6edb77d11ef1d117ab5ffdf0ab1b65" - integrity sha1-f+3fLctu23fRHvHRF6tf/fCrG2U= - -lazy-cache@^1.0.3: - version "1.0.4" - resolved "https://registry.yarnpkg.com/lazy-cache/-/lazy-cache-1.0.4.tgz#a1d78fc3a50474cb80845d3b3b6e1da49a446e8e" - integrity sha1-odePw6UEdMuAhF07O24dpJpEbo4= - -lcid@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/lcid/-/lcid-1.0.0.tgz#308accafa0bc483a3867b4b6f2b9506251d1b835" - integrity sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU= - dependencies: - invert-kv "^1.0.0" - -lcid@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/lcid/-/lcid-2.0.0.tgz#6ef5d2df60e52f82eb228a4c373e8d1f397253cf" - integrity sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA== - dependencies: - invert-kv "^2.0.0" - -left-pad@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/left-pad/-/left-pad-1.3.0.tgz#5b8a3a7765dfe001261dde915589e782f8c94d1e" - integrity sha512-XI5MPzVNApjAyhQzphX8BkmKsKUxD4LdyK24iZeQGinBN9yTQT3bFlCBy/aVx2HrNcqQGsdot8ghrjyrvMCoEA== - -leven@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/leven/-/leven-2.1.0.tgz#c2e7a9f772094dee9d34202ae8acce4687875580" - integrity sha1-wuep93IJTe6dNCAq6KzORoeHVYA= - -levn@^0.3.0, levn@~0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee" - integrity sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4= - dependencies: - prelude-ls "~1.1.2" - type-check "~0.3.2" - -load-json-file@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-1.1.0.tgz#956905708d58b4bab4c2261b04f59f31c99374c0" - integrity sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA= - dependencies: - graceful-fs "^4.1.2" - parse-json "^2.2.0" - pify "^2.0.0" - pinkie-promise "^2.0.0" - strip-bom "^2.0.0" - -load-json-file@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-2.0.0.tgz#7947e42149af80d696cbf797bcaabcfe1fe29ca8" - integrity sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg= - dependencies: - graceful-fs "^4.1.2" - parse-json "^2.2.0" - pify "^2.0.0" - strip-bom "^3.0.0" - -loader-fs-cache@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/loader-fs-cache/-/loader-fs-cache-1.0.1.tgz#56e0bf08bd9708b26a765b68509840c8dec9fdbc" - integrity sha1-VuC/CL2XCLJqdltoUJhAyN7J/bw= - dependencies: - find-cache-dir "^0.1.1" - mkdirp "0.5.1" - -loader-runner@^2.3.0: - version "2.3.1" - resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-2.3.1.tgz#026f12fe7c3115992896ac02ba022ba92971b979" - integrity sha512-By6ZFY7ETWOc9RFaAIb23IjJVcM4dvJC/N57nmdz9RSkMXvAXGI7SyVlAw3v8vjtDRlqThgVDVmTnr9fqMlxkw== - -loader-utils@1.1.0, loader-utils@^1.0.1, loader-utils@^1.0.2, loader-utils@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-1.1.0.tgz#c98aef488bcceda2ffb5e2de646d6a754429f5cd" - integrity sha1-yYrvSIvM7aL/teLeZG1qdUQp9c0= - dependencies: - big.js "^3.1.3" - emojis-list "^2.0.0" - json5 "^0.5.0" - -locate-path@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e" - integrity sha1-K1aLJl7slExtnA3pw9u7ygNUzY4= - dependencies: - p-locate "^2.0.0" - path-exists "^3.0.0" - -locate-path@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-3.0.0.tgz#dbec3b3ab759758071b58fe59fc41871af21400e" - integrity sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A== - dependencies: - p-locate "^3.0.0" - path-exists "^3.0.0" - -lodash._reinterpolate@~3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz#0ccf2d89166af03b3663c796538b75ac6e114d9d" - integrity sha1-DM8tiRZq8Ds2Y8eWU4t1rG4RTZ0= - -lodash.camelcase@^4.3.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz#b28aa6288a2b9fc651035c7711f65ab6190331a6" - integrity sha1-soqmKIorn8ZRA1x3EfZathkDMaY= - -lodash.debounce@^4.0.8: - version "4.0.8" - resolved "https://registry.yarnpkg.com/lodash.debounce/-/lodash.debounce-4.0.8.tgz#82d79bff30a67c4005ffd5e2515300ad9ca4d7af" - integrity sha1-gteb/zCmfEAF/9XiUVMArZyk168= - -lodash.memoize@^4.1.2: - version "4.1.2" - resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe" - integrity sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4= - -lodash.sortby@^4.7.0: - version "4.7.0" - resolved "https://registry.yarnpkg.com/lodash.sortby/-/lodash.sortby-4.7.0.tgz#edd14c824e2cc9c1e0b0a1b42bb5210516a42438" - integrity sha1-7dFMgk4sycHgsKG0K7UhBRakJDg= - -lodash.tail@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/lodash.tail/-/lodash.tail-4.1.1.tgz#d2333a36d9e7717c8ad2f7cacafec7c32b444664" - integrity sha1-0jM6NtnncXyK0vfKyv7HwytERmQ= - -lodash.template@^4.2.4, lodash.template@^4.4.0: - version "4.4.0" - resolved "https://registry.yarnpkg.com/lodash.template/-/lodash.template-4.4.0.tgz#e73a0385c8355591746e020b99679c690e68fba0" - integrity sha1-5zoDhcg1VZF0bgILmWecaQ5o+6A= - dependencies: - lodash._reinterpolate "~3.0.0" - lodash.templatesettings "^4.0.0" - -lodash.templatesettings@^4.0.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/lodash.templatesettings/-/lodash.templatesettings-4.1.0.tgz#2b4d4e95ba440d915ff08bc899e4553666713316" - integrity sha1-K01OlbpEDZFf8IvImeRVNmZxMxY= - dependencies: - lodash._reinterpolate "~3.0.0" - -lodash.throttle@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/lodash.throttle/-/lodash.throttle-4.1.1.tgz#c23e91b710242ac70c37f1e1cda9274cc39bf2f4" - integrity sha1-wj6RtxAkKscMN/HhzaknTMOb8vQ= - -lodash.uniq@^4.5.0: - version "4.5.0" - resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773" - integrity sha1-0CJTc662Uq3BvILklFM5qEJ1R3M= - -lodash@>4.17.4, "lodash@>=3.5 <5", lodash@^4.0.1, lodash@^4.13.1, lodash@^4.17.10, lodash@^4.17.11, lodash@^4.17.4, lodash@^4.17.5: - version "4.17.11" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.11.tgz#b39ea6229ef607ecd89e2c8df12536891cac9b8d" - integrity sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg== - -loglevel@^1.4.1: - version "1.6.1" - resolved "https://registry.yarnpkg.com/loglevel/-/loglevel-1.6.1.tgz#e0fc95133b6ef276cdc8887cdaf24aa6f156f8fa" - integrity sha1-4PyVEztu8nbNyIh82vJKpvFW+Po= - -loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.2.0, loose-envify@^1.3.1, loose-envify@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf" - integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q== - dependencies: - js-tokens "^3.0.0 || ^4.0.0" - -lower-case@^1.1.1: - version "1.1.4" - resolved "https://registry.yarnpkg.com/lower-case/-/lower-case-1.1.4.tgz#9a2cabd1b9e8e0ae993a4bf7d5875c39c42e8eac" - integrity sha1-miyr0bno4K6ZOkv31YdcOcQujqw= - -lru-cache@^4.0.1, lru-cache@^4.1.1, lru-cache@^4.1.3: - version "4.1.3" - resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.1.3.tgz#a1175cf3496dfc8436c156c334b4955992bce69c" - integrity sha512-fFEhvcgzuIoJVUF8fYr5KR0YqxD238zgObTps31YdADwPPAp82a4M8TrckkWyx7ekNlf9aBcVn81cFwwXngrJA== - dependencies: - pseudomap "^1.0.2" - yallist "^2.1.2" - -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" - -makeerror@1.0.x: - version "1.0.11" - resolved "https://registry.yarnpkg.com/makeerror/-/makeerror-1.0.11.tgz#e01a5c9109f2af79660e4e8b9587790184f5a96c" - integrity sha1-4BpckQnyr3lmDk6LlYd5AYT1qWw= - dependencies: - tmpl "1.0.x" - -mamacro@^0.0.3: - version "0.0.3" - resolved "https://registry.yarnpkg.com/mamacro/-/mamacro-0.0.3.tgz#ad2c9576197c9f1abf308d0787865bd975a3f3e4" - integrity sha512-qMEwh+UujcQ+kbz3T6V+wAmO2U8veoq2w+3wY8MquqwVA3jChfwY+Tk52GZKDfACEPjuZ7r2oJLejwpt8jtwTA== - -map-age-cleaner@^0.1.1: - version "0.1.2" - resolved "https://registry.yarnpkg.com/map-age-cleaner/-/map-age-cleaner-0.1.2.tgz#098fb15538fd3dbe461f12745b0ca8568d4e3f74" - integrity sha512-UN1dNocxQq44IhJyMI4TU8phc2m9BddacHRPRjKGLYaF0jqd3xLz0jS0skpAU9WgYyoR4gHtUpzytNBS385FWQ== - dependencies: - p-defer "^1.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" - integrity sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8= - -map-visit@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/map-visit/-/map-visit-1.0.0.tgz#ecdca8f13144e660f1b5bd41f12f3479d98dfb8f" - integrity sha1-7Nyo8TFE5mDxtb1B8S80edmN+48= - dependencies: - object-visit "^1.0.0" - -material-colors@^1.2.1: - version "1.2.6" - resolved "https://registry.yarnpkg.com/material-colors/-/material-colors-1.2.6.tgz#6d1958871126992ceecc72f4bcc4d8f010865f46" - integrity sha512-6qE4B9deFBIa9YSpOc9O0Sgc43zTeVYbgDT5veRKSlB2+ZuHNoVVxA1L/ckMUayV9Ay9y7Z/SZCLcGteW9i7bg== - -math-random@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/math-random/-/math-random-1.0.1.tgz#8b3aac588b8a66e4975e3cdea67f7bb329601fac" - integrity sha1-izqsWIuKZuSXXjzepn97sylgH6w= - -md5.js@^1.3.4: - version "1.3.5" - resolved "https://registry.yarnpkg.com/md5.js/-/md5.js-1.3.5.tgz#b5d07b8e3216e3e27cd728d72f70d1e6a342005f" - integrity sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg== - dependencies: - hash-base "^3.0.0" - inherits "^2.0.1" - safe-buffer "^5.1.2" - -mdn-data@~1.1.0: - version "1.1.4" - resolved "https://registry.yarnpkg.com/mdn-data/-/mdn-data-1.1.4.tgz#50b5d4ffc4575276573c4eedb8780812a8419f01" - integrity sha512-FSYbp3lyKjyj3E7fMl6rYvUdX0FBXaluGqlFoYESWQlyUTq8R+wp0rkFxoYFqZlHCvsUXGjyJmLQSnXToYhOSA== - -media-typer@0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" - integrity sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g= - -mem@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/mem/-/mem-1.1.0.tgz#5edd52b485ca1d900fe64895505399a0dfa45f76" - integrity sha1-Xt1StIXKHZAP5kiVUFOZoN+kX3Y= - dependencies: - mimic-fn "^1.0.0" - -mem@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/mem/-/mem-4.0.0.tgz#6437690d9471678f6cc83659c00cbafcd6b0cdaf" - integrity sha512-WQxG/5xYc3tMbYLXoXPm81ET2WDULiU5FxbuIoNbJqLOOI8zehXFdZuiUEgfdrU2mVB1pxBZUGlYORSrpuJreA== - dependencies: - map-age-cleaner "^0.1.1" - mimic-fn "^1.0.0" - p-is-promise "^1.1.0" - -memoize-one@^4.0.0: - version "4.0.3" - resolved "https://registry.yarnpkg.com/memoize-one/-/memoize-one-4.0.3.tgz#cdfdd942853f1a1b4c71c5336b8c49da0bf0273c" - integrity sha512-QmpUu4KqDmX0plH4u+tf0riMc1KHE1+lw95cMrLlXQAFOx/xnBtwhZ52XJxd9X2O6kwKBqX32kmhbhlobD0cuw== - -memory-fs@^0.4.0, memory-fs@~0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/memory-fs/-/memory-fs-0.4.1.tgz#3a9a20b8462523e447cfbc7e8bb80ed667bfc552" - integrity sha1-OpoguEYlI+RHz7x+i7gO1me/xVI= - dependencies: - errno "^0.1.3" - readable-stream "^2.0.1" - -merge-deep@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/merge-deep/-/merge-deep-3.0.2.tgz#f39fa100a4f1bd34ff29f7d2bf4508fbb8d83ad2" - integrity sha512-T7qC8kg4Zoti1cFd8Cr0M+qaZfOwjlPDEdZIIPPB2JZctjaPM4fX+i7HOId69tAti2fvO6X5ldfYUONDODsrkA== - dependencies: - arr-union "^3.1.0" - clone-deep "^0.2.4" - kind-of "^3.0.2" - -merge-descriptors@1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.1.tgz#b00aaa556dd8b44568150ec9d1b953f3f90cbb61" - integrity sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E= - -merge-stream@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-1.0.1.tgz#4041202d508a342ba00174008df0c251b8c135e1" - integrity sha1-QEEgLVCKNCugAXQAjfDCUbjBNeE= - dependencies: - readable-stream "^2.0.1" - -merge2@^1.2.1: - version "1.2.3" - resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.2.3.tgz#7ee99dbd69bb6481689253f018488a1b902b0ed5" - integrity sha512-gdUU1Fwj5ep4kplwcmftruWofEFt6lfpkkr3h860CXbAB9c3hGb55EOL2ali0Td5oebvW0E1+3Sr+Ur7XfKpRA== - -merge@^1.2.0: - version "1.2.1" - resolved "https://registry.yarnpkg.com/merge/-/merge-1.2.1.tgz#38bebf80c3220a8a487b6fcfb3941bb11720c145" - integrity sha512-VjFo4P5Whtj4vsLzsYBu5ayHhoHJ0UqNm7ibvShmbmoz7tGi0vXaoJbGdB+GmDMLUdg8DpQXEIeVDAe8MaABvQ== - -methods@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" - integrity sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4= - -micromatch@^2.3.11: - version "2.3.11" - resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-2.3.11.tgz#86677c97d1720b363431d04d0d15293bd38c1565" - integrity sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU= - dependencies: - arr-diff "^2.0.0" - array-unique "^0.2.1" - braces "^1.8.2" - expand-brackets "^0.1.4" - extglob "^0.3.1" - filename-regex "^2.0.0" - is-extglob "^1.0.0" - is-glob "^2.0.1" - kind-of "^3.0.2" - normalize-path "^2.0.1" - object.omit "^2.0.0" - parse-glob "^3.0.4" - regex-cache "^0.4.2" - -micromatch@^3.1.10, micromatch@^3.1.4, micromatch@^3.1.8, micromatch@^3.1.9: - version "3.1.10" - resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23" - integrity sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg== - dependencies: - arr-diff "^4.0.0" - array-unique "^0.3.2" - braces "^2.3.1" - define-property "^2.0.2" - extend-shallow "^3.0.2" - extglob "^2.0.4" - fragment-cache "^0.2.1" - kind-of "^6.0.2" - nanomatch "^1.2.9" - object.pick "^1.3.0" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.2" - -miller-rabin@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/miller-rabin/-/miller-rabin-4.0.1.tgz#f080351c865b0dc562a8462966daa53543c78a4d" - integrity sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA== - dependencies: - bn.js "^4.0.0" - brorand "^1.0.1" - -"mime-db@>= 1.36.0 < 2", mime-db@~1.37.0: - version "1.37.0" - resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.37.0.tgz#0b6a0ce6fdbe9576e25f1f2d2fde8830dc0ad0d8" - integrity sha512-R3C4db6bgQhlIhPU48fUtdVmKnflq+hRdad7IyKhtFj06VPNVdk2RhiYL3UjQIlso8L+YxAtFkobT0VK+S/ybg== - -mime-types@^2.1.12, mime-types@~2.1.17, mime-types@~2.1.18, mime-types@~2.1.19: - version "2.1.21" - resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.21.tgz#28995aa1ecb770742fe6ae7e58f9181c744b3f96" - integrity sha512-3iL6DbwpyLzjR3xHSFNFeb9Nz/M8WDkX33t1GFQnFOllWk8pOrh/LSrB5OXlnlW5P9LH73X6loW/eogc+F5lJg== - dependencies: - mime-db "~1.37.0" - -mime@1.4.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/mime/-/mime-1.4.1.tgz#121f9ebc49e3766f311a76e1fa1c8003c4b03aa6" - integrity sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ== - -mime@^2.0.3, mime@^2.3.1: - version "2.3.1" - resolved "https://registry.yarnpkg.com/mime/-/mime-2.3.1.tgz#b1621c54d63b97c47d3cfe7f7215f7d64517c369" - integrity sha512-OEUllcVoydBHGN1z84yfQDimn58pZNNNXgZlHXSboxMlFvgI6MXSWpWKpFRra7H1HxpVhHTkrghfRW49k6yjeg== - -mimic-fn@^1.0.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-1.2.0.tgz#820c86a39334640e99516928bd03fca88057d022" - integrity sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ== - -mini-css-extract-plugin@0.4.3: - version "0.4.3" - resolved "https://registry.yarnpkg.com/mini-css-extract-plugin/-/mini-css-extract-plugin-0.4.3.tgz#98d60fcc5d228c3e36a9bd15a1d6816d6580beb8" - integrity sha512-Mxs0nxzF1kxPv4TRi2NimewgXlJqh0rGE30vviCU2WHrpbta6wklnUV9dr9FUtoAHmB3p3LeXEC+ZjgHvB0Dzg== - dependencies: - loader-utils "^1.1.0" - schema-utils "^1.0.0" - webpack-sources "^1.1.0" - -minimalistic-assert@^1.0.0, minimalistic-assert@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7" - integrity sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A== - -minimalistic-crypto-utils@^1.0.0, minimalistic-crypto-utils@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a" - integrity sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo= - -minimatch@3.0.4, minimatch@^3.0.3, minimatch@^3.0.4: - version "3.0.4" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" - integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA== - dependencies: - brace-expansion "^1.1.7" - -minimist@0.0.8: - version "0.0.8" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" - integrity sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0= - -minimist@^1.1.1, minimist@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" - integrity sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ= - -minimist@~0.0.1: - version "0.0.10" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.10.tgz#de3f98543dbf96082be48ad1a0c7cda836301dcf" - integrity sha1-3j+YVD2/lggr5IrRoMfNqDYwHc8= - -minipass@^2.2.1, minipass@^2.3.3: - version "2.3.5" - resolved "https://registry.yarnpkg.com/minipass/-/minipass-2.3.5.tgz#cacebe492022497f656b0f0f51e2682a9ed2d848" - integrity sha512-Gi1W4k059gyRbyVUZQ4mEqLm0YIUiGYfvxhF6SIlk3ui1WVxMTGfGdQ2SInh3PDrRTVvPKgULkpJtT4RH10+VA== - dependencies: - safe-buffer "^5.1.2" - yallist "^3.0.0" - -minizlib@^1.1.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-1.1.1.tgz#6734acc045a46e61d596a43bb9d9cd326e19cc42" - integrity sha512-TrfjCjk4jLhcJyGMYymBH6oTXcWjYbUAXTHDbtnWHjZC25h0cdajHuPE1zxb4DVmu8crfh+HwH/WMuyLG0nHBg== - dependencies: - minipass "^2.2.1" - -mississippi@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/mississippi/-/mississippi-2.0.0.tgz#3442a508fafc28500486feea99409676e4ee5a6f" - integrity sha512-zHo8v+otD1J10j/tC+VNoGK9keCuByhKovAvdn74dmxJl9+mWHnx6EMsDN4lgRoMI/eYo2nchAxniIbUPb5onw== - dependencies: - concat-stream "^1.5.0" - duplexify "^3.4.2" - end-of-stream "^1.1.0" - flush-write-stream "^1.0.0" - from2 "^2.1.0" - parallel-transform "^1.1.0" - pump "^2.0.1" - pumpify "^1.3.3" - stream-each "^1.1.0" - through2 "^2.0.0" - -mississippi@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/mississippi/-/mississippi-3.0.0.tgz#ea0a3291f97e0b5e8776b363d5f0a12d94c67022" - integrity sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA== - dependencies: - concat-stream "^1.5.0" - duplexify "^3.4.2" - end-of-stream "^1.1.0" - flush-write-stream "^1.0.0" - from2 "^2.1.0" - parallel-transform "^1.1.0" - pump "^3.0.0" - pumpify "^1.3.3" - stream-each "^1.1.0" - through2 "^2.0.0" - -mixin-deep@^1.2.0: - version "1.3.1" - resolved "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.1.tgz#a49e7268dce1a0d9698e45326c5626df3543d0fe" - integrity sha512-8ZItLHeEgaqEvd5lYBXfm4EZSFCX29Jb9K+lAHhDKzReKBQKj3R+7NOF6tjqYi9t4oI8VUfaWITJQm86wnXGNQ== - dependencies: - for-in "^1.0.2" - is-extendable "^1.0.1" - -mixin-object@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/mixin-object/-/mixin-object-2.0.1.tgz#4fb949441dab182540f1fe035ba60e1947a5e57e" - integrity sha1-T7lJRB2rGCVA8f4DW6YOGUel5X4= - dependencies: - for-in "^0.1.3" - is-extendable "^0.1.1" - -mkdirp@0.5.1, mkdirp@0.5.x, mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.0, mkdirp@~0.5.1: - version "0.5.1" - resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" - integrity sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM= - dependencies: - minimist "0.0.8" - -move-concurrently@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/move-concurrently/-/move-concurrently-1.0.1.tgz#be2c005fda32e0b29af1f05d7c4b33214c701f92" - integrity sha1-viwAX9oy4LKa8fBdfEszIUxwH5I= - dependencies: - aproba "^1.1.1" - copy-concurrently "^1.0.0" - fs-write-stream-atomic "^1.0.8" - mkdirp "^0.5.1" - rimraf "^2.5.4" - run-queue "^1.0.3" - -ms@2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" - integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g= - -ms@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.1.tgz#30a5864eb3ebb0a66f2ebe6d727af06a09d86e0a" - integrity sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg== - -multicast-dns-service-types@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/multicast-dns-service-types/-/multicast-dns-service-types-1.1.0.tgz#899f11d9686e5e05cb91b35d5f0e63b773cfc901" - integrity sha1-iZ8R2WhuXgXLkbNdXw5jt3PPyQE= - -multicast-dns@^6.0.1: - version "6.2.3" - resolved "https://registry.yarnpkg.com/multicast-dns/-/multicast-dns-6.2.3.tgz#a0ec7bd9055c4282f790c3c82f4e28db3b31b229" - integrity sha512-ji6J5enbMyGRHIAkAOu3WdV8nggqviKCEKtXcOqfphZZtQrmHKycfynJ2V7eVPUA4NhJ6V7Wf4TmGbTwKE9B6g== - dependencies: - dns-packet "^1.3.1" - thunky "^1.0.2" - -mute-stream@0.0.7: - version "0.0.7" - resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.7.tgz#3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab" - integrity sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s= - -nan@^2.9.2: - version "2.11.1" - resolved "https://registry.yarnpkg.com/nan/-/nan-2.11.1.tgz#90e22bccb8ca57ea4cd37cc83d3819b52eea6766" - integrity sha512-iji6k87OSXa0CcrLl9z+ZiYSuR2o+c0bGuNmXdrhTQTakxytAFsC56SArGYoiHlJlFoHSnvmhpceZJaXkVuOtA== - -nanoid@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-2.0.0.tgz#e1ab4a4b024a38d15531ba34a712a201540de639" - integrity sha512-SG2qscLE3iM4C0CNzGrsAojJHSVHMS1J8NnvJ31P1lH8P0hGHOiafmniNJz6w6q7vuoDlV7RdySlJgtqkFEVtQ== - -nanomatch@^1.2.9: - version "1.2.13" - resolved "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.13.tgz#b87a8aa4fc0de8fe6be88895b38983ff265bd119" - integrity sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA== - dependencies: - arr-diff "^4.0.0" - array-unique "^0.3.2" - define-property "^2.0.2" - extend-shallow "^3.0.2" - fragment-cache "^0.2.1" - is-windows "^1.0.2" - kind-of "^6.0.2" - object.pick "^1.3.0" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.1" - -natural-compare@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" - integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc= - -needle@^2.2.1: - version "2.2.4" - resolved "https://registry.yarnpkg.com/needle/-/needle-2.2.4.tgz#51931bff82533b1928b7d1d69e01f1b00ffd2a4e" - integrity sha512-HyoqEb4wr/rsoaIDfTH2aVL9nWtQqba2/HvMv+++m8u0dz808MaagKILxtfeSN7QU7nvbQ79zk3vYOJp9zsNEA== - dependencies: - debug "^2.1.2" - iconv-lite "^0.4.4" - sax "^1.2.4" - -negotiator@0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.1.tgz#2b327184e8992101177b28563fb5e7102acd0ca9" - integrity sha1-KzJxhOiZIQEXeyhWP7XnECrNDKk= - -neo-async@^2.5.0: - version "2.6.0" - resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.0.tgz#b9d15e4d71c6762908654b5183ed38b753340835" - integrity sha512-MFh0d/Wa7vkKO3Y3LlacqAEeHK0mckVqzDieUKTT+KGxi+zIpeVsFxymkIiRpbpDziHc290Xr9A1O4Om7otoRA== - -nice-try@^1.0.4: - version "1.0.5" - resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366" - integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ== - -no-case@^2.2.0: - version "2.3.2" - resolved "https://registry.yarnpkg.com/no-case/-/no-case-2.3.2.tgz#60b813396be39b3f1288a4c1ed5d1e7d28b464ac" - integrity sha512-rmTZ9kz+f3rCvK2TD1Ue/oZlns7OGoIWP4fc3llxxRXlOkHKoWPPWJOfFYpITabSow43QJbRIoHQXtt10VldyQ== - dependencies: - lower-case "^1.1.1" - -node-fetch@^1.0.1: - version "1.7.3" - resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-1.7.3.tgz#980f6f72d85211a5347c6b2bc18c5b84c3eb47ef" - integrity sha512-NhZ4CsKx7cYm2vSrBAr2PvFOe6sWDf0UYLRqA6svUYg7+/TSfVAu49jYC4BvQ4Sms9SZgdqGBgroqfDhJdTyKQ== - dependencies: - encoding "^0.1.11" - is-stream "^1.0.1" - -node-forge@0.7.5: - version "0.7.5" - resolved "https://registry.yarnpkg.com/node-forge/-/node-forge-0.7.5.tgz#6c152c345ce11c52f465c2abd957e8639cd674df" - integrity sha512-MmbQJ2MTESTjt3Gi/3yG1wGpIMhUfcIypUCGtTizFR9IiccFwxSpfp0vtIZlkFclEqERemxfnSdZEMR9VqqEFQ== - -node-int64@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b" - integrity sha1-h6kGXNs1XTGC2PlM4RGIuCXGijs= - -node-libs-browser@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/node-libs-browser/-/node-libs-browser-2.1.0.tgz#5f94263d404f6e44767d726901fff05478d600df" - integrity sha512-5AzFzdoIMb89hBGMZglEegffzgRg+ZFoUmisQ8HI4j1KDdpx13J0taNp2y9xPbur6W61gepGDDotGBVQ7mfUCg== - dependencies: - assert "^1.1.1" - browserify-zlib "^0.2.0" - buffer "^4.3.0" - console-browserify "^1.1.0" - constants-browserify "^1.0.0" - crypto-browserify "^3.11.0" - domain-browser "^1.1.1" - events "^1.0.0" - https-browserify "^1.0.0" - os-browserify "^0.3.0" - path-browserify "0.0.0" - process "^0.11.10" - punycode "^1.2.4" - querystring-es3 "^0.2.0" - readable-stream "^2.3.3" - stream-browserify "^2.0.1" - stream-http "^2.7.2" - string_decoder "^1.0.0" - timers-browserify "^2.0.4" - tty-browserify "0.0.0" - url "^0.11.0" - util "^0.10.3" - vm-browserify "0.0.4" - -node-notifier@^5.2.1: - version "5.3.0" - resolved "https://registry.yarnpkg.com/node-notifier/-/node-notifier-5.3.0.tgz#c77a4a7b84038733d5fb351aafd8a268bfe19a01" - integrity sha512-AhENzCSGZnZJgBARsUjnQ7DnZbzyP+HxlVXuD0xqAnvL8q+OqtSX7lGg9e8nHzwXkMMXNdVeqq4E2M3EUAqX6Q== - dependencies: - growly "^1.3.0" - semver "^5.5.0" - shellwords "^0.1.1" - which "^1.3.0" - -node-pre-gyp@^0.10.0: - version "0.10.3" - resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.10.3.tgz#3070040716afdc778747b61b6887bf78880b80fc" - integrity sha512-d1xFs+C/IPS8Id0qPTZ4bUT8wWryfR/OzzAFxweG+uLN85oPzyo2Iw6bVlLQ/JOdgNonXLCoRyqDzDWq4iw72A== - dependencies: - detect-libc "^1.0.2" - mkdirp "^0.5.1" - needle "^2.2.1" - nopt "^4.0.1" - npm-packlist "^1.1.6" - npmlog "^4.0.2" - rc "^1.2.7" - rimraf "^2.6.1" - semver "^5.3.0" - tar "^4" - -node-releases@^1.0.0-alpha.11, node-releases@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.0.2.tgz#27c296d9fca3b659c64f7d43ea47a31ad2a90e4b" - integrity sha512-zP8Asfg13lG9KDAW85rylSxXBYvaSdtjMIYKHUk8c1fM8drmFwRqbSYKYD+UlNVPUvrceSvgLUKHMOWR5jPWQg== - dependencies: - semver "^5.3.0" - -nopt@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.1.tgz#d0d4685afd5415193c8c7505602d0d17cd64474d" - integrity sha1-0NRoWv1UFRk8jHUFYC0NF81kR00= - dependencies: - abbrev "1" - osenv "^0.1.4" - -normalize-package-data@^2.3.2: - version "2.4.0" - resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.4.0.tgz#12f95a307d58352075a04907b84ac8be98ac012f" - integrity sha512-9jjUFbTPfEy3R/ad/2oNbKtW9Hgovl5O1FvFWKkKblNXoN/Oou6+9+KKohPK13Yc3/TyunyWhJp6gvRNR/PPAw== - dependencies: - hosted-git-info "^2.1.4" - is-builtin-module "^1.0.0" - semver "2 || 3 || 4 || 5" - validate-npm-package-license "^3.0.1" - -normalize-path@^2.0.1, normalize-path@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9" - integrity sha1-GrKLVW4Zg2Oowab35vogE3/mrtk= - dependencies: - remove-trailing-separator "^1.0.1" - -normalize-range@^0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/normalize-range/-/normalize-range-0.1.2.tgz#2d10c06bdfd312ea9777695a4d28439456b75942" - integrity sha1-LRDAa9/TEuqXd2laTShDlFa3WUI= - -normalize-url@^1.0.0: - version "1.9.1" - resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-1.9.1.tgz#2cc0d66b31ea23036458436e3620d85954c66c3c" - integrity sha1-LMDWazHqIwNkWENuNiDYWVTGbDw= - dependencies: - object-assign "^4.0.1" - prepend-http "^1.0.0" - query-string "^4.1.0" - sort-keys "^1.0.0" - -normalize-url@^3.0.0: - version "3.3.0" - resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-3.3.0.tgz#b2e1c4dc4f7c6d57743df733a4f5978d18650559" - integrity sha512-U+JJi7duF1o+u2pynbp2zXDW2/PADgC30f0GsHZtRh+HOcXHnw137TrNlyxxRvWW5fjKd3bcLHPxofWuCjaeZg== - -npm-bundled@^1.0.1: - version "1.0.5" - resolved "https://registry.yarnpkg.com/npm-bundled/-/npm-bundled-1.0.5.tgz#3c1732b7ba936b3a10325aef616467c0ccbcc979" - integrity sha512-m/e6jgWu8/v5niCUKQi9qQl8QdeEduFA96xHDDzFGqly0OOjI7c+60KM/2sppfnUU9JJagf+zs+yGhqSOFj71g== - -npm-packlist@^1.1.6: - version "1.1.12" - resolved "https://registry.yarnpkg.com/npm-packlist/-/npm-packlist-1.1.12.tgz#22bde2ebc12e72ca482abd67afc51eb49377243a" - integrity sha512-WJKFOVMeAlsU/pjXuqVdzU0WfgtIBCupkEVwn+1Y0ERAbUfWw8R4GjgVbaKnUjRoD2FoQbHOCbOyT5Mbs9Lw4g== - dependencies: - ignore-walk "^3.0.1" - npm-bundled "^1.0.1" - -npm-run-path@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f" - integrity sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8= - dependencies: - path-key "^2.0.0" - -npmlog@^4.0.2: - version "4.1.2" - resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b" - integrity sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg== - dependencies: - are-we-there-yet "~1.1.2" - console-control-strings "~1.1.0" - gauge "~2.7.3" - set-blocking "~2.0.0" - -nth-check@^1.0.2, nth-check@~1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-1.0.2.tgz#b2bd295c37e3dd58a3bf0700376663ba4d9cf05c" - integrity sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg== - dependencies: - boolbase "~1.0.0" - -num2fraction@^1.2.2: - version "1.2.2" - resolved "https://registry.yarnpkg.com/num2fraction/-/num2fraction-1.2.2.tgz#6f682b6a027a4e9ddfa4564cd2589d1d4e669ede" - integrity sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4= - -number-is-nan@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" - integrity sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0= - -nwsapi@^2.0.7, nwsapi@^2.0.9: - version "2.0.9" - resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.0.9.tgz#77ac0cdfdcad52b6a1151a84e73254edc33ed016" - integrity sha512-nlWFSCTYQcHk/6A9FFnfhKc14c3aFhfdNBXgo8Qgi9QTBu/qg3Ww+Uiz9wMzXd1T8GFxPc2QIHB6Qtf2XFryFQ== - -oauth-sign@~0.9.0: - version "0.9.0" - resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.9.0.tgz#47a7b016baa68b5fa0ecf3dee08a85c679ac6455" - integrity sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ== - -object-assign@4.1.1, object-assign@^4.0.1, object-assign@^4.1.0, object-assign@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" - integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= - -object-copy@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/object-copy/-/object-copy-0.1.0.tgz#7e7d858b781bd7c991a41ba975ed3812754e998c" - integrity sha1-fn2Fi3gb18mRpBupde04EnVOmYw= - dependencies: - copy-descriptor "^0.1.0" - define-property "^0.2.5" - kind-of "^3.0.3" - -object-hash@^1.1.4: - version "1.3.0" - resolved "https://registry.yarnpkg.com/object-hash/-/object-hash-1.3.0.tgz#76d9ba6ff113cf8efc0d996102851fe6723963e2" - integrity sha512-05KzQ70lSeGSrZJQXE5wNDiTkBJDlUT/myi6RX9dVIvz7a7Qh4oH93BQdiPMn27nldYvVQCKMUaM83AfizZlsQ== - -object-keys@^1.0.11, object-keys@^1.0.12: - version "1.0.12" - resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.0.12.tgz#09c53855377575310cca62f55bb334abff7b3ed2" - integrity sha512-FTMyFUm2wBcGHnH2eXmz7tC6IwlqQZ6mVZ+6dm6vZ4IQIHjs6FdNsQBuKGPuUUUY6NfJw2PshC08Tn6LzLDOag== - -object-visit@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/object-visit/-/object-visit-1.0.1.tgz#f79c4493af0c5377b59fe39d395e41042dd045bb" - integrity sha1-95xEk68MU3e1n+OdOV5BBC3QRbs= - dependencies: - isobject "^3.0.0" - -object.assign@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.0.tgz#968bf1100d7956bb3ca086f006f846b3bc4008da" - integrity sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w== - dependencies: - define-properties "^1.1.2" - function-bind "^1.1.1" - has-symbols "^1.0.0" - object-keys "^1.0.11" - -object.getownpropertydescriptors@^2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.0.3.tgz#8758c846f5b407adab0f236e0986f14b051caa16" - integrity sha1-h1jIRvW0B62rDyNuCYbxSwUcqhY= - dependencies: - define-properties "^1.1.2" - es-abstract "^1.5.1" - -object.omit@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/object.omit/-/object.omit-2.0.1.tgz#1a9c744829f39dbb858c76ca3579ae2a54ebd1fa" - integrity sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo= - dependencies: - for-own "^0.1.4" - is-extendable "^0.1.1" - -object.pick@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/object.pick/-/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747" - integrity sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c= - dependencies: - isobject "^3.0.1" - -object.values@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.0.4.tgz#e524da09b4f66ff05df457546ec72ac99f13069a" - integrity sha1-5STaCbT2b/Bd9FdUbscqyZ8TBpo= - dependencies: - define-properties "^1.1.2" - es-abstract "^1.6.1" - function-bind "^1.1.0" - has "^1.0.1" - -obuf@^1.0.0, obuf@^1.1.1: - version "1.1.2" - resolved "https://registry.yarnpkg.com/obuf/-/obuf-1.1.2.tgz#09bea3343d41859ebd446292d11c9d4db619084e" - integrity sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg== - -on-finished@~2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.3.0.tgz#20f1336481b083cd75337992a16971aa2d906947" - integrity sha1-IPEzZIGwg811M3mSoWlxqi2QaUc= - dependencies: - ee-first "1.1.1" - -on-headers@~1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/on-headers/-/on-headers-1.0.1.tgz#928f5d0f470d49342651ea6794b0857c100693f7" - integrity sha1-ko9dD0cNSTQmUepnlLCFfBAGk/c= - -once@^1.3.0, once@^1.3.1, once@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" - integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= - dependencies: - wrappy "1" - -onetime@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/onetime/-/onetime-2.0.1.tgz#067428230fd67443b2794b22bba528b6867962d4" - integrity sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ= - dependencies: - mimic-fn "^1.0.0" - -opn@5.4.0, opn@^5.1.0: - version "5.4.0" - resolved "https://registry.yarnpkg.com/opn/-/opn-5.4.0.tgz#cb545e7aab78562beb11aa3bfabc7042e1761035" - integrity sha512-YF9MNdVy/0qvJvDtunAOzFw9iasOQHpVthTCvGzxt61Il64AYSGdK+rYwld7NAfk9qJ7dt+hymBNSc9LNYS+Sw== - dependencies: - is-wsl "^1.1.0" - -optimist@^0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/optimist/-/optimist-0.6.1.tgz#da3ea74686fa21a19a111c326e90eb15a0196686" - integrity sha1-2j6nRob6IaGaERwybpDrFaAZZoY= - dependencies: - minimist "~0.0.1" - wordwrap "~0.0.2" - -optimize-css-assets-webpack-plugin@5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/optimize-css-assets-webpack-plugin/-/optimize-css-assets-webpack-plugin-5.0.1.tgz#9eb500711d35165b45e7fd60ba2df40cb3eb9159" - integrity sha512-Rqm6sSjWtx9FchdP0uzTQDc7GXDKnwVEGoSxjezPkzMewx7gEWE9IMUYKmigTRC4U3RaNSwYVnUDLuIdtTpm0A== - dependencies: - cssnano "^4.1.0" - last-call-webpack-plugin "^3.0.0" - -optionator@^0.8.1, optionator@^0.8.2: - version "0.8.2" - resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.2.tgz#364c5e409d3f4d6301d6c0b4c05bba50180aeb64" - integrity sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q= - dependencies: - deep-is "~0.1.3" - fast-levenshtein "~2.0.4" - levn "~0.3.0" - prelude-ls "~1.1.2" - type-check "~0.3.2" - wordwrap "~1.0.0" - -original@>=0.0.5: - version "1.0.2" - resolved "https://registry.yarnpkg.com/original/-/original-1.0.2.tgz#e442a61cffe1c5fd20a65f3261c26663b303f25f" - integrity sha512-hyBVl6iqqUOJ8FqRe+l/gS8H+kKYjrEndd5Pm1MfBtsEKA038HkkdbAl/72EAXGyonD/PFsvmVG+EvcIpliMBg== - dependencies: - url-parse "^1.4.3" - -os-browserify@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/os-browserify/-/os-browserify-0.3.0.tgz#854373c7f5c2315914fc9bfc6bd8238fdda1ec27" - integrity sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc= - -os-homedir@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" - integrity sha1-/7xJiDNuDoM94MFox+8VISGqf7M= - -os-locale@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-2.1.0.tgz#42bc2900a6b5b8bd17376c8e882b65afccf24bf2" - integrity sha512-3sslG3zJbEYcaC4YVAvDorjGxc7tv6KVATnLPZONiljsUncvihe9BQoVCEs0RZ1kmf4Hk9OBqlZfJZWI4GanKA== - dependencies: - execa "^0.7.0" - lcid "^1.0.0" - mem "^1.1.0" - -os-locale@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-3.0.1.tgz#3b014fbf01d87f60a1e5348d80fe870dc82c4620" - integrity sha512-7g5e7dmXPtzcP4bgsZ8ixDVqA7oWYuEz4lOSujeWyliPai4gfVDiFIcwBg3aGCPnmSGfzOKTK3ccPn0CKv3DBw== - dependencies: - execa "^0.10.0" - lcid "^2.0.0" - mem "^4.0.0" - -os-tmpdir@^1.0.0, os-tmpdir@^1.0.1, os-tmpdir@~1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" - integrity sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ= - -osenv@^0.1.4: - version "0.1.5" - resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.5.tgz#85cdfafaeb28e8677f416e287592b5f3f49ea410" - integrity sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g== - dependencies: - os-homedir "^1.0.0" - os-tmpdir "^1.0.0" - -p-defer@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/p-defer/-/p-defer-1.0.0.tgz#9f6eb182f6c9aa8cd743004a7d4f96b196b0fb0c" - integrity sha1-n26xgvbJqozXQwBKfU+WsZaw+ww= - -p-finally@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" - integrity sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4= - -p-is-promise@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/p-is-promise/-/p-is-promise-1.1.0.tgz#9c9456989e9f6588017b0434d56097675c3da05e" - integrity sha1-nJRWmJ6fZYgBewQ01WCXZ1w9oF4= - -p-limit@^1.1.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.3.0.tgz#b86bd5f0c25690911c7590fcbfc2010d54b3ccb8" - integrity sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q== - dependencies: - p-try "^1.0.0" - -p-limit@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.0.0.tgz#e624ed54ee8c460a778b3c9f3670496ff8a57aec" - integrity sha512-fl5s52lI5ahKCernzzIyAP0QAZbGIovtVHGwpcu1Jr/EpzLVDI2myISHwGqK7m8uQFugVWSrbxH7XnhGtvEc+A== - dependencies: - p-try "^2.0.0" - -p-locate@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-2.0.0.tgz#20a0103b222a70c8fd39cc2e580680f3dde5ec43" - integrity sha1-IKAQOyIqcMj9OcwuWAaA893l7EM= - dependencies: - p-limit "^1.1.0" - -p-locate@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-3.0.0.tgz#322d69a05c0264b25997d9f40cd8a891ab0064a4" - integrity sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ== - dependencies: - p-limit "^2.0.0" - -p-map@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/p-map/-/p-map-1.2.0.tgz#e4e94f311eabbc8633a1e79908165fca26241b6b" - integrity sha512-r6zKACMNhjPJMTl8KcFH4li//gkrXWfbD6feV8l6doRHlzljFWGJ2AP6iKaCJXyZmAUMOPtvbW7EXkbWO/pLEA== - -p-try@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3" - integrity sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M= - -p-try@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.0.0.tgz#85080bb87c64688fa47996fe8f7dfbe8211760b1" - integrity sha512-hMp0onDKIajHfIkdRk3P4CdCmErkYAxxDtP3Wx/4nZ3aGlau2VKh3mZpcuFkH27WQkL/3WBCPOktzA9ZOAnMQQ== - -pako@~1.0.5: - version "1.0.6" - resolved "https://registry.yarnpkg.com/pako/-/pako-1.0.6.tgz#0101211baa70c4bca4a0f63f2206e97b7dfaf258" - integrity sha512-lQe48YPsMJAig+yngZ87Lus+NF+3mtu7DVOBu6b/gHO1YpKwIj5AWjZ/TOS7i46HD/UixzWb1zeWDZfGZ3iYcg== - -parallel-transform@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/parallel-transform/-/parallel-transform-1.1.0.tgz#d410f065b05da23081fcd10f28854c29bda33b06" - integrity sha1-1BDwZbBdojCB/NEPKIVMKb2jOwY= - dependencies: - cyclist "~0.2.2" - inherits "^2.0.3" - readable-stream "^2.1.5" - -param-case@2.1.x: - version "2.1.1" - resolved "https://registry.yarnpkg.com/param-case/-/param-case-2.1.1.tgz#df94fd8cf6531ecf75e6bef9a0858fbc72be2247" - integrity sha1-35T9jPZTHs915r75oIWPvHK+Ikc= - dependencies: - no-case "^2.2.0" - -parse-asn1@^5.0.0: - version "5.1.1" - resolved "https://registry.yarnpkg.com/parse-asn1/-/parse-asn1-5.1.1.tgz#f6bf293818332bd0dab54efb16087724745e6ca8" - integrity sha512-KPx7flKXg775zZpnp9SxJlz00gTd4BmJ2yJufSc44gMCRrRQ7NSzAcSJQfifuOLgW6bEi+ftrALtsgALeB2Adw== - dependencies: - asn1.js "^4.0.0" - browserify-aes "^1.0.0" - create-hash "^1.1.0" - evp_bytestokey "^1.0.0" - pbkdf2 "^3.0.3" - -parse-glob@^3.0.4: - version "3.0.4" - resolved "https://registry.yarnpkg.com/parse-glob/-/parse-glob-3.0.4.tgz#b2c376cfb11f35513badd173ef0bb6e3a388391c" - integrity sha1-ssN2z7EfNVE7rdFz7wu246OIORw= - dependencies: - glob-base "^0.3.0" - is-dotfile "^1.0.0" - is-extglob "^1.0.0" - is-glob "^2.0.0" - -parse-json@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9" - integrity sha1-9ID0BDTvgHQfhGkJn43qGPVaTck= - dependencies: - error-ex "^1.2.0" - -parse-json@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-4.0.0.tgz#be35f5425be1f7f6c747184f98a788cb99477ee0" - integrity sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA= - dependencies: - error-ex "^1.3.1" - json-parse-better-errors "^1.0.1" - -parse-passwd@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/parse-passwd/-/parse-passwd-1.0.0.tgz#6d5b934a456993b23d37f40a382d6f1666a8e5c6" - integrity sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY= - -parse5@4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/parse5/-/parse5-4.0.0.tgz#6d78656e3da8d78b4ec0b906f7c08ef1dfe3f608" - integrity sha512-VrZ7eOd3T1Fk4XWNXMgiGBK/z0MG48BWG2uQNU4I72fkQuKUTZpl+u9k+CxEG0twMVzSmXEEz12z5Fnw1jIQFA== - -parse5@5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/parse5/-/parse5-5.1.0.tgz#c59341c9723f414c452975564c7c00a68d58acd2" - integrity sha512-fxNG2sQjHvlVAYmzBZS9YlDp6PTSSDwa98vkD4QgVDDCAo84z5X1t5XyJQ62ImdLXx5NdIIfihey6xpum9/gRQ== - -parseurl@~1.3.2: - version "1.3.2" - resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.2.tgz#fc289d4ed8993119460c156253262cdc8de65bf3" - integrity sha1-/CidTtiZMRlGDBViUyYs3I3mW/M= - -pascalcase@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/pascalcase/-/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14" - integrity sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ= - -path-browserify@0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/path-browserify/-/path-browserify-0.0.0.tgz#a0b870729aae214005b7d5032ec2cbbb0fb4451a" - integrity sha1-oLhwcpquIUAFt9UDLsLLuw+0RRo= - -path-dirname@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/path-dirname/-/path-dirname-1.0.2.tgz#cc33d24d525e099a5388c0336c6e32b9160609e0" - integrity sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA= - -path-exists@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-2.1.0.tgz#0feb6c64f0fc518d9a754dd5efb62c7022761f4b" - integrity sha1-D+tsZPD8UY2adU3V77YscCJ2H0s= - dependencies: - pinkie-promise "^2.0.0" - -path-exists@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" - integrity sha1-zg6+ql94yxiSXqfYENe1mwEP1RU= - -path-is-absolute@^1.0.0, path-is-absolute@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" - integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= - -path-is-inside@^1.0.1, path-is-inside@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53" - integrity sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM= - -path-key@^2.0.0, path-key@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" - integrity sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A= - -path-parse@^1.0.5: - version "1.0.6" - resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.6.tgz#d62dbb5679405d72c4737ec58600e9ddcf06d24c" - integrity sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw== - -path-to-regexp@0.1.7: - version "0.1.7" - resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.7.tgz#df604178005f522f15eb4490e7247a1bfaa67f8c" - integrity sha1-32BBeABfUi8V60SQ5yR6G/qmf4w= - -path-to-regexp@^1.7.0: - version "1.7.0" - resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-1.7.0.tgz#59fde0f435badacba103a84e9d3bc64e96b9937d" - integrity sha1-Wf3g9DW62suhA6hOnTvGTpa5k30= - dependencies: - isarray "0.0.1" - -path-type@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/path-type/-/path-type-1.1.0.tgz#59c44f7ee491da704da415da5a4070ba4f8fe441" - integrity sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE= - dependencies: - graceful-fs "^4.1.2" - pify "^2.0.0" - pinkie-promise "^2.0.0" - -path-type@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/path-type/-/path-type-2.0.0.tgz#f012ccb8415b7096fc2daa1054c3d72389594c73" - integrity sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM= - dependencies: - pify "^2.0.0" - -path-type@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/path-type/-/path-type-3.0.0.tgz#cef31dc8e0a1a3bb0d105c0cd97cf3bf47f4e36f" - integrity sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg== - dependencies: - pify "^3.0.0" - -pbkdf2@^3.0.3: - version "3.0.17" - resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.0.17.tgz#976c206530617b14ebb32114239f7b09336e93a6" - integrity sha512-U/il5MsrZp7mGg3mSQfn742na2T+1/vHDCG5/iTI3X9MKUuYUZVLQhyRsg06mCgDBTd57TxzgZt7P+fYfjRLtA== - dependencies: - create-hash "^1.1.2" - create-hmac "^1.1.4" - ripemd160 "^2.0.1" - safe-buffer "^5.0.1" - sha.js "^2.4.8" - -performance-now@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" - integrity sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns= - -pify@^2.0.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" - integrity sha1-7RQaasBDqEnqWISY59yosVMw6Qw= - -pify@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176" - integrity sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY= - -pinkie-promise@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa" - integrity sha1-ITXW36ejWMBprJsXh3YogihFD/o= - dependencies: - pinkie "^2.0.0" - -pinkie@^2.0.0: - version "2.0.4" - resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870" - integrity sha1-clVrgM+g1IqXToDnckjoDtT3+HA= - -pkg-dir@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-1.0.0.tgz#7a4b508a8d5bb2d629d447056ff4e9c9314cf3d4" - integrity sha1-ektQio1bstYp1EcFb/TpyTFM89Q= - dependencies: - find-up "^1.0.0" - -pkg-dir@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-2.0.0.tgz#f6d5d1109e19d63edf428e0bd57e12777615334b" - integrity sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s= - dependencies: - find-up "^2.1.0" - -pkg-dir@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-3.0.0.tgz#2749020f239ed990881b1f71210d51eb6523bea3" - integrity sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw== - dependencies: - find-up "^3.0.0" - -pkg-up@2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/pkg-up/-/pkg-up-2.0.0.tgz#c819ac728059a461cab1c3889a2be3c49a004d7f" - integrity sha1-yBmscoBZpGHKscOImivjxJoATX8= - dependencies: - find-up "^2.1.0" - -pluralize@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/pluralize/-/pluralize-7.0.0.tgz#298b89df8b93b0221dbf421ad2b1b1ea23fc6777" - integrity sha512-ARhBOdzS3e41FbkW/XWrTEtukqqLoK5+Z/4UeDaLuSW+39JPeFgs4gCGqsrJHVZX0fUrx//4OF0K1CUGwlIFow== - -pn@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/pn/-/pn-1.1.0.tgz#e2f4cef0e219f463c179ab37463e4e1ecdccbafb" - integrity sha512-2qHaIQr2VLRFoxe2nASzsV6ef4yOOH+Fi9FBOVH6cqeSgUnoyySPZkxzLuzd+RYOQTRpROA0ztTMqxROKSb/nA== - -pnp-webpack-plugin@1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/pnp-webpack-plugin/-/pnp-webpack-plugin-1.1.0.tgz#947a96d1db94bb5a1fc014d83b581e428699ac8c" - integrity sha512-CPCdcFxx7fEcDMWTDjXe2Wypt4JuMt4q5Q2UrpTcyBBkLiCIyPEh/mCGmUWIcNkKGyXwQ9Y2wVhlKm6ketiBNQ== - -polished@^2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/polished/-/polished-2.3.0.tgz#66c8b66bc666e95d9d12d760dac9df758aed8f8e" - integrity sha512-G2yD9LhJy5HBuU+Im5qe70ubaJI/ZTTOIJO6GRMwJ2WSoAiPzlm8+LjAXMnm9/K0E0NumRVHvQu2HHPKQSYQjw== - dependencies: - "@babel/runtime" "^7.0.0" - -portfinder@^1.0.9: - version "1.0.19" - resolved "https://registry.yarnpkg.com/portfinder/-/portfinder-1.0.19.tgz#07e87914a55242dcda5b833d42f018d6875b595f" - integrity sha512-23aeQKW9KgHe6citUrG3r9HjeX6vls0h713TAa+CwTKZwNIr/pD2ApaxYF4Um3ZZyq4ar+Siv3+fhoHaIwSOSw== - dependencies: - async "^1.5.2" - debug "^2.2.0" - mkdirp "0.5.x" - -posix-character-classes@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" - integrity sha1-AerA/jta9xoqbAL+q7jB/vfgDqs= - -postcss-attribute-case-insensitive@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/postcss-attribute-case-insensitive/-/postcss-attribute-case-insensitive-4.0.0.tgz#807b6a797ad8bf1c821b2d51cf641e9dd3837624" - integrity sha512-K/zqdg0/UgUgC8qR0lDuxYzmowPpnvrrNC5YuoqzhHMubR9AuhsPlpVu3jjkLHgDAzR+ohD/m7//iGnN9WxbzQ== - dependencies: - postcss "^7.0.2" - postcss-selector-parser "^5.0.0-rc.3" - -postcss-calc@^7.0.0: - version "7.0.1" - resolved "https://registry.yarnpkg.com/postcss-calc/-/postcss-calc-7.0.1.tgz#36d77bab023b0ecbb9789d84dcb23c4941145436" - integrity sha512-oXqx0m6tb4N3JGdmeMSc/i91KppbYsFZKdH0xMOqK8V1rJlzrKlTdokz8ozUXLVejydRN6u2IddxpcijRj2FqQ== - dependencies: - css-unit-converter "^1.1.1" - postcss "^7.0.5" - postcss-selector-parser "^5.0.0-rc.4" - postcss-value-parser "^3.3.1" - -postcss-color-functional-notation@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/postcss-color-functional-notation/-/postcss-color-functional-notation-2.0.1.tgz#5efd37a88fbabeb00a2966d1e53d98ced93f74e0" - integrity sha512-ZBARCypjEDofW4P6IdPVTLhDNXPRn8T2s1zHbZidW6rPaaZvcnCS2soYFIQJrMZSxiePJ2XIYTlcb2ztr/eT2g== - dependencies: - postcss "^7.0.2" - postcss-values-parser "^2.0.0" - -postcss-color-hex-alpha@^5.0.2: - version "5.0.2" - resolved "https://registry.yarnpkg.com/postcss-color-hex-alpha/-/postcss-color-hex-alpha-5.0.2.tgz#e9b1886bb038daed33f6394168c210b40bb4fdb6" - integrity sha512-8bIOzQMGdZVifoBQUJdw+yIY00omBd2EwkJXepQo9cjp1UOHHHoeRDeSzTP6vakEpaRc6GAIOfvcQR7jBYaG5Q== - dependencies: - postcss "^7.0.2" - postcss-values-parser "^2.0.0" - -postcss-color-mod-function@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/postcss-color-mod-function/-/postcss-color-mod-function-3.0.3.tgz#816ba145ac11cc3cb6baa905a75a49f903e4d31d" - integrity sha512-YP4VG+xufxaVtzV6ZmhEtc+/aTXH3d0JLpnYfxqTvwZPbJhWqp8bSY3nfNzNRFLgB4XSaBA82OE4VjOOKpCdVQ== - dependencies: - "@csstools/convert-colors" "^1.4.0" - postcss "^7.0.2" - postcss-values-parser "^2.0.0" - -postcss-color-rebeccapurple@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-color-rebeccapurple/-/postcss-color-rebeccapurple-4.0.1.tgz#c7a89be872bb74e45b1e3022bfe5748823e6de77" - integrity sha512-aAe3OhkS6qJXBbqzvZth2Au4V3KieR5sRQ4ptb2b2O8wgvB3SJBsdG+jsn2BZbbwekDG8nTfcCNKcSfe/lEy8g== - dependencies: - postcss "^7.0.2" - postcss-values-parser "^2.0.0" - -postcss-colormin@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-colormin/-/postcss-colormin-4.0.2.tgz#93cd1fa11280008696887db1a528048b18e7ed99" - integrity sha512-1QJc2coIehnVFsz0otges8kQLsryi4lo19WD+U5xCWvXd0uw/Z+KKYnbiNDCnO9GP+PvErPHCG0jNvWTngk9Rw== - dependencies: - browserslist "^4.0.0" - color "^3.0.0" - has "^1.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-convert-values@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-convert-values/-/postcss-convert-values-4.0.1.tgz#ca3813ed4da0f812f9d43703584e449ebe189a7f" - integrity sha512-Kisdo1y77KUC0Jmn0OXU/COOJbzM8cImvw1ZFsBgBgMgb1iL23Zs/LXRe3r+EZqM3vGYKdQ2YJVQ5VkJI+zEJQ== - dependencies: - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-custom-media@^7.0.4: - version "7.0.7" - resolved "https://registry.yarnpkg.com/postcss-custom-media/-/postcss-custom-media-7.0.7.tgz#bbc698ed3089ded61aad0f5bfb1fb48bf6969e73" - integrity sha512-bWPCdZKdH60wKOTG4HKEgxWnZVjAIVNOJDvi3lkuTa90xo/K0YHa2ZnlKLC5e2qF8qCcMQXt0yzQITBp8d0OFA== - dependencies: - postcss "^7.0.5" - -postcss-custom-properties@^8.0.5: - version "8.0.8" - resolved "https://registry.yarnpkg.com/postcss-custom-properties/-/postcss-custom-properties-8.0.8.tgz#1812e2553805e1affce93164dd1709ef6b69c53e" - integrity sha512-G3U8uSxj0B4jPJ1QBF5WYeW716n5HV/wcH2lOTV1V+EI+F0T0/ZOhl32MLLTMD79bN2mE77IOoclbCoLl4QtPA== - dependencies: - postcss "^7.0.5" - postcss-values-parser "^2.0.0" - -postcss-custom-selectors@^5.1.2: - version "5.1.2" - resolved "https://registry.yarnpkg.com/postcss-custom-selectors/-/postcss-custom-selectors-5.1.2.tgz#64858c6eb2ecff2fb41d0b28c9dd7b3db4de7fba" - integrity sha512-DSGDhqinCqXqlS4R7KGxL1OSycd1lydugJ1ky4iRXPHdBRiozyMHrdu0H3o7qNOCiZwySZTUI5MV0T8QhCLu+w== - dependencies: - postcss "^7.0.2" - postcss-selector-parser "^5.0.0-rc.3" - -postcss-dir-pseudo-class@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/postcss-dir-pseudo-class/-/postcss-dir-pseudo-class-5.0.0.tgz#6e3a4177d0edb3abcc85fdb6fbb1c26dabaeaba2" - integrity sha512-3pm4oq8HYWMZePJY+5ANriPs3P07q+LW6FAdTlkFH2XqDdP4HeeJYMOzn0HYLhRSjBO3fhiqSwwU9xEULSrPgw== - dependencies: - postcss "^7.0.2" - postcss-selector-parser "^5.0.0-rc.3" - -postcss-discard-comments@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-discard-comments/-/postcss-discard-comments-4.0.1.tgz#30697735b0c476852a7a11050eb84387a67ef55d" - integrity sha512-Ay+rZu1Sz6g8IdzRjUgG2NafSNpp2MSMOQUb+9kkzzzP+kh07fP0yNbhtFejURnyVXSX3FYy2nVNW1QTnNjgBQ== - dependencies: - postcss "^7.0.0" - -postcss-discard-duplicates@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-discard-duplicates/-/postcss-discard-duplicates-4.0.2.tgz#3fe133cd3c82282e550fc9b239176a9207b784eb" - integrity sha512-ZNQfR1gPNAiXZhgENFfEglF93pciw0WxMkJeVmw8eF+JZBbMD7jp6C67GqJAXVZP2BWbOztKfbsdmMp/k8c6oQ== - dependencies: - postcss "^7.0.0" - -postcss-discard-empty@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-discard-empty/-/postcss-discard-empty-4.0.1.tgz#c8c951e9f73ed9428019458444a02ad90bb9f765" - integrity sha512-B9miTzbznhDjTfjvipfHoqbWKwd0Mj+/fL5s1QOz06wufguil+Xheo4XpOnc4NqKYBCNqqEzgPv2aPBIJLox0w== - dependencies: - postcss "^7.0.0" - -postcss-discard-overridden@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-discard-overridden/-/postcss-discard-overridden-4.0.1.tgz#652aef8a96726f029f5e3e00146ee7a4e755ff57" - integrity sha512-IYY2bEDD7g1XM1IDEsUT4//iEYCxAmP5oDSFMVU/JVvT7gh+l4fmjciLqGgwjdWpQIdb0Che2VX00QObS5+cTg== - dependencies: - postcss "^7.0.0" - -postcss-env-function@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/postcss-env-function/-/postcss-env-function-2.0.2.tgz#0f3e3d3c57f094a92c2baf4b6241f0b0da5365d7" - integrity sha512-rwac4BuZlITeUbiBq60h/xbLzXY43qOsIErngWa4l7Mt+RaSkT7QBjXVGTcBHupykkblHMDrBFh30zchYPaOUw== - dependencies: - postcss "^7.0.2" - postcss-values-parser "^2.0.0" - -postcss-flexbugs-fixes@4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/postcss-flexbugs-fixes/-/postcss-flexbugs-fixes-4.1.0.tgz#e094a9df1783e2200b7b19f875dcad3b3aff8b20" - integrity sha512-jr1LHxQvStNNAHlgco6PzY308zvLklh7SJVYuWUwyUQncofaAlD2l+P/gxKHOdqWKe7xJSkVLFF/2Tp+JqMSZA== - dependencies: - postcss "^7.0.0" - -postcss-focus-visible@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/postcss-focus-visible/-/postcss-focus-visible-4.0.0.tgz#477d107113ade6024b14128317ade2bd1e17046e" - integrity sha512-Z5CkWBw0+idJHSV6+Bgf2peDOFf/x4o+vX/pwcNYrWpXFrSfTkQ3JQ1ojrq9yS+upnAlNRHeg8uEwFTgorjI8g== - dependencies: - postcss "^7.0.2" - -postcss-focus-within@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/postcss-focus-within/-/postcss-focus-within-3.0.0.tgz#763b8788596cee9b874c999201cdde80659ef680" - integrity sha512-W0APui8jQeBKbCGZudW37EeMCjDeVxKgiYfIIEo8Bdh5SpB9sxds/Iq8SEuzS0Q4YFOlG7EPFulbbxujpkrV2w== - dependencies: - postcss "^7.0.2" - -postcss-font-variant@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/postcss-font-variant/-/postcss-font-variant-4.0.0.tgz#71dd3c6c10a0d846c5eda07803439617bbbabacc" - integrity sha512-M8BFYKOvCrI2aITzDad7kWuXXTm0YhGdP9Q8HanmN4EF1Hmcgs1KK5rSHylt/lUJe8yLxiSwWAHdScoEiIxztg== - dependencies: - postcss "^7.0.2" - -postcss-gap-properties@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/postcss-gap-properties/-/postcss-gap-properties-2.0.0.tgz#431c192ab3ed96a3c3d09f2ff615960f902c1715" - integrity sha512-QZSqDaMgXCHuHTEzMsS2KfVDOq7ZFiknSpkrPJY6jmxbugUPTuSzs/vuE5I3zv0WAS+3vhrlqhijiprnuQfzmg== - dependencies: - postcss "^7.0.2" - -postcss-image-set-function@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/postcss-image-set-function/-/postcss-image-set-function-3.0.1.tgz#28920a2f29945bed4c3198d7df6496d410d3f288" - integrity sha512-oPTcFFip5LZy8Y/whto91L9xdRHCWEMs3e1MdJxhgt4jy2WYXfhkng59fH5qLXSCPN8k4n94p1Czrfe5IOkKUw== - dependencies: - postcss "^7.0.2" - postcss-values-parser "^2.0.0" - -postcss-initial@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/postcss-initial/-/postcss-initial-3.0.0.tgz#1772512faf11421b791fb2ca6879df5f68aa0517" - integrity sha512-WzrqZ5nG9R9fUtrA+we92R4jhVvEB32IIRTzfIG/PLL8UV4CvbF1ugTEHEFX6vWxl41Xt5RTCJPEZkuWzrOM+Q== - dependencies: - lodash.template "^4.2.4" - postcss "^7.0.2" - -postcss-lab-function@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/postcss-lab-function/-/postcss-lab-function-2.0.1.tgz#bb51a6856cd12289ab4ae20db1e3821ef13d7d2e" - integrity sha512-whLy1IeZKY+3fYdqQFuDBf8Auw+qFuVnChWjmxm/UhHWqNHZx+B99EwxTvGYmUBqe3Fjxs4L1BoZTJmPu6usVg== - dependencies: - "@csstools/convert-colors" "^1.4.0" - postcss "^7.0.2" - postcss-values-parser "^2.0.0" - -postcss-load-config@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/postcss-load-config/-/postcss-load-config-2.0.0.tgz#f1312ddbf5912cd747177083c5ef7a19d62ee484" - integrity sha512-V5JBLzw406BB8UIfsAWSK2KSwIJ5yoEIVFb4gVkXci0QdKgA24jLmHZ/ghe/GgX0lJ0/D1uUK1ejhzEY94MChQ== - dependencies: - cosmiconfig "^4.0.0" - import-cwd "^2.0.0" - -postcss-loader@3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/postcss-loader/-/postcss-loader-3.0.0.tgz#6b97943e47c72d845fa9e03f273773d4e8dd6c2d" - integrity sha512-cLWoDEY5OwHcAjDnkyRQzAXfs2jrKjXpO/HQFcc5b5u/r7aa471wdmChmwfnv7x2u840iat/wi0lQ5nbRgSkUA== - dependencies: - loader-utils "^1.1.0" - postcss "^7.0.0" - postcss-load-config "^2.0.0" - schema-utils "^1.0.0" - -postcss-logical@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/postcss-logical/-/postcss-logical-3.0.0.tgz#2495d0f8b82e9f262725f75f9401b34e7b45d5b5" - integrity sha512-1SUKdJc2vuMOmeItqGuNaC+N8MzBWFWEkAnRnLpFYj1tGGa7NqyVBujfRtgNa2gXR+6RkGUiB2O5Vmh7E2RmiA== - dependencies: - postcss "^7.0.2" - -postcss-media-minmax@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/postcss-media-minmax/-/postcss-media-minmax-4.0.0.tgz#b75bb6cbc217c8ac49433e12f22048814a4f5ed5" - integrity sha512-fo9moya6qyxsjbFAYl97qKO9gyre3qvbMnkOZeZwlsW6XYFsvs2DMGDlchVLfAd8LHPZDxivu/+qW2SMQeTHBw== - dependencies: - postcss "^7.0.2" - -postcss-merge-longhand@^4.0.9: - version "4.0.9" - resolved "https://registry.yarnpkg.com/postcss-merge-longhand/-/postcss-merge-longhand-4.0.9.tgz#c2428b994833ffb2a072f290ca642e75ceabcd6f" - integrity sha512-UVMXrXF5K/kIwUbK/crPFCytpWbNX2Q3dZSc8+nQUgfOHrCT4+MHncpdxVphUlQeZxlLXUJbDyXc5NBhTnS2tA== - dependencies: - css-color-names "0.0.4" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - stylehacks "^4.0.0" - -postcss-merge-rules@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-merge-rules/-/postcss-merge-rules-4.0.2.tgz#2be44401bf19856f27f32b8b12c0df5af1b88e74" - integrity sha512-UiuXwCCJtQy9tAIxsnurfF0mrNHKc4NnNx6NxqmzNNjXpQwLSukUxELHTRF0Rg1pAmcoKLih8PwvZbiordchag== - dependencies: - browserslist "^4.0.0" - caniuse-api "^3.0.0" - cssnano-util-same-parent "^4.0.0" - postcss "^7.0.0" - postcss-selector-parser "^3.0.0" - vendors "^1.0.0" - -postcss-minify-font-values@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-minify-font-values/-/postcss-minify-font-values-4.0.2.tgz#cd4c344cce474343fac5d82206ab2cbcb8afd5a6" - integrity sha512-j85oO6OnRU9zPf04+PZv1LYIYOprWm6IA6zkXkrJXyRveDEuQggG6tvoy8ir8ZwjLxLuGfNkCZEQG7zan+Hbtg== - dependencies: - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-minify-gradients@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-minify-gradients/-/postcss-minify-gradients-4.0.1.tgz#6da95c6e92a809f956bb76bf0c04494953e1a7dd" - integrity sha512-pySEW3E6Ly5mHm18rekbWiAjVi/Wj8KKt2vwSfVFAWdW6wOIekgqxKxLU7vJfb107o3FDNPkaYFCxGAJBFyogA== - dependencies: - cssnano-util-get-arguments "^4.0.0" - is-color-stop "^1.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-minify-params@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-minify-params/-/postcss-minify-params-4.0.1.tgz#5b2e2d0264dd645ef5d68f8fec0d4c38c1cf93d2" - integrity sha512-h4W0FEMEzBLxpxIVelRtMheskOKKp52ND6rJv+nBS33G1twu2tCyurYj/YtgU76+UDCvWeNs0hs8HFAWE2OUFg== - dependencies: - alphanum-sort "^1.0.0" - browserslist "^4.0.0" - cssnano-util-get-arguments "^4.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - uniqs "^2.0.0" - -postcss-minify-selectors@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-minify-selectors/-/postcss-minify-selectors-4.0.1.tgz#a891c197977cc37abf60b3ea06b84248b1c1e9cd" - integrity sha512-8+plQkomve3G+CodLCgbhAKrb5lekAnLYuL1d7Nz+/7RANpBEVdgBkPNwljfSKvZ9xkkZTZITd04KP+zeJTJqg== - dependencies: - alphanum-sort "^1.0.0" - has "^1.0.0" - postcss "^7.0.0" - postcss-selector-parser "^3.0.0" - -postcss-modules-extract-imports@^1.2.0: - version "1.2.1" - resolved "https://registry.yarnpkg.com/postcss-modules-extract-imports/-/postcss-modules-extract-imports-1.2.1.tgz#dc87e34148ec7eab5f791f7cd5849833375b741a" - integrity sha512-6jt9XZwUhwmRUhb/CkyJY020PYaPJsCyt3UjbaWo6XEbH/94Hmv6MP7fG2C5NDU/BcHzyGYxNtHvM+LTf9HrYw== - dependencies: - postcss "^6.0.1" - -postcss-modules-local-by-default@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-1.2.0.tgz#f7d80c398c5a393fa7964466bd19500a7d61c069" - integrity sha1-99gMOYxaOT+nlkRmvRlQCn1hwGk= - dependencies: - css-selector-tokenizer "^0.7.0" - postcss "^6.0.1" - -postcss-modules-scope@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-1.1.0.tgz#d6ea64994c79f97b62a72b426fbe6056a194bb90" - integrity sha1-1upkmUx5+XtipytCb75gVqGUu5A= - dependencies: - css-selector-tokenizer "^0.7.0" - postcss "^6.0.1" - -postcss-modules-values@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/postcss-modules-values/-/postcss-modules-values-1.3.0.tgz#ecffa9d7e192518389f42ad0e83f72aec456ea20" - integrity sha1-7P+p1+GSUYOJ9CrQ6D9yrsRW6iA= - dependencies: - icss-replace-symbols "^1.1.0" - postcss "^6.0.1" - -postcss-nesting@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/postcss-nesting/-/postcss-nesting-7.0.0.tgz#6e26a770a0c8fcba33782a6b6f350845e1a448f6" - integrity sha512-WSsbVd5Ampi3Y0nk/SKr5+K34n52PqMqEfswu6RtU4r7wA8vSD+gM8/D9qq4aJkHImwn1+9iEFTbjoWsQeqtaQ== - dependencies: - postcss "^7.0.2" - -postcss-normalize-charset@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-normalize-charset/-/postcss-normalize-charset-4.0.1.tgz#8b35add3aee83a136b0471e0d59be58a50285dd4" - integrity sha512-gMXCrrlWh6G27U0hF3vNvR3w8I1s2wOBILvA87iNXaPvSNo5uZAMYsZG7XjCUf1eVxuPfyL4TJ7++SGZLc9A3g== - dependencies: - postcss "^7.0.0" - -postcss-normalize-display-values@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-normalize-display-values/-/postcss-normalize-display-values-4.0.1.tgz#d9a83d47c716e8a980f22f632c8b0458cfb48a4c" - integrity sha512-R5mC4vaDdvsrku96yXP7zak+O3Mm9Y8IslUobk7IMP+u/g+lXvcN4jngmHY5zeJnrQvE13dfAg5ViU05ZFDwdg== - dependencies: - cssnano-util-get-match "^4.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-normalize-positions@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-normalize-positions/-/postcss-normalize-positions-4.0.1.tgz#ee2d4b67818c961964c6be09d179894b94fd6ba1" - integrity sha512-GNoOaLRBM0gvH+ZRb2vKCIujzz4aclli64MBwDuYGU2EY53LwiP7MxOZGE46UGtotrSnmarPPZ69l2S/uxdaWA== - dependencies: - cssnano-util-get-arguments "^4.0.0" - has "^1.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-normalize-repeat-style@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-4.0.1.tgz#5293f234b94d7669a9f805495d35b82a581c50e5" - integrity sha512-fFHPGIjBUyUiswY2rd9rsFcC0t3oRta4wxE1h3lpwfQZwFeFjXFSiDtdJ7APCmHQOnUZnqYBADNRPKPwFAONgA== - dependencies: - cssnano-util-get-arguments "^4.0.0" - cssnano-util-get-match "^4.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-normalize-string@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-normalize-string/-/postcss-normalize-string-4.0.1.tgz#23c5030c2cc24175f66c914fa5199e2e3c10fef3" - integrity sha512-IJoexFTkAvAq5UZVxWXAGE0yLoNN/012v7TQh5nDo6imZJl2Fwgbhy3J2qnIoaDBrtUP0H7JrXlX1jjn2YcvCQ== - dependencies: - has "^1.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-normalize-timing-functions@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-4.0.1.tgz#8be83e0b9cb3ff2d1abddee032a49108f05f95d7" - integrity sha512-1nOtk7ze36+63ONWD8RCaRDYsnzorrj+Q6fxkQV+mlY5+471Qx9kspqv0O/qQNMeApg8KNrRf496zHwJ3tBZ7w== - dependencies: - cssnano-util-get-match "^4.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-normalize-unicode@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-normalize-unicode/-/postcss-normalize-unicode-4.0.1.tgz#841bd48fdcf3019ad4baa7493a3d363b52ae1cfb" - integrity sha512-od18Uq2wCYn+vZ/qCOeutvHjB5jm57ToxRaMeNuf0nWVHaP9Hua56QyMF6fs/4FSUnVIw0CBPsU0K4LnBPwYwg== - dependencies: - browserslist "^4.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-normalize-url@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-normalize-url/-/postcss-normalize-url-4.0.1.tgz#10e437f86bc7c7e58f7b9652ed878daaa95faae1" - integrity sha512-p5oVaF4+IHwu7VpMan/SSpmpYxcJMtkGppYf0VbdH5B6hN8YNmVyJLuY9FmLQTzY3fag5ESUUHDqM+heid0UVA== - dependencies: - is-absolute-url "^2.0.0" - normalize-url "^3.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-normalize-whitespace@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-normalize-whitespace/-/postcss-normalize-whitespace-4.0.1.tgz#d14cb639b61238418ac8bc8d3b7bdd65fc86575e" - integrity sha512-U8MBODMB2L+nStzOk6VvWWjZgi5kQNShCyjRhMT3s+W9Jw93yIjOnrEkKYD3Ul7ChWbEcjDWmXq0qOL9MIAnAw== - dependencies: - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-ordered-values@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/postcss-ordered-values/-/postcss-ordered-values-4.1.1.tgz#2e3b432ef3e489b18333aeca1f1295eb89be9fc2" - integrity sha512-PeJiLgJWPzkVF8JuKSBcylaU+hDJ/TX3zqAMIjlghgn1JBi6QwQaDZoDIlqWRcCAI8SxKrt3FCPSRmOgKRB97Q== - dependencies: - cssnano-util-get-arguments "^4.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-overflow-shorthand@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/postcss-overflow-shorthand/-/postcss-overflow-shorthand-2.0.0.tgz#31ecf350e9c6f6ddc250a78f0c3e111f32dd4c30" - integrity sha512-aK0fHc9CBNx8jbzMYhshZcEv8LtYnBIRYQD5i7w/K/wS9c2+0NSR6B3OVMu5y0hBHYLcMGjfU+dmWYNKH0I85g== - dependencies: - postcss "^7.0.2" - -postcss-page-break@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/postcss-page-break/-/postcss-page-break-2.0.0.tgz#add52d0e0a528cabe6afee8b46e2abb277df46bf" - integrity sha512-tkpTSrLpfLfD9HvgOlJuigLuk39wVTbbd8RKcy8/ugV2bNBUW3xU+AIqyxhDrQr1VUj1RmyJrBn1YWrqUm9zAQ== - dependencies: - postcss "^7.0.2" - -postcss-place@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-place/-/postcss-place-4.0.1.tgz#e9f39d33d2dc584e46ee1db45adb77ca9d1dcc62" - integrity sha512-Zb6byCSLkgRKLODj/5mQugyuj9bvAAw9LqJJjgwz5cYryGeXfFZfSXoP1UfveccFmeq0b/2xxwcTEVScnqGxBg== - dependencies: - postcss "^7.0.2" - postcss-values-parser "^2.0.0" - -postcss-preset-env@6.0.6: - version "6.0.6" - resolved "https://registry.yarnpkg.com/postcss-preset-env/-/postcss-preset-env-6.0.6.tgz#f728b9a43bf01c24eb06efeeff59de0b31ee1105" - integrity sha512-W1Wtqngl7BMe4s9o76odTaVs4HXVLhOHD+L5Ez+7x15yiA+98W/WVO6IPlC1q9BIkgAckRtUFmEDr0sNufXZIQ== - dependencies: - autoprefixer "^9.1.5" - browserslist "^4.1.1" - caniuse-lite "^1.0.30000887" - cssdb "^3.2.1" - postcss "^7.0.2" - postcss-attribute-case-insensitive "^4.0.0" - postcss-color-functional-notation "^2.0.1" - postcss-color-hex-alpha "^5.0.2" - postcss-color-mod-function "^3.0.3" - postcss-color-rebeccapurple "^4.0.1" - postcss-custom-media "^7.0.4" - postcss-custom-properties "^8.0.5" - postcss-custom-selectors "^5.1.2" - postcss-dir-pseudo-class "^5.0.0" - postcss-env-function "^2.0.2" - postcss-focus-visible "^4.0.0" - postcss-focus-within "^3.0.0" - postcss-font-variant "^4.0.0" - postcss-gap-properties "^2.0.0" - postcss-image-set-function "^3.0.1" - postcss-initial "^3.0.0" - postcss-lab-function "^2.0.1" - postcss-logical "^3.0.0" - postcss-media-minmax "^4.0.0" - postcss-nesting "^7.0.0" - postcss-overflow-shorthand "^2.0.0" - postcss-page-break "^2.0.0" - postcss-place "^4.0.1" - postcss-pseudo-class-any-link "^6.0.0" - postcss-replace-overflow-wrap "^3.0.0" - postcss-selector-matches "^4.0.0" - postcss-selector-not "^4.0.0" - -postcss-pseudo-class-any-link@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/postcss-pseudo-class-any-link/-/postcss-pseudo-class-any-link-6.0.0.tgz#2ed3eed393b3702879dec4a87032b210daeb04d1" - integrity sha512-lgXW9sYJdLqtmw23otOzrtbDXofUdfYzNm4PIpNE322/swES3VU9XlXHeJS46zT2onFO7V1QFdD4Q9LiZj8mew== - dependencies: - postcss "^7.0.2" - postcss-selector-parser "^5.0.0-rc.3" - -postcss-reduce-initial@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/postcss-reduce-initial/-/postcss-reduce-initial-4.0.2.tgz#bac8e325d67510ee01fa460676dc8ea9e3b40f15" - integrity sha512-epUiC39NonKUKG+P3eAOKKZtm5OtAtQJL7Ye0CBN1f+UQTHzqotudp+hki7zxXm7tT0ZAKDMBj1uihpPjP25ug== - dependencies: - browserslist "^4.0.0" - caniuse-api "^3.0.0" - has "^1.0.0" - postcss "^7.0.0" - -postcss-reduce-transforms@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-reduce-transforms/-/postcss-reduce-transforms-4.0.1.tgz#8600d5553bdd3ad640f43bff81eb52f8760d4561" - integrity sha512-sZVr3QlGs0pjh6JAIe6DzWvBaqYw05V1t3d9Tp+VnFRT5j+rsqoWsysh/iSD7YNsULjq9IAylCznIwVd5oU/zA== - dependencies: - cssnano-util-get-match "^4.0.0" - has "^1.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - -postcss-replace-overflow-wrap@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/postcss-replace-overflow-wrap/-/postcss-replace-overflow-wrap-3.0.0.tgz#61b360ffdaedca84c7c918d2b0f0d0ea559ab01c" - integrity sha512-2T5hcEHArDT6X9+9dVSPQdo7QHzG4XKclFT8rU5TzJPDN7RIRTbO9c4drUISOVemLj03aezStHCR2AIcr8XLpw== - dependencies: - postcss "^7.0.2" - -postcss-safe-parser@4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-safe-parser/-/postcss-safe-parser-4.0.1.tgz#8756d9e4c36fdce2c72b091bbc8ca176ab1fcdea" - integrity sha512-xZsFA3uX8MO3yAda03QrG3/Eg1LN3EPfjjf07vke/46HERLZyHrTsQ9E1r1w1W//fWEhtYNndo2hQplN2cVpCQ== - dependencies: - postcss "^7.0.0" - -postcss-selector-matches@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/postcss-selector-matches/-/postcss-selector-matches-4.0.0.tgz#71c8248f917ba2cc93037c9637ee09c64436fcff" - integrity sha512-LgsHwQR/EsRYSqlwdGzeaPKVT0Ml7LAT6E75T8W8xLJY62CE4S/l03BWIt3jT8Taq22kXP08s2SfTSzaraoPww== - dependencies: - balanced-match "^1.0.0" - postcss "^7.0.2" - -postcss-selector-not@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/postcss-selector-not/-/postcss-selector-not-4.0.0.tgz#c68ff7ba96527499e832724a2674d65603b645c0" - integrity sha512-W+bkBZRhqJaYN8XAnbbZPLWMvZD1wKTu0UxtFKdhtGjWYmxhkUneoeOhRJKdAE5V7ZTlnbHfCR+6bNwK9e1dTQ== - dependencies: - balanced-match "^1.0.0" - postcss "^7.0.2" - -postcss-selector-parser@^3.0.0: - version "3.1.1" - resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-3.1.1.tgz#4f875f4afb0c96573d5cf4d74011aee250a7e865" - integrity sha1-T4dfSvsMllc9XPTXQBGu4lCn6GU= - dependencies: - dot-prop "^4.1.1" - indexes-of "^1.0.1" - uniq "^1.0.1" - -postcss-selector-parser@^5.0.0-rc.3, postcss-selector-parser@^5.0.0-rc.4: - version "5.0.0-rc.4" - resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-5.0.0-rc.4.tgz#ca5e77238bf152966378c13e91ad6d611568ea87" - integrity sha512-0XvfYuShrKlTk1ooUrVzMCFQRcypsdEIsGqh5IxC5rdtBi4/M/tDAJeSONwC2MTqEFsmPZYAV7Dd4X8rgAfV0A== - dependencies: - cssesc "^2.0.0" - indexes-of "^1.0.1" - uniq "^1.0.1" - -postcss-svgo@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-svgo/-/postcss-svgo-4.0.1.tgz#5628cdb38f015de6b588ce6d0bf0724b492b581d" - integrity sha512-YD5uIk5NDRySy0hcI+ZJHwqemv2WiqqzDgtvgMzO8EGSkK5aONyX8HMVFRFJSdO8wUWTuisUFn/d7yRRbBr5Qw== - dependencies: - is-svg "^3.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - svgo "^1.0.0" - -postcss-unique-selectors@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-unique-selectors/-/postcss-unique-selectors-4.0.1.tgz#9446911f3289bfd64c6d680f073c03b1f9ee4bac" - integrity sha512-+JanVaryLo9QwZjKrmJgkI4Fn8SBgRO6WXQBJi7KiAVPlmxikB5Jzc4EvXMT2H0/m0RjrVVm9rGNhZddm/8Spg== - dependencies: - alphanum-sort "^1.0.0" - postcss "^7.0.0" - uniqs "^2.0.0" - -postcss-value-parser@^3.0.0, postcss-value-parser@^3.3.0, postcss-value-parser@^3.3.1: - version "3.3.1" - resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz#9ff822547e2893213cf1c30efa51ac5fd1ba8281" - integrity sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ== - -postcss-values-parser@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/postcss-values-parser/-/postcss-values-parser-2.0.0.tgz#1ba42cae31367c44f96721cb5eb99462bfb39705" - integrity sha512-cyRdkgbRRefu91ByAlJow4y9w/hnBmmWgLpWmlFQ2bpIy2eKrqowt3VeYcaHQ08otVXmC9V2JtYW1Z/RpvYR8A== - dependencies: - flatten "^1.0.2" - indexes-of "^1.0.1" - uniq "^1.0.1" - -postcss@^6.0.1, postcss@^6.0.23: - version "6.0.23" - resolved "https://registry.yarnpkg.com/postcss/-/postcss-6.0.23.tgz#61c82cc328ac60e677645f979054eb98bc0e3324" - integrity sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag== - dependencies: - chalk "^2.4.1" - source-map "^0.6.1" - supports-color "^5.4.0" - -postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.2, postcss@^7.0.5: - version "7.0.5" - resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.5.tgz#70e6443e36a6d520b0fd4e7593fcca3635ee9f55" - integrity sha512-HBNpviAUFCKvEh7NZhw1e8MBPivRszIiUnhrJ+sBFVSYSqubrzwX3KG51mYgcRHX8j/cAgZJedONZcm5jTBdgQ== - dependencies: - chalk "^2.4.1" - source-map "^0.6.1" - supports-color "^5.5.0" - -prelude-ls@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" - integrity sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ= - -prepend-http@^1.0.0: - version "1.0.4" - resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-1.0.4.tgz#d4f4562b0ce3696e41ac52d0e002e57a635dc6dc" - integrity sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw= - -preserve@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/preserve/-/preserve-0.2.0.tgz#815ed1f6ebc65926f865b310c0713bcb3315ce4b" - integrity sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks= - -prettier@^1.14.2: - version "1.14.3" - resolved "https://registry.yarnpkg.com/prettier/-/prettier-1.14.3.tgz#90238dd4c0684b7edce5f83b0fb7328e48bd0895" - integrity sha512-qZDVnCrnpsRJJq5nSsiHCE3BYMED2OtsI+cmzIzF1QIfqm5ALf8tEJcO27zV1gKNKRPdhjO0dNWnrzssDQ1tFg== - -pretty-bytes@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/pretty-bytes/-/pretty-bytes-4.0.2.tgz#b2bf82e7350d65c6c33aa95aaa5a4f6327f61cd9" - integrity sha1-sr+C5zUNZcbDOqlaqlpPYyf2HNk= - -pretty-error@^2.0.2: - version "2.1.1" - resolved "https://registry.yarnpkg.com/pretty-error/-/pretty-error-2.1.1.tgz#5f4f87c8f91e5ae3f3ba87ab4cf5e03b1a17f1a3" - integrity sha1-X0+HyPkeWuPzuoerTPXgOxoX8aM= - dependencies: - renderkid "^2.0.1" - utila "~0.4" - -pretty-format@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-23.6.0.tgz#5eaac8eeb6b33b987b7fe6097ea6a8a146ab5760" - integrity sha512-zf9NV1NSlDLDjycnwm6hpFATCGl/K1lt0R/GdkAK2O5LN/rwJoB+Mh93gGJjut4YbmecbfgLWVGSTCr0Ewvvbw== - dependencies: - ansi-regex "^3.0.0" - ansi-styles "^3.2.0" - -private@^0.1.6, private@^0.1.8: - version "0.1.8" - resolved "https://registry.yarnpkg.com/private/-/private-0.1.8.tgz#2381edb3689f7a53d653190060fcf822d2f368ff" - integrity sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg== - -process-nextick-args@~2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.0.tgz#a37d732f4271b4ab1ad070d35508e8290788ffaa" - integrity sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw== - -process@^0.11.10: - version "0.11.10" - resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182" - integrity sha1-czIwDoQBYb2j5podHZGn1LwW8YI= - -progress@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.1.tgz#c9242169342b1c29d275889c95734621b1952e31" - integrity sha512-OE+a6vzqazc+K6LxJrX5UPyKFvGnL5CYmq2jFGNIBWHpc4QyE49/YOumcrpQFJpfejmvRtbJzgO1zPmMCqlbBg== - -promise-inflight@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/promise-inflight/-/promise-inflight-1.0.1.tgz#98472870bf228132fcbdd868129bad12c3c029e3" - integrity sha1-mEcocL8igTL8vdhoEputEsPAKeM= - -promise@8.0.2: - version "8.0.2" - resolved "https://registry.yarnpkg.com/promise/-/promise-8.0.2.tgz#9dcd0672192c589477d56891271bdc27547ae9f0" - integrity sha512-EIyzM39FpVOMbqgzEHhxdrEhtOSDOtjMZQ0M6iVfCE+kWNgCkAyOdnuCWqfmflylftfadU6FkiMgHZA2kUzwRw== - dependencies: - asap "~2.0.6" - -promise@^7.1.1: - version "7.3.1" - resolved "https://registry.yarnpkg.com/promise/-/promise-7.3.1.tgz#064b72602b18f90f29192b8b1bc418ffd1ebd3bf" - integrity sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg== - dependencies: - asap "~2.0.3" - -prompts@^0.1.9: - version "0.1.14" - resolved "https://registry.yarnpkg.com/prompts/-/prompts-0.1.14.tgz#a8e15c612c5c9ec8f8111847df3337c9cbd443b2" - integrity sha512-rxkyiE9YH6zAz/rZpywySLKkpaj0NMVyNw1qhsubdbjjSgcayjTShDreZGlFMcGSu5sab3bAKPfFk78PB90+8w== - dependencies: - kleur "^2.0.1" - sisteransi "^0.1.1" - -prop-types@^15.5.10, prop-types@^15.5.4, prop-types@^15.6.1, prop-types@^15.6.2: - version "15.6.2" - resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.6.2.tgz#05d5ca77b4453e985d60fc7ff8c859094a497102" - integrity sha512-3pboPvLiWD7dkI3qf3KbUe6hKFKa52w+AE0VCqECtf+QHAKgOL37tTaNCnuX1nAAQ4ZhyP+kYVKf8rLmJ/feDQ== - dependencies: - loose-envify "^1.3.1" - object-assign "^4.1.1" - -proxy-addr@~2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.4.tgz#ecfc733bf22ff8c6f407fa275327b9ab67e48b93" - integrity sha512-5erio2h9jp5CHGwcybmxmVqHmnCBZeewlfJ0pex+UW7Qny7OOZXTtH56TGNyBizkgiOwhJtMKrVzDTeKcySZwA== - dependencies: - forwarded "~0.1.2" - ipaddr.js "1.8.0" - -prr@~1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/prr/-/prr-1.0.1.tgz#d3fc114ba06995a45ec6893f484ceb1d78f5f476" - integrity sha1-0/wRS6BplaRexok/SEzrHXj19HY= - -pseudomap@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3" - integrity sha1-8FKijacOYYkX7wqKw0wa5aaChrM= - -psl@^1.1.24: - version "1.1.29" - resolved "https://registry.yarnpkg.com/psl/-/psl-1.1.29.tgz#60f580d360170bb722a797cc704411e6da850c67" - integrity sha512-AeUmQ0oLN02flVHXWh9sSJF7mcdFq0ppid/JkErufc3hGIV/AMa8Fo9VgDo/cT2jFdOWoFvHp90qqBH54W+gjQ== - -public-encrypt@^4.0.0: - version "4.0.3" - resolved "https://registry.yarnpkg.com/public-encrypt/-/public-encrypt-4.0.3.tgz#4fcc9d77a07e48ba7527e7cbe0de33d0701331e0" - integrity sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q== - dependencies: - bn.js "^4.1.0" - browserify-rsa "^4.0.0" - create-hash "^1.1.0" - parse-asn1 "^5.0.0" - randombytes "^2.0.1" - safe-buffer "^5.1.2" - -pump@^2.0.0, pump@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/pump/-/pump-2.0.1.tgz#12399add6e4cf7526d973cbc8b5ce2e2908b3909" - integrity sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA== - dependencies: - end-of-stream "^1.1.0" - once "^1.3.1" - -pump@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64" - integrity sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww== - dependencies: - end-of-stream "^1.1.0" - once "^1.3.1" - -pumpify@^1.3.3: - version "1.5.1" - resolved "https://registry.yarnpkg.com/pumpify/-/pumpify-1.5.1.tgz#36513be246ab27570b1a374a5ce278bfd74370ce" - integrity sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ== - dependencies: - duplexify "^3.6.0" - inherits "^2.0.3" - pump "^2.0.0" - -punycode@1.3.2: - version "1.3.2" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.3.2.tgz#9653a036fb7c1ee42342f2325cceefea3926c48d" - integrity sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0= - -punycode@2.x.x, punycode@^2.1.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" - integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== - -punycode@^1.2.4, punycode@^1.4.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" - integrity sha1-wNWmOycYgArY4esPpSachN1BhF4= - -q@^1.1.2: - version "1.5.1" - resolved "https://registry.yarnpkg.com/q/-/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7" - integrity sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc= - -qs@6.5.2, qs@~6.5.2: - version "6.5.2" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.2.tgz#cb3ae806e8740444584ef154ce8ee98d403f3e36" - integrity sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA== - -query-string@^4.1.0: - version "4.3.4" - resolved "https://registry.yarnpkg.com/query-string/-/query-string-4.3.4.tgz#bbb693b9ca915c232515b228b1a02b609043dbeb" - integrity sha1-u7aTucqRXCMlFbIosaArYJBD2+s= - dependencies: - object-assign "^4.1.0" - strict-uri-encode "^1.0.0" - -querystring-es3@^0.2.0: - version "0.2.1" - resolved "https://registry.yarnpkg.com/querystring-es3/-/querystring-es3-0.2.1.tgz#9ec61f79049875707d69414596fd907a4d711e73" - integrity sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM= - -querystring@0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/querystring/-/querystring-0.2.0.tgz#b209849203bb25df820da756e747005878521620" - integrity sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA= - -querystringify@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/querystringify/-/querystringify-2.1.0.tgz#7ded8dfbf7879dcc60d0a644ac6754b283ad17ef" - integrity sha512-sluvZZ1YiTLD5jsqZcDmFyV2EwToyXZBfpoVOmktMmW+VEnhgakFHnasVph65fOjGPTWN0Nw3+XQaSeMayr0kg== - -raf@3.4.0: - version "3.4.0" - resolved "https://registry.yarnpkg.com/raf/-/raf-3.4.0.tgz#a28876881b4bc2ca9117d4138163ddb80f781575" - integrity sha512-pDP/NMRAXoTfrhCfyfSEwJAKLaxBU9eApMeBPB1TkDouZmvPerIClV8lTAd+uF8ZiTaVl69e1FCxQrAd/VTjGw== - dependencies: - performance-now "^2.1.0" - -randomatic@^3.0.0: - version "3.1.1" - resolved "https://registry.yarnpkg.com/randomatic/-/randomatic-3.1.1.tgz#b776efc59375984e36c537b2f51a1f0aff0da1ed" - integrity sha512-TuDE5KxZ0J461RVjrJZCJc+J+zCkTb1MbH9AQUq68sMhOMcy9jLcb3BrZKgp9q9Ncltdg4QVqWrH02W2EFFVYw== - dependencies: - is-number "^4.0.0" - kind-of "^6.0.0" - math-random "^1.0.1" - -randombytes@^2.0.0, randombytes@^2.0.1, randombytes@^2.0.5: - version "2.0.6" - resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.0.6.tgz#d302c522948588848a8d300c932b44c24231da80" - integrity sha512-CIQ5OFxf4Jou6uOKe9t1AOgqpeU5fd70A8NPdHSGeYXqXsPe6peOwI0cUl88RWZ6sP1vPMV3avd/R6cZ5/sP1A== - dependencies: - safe-buffer "^5.1.0" - -randomfill@^1.0.3: - version "1.0.4" - resolved "https://registry.yarnpkg.com/randomfill/-/randomfill-1.0.4.tgz#c92196fc86ab42be983f1bf31778224931d61458" - integrity sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw== - dependencies: - randombytes "^2.0.5" - safe-buffer "^5.1.0" - -range-parser@^1.0.3, range-parser@~1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.0.tgz#f49be6b487894ddc40dcc94a322f611092e00d5e" - integrity sha1-9JvmtIeJTdxA3MlKMi9hEJLgDV4= - -raw-body@2.3.3: - version "2.3.3" - resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.3.3.tgz#1b324ece6b5706e153855bc1148c65bb7f6ea0c3" - integrity sha512-9esiElv1BrZoI3rCDuOuKCBRbuApGGaDPQfjSflGxdy4oyzqghxu6klEkkVIvBje+FF0BX9coEv8KqW6X/7njw== - dependencies: - bytes "3.0.0" - http-errors "1.6.3" - iconv-lite "0.4.23" - unpipe "1.0.0" - -rc@^1.2.7: - version "1.2.8" - resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed" - integrity sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw== - dependencies: - deep-extend "^0.6.0" - ini "~1.3.0" - minimist "^1.2.0" - strip-json-comments "~2.0.1" - -react-app-polyfill@^0.1.3: - version "0.1.3" - resolved "https://registry.yarnpkg.com/react-app-polyfill/-/react-app-polyfill-0.1.3.tgz#e57bb50f3751dac0e6b3ac27673812c68c679a1d" - integrity sha512-Fl5Pic4F15G05qX7RmUqPZr1MtyFKJKSlRwMhel4kvDLrk/KcQ9QbpvyMTzv/0NN5957XFQ7r1BNHWi7qN59Pw== - dependencies: - core-js "2.5.7" - object-assign "4.1.1" - promise "8.0.2" - raf "3.4.0" - whatwg-fetch "3.0.0" - -react-color@^2.17.0: - version "2.17.0" - resolved "https://registry.yarnpkg.com/react-color/-/react-color-2.17.0.tgz#e14b8a11f4e89163f65a34c8b43faf93f7f02aaa" - integrity sha512-kJfE5tSaFe6GzalXOHksVjqwCPAsTl+nzS9/BWfP7j3EXbQ4IiLAF9sZGNzk3uq7HfofGYgjmcUgh0JP7xAQ0w== - dependencies: - "@icons/material" "^0.2.4" - lodash ">4.17.4" - material-colors "^1.2.1" - prop-types "^15.5.10" - reactcss "^1.2.0" - tinycolor2 "^1.4.1" - -react-dev-utils@^6.1.1: - version "6.1.1" - resolved "https://registry.yarnpkg.com/react-dev-utils/-/react-dev-utils-6.1.1.tgz#a07e3e8923c4609d9f27e5af5207e3ca20724895" - integrity sha512-ThbJ86coVd6wV/QiTo8klDTvdAJ1WsFCGQN07+UkN+QN9CtCSsl/+YuDJToKGeG8X4j9HMGXNKbk2QhPAZr43w== - dependencies: - "@babel/code-frame" "7.0.0" - address "1.0.3" - browserslist "4.1.1" - chalk "2.4.1" - cross-spawn "6.0.5" - detect-port-alt "1.1.6" - escape-string-regexp "1.0.5" - filesize "3.6.1" - find-up "3.0.0" - global-modules "1.0.0" - globby "8.0.1" - gzip-size "5.0.0" - immer "1.7.2" - inquirer "6.2.0" - is-root "2.0.0" - loader-utils "1.1.0" - opn "5.4.0" - pkg-up "2.0.0" - react-error-overlay "^5.1.0" - recursive-readdir "2.2.2" - shell-quote "1.6.1" - sockjs-client "1.1.5" - strip-ansi "4.0.0" - text-table "0.2.0" - -react-dom@16.7.0-alpha.0: - version "16.7.0-alpha.0" - resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-16.7.0-alpha.0.tgz#8379158d4c76d63c989f325f45dfa5762582584f" - integrity sha512-/XUn1ldxmoV2B7ov0rWT5LMZaaHMlF9GGLkUsmPRxmWTJwRDOuAPXidSaSlmR/VOhDSI1s+v3+KzFqhhDFJxYA== - dependencies: - loose-envify "^1.1.0" - object-assign "^4.1.1" - prop-types "^15.6.2" - scheduler "^0.11.0-alpha.0" - -react-error-overlay@^5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/react-error-overlay/-/react-error-overlay-5.1.0.tgz#c516995a5652e7bfbed8b497910d5280df74a7e8" - integrity sha512-akMy/BQT5m1J3iJIHkSb4qycq2wzllWsmmolaaFVnb+LPV9cIJ/nTud40ZsiiT0H3P+/wXIdbjx2fzF61OaeOQ== - -react-is@^16.3.2, react-is@^16.6.0, react-is@^16.6.3: - version "16.7.0" - resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.7.0.tgz#c1bd21c64f1f1364c6f70695ec02d69392f41bfa" - integrity sha512-Z0VRQdF4NPDoI0tsXVMLkJLiwEBa+RP66g0xDHxgxysxSoCUccSten4RTF/UFvZF1dZvZ9Zu1sx+MDXwcOR34g== - -react-numeric-input@^2.2.3: - version "2.2.3" - resolved "https://registry.yarnpkg.com/react-numeric-input/-/react-numeric-input-2.2.3.tgz#4bf5918c3eafed851a80df1eb992d941002bb552" - integrity sha1-S/WRjD6v7YUagN8euZLZQQArtVI= - -react-redux@6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/react-redux/-/react-redux-6.0.0.tgz#09e86eeed5febb98e9442458ad2970c8f1a173ef" - integrity sha512-EmbC3uLl60pw2VqSSkj6HpZ6jTk12RMrwXMBdYtM6niq0MdEaRq9KYCwpJflkOZj349BLGQm1MI/JO1W96kLWQ== - dependencies: - "@babel/runtime" "^7.2.0" - hoist-non-react-statics "^3.2.1" - invariant "^2.2.4" - loose-envify "^1.4.0" - prop-types "^15.6.2" - react-is "^16.6.3" - -react-router@^4.3.1: - version "4.3.1" - resolved "https://registry.yarnpkg.com/react-router/-/react-router-4.3.1.tgz#aada4aef14c809cb2e686b05cee4742234506c4e" - integrity sha512-yrvL8AogDh2X42Dt9iknk4wF4V8bWREPirFfS9gLU1huk6qK41sg7Z/1S81jjTrGHxa3B8R3J6xIkDAA6CVarg== - dependencies: - history "^4.7.2" - hoist-non-react-statics "^2.5.0" - invariant "^2.2.4" - loose-envify "^1.3.1" - path-to-regexp "^1.7.0" - prop-types "^15.6.1" - warning "^4.0.1" - -react-scripts@2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/react-scripts/-/react-scripts-2.1.1.tgz#c2959a756b0b61d3090adece0d7aedd324dff8a5" - integrity sha512-f6KCUy7opItgeana1Ghwj+lYQp5BTHSaivG/dbfiIqSm5QdOIUV5eiFSBsbaAE6GEKqGYmZDK6Yw5WmbrhxaFg== - dependencies: - "@babel/core" "7.1.0" - "@svgr/webpack" "2.4.1" - babel-core "7.0.0-bridge.0" - babel-eslint "9.0.0" - babel-jest "23.6.0" - babel-loader "8.0.4" - babel-plugin-named-asset-import "^0.2.3" - babel-preset-react-app "^6.1.0" - bfj "6.1.1" - case-sensitive-paths-webpack-plugin "2.1.2" - chalk "2.4.1" - css-loader "1.0.0" - dotenv "6.0.0" - dotenv-expand "4.2.0" - eslint "5.6.0" - eslint-config-react-app "^3.0.5" - eslint-loader "2.1.1" - eslint-plugin-flowtype "2.50.1" - eslint-plugin-import "2.14.0" - eslint-plugin-jsx-a11y "6.1.2" - eslint-plugin-react "7.11.1" - file-loader "2.0.0" - fork-ts-checker-webpack-plugin-alt "0.4.14" - fs-extra "7.0.0" - html-webpack-plugin "4.0.0-alpha.2" - identity-obj-proxy "3.0.0" - jest "23.6.0" - jest-pnp-resolver "1.0.1" - jest-resolve "23.6.0" - mini-css-extract-plugin "0.4.3" - optimize-css-assets-webpack-plugin "5.0.1" - pnp-webpack-plugin "1.1.0" - postcss-flexbugs-fixes "4.1.0" - postcss-loader "3.0.0" - postcss-preset-env "6.0.6" - postcss-safe-parser "4.0.1" - react-app-polyfill "^0.1.3" - react-dev-utils "^6.1.1" - resolve "1.8.1" - sass-loader "7.1.0" - style-loader "0.23.0" - terser-webpack-plugin "1.1.0" - url-loader "1.1.1" - webpack "4.19.1" - webpack-dev-server "3.1.9" - webpack-manifest-plugin "2.0.4" - workbox-webpack-plugin "3.6.3" - optionalDependencies: - fsevents "1.2.4" - -react-switch@^3.0.4: - version "3.0.4" - resolved "https://registry.yarnpkg.com/react-switch/-/react-switch-3.0.4.tgz#52958b2736b4d21b4f0050997955c5365019ca7b" - integrity sha512-11WipoiPNHZx4fWzF/fsYXu+w+HZb8tzNTo7ymaJES8uc3nJZl46rxg1DAB1u669W7SOnshDNnJZOi28IblOeg== - dependencies: - prop-types "^15.6.1" - -react@16.7.0-alpha.0: - version "16.7.0-alpha.0" - resolved "https://registry.yarnpkg.com/react/-/react-16.7.0-alpha.0.tgz#e2ed4abe6f268c9b092a1d1e572953684d1783a9" - integrity sha512-V0za4H01aoAF0SdzahHepvfvzTQ1xxkgMX4z8uKzn+wzZAlVk0IVpleqyxZWluqmdftNedj6fIIZRO/rVYVFvQ== - dependencies: - loose-envify "^1.1.0" - object-assign "^4.1.1" - prop-types "^15.6.2" - scheduler "^0.11.0-alpha.0" - -reactcss@^1.2.0: - version "1.2.3" - resolved "https://registry.yarnpkg.com/reactcss/-/reactcss-1.2.3.tgz#c00013875e557b1cf0dfd9a368a1c3dab3b548dd" - integrity sha512-KiwVUcFu1RErkI97ywr8nvx8dNOpT03rbnma0SSalTYjkrPYaEajR4a/MRt6DZ46K6arDRbWMNHF+xH7G7n/8A== - dependencies: - lodash "^4.0.1" - -read-pkg-up@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-1.0.1.tgz#9d63c13276c065918d57f002a57f40a1b643fb02" - integrity sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI= - dependencies: - find-up "^1.0.0" - read-pkg "^1.0.0" - -read-pkg-up@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-2.0.0.tgz#6b72a8048984e0c41e79510fd5e9fa99b3b549be" - integrity sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4= - dependencies: - find-up "^2.0.0" - read-pkg "^2.0.0" - -read-pkg@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-1.1.0.tgz#f5ffaa5ecd29cb31c0474bca7d756b6bb29e3f28" - integrity sha1-9f+qXs0pyzHAR0vKfXVra7KePyg= - dependencies: - load-json-file "^1.0.0" - normalize-package-data "^2.3.2" - path-type "^1.0.0" - -read-pkg@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-2.0.0.tgz#8ef1c0623c6a6db0dc6713c4bfac46332b2368f8" - integrity sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg= - dependencies: - load-json-file "^2.0.0" - normalize-package-data "^2.3.2" - path-type "^2.0.0" - -"readable-stream@1 || 2", readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.0.4, readable-stream@^2.0.6, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.2.9, readable-stream@^2.3.3, readable-stream@^2.3.6: - version "2.3.6" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.6.tgz#b11c27d88b8ff1fbe070643cf94b0c79ae1b0aaf" - integrity sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw== - dependencies: - core-util-is "~1.0.0" - inherits "~2.0.3" - isarray "~1.0.0" - process-nextick-args "~2.0.0" - safe-buffer "~5.1.1" - string_decoder "~1.1.1" - util-deprecate "~1.0.1" - -readable-stream@1.0: - version "1.0.34" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.0.34.tgz#125820e34bc842d2f2aaafafe4c2916ee32c157c" - integrity sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw= - dependencies: - core-util-is "~1.0.0" - inherits "~2.0.1" - isarray "0.0.1" - string_decoder "~0.10.x" - -readdirp@^2.0.0: - version "2.2.1" - resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-2.2.1.tgz#0e87622a3325aa33e892285caf8b4e846529a525" - integrity sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ== - dependencies: - graceful-fs "^4.1.11" - micromatch "^3.1.10" - readable-stream "^2.0.2" - -realpath-native@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/realpath-native/-/realpath-native-1.0.2.tgz#cd51ce089b513b45cf9b1516c82989b51ccc6560" - integrity sha512-+S3zTvVt9yTntFrBpm7TQmQ3tzpCrnA1a/y+3cUHAc9ZR6aIjG0WNLR+Rj79QpJktY+VeW/TQtFlQ1bzsehI8g== - dependencies: - util.promisify "^1.0.0" - -recursive-readdir@2.2.2: - version "2.2.2" - resolved "https://registry.yarnpkg.com/recursive-readdir/-/recursive-readdir-2.2.2.tgz#9946fb3274e1628de6e36b2f6714953b4845094f" - integrity sha512-nRCcW9Sj7NuZwa2XvH9co8NPeXUBhZP7CRKJtU+cS6PW9FpCIFoI5ib0NT1ZrbNuPoRy0ylyCaUL8Gih4LSyFg== - dependencies: - minimatch "3.0.4" - -redux-devtools-extension@^2.13.7: - version "2.13.7" - resolved "https://registry.yarnpkg.com/redux-devtools-extension/-/redux-devtools-extension-2.13.7.tgz#14bd7a1a7c8bee7f397beb1116fd16fc9633b752" - integrity sha512-F2GlWMWxCTJGRjJ+GSZcGDcVAj6Pbf77FKb4C9S8eni5Eah6UBGNwxNj8K1MTtmItdZH1Wx+EvIifHN2KKcQrw== - -redux-thunk@^2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/redux-thunk/-/redux-thunk-2.3.0.tgz#51c2c19a185ed5187aaa9a2d08b666d0d6467622" - integrity sha512-km6dclyFnmcvxhAcrQV2AkZmPQjzPDjgVlQtR0EQjxZPyJ0BnMf3in1ryuR8A2qU0HldVRfxYXbFSKlI3N7Slw== - -redux@*, redux@^4.0.0, redux@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/redux/-/redux-4.0.1.tgz#436cae6cc40fbe4727689d7c8fae44808f1bfef5" - integrity sha512-R7bAtSkk7nY6O/OYMVR9RiBI+XghjF9rlbl5806HJbQph0LJVHZrU5oaO4q70eUKiqMRqm4y07KLTlMZ2BlVmg== - dependencies: - loose-envify "^1.4.0" - symbol-observable "^1.2.0" - -regenerate-unicode-properties@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/regenerate-unicode-properties/-/regenerate-unicode-properties-7.0.0.tgz#107405afcc4a190ec5ed450ecaa00ed0cafa7a4c" - integrity sha512-s5NGghCE4itSlUS+0WUj88G6cfMVMmH8boTPNvABf8od+2dhT9WDlWu8n01raQAJZMOK8Ch6jSexaRO7swd6aw== - dependencies: - regenerate "^1.4.0" - -regenerate@^1.2.1, regenerate@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.4.0.tgz#4a856ec4b56e4077c557589cae85e7a4c8869a11" - integrity sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg== - -regenerator-runtime@^0.11.0: - version "0.11.1" - resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz#be05ad7f9bf7d22e056f9726cee5017fbf19e2e9" - integrity sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg== - -regenerator-runtime@^0.12.0: - version "0.12.1" - resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.12.1.tgz#fa1a71544764c036f8c49b13a08b2594c9f8a0de" - integrity sha512-odxIc1/vDlo4iZcfXqRYFj0vpXFNoGdKMAUieAlFYO6m/nl5e9KR/beGf41z4a1FI+aQgtjhuaSlDxQ0hmkrHg== - -regenerator-transform@^0.13.3: - version "0.13.3" - resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.13.3.tgz#264bd9ff38a8ce24b06e0636496b2c856b57bcbb" - integrity sha512-5ipTrZFSq5vU2YoGoww4uaRVAK4wyYC4TSICibbfEPOruUu8FFP7ErV0BjmbIOEpn3O/k9na9UEdYR/3m7N6uA== - dependencies: - private "^0.1.6" - -regex-cache@^0.4.2: - version "0.4.4" - resolved "https://registry.yarnpkg.com/regex-cache/-/regex-cache-0.4.4.tgz#75bdc58a2a1496cec48a12835bc54c8d562336dd" - integrity sha512-nVIZwtCjkC9YgvWkpM55B5rBhBYRZhAaJbgcFYXXsHnbZ9UZI9nnVWYZpBlCqv9ho2eZryPnWrZGsOdPwVWXWQ== - dependencies: - is-equal-shallow "^0.1.3" - -regex-not@^1.0.0, regex-not@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/regex-not/-/regex-not-1.0.2.tgz#1f4ece27e00b0b65e0247a6810e6a85d83a5752c" - integrity sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A== - dependencies: - extend-shallow "^3.0.2" - safe-regex "^1.1.0" - -regexpp@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-2.0.1.tgz#8d19d31cf632482b589049f8281f93dbcba4d07f" - integrity sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw== - -regexpu-core@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-1.0.0.tgz#86a763f58ee4d7c2f6b102e4764050de7ed90c6b" - integrity sha1-hqdj9Y7k18L2sQLkdkBQ3n7ZDGs= - dependencies: - regenerate "^1.2.1" - regjsgen "^0.2.0" - regjsparser "^0.1.4" - -regexpu-core@^4.1.3, regexpu-core@^4.2.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-4.2.0.tgz#a3744fa03806cffe146dea4421a3e73bdcc47b1d" - integrity sha512-Z835VSnJJ46CNBttalHD/dB+Sj2ezmY6Xp38npwU87peK6mqOzOpV8eYktdkLTEkzzD+JsTcxd84ozd8I14+rw== - dependencies: - regenerate "^1.4.0" - regenerate-unicode-properties "^7.0.0" - regjsgen "^0.4.0" - regjsparser "^0.3.0" - unicode-match-property-ecmascript "^1.0.4" - unicode-match-property-value-ecmascript "^1.0.2" - -regjsgen@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.2.0.tgz#6c016adeac554f75823fe37ac05b92d5a4edb1f7" - integrity sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc= - -regjsgen@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.4.0.tgz#c1eb4c89a209263f8717c782591523913ede2561" - integrity sha512-X51Lte1gCYUdlwhF28+2YMO0U6WeN0GLpgpA7LK7mbdDnkQYiwvEpmpe0F/cv5L14EbxgrdayAG3JETBv0dbXA== - -regjsparser@^0.1.4: - version "0.1.5" - resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.1.5.tgz#7ee8f84dc6fa792d3fd0ae228d24bd949ead205c" - integrity sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw= - dependencies: - jsesc "~0.5.0" - -regjsparser@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.3.0.tgz#3c326da7fcfd69fa0d332575a41c8c0cdf588c96" - integrity sha512-zza72oZBBHzt64G7DxdqrOo/30bhHkwMUoT0WqfGu98XLd7N+1tsy5MJ96Bk4MD0y74n629RhmrGW6XlnLLwCA== - dependencies: - jsesc "~0.5.0" - -relateurl@0.2.x: - version "0.2.7" - resolved "https://registry.yarnpkg.com/relateurl/-/relateurl-0.2.7.tgz#54dbf377e51440aca90a4cd274600d3ff2d888a9" - integrity sha1-VNvzd+UUQKypCkzSdGANP/LYiKk= - -remove-trailing-separator@^1.0.1: - version "1.1.0" - resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" - integrity sha1-wkvOKig62tW8P1jg1IJJuSN52O8= - -renderkid@^2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/renderkid/-/renderkid-2.0.2.tgz#12d310f255360c07ad8fde253f6c9e9de372d2aa" - integrity sha512-FsygIxevi1jSiPY9h7vZmBFUbAOcbYm9UwyiLNdVsLRs/5We9Ob5NMPbGYUTWiLq5L+ezlVdE0A8bbME5CWTpg== - dependencies: - css-select "^1.1.0" - dom-converter "~0.2" - htmlparser2 "~3.3.0" - strip-ansi "^3.0.0" - utila "^0.4.0" - -repeat-element@^1.1.2: - version "1.1.3" - resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.3.tgz#782e0d825c0c5a3bb39731f84efee6b742e6b1ce" - integrity sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g== - -repeat-string@^1.5.2, repeat-string@^1.6.1: - version "1.6.1" - resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" - integrity sha1-jcrkcOHIirwtYA//Sndihtp15jc= - -repeating@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/repeating/-/repeating-2.0.1.tgz#5214c53a926d3552707527fbab415dbc08d06dda" - integrity sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo= - dependencies: - is-finite "^1.0.0" - -request-promise-core@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/request-promise-core/-/request-promise-core-1.1.1.tgz#3eee00b2c5aa83239cfb04c5700da36f81cd08b6" - integrity sha1-Pu4AssWqgyOc+wTFcA2jb4HNCLY= - dependencies: - lodash "^4.13.1" - -request-promise-native@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/request-promise-native/-/request-promise-native-1.0.5.tgz#5281770f68e0c9719e5163fd3fab482215f4fda5" - integrity sha1-UoF3D2jgyXGeUWP9P6tIIhX0/aU= - dependencies: - request-promise-core "1.1.1" - stealthy-require "^1.1.0" - tough-cookie ">=2.3.3" - -request@^2.87.0, request@^2.88.0: - version "2.88.0" - resolved "https://registry.yarnpkg.com/request/-/request-2.88.0.tgz#9c2fca4f7d35b592efe57c7f0a55e81052124fef" - integrity sha512-NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg== - dependencies: - aws-sign2 "~0.7.0" - aws4 "^1.8.0" - caseless "~0.12.0" - combined-stream "~1.0.6" - extend "~3.0.2" - forever-agent "~0.6.1" - form-data "~2.3.2" - har-validator "~5.1.0" - http-signature "~1.2.0" - is-typedarray "~1.0.0" - isstream "~0.1.2" - json-stringify-safe "~5.0.1" - mime-types "~2.1.19" - oauth-sign "~0.9.0" - performance-now "^2.1.0" - qs "~6.5.2" - safe-buffer "^5.1.2" - tough-cookie "~2.4.3" - tunnel-agent "^0.6.0" - uuid "^3.3.2" - -require-directory@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" - integrity sha1-jGStX9MNqxyXbiNE/+f3kqam30I= - -require-from-string@^2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909" - integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw== - -require-main-filename@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-1.0.1.tgz#97f717b69d48784f5f526a6c5aa8ffdda055a4d1" - integrity sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE= - -require-uncached@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/require-uncached/-/require-uncached-1.0.3.tgz#4e0d56d6c9662fd31e43011c4b95aa49955421d3" - integrity sha1-Tg1W1slmL9MeQwEcS5WqSZVUIdM= - dependencies: - caller-path "^0.1.0" - resolve-from "^1.0.0" - -requires-port@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/requires-port/-/requires-port-1.0.0.tgz#925d2601d39ac485e091cf0da5c6e694dc3dcaff" - integrity sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8= - -resolve-cwd@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-2.0.0.tgz#00a9f7387556e27038eae232caa372a6a59b665a" - integrity sha1-AKn3OHVW4nA46uIyyqNypqWbZlo= - dependencies: - resolve-from "^3.0.0" - -resolve-dir@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/resolve-dir/-/resolve-dir-1.0.1.tgz#79a40644c362be82f26effe739c9bb5382046f43" - integrity sha1-eaQGRMNivoLybv/nOcm7U4IEb0M= - dependencies: - expand-tilde "^2.0.0" - global-modules "^1.0.0" - -resolve-from@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-1.0.1.tgz#26cbfe935d1aeeeabb29bc3fe5aeb01e93d44226" - integrity sha1-Jsv+k10a7uq7Kbw/5a6wHpPUQiY= - -resolve-from@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-3.0.0.tgz#b22c7af7d9d6881bc8b6e653335eebcb0a188748" - integrity sha1-six699nWiBvItuZTM17rywoYh0g= - -resolve-pathname@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/resolve-pathname/-/resolve-pathname-2.2.0.tgz#7e9ae21ed815fd63ab189adeee64dc831eefa879" - integrity sha512-bAFz9ld18RzJfddgrO2e/0S2O81710++chRMUxHjXOYKF6jTAMrUNZrEZ1PvV0zlhfjidm08iRPdTLPno1FuRg== - -resolve-url@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a" - integrity sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo= - -resolve@1.1.7: - version "1.1.7" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.1.7.tgz#203114d82ad2c5ed9e8e0411b3932875e889e97b" - integrity sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs= - -resolve@1.8.1, resolve@^1.3.2, resolve@^1.5.0, resolve@^1.6.0, resolve@^1.8.1: - version "1.8.1" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.8.1.tgz#82f1ec19a423ac1fbd080b0bab06ba36e84a7a26" - integrity sha512-AicPrAC7Qu1JxPCZ9ZgCZlY35QgFnNqc+0LtbRNxnVw4TXvjQ72wnuL9JQcEBgXkI9JM8MsT9kaQoHcpCRJOYA== - dependencies: - path-parse "^1.0.5" - -restore-cursor@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-2.0.0.tgz#9f7ee287f82fd326d4fd162923d62129eee0dfaf" - integrity sha1-n37ih/gv0ybU/RYpI9YhKe7g368= - dependencies: - onetime "^2.0.0" - signal-exit "^3.0.2" - -ret@~0.1.10: - version "0.1.15" - resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc" - integrity sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg== - -rgb-regex@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/rgb-regex/-/rgb-regex-1.0.1.tgz#c0e0d6882df0e23be254a475e8edd41915feaeb1" - integrity sha1-wODWiC3w4jviVKR16O3UGRX+rrE= - -rgba-regex@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/rgba-regex/-/rgba-regex-1.0.0.tgz#43374e2e2ca0968b0ef1523460b7d730ff22eeb3" - integrity sha1-QzdOLiyglosO8VI0YLfXMP8i7rM= - -rimraf@^2.2.8, rimraf@^2.5.4, rimraf@^2.6.1, rimraf@^2.6.2: - version "2.6.2" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.2.tgz#2ed8150d24a16ea8651e6d6ef0f47c4158ce7a36" - integrity sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w== - dependencies: - glob "^7.0.5" - -ripemd160@^2.0.0, ripemd160@^2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-2.0.2.tgz#a1c1a6f624751577ba5d07914cbc92850585890c" - integrity sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA== - dependencies: - hash-base "^3.0.0" - inherits "^2.0.1" - -rsvp@^3.3.3: - version "3.6.2" - resolved "https://registry.yarnpkg.com/rsvp/-/rsvp-3.6.2.tgz#2e96491599a96cde1b515d5674a8f7a91452926a" - integrity sha512-OfWGQTb9vnwRjwtA2QwpG2ICclHC3pgXZO5xt8H2EfgDquO0qVdSb5T88L4qJVAEugbS56pAuV4XZM58UX8ulw== - -run-async@^2.2.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/run-async/-/run-async-2.3.0.tgz#0371ab4ae0bdd720d4166d7dfda64ff7a445a6c0" - integrity sha1-A3GrSuC91yDUFm19/aZP96RFpsA= - dependencies: - is-promise "^2.1.0" - -run-queue@^1.0.0, run-queue@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/run-queue/-/run-queue-1.0.3.tgz#e848396f057d223f24386924618e25694161ec47" - integrity sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec= - dependencies: - aproba "^1.1.1" - -rxjs@^6.1.0: - version "6.3.3" - resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.3.3.tgz#3c6a7fa420e844a81390fb1158a9ec614f4bad55" - integrity sha512-JTWmoY9tWCs7zvIk/CvRjhjGaOd+OVBM987mxFo+OW66cGpdKjZcpmc74ES1sB//7Kl/PAe8+wEakuhG4pcgOw== - dependencies: - tslib "^1.9.0" - -safe-buffer@5.1.2, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1: - version "5.1.2" - resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" - integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== - -safe-regex@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/safe-regex/-/safe-regex-1.1.0.tgz#40a3669f3b077d1e943d44629e157dd48023bf2e" - integrity sha1-QKNmnzsHfR6UPURinhV91IAjvy4= - dependencies: - ret "~0.1.10" - -"safer-buffer@>= 2.1.2 < 3", safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0: - version "2.1.2" - resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" - integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== - -sane@^2.0.0: - version "2.5.2" - resolved "https://registry.yarnpkg.com/sane/-/sane-2.5.2.tgz#b4dc1861c21b427e929507a3e751e2a2cb8ab3fa" - integrity sha1-tNwYYcIbQn6SlQej51HiosuKs/o= - dependencies: - anymatch "^2.0.0" - capture-exit "^1.2.0" - exec-sh "^0.2.0" - fb-watchman "^2.0.0" - micromatch "^3.1.4" - minimist "^1.1.1" - walker "~1.0.5" - watch "~0.18.0" - optionalDependencies: - fsevents "^1.2.3" - -sass-loader@7.1.0: - version "7.1.0" - resolved "https://registry.yarnpkg.com/sass-loader/-/sass-loader-7.1.0.tgz#16fd5138cb8b424bf8a759528a1972d72aad069d" - integrity sha512-+G+BKGglmZM2GUSfT9TLuEp6tzehHPjAMoRRItOojWIqIGPloVCMhNIQuG639eJ+y033PaGTSjLaTHts8Kw79w== - dependencies: - clone-deep "^2.0.1" - loader-utils "^1.0.1" - lodash.tail "^4.1.1" - neo-async "^2.5.0" - pify "^3.0.0" - semver "^5.5.0" - -sax@^1.2.4, sax@~1.2.4: - version "1.2.4" - resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" - integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw== - -saxes@^3.1.3: - version "3.1.3" - resolved "https://registry.yarnpkg.com/saxes/-/saxes-3.1.3.tgz#334ab3b802a465ccda96fff9bdefbd505546ffa8" - integrity sha512-Nc5DXc5A+m3rUDtkS+vHlBWKT7mCKjJPyia7f8YMW773hsXVv2wEHQZGE0zs4+5PLwz9U5Sbl/94Cnd9vHV7Bg== - dependencies: - xmlchars "^1.3.1" - -scheduler@^0.11.0-alpha.0: - version "0.11.3" - resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.11.3.tgz#b5769b90cf8b1464f3f3cfcafe8e3cd7555a2d6b" - integrity sha512-i9X9VRRVZDd3xZw10NY5Z2cVMbdYg6gqFecfj79USv1CFN+YrJ3gIPRKf1qlY+Sxly4djoKdfx1T+m9dnRB8kQ== - dependencies: - loose-envify "^1.1.0" - object-assign "^4.1.1" - -schema-utils@^0.4.4, schema-utils@^0.4.5: - version "0.4.7" - resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-0.4.7.tgz#ba74f597d2be2ea880131746ee17d0a093c68187" - integrity sha512-v/iwU6wvwGK8HbU9yi3/nhGzP0yGSuhQMzL6ySiec1FSrZZDkhm4noOSWzrNFo/jEc+SJY6jRTwuwbSXJPDUnQ== - dependencies: - ajv "^6.1.0" - ajv-keywords "^3.1.0" - -schema-utils@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-1.0.0.tgz#0b79a93204d7b600d4b2850d1f66c2a34951c770" - integrity sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g== - dependencies: - ajv "^6.1.0" - ajv-errors "^1.0.0" - ajv-keywords "^3.1.0" - -select-hose@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/select-hose/-/select-hose-2.0.0.tgz#625d8658f865af43ec962bfc376a37359a4994ca" - integrity sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo= - -selfsigned@^1.9.1: - version "1.10.4" - resolved "https://registry.yarnpkg.com/selfsigned/-/selfsigned-1.10.4.tgz#cdd7eccfca4ed7635d47a08bf2d5d3074092e2cd" - integrity sha512-9AukTiDmHXGXWtWjembZ5NDmVvP2695EtpgbCsxCa68w3c88B+alqbmZ4O3hZ4VWGXeGWzEVdvqgAJD8DQPCDw== - dependencies: - node-forge "0.7.5" - -"semver@2 || 3 || 4 || 5", semver@^5.3.0, semver@^5.4.1, semver@^5.5.0, semver@^5.5.1: - version "5.6.0" - resolved "https://registry.yarnpkg.com/semver/-/semver-5.6.0.tgz#7e74256fbaa49c75aa7c7a205cc22799cac80004" - integrity sha512-RS9R6R35NYgQn++fkDWaOmqGoj4Ek9gGs+DPxNUZKuwE183xjJroKvyo1IzVFeXvUrvmALy6FWD5xrdJT25gMg== - -send@0.16.2: - version "0.16.2" - resolved "https://registry.yarnpkg.com/send/-/send-0.16.2.tgz#6ecca1e0f8c156d141597559848df64730a6bbc1" - integrity sha512-E64YFPUssFHEFBvpbbjr44NCLtI1AohxQ8ZSiJjQLskAdKuriYEP6VyGEsRDH8ScozGpkaX1BGvhanqCwkcEZw== - dependencies: - debug "2.6.9" - depd "~1.1.2" - destroy "~1.0.4" - encodeurl "~1.0.2" - escape-html "~1.0.3" - etag "~1.8.1" - fresh "0.5.2" - http-errors "~1.6.2" - mime "1.4.1" - ms "2.0.0" - on-finished "~2.3.0" - range-parser "~1.2.0" - statuses "~1.4.0" - -serialize-javascript@^1.4.0: - version "1.5.0" - resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-1.5.0.tgz#1aa336162c88a890ddad5384baebc93a655161fe" - integrity sha512-Ga8c8NjAAp46Br4+0oZ2WxJCwIzwP60Gq1YPgU+39PiTVxyed/iKE/zyZI6+UlVYH5Q4PaQdHhcegIFPZTUfoQ== - -serve-index@^1.7.2: - version "1.9.1" - resolved "https://registry.yarnpkg.com/serve-index/-/serve-index-1.9.1.tgz#d3768d69b1e7d82e5ce050fff5b453bea12a9239" - integrity sha1-03aNabHn2C5c4FD/9bRTvqEqkjk= - dependencies: - accepts "~1.3.4" - batch "0.6.1" - debug "2.6.9" - escape-html "~1.0.3" - http-errors "~1.6.2" - mime-types "~2.1.17" - parseurl "~1.3.2" - -serve-static@1.13.2: - version "1.13.2" - resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.13.2.tgz#095e8472fd5b46237db50ce486a43f4b86c6cec1" - integrity sha512-p/tdJrO4U387R9oMjb1oj7qSMaMfmOyd4j9hOFoxZe2baQszgHcSWjuya/CiT5kgZZKRudHNOA0pYXOl8rQ5nw== - dependencies: - encodeurl "~1.0.2" - escape-html "~1.0.3" - parseurl "~1.3.2" - send "0.16.2" - -set-blocking@^2.0.0, set-blocking@~2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" - integrity sha1-BF+XgtARrppoA93TgrJDkrPYkPc= - -set-value@^0.4.3: - version "0.4.3" - resolved "https://registry.yarnpkg.com/set-value/-/set-value-0.4.3.tgz#7db08f9d3d22dc7f78e53af3c3bf4666ecdfccf1" - integrity sha1-fbCPnT0i3H945Trzw79GZuzfzPE= - dependencies: - extend-shallow "^2.0.1" - is-extendable "^0.1.1" - is-plain-object "^2.0.1" - to-object-path "^0.3.0" - -set-value@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/set-value/-/set-value-2.0.0.tgz#71ae4a88f0feefbbf52d1ea604f3fb315ebb6274" - integrity sha512-hw0yxk9GT/Hr5yJEYnHNKYXkIA8mVJgd9ditYZCe16ZczcaELYYcfvaXesNACk2O8O0nTiPQcQhGUQj8JLzeeg== - dependencies: - extend-shallow "^2.0.1" - is-extendable "^0.1.1" - is-plain-object "^2.0.3" - split-string "^3.0.1" - -setimmediate@^1.0.4, setimmediate@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285" - integrity sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU= - -setprototypeof@1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.1.0.tgz#d0bd85536887b6fe7c0d818cb962d9d91c54e656" - integrity sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ== - -sha.js@^2.4.0, sha.js@^2.4.8: - version "2.4.11" - resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.4.11.tgz#37a5cf0b81ecbc6943de109ba2960d1b26584ae7" - integrity sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ== - dependencies: - inherits "^2.0.1" - safe-buffer "^5.0.1" - -shallow-clone@^0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/shallow-clone/-/shallow-clone-0.1.2.tgz#5909e874ba77106d73ac414cfec1ffca87d97060" - integrity sha1-WQnodLp3EG1zrEFM/sH/yofZcGA= - dependencies: - is-extendable "^0.1.1" - kind-of "^2.0.1" - lazy-cache "^0.2.3" - mixin-object "^2.0.1" - -shallow-clone@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/shallow-clone/-/shallow-clone-1.0.0.tgz#4480cd06e882ef68b2ad88a3ea54832e2c48b571" - integrity sha512-oeXreoKR/SyNJtRJMAKPDSvd28OqEwG4eR/xc856cRGBII7gX9lvAqDxusPm0846z/w/hWYjI1NpKwJ00NHzRA== - dependencies: - is-extendable "^0.1.1" - kind-of "^5.0.0" - mixin-object "^2.0.1" - -shebang-command@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" - integrity sha1-RKrGW2lbAzmJaMOfNj/uXer98eo= - dependencies: - shebang-regex "^1.0.0" - -shebang-regex@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" - integrity sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM= - -shell-quote@1.6.1: - version "1.6.1" - resolved "https://registry.yarnpkg.com/shell-quote/-/shell-quote-1.6.1.tgz#f4781949cce402697127430ea3b3c5476f481767" - integrity sha1-9HgZSczkAmlxJ0MOo7PFR29IF2c= - dependencies: - array-filter "~0.0.0" - array-map "~0.0.0" - array-reduce "~0.0.0" - jsonify "~0.0.0" - -shellwords@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/shellwords/-/shellwords-0.1.1.tgz#d6b9181c1a48d397324c84871efbcfc73fc0654b" - integrity sha512-vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww== - -signal-exit@^3.0.0, signal-exit@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d" - integrity sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0= - -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" - -sisteransi@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-0.1.1.tgz#5431447d5f7d1675aac667ccd0b865a4994cb3ce" - integrity sha512-PmGOd02bM9YO5ifxpw36nrNMBTptEtfRl4qUYl9SndkolplkrZZOW7PGHjrZL53QvMVj9nQ+TKqUnRsw4tJa4g== - -slash@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/slash/-/slash-1.0.0.tgz#c41f2f6c39fc16d1cd17ad4b5d896114ae470d55" - integrity sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU= - -slice-ansi@1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-1.0.0.tgz#044f1a49d8842ff307aad6b505ed178bd950134d" - integrity sha512-POqxBK6Lb3q6s047D/XsDVNPnF9Dl8JSaqe9h9lURl0OdNqy/ujDrOiIHtsqXMGbWWTIomRzAMaTyawAU//Reg== - dependencies: - is-fullwidth-code-point "^2.0.0" - -snapdragon-node@^2.0.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz#6c175f86ff14bdb0724563e8f3c1b021a286853b" - integrity sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw== - dependencies: - define-property "^1.0.0" - isobject "^3.0.0" - snapdragon-util "^3.0.1" - -snapdragon-util@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/snapdragon-util/-/snapdragon-util-3.0.1.tgz#f956479486f2acd79700693f6f7b805e45ab56e2" - integrity sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ== - dependencies: - kind-of "^3.2.0" - -snapdragon@^0.8.1: - version "0.8.2" - resolved "https://registry.yarnpkg.com/snapdragon/-/snapdragon-0.8.2.tgz#64922e7c565b0e14204ba1aa7d6964278d25182d" - integrity sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg== - dependencies: - base "^0.11.1" - debug "^2.2.0" - define-property "^0.2.5" - extend-shallow "^2.0.1" - map-cache "^0.2.2" - source-map "^0.5.6" - source-map-resolve "^0.5.0" - use "^3.1.0" - -sockjs-client@1.1.5: - version "1.1.5" - resolved "https://registry.yarnpkg.com/sockjs-client/-/sockjs-client-1.1.5.tgz#1bb7c0f7222c40f42adf14f4442cbd1269771a83" - integrity sha1-G7fA9yIsQPQq3xT0RCy9Eml3GoM= - dependencies: - debug "^2.6.6" - eventsource "0.1.6" - faye-websocket "~0.11.0" - inherits "^2.0.1" - json3 "^3.3.2" - url-parse "^1.1.8" - -sockjs@0.3.19: - version "0.3.19" - resolved "https://registry.yarnpkg.com/sockjs/-/sockjs-0.3.19.tgz#d976bbe800af7bd20ae08598d582393508993c0d" - integrity sha512-V48klKZl8T6MzatbLlzzRNhMepEys9Y4oGFpypBFFn1gLI/QQ9HtLLyWJNbPlwGLelOVOEijUbTTJeLLI59jLw== - dependencies: - faye-websocket "^0.10.0" - uuid "^3.0.1" - -sort-keys@^1.0.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/sort-keys/-/sort-keys-1.1.2.tgz#441b6d4d346798f1b4e49e8920adfba0e543f9ad" - integrity sha1-RBttTTRnmPG05J6JIK37oOVD+a0= - dependencies: - is-plain-obj "^1.0.0" - -source-list-map@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-2.0.1.tgz#3993bd873bfc48479cca9ea3a547835c7c154b34" - integrity sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw== - -source-map-resolve@^0.5.0: - version "0.5.2" - resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.2.tgz#72e2cc34095543e43b2c62b2c4c10d4a9054f259" - integrity sha512-MjqsvNwyz1s0k81Goz/9vRBe9SZdB09Bdw+/zYyO+3CuPk6fouTaxscHkgtE8jKvf01kVfl8riHzERQ/kefaSA== - dependencies: - atob "^2.1.1" - decode-uri-component "^0.2.0" - resolve-url "^0.2.1" - source-map-url "^0.4.0" - urix "^0.1.0" - -source-map-support@^0.4.15: - version "0.4.18" - resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.18.tgz#0286a6de8be42641338594e97ccea75f0a2c585f" - integrity sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA== - dependencies: - source-map "^0.5.6" - -source-map-support@^0.5.6, source-map-support@~0.5.6: - version "0.5.9" - resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.9.tgz#41bc953b2534267ea2d605bccfa7bfa3111ced5f" - integrity sha512-gR6Rw4MvUlYy83vP0vxoVNzM6t8MUXqNuRsuBmBHQDu1Fh6X015FrLdgoDKcNdkwGubozq0P4N0Q37UyFVr1EA== - dependencies: - buffer-from "^1.0.0" - source-map "^0.6.0" - -source-map-url@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.0.tgz#3e935d7ddd73631b97659956d55128e87b5084a3" - integrity sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM= - -source-map@^0.5.0, source-map@^0.5.3, source-map@^0.5.6, source-map@^0.5.7: - version "0.5.7" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" - integrity sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w= - -source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.0, source-map@~0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" - integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== - -spdx-correct@^3.0.0: - version "3.0.2" - resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.0.2.tgz#19bb409e91b47b1ad54159243f7312a858db3c2e" - integrity sha512-q9hedtzyXHr5S0A1vEPoK/7l8NpfkFYTq6iCY+Pno2ZbdZR6WexZFtqeVGkGxW3TEJMN914Z55EnAGMmenlIQQ== - dependencies: - spdx-expression-parse "^3.0.0" - spdx-license-ids "^3.0.0" - -spdx-exceptions@^2.1.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz#2ea450aee74f2a89bfb94519c07fcd6f41322977" - integrity sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA== - -spdx-expression-parse@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz#99e119b7a5da00e05491c9fa338b7904823b41d0" - integrity sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg== - dependencies: - spdx-exceptions "^2.1.0" - spdx-license-ids "^3.0.0" - -spdx-license-ids@^3.0.0: - version "3.0.2" - resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.2.tgz#a59efc09784c2a5bada13cfeaf5c75dd214044d2" - integrity sha512-qky9CVt0lVIECkEsYbNILVnPvycuEBkXoMFLRWsREkomQLevYhtRKC+R91a5TOAQ3bCMjikRwhyaRqj1VYatYg== - -spdy-transport@^2.0.18: - version "2.1.0" - resolved "https://registry.yarnpkg.com/spdy-transport/-/spdy-transport-2.1.0.tgz#4bbb15aaffed0beefdd56ad61dbdc8ba3e2cb7a1" - integrity sha512-bpUeGpZcmZ692rrTiqf9/2EUakI6/kXX1Rpe0ib/DyOzbiexVfXkw6GnvI9hVGvIwVaUhkaBojjCZwLNRGQg1g== - dependencies: - debug "^2.6.8" - detect-node "^2.0.3" - hpack.js "^2.1.6" - obuf "^1.1.1" - readable-stream "^2.2.9" - safe-buffer "^5.0.1" - wbuf "^1.7.2" - -spdy@^3.4.1: - version "3.4.7" - resolved "https://registry.yarnpkg.com/spdy/-/spdy-3.4.7.tgz#42ff41ece5cc0f99a3a6c28aabb73f5c3b03acbc" - integrity sha1-Qv9B7OXMD5mjpsKKq7c/XDsDrLw= - dependencies: - debug "^2.6.8" - handle-thing "^1.2.5" - http-deceiver "^1.2.7" - safe-buffer "^5.0.1" - select-hose "^2.0.0" - spdy-transport "^2.0.18" - -split-string@^3.0.1, split-string@^3.0.2: - version "3.1.0" - resolved "https://registry.yarnpkg.com/split-string/-/split-string-3.1.0.tgz#7cb09dda3a86585705c64b39a6466038682e8fe2" - integrity sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw== - dependencies: - extend-shallow "^3.0.0" - -sprintf-js@~1.0.2: - version "1.0.3" - resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" - integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= - -sshpk@^1.7.0: - version "1.15.2" - resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.15.2.tgz#c946d6bd9b1a39d0e8635763f5242d6ed6dcb629" - integrity sha512-Ra/OXQtuh0/enyl4ETZAfTaeksa6BXks5ZcjpSUNrjBr0DvrJKX+1fsKDPpT9TBXgHAFsa4510aNVgI8g/+SzA== - dependencies: - asn1 "~0.2.3" - assert-plus "^1.0.0" - bcrypt-pbkdf "^1.0.0" - dashdash "^1.12.0" - ecc-jsbn "~0.1.1" - getpass "^0.1.1" - jsbn "~0.1.0" - safer-buffer "^2.0.2" - tweetnacl "~0.14.0" - -ssri@^5.2.4: - version "5.3.0" - resolved "https://registry.yarnpkg.com/ssri/-/ssri-5.3.0.tgz#ba3872c9c6d33a0704a7d71ff045e5ec48999d06" - integrity sha512-XRSIPqLij52MtgoQavH/x/dU1qVKtWUAAZeOHsR9c2Ddi4XerFy3mc1alf+dLJKl9EUIm/Ht+EowFkTUOA6GAQ== - dependencies: - safe-buffer "^5.1.1" - -ssri@^6.0.0: - version "6.0.1" - resolved "https://registry.yarnpkg.com/ssri/-/ssri-6.0.1.tgz#2a3c41b28dd45b62b63676ecb74001265ae9edd8" - integrity sha512-3Wge10hNcT1Kur4PDFwEieXSCMCJs/7WvSACcrMYrNp+b8kDL1/0wJch5Ni2WrtwEa2IO8OsVfeKIciKCDx/QA== - dependencies: - figgy-pudding "^3.5.1" - -stable@~0.1.6: - version "0.1.8" - resolved "https://registry.yarnpkg.com/stable/-/stable-0.1.8.tgz#836eb3c8382fe2936feaf544631017ce7d47a3cf" - integrity sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w== - -stack-utils@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/stack-utils/-/stack-utils-1.0.1.tgz#d4f33ab54e8e38778b0ca5cfd3b3afb12db68620" - integrity sha1-1PM6tU6OOHeLDKXP07OvsS22hiA= - -static-extend@^0.1.1: - version "0.1.2" - resolved "https://registry.yarnpkg.com/static-extend/-/static-extend-0.1.2.tgz#60809c39cbff55337226fd5e0b520f341f1fb5c6" - integrity sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY= - dependencies: - define-property "^0.2.5" - object-copy "^0.1.0" - -"statuses@>= 1.4.0 < 2": - version "1.5.0" - resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.5.0.tgz#161c7dac177659fd9811f43771fa99381478628c" - integrity sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow= - -statuses@~1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.4.0.tgz#bb73d446da2796106efcc1b601a253d6c46bd087" - integrity sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew== - -stealthy-require@^1.1.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/stealthy-require/-/stealthy-require-1.1.1.tgz#35b09875b4ff49f26a777e509b3090a3226bf24b" - integrity sha1-NbCYdbT/SfJqd35QmzCQoyJr8ks= - -stream-browserify@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/stream-browserify/-/stream-browserify-2.0.1.tgz#66266ee5f9bdb9940a4e4514cafb43bb71e5c9db" - integrity sha1-ZiZu5fm9uZQKTkUUyvtDu3Hlyds= - dependencies: - inherits "~2.0.1" - readable-stream "^2.0.2" - -stream-each@^1.1.0: - version "1.2.3" - resolved "https://registry.yarnpkg.com/stream-each/-/stream-each-1.2.3.tgz#ebe27a0c389b04fbcc233642952e10731afa9bae" - integrity sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw== - dependencies: - end-of-stream "^1.1.0" - stream-shift "^1.0.0" - -stream-http@^2.7.2: - version "2.8.3" - resolved "https://registry.yarnpkg.com/stream-http/-/stream-http-2.8.3.tgz#b2d242469288a5a27ec4fe8933acf623de6514fc" - integrity sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw== - dependencies: - builtin-status-codes "^3.0.0" - inherits "^2.0.1" - readable-stream "^2.3.6" - to-arraybuffer "^1.0.0" - xtend "^4.0.0" - -stream-shift@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/stream-shift/-/stream-shift-1.0.0.tgz#d5c752825e5367e786f78e18e445ea223a155952" - integrity sha1-1cdSgl5TZ+eG944Y5EXqIjoVWVI= - -strict-uri-encode@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz#279b225df1d582b1f54e65addd4352e18faa0713" - integrity sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM= - -string-length@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/string-length/-/string-length-2.0.0.tgz#d40dbb686a3ace960c1cffca562bf2c45f8363ed" - integrity sha1-1A27aGo6zpYMHP/KVivyxF+DY+0= - dependencies: - astral-regex "^1.0.0" - strip-ansi "^4.0.0" - -string-width@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" - integrity sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M= - dependencies: - code-point-at "^1.0.0" - is-fullwidth-code-point "^1.0.0" - strip-ansi "^3.0.0" - -"string-width@^1.0.2 || 2", string-width@^2.0.0, string-width@^2.1.0, string-width@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" - integrity sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw== - dependencies: - is-fullwidth-code-point "^2.0.0" - strip-ansi "^4.0.0" - -string_decoder@^1.0.0, string_decoder@~1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8" - integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg== - dependencies: - safe-buffer "~5.1.0" - -string_decoder@~0.10.x: - version "0.10.31" - resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94" - integrity sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ= - -stringify-object@^3.2.2: - version "3.3.0" - resolved "https://registry.yarnpkg.com/stringify-object/-/stringify-object-3.3.0.tgz#703065aefca19300d3ce88af4f5b3956d7556629" - integrity sha512-rHqiFh1elqCQ9WPLIC8I0Q/g/wj5J1eMkyoiD6eoQApWHP0FtlK7rqnhmabL5VUY9JQCcqwwvlOaSuutekgyrw== - dependencies: - get-own-enumerable-property-symbols "^3.0.0" - is-obj "^1.0.1" - is-regexp "^1.0.0" - -strip-ansi@4.0.0, strip-ansi@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f" - integrity sha1-qEeQIusaw2iocTibY1JixQXuNo8= - dependencies: - ansi-regex "^3.0.0" - -strip-ansi@^3.0.0, strip-ansi@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" - integrity sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8= - dependencies: - ansi-regex "^2.0.0" - -strip-bom@3.0.0, strip-bom@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" - integrity sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM= - -strip-bom@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-2.0.0.tgz#6219a85616520491f35788bdbf1447a99c7e6b0e" - integrity sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4= - dependencies: - is-utf8 "^0.2.0" - -strip-comments@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/strip-comments/-/strip-comments-1.0.2.tgz#82b9c45e7f05873bee53f37168af930aa368679d" - integrity sha512-kL97alc47hoyIQSV165tTt9rG5dn4w1dNnBhOQ3bOU1Nc1hel09jnXANaHJ7vzHLd4Ju8kseDGzlev96pghLFw== - dependencies: - babel-extract-comments "^1.0.0" - babel-plugin-transform-object-rest-spread "^6.26.0" - -strip-eof@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf" - integrity sha1-u0P/VZim6wXYm1n80SnJgzE2Br8= - -strip-json-comments@^2.0.1, strip-json-comments@~2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" - integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo= - -strip-outer@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/strip-outer/-/strip-outer-1.0.1.tgz#b2fd2abf6604b9d1e6013057195df836b8a9d631" - integrity sha512-k55yxKHwaXnpYGsOzg4Vl8+tDrWylxDEpknGjhTiZB8dFRU5rTo9CAzeycivxV3s+zlTKwrs6WxMxR95n26kwg== - dependencies: - escape-string-regexp "^1.0.2" - -strip-url-auth@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/strip-url-auth/-/strip-url-auth-1.0.1.tgz#22b0fa3a41385b33be3f331551bbb837fa0cd7ae" - integrity sha1-IrD6OkE4WzO+PzMVUbu4N/oM164= - -style-loader@0.23.0: - version "0.23.0" - resolved "https://registry.yarnpkg.com/style-loader/-/style-loader-0.23.0.tgz#8377fefab68416a2e05f1cabd8c3a3acfcce74f1" - integrity sha512-uCcN7XWHkqwGVt7skpInW6IGO1tG6ReyFQ1Cseh0VcN6VdcFQi62aG/2F3Y9ueA8x4IVlfaSUxpmQXQD9QrEuQ== - dependencies: - loader-utils "^1.1.0" - schema-utils "^0.4.5" - -styled-components@^4.1.2: - version "4.1.2" - resolved "https://registry.yarnpkg.com/styled-components/-/styled-components-4.1.2.tgz#f8a685e3b2bcd03c5beac7f2c02bb6ad237da9b3" - integrity sha512-NdvWatJ2WLqZxAvto+oH0k7GAC/TlAUJTrHoXJddjbCrU6U23EmVbb9LXJBF+d6q6hH+g9nQYOWYPUeX/Vlc2w== - dependencies: - "@emotion/is-prop-valid" "^0.6.8" - "@emotion/unitless" "^0.7.0" - babel-plugin-styled-components ">= 1" - css-to-react-native "^2.2.2" - memoize-one "^4.0.0" - prop-types "^15.5.4" - react-is "^16.6.0" - stylis "^3.5.0" - stylis-rule-sheet "^0.0.10" - supports-color "^5.5.0" - -stylehacks@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/stylehacks/-/stylehacks-4.0.1.tgz#3186595d047ab0df813d213e51c8b94e0b9010f2" - integrity sha512-TK5zEPeD9NyC1uPIdjikzsgWxdQQN/ry1X3d1iOz1UkYDCmcr928gWD1KHgyC27F50UnE0xCTrBOO1l6KR8M4w== - dependencies: - browserslist "^4.0.0" - postcss "^7.0.0" - postcss-selector-parser "^3.0.0" - -stylis-rule-sheet@^0.0.10: - version "0.0.10" - resolved "https://registry.yarnpkg.com/stylis-rule-sheet/-/stylis-rule-sheet-0.0.10.tgz#44e64a2b076643f4b52e5ff71efc04d8c3c4a430" - integrity sha512-nTbZoaqoBnmK+ptANthb10ZRZOGC+EmTLLUxeYIuHNkEKcmKgXX1XWKkUBT2Ac4es3NybooPe0SmvKdhKJZAuw== - -stylis@^3.5.0: - version "3.5.4" - resolved "https://registry.yarnpkg.com/stylis/-/stylis-3.5.4.tgz#f665f25f5e299cf3d64654ab949a57c768b73fbe" - integrity sha512-8/3pSmthWM7lsPBKv7NXkzn2Uc9W7NotcwGNpJaa3k7WMM1XDCA4MgT5k/8BIexd5ydZdboXtU90XH9Ec4Bv/Q== - -supports-color@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" - integrity sha1-U10EXOa2Nj+kARcIRimZXp3zJMc= - -supports-color@^3.1.2: - version "3.2.3" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-3.2.3.tgz#65ac0504b3954171d8a64946b2ae3cbb8a5f54f6" - integrity sha1-ZawFBLOVQXHYpklGsq48u4pfVPY= - dependencies: - has-flag "^1.0.0" - -supports-color@^5.1.0, supports-color@^5.3.0, supports-color@^5.4.0, supports-color@^5.5.0: - version "5.5.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" - integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== - dependencies: - has-flag "^3.0.0" - -svgo@^1.0.0, svgo@^1.0.5: - version "1.1.1" - resolved "https://registry.yarnpkg.com/svgo/-/svgo-1.1.1.tgz#12384b03335bcecd85cfa5f4e3375fed671cb985" - integrity sha512-GBkJbnTuFpM4jFbiERHDWhZc/S/kpHToqmZag3aEBjPYK44JAN2QBjvrGIxLOoCyMZjuFQIfTO2eJd8uwLY/9g== - dependencies: - coa "~2.0.1" - colors "~1.1.2" - css-select "^2.0.0" - css-select-base-adapter "~0.1.0" - css-tree "1.0.0-alpha.28" - css-url-regex "^1.1.0" - csso "^3.5.0" - js-yaml "^3.12.0" - mkdirp "~0.5.1" - object.values "^1.0.4" - sax "~1.2.4" - stable "~0.1.6" - unquote "~1.1.1" - util.promisify "~1.0.0" - -symbol-observable@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/symbol-observable/-/symbol-observable-1.2.0.tgz#c22688aed4eab3cdc2dfeacbb561660560a00804" - integrity sha512-e900nM8RRtGhlV36KGEU9k65K3mPb1WV70OdjfxlG2EAuM1noi/E/BaW/uMhL7bPEssK8QV57vN3esixjUvcXQ== - -symbol-tree@^3.2.2: - version "3.2.2" - resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.2.tgz#ae27db38f660a7ae2e1c3b7d1bc290819b8519e6" - integrity sha1-rifbOPZgp64uHDt9G8KQgZuFGeY= - -table@^4.0.3: - version "4.0.3" - resolved "https://registry.yarnpkg.com/table/-/table-4.0.3.tgz#00b5e2b602f1794b9acaf9ca908a76386a7813bc" - integrity sha512-S7rnFITmBH1EnyKcvxBh1LjYeQMmnZtCXSEbHcH6S0NoKit24ZuFO/T1vDcLdYsLQkM188PVVhQmzKIuThNkKg== - dependencies: - ajv "^6.0.1" - ajv-keywords "^3.0.0" - chalk "^2.1.0" - lodash "^4.17.4" - slice-ansi "1.0.0" - string-width "^2.1.1" - -tapable@^1.0.0, tapable@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/tapable/-/tapable-1.1.0.tgz#0d076a172e3d9ba088fd2272b2668fb8d194b78c" - integrity sha512-IlqtmLVaZA2qab8epUXbVWRn3aB1imbDMJtjB3nu4X0NqPkcY/JH9ZtCBWKHWPxs8Svi9tyo8w2dBoi07qZbBA== - -tar@^4: - version "4.4.6" - resolved "https://registry.yarnpkg.com/tar/-/tar-4.4.6.tgz#63110f09c00b4e60ac8bcfe1bf3c8660235fbc9b" - integrity sha512-tMkTnh9EdzxyfW+6GK6fCahagXsnYk6kE6S9Gr9pjVdys769+laCTbodXDhPAjzVtEBazRgP0gYqOjnk9dQzLg== - dependencies: - chownr "^1.0.1" - fs-minipass "^1.2.5" - minipass "^2.3.3" - minizlib "^1.1.0" - mkdirp "^0.5.0" - safe-buffer "^5.1.2" - yallist "^3.0.2" - -terser-webpack-plugin@1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-1.1.0.tgz#cf7c25a1eee25bf121f4a587bb9e004e3f80e528" - integrity sha512-61lV0DSxMAZ8AyZG7/A4a3UPlrbOBo8NIQ4tJzLPAdGOQ+yoNC7l5ijEow27lBAL2humer01KLS6bGIMYQxKoA== - dependencies: - cacache "^11.0.2" - find-cache-dir "^2.0.0" - schema-utils "^1.0.0" - serialize-javascript "^1.4.0" - source-map "^0.6.1" - terser "^3.8.1" - webpack-sources "^1.1.0" - worker-farm "^1.5.2" - -terser@^3.8.1: - version "3.10.8" - resolved "https://registry.yarnpkg.com/terser/-/terser-3.10.8.tgz#2fe3967396a10cdc3d575074fe857efd30a2895a" - integrity sha512-GQJHWJ/vbx0EgRk+lBMONMmKaT+ifeo/XgT/hi3KpzEEFOERVyFuJSVXH8grcmJjiqKY35ds8rBCxvABUeyyuQ== - dependencies: - commander "~2.17.1" - source-map "~0.6.1" - source-map-support "~0.5.6" - -test-exclude@^4.2.1: - version "4.2.3" - resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-4.2.3.tgz#a9a5e64474e4398339245a0a769ad7c2f4a97c20" - integrity sha512-SYbXgY64PT+4GAL2ocI3HwPa4Q4TBKm0cwAVeKOt/Aoc0gSpNRjJX8w0pA1LMKZ3LBmd8pYBqApFNQLII9kavA== - dependencies: - arrify "^1.0.1" - micromatch "^2.3.11" - object-assign "^4.1.0" - read-pkg-up "^1.0.1" - require-main-filename "^1.0.1" - -text-table@0.2.0, text-table@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" - integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ= - -throat@^4.0.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/throat/-/throat-4.1.0.tgz#89037cbc92c56ab18926e6ba4cbb200e15672a6a" - integrity sha1-iQN8vJLFarGJJua6TLsgDhVnKmo= - -through2@^2.0.0: - version "2.0.3" - resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.3.tgz#0004569b37c7c74ba39c43f3ced78d1ad94140be" - integrity sha1-AARWmzfHx0ujnEPzzteNGtlBQL4= - dependencies: - readable-stream "^2.1.5" - xtend "~4.0.1" - -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= - -thunky@^1.0.2: - version "1.0.3" - resolved "https://registry.yarnpkg.com/thunky/-/thunky-1.0.3.tgz#f5df732453407b09191dae73e2a8cc73f381a826" - integrity sha512-YwT8pjmNcAXBZqrubu22P4FYsh2D4dxRmnWBOL8Jk8bUcRUtc5326kx32tuTmFDAZtLOGEVNl8POAR8j896Iow== - -timers-browserify@^2.0.4: - version "2.0.10" - resolved "https://registry.yarnpkg.com/timers-browserify/-/timers-browserify-2.0.10.tgz#1d28e3d2aadf1d5a5996c4e9f95601cd053480ae" - integrity sha512-YvC1SV1XdOUaL6gx5CoGroT3Gu49pK9+TZ38ErPldOWW4j49GI1HKs9DV+KGq/w6y+LZ72W1c8cKz2vzY+qpzg== - dependencies: - setimmediate "^1.0.4" - -timsort@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/timsort/-/timsort-0.3.0.tgz#405411a8e7e6339fe64db9a234de11dc31e02bd4" - integrity sha1-QFQRqOfmM5/mTbmiNN4R3DHgK9Q= - -tinycolor2@^1.4.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/tinycolor2/-/tinycolor2-1.4.1.tgz#f4fad333447bc0b07d4dc8e9209d8f39a8ac77e8" - integrity sha1-9PrTM0R7wLB9TcjpIJ2POaisd+g= - -tmp@^0.0.33: - version "0.0.33" - resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9" - integrity sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw== - dependencies: - os-tmpdir "~1.0.2" - -tmpl@1.0.x: - version "1.0.4" - resolved "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.4.tgz#23640dd7b42d00433911140820e5cf440e521dd1" - integrity sha1-I2QN17QtAEM5ERQIIOXPRA5SHdE= - -to-arraybuffer@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz#7d229b1fcc637e466ca081180836a7aabff83f43" - integrity sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M= - -to-fast-properties@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-1.0.3.tgz#b83571fa4d8c25b82e231b06e3a3055de4ca1a47" - integrity sha1-uDVx+k2MJbguIxsG46MFXeTKGkc= - -to-fast-properties@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" - integrity sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4= - -to-object-path@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/to-object-path/-/to-object-path-0.3.0.tgz#297588b7b0e7e0ac08e04e672f85c1f4999e17af" - integrity sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68= - dependencies: - kind-of "^3.0.2" - -to-regex-range@^2.1.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-2.1.1.tgz#7c80c17b9dfebe599e27367e0d4dd5590141db38" - integrity sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg= - dependencies: - is-number "^3.0.0" - repeat-string "^1.6.1" - -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" - integrity sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw== - dependencies: - define-property "^2.0.2" - extend-shallow "^3.0.2" - regex-not "^1.0.2" - safe-regex "^1.1.0" - -topo@2.x.x: - version "2.0.2" - resolved "https://registry.yarnpkg.com/topo/-/topo-2.0.2.tgz#cd5615752539057c0dc0491a621c3bc6fbe1d182" - integrity sha1-zVYVdSU5BXwNwEkaYhw7xvvh0YI= - dependencies: - hoek "4.x.x" - -tough-cookie@>=2.3.3, tough-cookie@^2.3.4, tough-cookie@^2.4.3, tough-cookie@~2.4.3: - version "2.4.3" - resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.4.3.tgz#53f36da3f47783b0925afa06ff9f3b165280f781" - integrity sha512-Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ== - dependencies: - psl "^1.1.24" - punycode "^1.4.1" - -tr46@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/tr46/-/tr46-1.0.1.tgz#a8b13fd6bfd2489519674ccde55ba3693b706d09" - integrity sha1-qLE/1r/SSJUZZ0zN5VujaTtwbQk= - dependencies: - punycode "^2.1.0" - -trim-repeated@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/trim-repeated/-/trim-repeated-1.0.0.tgz#e3646a2ea4e891312bf7eace6cfb05380bc01c21" - integrity sha1-42RqLqTokTEr9+rObPsFOAvAHCE= - dependencies: - escape-string-regexp "^1.0.2" - -trim-right@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003" - integrity sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM= - -tryer@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/tryer/-/tryer-1.0.1.tgz#f2c85406800b9b0f74c9f7465b81eaad241252f8" - integrity sha512-c3zayb8/kWWpycWYg87P71E1S1ZL6b6IJxfb5fvsUgsf0S2MVGaDhDXXjDMpdCpfWXqptc+4mXwmiy1ypXqRAA== - -tslib@^1.9.0: - version "1.9.3" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.9.3.tgz#d7e4dd79245d85428c4d7e4822a79917954ca286" - integrity sha512-4krF8scpejhaOgqzBEcGM7yDIEfi0/8+8zDRZhNZZ2kjmHJ4hv3zCbQWxoJGz1iw5U0Jl0nma13xzHXcncMavQ== - -tty-browserify@0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/tty-browserify/-/tty-browserify-0.0.0.tgz#a157ba402da24e9bf957f9aa69d524eed42901a6" - integrity sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY= - -tunnel-agent@^0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" - integrity sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0= - dependencies: - safe-buffer "^5.0.1" - -tweetnacl@^0.14.3, tweetnacl@~0.14.0: - version "0.14.5" - resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" - integrity sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q= - -type-check@~0.3.2: - version "0.3.2" - resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72" - integrity sha1-WITKtRLPHTVeP7eE8wgEsrUg23I= - dependencies: - prelude-ls "~1.1.2" - -type-is@~1.6.16: - version "1.6.16" - resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.16.tgz#f89ce341541c672b25ee7ae3c73dee3b2be50194" - integrity sha512-HRkVv/5qY2G6I8iab9cI7v1bOIdhm94dVjQCPFElW9W+3GeDOSHmy2EBYe4VTApuzolPcmgFTN3ftVJRKR2J9Q== - dependencies: - media-typer "0.3.0" - mime-types "~2.1.18" - -typedarray@^0.0.6: - version "0.0.6" - resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" - integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c= - -typesafe-actions@^2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/typesafe-actions/-/typesafe-actions-2.0.4.tgz#31c8f8df3566d549eb52edb64a75997e970c17d0" - integrity sha512-3qnSDBNtH3mfekmM9w/IVlsqiUT4I5m+mpLp5tV2Ua/28BfaehqUg6eQNC8+cTk+oufbXcubLiWvKS/61qgleQ== - -typescript@^3.2.1: - version "3.2.1" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-3.2.1.tgz#0b7a04b8cf3868188de914d9568bd030f0c56192" - integrity sha512-jw7P2z/h6aPT4AENXDGjcfHTu5CSqzsbZc6YlUIebTyBAq8XaKp78x7VcSh30xwSCcsu5irZkYZUSFP1MrAMbg== - -ua-parser-js@^0.7.18: - version "0.7.19" - resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-0.7.19.tgz#94151be4c0a7fb1d001af7022fdaca4642659e4b" - integrity sha512-T3PVJ6uz8i0HzPxOF9SWzWAlfN/DavlpQqepn22xgve/5QecC+XMCAtmUNnY7C9StehaV6exjUCI801lOI7QlQ== - -uglify-es@^3.3.4: - version "3.3.9" - resolved "https://registry.yarnpkg.com/uglify-es/-/uglify-es-3.3.9.tgz#0c1c4f0700bed8dbc124cdb304d2592ca203e677" - integrity sha512-r+MU0rfv4L/0eeW3xZrd16t4NZfK8Ld4SWVglYBb7ez5uXFWHuVRs6xCTrf1yirs9a4j4Y27nn7SRfO6v67XsQ== - dependencies: - commander "~2.13.0" - source-map "~0.6.1" - -uglify-js@3.4.x, uglify-js@^3.1.4: - version "3.4.9" - resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.4.9.tgz#af02f180c1207d76432e473ed24a28f4a782bae3" - integrity sha512-8CJsbKOtEbnJsTyv6LE6m6ZKniqMiFWmm9sRbopbkGs3gMPPfd3Fh8iIA4Ykv5MgaTbqHr4BaoGLJLZNhsrW1Q== - dependencies: - commander "~2.17.1" - source-map "~0.6.1" - -uglifyjs-webpack-plugin@^1.2.4: - version "1.3.0" - resolved "https://registry.yarnpkg.com/uglifyjs-webpack-plugin/-/uglifyjs-webpack-plugin-1.3.0.tgz#75f548160858163a08643e086d5fefe18a5d67de" - integrity sha512-ovHIch0AMlxjD/97j9AYovZxG5wnHOPkL7T1GKochBADp/Zwc44pEWNqpKl1Loupp1WhFg7SlYmHZRUfdAacgw== - dependencies: - cacache "^10.0.4" - find-cache-dir "^1.0.0" - schema-utils "^0.4.5" - serialize-javascript "^1.4.0" - source-map "^0.6.1" - uglify-es "^3.3.4" - webpack-sources "^1.1.0" - worker-farm "^1.5.2" - -unicode-canonical-property-names-ecmascript@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz#2619800c4c825800efdd8343af7dd9933cbe2818" - integrity sha512-jDrNnXWHd4oHiTZnx/ZG7gtUTVp+gCcTTKr8L0HjlwphROEW3+Him+IpvC+xcJEFegapiMZyZe02CyuOnRmbnQ== - -unicode-match-property-ecmascript@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-1.0.4.tgz#8ed2a32569961bce9227d09cd3ffbb8fed5f020c" - integrity sha512-L4Qoh15vTfntsn4P1zqnHulG0LdXgjSO035fEpdtp6YxXhMT51Q6vgM5lYdG/5X3MjS+k/Y9Xw4SFCY9IkR0rg== - dependencies: - unicode-canonical-property-names-ecmascript "^1.0.4" - unicode-property-aliases-ecmascript "^1.0.4" - -unicode-match-property-value-ecmascript@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.0.2.tgz#9f1dc76926d6ccf452310564fd834ace059663d4" - integrity sha512-Rx7yODZC1L/T8XKo/2kNzVAQaRE88AaMvI1EF/Xnj3GW2wzN6fop9DDWuFAKUVFH7vozkz26DzP0qyWLKLIVPQ== - -unicode-property-aliases-ecmascript@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.0.4.tgz#5a533f31b4317ea76f17d807fa0d116546111dd0" - integrity sha512-2WSLa6OdYd2ng8oqiGIWnJqyFArvhn+5vgx5GTxMbUYjCYKUcuKS62YLFF0R/BDGlB1yzXjQOLtPAfHsgirEpg== - -union-value@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/union-value/-/union-value-1.0.0.tgz#5c71c34cb5bad5dcebe3ea0cd08207ba5aa1aea4" - integrity sha1-XHHDTLW61dzr4+oM0IIHulqhrqQ= - dependencies: - arr-union "^3.1.0" - get-value "^2.0.6" - is-extendable "^0.1.1" - set-value "^0.4.3" - -uniq@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/uniq/-/uniq-1.0.1.tgz#b31c5ae8254844a3a8281541ce2b04b865a734ff" - integrity sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8= - -uniqs@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/uniqs/-/uniqs-2.0.0.tgz#ffede4b36b25290696e6e165d4a59edb998e6b02" - integrity sha1-/+3ks2slKQaW5uFl1KWe25mOawI= - -unique-filename@^1.1.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/unique-filename/-/unique-filename-1.1.1.tgz#1d69769369ada0583103a1e6ae87681b56573230" - integrity sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ== - dependencies: - unique-slug "^2.0.0" - -unique-slug@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/unique-slug/-/unique-slug-2.0.1.tgz#5e9edc6d1ce8fb264db18a507ef9bd8544451ca6" - integrity sha512-n9cU6+gITaVu7VGj1Z8feKMmfAjEAQGhwD9fE3zvpRRa0wEIx8ODYkVGfSc94M2OX00tUFV8wH3zYbm1I8mxFg== - dependencies: - imurmurhash "^0.1.4" - -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, unpipe@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" - integrity sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw= - -unquote@~1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/unquote/-/unquote-1.1.1.tgz#8fded7324ec6e88a0ff8b905e7c098cdc086d544" - integrity sha1-j97XMk7G6IoP+LkF58CYzcCG1UQ= - -unset-value@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/unset-value/-/unset-value-1.0.0.tgz#8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559" - integrity sha1-g3aHP30jNRef+x5vw6jtDfyKtVk= - dependencies: - has-value "^0.3.1" - isobject "^3.0.0" - -upath@^1.0.5: - version "1.1.0" - resolved "https://registry.yarnpkg.com/upath/-/upath-1.1.0.tgz#35256597e46a581db4793d0ce47fa9aebfc9fabd" - integrity sha512-bzpH/oBhoS/QI/YtbkqCg6VEiPYjSZtrHQM6/QnJS6OL9pKUFLqb3aFh4Scvwm45+7iAgiMkLhSbaZxUqmrprw== - -upper-case@^1.1.1: - version "1.1.3" - resolved "https://registry.yarnpkg.com/upper-case/-/upper-case-1.1.3.tgz#f6b4501c2ec4cdd26ba78be7222961de77621598" - integrity sha1-9rRQHC7EzdJrp4vnIilh3ndiFZg= - -uri-js@^4.2.2: - version "4.2.2" - resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.2.2.tgz#94c540e1ff772956e2299507c010aea6c8838eb0" - integrity sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ== - dependencies: - punycode "^2.1.0" - -urix@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" - integrity sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI= - -url-loader@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/url-loader/-/url-loader-1.1.1.tgz#4d1f3b4f90dde89f02c008e662d604d7511167c1" - integrity sha512-vugEeXjyYFBCUOpX+ZuaunbK3QXMKaQ3zUnRfIpRBlGkY7QizCnzyyn2ASfcxsvyU3ef+CJppVywnl3Kgf13Gg== - dependencies: - loader-utils "^1.1.0" - mime "^2.0.3" - schema-utils "^1.0.0" - -url-parse@^1.1.8, url-parse@^1.4.3: - version "1.4.3" - resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.4.3.tgz#bfaee455c889023219d757e045fa6a684ec36c15" - integrity sha512-rh+KuAW36YKo0vClhQzLLveoj8FwPJNu65xLb7Mrt+eZht0IPT0IXgSv8gcMegZ6NvjJUALf6Mf25POlMwD1Fw== - dependencies: - querystringify "^2.0.0" - requires-port "^1.0.0" - -url@^0.11.0: - version "0.11.0" - resolved "https://registry.yarnpkg.com/url/-/url-0.11.0.tgz#3838e97cfc60521eb73c525a8e55bfdd9e2e28f1" - integrity sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE= - dependencies: - punycode "1.3.2" - querystring "0.2.0" - -use@^3.1.0: +yallist@^3.0.2: version "3.1.1" - resolved "https://registry.yarnpkg.com/use/-/use-3.1.1.tgz#d50c8cac79a19fbc20f2911f56eb973f4e10070f" - integrity sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ== - -util-deprecate@~1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" - integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= - -util.promisify@1.0.0, util.promisify@^1.0.0, util.promisify@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/util.promisify/-/util.promisify-1.0.0.tgz#440f7165a459c9a16dc145eb8e72f35687097030" - integrity sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA== - dependencies: - define-properties "^1.1.2" - object.getownpropertydescriptors "^2.0.3" - -util@0.10.3: - version "0.10.3" - resolved "https://registry.yarnpkg.com/util/-/util-0.10.3.tgz#7afb1afe50805246489e3db7fe0ed379336ac0f9" - integrity sha1-evsa/lCAUkZInj23/g7TeTNqwPk= - dependencies: - inherits "2.0.1" - -util@^0.10.3: - version "0.10.4" - resolved "https://registry.yarnpkg.com/util/-/util-0.10.4.tgz#3aa0125bfe668a4672de58857d3ace27ecb76901" - integrity sha512-0Pm9hTQ3se5ll1XihRic3FDIku70C+iHUdT/W926rSgHV5QgXsYbKZN8MSC3tJtSkhuROzvsQjAaFENRXr+19A== - dependencies: - inherits "2.0.3" - -utila@^0.4.0, utila@~0.4: - version "0.4.0" - resolved "https://registry.yarnpkg.com/utila/-/utila-0.4.0.tgz#8a16a05d445657a3aea5eecc5b12a4fa5379772c" - integrity sha1-ihagXURWV6Oupe7MWxKk+lN5dyw= - -utils-merge@1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" - integrity sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM= - -uuid@^3.0.1, uuid@^3.3.2: - version "3.3.2" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.3.2.tgz#1b4af4955eb3077c501c23872fc6513811587131" - integrity sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA== - -validate-npm-package-license@^3.0.1: - version "3.0.4" - resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a" - integrity sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew== - dependencies: - spdx-correct "^3.0.0" - spdx-expression-parse "^3.0.0" - -value-equal@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/value-equal/-/value-equal-0.4.0.tgz#c5bdd2f54ee093c04839d71ce2e4758a6890abc7" - integrity sha512-x+cYdNnaA3CxvMaTX0INdTCN8m8aF2uY9BvEqmxuYp8bL09cs/kWVQPVGcA35fMktdOsP69IgU7wFj/61dJHEw== - -vary@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" - integrity sha1-IpnwLG3tMNSllhsLn3RSShj2NPw= - -vendors@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/vendors/-/vendors-1.0.2.tgz#7fcb5eef9f5623b156bcea89ec37d63676f21801" - integrity sha512-w/hry/368nO21AN9QljsaIhb9ZiZtZARoVH5f3CsFbawdLdayCgKRPup7CggujvySMxx0I91NOyxdVENohprLQ== - -verror@1.10.0: - version "1.10.0" - resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400" - integrity sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA= - dependencies: - assert-plus "^1.0.0" - core-util-is "1.0.2" - extsprintf "^1.2.0" - -vm-browserify@0.0.4: - version "0.0.4" - resolved "https://registry.yarnpkg.com/vm-browserify/-/vm-browserify-0.0.4.tgz#5d7ea45bbef9e4a6ff65f95438e0a87c357d5a73" - integrity sha1-XX6kW7755Kb/ZflUOOCofDV9WnM= - dependencies: - indexof "0.0.1" - -w3c-hr-time@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/w3c-hr-time/-/w3c-hr-time-1.0.1.tgz#82ac2bff63d950ea9e3189a58a65625fedf19045" - integrity sha1-gqwr/2PZUOqeMYmlimViX+3xkEU= - dependencies: - browser-process-hrtime "^0.1.2" - -w3c-xmlserializer@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/w3c-xmlserializer/-/w3c-xmlserializer-1.0.0.tgz#d23e20de595b892056f20a359fc2622908d48695" - integrity sha512-0et1+9uXYiIRAecx1D5Z1nk60+vimniGdIKl4XjeqkWi6acoHNlXMv1VR5jV+jF4ooeO08oWbYxeAJOcon1oMA== - dependencies: - domexception "^1.0.1" - webidl-conversions "^4.0.2" - xml-name-validator "^3.0.0" - -walker@~1.0.5: - version "1.0.7" - resolved "https://registry.yarnpkg.com/walker/-/walker-1.0.7.tgz#2f7f9b8fd10d677262b18a884e28d19618e028fb" - integrity sha1-L3+bj9ENZ3JisYqITijRlhjgKPs= - dependencies: - makeerror "1.0.x" - -warning@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/warning/-/warning-3.0.0.tgz#32e5377cb572de4ab04753bdf8821c01ed605b7c" - integrity sha1-MuU3fLVy3kqwR1O9+IIcAe1gW3w= - dependencies: - loose-envify "^1.0.0" - -warning@^4.0.1: - version "4.0.2" - resolved "https://registry.yarnpkg.com/warning/-/warning-4.0.2.tgz#aa6876480872116fa3e11d434b0d0d8d91e44607" - integrity sha512-wbTp09q/9C+jJn4KKJfJfoS6VleK/Dti0yqWSm6KMvJ4MRCXFQNapHuJXutJIrWV0Cf4AhTdeIe4qdKHR1+Hug== - dependencies: - loose-envify "^1.0.0" - -watch@~0.18.0: - version "0.18.0" - resolved "https://registry.yarnpkg.com/watch/-/watch-0.18.0.tgz#28095476c6df7c90c963138990c0a5423eb4b986" - integrity sha1-KAlUdsbffJDJYxOJkMClQj60uYY= - dependencies: - exec-sh "^0.2.0" - minimist "^1.2.0" - -watchpack@^1.5.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-1.6.0.tgz#4bc12c2ebe8aa277a71f1d3f14d685c7b446cd00" - integrity sha512-i6dHe3EyLjMmDlU1/bGQpEw25XSjkJULPuAVKCbNRefQVq48yXKUpwg538F7AZTf9kyr57zj++pQFltUa5H7yA== - dependencies: - chokidar "^2.0.2" - graceful-fs "^4.1.2" - neo-async "^2.5.0" - -wbuf@^1.1.0, wbuf@^1.7.2: - version "1.7.3" - resolved "https://registry.yarnpkg.com/wbuf/-/wbuf-1.7.3.tgz#c1d8d149316d3ea852848895cb6a0bfe887b87df" - integrity sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA== - dependencies: - minimalistic-assert "^1.0.0" - -webidl-conversions@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-4.0.2.tgz#a855980b1f0b6b359ba1d5d9fb39ae941faa63ad" - integrity sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg== - -webpack-dev-middleware@3.4.0: - version "3.4.0" - resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-3.4.0.tgz#1132fecc9026fd90f0ecedac5cbff75d1fb45890" - integrity sha512-Q9Iyc0X9dP9bAsYskAVJ/hmIZZQwf/3Sy4xCAZgL5cUkjZmUZLt4l5HpbST/Pdgjn3u6pE7u5OdGd1apgzRujA== - dependencies: - memory-fs "~0.4.1" - mime "^2.3.1" - range-parser "^1.0.3" - webpack-log "^2.0.0" - -webpack-dev-server@3.1.9: - version "3.1.9" - resolved "https://registry.yarnpkg.com/webpack-dev-server/-/webpack-dev-server-3.1.9.tgz#8b32167624d2faff40dcedc2cbce17ed1f34d3e0" - integrity sha512-fqPkuNalLuc/hRC2QMkVYJkgNmRvxZQo7ykA2e1XRg/tMJm3qY7ZaD6d89/Fqjxtj9bOrn5wZzLD2n84lJdvWg== - dependencies: - ansi-html "0.0.7" - bonjour "^3.5.0" - chokidar "^2.0.0" - compression "^1.5.2" - connect-history-api-fallback "^1.3.0" - debug "^3.1.0" - del "^3.0.0" - express "^4.16.2" - html-entities "^1.2.0" - http-proxy-middleware "~0.18.0" - import-local "^2.0.0" - internal-ip "^3.0.1" - ip "^1.1.5" - killable "^1.0.0" - loglevel "^1.4.1" - opn "^5.1.0" - portfinder "^1.0.9" - schema-utils "^1.0.0" - selfsigned "^1.9.1" - serve-index "^1.7.2" - sockjs "0.3.19" - sockjs-client "1.1.5" - spdy "^3.4.1" - strip-ansi "^3.0.0" - supports-color "^5.1.0" - webpack-dev-middleware "3.4.0" - webpack-log "^2.0.0" - yargs "12.0.2" - -webpack-log@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/webpack-log/-/webpack-log-2.0.0.tgz#5b7928e0637593f119d32f6227c1e0ac31e1b47f" - integrity sha512-cX8G2vR/85UYG59FgkoMamwHUIkSSlV3bBMRsbxVXVUk2j6NleCKjQ/WE9eYg9WY4w25O9w8wKP4rzNZFmUcUg== - dependencies: - ansi-colors "^3.0.0" - uuid "^3.3.2" - -webpack-manifest-plugin@2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/webpack-manifest-plugin/-/webpack-manifest-plugin-2.0.4.tgz#e4ca2999b09557716b8ba4475fb79fab5986f0cd" - integrity sha512-nejhOHexXDBKQOj/5v5IZSfCeTO3x1Dt1RZEcGfBSul891X/eLIcIVH31gwxPDdsi2Z8LKKFGpM4w9+oTBOSCg== - dependencies: - fs-extra "^7.0.0" - lodash ">=3.5 <5" - tapable "^1.0.0" - -webpack-sources@^1.1.0, webpack-sources@^1.2.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-1.3.0.tgz#2a28dcb9f1f45fe960d8f1493252b5ee6530fa85" - integrity sha512-OiVgSrbGu7NEnEvQJJgdSFPl2qWKkWq5lHMhgiToIiN9w34EBnjYzSYs+VbL5KoYiLNtFFa7BZIKxRED3I32pA== - dependencies: - source-list-map "^2.0.0" - source-map "~0.6.1" - -webpack@4.19.1: - version "4.19.1" - resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.19.1.tgz#096674bc3b573f8756c762754366e5b333d6576f" - integrity sha512-j7Q/5QqZRqIFXJvC0E59ipLV5Hf6lAnS3ezC3I4HMUybwEDikQBVad5d+IpPtmaQPQArvgUZLXIN6lWijHBn4g== - dependencies: - "@webassemblyjs/ast" "1.7.6" - "@webassemblyjs/helper-module-context" "1.7.6" - "@webassemblyjs/wasm-edit" "1.7.6" - "@webassemblyjs/wasm-parser" "1.7.6" - acorn "^5.6.2" - acorn-dynamic-import "^3.0.0" - ajv "^6.1.0" - ajv-keywords "^3.1.0" - chrome-trace-event "^1.0.0" - enhanced-resolve "^4.1.0" - eslint-scope "^4.0.0" - json-parse-better-errors "^1.0.2" - loader-runner "^2.3.0" - loader-utils "^1.1.0" - memory-fs "~0.4.1" - micromatch "^3.1.8" - mkdirp "~0.5.0" - neo-async "^2.5.0" - node-libs-browser "^2.0.0" - schema-utils "^0.4.4" - tapable "^1.1.0" - uglifyjs-webpack-plugin "^1.2.4" - watchpack "^1.5.0" - webpack-sources "^1.2.0" - -websocket-driver@>=0.5.1: - version "0.7.0" - resolved "https://registry.yarnpkg.com/websocket-driver/-/websocket-driver-0.7.0.tgz#0caf9d2d755d93aee049d4bdd0d3fe2cca2a24eb" - integrity sha1-DK+dLXVdk67gSdS90NP+LMoqJOs= - dependencies: - http-parser-js ">=0.4.0" - websocket-extensions ">=0.1.1" - -websocket-extensions@>=0.1.1: - version "0.1.3" - resolved "https://registry.yarnpkg.com/websocket-extensions/-/websocket-extensions-0.1.3.tgz#5d2ff22977003ec687a4b87073dfbbac146ccf29" - integrity sha512-nqHUnMXmBzT0w570r2JpJxfiSD1IzoI+HGVdd3aZ0yNi3ngvQ4jv1dtHt5VGxfI2yj5yqImPhOK4vmIh2xMbGg== - -whatwg-encoding@^1.0.1, whatwg-encoding@^1.0.3, whatwg-encoding@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz#5abacf777c32166a51d085d6b4f3e7d27113ddb0" - integrity sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw== - dependencies: - iconv-lite "0.4.24" - -whatwg-fetch@3.0.0, whatwg-fetch@>=0.10.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-3.0.0.tgz#fc804e458cc460009b1a2b966bc8817d2578aefb" - integrity sha512-9GSJUgz1D4MfyKU7KRqwOjXCXTqWdFNvEr7eUBYchQiVc744mqK/MzXPNR2WsPkmkOa4ywfg8C2n8h+13Bey1Q== - -whatwg-mimetype@^2.1.0, whatwg-mimetype@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/whatwg-mimetype/-/whatwg-mimetype-2.2.0.tgz#a3d58ef10b76009b042d03e25591ece89b88d171" - integrity sha512-5YSO1nMd5D1hY3WzAQV3PzZL83W3YeyR1yW9PcH26Weh1t+Vzh9B6XkDh7aXm83HBZ4nSMvkjvN2H2ySWIvBgw== - -whatwg-url@^6.4.1: - version "6.5.0" - resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-6.5.0.tgz#f2df02bff176fd65070df74ad5ccbb5a199965a8" - integrity sha512-rhRZRqx/TLJQWUpQ6bmrt2UV4f0HCQ463yQuONJqC6fO2VoEb1pTYddbe59SkYq87aoM5A3bdhMZiUiVws+fzQ== - dependencies: - lodash.sortby "^4.7.0" - tr46 "^1.0.1" - webidl-conversions "^4.0.2" - -whatwg-url@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-7.0.0.tgz#fde926fa54a599f3adf82dff25a9f7be02dc6edd" - integrity sha512-37GeVSIJ3kn1JgKyjiYNmSLP1yzbpb29jdmwBSgkD9h40/hyrR/OifpVUndji3tmwGgD8qpw7iQu3RSbCrBpsQ== - dependencies: - lodash.sortby "^4.7.0" - tr46 "^1.0.1" - webidl-conversions "^4.0.2" - -which-module@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" - integrity sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho= - -which@^1.2.12, which@^1.2.14, which@^1.2.9, which@^1.3.0: - version "1.3.1" - resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" - integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== - dependencies: - isexe "^2.0.0" - -wide-align@^1.1.0: - version "1.1.3" - resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.3.tgz#ae074e6bdc0c14a431e804e624549c633b000457" - integrity sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA== - dependencies: - string-width "^1.0.2 || 2" - -wordwrap@~0.0.2: - version "0.0.3" - resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.3.tgz#a3d5da6cd5c0bc0008d37234bbaf1bed63059107" - integrity sha1-o9XabNXAvAAI03I0u68b7WMFkQc= - -wordwrap@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb" - integrity sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus= - -workbox-background-sync@^3.6.3: - version "3.6.3" - resolved "https://registry.yarnpkg.com/workbox-background-sync/-/workbox-background-sync-3.6.3.tgz#6609a0fac9eda336a7c52e6aa227ba2ae532ad94" - integrity sha512-ypLo0B6dces4gSpaslmDg5wuoUWrHHVJfFWwl1udvSylLdXvnrfhFfriCS42SNEe5lsZtcNZF27W/SMzBlva7Q== - dependencies: - workbox-core "^3.6.3" - -workbox-broadcast-cache-update@^3.6.3: - version "3.6.3" - resolved "https://registry.yarnpkg.com/workbox-broadcast-cache-update/-/workbox-broadcast-cache-update-3.6.3.tgz#3f5dff22ada8c93e397fb38c1dc100606a7b92da" - integrity sha512-pJl4lbClQcvp0SyTiEw0zLSsVYE1RDlCPtpKnpMjxFtu8lCFTAEuVyzxp9w7GF4/b3P4h5nyQ+q7V9mIR7YzGg== - dependencies: - workbox-core "^3.6.3" - -workbox-build@^3.6.3: - version "3.6.3" - resolved "https://registry.yarnpkg.com/workbox-build/-/workbox-build-3.6.3.tgz#77110f9f52dc5d82fa6c1c384c6f5e2225adcbd8" - integrity sha512-w0clZ/pVjL8VXy6GfthefxpEXs0T8uiRuopZSFVQ8ovfbH6c6kUpEh6DcYwm/Y6dyWPiCucdyAZotgjz+nRz8g== - dependencies: - babel-runtime "^6.26.0" - common-tags "^1.4.0" - fs-extra "^4.0.2" - glob "^7.1.2" - joi "^11.1.1" - lodash.template "^4.4.0" - pretty-bytes "^4.0.2" - stringify-object "^3.2.2" - strip-comments "^1.0.2" - workbox-background-sync "^3.6.3" - workbox-broadcast-cache-update "^3.6.3" - workbox-cache-expiration "^3.6.3" - workbox-cacheable-response "^3.6.3" - workbox-core "^3.6.3" - workbox-google-analytics "^3.6.3" - workbox-navigation-preload "^3.6.3" - workbox-precaching "^3.6.3" - workbox-range-requests "^3.6.3" - workbox-routing "^3.6.3" - workbox-strategies "^3.6.3" - workbox-streams "^3.6.3" - workbox-sw "^3.6.3" - -workbox-cache-expiration@^3.6.3: - version "3.6.3" - resolved "https://registry.yarnpkg.com/workbox-cache-expiration/-/workbox-cache-expiration-3.6.3.tgz#4819697254a72098a13f94b594325a28a1e90372" - integrity sha512-+ECNph/6doYx89oopO/UolYdDmQtGUgo8KCgluwBF/RieyA1ZOFKfrSiNjztxOrGJoyBB7raTIOlEEwZ1LaHoA== - dependencies: - workbox-core "^3.6.3" - -workbox-cacheable-response@^3.6.3: - version "3.6.3" - resolved "https://registry.yarnpkg.com/workbox-cacheable-response/-/workbox-cacheable-response-3.6.3.tgz#869f1a68fce9063f6869ddbf7fa0a2e0a868b3aa" - integrity sha512-QpmbGA9SLcA7fklBLm06C4zFg577Dt8u3QgLM0eMnnbaVv3rhm4vbmDpBkyTqvgK/Ly8MBDQzlXDtUCswQwqqg== - dependencies: - workbox-core "^3.6.3" - -workbox-core@^3.6.3: - version "3.6.3" - resolved "https://registry.yarnpkg.com/workbox-core/-/workbox-core-3.6.3.tgz#69abba70a4f3f2a5c059295a6f3b7c62bd00e15c" - integrity sha512-cx9cx0nscPkIWs8Pt98HGrS9/aORuUcSkWjG25GqNWdvD/pSe7/5Oh3BKs0fC+rUshCiyLbxW54q0hA+GqZeSQ== - -workbox-google-analytics@^3.6.3: - version "3.6.3" - resolved "https://registry.yarnpkg.com/workbox-google-analytics/-/workbox-google-analytics-3.6.3.tgz#99df2a3d70d6e91961e18a6752bac12e91fbf727" - integrity sha512-RQBUo/6SXtIaQTRFj4RQZ9e1gAl7D8oS5S+Hi173Kk70/BgJjzPwXpC5A249Jv5YfkCOLMQCeF9A27BiD0b0ig== - dependencies: - workbox-background-sync "^3.6.3" - workbox-core "^3.6.3" - workbox-routing "^3.6.3" - workbox-strategies "^3.6.3" - -workbox-navigation-preload@^3.6.3: - version "3.6.3" - resolved "https://registry.yarnpkg.com/workbox-navigation-preload/-/workbox-navigation-preload-3.6.3.tgz#a2c34eb7c17e7485b795125091215f757b3c4964" - integrity sha512-dd26xTX16DUu0i+MhqZK/jQXgfIitu0yATM4jhRXEmpMqQ4MxEeNvl2CgjDMOHBnCVMax+CFZQWwxMx/X/PqCw== - dependencies: - workbox-core "^3.6.3" - -workbox-precaching@^3.6.3: - version "3.6.3" - resolved "https://registry.yarnpkg.com/workbox-precaching/-/workbox-precaching-3.6.3.tgz#5341515e9d5872c58ede026a31e19bafafa4e1c1" - integrity sha512-aBqT66BuMFviPTW6IpccZZHzpA8xzvZU2OM1AdhmSlYDXOJyb1+Z6blVD7z2Q8VNtV1UVwQIdImIX+hH3C3PIw== - dependencies: - workbox-core "^3.6.3" - -workbox-range-requests@^3.6.3: - version "3.6.3" - resolved "https://registry.yarnpkg.com/workbox-range-requests/-/workbox-range-requests-3.6.3.tgz#3cc21cba31f2dd8c43c52a196bcc8f6cdbcde803" - integrity sha512-R+yLWQy7D9aRF9yJ3QzwYnGFnGDhMUij4jVBUVtkl67oaVoP1ymZ81AfCmfZro2kpPRI+vmNMfxxW531cqdx8A== - dependencies: - workbox-core "^3.6.3" - -workbox-routing@^3.6.3: - version "3.6.3" - resolved "https://registry.yarnpkg.com/workbox-routing/-/workbox-routing-3.6.3.tgz#659cd8f9274986cfa98fda0d050de6422075acf7" - integrity sha512-bX20i95OKXXQovXhFOViOK63HYmXvsIwZXKWbSpVeKToxMrp0G/6LZXnhg82ijj/S5yhKNRf9LeGDzaqxzAwMQ== - dependencies: - workbox-core "^3.6.3" - -workbox-strategies@^3.6.3: - version "3.6.3" - resolved "https://registry.yarnpkg.com/workbox-strategies/-/workbox-strategies-3.6.3.tgz#11a0dc249a7bc23d3465ec1322d28fa6643d64a0" - integrity sha512-Pg5eulqeKet2y8j73Yw6xTgLdElktcWExGkzDVCGqfV9JCvnGuEpz5eVsCIK70+k4oJcBCin9qEg3g3CwEIH3g== - dependencies: - workbox-core "^3.6.3" - -workbox-streams@^3.6.3: - version "3.6.3" - resolved "https://registry.yarnpkg.com/workbox-streams/-/workbox-streams-3.6.3.tgz#beaea5d5b230239836cc327b07d471aa6101955a" - integrity sha512-rqDuS4duj+3aZUYI1LsrD2t9hHOjwPqnUIfrXSOxSVjVn83W2MisDF2Bj+dFUZv4GalL9xqErcFW++9gH+Z27w== - dependencies: - workbox-core "^3.6.3" - -workbox-sw@^3.6.3: - version "3.6.3" - resolved "https://registry.yarnpkg.com/workbox-sw/-/workbox-sw-3.6.3.tgz#278ea4c1831b92bbe2d420da8399176c4b2789ff" - integrity sha512-IQOUi+RLhvYCiv80RP23KBW/NTtIvzvjex28B8NW1jOm+iV4VIu3VXKXTA6er5/wjjuhmtB28qEAUqADLAyOSg== - -workbox-webpack-plugin@3.6.3: - version "3.6.3" - resolved "https://registry.yarnpkg.com/workbox-webpack-plugin/-/workbox-webpack-plugin-3.6.3.tgz#a807bb891b4e4e3c808df07e58f17de2d5ba6182" - integrity sha512-RwmKjc7HFHUFHoOlKoZUq9349u0QN3F8W5tZZU0vc1qsBZDINWXRiIBCAKvo/Njgay5sWz7z4I2adnyTo97qIQ== - dependencies: - babel-runtime "^6.26.0" - json-stable-stringify "^1.0.1" - workbox-build "^3.6.3" - -worker-farm@^1.5.2: - version "1.6.0" - resolved "https://registry.yarnpkg.com/worker-farm/-/worker-farm-1.6.0.tgz#aecc405976fab5a95526180846f0dba288f3a4a0" - integrity sha512-6w+3tHbM87WnSWnENBUvA2pxJPLhQUg5LKwUQHq3r+XPhIM+Gh2R5ycbwPCyuGbNg+lPgdcnQUhuC02kJCvffQ== - dependencies: - errno "~0.1.7" - -wrap-ansi@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-2.1.0.tgz#d8fc3d284dd05794fe84973caecdd1cf824fdd85" - integrity sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU= - dependencies: - string-width "^1.0.1" - strip-ansi "^3.0.1" - -wrappy@1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" - integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= - -write-file-atomic@^2.1.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-2.3.0.tgz#1ff61575c2e2a4e8e510d6fa4e243cce183999ab" - integrity sha512-xuPeK4OdjWqtfi59ylvVL0Yn35SF3zgcAcv7rBPFHVaEapaDr4GdGgm3j7ckTwH9wHL7fGmgfAnb0+THrHb8tA== - 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" - integrity sha1-X8A4KOJkzqP+kUVUdvejxWbLB1c= - dependencies: - mkdirp "^0.5.1" - -ws@^5.2.0: - version "5.2.2" - resolved "https://registry.yarnpkg.com/ws/-/ws-5.2.2.tgz#dffef14866b8e8dc9133582514d1befaf96e980f" - integrity sha512-jaHFD6PFv6UgoIVda6qZllptQsMlDEJkTQcybzzXDYM1XO9Y8em691FGMPmM46WGyLU4z9KMgQN+qrux/nhlHA== - dependencies: - async-limiter "~1.0.0" - -ws@^6.1.0: - version "6.1.0" - resolved "https://registry.yarnpkg.com/ws/-/ws-6.1.0.tgz#119a9dbf92c54e190ec18d10e871d55c95cf9373" - integrity sha512-H3dGVdGvW2H8bnYpIDc3u3LH8Wue3Qh+Zto6aXXFzvESkTVT6rAfKR6tR/+coaUvxs8yHtmNV0uioBF62ZGSTg== - dependencies: - async-limiter "~1.0.0" - -xml-name-validator@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-3.0.0.tgz#6ae73e06de4d8c6e47f9fb181f78d648ad457c6a" - integrity sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw== - -xmlchars@^1.3.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/xmlchars/-/xmlchars-1.3.1.tgz#1dda035f833dbb4f86a0c28eaa6ca769214793cf" - integrity sha512-tGkGJkN8XqCod7OT+EvGYK5Z4SfDQGD30zAa58OcnAa0RRWgzUEK72tkXhsX1FZd+rgnhRxFtmO+ihkp8LHSkw== - -xregexp@4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/xregexp/-/xregexp-4.0.0.tgz#e698189de49dd2a18cc5687b05e17c8e43943020" - integrity sha512-PHyM+sQouu7xspQQwELlGwwd05mXUFqwFYfqPO0cC7x4fxyHnnuetmQr6CjJiafIDoH4MogHb9dOoJzR/Y4rFg== - -xtend@^4.0.0, xtend@~4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af" - integrity sha1-pcbVMr5lbiPbgg77lDofBJmNY68= - -y18n@^3.2.1: - version "3.2.1" - resolved "https://registry.yarnpkg.com/y18n/-/y18n-3.2.1.tgz#6d15fba884c08679c0d77e88e7759e811e07fa41" - integrity sha1-bRX7qITAhnnA136I53WegR4H+kE= - -"y18n@^3.2.1 || ^4.0.0", y18n@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.0.tgz#95ef94f85ecc81d007c264e190a120f0a3c8566b" - integrity sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w== - -yallist@^2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" - integrity sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI= - -yallist@^3.0.0, yallist@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.0.2.tgz#8452b4bb7e83c7c188d8041c1a837c773d6d8bb9" - integrity sha1-hFK0u36Dx8GI2AQcGoN8dz1ti7k= - -yargs-parser@^10.1.0: - version "10.1.0" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-10.1.0.tgz#7202265b89f7e9e9f2e5765e0fe735a905edbaa8" - integrity sha512-VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ== - dependencies: - camelcase "^4.1.0" - -yargs-parser@^9.0.2: - version "9.0.2" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-9.0.2.tgz#9ccf6a43460fe4ed40a9bb68f48d43b8a68cc077" - integrity sha1-nM9qQ0YP5O1Aqbto9I1DuKaMwHc= - dependencies: - camelcase "^4.1.0" - -yargs@12.0.2: - version "12.0.2" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-12.0.2.tgz#fe58234369392af33ecbef53819171eff0f5aadc" - integrity sha512-e7SkEx6N6SIZ5c5H22RTZae61qtn3PYUE8JYbBFlK9sYmh3DMQ6E5ygtaG/2BW0JZi4WGgTR2IV5ChqlqrDGVQ== - dependencies: - cliui "^4.0.0" - decamelize "^2.0.0" - find-up "^3.0.0" - get-caller-file "^1.0.1" - os-locale "^3.0.0" - require-directory "^2.1.1" - require-main-filename "^1.0.1" - set-blocking "^2.0.0" - string-width "^2.0.0" - which-module "^2.0.0" - y18n "^3.2.1 || ^4.0.0" - yargs-parser "^10.1.0" - -yargs@^11.0.0: - version "11.1.0" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-11.1.0.tgz#90b869934ed6e871115ea2ff58b03f4724ed2d77" - integrity sha512-NwW69J42EsCSanF8kyn5upxvjp5ds+t3+udGBeTbFnERA+lF541DDpMawzo4z6W/QrzNM18D+BPMiOBibnFV5A== - dependencies: - cliui "^4.0.0" - decamelize "^1.1.1" - find-up "^2.1.0" - get-caller-file "^1.0.1" - os-locale "^2.0.0" - require-directory "^2.1.1" - require-main-filename "^1.0.1" - set-blocking "^2.0.0" - string-width "^2.0.0" - which-module "^2.0.0" - y18n "^3.2.1" - yargs-parser "^9.0.2" + resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" + integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== From 931e9f51cc36e7bb02254bf56e38da75f07a8a4c Mon Sep 17 00:00:00 2001 From: Jakub Antolak Date: Sun, 18 Aug 2024 13:21:25 +0200 Subject: [PATCH 02/56] use shadcn/ui --- components.json | 17 + package.json | 13 +- postcss.config.js | 6 + src/App.tsx | 14 +- src/components/mode-toggle.tsx | 37 ++ src/components/theme-provider.tsx | 73 +++ src/components/ui/button.tsx | 56 ++ src/components/ui/dropdown-menu.tsx | 198 ++++++ src/index.css | 69 +++ src/lib/utils.ts | 6 + src/main.tsx | 1 + tailwind.config.js | 77 +++ tsconfig.app.json | 7 +- vite.config.ts | 10 +- yarn.lock | 929 +++++++++++++++++++++++++++- 15 files changed, 1496 insertions(+), 17 deletions(-) create mode 100644 components.json create mode 100644 postcss.config.js create mode 100644 src/components/mode-toggle.tsx create mode 100644 src/components/theme-provider.tsx create mode 100644 src/components/ui/button.tsx create mode 100644 src/components/ui/dropdown-menu.tsx create mode 100644 src/index.css create mode 100644 src/lib/utils.ts create mode 100644 tailwind.config.js diff --git a/components.json b/components.json new file mode 100644 index 0000000..1c6facd --- /dev/null +++ b/components.json @@ -0,0 +1,17 @@ +{ + "$schema": "https://ui.shadcn.com/schema.json", + "style": "default", + "rsc": false, + "tsx": true, + "tailwind": { + "config": "tailwind.config.js", + "css": "src/index.css", + "baseColor": "slate", + "cssVariables": true, + "prefix": "" + }, + "aliases": { + "components": "@/components", + "utils": "@/lib/utils" + } +} \ No newline at end of file diff --git a/package.json b/package.json index 94d7ca1..f1d6f7b 100644 --- a/package.json +++ b/package.json @@ -4,8 +4,15 @@ "private": true, "homepage": "https://afternoon2.github.io/svg-gradient-editor", "dependencies": { + "@radix-ui/react-dropdown-menu": "^2.1.1", + "@radix-ui/react-slot": "^1.1.0", + "class-variance-authority": "^0.7.0", + "clsx": "^2.1.1", + "lucide-react": "^0.428.0", "react": "^18.3.1", - "react-dom": "^18.3.1" + "react-dom": "^18.3.1", + "tailwind-merge": "^2.5.2", + "tailwindcss-animate": "^1.0.7" }, "scripts": { "dev": "vite", @@ -23,11 +30,15 @@ "not op_mini all" ], "devDependencies": { + "@types/node": "^22.4.0", "@types/react": "^18.3.3", "@types/react-dom": "^18.3.0", "@typescript-eslint/eslint-plugin": "^8.1.0", "@typescript-eslint/parser": "^8.1.0", "@vitejs/plugin-react": "^4.3.1", + "autoprefixer": "^10.4.20", + "postcss": "^8.4.41", + "tailwindcss": "^3.4.10", "typescript": "^5.5.4", "vite": "^5.4.1" } diff --git a/postcss.config.js b/postcss.config.js new file mode 100644 index 0000000..33ad091 --- /dev/null +++ b/postcss.config.js @@ -0,0 +1,6 @@ +module.exports = { + plugins: { + tailwindcss: {}, + autoprefixer: {}, + }, +} diff --git a/src/App.tsx b/src/App.tsx index 175711f..10b6a5e 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -1,5 +1,17 @@ +import { ThemeProvider } from "@/components/theme-provider"; +import { ModeToggle } from "./components/mode-toggle"; + function App() { - return <>Hello world; + return ( + +
+
+ +
+
+
+
+ ); } export default App; diff --git a/src/components/mode-toggle.tsx b/src/components/mode-toggle.tsx new file mode 100644 index 0000000..6490f27 --- /dev/null +++ b/src/components/mode-toggle.tsx @@ -0,0 +1,37 @@ +import { Moon, Sun } from "lucide-react"; + +import { Button } from "@/components/ui/button"; +import { + DropdownMenu, + DropdownMenuContent, + DropdownMenuItem, + DropdownMenuTrigger, +} from "@/components/ui/dropdown-menu"; +import { useTheme } from "@/components/theme-provider"; + +export function ModeToggle() { + const { setTheme } = useTheme(); + + return ( + + + + + + setTheme("light")}> + Light + + setTheme("dark")}> + Dark + + setTheme("system")}> + System + + + + ); +} diff --git a/src/components/theme-provider.tsx b/src/components/theme-provider.tsx new file mode 100644 index 0000000..7b9eeb2 --- /dev/null +++ b/src/components/theme-provider.tsx @@ -0,0 +1,73 @@ +import { createContext, useContext, useEffect, useState } from "react"; + +type Theme = "dark" | "light" | "system"; + +type ThemeProviderProps = { + children: React.ReactNode; + defaultTheme?: Theme; + storageKey?: string; +}; + +type ThemeProviderState = { + theme: Theme; + setTheme: (theme: Theme) => void; +}; + +const initialState: ThemeProviderState = { + theme: "system", + setTheme: () => null, +}; + +const ThemeProviderContext = createContext(initialState); + +export function ThemeProvider({ + children, + defaultTheme = "system", + storageKey = "vite-ui-theme", + ...props +}: ThemeProviderProps) { + const [theme, setTheme] = useState( + () => (localStorage.getItem(storageKey) as Theme) || defaultTheme + ); + + useEffect(() => { + const root = window.document.documentElement; + + root.classList.remove("light", "dark"); + + if (theme === "system") { + const systemTheme = window.matchMedia("(prefers-color-scheme: dark)") + .matches + ? "dark" + : "light"; + + root.classList.add(systemTheme); + return; + } + + root.classList.add(theme); + }, [theme]); + + const value = { + theme, + setTheme: (theme: Theme) => { + localStorage.setItem(storageKey, theme); + setTheme(theme); + }, + }; + + return ( + + {children} + + ); +} + +export const useTheme = () => { + const context = useContext(ThemeProviderContext); + + if (context === undefined) + throw new Error("useTheme must be used within a ThemeProvider"); + + return context; +}; diff --git a/src/components/ui/button.tsx b/src/components/ui/button.tsx new file mode 100644 index 0000000..de31d90 --- /dev/null +++ b/src/components/ui/button.tsx @@ -0,0 +1,56 @@ +import * as React from "react"; +import { Slot } from "@radix-ui/react-slot"; +import { cva, type VariantProps } from "class-variance-authority"; + +import { cn } from "@/lib/utils"; + +const buttonVariants = cva( + "inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50", + { + variants: { + variant: { + default: "bg-primary text-primary-foreground hover:bg-primary/90", + destructive: + "bg-destructive text-destructive-foreground hover:bg-destructive/90", + outline: + "border border-input bg-background hover:bg-accent hover:text-accent-foreground", + secondary: + "bg-secondary text-secondary-foreground hover:bg-secondary/80", + ghost: "hover:bg-accent hover:text-accent-foreground", + link: "text-primary underline-offset-4 hover:underline", + }, + size: { + default: "h-10 px-4 py-2", + sm: "h-9 rounded-md px-3", + lg: "h-11 rounded-md px-8", + icon: "h-10 w-10", + }, + }, + defaultVariants: { + variant: "default", + size: "default", + }, + } +); + +export interface ButtonProps + extends React.ButtonHTMLAttributes, + VariantProps { + asChild?: boolean; +} + +const Button = React.forwardRef( + ({ className, variant, size, asChild = false, ...props }, ref) => { + const Comp = asChild ? Slot : "button"; + return ( + + ); + } +); +Button.displayName = "Button"; + +export { Button, buttonVariants }; diff --git a/src/components/ui/dropdown-menu.tsx b/src/components/ui/dropdown-menu.tsx new file mode 100644 index 0000000..5c1e59d --- /dev/null +++ b/src/components/ui/dropdown-menu.tsx @@ -0,0 +1,198 @@ +import * as React from "react"; +import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu"; +import { Check, ChevronRight, Circle } from "lucide-react"; + +import { cn } from "@/lib/utils"; + +const DropdownMenu = DropdownMenuPrimitive.Root; + +const DropdownMenuTrigger = DropdownMenuPrimitive.Trigger; + +const DropdownMenuGroup = DropdownMenuPrimitive.Group; + +const DropdownMenuPortal = DropdownMenuPrimitive.Portal; + +const DropdownMenuSub = DropdownMenuPrimitive.Sub; + +const DropdownMenuRadioGroup = DropdownMenuPrimitive.RadioGroup; + +const DropdownMenuSubTrigger = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef & { + inset?: boolean; + } +>(({ className, inset, children, ...props }, ref) => ( + + {children} + + +)); +DropdownMenuSubTrigger.displayName = + DropdownMenuPrimitive.SubTrigger.displayName; + +const DropdownMenuSubContent = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef +>(({ className, ...props }, ref) => ( + +)); +DropdownMenuSubContent.displayName = + DropdownMenuPrimitive.SubContent.displayName; + +const DropdownMenuContent = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef +>(({ className, sideOffset = 4, ...props }, ref) => ( + + + +)); +DropdownMenuContent.displayName = DropdownMenuPrimitive.Content.displayName; + +const DropdownMenuItem = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef & { + inset?: boolean; + } +>(({ className, inset, ...props }, ref) => ( + +)); +DropdownMenuItem.displayName = DropdownMenuPrimitive.Item.displayName; + +const DropdownMenuCheckboxItem = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef +>(({ className, children, checked, ...props }, ref) => ( + + + + + + + {children} + +)); +DropdownMenuCheckboxItem.displayName = + DropdownMenuPrimitive.CheckboxItem.displayName; + +const DropdownMenuRadioItem = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef +>(({ className, children, ...props }, ref) => ( + + + + + + + {children} + +)); +DropdownMenuRadioItem.displayName = DropdownMenuPrimitive.RadioItem.displayName; + +const DropdownMenuLabel = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef & { + inset?: boolean; + } +>(({ className, inset, ...props }, ref) => ( + +)); +DropdownMenuLabel.displayName = DropdownMenuPrimitive.Label.displayName; + +const DropdownMenuSeparator = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef +>(({ className, ...props }, ref) => ( + +)); +DropdownMenuSeparator.displayName = DropdownMenuPrimitive.Separator.displayName; + +const DropdownMenuShortcut = ({ + className, + ...props +}: React.HTMLAttributes) => { + return ( + + ); +}; +DropdownMenuShortcut.displayName = "DropdownMenuShortcut"; + +export { + DropdownMenu, + DropdownMenuTrigger, + DropdownMenuContent, + DropdownMenuItem, + DropdownMenuCheckboxItem, + DropdownMenuRadioItem, + DropdownMenuLabel, + DropdownMenuSeparator, + DropdownMenuShortcut, + DropdownMenuGroup, + DropdownMenuPortal, + DropdownMenuSub, + DropdownMenuSubContent, + DropdownMenuSubTrigger, + DropdownMenuRadioGroup, +}; diff --git a/src/index.css b/src/index.css new file mode 100644 index 0000000..99a7b0c --- /dev/null +++ b/src/index.css @@ -0,0 +1,69 @@ +@tailwind base; +@tailwind components; +@tailwind utilities; + +@layer base { + :root { + --background: 0 0% 100%; + --foreground: 222.2 84% 4.9%; + --card: 0 0% 100%; + --card-foreground: 222.2 84% 4.9%; + --popover: 0 0% 100%; + --popover-foreground: 222.2 84% 4.9%; + --primary: 222.2 47.4% 11.2%; + --primary-foreground: 210 40% 98%; + --secondary: 210 40% 96.1%; + --secondary-foreground: 222.2 47.4% 11.2%; + --muted: 210 40% 96.1%; + --muted-foreground: 215.4 16.3% 46.9%; + --accent: 210 40% 96.1%; + --accent-foreground: 222.2 47.4% 11.2%; + --destructive: 0 84.2% 60.2%; + --destructive-foreground: 210 40% 98%; + --border: 214.3 31.8% 91.4%; + --input: 214.3 31.8% 91.4%; + --ring: 222.2 84% 4.9%; + --radius: 0.5rem; + --chart-1: 12 76% 61%; + --chart-2: 173 58% 39%; + --chart-3: 197 37% 24%; + --chart-4: 43 74% 66%; + --chart-5: 27 87% 67%; + } + + .dark { + --background: 222.2 84% 4.9%; + --foreground: 210 40% 98%; + --card: 222.2 84% 4.9%; + --card-foreground: 210 40% 98%; + --popover: 222.2 84% 4.9%; + --popover-foreground: 210 40% 98%; + --primary: 210 40% 98%; + --primary-foreground: 222.2 47.4% 11.2%; + --secondary: 217.2 32.6% 17.5%; + --secondary-foreground: 210 40% 98%; + --muted: 217.2 32.6% 17.5%; + --muted-foreground: 215 20.2% 65.1%; + --accent: 217.2 32.6% 17.5%; + --accent-foreground: 210 40% 98%; + --destructive: 0 62.8% 30.6%; + --destructive-foreground: 210 40% 98%; + --border: 217.2 32.6% 17.5%; + --input: 217.2 32.6% 17.5%; + --ring: 212.7 26.8% 83.9%; + --chart-1: 220 70% 50%; + --chart-2: 160 60% 45%; + --chart-3: 30 80% 55%; + --chart-4: 280 65% 60%; + --chart-5: 340 75% 55%; + } +} + +@layer base { + * { + @apply border-border; + } + body { + @apply bg-background text-foreground; + } +} \ No newline at end of file diff --git a/src/lib/utils.ts b/src/lib/utils.ts new file mode 100644 index 0000000..365058c --- /dev/null +++ b/src/lib/utils.ts @@ -0,0 +1,6 @@ +import { type ClassValue, clsx } from "clsx"; +import { twMerge } from "tailwind-merge"; + +export function cn(...inputs: ClassValue[]) { + return twMerge(clsx(inputs)); +} diff --git a/src/main.tsx b/src/main.tsx index f46c379..9b67590 100644 --- a/src/main.tsx +++ b/src/main.tsx @@ -1,6 +1,7 @@ import React from "react"; import ReactDOM from "react-dom/client"; import App from "./App"; +import "./index.css"; ReactDOM.createRoot(document.getElementById("root")!).render( diff --git a/tailwind.config.js b/tailwind.config.js new file mode 100644 index 0000000..7cb7e37 --- /dev/null +++ b/tailwind.config.js @@ -0,0 +1,77 @@ +/** @type {import('tailwindcss').Config} */ +module.exports = { + darkMode: ["class"], + content: [ + './pages/**/*.{ts,tsx}', + './components/**/*.{ts,tsx}', + './app/**/*.{ts,tsx}', + './src/**/*.{ts,tsx}', + ], + prefix: "", + theme: { + container: { + center: true, + padding: "2rem", + screens: { + "2xl": "1400px", + }, + }, + extend: { + colors: { + border: "hsl(var(--border))", + input: "hsl(var(--input))", + ring: "hsl(var(--ring))", + background: "hsl(var(--background))", + foreground: "hsl(var(--foreground))", + primary: { + DEFAULT: "hsl(var(--primary))", + foreground: "hsl(var(--primary-foreground))", + }, + secondary: { + DEFAULT: "hsl(var(--secondary))", + foreground: "hsl(var(--secondary-foreground))", + }, + destructive: { + DEFAULT: "hsl(var(--destructive))", + foreground: "hsl(var(--destructive-foreground))", + }, + muted: { + DEFAULT: "hsl(var(--muted))", + foreground: "hsl(var(--muted-foreground))", + }, + accent: { + DEFAULT: "hsl(var(--accent))", + foreground: "hsl(var(--accent-foreground))", + }, + popover: { + DEFAULT: "hsl(var(--popover))", + foreground: "hsl(var(--popover-foreground))", + }, + card: { + DEFAULT: "hsl(var(--card))", + foreground: "hsl(var(--card-foreground))", + }, + }, + borderRadius: { + lg: "var(--radius)", + md: "calc(var(--radius) - 2px)", + sm: "calc(var(--radius) - 4px)", + }, + keyframes: { + "accordion-down": { + from: { height: "0" }, + to: { height: "var(--radix-accordion-content-height)" }, + }, + "accordion-up": { + from: { height: "var(--radix-accordion-content-height)" }, + to: { height: "0" }, + }, + }, + animation: { + "accordion-down": "accordion-down 0.2s ease-out", + "accordion-up": "accordion-up 0.2s ease-out", + }, + }, + }, + plugins: [require("tailwindcss-animate")], +} \ No newline at end of file diff --git a/tsconfig.app.json b/tsconfig.app.json index a47e6aa..aabc740 100644 --- a/tsconfig.app.json +++ b/tsconfig.app.json @@ -19,7 +19,12 @@ "strict": true, "noUnusedLocals": true, "noUnusedParameters": true, - "noFallthroughCasesInSwitch": true + "noFallthroughCasesInSwitch": true, + + "baseUrl": ".", + "paths": { + "@/*": ["./src/*"] + } }, "include": ["src"] } diff --git a/vite.config.ts b/vite.config.ts index fb45313..cf45b55 100644 --- a/vite.config.ts +++ b/vite.config.ts @@ -1,10 +1,12 @@ -import { defineConfig } from "vite"; +import path from "path"; import react from "@vitejs/plugin-react"; +import { defineConfig } from "vite"; -// https://vitejs.dev/config/ export default defineConfig({ plugins: [react()], - server: { - port: 4000, + resolve: { + alias: { + "@": path.resolve(__dirname, "./src"), + }, }, }); diff --git a/yarn.lock b/yarn.lock index b4249d9..ba3ef79 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2,6 +2,11 @@ # yarn lockfile v1 +"@alloc/quick-lru@^5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@alloc/quick-lru/-/quick-lru-5.2.0.tgz#7bf68b20c0a350f936915fcae06f58e32007ce30" + integrity sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw== + "@ampproject/remapping@^2.2.0": version "2.3.0" resolved "https://registry.yarnpkg.com/@ampproject/remapping/-/remapping-2.3.0.tgz#ed441b6fa600072520ce18b43d2c8cc8caecc7f4" @@ -308,7 +313,46 @@ resolved "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.11.0.tgz#b0ffd0312b4a3fd2d6f77237e7248a5ad3a680ae" integrity sha512-G/M/tIiMrTAxEWRfLfQJMmGNX28IxBg4PBz8XqQhqUHLFI6TL2htpIB1iQCj144V5ee/JaKyT9/WZ0MGZWfA7A== -"@jridgewell/gen-mapping@^0.3.5": +"@floating-ui/core@^1.6.0": + version "1.6.7" + resolved "https://registry.yarnpkg.com/@floating-ui/core/-/core-1.6.7.tgz#7602367795a390ff0662efd1c7ae8ca74e75fb12" + integrity sha512-yDzVT/Lm101nQ5TCVeK65LtdN7Tj4Qpr9RTXJ2vPFLqtLxwOrpoxAHAJI8J3yYWUc40J0BDBheaitK5SJmno2g== + dependencies: + "@floating-ui/utils" "^0.2.7" + +"@floating-ui/dom@^1.0.0": + version "1.6.10" + resolved "https://registry.yarnpkg.com/@floating-ui/dom/-/dom-1.6.10.tgz#b74c32f34a50336c86dcf1f1c845cf3a39e26d6f" + integrity sha512-fskgCFv8J8OamCmyun8MfjB1Olfn+uZKjOKZ0vhYF3gRmEUXcGOjxWL8bBr7i4kIuPZ2KD2S3EUIOxnjC8kl2A== + dependencies: + "@floating-ui/core" "^1.6.0" + "@floating-ui/utils" "^0.2.7" + +"@floating-ui/react-dom@^2.0.0": + version "2.1.1" + resolved "https://registry.yarnpkg.com/@floating-ui/react-dom/-/react-dom-2.1.1.tgz#cca58b6b04fc92b4c39288252e285e0422291fb0" + integrity sha512-4h84MJt3CHrtG18mGsXuLCHMrug49d7DFkU0RMIyshRveBeyV2hmV/pDaF2Uxtu8kgq5r46llp5E5FQiR0K2Yg== + dependencies: + "@floating-ui/dom" "^1.0.0" + +"@floating-ui/utils@^0.2.7": + version "0.2.7" + resolved "https://registry.yarnpkg.com/@floating-ui/utils/-/utils-0.2.7.tgz#d0ece53ce99ab5a8e37ebdfe5e32452a2bfc073e" + integrity sha512-X8R8Oj771YRl/w+c1HqAC1szL8zWQRwFvgDwT129k9ACdBoud/+/rX9V0qiMl6LWUdP9voC2nDVZYPMQQsb6eA== + +"@isaacs/cliui@^8.0.2": + version "8.0.2" + resolved "https://registry.yarnpkg.com/@isaacs/cliui/-/cliui-8.0.2.tgz#b37667b7bc181c168782259bab42474fbf52b550" + integrity sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA== + dependencies: + string-width "^5.1.2" + string-width-cjs "npm:string-width@^4.2.0" + strip-ansi "^7.0.1" + strip-ansi-cjs "npm:strip-ansi@^6.0.1" + wrap-ansi "^8.1.0" + wrap-ansi-cjs "npm:wrap-ansi@^7.0.0" + +"@jridgewell/gen-mapping@^0.3.2", "@jridgewell/gen-mapping@^0.3.5": version "0.3.5" resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz#dcce6aff74bdf6dad1a95802b69b04a2fcb1fb36" integrity sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg== @@ -361,6 +405,221 @@ "@nodelib/fs.scandir" "2.1.5" fastq "^1.6.0" +"@pkgjs/parseargs@^0.11.0": + version "0.11.0" + resolved "https://registry.yarnpkg.com/@pkgjs/parseargs/-/parseargs-0.11.0.tgz#a77ea742fab25775145434eb1d2328cf5013ac33" + integrity sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg== + +"@radix-ui/primitive@1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@radix-ui/primitive/-/primitive-1.1.0.tgz#42ef83b3b56dccad5d703ae8c42919a68798bbe2" + integrity sha512-4Z8dn6Upk0qk4P74xBhZ6Hd/w0mPEzOOLxy4xiPXOXqjF7jZS0VAKk7/x/H6FyY2zCkYJqePf1G5KmkmNJ4RBA== + +"@radix-ui/react-arrow@1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@radix-ui/react-arrow/-/react-arrow-1.1.0.tgz#744f388182d360b86285217e43b6c63633f39e7a" + integrity sha512-FmlW1rCg7hBpEBwFbjHwCW6AmWLQM6g/v0Sn8XbP9NvmSZ2San1FpQeyPtufzOMSIx7Y4dzjlHoifhp+7NkZhw== + dependencies: + "@radix-ui/react-primitive" "2.0.0" + +"@radix-ui/react-collection@1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@radix-ui/react-collection/-/react-collection-1.1.0.tgz#f18af78e46454a2360d103c2251773028b7724ed" + integrity sha512-GZsZslMJEyo1VKm5L1ZJY8tGDxZNPAoUeQUIbKeJfoi7Q4kmig5AsgLMYYuyYbfjd8fBmFORAIwYAkXMnXZgZw== + dependencies: + "@radix-ui/react-compose-refs" "1.1.0" + "@radix-ui/react-context" "1.1.0" + "@radix-ui/react-primitive" "2.0.0" + "@radix-ui/react-slot" "1.1.0" + +"@radix-ui/react-compose-refs@1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@radix-ui/react-compose-refs/-/react-compose-refs-1.1.0.tgz#656432461fc8283d7b591dcf0d79152fae9ecc74" + integrity sha512-b4inOtiaOnYf9KWyO3jAeeCG6FeyfY6ldiEPanbUjWd+xIk5wZeHa8yVwmrJ2vderhu/BQvzCrJI0lHd+wIiqw== + +"@radix-ui/react-context@1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@radix-ui/react-context/-/react-context-1.1.0.tgz#6df8d983546cfd1999c8512f3a8ad85a6e7fcee8" + integrity sha512-OKrckBy+sMEgYM/sMmqmErVn0kZqrHPJze+Ql3DzYsDDp0hl0L62nx/2122/Bvps1qz645jlcu2tD9lrRSdf8A== + +"@radix-ui/react-direction@1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@radix-ui/react-direction/-/react-direction-1.1.0.tgz#a7d39855f4d077adc2a1922f9c353c5977a09cdc" + integrity sha512-BUuBvgThEiAXh2DWu93XsT+a3aWrGqolGlqqw5VU1kG7p/ZH2cuDlM1sRLNnY3QcBS69UIz2mcKhMxDsdewhjg== + +"@radix-ui/react-dismissable-layer@1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@radix-ui/react-dismissable-layer/-/react-dismissable-layer-1.1.0.tgz#2cd0a49a732372513733754e6032d3fb7988834e" + integrity sha512-/UovfmmXGptwGcBQawLzvn2jOfM0t4z3/uKffoBlj724+n3FvBbZ7M0aaBOmkp6pqFYpO4yx8tSVJjx3Fl2jig== + dependencies: + "@radix-ui/primitive" "1.1.0" + "@radix-ui/react-compose-refs" "1.1.0" + "@radix-ui/react-primitive" "2.0.0" + "@radix-ui/react-use-callback-ref" "1.1.0" + "@radix-ui/react-use-escape-keydown" "1.1.0" + +"@radix-ui/react-dropdown-menu@^2.1.1": + version "2.1.1" + resolved "https://registry.yarnpkg.com/@radix-ui/react-dropdown-menu/-/react-dropdown-menu-2.1.1.tgz#3dc578488688250dbbe109d9ff2ca28a9bca27ec" + integrity sha512-y8E+x9fBq9qvteD2Zwa4397pUVhYsh9iq44b5RD5qu1GMJWBCBuVg1hMyItbc6+zH00TxGRqd9Iot4wzf3OoBQ== + dependencies: + "@radix-ui/primitive" "1.1.0" + "@radix-ui/react-compose-refs" "1.1.0" + "@radix-ui/react-context" "1.1.0" + "@radix-ui/react-id" "1.1.0" + "@radix-ui/react-menu" "2.1.1" + "@radix-ui/react-primitive" "2.0.0" + "@radix-ui/react-use-controllable-state" "1.1.0" + +"@radix-ui/react-focus-guards@1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@radix-ui/react-focus-guards/-/react-focus-guards-1.1.0.tgz#8e9abb472a9a394f59a1b45f3dd26cfe3fc6da13" + integrity sha512-w6XZNUPVv6xCpZUqb/yN9DL6auvpGX3C/ee6Hdi16v2UUy25HV2Q5bcflsiDyT/g5RwbPQ/GIT1vLkeRb+ITBw== + +"@radix-ui/react-focus-scope@1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@radix-ui/react-focus-scope/-/react-focus-scope-1.1.0.tgz#ebe2891a298e0a33ad34daab2aad8dea31caf0b2" + integrity sha512-200UD8zylvEyL8Bx+z76RJnASR2gRMuxlgFCPAe/Q/679a/r0eK3MBVYMb7vZODZcffZBdob1EGnky78xmVvcA== + dependencies: + "@radix-ui/react-compose-refs" "1.1.0" + "@radix-ui/react-primitive" "2.0.0" + "@radix-ui/react-use-callback-ref" "1.1.0" + +"@radix-ui/react-id@1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@radix-ui/react-id/-/react-id-1.1.0.tgz#de47339656594ad722eb87f94a6b25f9cffae0ed" + integrity sha512-EJUrI8yYh7WOjNOqpoJaf1jlFIH2LvtgAl+YcFqNCa+4hj64ZXmPkAKOFs/ukjz3byN6bdb/AVUqHkI8/uWWMA== + dependencies: + "@radix-ui/react-use-layout-effect" "1.1.0" + +"@radix-ui/react-menu@2.1.1": + version "2.1.1" + resolved "https://registry.yarnpkg.com/@radix-ui/react-menu/-/react-menu-2.1.1.tgz#bd623ace0e1ae1ac78023a505fec0541d59fb346" + integrity sha512-oa3mXRRVjHi6DZu/ghuzdylyjaMXLymx83irM7hTxutQbD+7IhPKdMdRHD26Rm+kHRrWcrUkkRPv5pd47a2xFQ== + dependencies: + "@radix-ui/primitive" "1.1.0" + "@radix-ui/react-collection" "1.1.0" + "@radix-ui/react-compose-refs" "1.1.0" + "@radix-ui/react-context" "1.1.0" + "@radix-ui/react-direction" "1.1.0" + "@radix-ui/react-dismissable-layer" "1.1.0" + "@radix-ui/react-focus-guards" "1.1.0" + "@radix-ui/react-focus-scope" "1.1.0" + "@radix-ui/react-id" "1.1.0" + "@radix-ui/react-popper" "1.2.0" + "@radix-ui/react-portal" "1.1.1" + "@radix-ui/react-presence" "1.1.0" + "@radix-ui/react-primitive" "2.0.0" + "@radix-ui/react-roving-focus" "1.1.0" + "@radix-ui/react-slot" "1.1.0" + "@radix-ui/react-use-callback-ref" "1.1.0" + aria-hidden "^1.1.1" + react-remove-scroll "2.5.7" + +"@radix-ui/react-popper@1.2.0": + version "1.2.0" + resolved "https://registry.yarnpkg.com/@radix-ui/react-popper/-/react-popper-1.2.0.tgz#a3e500193d144fe2d8f5d5e60e393d64111f2a7a" + integrity sha512-ZnRMshKF43aBxVWPWvbj21+7TQCvhuULWJ4gNIKYpRlQt5xGRhLx66tMp8pya2UkGHTSlhpXwmjqltDYHhw7Vg== + dependencies: + "@floating-ui/react-dom" "^2.0.0" + "@radix-ui/react-arrow" "1.1.0" + "@radix-ui/react-compose-refs" "1.1.0" + "@radix-ui/react-context" "1.1.0" + "@radix-ui/react-primitive" "2.0.0" + "@radix-ui/react-use-callback-ref" "1.1.0" + "@radix-ui/react-use-layout-effect" "1.1.0" + "@radix-ui/react-use-rect" "1.1.0" + "@radix-ui/react-use-size" "1.1.0" + "@radix-ui/rect" "1.1.0" + +"@radix-ui/react-portal@1.1.1": + version "1.1.1" + resolved "https://registry.yarnpkg.com/@radix-ui/react-portal/-/react-portal-1.1.1.tgz#1957f1eb2e1aedfb4a5475bd6867d67b50b1d15f" + integrity sha512-A3UtLk85UtqhzFqtoC8Q0KvR2GbXF3mtPgACSazajqq6A41mEQgo53iPzY4i6BwDxlIFqWIhiQ2G729n+2aw/g== + dependencies: + "@radix-ui/react-primitive" "2.0.0" + "@radix-ui/react-use-layout-effect" "1.1.0" + +"@radix-ui/react-presence@1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@radix-ui/react-presence/-/react-presence-1.1.0.tgz#227d84d20ca6bfe7da97104b1a8b48a833bfb478" + integrity sha512-Gq6wuRN/asf9H/E/VzdKoUtT8GC9PQc9z40/vEr0VCJ4u5XvvhWIrSsCB6vD2/cH7ugTdSfYq9fLJCcM00acrQ== + dependencies: + "@radix-ui/react-compose-refs" "1.1.0" + "@radix-ui/react-use-layout-effect" "1.1.0" + +"@radix-ui/react-primitive@2.0.0": + version "2.0.0" + resolved "https://registry.yarnpkg.com/@radix-ui/react-primitive/-/react-primitive-2.0.0.tgz#fe05715faa9203a223ccc0be15dc44b9f9822884" + integrity sha512-ZSpFm0/uHa8zTvKBDjLFWLo8dkr4MBsiDLz0g3gMUwqgLHz9rTaRRGYDgvZPtBJgYCBKXkS9fzmoySgr8CO6Cw== + dependencies: + "@radix-ui/react-slot" "1.1.0" + +"@radix-ui/react-roving-focus@1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@radix-ui/react-roving-focus/-/react-roving-focus-1.1.0.tgz#b30c59daf7e714c748805bfe11c76f96caaac35e" + integrity sha512-EA6AMGeq9AEeQDeSH0aZgG198qkfHSbvWTf1HvoDmOB5bBG/qTxjYMWUKMnYiV6J/iP/J8MEFSuB2zRU2n7ODA== + dependencies: + "@radix-ui/primitive" "1.1.0" + "@radix-ui/react-collection" "1.1.0" + "@radix-ui/react-compose-refs" "1.1.0" + "@radix-ui/react-context" "1.1.0" + "@radix-ui/react-direction" "1.1.0" + "@radix-ui/react-id" "1.1.0" + "@radix-ui/react-primitive" "2.0.0" + "@radix-ui/react-use-callback-ref" "1.1.0" + "@radix-ui/react-use-controllable-state" "1.1.0" + +"@radix-ui/react-slot@1.1.0", "@radix-ui/react-slot@^1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@radix-ui/react-slot/-/react-slot-1.1.0.tgz#7c5e48c36ef5496d97b08f1357bb26ed7c714b84" + integrity sha512-FUCf5XMfmW4dtYl69pdS4DbxKy8nj4M7SafBgPllysxmdachynNflAdp/gCsnYWNDnge6tI9onzMp5ARYc1KNw== + dependencies: + "@radix-ui/react-compose-refs" "1.1.0" + +"@radix-ui/react-use-callback-ref@1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@radix-ui/react-use-callback-ref/-/react-use-callback-ref-1.1.0.tgz#bce938ca413675bc937944b0d01ef6f4a6dc5bf1" + integrity sha512-CasTfvsy+frcFkbXtSJ2Zu9JHpN8TYKxkgJGWbjiZhFivxaeW7rMeZt7QELGVLaYVfFMsKHjb7Ak0nMEe+2Vfw== + +"@radix-ui/react-use-controllable-state@1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@radix-ui/react-use-controllable-state/-/react-use-controllable-state-1.1.0.tgz#1321446857bb786917df54c0d4d084877aab04b0" + integrity sha512-MtfMVJiSr2NjzS0Aa90NPTnvTSg6C/JLCV7ma0W6+OMV78vd8OyRpID+Ng9LxzsPbLeuBnWBA1Nq30AtBIDChw== + dependencies: + "@radix-ui/react-use-callback-ref" "1.1.0" + +"@radix-ui/react-use-escape-keydown@1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@radix-ui/react-use-escape-keydown/-/react-use-escape-keydown-1.1.0.tgz#31a5b87c3b726504b74e05dac1edce7437b98754" + integrity sha512-L7vwWlR1kTTQ3oh7g1O0CBF3YCyyTj8NmhLR+phShpyA50HCfBFKVJTpshm9PzLiKmehsrQzTYTpX9HvmC9rhw== + dependencies: + "@radix-ui/react-use-callback-ref" "1.1.0" + +"@radix-ui/react-use-layout-effect@1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@radix-ui/react-use-layout-effect/-/react-use-layout-effect-1.1.0.tgz#3c2c8ce04827b26a39e442ff4888d9212268bd27" + integrity sha512-+FPE0rOdziWSrH9athwI1R0HDVbWlEhd+FR+aSDk4uWGmSJ9Z54sdZVDQPZAinJhJXwfT+qnj969mCsT2gfm5w== + +"@radix-ui/react-use-rect@1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@radix-ui/react-use-rect/-/react-use-rect-1.1.0.tgz#13b25b913bd3e3987cc9b073a1a164bb1cf47b88" + integrity sha512-0Fmkebhr6PiseyZlYAOtLS+nb7jLmpqTrJyv61Pe68MKYW6OWdRE2kI70TaYY27u7H0lajqM3hSMMLFq18Z7nQ== + dependencies: + "@radix-ui/rect" "1.1.0" + +"@radix-ui/react-use-size@1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@radix-ui/react-use-size/-/react-use-size-1.1.0.tgz#b4dba7fbd3882ee09e8d2a44a3eed3a7e555246b" + integrity sha512-XW3/vWuIXHa+2Uwcc2ABSfcCledmXhhQPlGbfcRXbiUQI5Icjcg19BGCZVKKInYbvUCut/ufbbLLPFC5cbb1hw== + dependencies: + "@radix-ui/react-use-layout-effect" "1.1.0" + +"@radix-ui/rect@1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@radix-ui/rect/-/rect-1.1.0.tgz#f817d1d3265ac5415dadc67edab30ae196696438" + integrity sha512-A9+lCBZoaMJlVKcRBz2YByCG+Cp2t6nAnMnNba+XiWxnj6r4JUFqfsgwocMBZU9LPtdxC6wB56ySYpc7LQIoJg== + "@rollup/rollup-android-arm-eabi@4.21.0": version "4.21.0" resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.21.0.tgz#d941173f82f9b041c61b0dc1a2a91dcd06e4b31e" @@ -479,6 +738,13 @@ resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.5.tgz#a6ce3e556e00fd9895dd872dd172ad0d4bd687f4" integrity sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw== +"@types/node@^22.4.0": + version "22.4.0" + resolved "https://registry.yarnpkg.com/@types/node/-/node-22.4.0.tgz#c295fe1d6f5f58916cc61dbef8cf65b5b9b71de9" + integrity sha512-49AbMDwYUz7EXxKU/r7mXOsxwFr4BYbvB7tWYxVuLdb2ibd30ijjXINSMAHiEEZk5PCRBmW1gUeisn2VMKt3cQ== + dependencies: + undici-types "~6.19.2" + "@types/prop-types@*": version "15.5.6" resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.5.6.tgz#9c03d3fed70a8d517c191b7734da2879b50ca26c" @@ -599,6 +865,16 @@ "@types/babel__core" "^7.20.5" react-refresh "^0.14.2" +ansi-regex@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" + integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== + +ansi-regex@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-6.0.1.tgz#3183e38fae9a65d7cb5e53945cd5897d0260a06a" + integrity sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA== + ansi-styles@^3.2.1: version "3.2.1" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" @@ -606,16 +882,70 @@ ansi-styles@^3.2.1: dependencies: color-convert "^1.9.0" +ansi-styles@^4.0.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937" + integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== + dependencies: + color-convert "^2.0.1" + +ansi-styles@^6.1.0: + version "6.2.1" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-6.2.1.tgz#0e62320cf99c21afff3b3012192546aacbfb05c5" + integrity sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug== + +any-promise@^1.0.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/any-promise/-/any-promise-1.3.0.tgz#abc6afeedcea52e809cdc0376aed3ce39635d17f" + integrity sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A== + +anymatch@~3.1.2: + version "3.1.3" + resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.3.tgz#790c58b19ba1720a84205b57c618d5ad8524973e" + integrity sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw== + dependencies: + normalize-path "^3.0.0" + picomatch "^2.0.4" + +arg@^5.0.2: + version "5.0.2" + resolved "https://registry.yarnpkg.com/arg/-/arg-5.0.2.tgz#c81433cc427c92c4dcf4865142dbca6f15acd59c" + integrity sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg== + +aria-hidden@^1.1.1: + version "1.2.4" + resolved "https://registry.yarnpkg.com/aria-hidden/-/aria-hidden-1.2.4.tgz#b78e383fdbc04d05762c78b4a25a501e736c4522" + integrity sha512-y+CcFFwelSXpLZk/7fMB2mUbGtX9lKycf1MWJ7CaTIERyitVlyQx6C+sxcROU2BAJ24OiZyK+8wj2i8AlBoS3A== + dependencies: + tslib "^2.0.0" + array-union@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d" integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw== +autoprefixer@^10.4.20: + version "10.4.20" + resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-10.4.20.tgz#5caec14d43976ef42e32dcb4bd62878e96be5b3b" + integrity sha512-XY25y5xSv/wEoqzDyXXME4AFfkZI0P23z6Fs3YgymDnKJkCGOnkL0iTxCa85UTqaSgfcqyf3UA6+c7wUvx/16g== + dependencies: + browserslist "^4.23.3" + caniuse-lite "^1.0.30001646" + fraction.js "^4.3.7" + normalize-range "^0.1.2" + picocolors "^1.0.1" + postcss-value-parser "^4.2.0" + balanced-match@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== +binary-extensions@^2.0.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.3.0.tgz#f6e14a97858d327252200242d4ccfe522c445522" + integrity sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw== + brace-expansion@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-2.0.1.tgz#1edc459e0f0c548486ecf9fc99f2221364b9a0ae" @@ -623,14 +953,14 @@ brace-expansion@^2.0.1: dependencies: balanced-match "^1.0.0" -braces@^3.0.3: +braces@^3.0.3, braces@~3.0.2: version "3.0.3" resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.3.tgz#490332f40919452272d55a8480adc0c441358789" integrity sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA== dependencies: fill-range "^7.1.1" -browserslist@^4.23.1: +browserslist@^4.23.1, browserslist@^4.23.3: version "4.23.3" resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.23.3.tgz#debb029d3c93ebc97ffbc8d9cbb03403e227c800" integrity sha512-btwCFJVjI4YWDNfau8RhZ+B1Q/VLoUITrm3RlP6y1tYGWIOa+InuYiRGXUBXo8nA1qKmHMyLB/iVQg5TT4eFoA== @@ -640,6 +970,11 @@ browserslist@^4.23.1: node-releases "^2.0.18" update-browserslist-db "^1.1.0" +camelcase-css@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/camelcase-css/-/camelcase-css-2.0.1.tgz#ee978f6947914cc30c6b44741b6ed1df7f043fd5" + integrity sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA== + caniuse-lite@^1.0.30001646: version "1.0.30001651" resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001651.tgz#52de59529e8b02b1aedcaaf5c05d9e23c0c28138" @@ -654,6 +989,38 @@ chalk@^2.4.2: escape-string-regexp "^1.0.5" supports-color "^5.3.0" +chokidar@^3.5.3: + version "3.6.0" + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.6.0.tgz#197c6cc669ef2a8dc5e7b4d97ee4e092c3eb0d5b" + integrity sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw== + dependencies: + anymatch "~3.1.2" + braces "~3.0.2" + glob-parent "~5.1.2" + is-binary-path "~2.1.0" + is-glob "~4.0.1" + normalize-path "~3.0.0" + readdirp "~3.6.0" + optionalDependencies: + fsevents "~2.3.2" + +class-variance-authority@^0.7.0: + version "0.7.0" + resolved "https://registry.yarnpkg.com/class-variance-authority/-/class-variance-authority-0.7.0.tgz#1c3134d634d80271b1837452b06d821915954522" + integrity sha512-jFI8IQw4hczaL4ALINxqLEXQbWcNjoSkloa4IaufXCJr6QawJyw7tuRysRsrE8w2p/4gGaxKIt/hX3qz/IbD1A== + dependencies: + clsx "2.0.0" + +clsx@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/clsx/-/clsx-2.0.0.tgz#12658f3fd98fafe62075595a5c30e43d18f3d00b" + integrity sha512-rQ1+kcj+ttHG0MKVGBUXwayCCF1oh39BF5COIpRzuCEv8Mwjv0XucrI2ExNTOn9IlLifGClWQcU9BrZORvtw6Q== + +clsx@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/clsx/-/clsx-2.1.1.tgz#eed397c9fd8bd882bfb18deab7102049a2f32999" + integrity sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA== + color-convert@^1.9.0: version "1.9.3" resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" @@ -661,16 +1028,47 @@ color-convert@^1.9.0: dependencies: color-name "1.1.3" +color-convert@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3" + integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== + dependencies: + color-name "~1.1.4" + color-name@1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw== +color-name@~1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" + integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== + +commander@^4.0.0: + version "4.1.1" + resolved "https://registry.yarnpkg.com/commander/-/commander-4.1.1.tgz#9fd602bd936294e9e9ef46a3f4d6964044b18068" + integrity sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA== + convert-source-map@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-2.0.0.tgz#4b560f649fc4e918dd0ab75cf4961e8bc882d82a" integrity sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg== +cross-spawn@^7.0.0: + version "7.0.3" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" + integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== + dependencies: + path-key "^3.1.0" + shebang-command "^2.0.0" + which "^2.0.1" + +cssesc@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-3.0.0.tgz#37741919903b868565e1c09ea747445cd18983ee" + integrity sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg== + csstype@^2.2.0: version "2.5.7" resolved "https://registry.yarnpkg.com/csstype/-/csstype-2.5.7.tgz#bf9235d5872141eccfb2d16d82993c6b149179ff" @@ -688,6 +1086,16 @@ debug@^4.1.0, debug@^4.3.1, debug@^4.3.4: dependencies: ms "2.1.2" +detect-node-es@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/detect-node-es/-/detect-node-es-1.1.0.tgz#163acdf643330caa0b4cd7c21e7ee7755d6fa493" + integrity sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ== + +didyoumean@^1.2.2: + version "1.2.2" + resolved "https://registry.yarnpkg.com/didyoumean/-/didyoumean-1.2.2.tgz#989346ffe9e839b4555ecf5666edea0d3e8ad037" + integrity sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw== + dir-glob@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f" @@ -695,11 +1103,31 @@ dir-glob@^3.0.1: dependencies: path-type "^4.0.0" +dlv@^1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/dlv/-/dlv-1.1.3.tgz#5c198a8a11453596e751494d49874bc7732f2e79" + integrity sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA== + +eastasianwidth@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/eastasianwidth/-/eastasianwidth-0.2.0.tgz#696ce2ec0aa0e6ea93a397ffcf24aa7840c827cb" + integrity sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA== + electron-to-chromium@^1.5.4: version "1.5.11" resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.5.11.tgz#258077f1077a1c72f2925cd5b326c470a7f5adef" integrity sha512-R1CccCDYqndR25CaXFd6hp/u9RaaMcftMkphmvuepXr5b1vfLkRml6aWVeBhXJ7rbevHkKEMJtz8XqPf7ffmew== +emoji-regex@^8.0.0: + version "8.0.0" + resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" + integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== + +emoji-regex@^9.2.2: + version "9.2.2" + resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-9.2.2.tgz#840c8803b0d8047f4ff0cf963176b32d4ef3ed72" + integrity sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg== + esbuild@^0.21.3: version "0.21.5" resolved "https://registry.yarnpkg.com/esbuild/-/esbuild-0.21.5.tgz#9ca301b120922959b766360d8ac830da0d02997d" @@ -744,7 +1172,7 @@ eslint-visitor-keys@^3.3.0, eslint-visitor-keys@^3.4.3: resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz#0cd72fe8550e3c2eae156a96a4dddcd1c8ac5800" integrity sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag== -fast-glob@^3.2.9: +fast-glob@^3.2.9, fast-glob@^3.3.0: version "3.3.2" resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.3.2.tgz#a904501e57cfdd2ffcded45e99a54fef55e46129" integrity sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow== @@ -769,23 +1197,65 @@ fill-range@^7.1.1: dependencies: to-regex-range "^5.0.1" +foreground-child@^3.1.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/foreground-child/-/foreground-child-3.3.0.tgz#0ac8644c06e431439f8561db8ecf29a7b5519c77" + integrity sha512-Ld2g8rrAyMYFXBhEqMz8ZAHBi4J4uS1i/CxGMDnjyFWddMXLVcDp051DZfu+t7+ab7Wv6SMqpWmyFIj5UbfFvg== + dependencies: + cross-spawn "^7.0.0" + signal-exit "^4.0.1" + +fraction.js@^4.3.7: + version "4.3.7" + resolved "https://registry.yarnpkg.com/fraction.js/-/fraction.js-4.3.7.tgz#06ca0085157e42fda7f9e726e79fefc4068840f7" + integrity sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew== + fsevents@~2.3.2, fsevents@~2.3.3: version "2.3.3" resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.3.tgz#cac6407785d03675a2a5e1a5305c697b347d90d6" integrity sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw== +function-bind@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.2.tgz#2c02d864d97f3ea6c8830c464cbd11ab6eab7a1c" + integrity sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA== + gensync@^1.0.0-beta.2: version "1.0.0-beta.2" resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.2.tgz#32a6ee76c3d7f52d46b2b1ae5d93fea8580a25e0" integrity sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg== -glob-parent@^5.1.2: +get-nonce@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/get-nonce/-/get-nonce-1.0.1.tgz#fdf3f0278073820d2ce9426c18f07481b1e0cdf3" + integrity sha512-FJhYRoDaiatfEkUK8HKlicmu/3SGFD51q3itKDGoSTysQJBnfOcxU5GxnhE1E6soB76MbT0MBtnKJuXyAx+96Q== + +glob-parent@^5.1.2, glob-parent@~5.1.2: version "5.1.2" resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== dependencies: is-glob "^4.0.1" +glob-parent@^6.0.2: + version "6.0.2" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-6.0.2.tgz#6d237d99083950c79290f24c7642a3de9a28f9e3" + integrity sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A== + dependencies: + is-glob "^4.0.3" + +glob@^10.3.10: + version "10.4.5" + resolved "https://registry.yarnpkg.com/glob/-/glob-10.4.5.tgz#f4d9f0b90ffdbab09c9d77f5f29b4262517b0956" + integrity sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg== + dependencies: + foreground-child "^3.1.0" + jackspeak "^3.1.2" + minimatch "^9.0.4" + minipass "^7.1.2" + package-json-from-dist "^1.0.0" + path-scurry "^1.11.1" + globals@^11.1.0: version "11.12.0" resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" @@ -813,17 +1283,50 @@ has-flag@^3.0.0: resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" integrity sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw== +hasown@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/hasown/-/hasown-2.0.2.tgz#003eaf91be7adc372e84ec59dc37252cedb80003" + integrity sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ== + dependencies: + function-bind "^1.1.2" + ignore@^5.2.0, ignore@^5.3.1: version "5.3.2" resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.3.2.tgz#3cd40e729f3643fd87cb04e50bf0eb722bc596f5" integrity sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g== +invariant@^2.2.4: + version "2.2.4" + resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.4.tgz#610f3c92c9359ce1db616e538008d23ff35158e6" + integrity sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA== + dependencies: + loose-envify "^1.0.0" + +is-binary-path@~2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09" + integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw== + dependencies: + binary-extensions "^2.0.0" + +is-core-module@^2.13.0: + version "2.15.0" + resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.15.0.tgz#71c72ec5442ace7e76b306e9d48db361f22699ea" + integrity sha512-Dd+Lb2/zvk9SKy1TGCt1wFJFo/MWBPMX5x7KcvLajWTGuomczdQX61PvY5yK6SVACwpoexWo81IfFyoKY2QnTA== + dependencies: + hasown "^2.0.2" + is-extglob@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ== -is-glob@^4.0.1, is-glob@^4.0.3: +is-fullwidth-code-point@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" + integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== + +is-glob@^4.0.1, is-glob@^4.0.3, is-glob@~4.0.1: version "4.0.3" resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084" integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg== @@ -835,6 +1338,25 @@ is-number@^7.0.0: resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== +isexe@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" + integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== + +jackspeak@^3.1.2: + version "3.4.3" + resolved "https://registry.yarnpkg.com/jackspeak/-/jackspeak-3.4.3.tgz#8833a9d89ab4acde6188942bd1c53b6390ed5a8a" + integrity sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw== + dependencies: + "@isaacs/cliui" "^8.0.2" + optionalDependencies: + "@pkgjs/parseargs" "^0.11.0" + +jiti@^1.21.0: + version "1.21.6" + resolved "https://registry.yarnpkg.com/jiti/-/jiti-1.21.6.tgz#6c7f7398dd4b3142767f9a168af2f317a428d268" + integrity sha512-2yTgeWTWzMWkHu6Jp9NKgePDaYHbntiwvYuuJLbbN9vl7DC9DvXKOB2BC3ZZ92D3cvV/aflH0osDfwpHepQ53w== + "js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" @@ -850,13 +1372,33 @@ json5@^2.2.3: resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== -loose-envify@^1.1.0: +lilconfig@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/lilconfig/-/lilconfig-2.1.0.tgz#78e23ac89ebb7e1bfbf25b18043de756548e7f52" + integrity sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ== + +lilconfig@^3.0.0: + version "3.1.2" + resolved "https://registry.yarnpkg.com/lilconfig/-/lilconfig-3.1.2.tgz#e4a7c3cb549e3a606c8dcc32e5ae1005e62c05cb" + integrity sha512-eop+wDAvpItUys0FWkHIKeC9ybYrTGbU41U5K7+bttZZeohvnY7M9dZ5kB21GNWiFT2q1OoPTvncPCgSOVO5ow== + +lines-and-columns@^1.1.6: + version "1.2.4" + resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz#eca284f75d2965079309dc0ad9255abb2ebc1632" + integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg== + +loose-envify@^1.0.0, loose-envify@^1.1.0: version "1.4.0" resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf" integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q== dependencies: js-tokens "^3.0.0 || ^4.0.0" +lru-cache@^10.2.0: + version "10.4.3" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-10.4.3.tgz#410fc8a17b70e598013df257c2446b7f3383f119" + integrity sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ== + lru-cache@^5.1.1: version "5.1.1" resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920" @@ -864,12 +1406,17 @@ lru-cache@^5.1.1: dependencies: yallist "^3.0.2" +lucide-react@^0.428.0: + version "0.428.0" + resolved "https://registry.yarnpkg.com/lucide-react/-/lucide-react-0.428.0.tgz#dfd96d682c74f78c2961040036d8c1265ccce039" + integrity sha512-rGrzslfEcgqwh+TLBC5qJ8wvVIXhLvAIXVFKNHndYyb1utSxxn9rXOC+1CNJLi6yNOooyPqIs6+3YCp6uSiEvg== + merge2@^1.3.0, merge2@^1.4.1: version "1.4.1" resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae" integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== -micromatch@^4.0.4: +micromatch@^4.0.4, micromatch@^4.0.5: version "4.0.7" resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.7.tgz#33e8190d9fe474a9895525f5618eee136d46c2e5" integrity sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q== @@ -884,11 +1431,25 @@ minimatch@^9.0.4: dependencies: brace-expansion "^2.0.1" +"minipass@^5.0.0 || ^6.0.2 || ^7.0.0", minipass@^7.1.2: + version "7.1.2" + resolved "https://registry.yarnpkg.com/minipass/-/minipass-7.1.2.tgz#93a9626ce5e5e66bd4db86849e7515e92340a707" + integrity sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw== + ms@2.1.2: version "2.1.2" resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== +mz@^2.7.0: + version "2.7.0" + resolved "https://registry.yarnpkg.com/mz/-/mz-2.7.0.tgz#95008057a56cafadc2bc63dde7f9ff6955948e32" + integrity sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q== + dependencies: + any-promise "^1.0.0" + object-assign "^4.0.1" + thenify-all "^1.0.0" + nanoid@^3.3.7: version "3.3.7" resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.7.tgz#d0c301a691bc8d54efa0a2226ccf3fe2fd656bd8" @@ -904,6 +1465,49 @@ node-releases@^2.0.18: resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.18.tgz#f010e8d35e2fe8d6b2944f03f70213ecedc4ca3f" integrity sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g== +normalize-path@^3.0.0, normalize-path@~3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" + integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== + +normalize-range@^0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/normalize-range/-/normalize-range-0.1.2.tgz#2d10c06bdfd312ea9777695a4d28439456b75942" + integrity sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA== + +object-assign@^4.0.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" + integrity sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg== + +object-hash@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/object-hash/-/object-hash-3.0.0.tgz#73f97f753e7baffc0e2cc9d6e079079744ac82e9" + integrity sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw== + +package-json-from-dist@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/package-json-from-dist/-/package-json-from-dist-1.0.0.tgz#e501cd3094b278495eb4258d4c9f6d5ac3019f00" + integrity sha512-dATvCeZN/8wQsGywez1mzHtTlP22H8OEfPrVMLNr4/eGa+ijtLn/6M5f0dY8UKNrC2O9UCU6SSoG3qRKnt7STw== + +path-key@^3.1.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" + integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== + +path-parse@^1.0.7: + version "1.0.7" + resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" + integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== + +path-scurry@^1.11.1: + version "1.11.1" + resolved "https://registry.yarnpkg.com/path-scurry/-/path-scurry-1.11.1.tgz#7960a668888594a0720b12a911d1a742ab9f11d2" + integrity sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA== + dependencies: + lru-cache "^10.2.0" + minipass "^5.0.0 || ^6.0.2 || ^7.0.0" + path-type@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" @@ -914,12 +1518,66 @@ picocolors@^1.0.0, picocolors@^1.0.1: resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.1.tgz#a8ad579b571952f0e5d25892de5445bcfe25aaa1" integrity sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew== -picomatch@^2.3.1: +picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.3.1: version "2.3.1" resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== -postcss@^8.4.41: +pify@^2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" + integrity sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog== + +pirates@^4.0.1: + version "4.0.6" + resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.6.tgz#3018ae32ecfcff6c29ba2267cbf21166ac1f36b9" + integrity sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg== + +postcss-import@^15.1.0: + version "15.1.0" + resolved "https://registry.yarnpkg.com/postcss-import/-/postcss-import-15.1.0.tgz#41c64ed8cc0e23735a9698b3249ffdbf704adc70" + integrity sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew== + dependencies: + postcss-value-parser "^4.0.0" + read-cache "^1.0.0" + resolve "^1.1.7" + +postcss-js@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/postcss-js/-/postcss-js-4.0.1.tgz#61598186f3703bab052f1c4f7d805f3991bee9d2" + integrity sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw== + dependencies: + camelcase-css "^2.0.1" + +postcss-load-config@^4.0.1: + version "4.0.2" + resolved "https://registry.yarnpkg.com/postcss-load-config/-/postcss-load-config-4.0.2.tgz#7159dcf626118d33e299f485d6afe4aff7c4a3e3" + integrity sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ== + dependencies: + lilconfig "^3.0.0" + yaml "^2.3.4" + +postcss-nested@^6.0.1: + version "6.2.0" + resolved "https://registry.yarnpkg.com/postcss-nested/-/postcss-nested-6.2.0.tgz#4c2d22ab5f20b9cb61e2c5c5915950784d068131" + integrity sha512-HQbt28KulC5AJzG+cZtj9kvKB93CFCdLvog1WFLf1D+xmMvPGlBstkpTEZfK5+AN9hfJocyBFCNiqyS48bpgzQ== + dependencies: + postcss-selector-parser "^6.1.1" + +postcss-selector-parser@^6.0.11, postcss-selector-parser@^6.1.1: + version "6.1.2" + resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz#27ecb41fb0e3b6ba7a1ec84fff347f734c7929de" + integrity sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg== + dependencies: + cssesc "^3.0.0" + util-deprecate "^1.0.2" + +postcss-value-parser@^4.0.0, postcss-value-parser@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz#723c09920836ba6d3e5af019f92bc0971c02e514" + integrity sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ== + +postcss@^8.4.23, postcss@^8.4.41: version "8.4.41" resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.41.tgz#d6104d3ba272d882fe18fc07d15dc2da62fa2681" integrity sha512-TesUflQ0WKZqAvg52PWL6kHgLKP6xB6heTOdoYM0Wt2UHyxNa4K25EZZMgKns3BH1RLVbZCREPpLY0rhnNoHVQ== @@ -946,6 +1604,34 @@ react-refresh@^0.14.2: resolved "https://registry.yarnpkg.com/react-refresh/-/react-refresh-0.14.2.tgz#3833da01ce32da470f1f936b9d477da5c7028bf9" integrity sha512-jCvmsr+1IUSMUyzOkRcvnVbX3ZYC6g9TDrDbFuFmRDq7PD4yaGbLKNQL6k2jnArV8hjYxh7hVhAZB6s9HDGpZA== +react-remove-scroll-bar@^2.3.4: + version "2.3.6" + resolved "https://registry.yarnpkg.com/react-remove-scroll-bar/-/react-remove-scroll-bar-2.3.6.tgz#3e585e9d163be84a010180b18721e851ac81a29c" + integrity sha512-DtSYaao4mBmX+HDo5YWYdBWQwYIQQshUV/dVxFxK+KM26Wjwp1gZ6rv6OC3oujI6Bfu6Xyg3TwK533AQutsn/g== + dependencies: + react-style-singleton "^2.2.1" + tslib "^2.0.0" + +react-remove-scroll@2.5.7: + version "2.5.7" + resolved "https://registry.yarnpkg.com/react-remove-scroll/-/react-remove-scroll-2.5.7.tgz#15a1fd038e8497f65a695bf26a4a57970cac1ccb" + integrity sha512-FnrTWO4L7/Bhhf3CYBNArEG/yROV0tKmTv7/3h9QCFvH6sndeFf1wPqOcbFVu5VAulS5dV1wGT3GZZ/1GawqiA== + dependencies: + react-remove-scroll-bar "^2.3.4" + react-style-singleton "^2.2.1" + tslib "^2.1.0" + use-callback-ref "^1.3.0" + use-sidecar "^1.1.2" + +react-style-singleton@^2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/react-style-singleton/-/react-style-singleton-2.2.1.tgz#f99e420492b2d8f34d38308ff660b60d0b1205b4" + integrity sha512-ZWj0fHEMyWkHzKYUr2Bs/4zU6XLmq9HsgBURm7g5pAVfyn49DgUiNgY2d4lXRlYSiCif9YBGpQleewkcqddc7g== + dependencies: + get-nonce "^1.0.0" + invariant "^2.2.4" + tslib "^2.0.0" + react@^18.3.1: version "18.3.1" resolved "https://registry.yarnpkg.com/react/-/react-18.3.1.tgz#49ab892009c53933625bd16b2533fc754cab2891" @@ -953,6 +1639,29 @@ react@^18.3.1: dependencies: loose-envify "^1.1.0" +read-cache@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/read-cache/-/read-cache-1.0.0.tgz#e664ef31161166c9751cdbe8dbcf86b5fb58f774" + integrity sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA== + dependencies: + pify "^2.3.0" + +readdirp@~3.6.0: + version "3.6.0" + resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.6.0.tgz#74a370bd857116e245b29cc97340cd431a02a6c7" + integrity sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA== + dependencies: + picomatch "^2.2.1" + +resolve@^1.1.7, resolve@^1.22.2: + version "1.22.8" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.8.tgz#b6c87a9f2aa06dfab52e3d70ac8cde321fa5a48d" + integrity sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw== + dependencies: + is-core-module "^2.13.0" + path-parse "^1.0.7" + supports-preserve-symlinks-flag "^1.0.0" + reusify@^1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76" @@ -1007,6 +1716,23 @@ semver@^7.6.0: resolved "https://registry.yarnpkg.com/semver/-/semver-7.6.3.tgz#980f7b5550bc175fb4dc09403085627f9eb33143" integrity sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A== +shebang-command@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" + integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA== + dependencies: + shebang-regex "^3.0.0" + +shebang-regex@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" + integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== + +signal-exit@^4.0.1: + version "4.1.0" + resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-4.1.0.tgz#952188c1cbd546070e2dd20d0f41c0ae0530cb04" + integrity sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw== + slash@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" @@ -1017,6 +1743,67 @@ source-map-js@^1.2.0: resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.2.0.tgz#16b809c162517b5b8c3e7dcd315a2a5c2612b2af" integrity sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg== +"string-width-cjs@npm:string-width@^4.2.0": + version "4.2.3" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" + integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== + dependencies: + emoji-regex "^8.0.0" + is-fullwidth-code-point "^3.0.0" + strip-ansi "^6.0.1" + +string-width@^4.1.0: + version "4.2.3" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" + integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== + dependencies: + emoji-regex "^8.0.0" + is-fullwidth-code-point "^3.0.0" + strip-ansi "^6.0.1" + +string-width@^5.0.1, string-width@^5.1.2: + version "5.1.2" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-5.1.2.tgz#14f8daec6d81e7221d2a357e668cab73bdbca794" + integrity sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA== + dependencies: + eastasianwidth "^0.2.0" + emoji-regex "^9.2.2" + strip-ansi "^7.0.1" + +"strip-ansi-cjs@npm:strip-ansi@^6.0.1": + version "6.0.1" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" + integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== + dependencies: + ansi-regex "^5.0.1" + +strip-ansi@^6.0.0, strip-ansi@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" + integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== + dependencies: + ansi-regex "^5.0.1" + +strip-ansi@^7.0.1: + version "7.1.0" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-7.1.0.tgz#d5b6568ca689d8561370b0707685d22434faff45" + integrity sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ== + dependencies: + ansi-regex "^6.0.1" + +sucrase@^3.32.0: + version "3.35.0" + resolved "https://registry.yarnpkg.com/sucrase/-/sucrase-3.35.0.tgz#57f17a3d7e19b36d8995f06679d121be914ae263" + integrity sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA== + dependencies: + "@jridgewell/gen-mapping" "^0.3.2" + commander "^4.0.0" + glob "^10.3.10" + lines-and-columns "^1.1.6" + mz "^2.7.0" + pirates "^4.0.1" + ts-interface-checker "^0.1.9" + supports-color@^5.3.0: version "5.5.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" @@ -1024,6 +1811,63 @@ supports-color@^5.3.0: dependencies: has-flag "^3.0.0" +supports-preserve-symlinks-flag@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" + integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== + +tailwind-merge@^2.5.2: + version "2.5.2" + resolved "https://registry.yarnpkg.com/tailwind-merge/-/tailwind-merge-2.5.2.tgz#000f05a703058f9f9f3829c644235f81d4c08a1f" + integrity sha512-kjEBm+pvD+6eAwzJL2Bi+02/9LFLal1Gs61+QB7HvTfQQ0aXwC5LGT8PEt1gS0CWKktKe6ysPTAy3cBC5MeiIg== + +tailwindcss-animate@^1.0.7: + version "1.0.7" + resolved "https://registry.yarnpkg.com/tailwindcss-animate/-/tailwindcss-animate-1.0.7.tgz#318b692c4c42676cc9e67b19b78775742388bef4" + integrity sha512-bl6mpH3T7I3UFxuvDEXLxy/VuFxBk5bbzplh7tXI68mwMokNYd1t9qPBHlnyTwfa4JGC4zP516I1hYYtQ/vspA== + +tailwindcss@^3.4.10: + version "3.4.10" + resolved "https://registry.yarnpkg.com/tailwindcss/-/tailwindcss-3.4.10.tgz#70442d9aeb78758d1f911af29af8255ecdb8ffef" + integrity sha512-KWZkVPm7yJRhdu4SRSl9d4AK2wM3a50UsvgHZO7xY77NQr2V+fIrEuoDGQcbvswWvFGbS2f6e+jC/6WJm1Dl0w== + dependencies: + "@alloc/quick-lru" "^5.2.0" + arg "^5.0.2" + chokidar "^3.5.3" + didyoumean "^1.2.2" + dlv "^1.1.3" + fast-glob "^3.3.0" + glob-parent "^6.0.2" + is-glob "^4.0.3" + jiti "^1.21.0" + lilconfig "^2.1.0" + micromatch "^4.0.5" + normalize-path "^3.0.0" + object-hash "^3.0.0" + picocolors "^1.0.0" + postcss "^8.4.23" + postcss-import "^15.1.0" + postcss-js "^4.0.1" + postcss-load-config "^4.0.1" + postcss-nested "^6.0.1" + postcss-selector-parser "^6.0.11" + resolve "^1.22.2" + sucrase "^3.32.0" + +thenify-all@^1.0.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/thenify-all/-/thenify-all-1.6.0.tgz#1a1918d402d8fc3f98fbf234db0bcc8cc10e9726" + integrity sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA== + dependencies: + thenify ">= 3.1.0 < 4" + +"thenify@>= 3.1.0 < 4": + version "3.3.1" + resolved "https://registry.yarnpkg.com/thenify/-/thenify-3.3.1.tgz#8932e686a4066038a016dd9e2ca46add9838a95f" + integrity sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw== + dependencies: + any-promise "^1.0.0" + to-fast-properties@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" @@ -1041,11 +1885,26 @@ ts-api-utils@^1.3.0: resolved "https://registry.yarnpkg.com/ts-api-utils/-/ts-api-utils-1.3.0.tgz#4b490e27129f1e8e686b45cc4ab63714dc60eea1" integrity sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ== +ts-interface-checker@^0.1.9: + version "0.1.13" + resolved "https://registry.yarnpkg.com/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz#784fd3d679722bc103b1b4b8030bcddb5db2a699" + integrity sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA== + +tslib@^2.0.0, tslib@^2.1.0: + version "2.6.3" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.6.3.tgz#0438f810ad7a9edcde7a241c3d80db693c8cbfe0" + integrity sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ== + typescript@^5.5.4: version "5.5.4" resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.5.4.tgz#d9852d6c82bad2d2eda4fd74a5762a8f5909e9ba" integrity sha512-Mtq29sKDAEYP7aljRgtPOpTvOfbwRWlS6dPRzwjdE+C0R4brX/GUyhHSecbHMFLNBLcJIPt9nl9yG5TZ1weH+Q== +undici-types@~6.19.2: + version "6.19.6" + resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-6.19.6.tgz#e218c3df0987f4c0e0008ca00d6b6472d9b89b36" + integrity sha512-e/vggGopEfTKSvj4ihnOLTsqhrKRN3LeO6qSN/GxohhuRv8qH9bNQ4B8W7e/vFL+0XTnmHPB4/kegunZGA4Org== + update-browserslist-db@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.1.0.tgz#7ca61c0d8650766090728046e416a8cde682859e" @@ -1054,6 +1913,26 @@ update-browserslist-db@^1.1.0: escalade "^3.1.2" picocolors "^1.0.1" +use-callback-ref@^1.3.0: + version "1.3.2" + resolved "https://registry.yarnpkg.com/use-callback-ref/-/use-callback-ref-1.3.2.tgz#6134c7f6ff76e2be0b56c809b17a650c942b1693" + integrity sha512-elOQwe6Q8gqZgDA8mrh44qRTQqpIHDcZ3hXTLjBe1i4ph8XpNJnO+aQf3NaG+lriLopI4HMx9VjQLfPQ6vhnoA== + dependencies: + tslib "^2.0.0" + +use-sidecar@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/use-sidecar/-/use-sidecar-1.1.2.tgz#2f43126ba2d7d7e117aa5855e5d8f0276dfe73c2" + integrity sha512-epTbsLuzZ7lPClpz2TyryBfztm7m+28DlEv2ZCQ3MDr5ssiwyOwGH/e5F9CkfWjJ1t4clvI58yF822/GUkjjhw== + dependencies: + detect-node-es "^1.1.0" + tslib "^2.0.0" + +util-deprecate@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" + integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw== + vite@^5.4.1: version "5.4.1" resolved "https://registry.yarnpkg.com/vite/-/vite-5.4.1.tgz#2aa72370de824d23f53658affd807e4c9905b058" @@ -1065,7 +1944,37 @@ vite@^5.4.1: optionalDependencies: fsevents "~2.3.3" +which@^2.0.1: + version "2.0.2" + resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" + integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== + dependencies: + isexe "^2.0.0" + +"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" + integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== + dependencies: + ansi-styles "^4.0.0" + string-width "^4.1.0" + strip-ansi "^6.0.0" + +wrap-ansi@^8.1.0: + version "8.1.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-8.1.0.tgz#56dc22368ee570face1b49819975d9b9a5ead214" + integrity sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ== + dependencies: + ansi-styles "^6.1.0" + string-width "^5.0.1" + strip-ansi "^7.0.1" + yallist@^3.0.2: version "3.1.1" resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== + +yaml@^2.3.4: + version "2.5.0" + resolved "https://registry.yarnpkg.com/yaml/-/yaml-2.5.0.tgz#c6165a721cf8000e91c36490a41d7be25176cf5d" + integrity sha512-2wWLbGbYDiSqqIKoPjar3MPgB94ErzCtrNE1FdqGuaO0pi2JGjmE8aW8TDZwzU7vuxcGRdL/4gPQwQ7hD5AMSw== From 7c8df3c6c5cac5f85cd02736fc4b0580df5cadbb Mon Sep 17 00:00:00 2001 From: Jakub Antolak Date: Sun, 18 Aug 2024 17:32:44 +0200 Subject: [PATCH 03/56] wip: list state --- components.json | 3 +- package.json | 5 ++- src/App.tsx | 13 +++++--- src/state/list.tsx | 60 +++++++++++++++++++++++++++++++++ src/state/page.tsx | 25 ++++++++++++++ src/state/types.ts | 82 ++++++++++++++++++++++++++++++++++++++++++++++ yarn.lock | 15 +++++++++ 7 files changed, 196 insertions(+), 7 deletions(-) create mode 100644 src/state/list.tsx create mode 100644 src/state/page.tsx create mode 100644 src/state/types.ts diff --git a/components.json b/components.json index 1c6facd..738393b 100644 --- a/components.json +++ b/components.json @@ -12,6 +12,7 @@ }, "aliases": { "components": "@/components", - "utils": "@/lib/utils" + "utils": "@/lib/utils", + "state": "@/state" } } \ No newline at end of file diff --git a/package.json b/package.json index f1d6f7b..ecd50e9 100644 --- a/package.json +++ b/package.json @@ -6,13 +6,15 @@ "dependencies": { "@radix-ui/react-dropdown-menu": "^2.1.1", "@radix-ui/react-slot": "^1.1.0", + "chroma-js": "^3.0.0", "class-variance-authority": "^0.7.0", "clsx": "^2.1.1", "lucide-react": "^0.428.0", "react": "^18.3.1", "react-dom": "^18.3.1", "tailwind-merge": "^2.5.2", - "tailwindcss-animate": "^1.0.7" + "tailwindcss-animate": "^1.0.7", + "ts-pattern": "^5.3.1" }, "scripts": { "dev": "vite", @@ -30,6 +32,7 @@ "not op_mini all" ], "devDependencies": { + "@types/chroma-js": "^2.4.4", "@types/node": "^22.4.0", "@types/react": "^18.3.3", "@types/react-dom": "^18.3.0", diff --git a/src/App.tsx b/src/App.tsx index 10b6a5e..7961ac0 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -1,15 +1,18 @@ import { ThemeProvider } from "@/components/theme-provider"; import { ModeToggle } from "./components/mode-toggle"; +import ListContextProvider from "./state/list"; function App() { return ( -
-
- + +
+
+
-
-
+ ); } diff --git a/src/state/list.tsx b/src/state/list.tsx new file mode 100644 index 0000000..6aa16dd --- /dev/null +++ b/src/state/list.tsx @@ -0,0 +1,60 @@ +import { match, P } from "ts-pattern"; +import { BlendMode, Gradient } from "./types"; +import { + createContext, + Dispatch, + FC, + PropsWithChildren, + useContext, + useReducer, +} from "react"; + +export type State = { + globalBlendMode: BlendMode; + gradients: Gradient[]; +}; + +export type Action = + | { type: "ADD_GRADIENT"; payload: Gradient } + | { type: "DELETE_GRADIENT"; payload: { id: string } } + | { type: "SET_GLOBAL_BLEND_MODE"; payload: { blendMode: BlendMode } }; + +const initialState: State = { + globalBlendMode: "normal", + gradients: [], +}; + +const reducer = (state: State = initialState, action: Action): State => + match<[State, Action]>([state, action]) + .with([P._, { type: "SET_GLOBAL_BLEND_MODE" }], ([state, action]) => ({ + ...state, + globalBlendMode: action.payload.blendMode, + })) + .with([P._, { type: "ADD_GRADIENT" }], ([state, action]) => ({ + ...state, + gradients: [...state.gradients, action.payload], + })) + .with([P._, { type: "DELETE_GRADIENT" }], ([state, action]) => ({ + ...state, + gradients: state.gradients.filter( + (gradient) => gradient.id !== action.payload.id + ), + })) + .otherwise(() => state); + +const ListContext = createContext<{ state: State; dispatch: Dispatch }>( + { state: initialState, dispatch: (_: Action) => {} } +); + +const ListContextProvider: FC = ({ children }) => { + const [state, send] = useReducer(reducer, initialState); + return ( + + {children} + + ); +}; + +export const useListContext = () => useContext(ListContext); + +export default ListContextProvider; diff --git a/src/state/page.tsx b/src/state/page.tsx new file mode 100644 index 0000000..22471d1 --- /dev/null +++ b/src/state/page.tsx @@ -0,0 +1,25 @@ +import { match } from "ts-pattern"; + +export type PageState = + | { name: "idle" } + | { name: "save_dialog"; data: { presetName: string } } + | { name: "svg_dialog"; data: { presetName: string; svgString: string } }; + +export type PageAction = + | { type: "OPEN_SAVE_DIALOG" } + | { type: "CLOSE_SAVE_DIALOG" } + | { type: "OPEN_SVG_DIALOG" } + | { type: "CLOSE_SVG_DIALOG" }; + +export const reducer = (state: PageState, action: PageAction): PageState => + match<[PageState, PageAction]>([state, action]) + .with( + [{ name: "idle" }, { type: "OPEN_SAVE_DIALOG" }], + (): PageState => ({ + name: "save_dialog", + data: { + presetName: "", + }, + }) + ) + .otherwise(() => state); diff --git a/src/state/types.ts b/src/state/types.ts new file mode 100644 index 0000000..a53d137 --- /dev/null +++ b/src/state/types.ts @@ -0,0 +1,82 @@ +import { InterpolationMode } from "chroma-js"; + +export type LinearGradientAttributes = { + x1: number; + y1: number; + x2: number; + y2: number; +}; + +export type RadialGradientAttributes = { + cx: number; + cy: number; + r: number; + fx: number; + fy: number; + spreadMethod?: "pad" | "repeat" | "reflect"; +}; + +export type GradientInterpolationMode = "linear" | "bezier"; + +export type ChromaAttributes = { + colorSpace: InterpolationMode; + interpolation: GradientInterpolationMode; + lightnessCorrection: boolean; + samples: number; +}; + +export type InputColor = { + id: string; + color: number[]; +}; + +export type OutputColor = { + color: number[]; + offset: number; +}; + +type CommonGradientProperties = { + id: string; + blendMode: BlendModeObject; + chroma?: ChromaAttributes; + colors: InputColor[]; + output: OutputColor[]; +}; + +export type Gradient = ( + | { type: "linear"; attributes: LinearGradientAttributes } + | { + type: "radial"; + attributes: RadialGradientAttributes; + focalPoints: boolean; + } +) & + CommonGradientProperties; + +export type BlendModeObject = { + id: string; + mode: BlendMode; +}; + +export type Preset = { + name: string; + value: Gradient[]; +}; + +export type BlendMode = + | "normal" + | "multiply" + | "screen" + | "overlay" + | "darken" + | "lighten" + | "color-dodge" + | "color-burn" + | "hard-light" + | "soft-light" + | "difference" + | "exclusion" + | "hue" + | "saturation" + | "color" + | "luminosity"; diff --git a/yarn.lock b/yarn.lock index ba3ef79..7ab2afc 100644 --- a/yarn.lock +++ b/yarn.lock @@ -733,6 +733,11 @@ dependencies: "@babel/types" "^7.20.7" +"@types/chroma-js@^2.4.4": + version "2.4.4" + resolved "https://registry.yarnpkg.com/@types/chroma-js/-/chroma-js-2.4.4.tgz#254dddff54568ff8e5d0dcdb071871a458fdfd31" + integrity sha512-/DTccpHTaKomqussrn+ciEvfW4k6NAHzNzs/sts1TCqg333qNxOhy8TNIoQCmbGG3Tl8KdEhkGAssb1n3mTXiQ== + "@types/estree@1.0.5": version "1.0.5" resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.5.tgz#a6ce3e556e00fd9895dd872dd172ad0d4bd687f4" @@ -1004,6 +1009,11 @@ chokidar@^3.5.3: optionalDependencies: fsevents "~2.3.2" +chroma-js@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/chroma-js/-/chroma-js-3.0.0.tgz#c19b3b728352bb02b8906c60d7c7d223d3d9b721" + integrity sha512-ZFn4qxtZTvRJ7XatOLgaHGJYN10LoS6T0EMsu7IVayFG5+b6Yw8wCGQL5qLgo4B+wrRZ9niCrozOQ4a584bvaA== + class-variance-authority@^0.7.0: version "0.7.0" resolved "https://registry.yarnpkg.com/class-variance-authority/-/class-variance-authority-0.7.0.tgz#1c3134d634d80271b1837452b06d821915954522" @@ -1890,6 +1900,11 @@ ts-interface-checker@^0.1.9: resolved "https://registry.yarnpkg.com/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz#784fd3d679722bc103b1b4b8030bcddb5db2a699" integrity sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA== +ts-pattern@^5.3.1: + version "5.3.1" + resolved "https://registry.yarnpkg.com/ts-pattern/-/ts-pattern-5.3.1.tgz#ec098665841b1e6a7f7cb2c01bb270b79a2e2858" + integrity sha512-1RUMKa8jYQdNfmnK4jyzBK3/PS/tnjcZ1CW0v1vWDeYe5RBklc/nquw03MEoB66hVBm4BnlCfmOqDVxHyT1DpA== + tslib@^2.0.0, tslib@^2.1.0: version "2.6.3" resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.6.3.tgz#0438f810ad7a9edcde7a241c3d80db693c8cbfe0" From 015f91c7901c20076c76f9d9c79990e9d9ccba9e Mon Sep 17 00:00:00 2001 From: Jakub Antolak Date: Sun, 18 Aug 2024 17:54:12 +0200 Subject: [PATCH 04/56] wip: aside component --- package.json | 1 + src/App.tsx | 15 +++++++++------ src/components/aside.tsx | 24 ++++++++++++++++++++++++ src/components/container.tsx | 9 +++++++++ src/components/mode-toggle.tsx | 4 ++-- src/components/ui/separator.tsx | 29 +++++++++++++++++++++++++++++ src/components/ui/typography-h4.tsx | 14 ++++++++++++++ yarn.lock | 7 +++++++ 8 files changed, 95 insertions(+), 8 deletions(-) create mode 100644 src/components/aside.tsx create mode 100644 src/components/container.tsx create mode 100644 src/components/ui/separator.tsx create mode 100644 src/components/ui/typography-h4.tsx diff --git a/package.json b/package.json index ecd50e9..0b0530b 100644 --- a/package.json +++ b/package.json @@ -5,6 +5,7 @@ "homepage": "https://afternoon2.github.io/svg-gradient-editor", "dependencies": { "@radix-ui/react-dropdown-menu": "^2.1.1", + "@radix-ui/react-separator": "^1.1.0", "@radix-ui/react-slot": "^1.1.0", "chroma-js": "^3.0.0", "class-variance-authority": "^0.7.0", diff --git a/src/App.tsx b/src/App.tsx index 7961ac0..20141e8 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -1,17 +1,20 @@ import { ThemeProvider } from "@/components/theme-provider"; -import { ModeToggle } from "./components/mode-toggle"; import ListContextProvider from "./state/list"; +import Container from "@/components/container"; +import Aside from "@/components/aside"; +import { Separator } from "@/components/ui/separator"; function App() { return ( -
+
- -
+ +
); diff --git a/src/components/aside.tsx b/src/components/aside.tsx new file mode 100644 index 0000000..d9fdffa --- /dev/null +++ b/src/components/aside.tsx @@ -0,0 +1,24 @@ +import { SparklesIcon } from "lucide-react"; +import { FC, PropsWithChildren } from "react"; +import { TypographyH4 } from "./ui/typography-h4"; +import { ModeToggle } from "./mode-toggle"; + +const Header: FC = () => ( +
+
+ + SVG Gradient Editor +
+ +
+); + +const Aside: FC & { Header: FC } = ({ children }) => ( + +); + +Aside.Header = Header; + +export default Aside; diff --git a/src/components/container.tsx b/src/components/container.tsx new file mode 100644 index 0000000..32b2775 --- /dev/null +++ b/src/components/container.tsx @@ -0,0 +1,9 @@ +import { FC, PropsWithChildren } from "react"; + +const Container: FC = ({ children }) => ( +
+ {children} +
+); + +export default Container; diff --git a/src/components/mode-toggle.tsx b/src/components/mode-toggle.tsx index 6490f27..e0f9410 100644 --- a/src/components/mode-toggle.tsx +++ b/src/components/mode-toggle.tsx @@ -16,8 +16,8 @@ export function ModeToggle() { diff --git a/src/components/ui/separator.tsx b/src/components/ui/separator.tsx new file mode 100644 index 0000000..6d7f122 --- /dev/null +++ b/src/components/ui/separator.tsx @@ -0,0 +1,29 @@ +import * as React from "react" +import * as SeparatorPrimitive from "@radix-ui/react-separator" + +import { cn } from "@/lib/utils" + +const Separator = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef +>( + ( + { className, orientation = "horizontal", decorative = true, ...props }, + ref + ) => ( + + ) +) +Separator.displayName = SeparatorPrimitive.Root.displayName + +export { Separator } diff --git a/src/components/ui/typography-h4.tsx b/src/components/ui/typography-h4.tsx new file mode 100644 index 0000000..0987d67 --- /dev/null +++ b/src/components/ui/typography-h4.tsx @@ -0,0 +1,14 @@ +import { FC, PropsWithChildren } from "react"; + +export const TypographyH4: FC> = ({ + children, + className, +}) => ( +

+ {children} +

+); diff --git a/yarn.lock b/yarn.lock index 7ab2afc..e543756 100644 --- a/yarn.lock +++ b/yarn.lock @@ -570,6 +570,13 @@ "@radix-ui/react-use-callback-ref" "1.1.0" "@radix-ui/react-use-controllable-state" "1.1.0" +"@radix-ui/react-separator@^1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@radix-ui/react-separator/-/react-separator-1.1.0.tgz#ee0f4d86003b0e3ea7bc6ccab01ea0adee32663e" + integrity sha512-3uBAs+egzvJBDZAzvb/n4NxxOYpnspmWxO2u5NbZ8Y6FM/NdrGSF9bop3Cf6F6C71z1rTSn8KV0Fo2ZVd79lGA== + dependencies: + "@radix-ui/react-primitive" "2.0.0" + "@radix-ui/react-slot@1.1.0", "@radix-ui/react-slot@^1.1.0": version "1.1.0" resolved "https://registry.yarnpkg.com/@radix-ui/react-slot/-/react-slot-1.1.0.tgz#7c5e48c36ef5496d97b08f1357bb26ed7c714b84" From fa5ccd1e47111d7fda4c9b4c1e8335140c23c348 Mon Sep 17 00:00:00 2001 From: Jakub Antolak Date: Sun, 18 Aug 2024 21:22:44 +0200 Subject: [PATCH 05/56] add global blend mode and preset selects --- package.json | 4 + src/App.tsx | 8 ++ src/components/aside.tsx | 14 ++- src/components/blend-mode-select.tsx | 50 +++++++++ src/components/preset-select.tsx | 44 ++++++++ src/components/ui/label.tsx | 24 ++++ src/components/ui/select.tsx | 158 +++++++++++++++++++++++++++ src/lib/preset.ts | 12 ++ src/state/list.tsx | 30 ++++- src/state/types.ts | 38 ++++--- yarn.lock | 63 +++++++++++ 11 files changed, 424 insertions(+), 21 deletions(-) create mode 100644 src/components/blend-mode-select.tsx create mode 100644 src/components/preset-select.tsx create mode 100644 src/components/ui/label.tsx create mode 100644 src/components/ui/select.tsx create mode 100644 src/lib/preset.ts diff --git a/package.json b/package.json index 0b0530b..1c17c17 100644 --- a/package.json +++ b/package.json @@ -5,12 +5,15 @@ "homepage": "https://afternoon2.github.io/svg-gradient-editor", "dependencies": { "@radix-ui/react-dropdown-menu": "^2.1.1", + "@radix-ui/react-label": "^2.1.0", + "@radix-ui/react-select": "^2.1.1", "@radix-ui/react-separator": "^1.1.0", "@radix-ui/react-slot": "^1.1.0", "chroma-js": "^3.0.0", "class-variance-authority": "^0.7.0", "clsx": "^2.1.1", "lucide-react": "^0.428.0", + "nanoid": "^5.0.7", "react": "^18.3.1", "react-dom": "^18.3.1", "tailwind-merge": "^2.5.2", @@ -34,6 +37,7 @@ ], "devDependencies": { "@types/chroma-js": "^2.4.4", + "@types/nanoid": "^3.0.0", "@types/node": "^22.4.0", "@types/react": "^18.3.3", "@types/react-dom": "^18.3.0", diff --git a/src/App.tsx b/src/App.tsx index 20141e8..dcadcab 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -3,6 +3,8 @@ import ListContextProvider from "./state/list"; import Container from "@/components/container"; import Aside from "@/components/aside"; import { Separator } from "@/components/ui/separator"; +import PresetSelect from "./components/preset-select"; +import { GlobalBlendModeSelect } from "./components/blend-mode-select"; function App() { return ( @@ -13,6 +15,12 @@ function App() { diff --git a/src/components/aside.tsx b/src/components/aside.tsx index d9fdffa..c34d420 100644 --- a/src/components/aside.tsx +++ b/src/components/aside.tsx @@ -3,8 +3,10 @@ import { FC, PropsWithChildren } from "react"; import { TypographyH4 } from "./ui/typography-h4"; import { ModeToggle } from "./mode-toggle"; +const ROW_CLASSNAMES = "w-full py-2 flex items-center justify-between"; + const Header: FC = () => ( -
+
SVG Gradient Editor @@ -13,12 +15,20 @@ const Header: FC = () => (
); -const Aside: FC & { Header: FC } = ({ children }) => ( +const Row: FC = ({ children }) => ( +
{children}
+); + +const Aside: FC & { + Header: FC; + Row: FC; +} = ({ children }) => ( ); Aside.Header = Header; +Aside.Row = Row; export default Aside; diff --git a/src/components/blend-mode-select.tsx b/src/components/blend-mode-select.tsx new file mode 100644 index 0000000..0379434 --- /dev/null +++ b/src/components/blend-mode-select.tsx @@ -0,0 +1,50 @@ +import { BLEND_MODES, BlendMode } from "@/state/types"; +import { FC } from "react"; +import { + SelectTrigger, + SelectValue, + SelectContent, + Select, + SelectItem, +} from "@/components/ui/select"; +import { useListContext } from "@/state/list"; +import { Label } from "./ui/label"; + +const BlendModeSelect: FC<{ + blendMode: BlendMode; + onChange: (newBlendMode: BlendMode) => void; +}> = ({ blendMode, onChange }) => ( +
+ + +
+); + +export const GlobalBlendModeSelect: FC = () => { + const { state, dispatch } = useListContext(); + + return ( + { + dispatch({ type: "SET_GLOBAL_BLEND_MODE", payload: { blendMode } }); + }} + /> + ); +}; diff --git a/src/components/preset-select.tsx b/src/components/preset-select.tsx new file mode 100644 index 0000000..c33b316 --- /dev/null +++ b/src/components/preset-select.tsx @@ -0,0 +1,44 @@ +import { useListContext } from "@/state/list"; +import { + Select, + SelectContent, + SelectItem, + SelectTrigger, + SelectValue, +} from "@/components/ui/select"; +import { FC } from "react"; +import { Label } from "./ui/label"; + +const PresetSelect: FC = () => { + const { state, dispatch } = useListContext(); + + const hasPresets = state.presets.length > 0; + + return ( +
+ + +
+ ); +}; + +export default PresetSelect; diff --git a/src/components/ui/label.tsx b/src/components/ui/label.tsx new file mode 100644 index 0000000..683faa7 --- /dev/null +++ b/src/components/ui/label.tsx @@ -0,0 +1,24 @@ +import * as React from "react" +import * as LabelPrimitive from "@radix-ui/react-label" +import { cva, type VariantProps } from "class-variance-authority" + +import { cn } from "@/lib/utils" + +const labelVariants = cva( + "text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70" +) + +const Label = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef & + VariantProps +>(({ className, ...props }, ref) => ( + +)) +Label.displayName = LabelPrimitive.Root.displayName + +export { Label } diff --git a/src/components/ui/select.tsx b/src/components/ui/select.tsx new file mode 100644 index 0000000..fe56d4d --- /dev/null +++ b/src/components/ui/select.tsx @@ -0,0 +1,158 @@ +import * as React from "react" +import * as SelectPrimitive from "@radix-ui/react-select" +import { Check, ChevronDown, ChevronUp } from "lucide-react" + +import { cn } from "@/lib/utils" + +const Select = SelectPrimitive.Root + +const SelectGroup = SelectPrimitive.Group + +const SelectValue = SelectPrimitive.Value + +const SelectTrigger = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef +>(({ className, children, ...props }, ref) => ( + span]:line-clamp-1", + className + )} + {...props} + > + {children} + + + + +)) +SelectTrigger.displayName = SelectPrimitive.Trigger.displayName + +const SelectScrollUpButton = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef +>(({ className, ...props }, ref) => ( + + + +)) +SelectScrollUpButton.displayName = SelectPrimitive.ScrollUpButton.displayName + +const SelectScrollDownButton = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef +>(({ className, ...props }, ref) => ( + + + +)) +SelectScrollDownButton.displayName = + SelectPrimitive.ScrollDownButton.displayName + +const SelectContent = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef +>(({ className, children, position = "popper", ...props }, ref) => ( + + + + + {children} + + + + +)) +SelectContent.displayName = SelectPrimitive.Content.displayName + +const SelectLabel = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef +>(({ className, ...props }, ref) => ( + +)) +SelectLabel.displayName = SelectPrimitive.Label.displayName + +const SelectItem = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef +>(({ className, children, ...props }, ref) => ( + + + + + + + + {children} + +)) +SelectItem.displayName = SelectPrimitive.Item.displayName + +const SelectSeparator = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef +>(({ className, ...props }, ref) => ( + +)) +SelectSeparator.displayName = SelectPrimitive.Separator.displayName + +export { + Select, + SelectGroup, + SelectValue, + SelectTrigger, + SelectContent, + SelectLabel, + SelectItem, + SelectSeparator, + SelectScrollUpButton, + SelectScrollDownButton, +} diff --git a/src/lib/preset.ts b/src/lib/preset.ts new file mode 100644 index 0000000..809da4a --- /dev/null +++ b/src/lib/preset.ts @@ -0,0 +1,12 @@ +import { Preset } from "@/state/types"; +import { nanoid } from "nanoid"; + +export const loadPresets = (): Preset[] => + Object.entries(localStorage) + .filter(([key, _]) => key.includes("preset")) + .map(([_, item]): Preset => JSON.parse(item)); + +export const savePreset = (preset: Preset) => + localStorage.setItem(nanoid(16), JSON.stringify(preset)); + +export const deletePreset = (id: string) => localStorage.removeItem(id); diff --git a/src/state/list.tsx b/src/state/list.tsx index 6aa16dd..6347247 100644 --- a/src/state/list.tsx +++ b/src/state/list.tsx @@ -1,5 +1,5 @@ import { match, P } from "ts-pattern"; -import { BlendMode, Gradient } from "./types"; +import { BlendMode, Gradient, Preset } from "./types"; import { createContext, Dispatch, @@ -8,20 +8,28 @@ import { useContext, useReducer, } from "react"; +import { deletePreset, loadPresets, savePreset } from "@/lib/preset"; export type State = { globalBlendMode: BlendMode; gradients: Gradient[]; + presets: Preset[]; + selectedPreset: string | null; }; export type Action = | { type: "ADD_GRADIENT"; payload: Gradient } | { type: "DELETE_GRADIENT"; payload: { id: string } } - | { type: "SET_GLOBAL_BLEND_MODE"; payload: { blendMode: BlendMode } }; + | { type: "SET_GLOBAL_BLEND_MODE"; payload: { blendMode: BlendMode } } + | { type: "ADD_PRESET"; payload: Preset } + | { type: "DELETE_PRESET"; payload: { id: string } } + | { type: "SELECT_PRESET"; payload: { id: string | null } }; const initialState: State = { globalBlendMode: "normal", gradients: [], + presets: loadPresets(), + selectedPreset: null, }; const reducer = (state: State = initialState, action: Action): State => @@ -40,6 +48,24 @@ const reducer = (state: State = initialState, action: Action): State => (gradient) => gradient.id !== action.payload.id ), })) + .with([P._, { type: "ADD_PRESET" }], ([state, action]) => { + savePreset(action.payload); + return { + ...state, + presets: loadPresets(), + }; + }) + .with([P._, { type: "DELETE_PRESET" }], ([state, action]) => { + deletePreset(action.payload.id); + return { + ...state, + presets: loadPresets(), + }; + }) + .with([P._, { type: "SELECT_PRESET" }], ([state, action]) => ({ + ...state, + selectedPreset: action.payload.id, + })) .otherwise(() => state); const ListContext = createContext<{ state: State; dispatch: Dispatch }>( diff --git a/src/state/types.ts b/src/state/types.ts index a53d137..8f55531 100644 --- a/src/state/types.ts +++ b/src/state/types.ts @@ -59,24 +59,28 @@ export type BlendModeObject = { }; export type Preset = { + id: string; name: string; value: Gradient[]; }; -export type BlendMode = - | "normal" - | "multiply" - | "screen" - | "overlay" - | "darken" - | "lighten" - | "color-dodge" - | "color-burn" - | "hard-light" - | "soft-light" - | "difference" - | "exclusion" - | "hue" - | "saturation" - | "color" - | "luminosity"; +export const BLEND_MODES = [ + "normal", + "color", + "color-burn", + "color-dodge", + "darken", + "difference", + "exclusion", + "hard-light", + "hue", + "lighten", + "luminosity", + "multiply", + "overlay", + "saturation", + "screen", + "soft-light", +] as const; + +export type BlendMode = (typeof BLEND_MODES)[number]; diff --git a/yarn.lock b/yarn.lock index e543756..5d7445f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -410,6 +410,11 @@ resolved "https://registry.yarnpkg.com/@pkgjs/parseargs/-/parseargs-0.11.0.tgz#a77ea742fab25775145434eb1d2328cf5013ac33" integrity sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg== +"@radix-ui/number@1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@radix-ui/number/-/number-1.1.0.tgz#1e95610461a09cdf8bb05c152e76ca1278d5da46" + integrity sha512-V3gRzhVNU1ldS5XhAPTom1fOIo4ccrjjJgmE+LI2h/WaFpHmx0MQApT+KZHnx8abG6Avtfcz4WoEciMnpFT3HQ== + "@radix-ui/primitive@1.1.0": version "1.1.0" resolved "https://registry.yarnpkg.com/@radix-ui/primitive/-/primitive-1.1.0.tgz#42ef83b3b56dccad5d703ae8c42919a68798bbe2" @@ -492,6 +497,13 @@ dependencies: "@radix-ui/react-use-layout-effect" "1.1.0" +"@radix-ui/react-label@^2.1.0": + version "2.1.0" + resolved "https://registry.yarnpkg.com/@radix-ui/react-label/-/react-label-2.1.0.tgz#3aa2418d70bb242be37c51ff5e51a2adcbc372e3" + integrity sha512-peLblDlFw/ngk3UWq0VnYaOLy6agTZZ+MUO/WhVfm14vJGML+xH4FAl2XQGLqdefjNb7ApRg6Yn7U42ZhmYXdw== + dependencies: + "@radix-ui/react-primitive" "2.0.0" + "@radix-ui/react-menu@2.1.1": version "2.1.1" resolved "https://registry.yarnpkg.com/@radix-ui/react-menu/-/react-menu-2.1.1.tgz#bd623ace0e1ae1ac78023a505fec0541d59fb346" @@ -570,6 +582,33 @@ "@radix-ui/react-use-callback-ref" "1.1.0" "@radix-ui/react-use-controllable-state" "1.1.0" +"@radix-ui/react-select@^2.1.1": + version "2.1.1" + resolved "https://registry.yarnpkg.com/@radix-ui/react-select/-/react-select-2.1.1.tgz#df05cb0b29d3deaef83b505917c4042e0e418a9f" + integrity sha512-8iRDfyLtzxlprOo9IicnzvpsO1wNCkuwzzCM+Z5Rb5tNOpCdMvcc2AkzX0Fz+Tz9v6NJ5B/7EEgyZveo4FBRfQ== + dependencies: + "@radix-ui/number" "1.1.0" + "@radix-ui/primitive" "1.1.0" + "@radix-ui/react-collection" "1.1.0" + "@radix-ui/react-compose-refs" "1.1.0" + "@radix-ui/react-context" "1.1.0" + "@radix-ui/react-direction" "1.1.0" + "@radix-ui/react-dismissable-layer" "1.1.0" + "@radix-ui/react-focus-guards" "1.1.0" + "@radix-ui/react-focus-scope" "1.1.0" + "@radix-ui/react-id" "1.1.0" + "@radix-ui/react-popper" "1.2.0" + "@radix-ui/react-portal" "1.1.1" + "@radix-ui/react-primitive" "2.0.0" + "@radix-ui/react-slot" "1.1.0" + "@radix-ui/react-use-callback-ref" "1.1.0" + "@radix-ui/react-use-controllable-state" "1.1.0" + "@radix-ui/react-use-layout-effect" "1.1.0" + "@radix-ui/react-use-previous" "1.1.0" + "@radix-ui/react-visually-hidden" "1.1.0" + aria-hidden "^1.1.1" + react-remove-scroll "2.5.7" + "@radix-ui/react-separator@^1.1.0": version "1.1.0" resolved "https://registry.yarnpkg.com/@radix-ui/react-separator/-/react-separator-1.1.0.tgz#ee0f4d86003b0e3ea7bc6ccab01ea0adee32663e" @@ -608,6 +647,11 @@ resolved "https://registry.yarnpkg.com/@radix-ui/react-use-layout-effect/-/react-use-layout-effect-1.1.0.tgz#3c2c8ce04827b26a39e442ff4888d9212268bd27" integrity sha512-+FPE0rOdziWSrH9athwI1R0HDVbWlEhd+FR+aSDk4uWGmSJ9Z54sdZVDQPZAinJhJXwfT+qnj969mCsT2gfm5w== +"@radix-ui/react-use-previous@1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@radix-ui/react-use-previous/-/react-use-previous-1.1.0.tgz#d4dd37b05520f1d996a384eb469320c2ada8377c" + integrity sha512-Z/e78qg2YFnnXcW88A4JmTtm4ADckLno6F7OXotmkQfeuCVaKuYzqAATPhVzl3delXE7CxIV8shofPn3jPc5Og== + "@radix-ui/react-use-rect@1.1.0": version "1.1.0" resolved "https://registry.yarnpkg.com/@radix-ui/react-use-rect/-/react-use-rect-1.1.0.tgz#13b25b913bd3e3987cc9b073a1a164bb1cf47b88" @@ -622,6 +666,13 @@ dependencies: "@radix-ui/react-use-layout-effect" "1.1.0" +"@radix-ui/react-visually-hidden@1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@radix-ui/react-visually-hidden/-/react-visually-hidden-1.1.0.tgz#ad47a8572580f7034b3807c8e6740cd41038a5a2" + integrity sha512-N8MDZqtgCgG5S3aV60INAB475osJousYpZ4cTJ2cFbMpdHS5Y6loLTH8LPtkj2QN0x93J30HT/M3qJXM0+lyeQ== + dependencies: + "@radix-ui/react-primitive" "2.0.0" + "@radix-ui/rect@1.1.0": version "1.1.0" resolved "https://registry.yarnpkg.com/@radix-ui/rect/-/rect-1.1.0.tgz#f817d1d3265ac5415dadc67edab30ae196696438" @@ -750,6 +801,13 @@ resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.5.tgz#a6ce3e556e00fd9895dd872dd172ad0d4bd687f4" integrity sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw== +"@types/nanoid@^3.0.0": + version "3.0.0" + resolved "https://registry.yarnpkg.com/@types/nanoid/-/nanoid-3.0.0.tgz#c757b20f343f3a1dd76e80a9a431b6290fc20f35" + integrity sha512-UXitWSmXCwhDmAKe7D3hNQtQaHeHt5L8LO1CB8GF8jlYVzOv5cBWDNqiJ+oPEWrWei3i3dkZtHY/bUtd0R/uOQ== + dependencies: + nanoid "*" + "@types/node@^22.4.0": version "22.4.0" resolved "https://registry.yarnpkg.com/@types/node/-/node-22.4.0.tgz#c295fe1d6f5f58916cc61dbef8cf65b5b9b71de9" @@ -1467,6 +1525,11 @@ mz@^2.7.0: object-assign "^4.0.1" thenify-all "^1.0.0" +nanoid@*, nanoid@^5.0.7: + version "5.0.7" + resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-5.0.7.tgz#6452e8c5a816861fd9d2b898399f7e5fd6944cc6" + integrity sha512-oLxFY2gd2IqnjcYyOXD8XGCftpGtZP2AbHbOkthDkvRywH5ayNtPVy9YlOPcHckXzbLTCHpkb7FB+yuxKV13pQ== + nanoid@^3.3.7: version "3.3.7" resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.7.tgz#d0c301a691bc8d54efa0a2226ccf3fe2fd656bd8" From 98abb2aaecaeade246dc166f055ea524b286941c Mon Sep 17 00:00:00 2001 From: Jakub Antolak Date: Sun, 18 Aug 2024 21:50:20 +0200 Subject: [PATCH 06/56] add save and delete all buttons --- src/App.tsx | 11 +++++++- src/components/add-delete.tsx | 48 +++++++++++++++++++++++++++++++++++ src/components/aside.tsx | 2 +- src/lib/gradient.ts | 19 ++++++++++++++ src/state/list.tsx | 5 ++++ 5 files changed, 83 insertions(+), 2 deletions(-) create mode 100644 src/components/add-delete.tsx create mode 100644 src/lib/gradient.ts diff --git a/src/App.tsx b/src/App.tsx index dcadcab..a68f743 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -5,6 +5,7 @@ import Aside from "@/components/aside"; import { Separator } from "@/components/ui/separator"; import PresetSelect from "./components/preset-select"; import { GlobalBlendModeSelect } from "./components/blend-mode-select"; +import AddDelete from "./components/add-delete"; function App() { return ( @@ -14,13 +15,21 @@ function App() {
diff --git a/src/components/add-delete.tsx b/src/components/add-delete.tsx new file mode 100644 index 0000000..c3bf2bd --- /dev/null +++ b/src/components/add-delete.tsx @@ -0,0 +1,48 @@ +import { FC } from "react"; +import { Button } from "./ui/button"; +import { CircleAlert, Plus, Save } from "lucide-react"; +import { useListContext } from "@/state/list"; +import { createEmptyGradientObject } from "@/lib/gradient"; + +const AddDelete: FC = () => { + const { state, dispatch } = useListContext(); + + return ( +
+ + + +
+ ); +}; + +export default AddDelete; diff --git a/src/components/aside.tsx b/src/components/aside.tsx index c34d420..2a8bbd1 100644 --- a/src/components/aside.tsx +++ b/src/components/aside.tsx @@ -3,7 +3,7 @@ import { FC, PropsWithChildren } from "react"; import { TypographyH4 } from "./ui/typography-h4"; import { ModeToggle } from "./mode-toggle"; -const ROW_CLASSNAMES = "w-full py-2 flex items-center justify-between"; +const ROW_CLASSNAMES = "w-full pb-2 flex items-center justify-between"; const Header: FC = () => (
diff --git a/src/lib/gradient.ts b/src/lib/gradient.ts new file mode 100644 index 0000000..57f7708 --- /dev/null +++ b/src/lib/gradient.ts @@ -0,0 +1,19 @@ +import { Gradient } from "@/state/types"; +import { nanoid } from "nanoid"; + +export const createEmptyGradientObject = (): Gradient => ({ + id: nanoid(16), + type: "linear", + colors: [], + output: [], + attributes: { + x1: 0, + y1: 0, + x2: 100, + y2: 100, + }, + blendMode: { + id: nanoid(16), + mode: "normal", + }, +}); diff --git a/src/state/list.tsx b/src/state/list.tsx index 6347247..af0497b 100644 --- a/src/state/list.tsx +++ b/src/state/list.tsx @@ -20,6 +20,7 @@ export type State = { export type Action = | { type: "ADD_GRADIENT"; payload: Gradient } | { type: "DELETE_GRADIENT"; payload: { id: string } } + | { type: "DELETE_ALL_GRADIENTS" } | { type: "SET_GLOBAL_BLEND_MODE"; payload: { blendMode: BlendMode } } | { type: "ADD_PRESET"; payload: Preset } | { type: "DELETE_PRESET"; payload: { id: string } } @@ -48,6 +49,10 @@ const reducer = (state: State = initialState, action: Action): State => (gradient) => gradient.id !== action.payload.id ), })) + .with([P._, { type: "DELETE_ALL_GRADIENTS" }], ([state]) => ({ + ...state, + gradients: [], + })) .with([P._, { type: "ADD_PRESET" }], ([state, action]) => { savePreset(action.payload); return { From 8eb3f098ad541f7303259128e3d7158769548a67 Mon Sep 17 00:00:00 2001 From: Jakub Antolak Date: Sun, 25 Aug 2024 13:06:46 +0200 Subject: [PATCH 07/56] add gradients list --- package.json | 7 +- src/App.tsx | 27 +- .../app/color-list/color-picker.tsx | 39 ++ .../app/color-list/color-space-switch.tsx | 38 ++ src/components/app/color-list/color-value.tsx | 62 +++ .../app/color-list/colors-list-item.tsx | 91 +++++ src/components/app/color-list/index.tsx | 99 +++++ .../app/gradient-list/gradient-item.tsx | 31 ++ src/components/app/gradient-list/index.tsx | 19 + src/components/aside.tsx | 19 +- src/components/container.tsx | 2 +- src/components/settings-panel.tsx | 29 ++ src/components/ui/button.tsx | 2 +- src/components/ui/card.tsx | 79 ++++ src/components/ui/menubar.tsx | 234 ++++++++++++ src/components/ui/popover.tsx | 29 ++ src/components/ui/select.tsx | 46 +-- src/components/ui/tooltip.tsx | 28 ++ src/lib/gradient.ts | 13 +- src/state/list.tsx | 60 ++- src/state/types.ts | 7 +- yarn.lock | 356 ++++++++++++------ 22 files changed, 1136 insertions(+), 181 deletions(-) create mode 100644 src/components/app/color-list/color-picker.tsx create mode 100644 src/components/app/color-list/color-space-switch.tsx create mode 100644 src/components/app/color-list/color-value.tsx create mode 100644 src/components/app/color-list/colors-list-item.tsx create mode 100644 src/components/app/color-list/index.tsx create mode 100644 src/components/app/gradient-list/gradient-item.tsx create mode 100644 src/components/app/gradient-list/index.tsx create mode 100644 src/components/settings-panel.tsx create mode 100644 src/components/ui/card.tsx create mode 100644 src/components/ui/menubar.tsx create mode 100644 src/components/ui/popover.tsx create mode 100644 src/components/ui/tooltip.tsx diff --git a/package.json b/package.json index 1c17c17..5270533 100644 --- a/package.json +++ b/package.json @@ -6,15 +6,19 @@ "dependencies": { "@radix-ui/react-dropdown-menu": "^2.1.1", "@radix-ui/react-label": "^2.1.0", + "@radix-ui/react-menubar": "^1.1.1", + "@radix-ui/react-popover": "^1.1.1", "@radix-ui/react-select": "^2.1.1", "@radix-ui/react-separator": "^1.1.0", "@radix-ui/react-slot": "^1.1.0", - "chroma-js": "^3.0.0", + "@radix-ui/react-tooltip": "^1.1.2", + "chroma-js": "3.0.0", "class-variance-authority": "^0.7.0", "clsx": "^2.1.1", "lucide-react": "^0.428.0", "nanoid": "^5.0.7", "react": "^18.3.1", + "react-color": "^2.19.3", "react-dom": "^18.3.1", "tailwind-merge": "^2.5.2", "tailwindcss-animate": "^1.0.7", @@ -40,6 +44,7 @@ "@types/nanoid": "^3.0.0", "@types/node": "^22.4.0", "@types/react": "^18.3.3", + "@types/react-color": "^3.0.12", "@types/react-dom": "^18.3.0", "@typescript-eslint/eslint-plugin": "^8.1.0", "@typescript-eslint/parser": "^8.1.0", diff --git a/src/App.tsx b/src/App.tsx index a68f743..0095b22 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -1,36 +1,15 @@ import { ThemeProvider } from "@/components/theme-provider"; import ListContextProvider from "./state/list"; import Container from "@/components/container"; -import Aside from "@/components/aside"; -import { Separator } from "@/components/ui/separator"; -import PresetSelect from "./components/preset-select"; -import { GlobalBlendModeSelect } from "./components/blend-mode-select"; -import AddDelete from "./components/add-delete"; +import SettingsPanel from "./components/settings-panel"; function App() { return ( -
- + +
diff --git a/src/components/app/color-list/color-picker.tsx b/src/components/app/color-list/color-picker.tsx new file mode 100644 index 0000000..4fbb72c --- /dev/null +++ b/src/components/app/color-list/color-picker.tsx @@ -0,0 +1,39 @@ +import { InputColor } from "@/state/types"; +import { FC, useState } from "react"; +import { SketchPicker } from "react-color"; + +const ColorPicker: FC<{ + value: InputColor["color"]; + onChange: (newColor: InputColor["color"]) => void; +}> = ({ value, onChange }) => { + const [currentColor, setCurrentColor] = useState(value); + + return ( + { + setCurrentColor([ + color.rgb.r, + color.rgb.g, + color.rgb.b, + color.rgb.a as number, + ]); + }} + onChangeComplete={(color) => { + onChange([ + color.rgb.r, + color.rgb.g, + color.rgb.b, + color.rgb.a as number, + ]); + }} + /> + ); +}; + +export default ColorPicker; diff --git a/src/components/app/color-list/color-space-switch.tsx b/src/components/app/color-list/color-space-switch.tsx new file mode 100644 index 0000000..632891c --- /dev/null +++ b/src/components/app/color-list/color-space-switch.tsx @@ -0,0 +1,38 @@ +import { + Select, + SelectContent, + SelectItem, + SelectTrigger, + SelectValue, +} from "@/components/ui/select"; +import { COLOR_SPACES, ColorSpace } from "@/state/types"; +import { FC } from "react"; + +const ColorSpaceSwitch: FC<{ + colorSpace: ColorSpace; + onChange: (newSpace: ColorSpace) => void; +}> = ({ colorSpace, onChange }) => { + return ( +
+ +
+ ); +}; + +export default ColorSpaceSwitch; diff --git a/src/components/app/color-list/color-value.tsx b/src/components/app/color-list/color-value.tsx new file mode 100644 index 0000000..50fc03a --- /dev/null +++ b/src/components/app/color-list/color-value.tsx @@ -0,0 +1,62 @@ +import { ColorSpace, InputColor } from "@/state/types"; +import chroma from "chroma-js"; +import { FC, useMemo } from "react"; + +type Output = + | { type: "rgba"; value: InputColor["color"] } + | { type: "hsva"; value: InputColor["color"] } + | { type: "hsla"; value: InputColor["color"] } + | { type: "hex"; value: string }; + +const round = (v: number): number => parseFloat(v.toFixed(2)); + +const ColorValue: FC<{ color: InputColor; colorSpace: ColorSpace }> = ({ + color, + colorSpace, +}) => { + const convertedColor: Output = useMemo(() => { + switch (colorSpace) { + case "hex": + return { + type: "hex", + value: chroma.rgb(...color.color).hex(), + }; + case "hsla": { + const output = chroma.rgb(...color.color); + return { + type: "hsla", + value: [ + ...output.hsl().map(round), + output.alpha(), + ] as InputColor["color"], + }; + } + case "hsva": { + const output = chroma.rgb(...color.color); + return { + type: "hsva", + value: [ + ...output.hsv().map(round), + output.alpha(), + ] as InputColor["color"], + }; + } + case "rgba": + default: + return { + type: "rgba", + value: color.color, + }; + } + }, [color, colorSpace]); + + return ( +

+ {convertedColor.type === "hex" + ? convertedColor.value + : convertedColor.value.join(", ")} +

+ ); +}; + +export default ColorValue; diff --git a/src/components/app/color-list/colors-list-item.tsx b/src/components/app/color-list/colors-list-item.tsx new file mode 100644 index 0000000..b0e33f2 --- /dev/null +++ b/src/components/app/color-list/colors-list-item.tsx @@ -0,0 +1,91 @@ +import { useListContext } from "@/state/list"; +import { ColorSpace, InputColor } from "@/state/types"; +import { + Popover, + PopoverContent, + PopoverTrigger, +} from "@/components/ui/popover"; +import { FC, useCallback } from "react"; +import ColorValue from "./color-value"; +import ColorPicker from "./color-picker"; +import { Edit, Trash } from "lucide-react"; +import { Button } from "@/components/ui/button"; +import { + Tooltip, + TooltipContent, + TooltipProvider, + TooltipTrigger, +} from "@/components/ui/tooltip"; + +const ColorsListItem: FC<{ + color: InputColor; + gradientId: string; + colorSpace: ColorSpace; +}> = ({ color, gradientId, colorSpace }) => { + const { dispatch } = useListContext(); + + const onChange = useCallback( + (newColor: InputColor["color"]) => { + dispatch({ + type: "UPDATE_COLOR", + payload: { + gradientId, + color: { + id: color.id, + color: newColor, + }, + }, + }); + }, + [dispatch, gradientId] + ); + + return ( +
  • + + +
    + + + + + + + + + + + + + + + + + + + + Delete color + + +
  • + ); +}; + +export default ColorsListItem; diff --git a/src/components/app/color-list/index.tsx b/src/components/app/color-list/index.tsx new file mode 100644 index 0000000..b464ee6 --- /dev/null +++ b/src/components/app/color-list/index.tsx @@ -0,0 +1,99 @@ +import { Button } from "@/components/ui/button"; +import { + Tooltip, + TooltipContent, + TooltipProvider, + TooltipTrigger, +} from "@/components/ui/tooltip"; +import { useListContext } from "@/state/list"; +import { ColorSpace, Gradient } from "@/state/types"; +import chroma from "chroma-js"; +import { PlusIcon, Trash } from "lucide-react"; +import { nanoid } from "nanoid"; +import { FC, useCallback, useState } from "react"; +import ColorsListItem from "./colors-list-item"; +import ColorSpaceSwitch from "./color-space-switch"; + +const ColorList: FC<{ gradient: Gradient }> = ({ gradient }) => { + const [colorSpace, setColorSpace] = useState("rgba"); + const { dispatch } = useListContext(); + + const { id } = gradient; + + const addColor = useCallback(() => { + dispatch({ + type: "ADD_COLOR", + payload: { + gradientId: id, + color: { + id: nanoid(), + color: chroma.random().rgba(), + }, + }, + }); + }, [dispatch, id]); + + return ( +
    + Colors +
    +
    + + + + + + +

    Add color

    +
    +
    +
    + + + + + + +

    Delete all colors

    +
    +
    +
    +
    + +
    +
      + {gradient.colors.map((color) => ( + + ))} +
    +
    + ); +}; + +export default ColorList; diff --git a/src/components/app/gradient-list/gradient-item.tsx b/src/components/app/gradient-list/gradient-item.tsx new file mode 100644 index 0000000..c353a9b --- /dev/null +++ b/src/components/app/gradient-list/gradient-item.tsx @@ -0,0 +1,31 @@ +import { Gradient } from "@/state/types"; +import { FC } from "react"; +import { + Card, + CardContent, + CardDescription, + CardFooter, + CardHeader, + CardTitle, +} from "@/components/ui/card"; +import ColorList from "../color-list"; + +const GradientItem: FC<{ + gradient: Gradient; + index: number; +}> = ({ gradient, index }) => { + return ( + + + Gradient {index + 1} + + + + + + + + ); +}; + +export default GradientItem; diff --git a/src/components/app/gradient-list/index.tsx b/src/components/app/gradient-list/index.tsx new file mode 100644 index 0000000..a7bf70e --- /dev/null +++ b/src/components/app/gradient-list/index.tsx @@ -0,0 +1,19 @@ +import { useListContext } from "@/state/list"; +import { FC } from "react"; +import GradientItem from "./gradient-item"; + +const GradientList: FC = () => { + const { state } = useListContext(); + + const { gradients } = state; + + return ( +
    + {gradients.map((gradient, index) => ( + + ))} +
    + ); +}; + +export default GradientList; diff --git a/src/components/aside.tsx b/src/components/aside.tsx index 2a8bbd1..7a77873 100644 --- a/src/components/aside.tsx +++ b/src/components/aside.tsx @@ -5,13 +5,16 @@ import { ModeToggle } from "./mode-toggle"; const ROW_CLASSNAMES = "w-full pb-2 flex items-center justify-between"; -const Header: FC = () => ( -
    -
    - - SVG Gradient Editor +const Header: FC = ({ children }) => ( +
    +
    +
    + + SVG Gradient Editor +
    +
    - + {children}
    ); @@ -20,10 +23,10 @@ const Row: FC = ({ children }) => ( ); const Aside: FC & { - Header: FC; + Header: FC; Row: FC; } = ({ children }) => ( -