├── public ├── favicon.ico └── vercel.svg ├── jsconfig.json ├── .env.example ├── styles ├── globals.css └── Home.module.css ├── pages ├── _app.js ├── api │ ├── webhooks │ │ └── shopify.js │ ├── auth │ │ └── [...shopify].js │ └── products.js ├── index.js └── embedded │ ├── index.js │ └── settings.js ├── .gitignore ├── components ├── ApolloProvider.js ├── SessionProvider.js ├── PolarisProvider.js ├── RoutePropagator.js └── EmbeddedApp.js ├── lib ├── app-bridge.js ├── redis.js └── shopify.js ├── package.json ├── LICENSE ├── README.md └── yarn.lock /public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/t-kelly/nextjs-shopify-app/HEAD/public/favicon.ico -------------------------------------------------------------------------------- /jsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "baseUrl": "./", 4 | "paths": { 5 | "@components/*": ["components/*"], 6 | "@styles/*": ["styles/*"], 7 | "@lib/*": ["lib/*"] 8 | } 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /.env.example: -------------------------------------------------------------------------------- 1 | NEXT_PUBLIC_SHOPIFY_APP_API_KEY=replaceThisWithYourAppsAPIKey 2 | SHOPIFY_APP_API_SECRET_KEY=replaceThisWithYourAppsAPISecretKey 3 | SCOPES=write_products 4 | HOST=ReplaceThisWithNgrokTunnelURL 5 | REDIS_URL=FindThisInsideYourVercelProjectsEvironmentVariables -------------------------------------------------------------------------------- /styles/globals.css: -------------------------------------------------------------------------------- 1 | html, 2 | body { 3 | padding: 0; 4 | margin: 0; 5 | font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, 6 | Ubuntu, Cantarell, Fira Sans, Droid Sans, Helvetica Neue, sans-serif; 7 | } 8 | 9 | a { 10 | color: inherit; 11 | text-decoration: none; 12 | } 13 | 14 | * { 15 | box-sizing: border-box; 16 | } 17 | -------------------------------------------------------------------------------- /pages/_app.js: -------------------------------------------------------------------------------- 1 | import { useRouter } from 'next/router' 2 | import EmbeddedApp from "@components/EmbeddedApp"; 3 | 4 | import "@shopify/polaris/dist/styles.css"; 5 | 6 | export default function App({ Component, pageProps}) { 7 | const {pathname} = useRouter() 8 | const isEmbedded = pathname.startsWith('/embedded') 9 | return ( 10 | <> 11 | {isEmbedded 12 | ? 13 | : 14 | } 15 | 16 | ) 17 | } 18 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # See https://help.github.com/articles/ignoring-files/ for more about ignoring files. 2 | 3 | # dependencies 4 | /node_modules 5 | /.pnp 6 | .pnp.js 7 | 8 | # testing 9 | /coverage 10 | 11 | # next.js 12 | /.next/ 13 | /out/ 14 | 15 | # production 16 | /build 17 | 18 | # misc 19 | .DS_Store 20 | *.pem 21 | 22 | # debug 23 | npm-debug.log* 24 | yarn-debug.log* 25 | yarn-error.log* 26 | 27 | # local env files 28 | .env.local 29 | .env.development.local 30 | .env.test.local 31 | .env.production.local 32 | 33 | # vercel 34 | .vercel 35 | -------------------------------------------------------------------------------- /components/ApolloProvider.js: -------------------------------------------------------------------------------- 1 | import ApolloClient from "apollo-boost"; 2 | import { ApolloProvider as Provider } from "react-apollo"; 3 | import { fetch } from '@lib/app-bridge'; 4 | import { useAppBridge } from "@shopify/app-bridge-react"; 5 | 6 | export default function ApolloProvider({children}) { 7 | const app = useAppBridge(); 8 | const client = new ApolloClient({ 9 | fetch: fetch(app), 10 | fetchOptions: { 11 | credentials: "include", 12 | }, 13 | }); 14 | 15 | return {children} 16 | } -------------------------------------------------------------------------------- /components/SessionProvider.js: -------------------------------------------------------------------------------- 1 | 2 | import { useEffect } from 'react'; 3 | import {useRouter} from "next/router" 4 | import { getSessionToken } from "@shopify/app-bridge-utils"; 5 | import { useAppBridge } from "@shopify/app-bridge-react"; 6 | 7 | export default function SessionProvider({children}) { 8 | const app = useAppBridge(); 9 | 10 | useEffect(async () => { 11 | const session = await getSessionToken(app); 12 | 13 | if (!session) { 14 | window.location.pathname = `/api/auth/shopify/login`; 15 | } 16 | }, []); 17 | 18 | return <>{children}; 19 | } 20 | 21 | -------------------------------------------------------------------------------- /components/PolarisProvider.js: -------------------------------------------------------------------------------- 1 | import { AppProvider } from "@shopify/polaris"; 2 | import Link from 'next/link' 3 | import translations from "@shopify/polaris/locales/en.json"; 4 | 5 | const CustomLinkComponent = ({ 6 | as, 7 | children, 8 | url, 9 | external, 10 | role, 11 | ...rest 12 | }) => { 13 | if (external) { 14 | return ( 15 | 16 | {children} 17 | 18 | ); 19 | } 20 | return ( 21 | 22 | 23 | 24 | ); 25 | }; 26 | 27 | export default function PolarisProvider({children}) { 28 | return {children} 29 | } -------------------------------------------------------------------------------- /lib/app-bridge.js: -------------------------------------------------------------------------------- 1 | import { authenticatedFetch } from "@shopify/app-bridge-utils"; 2 | import { Redirect } from "@shopify/app-bridge/actions"; 3 | 4 | export function fetch(app) { 5 | const fetchFunction = authenticatedFetch(app); 6 | 7 | return async (uri, options) => { 8 | const response = await fetchFunction(uri, options); 9 | 10 | if ( 11 | response.headers.get("X-Shopify-API-Request-Failure-Reauthorize") === "1" 12 | ) { 13 | const authUrlHeader = response.headers.get( 14 | "X-Shopify-API-Request-Failure-Reauthorize-Url" 15 | ); 16 | 17 | const redirect = Redirect.create(app); 18 | redirect.dispatch(Redirect.Action.APP, authUrlHeader || `/auth`); 19 | return null; 20 | } 21 | 22 | return response; 23 | }; 24 | } -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "nextjs", 3 | "version": "0.1.0", 4 | "private": true, 5 | "scripts": { 6 | "dev": "next dev", 7 | "debug": "NODE_OPTIONS='--inspect' next dev", 8 | "build": "next build", 9 | "start": "next start" 10 | }, 11 | "dependencies": { 12 | "@shopify/admin-graphql-api-utilities": "^1.0.1", 13 | "@shopify/app-bridge": "^2.0.3", 14 | "@shopify/app-bridge-react": "^2.0.3", 15 | "@shopify/app-bridge-utils": "^2.0.3", 16 | "@shopify/polaris": "^6.5.0", 17 | "@shopify/shopify-api": "^1.4.1", 18 | "apollo-boost": "^0.4.9", 19 | "graphql": "^15.5.0", 20 | "ioredis": "^4.27.6", 21 | "next": "11.x", 22 | "react": "17.x", 23 | "react-apollo": "^3.1.5", 24 | "react-dom": "17.x" 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /pages/api/webhooks/shopify.js: -------------------------------------------------------------------------------- 1 | import Shopify from '@lib/shopify'; 2 | 3 | export default async function handleWebhooks(req, res) { 4 | // Provide HOST_NAME here just in case it was not provided by env variable 5 | // This might occur during the first deploy to Vercel when you don't yet know 6 | // what domain your app is being hosted on 7 | Shopify.Context.update({HOST_NAME: req.headers.host}); 8 | 9 | try { 10 | await Shopify.Webhooks.Registry.process(req, res); 11 | console.log(`Webhook processed, returned status code 200`); 12 | } catch (error) { 13 | console.log(`Failed to process webhook: ${error}`); 14 | } 15 | } 16 | 17 | // We need to disable the body parser here because `Shopify.Webhooks.Registry.process()` 18 | // expects a raw body which is used for checking the validity (HMAC) of the Webhook 19 | export const config = { 20 | api: { 21 | bodyParser: false, 22 | }, 23 | } -------------------------------------------------------------------------------- /components/RoutePropagator.js: -------------------------------------------------------------------------------- 1 | import {useEffect, useContext} from 'react'; 2 | import Router, { useRouter } from "next/router"; 3 | import { Context as AppBridgeContext } from "@shopify/app-bridge-react"; 4 | import { Redirect } from "@shopify/app-bridge/actions"; 5 | import { RoutePropagator as ShopifyRoutePropagator } from "@shopify/app-bridge-react"; 6 | 7 | const RoutePropagator = () => { 8 | const router = useRouter(); 9 | const { route } = router; 10 | const appBridge = useContext(AppBridgeContext); 11 | 12 | // Subscribe to appBridge changes - captures appBridge urls 13 | // and sends them to Next.js router. Use useEffect hook to 14 | // load once when component mounted 15 | useEffect(() => { 16 | appBridge.subscribe(Redirect.Action.APP, (payload) => { 17 | Router.push(payload.path); 18 | }); 19 | }, []); 20 | 21 | return appBridge && route ? ( 22 | 23 | ) : null; 24 | } 25 | 26 | export default RoutePropagator; -------------------------------------------------------------------------------- /pages/api/auth/[...shopify].js: -------------------------------------------------------------------------------- 1 | import Shopify, {ShopifyAuth} from '@lib/shopify'; 2 | 3 | export default ShopifyAuth({ 4 | afterAuth: async (req, res, {accessToken, shop}) => { 5 | // Provide HOST_NAME here just in case it was not provided by env variable 6 | // This might occur during the first deploy to Vercel when you don't yet know 7 | // what domain your app is being hosted on 8 | Shopify.Context.update({ HOST_NAME: req.headers.host}); 9 | 10 | const response = await Shopify.Webhooks.Registry.register({ 11 | shop, 12 | accessToken, 13 | path: "/api/webhooks/shopify", 14 | topic: "APP_UNINSTALLED", 15 | webhookHandler: (topic, shop, body) => { 16 | console.log('APP_UNINSTALLED handler was executed') 17 | }, 18 | }); 19 | 20 | if (!response.success) { 21 | console.log( 22 | `Failed to register APP_UNINSTALLED webhook: ${response.result}` 23 | ); 24 | } else { 25 | console.log('APP_UNINSTALLED Webhook was successfully registered') 26 | } 27 | } 28 | }); -------------------------------------------------------------------------------- /public/vercel.svg: -------------------------------------------------------------------------------- 1 | 3 | 4 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2021 Thomas Kelly 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /pages/api/products.js: -------------------------------------------------------------------------------- 1 | import Shopify, {context} from '@lib/shopify' 2 | 3 | export default async (req, res) => { 4 | // Provide HOST_NAME here just in case it was not provided by env variable 5 | // This might occur during the first deploy to Vercel when you don't yet know 6 | // what domain your app is being hosted on 7 | Shopify.Context.update({ HOST_NAME: req.headers.host}); 8 | 9 | const session = await Shopify.Utils.loadCurrentSession(req, res); 10 | const client = new Shopify.Clients.Graphql(session.shop, session.accessToken); 11 | // Use `client.get` to request the specified Shopify GraphQL API endpoint, in this case `products`. 12 | const products = await client.query({ 13 | data: `{ 14 | products (first: 10) { 15 | edges { 16 | node { 17 | id 18 | title 19 | bodyHtml 20 | onlineStoreUrl 21 | featuredImage { 22 | src 23 | altText 24 | } 25 | vendor 26 | } 27 | } 28 | } 29 | }` 30 | }); 31 | 32 | res.status(200).json(products) 33 | } 34 | 35 | export const config = { 36 | api: { 37 | bodyParser: false, 38 | }, 39 | } 40 | -------------------------------------------------------------------------------- /components/EmbeddedApp.js: -------------------------------------------------------------------------------- 1 | import {useEffect, useState} from 'react'; 2 | import { Provider as AppBridgeProvider } from "@shopify/app-bridge-react"; 3 | import PolarisProvider from '@components/PolarisProvider'; 4 | import SessionProvider from '@components/SessionProvider'; 5 | import ApolloProvider from '@components/ApolloProvider'; 6 | import RoutePropagator from '@components/RoutePropagator'; 7 | 8 | export default function EmbeddedApp({children}) { 9 | const API_KEY = process.env.NEXT_PUBLIC_SHOPIFY_APP_API_KEY; 10 | const [host, setHost] = useState(); 11 | 12 | useEffect(() => { 13 | const url = new URL(window.location.href) 14 | const host = url.searchParams.get('host'); 15 | 16 | // If host is not set, than the page is being loaded outside of App Bridge 17 | // so we should proceed with starting OAuth 18 | if (host) { 19 | setHost(host) 20 | } else { 21 | window.location.pathname = `/api/auth/shopify/login`; 22 | } 23 | }, []) 24 | 25 | return <> 26 | {host && <> 27 | 28 | 29 | 30 | 31 | 32 | {children} 33 | 34 | 35 | 36 | 37 | } 38 | 39 | } -------------------------------------------------------------------------------- /pages/index.js: -------------------------------------------------------------------------------- 1 | import Head from 'next/head' 2 | import styles from '../styles/Home.module.css' 3 | 4 | export default function Home() { 5 | return ( 6 |
7 | 8 | Create Next App 9 | 10 | 11 | 12 |
13 |

14 | Next.js Shopify App Boilerplate 15 |

16 | 17 |

18 | Read the repo's README.md for instructions to get started 19 |

20 | 21 |
22 | 23 |

NextJS Documentation →

24 |

Find in-depth information about Next.js features and API.

25 |
26 | 27 | 28 |

Shopify App Development Documentation →

29 |

Learn all about building Apps on Shopify

30 |
31 | 32 | 36 |

Shopify APIs →

37 |

Our APIs enable your app to solve solve meaningful problems in commerce

38 |
39 | 40 | 44 |

Deploy on Vercel →

45 |

46 | Instantly deploy your Next.js Shopify App to a public URL with Vercel. 47 |

48 |
49 |
50 |
51 |
52 | ) 53 | } -------------------------------------------------------------------------------- /lib/redis.js: -------------------------------------------------------------------------------- 1 | import Redis from 'ioredis' 2 | 3 | export default class RedisStore { 4 | constructor(url) { 5 | // Create a new redis client 6 | this.client = new Redis(url); 7 | } 8 | 9 | /* 10 | The storeCallback takes in the Session, and sets a stringified version of it on the redis store 11 | This callback is used for BOTH saving new Sessions and updating existing Sessions. 12 | If the session can be stored, return true 13 | Otherwise, return false 14 | */ 15 | storeCallback = async (session) => { 16 | try { 17 | // Inside our try, we use the `setAsync` method to save our session. 18 | // This method returns a boolean (true is successful, false if not) 19 | return await this.client.set(session.id, JSON.stringify(session)) 20 | } catch (err) { 21 | // throw errors, and handle them gracefully in your application 22 | throw new Error(err) 23 | } 24 | }; 25 | 26 | /* 27 | The loadCallback takes in the id, and uses the getAsync method to access the session data 28 | If a stored session exists, it's parsed and returned 29 | Otherwise, return undefined 30 | */ 31 | loadCallback = async (id) => { 32 | try { 33 | // Inside our try, we use `getAsync` to access the method by id 34 | // If we receive data back, we parse and return it 35 | // If not, we return `undefined` 36 | let reply = await this.client.get(id); 37 | if (reply) { 38 | return JSON.parse(reply); 39 | } else { 40 | return undefined 41 | } 42 | } catch (err) { 43 | throw new Error(err) 44 | } 45 | }; 46 | 47 | /* 48 | The deleteCallback takes in the id, and uses the redis `del` method to delete it from the store 49 | If the session can be deleted, return true 50 | Otherwise, return false 51 | */ 52 | deleteCallback = async (id) => { 53 | try { 54 | // Inside our try, we use the `delAsync` method to delete our session. 55 | // This method returns a boolean (true is successful, false if not) 56 | return await this.client.del(id) 57 | } catch (err) { 58 | throw new Error(err) 59 | } 60 | }; 61 | } -------------------------------------------------------------------------------- /styles/Home.module.css: -------------------------------------------------------------------------------- 1 | .container { 2 | min-height: 100vh; 3 | padding: 0 0.5rem; 4 | display: flex; 5 | flex-direction: column; 6 | justify-content: center; 7 | align-items: center; 8 | } 9 | 10 | .main { 11 | padding: 5rem 0; 12 | flex: 1; 13 | display: flex; 14 | flex-direction: column; 15 | justify-content: center; 16 | align-items: center; 17 | } 18 | 19 | .footer { 20 | width: 100%; 21 | height: 100px; 22 | border-top: 1px solid #eaeaea; 23 | display: flex; 24 | justify-content: center; 25 | align-items: center; 26 | } 27 | 28 | .footer img { 29 | margin-left: 0.5rem; 30 | } 31 | 32 | .footer a { 33 | display: flex; 34 | justify-content: center; 35 | align-items: center; 36 | } 37 | 38 | .title a { 39 | color: #0070f3; 40 | text-decoration: none; 41 | } 42 | 43 | .title a:hover, 44 | .title a:focus, 45 | .title a:active { 46 | text-decoration: underline; 47 | } 48 | 49 | .title { 50 | margin: 0; 51 | line-height: 1.15; 52 | font-size: 4rem; 53 | } 54 | 55 | .title, 56 | .description { 57 | text-align: center; 58 | } 59 | 60 | .description { 61 | line-height: 1.5; 62 | font-size: 1.5rem; 63 | } 64 | 65 | .code { 66 | background: #fafafa; 67 | border-radius: 5px; 68 | padding: 0.75rem; 69 | font-size: 1.1rem; 70 | font-family: Menlo, Monaco, Lucida Console, Liberation Mono, DejaVu Sans Mono, 71 | Bitstream Vera Sans Mono, Courier New, monospace; 72 | } 73 | 74 | .grid { 75 | display: flex; 76 | align-items: center; 77 | justify-content: center; 78 | flex-wrap: wrap; 79 | max-width: 800px; 80 | margin-top: 3rem; 81 | } 82 | 83 | .card { 84 | margin: 1rem; 85 | flex-basis: 45%; 86 | padding: 1.5rem; 87 | text-align: left; 88 | color: inherit; 89 | text-decoration: none; 90 | border: 1px solid #eaeaea; 91 | border-radius: 10px; 92 | transition: color 0.15s ease, border-color 0.15s ease; 93 | } 94 | 95 | .card:hover, 96 | .card:focus, 97 | .card:active { 98 | color: #0070f3; 99 | border-color: #0070f3; 100 | } 101 | 102 | .card h3 { 103 | margin: 0 0 1rem 0; 104 | font-size: 1.5rem; 105 | } 106 | 107 | .card p { 108 | margin: 0; 109 | font-size: 1.25rem; 110 | line-height: 1.5; 111 | } 112 | 113 | .logo { 114 | height: 1em; 115 | } 116 | 117 | @media (max-width: 600px) { 118 | .grid { 119 | width: 100%; 120 | flex-direction: column; 121 | } 122 | } 123 | -------------------------------------------------------------------------------- /lib/shopify.js: -------------------------------------------------------------------------------- 1 | import Shopify, { ApiVersion } from '@shopify/shopify-api'; 2 | import RedisStore from '@lib/redis'; 3 | 4 | const sessionStorage = new RedisStore(process.env.REDIS_URL); 5 | const context = { 6 | API_KEY: process.env.NEXT_PUBLIC_SHOPIFY_APP_API_KEY, 7 | API_SECRET_KEY: process.env.SHOPIFY_APP_API_SECRET_KEY, 8 | SCOPES: [process.env.SCOPES || 'write_products'], 9 | HOST_NAME: process.env.HOST || 'https://example.com', 10 | IS_EMBEDDED_APP: true, 11 | API_VERSION: ApiVersion.July21, // all supported versions are available, as well as "unstable" and "unversioned" 12 | SESSION_STORAGE: new Shopify.Session.CustomSessionStorage( 13 | sessionStorage.storeCallback, 14 | sessionStorage.loadCallback, 15 | sessionStorage.deleteCallback, 16 | ), 17 | } 18 | 19 | Shopify.Context.initialize(context); 20 | 21 | Shopify.Context.update = function(overrides) { 22 | Shopify.Context.initialize({...context, ...overrides}); 23 | } 24 | 25 | export default Shopify; 26 | 27 | export function ShopifyAuth(config = {}) { 28 | 29 | return (req, res) => { 30 | const {shopify} = req.query; 31 | const {host} = req.headers; 32 | 33 | // Provide HOST_NAME here just in case it was not provided by env variable 34 | // This might occur during the first deploy to Vercel when you don't yet know 35 | // what domain your app is being hosted on 36 | Shopify.Context.update({HOST_NAME: req.headers.host}); 37 | 38 | switch(shopify.join('/')) { 39 | case 'shopify/login': 40 | return loginRoute(req,res); 41 | case 'shopify/callback': 42 | return callbackRoute(req,res,config.afterAuth); 43 | } 44 | } 45 | } 46 | 47 | async function loginRoute(req, res) { 48 | try { 49 | const {shop} = req.query; 50 | const authRoute = await Shopify.Auth.beginAuth(req, res, shop, '/api/auth/shopify/callback', true); 51 | console.log("New OAuth process begining.") 52 | res.writeHead(302, { 'Location': authRoute }); 53 | res.end(); 54 | } 55 | catch (e) { 56 | console.log(e); 57 | 58 | res.writeHead(500); 59 | if (e instanceof Shopify.Errors.ShopifyError) { 60 | res.end(e.message); 61 | } 62 | else { 63 | res.end(`Failed to complete OAuth process: ${e.message}`); 64 | } 65 | } 66 | return; 67 | } 68 | 69 | async function callbackRoute(req, res, afterAuth) { 70 | let redirectUrl = `/embedded?host=${req.query.host}`; 71 | 72 | try { 73 | await Shopify.Auth.validateAuthCallback(req, res, req.query); 74 | const currentSession = await Shopify.Utils.loadCurrentSession(req, res); 75 | 76 | if (typeof afterAuth === 'function') { 77 | redirectUrl = await afterAuth(req, res, currentSession) || redirectUrl; 78 | } 79 | 80 | res.writeHead(302, { 'Location': redirectUrl }); 81 | res.end(); 82 | } 83 | catch (e) { 84 | console.log(e); 85 | 86 | res.writeHead(500); 87 | if (e instanceof Shopify.Errors.ShopifyError) { 88 | res.end(e.message); 89 | } 90 | else { 91 | res.end(`Failed to complete OAuth process: ${e.message}`); 92 | } 93 | } 94 | return; 95 | } 96 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Shopify NextJS App Example 2 | 3 | An example app built with NextJS that can be setup and deployed to production in seconds on Vercel. 4 | 5 | ## Deploy your own 6 | 7 | [![Deploy with Vercel](https://vercel.com/button)](https://vercel.com/new/git/external?repository-url=https%3A%2F%2Fgithub.com%2Ft-kelly%2Fnextjs-shopify-app&env=NEXT_PUBLIC_SHOPIFY_APP_API_KEY,SHOPIFY_APP_API_SECRET_KEY&project-name=shopify-nextjs-app&repo-name=shopify-nextjs-app&integration-ids=oac_V3R1GIpkoJorr6fqyiwdhl17) 8 | 9 | This examples uses [Upstash](https://upstash.com/) (Serverless Redis Database) as its data storage. During deployment, you will be asked to connect with Upstash. The integration will help you create a free Redis database and link it to your Vercel project automatically. 10 | 11 | You'll need to [get a Shopify App API Key and API secret key](https://shopify.dev/tutorials/build-a-shopify-app-with-node-and-react/embed-your-app-in-shopify#get-a-shopify-api-key) inside the Partner Dashboard to complete the deploy. After deployed, select **App Setup** on your app's summary page in Partner Dashboard, and update the following values: 12 | 1. App Url: `https://[your-vercel-deploy-url].vercel.app/embedded` 13 | 2. Redirection URLs: `https://[your-vercel-deploy-url].vercel.app/api/auth/shopify/callback` 14 | 15 | Finally, install your app on a development store by selecting **Test on development store** on your app's summary page in Partner Dashboard 16 | 17 | ## Setup Local Development 18 | 19 | 1. Clone your app's repo `git clone https://github.com/[your-user-name]/nextjs-shopify-app.git` 20 | 2. Create another Shopify App for Development inside the [Partner Dashboard](https://partners.shopify.com/current/stores?shpxid=a1fb8161-E1A9-475F-5DF6-E0BCC9D15DFF) and use the Shopify API Key and API secret key for local development. 21 | 4. Rename `.env.example` to `.env.local` and fill in values 22 | 5. Run `npm install` and then `npm run dev` 23 | 6. [Expose your dev environment](https://ngrok.com/docs#getting-started-expose) with ngrok (nextjs runs on port 3000 by default) 24 | 7. Update your Dev Apps settings in the Partner Dashboard with the following URLs: 25 | - Instead of using `https://yourNgrokTunnel.ngrok.io/` for the App URL, use `https://yourNgrokTunnel.ngrok.io/embedded` 26 | - Instead of using `https://yourNgrokTunnel.ngrok.io/auth/callback` for the Redirection URLs, use `https://yourNgrokTunnel.ngrok.io/api/auth/shopify/callback` 27 | 8. [Install your app on a development store and start developing!](https://shopify.dev/tutorials/build-a-shopify-app-with-node-and-react/embed-your-app-in-shopify#authenticate-and-test) 28 | 29 | You can start editing the page by modifying `pages/embedded/index.js`. The page auto-updates as you edit the file. 30 | 31 | ## Learn More 32 | 33 | To learn more about Next.js, take a look at the following resources: 34 | 35 | - [Next.js Documentation](https://nextjs.org/docs) - learn about Next.js features and API. 36 | - [Learn Next.js](https://nextjs.org/learn) - an interactive Next.js tutorial. 37 | 38 | You can check out [the Next.js GitHub repository](https://github.com/vercel/next.js/) - your feedback and contributions are welcome! 39 | 40 | ## Deploy on Vercel 41 | 42 | The easiest way to deploy your Next.js app is to use the [Vercel Platform](https://vercel.com/import?utm_medium=default-template&filter=next.js&utm_source=create-next-app&utm_campaign=create-next-app-readme) from the creators of Next.js. 43 | 44 | Check out our [Next.js deployment documentation](https://nextjs.org/docs/deployment) for more details. 45 | -------------------------------------------------------------------------------- /pages/embedded/index.js: -------------------------------------------------------------------------------- 1 | import { Layout, 2 | Page, 3 | FooterHelp, 4 | Link, 5 | MediaCard, 6 | Card, 7 | ResourceList, 8 | Thumbnail, 9 | ResourceItem, 10 | TextStyle, 11 | TextContainer, 12 | Heading, 13 | } from "@shopify/polaris"; 14 | import {} from '@shopify/polaris' 15 | import { useEffect, useState } from "react"; 16 | import { authenticatedFetch } from "@shopify/app-bridge-utils"; 17 | import { useAppBridge } from "@shopify/app-bridge-react"; 18 | 19 | export default function Index() { 20 | const primaryAction = {content: 'Settings', url: '/embedded/settings'}; 21 | const [products, setProducts] = useState([]); 22 | const app = useAppBridge(); 23 | 24 | useEffect(async () => { 25 | const response = await authenticatedFetch(app)('/api/products'); 26 | const {body} = await response.json(); 27 | setProducts(body.products); 28 | }, []) 29 | 30 | return ( 31 | 35 | 36 | 37 | {}}]} 46 | > 47 | 57 | 58 | 59 | 60 | 61 | 62 | A Simple Products List 63 |

64 | This list of products is generated with a request made to the Shopify GraphQL API! 65 |

66 |
67 |
68 | 69 | 70 | 71 | { 76 | const {id, onlineStoreUrl, title, featuredImage, vendor} = item; 77 | const media = ; 78 | 79 | return ( 80 | 86 |

87 | {title} 88 |

89 |
{vendor}
90 |
91 | ); 92 | }} 93 | /> 94 |
95 |
96 | 97 | 98 | 99 | For more details on Polaris, visit our{' '} 100 | style guide. 101 | 102 | 103 |
104 |
105 | ); 106 | }; 107 | -------------------------------------------------------------------------------- /pages/embedded/settings.js: -------------------------------------------------------------------------------- 1 | import React, {useState, useCallback} from 'react'; 2 | import { 3 | Layout, 4 | Page, 5 | FooterHelp, 6 | Card, 7 | Link, 8 | Button, 9 | FormLayout, 10 | TextField, 11 | AccountConnection, 12 | ChoiceList, 13 | SettingToggle, 14 | } from '@shopify/polaris'; 15 | import {ImportMinor} from '@shopify/polaris-icons'; 16 | import { useRouter } from 'next/router'; 17 | 18 | export default function Index() { 19 | const [first, setFirst] = useState(''); 20 | const [last, setLast] = useState(''); 21 | const [email, setEmail] = useState(''); 22 | const [checkboxes, setCheckboxes] = useState([]); 23 | const [connected, setConnected] = useState(false); 24 | const router = useRouter() 25 | 26 | const handleFirstChange = useCallback((value) => setFirst(value), []); 27 | const handleLastChange = useCallback((value) => setLast(value), []); 28 | const handleEmailChange = useCallback((value) => setEmail(value), []); 29 | const handleCheckboxesChange = useCallback( 30 | (value) => setCheckboxes(value), 31 | [], 32 | ); 33 | 34 | const toggleConnection = useCallback( 35 | () => { 36 | setConnected(!connected); 37 | }, 38 | [connected], 39 | ); 40 | 41 | const breadcrumbs = [{ 42 | content: 'Sample apps', 43 | onAction: () => { 44 | router.back(); 45 | } 46 | }]; 47 | const primaryAction = {content: 'New product'}; 48 | const secondaryActions = [{content: 'Import', icon: ImportMinor}]; 49 | 50 | const choiceListItems = [ 51 | {label: 'I accept the Terms of Service', value: 'false'}, 52 | {label: 'I consent to receiving emails', value: 'false2'}, 53 | ]; 54 | 55 | const accountSectionDescription = connected 56 | ? 'Disconnect your account from your Shopify store.' 57 | : 'Connect your account to your Shopify store.'; 58 | 59 | const accountMarkup = connected ? ( 60 | 61 | ) : ( 62 | 63 | ); 64 | 65 | return ( 66 | 72 | 73 | 77 | 82 | Upload your store’s logo, change colors and fonts, and more. 83 | 84 | 85 | 86 | 90 | {accountMarkup} 91 | 92 | 93 | 97 | 98 | 99 | 100 | 106 | 112 | 113 | 114 | 120 | 121 | 127 | 128 | 129 | 130 | 131 | 132 | 133 | 134 | 135 | For more details on Polaris, visit our{' '} 136 | style guide. 137 | 138 | 139 | 140 | 141 | ); 142 | } 143 | 144 | function ConnectAccount({onAction}) { 145 | return ( 146 | 151 | By clicking Connect, you are accepting Sample’s{' '} 152 | Terms and Conditions, 153 | including a commission rate of 15% on sales. 154 |

155 | } 156 | /> 157 | ); 158 | } 159 | 160 | function DisconnectAccount({onAction}) { 161 | return ( 162 | Tom Ford} 167 | details="Account id: d587647ae4" 168 | /> 169 | ); 170 | } -------------------------------------------------------------------------------- /yarn.lock: -------------------------------------------------------------------------------- 1 | # THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. 2 | # yarn lockfile v1 3 | 4 | 5 | "@apollo/react-common@^3.1.4": 6 | "integrity" "sha512-X5Kyro73bthWSCBJUC5XYQqMnG0dLWuDZmVkzog9dynovhfiVCV4kPSdgSIkqnb++cwCzOVuQ4rDKVwo2XRzQA==" 7 | "resolved" "https://registry.npmjs.org/@apollo/react-common/-/react-common-3.1.4.tgz" 8 | "version" "3.1.4" 9 | dependencies: 10 | "ts-invariant" "^0.4.4" 11 | "tslib" "^1.10.0" 12 | 13 | "@apollo/react-components@^3.1.5": 14 | "integrity" "sha512-c82VyUuE9VBnJB7bnX+3dmwpIPMhyjMwyoSLyQWPHxz8jK4ak30XszJtqFf4eC4hwvvLYa+Ou6X73Q8V8e2/jg==" 15 | "resolved" "https://registry.npmjs.org/@apollo/react-components/-/react-components-3.1.5.tgz" 16 | "version" "3.1.5" 17 | dependencies: 18 | "@apollo/react-common" "^3.1.4" 19 | "@apollo/react-hooks" "^3.1.5" 20 | "prop-types" "^15.7.2" 21 | "ts-invariant" "^0.4.4" 22 | "tslib" "^1.10.0" 23 | 24 | "@apollo/react-hoc@^3.1.5": 25 | "integrity" "sha512-jlZ2pvEnRevLa54H563BU0/xrYSgWQ72GksarxUzCHQW85nmn9wQln0kLBX7Ua7SBt9WgiuYQXQVechaaCulfQ==" 26 | "resolved" "https://registry.npmjs.org/@apollo/react-hoc/-/react-hoc-3.1.5.tgz" 27 | "version" "3.1.5" 28 | dependencies: 29 | "@apollo/react-common" "^3.1.4" 30 | "@apollo/react-components" "^3.1.5" 31 | "hoist-non-react-statics" "^3.3.0" 32 | "ts-invariant" "^0.4.4" 33 | "tslib" "^1.10.0" 34 | 35 | "@apollo/react-hooks@^3.1.5": 36 | "integrity" "sha512-y0CJ393DLxIIkksRup4nt+vSjxalbZBXnnXxYbviq/woj+zKa431zy0yT4LqyRKpFy9ahMIwxBnBwfwIoupqLQ==" 37 | "resolved" "https://registry.npmjs.org/@apollo/react-hooks/-/react-hooks-3.1.5.tgz" 38 | "version" "3.1.5" 39 | dependencies: 40 | "@apollo/react-common" "^3.1.4" 41 | "@wry/equality" "^0.1.9" 42 | "ts-invariant" "^0.4.4" 43 | "tslib" "^1.10.0" 44 | 45 | "@apollo/react-ssr@^3.1.5": 46 | "integrity" "sha512-wuLPkKlctNn3u8EU8rlECyktpOUCeekFfb0KhIKknpGY6Lza2Qu0bThx7D9MIbVEzhKadNNrzLcpk0Y8/5UuWg==" 47 | "resolved" "https://registry.npmjs.org/@apollo/react-ssr/-/react-ssr-3.1.5.tgz" 48 | "version" "3.1.5" 49 | dependencies: 50 | "@apollo/react-common" "^3.1.4" 51 | "@apollo/react-hooks" "^3.1.5" 52 | "tslib" "^1.10.0" 53 | 54 | "@babel/code-frame@7.12.11": 55 | "integrity" "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==" 56 | "resolved" "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz" 57 | "version" "7.12.11" 58 | dependencies: 59 | "@babel/highlight" "^7.10.4" 60 | 61 | "@babel/helper-validator-identifier@^7.14.0": 62 | "integrity" "sha512-V3ts7zMSu5lfiwWDVWzRDGIN+lnCEUdaXgtVHJgLb1rGaA6jMrtB9EmE7L18foXJIE8Un/A/h6NJfGQp/e1J4A==" 63 | "resolved" "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.0.tgz" 64 | "version" "7.14.0" 65 | 66 | "@babel/highlight@^7.10.4": 67 | "integrity" "sha512-YSCOwxvTYEIMSGaBQb5kDDsCopDdiUGsqpatp3fOlI4+2HQSkTmEVWnVuySdAC5EWCqSWWTv0ib63RjR7dTBdg==" 68 | "resolved" "https://registry.npmjs.org/@babel/highlight/-/highlight-7.14.0.tgz" 69 | "version" "7.14.0" 70 | dependencies: 71 | "@babel/helper-validator-identifier" "^7.14.0" 72 | "chalk" "^2.0.0" 73 | "js-tokens" "^4.0.0" 74 | 75 | "@babel/runtime@^7.5.5", "@babel/runtime@^7.8.7", "@babel/runtime@7.12.5": 76 | "integrity" "sha512-plcc+hbExy3McchJCEQG3knOsuh3HH+Prx1P6cLIkET/0dLuQDEnrT+s27Axgc9bqfsmNUNHfscgMUdBpC9xfg==" 77 | "resolved" "https://registry.npmjs.org/@babel/runtime/-/runtime-7.12.5.tgz" 78 | "version" "7.12.5" 79 | dependencies: 80 | "regenerator-runtime" "^0.13.4" 81 | 82 | "@babel/types@7.8.3": 83 | "integrity" "sha512-jBD+G8+LWpMBBWvVcdr4QysjUE4mU/syrhN17o1u3gx0/WzJB1kwiVZAXRtWbsIPOwW8pF/YJV5+nmetPzepXg==" 84 | "resolved" "https://registry.npmjs.org/@babel/types/-/types-7.8.3.tgz" 85 | "version" "7.8.3" 86 | dependencies: 87 | "esutils" "^2.0.2" 88 | "lodash" "^4.17.13" 89 | "to-fast-properties" "^2.0.0" 90 | 91 | "@hapi/accept@5.0.2": 92 | "integrity" "sha512-CmzBx/bXUR8451fnZRuZAJRlzgm0Jgu5dltTX/bszmR2lheb9BpyN47Q1RbaGTsvFzn0PXAEs+lXDKfshccYZw==" 93 | "resolved" "https://registry.npmjs.org/@hapi/accept/-/accept-5.0.2.tgz" 94 | "version" "5.0.2" 95 | dependencies: 96 | "@hapi/boom" "9.x.x" 97 | "@hapi/hoek" "9.x.x" 98 | 99 | "@hapi/boom@9.x.x": 100 | "integrity" "sha512-uJEJtiNHzKw80JpngDGBCGAmWjBtzxDCz17A9NO2zCi8LLBlb5Frpq4pXwyN+2JQMod4pKz5BALwyneCgDg89Q==" 101 | "resolved" "https://registry.npmjs.org/@hapi/boom/-/boom-9.1.2.tgz" 102 | "version" "9.1.2" 103 | dependencies: 104 | "@hapi/hoek" "9.x.x" 105 | 106 | "@hapi/hoek@9.x.x": 107 | "integrity" "sha512-sqKVVVOe5ivCaXDWivIJYVSaEgdQK9ul7a4Kity5Iw7u9+wBAPbX1RMSnLLmp7O4Vzj0WOWwMAJsTL00xwaNug==" 108 | "resolved" "https://registry.npmjs.org/@hapi/hoek/-/hoek-9.2.0.tgz" 109 | "version" "9.2.0" 110 | 111 | "@next/env@10.2.3": 112 | "integrity" "sha512-uBOjRBjsWC4C8X3DfmWWP6ekwLnf2JCCwQX9KVnJtJkqfDsv1yQPakdOEwvJzXQc3JC/v5KKffYPVmV2wHXCgQ==" 113 | "resolved" "https://registry.npmjs.org/@next/env/-/env-10.2.3.tgz" 114 | "version" "10.2.3" 115 | 116 | "@next/polyfill-module@10.2.3": 117 | "integrity" "sha512-OkeY4cLhzfYbXxM4fd+6V4s5pTPuyfKSlavItfNRA6PpS7t1/R6YjO7S7rB8tu1pbTGuDHGIdE1ioDv15bAbDQ==" 118 | "resolved" "https://registry.npmjs.org/@next/polyfill-module/-/polyfill-module-10.2.3.tgz" 119 | "version" "10.2.3" 120 | 121 | "@next/react-dev-overlay@10.2.3": 122 | "integrity" "sha512-E6g2jws4YW94l0lMMopBVKIZK2mEHfSBvM0d9dmzKG9L/A/kEq6LZCB4SiwGJbNsAdlk2y3USDa0oNbpA+m5Kw==" 123 | "resolved" "https://registry.npmjs.org/@next/react-dev-overlay/-/react-dev-overlay-10.2.3.tgz" 124 | "version" "10.2.3" 125 | dependencies: 126 | "@babel/code-frame" "7.12.11" 127 | "anser" "1.4.9" 128 | "chalk" "4.0.0" 129 | "classnames" "2.2.6" 130 | "css.escape" "1.5.1" 131 | "data-uri-to-buffer" "3.0.1" 132 | "platform" "1.3.6" 133 | "shell-quote" "1.7.2" 134 | "source-map" "0.8.0-beta.0" 135 | "stacktrace-parser" "0.1.10" 136 | "strip-ansi" "6.0.0" 137 | 138 | "@next/react-refresh-utils@10.2.3": 139 | "integrity" "sha512-qtBF56vPC6d6a8p7LYd0iRjW89fhY80kAIzmj+VonvIGjK/nymBjcFUhbKiMFqlhsarCksnhwX+Zmn95Dw9qvA==" 140 | "resolved" "https://registry.npmjs.org/@next/react-refresh-utils/-/react-refresh-utils-10.2.3.tgz" 141 | "version" "10.2.3" 142 | 143 | "@opentelemetry/api@0.14.0": 144 | "integrity" "sha512-L7RMuZr5LzMmZiQSQDy9O1jo0q+DaLy6XpYJfIGfYSfoJA5qzYwUP3sP1uMIQ549DvxAgM3ng85EaPTM/hUHwQ==" 145 | "resolved" "https://registry.npmjs.org/@opentelemetry/api/-/api-0.14.0.tgz" 146 | "version" "0.14.0" 147 | dependencies: 148 | "@opentelemetry/context-base" "^0.14.0" 149 | 150 | "@opentelemetry/context-base@^0.14.0": 151 | "integrity" "sha512-sDOAZcYwynHFTbLo6n8kIbLiVF3a3BLkrmehJUyEbT9F+Smbi47kLGS2gG2g0fjBLR/Lr1InPD7kXL7FaTqEkw==" 152 | "resolved" "https://registry.npmjs.org/@opentelemetry/context-base/-/context-base-0.14.0.tgz" 153 | "version" "0.14.0" 154 | 155 | "@shopify/admin-graphql-api-utilities@^1.0.1": 156 | "integrity" "sha512-OrFBuoErgnh0SvhaT5sNVqoUbvLo6A5CJe5nv5ly7TyAgl/rRXDwAzMcZsqiQxxLFiB4q6En4HqaQI2UHyhtmw==" 157 | "resolved" "https://registry.npmjs.org/@shopify/admin-graphql-api-utilities/-/admin-graphql-api-utilities-1.0.1.tgz" 158 | "version" "1.0.1" 159 | 160 | "@shopify/app-bridge-react@^2.0.3": 161 | "integrity" "sha512-VpY3XD5bQ7pWfIdoyUWqyK5LUd8zRHdS3fpRiK9bXe2M7evLUom/NPhmscPD4zHpZxwVi5rukBB03XBS/I873A==" 162 | "resolved" "https://registry.npmjs.org/@shopify/app-bridge-react/-/app-bridge-react-2.0.3.tgz" 163 | "version" "2.0.3" 164 | dependencies: 165 | "@shopify/app-bridge" "^2.0.3" 166 | 167 | "@shopify/app-bridge-utils@^2.0.3": 168 | "integrity" "sha512-8dXmCBwSaV88O7gEJN+Jn1WuXut6b1GOq5QqgM+9BYALcTNvhMvH3PnUoBBfKpNDoMSPyrBPKAY0Kre9zMhjYA==" 169 | "resolved" "https://registry.npmjs.org/@shopify/app-bridge-utils/-/app-bridge-utils-2.0.3.tgz" 170 | "version" "2.0.3" 171 | dependencies: 172 | "@shopify/app-bridge" "^2.0.3" 173 | 174 | "@shopify/app-bridge@^2.0.3": 175 | "integrity" "sha512-qpf3O+rFXxD11zv7BSdpydfq712f1Ny4IHGm28+J1eC23GRul9UAYrAtjv5s72UhU++AtWNnYdXHDM/9MX8XHA==" 176 | "resolved" "https://registry.npmjs.org/@shopify/app-bridge/-/app-bridge-2.0.3.tgz" 177 | "version" "2.0.3" 178 | dependencies: 179 | "base64url" "^3.0.1" 180 | 181 | "@shopify/network@^1.5.1": 182 | "integrity" "sha512-V+//Et386LnYdtNhQ3e33AKYfU25XEt8H5XYeMqPvJZpVvC9Z1lHKQMpmM/zq13VXjPUjt9/sNxHxMP3I6cbJg==" 183 | "resolved" "https://registry.npmjs.org/@shopify/network/-/network-1.6.4.tgz" 184 | "version" "1.6.4" 185 | 186 | "@shopify/polaris-icons@^4.1.0": 187 | "integrity" "sha512-ATmB9cFohBoA+p2wumzg6Y9qk6hHibxIqjsJFSi0jWSIn3C8nmqkiCnMg5mJIyb8jWoSgpaqqeTNV57xD17yIQ==" 188 | "resolved" "https://registry.npmjs.org/@shopify/polaris-icons/-/polaris-icons-4.5.0.tgz" 189 | "version" "4.5.0" 190 | 191 | "@shopify/polaris-tokens@^3.0.0": 192 | "integrity" "sha512-SQPNtoevLxD3y1/nhXkthzhEyWAdi1+muxBn/DCHir1/+R/+1v/hkXDLG5o2X3jxqpnxd1R/rJVh9fMKmfWTyw==" 193 | "resolved" "https://registry.npmjs.org/@shopify/polaris-tokens/-/polaris-tokens-3.1.0.tgz" 194 | "version" "3.1.0" 195 | dependencies: 196 | "hsluv" "^0.1.0" 197 | "tslib" "^1.14.1" 198 | 199 | "@shopify/polaris@^6.5.0": 200 | "integrity" "sha512-IX+DrqvOlIXeP+ZZsxc8RZBSc1kbPvy2MrXHXldJV+AultuGVtra3T4reTY9A76TleL15XzPEh9Qdf08Gy66tQ==" 201 | "resolved" "https://registry.npmjs.org/@shopify/polaris/-/polaris-6.5.0.tgz" 202 | "version" "6.5.0" 203 | dependencies: 204 | "@shopify/polaris-icons" "^4.1.0" 205 | "@shopify/polaris-tokens" "^3.0.0" 206 | "@types/react" "^16.9.12" 207 | "@types/react-dom" "^16.9.4" 208 | "@types/react-transition-group" "^4.4.0" 209 | "focus-visible" "^5.2.0" 210 | "lodash" "^4.17.4" 211 | "react-transition-group" "^4.4.1" 212 | 213 | "@shopify/shopify-api@^1.4.1": 214 | "integrity" "sha512-aZhPRyPTZvTwIvsqodShVa02mwrz4P2ShpBnbbvp614eCJkYALRtXKNSmEPjoPnmKmYfKjFkz+fsVtzsKLgbow==" 215 | "resolved" "https://registry.npmjs.org/@shopify/shopify-api/-/shopify-api-1.4.1.tgz" 216 | "version" "1.4.1" 217 | dependencies: 218 | "@shopify/network" "^1.5.1" 219 | "@types/jsonwebtoken" "^8.5.0" 220 | "@types/node-fetch" "^2.5.7" 221 | "@types/supertest" "^2.0.10" 222 | "cookies" "^0.8.0" 223 | "jsonwebtoken" "^8.5.1" 224 | "node-fetch" "^2.6.1" 225 | "tslib" "^2.0.3" 226 | "uuid" "^8.3.1" 227 | 228 | "@types/cookiejar@*": 229 | "integrity" "sha512-t73xJJrvdTjXrn4jLS9VSGRbz0nUY3cl2DMGDU48lKl+HR9dbbjW2A9r3g40VA++mQpy6uuHg33gy7du2BKpog==" 230 | "resolved" "https://registry.npmjs.org/@types/cookiejar/-/cookiejar-2.1.2.tgz" 231 | "version" "2.1.2" 232 | 233 | "@types/jsonwebtoken@^8.5.0": 234 | "integrity" "sha512-rNAPdomlIUX0i0cg2+I+Q1wOUr531zHBQ+cV/28PJ39bSPKjahatZZ2LMuhiguETkCgLVzfruw/ZvNMNkKoSzw==" 235 | "resolved" "https://registry.npmjs.org/@types/jsonwebtoken/-/jsonwebtoken-8.5.1.tgz" 236 | "version" "8.5.1" 237 | dependencies: 238 | "@types/node" "*" 239 | 240 | "@types/node-fetch@^2.5.7": 241 | "integrity" "sha512-IpkX0AasN44hgEad0gEF/V6EgR5n69VEqPEgnmoM8GsIGro3PowbWs4tR6IhxUTyPLpOn+fiGG6nrQhcmoCuIQ==" 242 | "resolved" "https://registry.npmjs.org/@types/node-fetch/-/node-fetch-2.5.10.tgz" 243 | "version" "2.5.10" 244 | dependencies: 245 | "@types/node" "*" 246 | "form-data" "^3.0.0" 247 | 248 | "@types/node@*", "@types/node@>=6": 249 | "integrity" "sha512-zjQ69G564OCIWIOHSXyQEEDpdpGl+G348RAKY0XXy9Z5kU9Vzv1GMNnkar/ZJ8dzXB3COzD9Mo9NtRZ4xfgUww==" 250 | "resolved" "https://registry.npmjs.org/@types/node/-/node-15.12.2.tgz" 251 | "version" "15.12.2" 252 | 253 | "@types/prop-types@*": 254 | "integrity" "sha512-KfRL3PuHmqQLOG+2tGpRO26Ctg+Cq1E01D2DMriKEATHgWLfeNDmq9e29Q9WIky0dQ3NPkd1mzYH8Lm936Z9qw==" 255 | "resolved" "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.3.tgz" 256 | "version" "15.7.3" 257 | 258 | "@types/react-dom@^16.9.4": 259 | "integrity" "sha512-34Hr3XnmUSJbUVDxIw/e7dhQn2BJZhJmlAaPyPwfTQyuVS9mV/CeyghFcXyvkJXxI7notQJz8mF8FeCVvloJrA==" 260 | "resolved" "https://registry.npmjs.org/@types/react-dom/-/react-dom-16.9.13.tgz" 261 | "version" "16.9.13" 262 | dependencies: 263 | "@types/react" "^16" 264 | 265 | "@types/react-transition-group@^4.4.0": 266 | "integrity" "sha512-vIo69qKKcYoJ8wKCJjwSgCTM+z3chw3g18dkrDfVX665tMH7tmbDxEAnPdey4gTlwZz5QuHGzd+hul0OVZDqqQ==" 267 | "resolved" "https://registry.npmjs.org/@types/react-transition-group/-/react-transition-group-4.4.1.tgz" 268 | "version" "4.4.1" 269 | dependencies: 270 | "@types/react" "*" 271 | 272 | "@types/react@*", "@types/react@^16.8.0": 273 | "integrity" "sha512-yFRQbD+whVonItSk7ZzP/L+gPTJVBkL/7shLEF+i9GC/1cV3JmUxEQz6+9ylhUpWSDuqo1N9qEvqS6vTj4USUA==" 274 | "resolved" "https://registry.npmjs.org/@types/react/-/react-17.0.11.tgz" 275 | "version" "17.0.11" 276 | dependencies: 277 | "@types/prop-types" "*" 278 | "@types/scheduler" "*" 279 | "csstype" "^3.0.2" 280 | 281 | "@types/react@^16.9.12": 282 | "integrity" "sha512-QN0/Qhmx+l4moe7WJuTxNiTsjBwlBGHqKGvInSQCBdo7Qio0VtOqwsC0Wq7q3PbJlB0cR4Y4CVo1OOe6BOsOmA==" 283 | "resolved" "https://registry.npmjs.org/@types/react/-/react-16.14.8.tgz" 284 | "version" "16.14.8" 285 | dependencies: 286 | "@types/prop-types" "*" 287 | "@types/scheduler" "*" 288 | "csstype" "^3.0.2" 289 | 290 | "@types/react@^16": 291 | "integrity" "sha512-QN0/Qhmx+l4moe7WJuTxNiTsjBwlBGHqKGvInSQCBdo7Qio0VtOqwsC0Wq7q3PbJlB0cR4Y4CVo1OOe6BOsOmA==" 292 | "resolved" "https://registry.npmjs.org/@types/react/-/react-16.14.8.tgz" 293 | "version" "16.14.8" 294 | dependencies: 295 | "@types/prop-types" "*" 296 | "@types/scheduler" "*" 297 | "csstype" "^3.0.2" 298 | 299 | "@types/scheduler@*": 300 | "integrity" "sha512-EaCxbanVeyxDRTQBkdLb3Bvl/HK7PBK6UJjsSixB0iHKoWxE5uu2Q/DgtpOhPIojN0Zl1whvOd7PoHs2P0s5eA==" 301 | "resolved" "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.1.tgz" 302 | "version" "0.16.1" 303 | 304 | "@types/superagent@*": 305 | "integrity" "sha512-cZkWBXZI+jESnUTp8RDGBmk1Zn2MkScP4V5bjD7DyqB7L0WNWpblh4KX5K/6aTqxFZMhfo1bhi2cwoAEDVBBJw==" 306 | "resolved" "https://registry.npmjs.org/@types/superagent/-/superagent-4.1.11.tgz" 307 | "version" "4.1.11" 308 | dependencies: 309 | "@types/cookiejar" "*" 310 | "@types/node" "*" 311 | 312 | "@types/supertest@^2.0.10": 313 | "integrity" "sha512-uci4Esokrw9qGb9bvhhSVEjd6rkny/dk5PK/Qz4yxKiyppEI+dOPlNrZBahE3i+PoKFYyDxChVXZ/ysS/nrm1Q==" 314 | "resolved" "https://registry.npmjs.org/@types/supertest/-/supertest-2.0.11.tgz" 315 | "version" "2.0.11" 316 | dependencies: 317 | "@types/superagent" "*" 318 | 319 | "@types/zen-observable@^0.8.0": 320 | "integrity" "sha512-HrCIVMLjE1MOozVoD86622S7aunluLb2PJdPfb3nYiEtohm8mIB/vyv0Fd37AdeMFrTUQXEunw78YloMA3Qilg==" 321 | "resolved" "https://registry.npmjs.org/@types/zen-observable/-/zen-observable-0.8.2.tgz" 322 | "version" "0.8.2" 323 | 324 | "@wry/context@^0.4.0": 325 | "integrity" "sha512-LrKVLove/zw6h2Md/KZyWxIkFM6AoyKp71OqpH9Hiip1csjPVoD3tPxlbQUNxEnHENks3UGgNpSBCAfq9KWuag==" 326 | "resolved" "https://registry.npmjs.org/@wry/context/-/context-0.4.4.tgz" 327 | "version" "0.4.4" 328 | dependencies: 329 | "@types/node" ">=6" 330 | "tslib" "^1.9.3" 331 | 332 | "@wry/equality@^0.1.2", "@wry/equality@^0.1.9": 333 | "integrity" "sha512-mwEVBDUVODlsQQ5dfuLUS5/Tf7jqUKyhKYHmVi4fPB6bDMOfWvUPJmKgS1Z7Za/sOI3vzWt4+O7yCiL/70MogA==" 334 | "resolved" "https://registry.npmjs.org/@wry/equality/-/equality-0.1.11.tgz" 335 | "version" "0.1.11" 336 | dependencies: 337 | "tslib" "^1.9.3" 338 | 339 | "anser@1.4.9": 340 | "integrity" "sha512-AI+BjTeGt2+WFk4eWcqbQ7snZpDBt8SaLlj0RT2h5xfdWaiy51OjYvqwMrNzJLGy8iOAL6nKDITWO+rd4MkYEA==" 341 | "resolved" "https://registry.npmjs.org/anser/-/anser-1.4.9.tgz" 342 | "version" "1.4.9" 343 | 344 | "ansi-regex@^5.0.0": 345 | "integrity" "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==" 346 | "resolved" "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz" 347 | "version" "5.0.0" 348 | 349 | "ansi-styles@^3.2.1": 350 | "integrity" "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==" 351 | "resolved" "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz" 352 | "version" "3.2.1" 353 | dependencies: 354 | "color-convert" "^1.9.0" 355 | 356 | "ansi-styles@^4.1.0": 357 | "integrity" "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==" 358 | "resolved" "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz" 359 | "version" "4.3.0" 360 | dependencies: 361 | "color-convert" "^2.0.1" 362 | 363 | "anymatch@~3.1.1": 364 | "integrity" "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==" 365 | "resolved" "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz" 366 | "version" "3.1.2" 367 | dependencies: 368 | "normalize-path" "^3.0.0" 369 | "picomatch" "^2.0.4" 370 | 371 | "apollo-boost@^0.4.9": 372 | "integrity" "sha512-05y5BKcDaa8w47f8d81UVwKqrAjn8uKLv6QM9fNdldoNzQ+rnOHgFlnrySUZRz9QIT3vPftQkEz2UEASp1Mi5g==" 373 | "resolved" "https://registry.npmjs.org/apollo-boost/-/apollo-boost-0.4.9.tgz" 374 | "version" "0.4.9" 375 | dependencies: 376 | "apollo-cache" "^1.3.5" 377 | "apollo-cache-inmemory" "^1.6.6" 378 | "apollo-client" "^2.6.10" 379 | "apollo-link" "^1.0.6" 380 | "apollo-link-error" "^1.0.3" 381 | "apollo-link-http" "^1.3.1" 382 | "graphql-tag" "^2.4.2" 383 | "ts-invariant" "^0.4.0" 384 | "tslib" "^1.10.0" 385 | 386 | "apollo-cache-inmemory@^1.6.6": 387 | "integrity" "sha512-L8pToTW/+Xru2FFAhkZ1OA9q4V4nuvfoPecBM34DecAugUZEBhI2Hmpgnzq2hTKZ60LAMrlqiASm0aqAY6F8/A==" 388 | "resolved" "https://registry.npmjs.org/apollo-cache-inmemory/-/apollo-cache-inmemory-1.6.6.tgz" 389 | "version" "1.6.6" 390 | dependencies: 391 | "apollo-cache" "^1.3.5" 392 | "apollo-utilities" "^1.3.4" 393 | "optimism" "^0.10.0" 394 | "ts-invariant" "^0.4.0" 395 | "tslib" "^1.10.0" 396 | 397 | "apollo-cache@^1.3.2", "apollo-cache@^1.3.5", "apollo-cache@1.3.5": 398 | "integrity" "sha512-1XoDy8kJnyWY/i/+gLTEbYLnoiVtS8y7ikBr/IfmML4Qb+CM7dEEbIUOjnY716WqmZ/UpXIxTfJsY7rMcqiCXA==" 399 | "resolved" "https://registry.npmjs.org/apollo-cache/-/apollo-cache-1.3.5.tgz" 400 | "version" "1.3.5" 401 | dependencies: 402 | "apollo-utilities" "^1.3.4" 403 | "tslib" "^1.10.0" 404 | 405 | "apollo-client@^2.6.10", "apollo-client@^2.6.4": 406 | "integrity" "sha512-jiPlMTN6/5CjZpJOkGeUV0mb4zxx33uXWdj/xQCfAMkuNAC3HN7CvYDyMHHEzmcQ5GV12LszWoQ/VlxET24CtA==" 407 | "resolved" "https://registry.npmjs.org/apollo-client/-/apollo-client-2.6.10.tgz" 408 | "version" "2.6.10" 409 | dependencies: 410 | "@types/zen-observable" "^0.8.0" 411 | "apollo-cache" "1.3.5" 412 | "apollo-link" "^1.0.0" 413 | "apollo-utilities" "1.3.4" 414 | "symbol-observable" "^1.0.2" 415 | "ts-invariant" "^0.4.0" 416 | "tslib" "^1.10.0" 417 | "zen-observable" "^0.8.0" 418 | 419 | "apollo-link-error@^1.0.3": 420 | "integrity" "sha512-jAZOOahJU6bwSqb2ZyskEK1XdgUY9nkmeclCrW7Gddh1uasHVqmoYc4CKdb0/H0Y1J9lvaXKle2Wsw/Zx1AyUg==" 421 | "resolved" "https://registry.npmjs.org/apollo-link-error/-/apollo-link-error-1.1.13.tgz" 422 | "version" "1.1.13" 423 | dependencies: 424 | "apollo-link" "^1.2.14" 425 | "apollo-link-http-common" "^0.2.16" 426 | "tslib" "^1.9.3" 427 | 428 | "apollo-link-http-common@^0.2.16": 429 | "integrity" "sha512-2tIhOIrnaF4UbQHf7kjeQA/EmSorB7+HyJIIrUjJOKBgnXwuexi8aMecRlqTIDWcyVXCeqLhUnztMa6bOH/jTg==" 430 | "resolved" "https://registry.npmjs.org/apollo-link-http-common/-/apollo-link-http-common-0.2.16.tgz" 431 | "version" "0.2.16" 432 | dependencies: 433 | "apollo-link" "^1.2.14" 434 | "ts-invariant" "^0.4.0" 435 | "tslib" "^1.9.3" 436 | 437 | "apollo-link-http@^1.3.1": 438 | "integrity" "sha512-uWcqAotbwDEU/9+Dm9e1/clO7hTB2kQ/94JYcGouBVLjoKmTeJTUPQKcJGpPwUjZcSqgYicbFqQSoJIW0yrFvg==" 439 | "resolved" "https://registry.npmjs.org/apollo-link-http/-/apollo-link-http-1.5.17.tgz" 440 | "version" "1.5.17" 441 | dependencies: 442 | "apollo-link" "^1.2.14" 443 | "apollo-link-http-common" "^0.2.16" 444 | "tslib" "^1.9.3" 445 | 446 | "apollo-link@^1.0.0", "apollo-link@^1.0.6", "apollo-link@^1.2.12", "apollo-link@^1.2.14": 447 | "integrity" "sha512-p67CMEFP7kOG1JZ0ZkYZwRDa369w5PIjtMjvrQd/HnIV8FRsHRqLqK+oAZQnFa1DDdZtOtHTi+aMIW6EatC2jg==" 448 | "resolved" "https://registry.npmjs.org/apollo-link/-/apollo-link-1.2.14.tgz" 449 | "version" "1.2.14" 450 | dependencies: 451 | "apollo-utilities" "^1.3.0" 452 | "ts-invariant" "^0.4.0" 453 | "tslib" "^1.9.3" 454 | "zen-observable-ts" "^0.8.21" 455 | 456 | "apollo-utilities@^1.3.0", "apollo-utilities@^1.3.2", "apollo-utilities@^1.3.4", "apollo-utilities@1.3.4": 457 | "integrity" "sha512-pk2hiWrCXMAy2fRPwEyhvka+mqwzeP60Jr1tRYi5xru+3ko94HI9o6lK0CT33/w4RDlxWchmdhDCrvdr+pHCig==" 458 | "resolved" "https://registry.npmjs.org/apollo-utilities/-/apollo-utilities-1.3.4.tgz" 459 | "version" "1.3.4" 460 | dependencies: 461 | "@wry/equality" "^0.1.2" 462 | "fast-json-stable-stringify" "^2.0.0" 463 | "ts-invariant" "^0.4.0" 464 | "tslib" "^1.10.0" 465 | 466 | "asn1.js@^5.2.0": 467 | "integrity" "sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==" 468 | "resolved" "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz" 469 | "version" "5.4.1" 470 | dependencies: 471 | "bn.js" "^4.0.0" 472 | "inherits" "^2.0.1" 473 | "minimalistic-assert" "^1.0.0" 474 | "safer-buffer" "^2.1.0" 475 | 476 | "assert@^1.1.1": 477 | "integrity" "sha512-EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA==" 478 | "resolved" "https://registry.npmjs.org/assert/-/assert-1.5.0.tgz" 479 | "version" "1.5.0" 480 | dependencies: 481 | "object-assign" "^4.1.1" 482 | "util" "0.10.3" 483 | 484 | "assert@2.0.0": 485 | "integrity" "sha512-se5Cd+js9dXJnu6Ag2JFc00t+HmHOen+8Q+L7O9zI0PqQXr20uk2J0XQqMxZEeo5U50o8Nvmmx7dZrl+Ufr35A==" 486 | "resolved" "https://registry.npmjs.org/assert/-/assert-2.0.0.tgz" 487 | "version" "2.0.0" 488 | dependencies: 489 | "es6-object-assign" "^1.1.0" 490 | "is-nan" "^1.2.1" 491 | "object-is" "^1.0.1" 492 | "util" "^0.12.0" 493 | 494 | "ast-types@0.13.2": 495 | "integrity" "sha512-uWMHxJxtfj/1oZClOxDEV1sQ1HCDkA4MG8Gr69KKeBjEVH0R84WlejZ0y2DcwyBlpAEMltmVYkVgqfLFb2oyiA==" 496 | "resolved" "https://registry.npmjs.org/ast-types/-/ast-types-0.13.2.tgz" 497 | "version" "0.13.2" 498 | 499 | "asynckit@^0.4.0": 500 | "integrity" "sha1-x57Zf380y48robyXkLzDZkdLS3k=" 501 | "resolved" "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz" 502 | "version" "0.4.0" 503 | 504 | "available-typed-arrays@^1.0.2": 505 | "integrity" "sha512-SA5mXJWrId1TaQjfxUYghbqQ/hYioKmLJvPJyDuYRtXXenFNMjj4hSSt1Cf1xsuXSXrtxrVC5Ot4eU6cOtBDdA==" 506 | "resolved" "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.4.tgz" 507 | "version" "1.0.4" 508 | 509 | "babel-plugin-syntax-jsx@6.18.0": 510 | "integrity" "sha1-CvMqmm4Tyno/1QaeYtew9Y0NiUY=" 511 | "resolved" "https://registry.npmjs.org/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz" 512 | "version" "6.18.0" 513 | 514 | "base64-js@^1.0.2": 515 | "integrity" "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==" 516 | "resolved" "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz" 517 | "version" "1.5.1" 518 | 519 | "base64url@^3.0.1": 520 | "integrity" "sha512-ir1UPr3dkwexU7FdV8qBBbNDRUhMmIekYMFZfi+C/sLNnRESKPl23nB9b2pltqfOQNnGzsDdId90AEtG5tCx4A==" 521 | "resolved" "https://registry.npmjs.org/base64url/-/base64url-3.0.1.tgz" 522 | "version" "3.0.1" 523 | 524 | "big.js@^5.2.2": 525 | "integrity" "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==" 526 | "resolved" "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz" 527 | "version" "5.2.2" 528 | 529 | "binary-extensions@^2.0.0": 530 | "integrity" "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==" 531 | "resolved" "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz" 532 | "version" "2.2.0" 533 | 534 | "bn.js@^4.0.0": 535 | "integrity" "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" 536 | "resolved" "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz" 537 | "version" "4.12.0" 538 | 539 | "bn.js@^4.1.0": 540 | "integrity" "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" 541 | "resolved" "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz" 542 | "version" "4.12.0" 543 | 544 | "bn.js@^4.11.9": 545 | "integrity" "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" 546 | "resolved" "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz" 547 | "version" "4.12.0" 548 | 549 | "bn.js@^5.0.0", "bn.js@^5.1.1": 550 | "integrity" "sha512-D7iWRBvnZE8ecXiLj/9wbxH7Tk79fAh8IHaTNq1RWRixsS02W+5qS+iE9yq6RYl0asXx5tw0bLhmT5pIfbSquw==" 551 | "resolved" "https://registry.npmjs.org/bn.js/-/bn.js-5.2.0.tgz" 552 | "version" "5.2.0" 553 | 554 | "braces@~3.0.2": 555 | "integrity" "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==" 556 | "resolved" "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz" 557 | "version" "3.0.2" 558 | dependencies: 559 | "fill-range" "^7.0.1" 560 | 561 | "brorand@^1.0.1", "brorand@^1.1.0": 562 | "integrity" "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=" 563 | "resolved" "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz" 564 | "version" "1.1.0" 565 | 566 | "browserify-aes@^1.0.0", "browserify-aes@^1.0.4": 567 | "integrity" "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==" 568 | "resolved" "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz" 569 | "version" "1.2.0" 570 | dependencies: 571 | "buffer-xor" "^1.0.3" 572 | "cipher-base" "^1.0.0" 573 | "create-hash" "^1.1.0" 574 | "evp_bytestokey" "^1.0.3" 575 | "inherits" "^2.0.1" 576 | "safe-buffer" "^5.0.1" 577 | 578 | "browserify-cipher@^1.0.0": 579 | "integrity" "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==" 580 | "resolved" "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz" 581 | "version" "1.0.1" 582 | dependencies: 583 | "browserify-aes" "^1.0.4" 584 | "browserify-des" "^1.0.0" 585 | "evp_bytestokey" "^1.0.0" 586 | 587 | "browserify-des@^1.0.0": 588 | "integrity" "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==" 589 | "resolved" "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz" 590 | "version" "1.0.2" 591 | dependencies: 592 | "cipher-base" "^1.0.1" 593 | "des.js" "^1.0.0" 594 | "inherits" "^2.0.1" 595 | "safe-buffer" "^5.1.2" 596 | 597 | "browserify-rsa@^4.0.0", "browserify-rsa@^4.0.1": 598 | "integrity" "sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog==" 599 | "resolved" "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.1.0.tgz" 600 | "version" "4.1.0" 601 | dependencies: 602 | "bn.js" "^5.0.0" 603 | "randombytes" "^2.0.1" 604 | 605 | "browserify-sign@^4.0.0": 606 | "integrity" "sha512-/vrA5fguVAKKAVTNJjgSm1tRQDHUU6DbwO9IROu/0WAzC8PKhucDSh18J0RMvVeHAn5puMd+QHC2erPRNf8lmg==" 607 | "resolved" "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.1.tgz" 608 | "version" "4.2.1" 609 | dependencies: 610 | "bn.js" "^5.1.1" 611 | "browserify-rsa" "^4.0.1" 612 | "create-hash" "^1.2.0" 613 | "create-hmac" "^1.1.7" 614 | "elliptic" "^6.5.3" 615 | "inherits" "^2.0.4" 616 | "parse-asn1" "^5.1.5" 617 | "readable-stream" "^3.6.0" 618 | "safe-buffer" "^5.2.0" 619 | 620 | "browserify-zlib@^0.2.0", "browserify-zlib@0.2.0": 621 | "integrity" "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==" 622 | "resolved" "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz" 623 | "version" "0.2.0" 624 | dependencies: 625 | "pako" "~1.0.5" 626 | 627 | "browserslist@4.16.6": 628 | "integrity" "sha512-Wspk/PqO+4W9qp5iUTJsa1B/QrYn1keNCcEP5OvP7WBwT4KaDly0uONYmC6Xa3Z5IqnUgS0KcgLYu1l74x0ZXQ==" 629 | "resolved" "https://registry.npmjs.org/browserslist/-/browserslist-4.16.6.tgz" 630 | "version" "4.16.6" 631 | dependencies: 632 | "caniuse-lite" "^1.0.30001219" 633 | "colorette" "^1.2.2" 634 | "electron-to-chromium" "^1.3.723" 635 | "escalade" "^3.1.1" 636 | "node-releases" "^1.1.71" 637 | 638 | "buffer-equal-constant-time@1.0.1": 639 | "integrity" "sha1-+OcRMvf/5uAaXJaXpMbz5I1cyBk=" 640 | "resolved" "https://registry.npmjs.org/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz" 641 | "version" "1.0.1" 642 | 643 | "buffer-xor@^1.0.3": 644 | "integrity" "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=" 645 | "resolved" "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz" 646 | "version" "1.0.3" 647 | 648 | "buffer@^4.3.0": 649 | "integrity" "sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg==" 650 | "resolved" "https://registry.npmjs.org/buffer/-/buffer-4.9.2.tgz" 651 | "version" "4.9.2" 652 | dependencies: 653 | "base64-js" "^1.0.2" 654 | "ieee754" "^1.1.4" 655 | "isarray" "^1.0.0" 656 | 657 | "buffer@5.6.0": 658 | "integrity" "sha512-/gDYp/UtU0eA1ys8bOs9J6a+E/KWIY+DZ+Q2WESNUA0jFRsJOc0SNUO6xJ5SGA1xueg3NL65W6s+NY5l9cunuw==" 659 | "resolved" "https://registry.npmjs.org/buffer/-/buffer-5.6.0.tgz" 660 | "version" "5.6.0" 661 | dependencies: 662 | "base64-js" "^1.0.2" 663 | "ieee754" "^1.1.4" 664 | 665 | "builtin-status-codes@^3.0.0": 666 | "integrity" "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=" 667 | "resolved" "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz" 668 | "version" "3.0.0" 669 | 670 | "bytes@3.1.0": 671 | "integrity" "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==" 672 | "resolved" "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz" 673 | "version" "3.1.0" 674 | 675 | "call-bind@^1.0.0", "call-bind@^1.0.2": 676 | "integrity" "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==" 677 | "resolved" "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz" 678 | "version" "1.0.2" 679 | dependencies: 680 | "function-bind" "^1.1.1" 681 | "get-intrinsic" "^1.0.2" 682 | 683 | "caniuse-lite@^1.0.30001202", "caniuse-lite@^1.0.30001219", "caniuse-lite@^1.0.30001228": 684 | "integrity" "sha512-zWEwIVqnzPkSAXOUlQnPW2oKoYb2aLQ4Q5ejdjBcnH63rfypaW34CxaeBn1VMya2XaEU3P/R2qHpWyj+l0BT1A==" 685 | "resolved" "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001235.tgz" 686 | "version" "1.0.30001235" 687 | 688 | "chalk@^2.0.0", "chalk@2.4.2": 689 | "integrity" "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==" 690 | "resolved" "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz" 691 | "version" "2.4.2" 692 | dependencies: 693 | "ansi-styles" "^3.2.1" 694 | "escape-string-regexp" "^1.0.5" 695 | "supports-color" "^5.3.0" 696 | 697 | "chalk@4.0.0": 698 | "integrity" "sha512-N9oWFcegS0sFr9oh1oz2d7Npos6vNoWW9HvtCg5N1KRFpUhaAhvTv5Y58g880fZaEYSNm3qDz8SU1UrGvp+n7A==" 699 | "resolved" "https://registry.npmjs.org/chalk/-/chalk-4.0.0.tgz" 700 | "version" "4.0.0" 701 | dependencies: 702 | "ansi-styles" "^4.1.0" 703 | "supports-color" "^7.1.0" 704 | 705 | "chokidar@3.5.1": 706 | "integrity" "sha512-9+s+Od+W0VJJzawDma/gvBNQqkTiqYTWLuZoyAsivsI4AaWTCzHG06/TMjsf1cYe9Cb97UCEhjz7HvnPk2p/tw==" 707 | "resolved" "https://registry.npmjs.org/chokidar/-/chokidar-3.5.1.tgz" 708 | "version" "3.5.1" 709 | dependencies: 710 | "anymatch" "~3.1.1" 711 | "braces" "~3.0.2" 712 | "glob-parent" "~5.1.0" 713 | "is-binary-path" "~2.1.0" 714 | "is-glob" "~4.0.1" 715 | "normalize-path" "~3.0.0" 716 | "readdirp" "~3.5.0" 717 | optionalDependencies: 718 | "fsevents" "~2.3.1" 719 | 720 | "cipher-base@^1.0.0", "cipher-base@^1.0.1", "cipher-base@^1.0.3": 721 | "integrity" "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==" 722 | "resolved" "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz" 723 | "version" "1.0.4" 724 | dependencies: 725 | "inherits" "^2.0.1" 726 | "safe-buffer" "^5.0.1" 727 | 728 | "classnames@2.2.6": 729 | "integrity" "sha512-JR/iSQOSt+LQIWwrwEzJ9uk0xfN3mTVYMwt1Ir5mUcSN6pU+V4zQFFaJsclJbPuAUQH+yfWef6tm7l1quW3C8Q==" 730 | "resolved" "https://registry.npmjs.org/classnames/-/classnames-2.2.6.tgz" 731 | "version" "2.2.6" 732 | 733 | "cluster-key-slot@^1.1.0": 734 | "integrity" "sha512-2Nii8p3RwAPiFwsnZvukotvow2rIHM+yQ6ZcBXGHdniadkYGZYiGmkHJIbZPIV9nfv7m/U1IPMVVcAhoWFeklw==" 735 | "resolved" "https://registry.npmjs.org/cluster-key-slot/-/cluster-key-slot-1.1.0.tgz" 736 | "version" "1.1.0" 737 | 738 | "color-convert@^1.9.0": 739 | "integrity" "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==" 740 | "resolved" "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz" 741 | "version" "1.9.3" 742 | dependencies: 743 | "color-name" "1.1.3" 744 | 745 | "color-convert@^2.0.1": 746 | "integrity" "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==" 747 | "resolved" "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz" 748 | "version" "2.0.1" 749 | dependencies: 750 | "color-name" "~1.1.4" 751 | 752 | "color-name@~1.1.4": 753 | "integrity" "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" 754 | "resolved" "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz" 755 | "version" "1.1.4" 756 | 757 | "color-name@1.1.3": 758 | "integrity" "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" 759 | "resolved" "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz" 760 | "version" "1.1.3" 761 | 762 | "colorette@^1.2.2": 763 | "integrity" "sha512-MKGMzyfeuutC/ZJ1cba9NqcNpfeqMUcYmyF1ZFY6/Cn7CNSAKx6a+s48sqLqyAiZuaP2TcqMhoo+dlwFnVxT9w==" 764 | "resolved" "https://registry.npmjs.org/colorette/-/colorette-1.2.2.tgz" 765 | "version" "1.2.2" 766 | 767 | "combined-stream@^1.0.8": 768 | "integrity" "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==" 769 | "resolved" "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz" 770 | "version" "1.0.8" 771 | dependencies: 772 | "delayed-stream" "~1.0.0" 773 | 774 | "commondir@^1.0.1": 775 | "integrity" "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=" 776 | "resolved" "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz" 777 | "version" "1.0.1" 778 | 779 | "console-browserify@^1.1.0": 780 | "integrity" "sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==" 781 | "resolved" "https://registry.npmjs.org/console-browserify/-/console-browserify-1.2.0.tgz" 782 | "version" "1.2.0" 783 | 784 | "constants-browserify@^1.0.0", "constants-browserify@1.0.0": 785 | "integrity" "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=" 786 | "resolved" "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz" 787 | "version" "1.0.0" 788 | 789 | "convert-source-map@1.7.0": 790 | "integrity" "sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==" 791 | "resolved" "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz" 792 | "version" "1.7.0" 793 | dependencies: 794 | "safe-buffer" "~5.1.1" 795 | 796 | "cookies@^0.8.0": 797 | "integrity" "sha512-8aPsApQfebXnuI+537McwYsDtjVxGm8gTIzQI3FDW6t5t/DAhERxtnbEPN/8RX+uZthoz4eCOgloXaE5cYyNow==" 798 | "resolved" "https://registry.npmjs.org/cookies/-/cookies-0.8.0.tgz" 799 | "version" "0.8.0" 800 | dependencies: 801 | "depd" "~2.0.0" 802 | "keygrip" "~1.1.0" 803 | 804 | "core-util-is@~1.0.0": 805 | "integrity" "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" 806 | "resolved" "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz" 807 | "version" "1.0.2" 808 | 809 | "create-ecdh@^4.0.0": 810 | "integrity" "sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==" 811 | "resolved" "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.4.tgz" 812 | "version" "4.0.4" 813 | dependencies: 814 | "bn.js" "^4.1.0" 815 | "elliptic" "^6.5.3" 816 | 817 | "create-hash@^1.1.0", "create-hash@^1.1.2", "create-hash@^1.2.0": 818 | "integrity" "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==" 819 | "resolved" "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz" 820 | "version" "1.2.0" 821 | dependencies: 822 | "cipher-base" "^1.0.1" 823 | "inherits" "^2.0.1" 824 | "md5.js" "^1.3.4" 825 | "ripemd160" "^2.0.1" 826 | "sha.js" "^2.4.0" 827 | 828 | "create-hmac@^1.1.0", "create-hmac@^1.1.4", "create-hmac@^1.1.7": 829 | "integrity" "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==" 830 | "resolved" "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz" 831 | "version" "1.1.7" 832 | dependencies: 833 | "cipher-base" "^1.0.3" 834 | "create-hash" "^1.1.0" 835 | "inherits" "^2.0.1" 836 | "ripemd160" "^2.0.0" 837 | "safe-buffer" "^5.0.1" 838 | "sha.js" "^2.4.8" 839 | 840 | "crypto-browserify@^3.11.0", "crypto-browserify@3.12.0": 841 | "integrity" "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==" 842 | "resolved" "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz" 843 | "version" "3.12.0" 844 | dependencies: 845 | "browserify-cipher" "^1.0.0" 846 | "browserify-sign" "^4.0.0" 847 | "create-ecdh" "^4.0.0" 848 | "create-hash" "^1.1.0" 849 | "create-hmac" "^1.1.0" 850 | "diffie-hellman" "^5.0.0" 851 | "inherits" "^2.0.1" 852 | "pbkdf2" "^3.0.3" 853 | "public-encrypt" "^4.0.0" 854 | "randombytes" "^2.0.0" 855 | "randomfill" "^1.0.3" 856 | 857 | "css.escape@1.5.1": 858 | "integrity" "sha1-QuJ9T6BK4y+TGktNQZH6nN3ul8s=" 859 | "resolved" "https://registry.npmjs.org/css.escape/-/css.escape-1.5.1.tgz" 860 | "version" "1.5.1" 861 | 862 | "cssnano-preset-simple@^2.0.0": 863 | "integrity" "sha512-HkufSLkaBJbKBFx/7aj5HmCK9Ni/JedRQm0mT2qBzMG/dEuJOLnMt2lK6K1rwOOyV4j9aSY+knbW9WoS7BYpzg==" 864 | "resolved" "https://registry.npmjs.org/cssnano-preset-simple/-/cssnano-preset-simple-2.0.0.tgz" 865 | "version" "2.0.0" 866 | dependencies: 867 | "caniuse-lite" "^1.0.30001202" 868 | 869 | "cssnano-simple@2.0.0": 870 | "integrity" "sha512-0G3TXaFxlh/szPEG/o3VcmCwl0N3E60XNb9YZZijew5eIs6fLjJuOPxQd9yEBaX2p/YfJtt49i4vYi38iH6/6w==" 871 | "resolved" "https://registry.npmjs.org/cssnano-simple/-/cssnano-simple-2.0.0.tgz" 872 | "version" "2.0.0" 873 | dependencies: 874 | "cssnano-preset-simple" "^2.0.0" 875 | 876 | "csstype@^3.0.2": 877 | "integrity" "sha512-jXKhWqXPmlUeoQnF/EhTtTl4C9SnrxSH/jZUih3jmO6lBKr99rP3/+FmrMj4EFpOXzMtXHAZkd3x0E6h6Fgflw==" 878 | "resolved" "https://registry.npmjs.org/csstype/-/csstype-3.0.8.tgz" 879 | "version" "3.0.8" 880 | 881 | "data-uri-to-buffer@3.0.1": 882 | "integrity" "sha512-WboRycPNsVw3B3TL559F7kuBUM4d8CgMEvk6xEJlOp7OBPjt6G7z8WMWlD2rOFZLk6OYfFIUGsCOWzcQH9K2og==" 883 | "resolved" "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-3.0.1.tgz" 884 | "version" "3.0.1" 885 | 886 | "debug@^4.3.1": 887 | "integrity" "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==" 888 | "resolved" "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz" 889 | "version" "4.3.1" 890 | dependencies: 891 | "ms" "2.1.2" 892 | 893 | "debug@2": 894 | "integrity" "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==" 895 | "resolved" "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz" 896 | "version" "2.6.9" 897 | dependencies: 898 | "ms" "2.0.0" 899 | 900 | "define-properties@^1.1.3": 901 | "integrity" "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==" 902 | "resolved" "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz" 903 | "version" "1.1.3" 904 | dependencies: 905 | "object-keys" "^1.0.12" 906 | 907 | "delayed-stream@~1.0.0": 908 | "integrity" "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" 909 | "resolved" "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz" 910 | "version" "1.0.0" 911 | 912 | "denque@^1.1.0": 913 | "integrity" "sha512-CYiCSgIF1p6EUByQPlGkKnP1M9g0ZV3qMIrqMqZqdwazygIA/YP2vrbcyl1h/WppKJTdl1F85cXIle+394iDAQ==" 914 | "resolved" "https://registry.npmjs.org/denque/-/denque-1.5.0.tgz" 915 | "version" "1.5.0" 916 | 917 | "depd@~1.1.2": 918 | "integrity" "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=" 919 | "resolved" "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz" 920 | "version" "1.1.2" 921 | 922 | "depd@~2.0.0": 923 | "integrity" "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==" 924 | "resolved" "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz" 925 | "version" "2.0.0" 926 | 927 | "des.js@^1.0.0": 928 | "integrity" "sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==" 929 | "resolved" "https://registry.npmjs.org/des.js/-/des.js-1.0.1.tgz" 930 | "version" "1.0.1" 931 | dependencies: 932 | "inherits" "^2.0.1" 933 | "minimalistic-assert" "^1.0.0" 934 | 935 | "diffie-hellman@^5.0.0": 936 | "integrity" "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==" 937 | "resolved" "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz" 938 | "version" "5.0.3" 939 | dependencies: 940 | "bn.js" "^4.1.0" 941 | "miller-rabin" "^4.0.0" 942 | "randombytes" "^2.0.0" 943 | 944 | "dom-helpers@^5.0.1": 945 | "integrity" "sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA==" 946 | "resolved" "https://registry.npmjs.org/dom-helpers/-/dom-helpers-5.2.1.tgz" 947 | "version" "5.2.1" 948 | dependencies: 949 | "@babel/runtime" "^7.8.7" 950 | "csstype" "^3.0.2" 951 | 952 | "domain-browser@^1.1.1": 953 | "integrity" "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==" 954 | "resolved" "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz" 955 | "version" "1.2.0" 956 | 957 | "domain-browser@4.19.0": 958 | "integrity" "sha512-fRA+BaAWOR/yr/t7T9E9GJztHPeFjj8U35ajyAjCDtAAnTn1Rc1f6W6VGPJrO1tkQv9zWu+JRof7z6oQtiYVFQ==" 959 | "resolved" "https://registry.npmjs.org/domain-browser/-/domain-browser-4.19.0.tgz" 960 | "version" "4.19.0" 961 | 962 | "ecdsa-sig-formatter@1.0.11": 963 | "integrity" "sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ==" 964 | "resolved" "https://registry.npmjs.org/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.11.tgz" 965 | "version" "1.0.11" 966 | dependencies: 967 | "safe-buffer" "^5.0.1" 968 | 969 | "electron-to-chromium@^1.3.723": 970 | "integrity" "sha512-Eqy9eHNepZxJXT+Pc5++zvEi5nQ6AGikwFYDCYwXUFBr+ynJ6pDG7MzZmwGYCIuXShLJM0n4bq+aoKDmvSGJ8A==" 971 | "resolved" "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.750.tgz" 972 | "version" "1.3.750" 973 | 974 | "elliptic@^6.5.3": 975 | "integrity" "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==" 976 | "resolved" "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz" 977 | "version" "6.5.4" 978 | dependencies: 979 | "bn.js" "^4.11.9" 980 | "brorand" "^1.1.0" 981 | "hash.js" "^1.0.0" 982 | "hmac-drbg" "^1.0.1" 983 | "inherits" "^2.0.4" 984 | "minimalistic-assert" "^1.0.1" 985 | "minimalistic-crypto-utils" "^1.0.1" 986 | 987 | "emojis-list@^2.0.0": 988 | "integrity" "sha1-TapNnbAPmBmIDHn6RXrlsJof04k=" 989 | "resolved" "https://registry.npmjs.org/emojis-list/-/emojis-list-2.1.0.tgz" 990 | "version" "2.1.0" 991 | 992 | "encoding@0.1.13": 993 | "integrity" "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==" 994 | "resolved" "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz" 995 | "version" "0.1.13" 996 | dependencies: 997 | "iconv-lite" "^0.6.2" 998 | 999 | "es-abstract@^1.18.0-next.1", "es-abstract@^1.18.0-next.2": 1000 | "integrity" "sha512-nQIr12dxV7SSxE6r6f1l3DtAeEYdsGpps13dR0TwJg1S8gyp4ZPgy3FZcHBgbiQqnoqSTb+oC+kO4UQ0C/J8vw==" 1001 | "resolved" "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.3.tgz" 1002 | "version" "1.18.3" 1003 | dependencies: 1004 | "call-bind" "^1.0.2" 1005 | "es-to-primitive" "^1.2.1" 1006 | "function-bind" "^1.1.1" 1007 | "get-intrinsic" "^1.1.1" 1008 | "has" "^1.0.3" 1009 | "has-symbols" "^1.0.2" 1010 | "is-callable" "^1.2.3" 1011 | "is-negative-zero" "^2.0.1" 1012 | "is-regex" "^1.1.3" 1013 | "is-string" "^1.0.6" 1014 | "object-inspect" "^1.10.3" 1015 | "object-keys" "^1.1.1" 1016 | "object.assign" "^4.1.2" 1017 | "string.prototype.trimend" "^1.0.4" 1018 | "string.prototype.trimstart" "^1.0.4" 1019 | "unbox-primitive" "^1.0.1" 1020 | 1021 | "es-to-primitive@^1.2.1": 1022 | "integrity" "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==" 1023 | "resolved" "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz" 1024 | "version" "1.2.1" 1025 | dependencies: 1026 | "is-callable" "^1.1.4" 1027 | "is-date-object" "^1.0.1" 1028 | "is-symbol" "^1.0.2" 1029 | 1030 | "es6-object-assign@^1.1.0": 1031 | "integrity" "sha1-wsNYJlYkfDnqEHyx5mUrb58kUjw=" 1032 | "resolved" "https://registry.npmjs.org/es6-object-assign/-/es6-object-assign-1.1.0.tgz" 1033 | "version" "1.1.0" 1034 | 1035 | "escalade@^3.1.1": 1036 | "integrity" "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==" 1037 | "resolved" "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz" 1038 | "version" "3.1.1" 1039 | 1040 | "escape-string-regexp@^1.0.5": 1041 | "integrity" "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" 1042 | "resolved" "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz" 1043 | "version" "1.0.5" 1044 | 1045 | "esutils@^2.0.2": 1046 | "integrity" "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==" 1047 | "resolved" "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz" 1048 | "version" "2.0.3" 1049 | 1050 | "etag@1.8.1": 1051 | "integrity" "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=" 1052 | "resolved" "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz" 1053 | "version" "1.8.1" 1054 | 1055 | "events@^3.0.0": 1056 | "integrity" "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==" 1057 | "resolved" "https://registry.npmjs.org/events/-/events-3.3.0.tgz" 1058 | "version" "3.3.0" 1059 | 1060 | "evp_bytestokey@^1.0.0", "evp_bytestokey@^1.0.3": 1061 | "integrity" "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==" 1062 | "resolved" "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz" 1063 | "version" "1.0.3" 1064 | dependencies: 1065 | "md5.js" "^1.3.4" 1066 | "safe-buffer" "^5.1.1" 1067 | 1068 | "fast-json-stable-stringify@^2.0.0": 1069 | "integrity" "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==" 1070 | "resolved" "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz" 1071 | "version" "2.1.0" 1072 | 1073 | "fill-range@^7.0.1": 1074 | "integrity" "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==" 1075 | "resolved" "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz" 1076 | "version" "7.0.1" 1077 | dependencies: 1078 | "to-regex-range" "^5.0.1" 1079 | 1080 | "find-cache-dir@3.3.1": 1081 | "integrity" "sha512-t2GDMt3oGC/v+BMwzmllWDuJF/xcDtE5j/fCGbqDD7OLuJkj0cfh1YSA5VKPvwMeLFLNDBkwOKZ2X85jGLVftQ==" 1082 | "resolved" "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.1.tgz" 1083 | "version" "3.3.1" 1084 | dependencies: 1085 | "commondir" "^1.0.1" 1086 | "make-dir" "^3.0.2" 1087 | "pkg-dir" "^4.1.0" 1088 | 1089 | "find-up@^4.0.0": 1090 | "integrity" "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==" 1091 | "resolved" "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz" 1092 | "version" "4.1.0" 1093 | dependencies: 1094 | "locate-path" "^5.0.0" 1095 | "path-exists" "^4.0.0" 1096 | 1097 | "focus-visible@^5.2.0": 1098 | "integrity" "sha512-Rwix9pBtC1Nuy5wysTmKy+UjbDJpIfg8eHjw0rjZ1mX4GNLz1Bmd16uDpI3Gk1i70Fgcs8Csg2lPm8HULFg9DQ==" 1099 | "resolved" "https://registry.npmjs.org/focus-visible/-/focus-visible-5.2.0.tgz" 1100 | "version" "5.2.0" 1101 | 1102 | "foreach@^2.0.5": 1103 | "integrity" "sha1-C+4AUBiusmDQo6865ljdATbsG5k=" 1104 | "resolved" "https://registry.npmjs.org/foreach/-/foreach-2.0.5.tgz" 1105 | "version" "2.0.5" 1106 | 1107 | "form-data@^3.0.0": 1108 | "integrity" "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==" 1109 | "resolved" "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz" 1110 | "version" "3.0.1" 1111 | dependencies: 1112 | "asynckit" "^0.4.0" 1113 | "combined-stream" "^1.0.8" 1114 | "mime-types" "^2.1.12" 1115 | 1116 | "fsevents@~2.3.1": 1117 | "integrity" "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==" 1118 | "resolved" "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz" 1119 | "version" "2.3.2" 1120 | 1121 | "function-bind@^1.1.1": 1122 | "integrity" "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" 1123 | "resolved" "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz" 1124 | "version" "1.1.1" 1125 | 1126 | "get-intrinsic@^1.0.2", "get-intrinsic@^1.1.1": 1127 | "integrity" "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==" 1128 | "resolved" "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz" 1129 | "version" "1.1.1" 1130 | dependencies: 1131 | "function-bind" "^1.1.1" 1132 | "has" "^1.0.3" 1133 | "has-symbols" "^1.0.1" 1134 | 1135 | "get-orientation@1.1.2": 1136 | "integrity" "sha512-/pViTfifW+gBbh/RnlFYHINvELT9Znt+SYyDKAUL6uV6By019AK/s+i9XP4jSwq7lwP38Fd8HVeTxym3+hkwmQ==" 1137 | "resolved" "https://registry.npmjs.org/get-orientation/-/get-orientation-1.1.2.tgz" 1138 | "version" "1.1.2" 1139 | dependencies: 1140 | "stream-parser" "^0.3.1" 1141 | 1142 | "glob-parent@~5.1.0": 1143 | "integrity" "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==" 1144 | "resolved" "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz" 1145 | "version" "5.1.2" 1146 | dependencies: 1147 | "is-glob" "^4.0.1" 1148 | 1149 | "glob-to-regexp@^0.4.1": 1150 | "integrity" "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==" 1151 | "resolved" "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz" 1152 | "version" "0.4.1" 1153 | 1154 | "graceful-fs@^4.1.2": 1155 | "integrity" "sha512-nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ==" 1156 | "resolved" "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.6.tgz" 1157 | "version" "4.2.6" 1158 | 1159 | "graphql-tag@^2.4.2": 1160 | "integrity" "sha512-VV1U4O+9x99EkNpNmCUV5RZwq6MnK4+pGbRYWG+lA/m3uo7TSqJF81OkcOP148gFP6fzdl7JWYBrwWVTS9jXww==" 1161 | "resolved" "https://registry.npmjs.org/graphql-tag/-/graphql-tag-2.12.4.tgz" 1162 | "version" "2.12.4" 1163 | dependencies: 1164 | "tslib" "^2.1.0" 1165 | 1166 | "graphql@^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0", "graphql@^0.11.3 || ^0.12.3 || ^0.13.0 || ^14.0.0 || ^15.0.0", "graphql@^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0", "graphql@^14.3.1", "graphql@^15.5.0": 1167 | "integrity" "sha512-OmaM7y0kaK31NKG31q4YbD2beNYa6jBBKtMFT6gLYJljHLJr42IqJ8KX08u3Li/0ifzTU5HjmoOOrwa5BRLeDA==" 1168 | "resolved" "https://registry.npmjs.org/graphql/-/graphql-15.5.0.tgz" 1169 | "version" "15.5.0" 1170 | 1171 | "has-bigints@^1.0.1": 1172 | "integrity" "sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA==" 1173 | "resolved" "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.1.tgz" 1174 | "version" "1.0.1" 1175 | 1176 | "has-flag@^3.0.0": 1177 | "integrity" "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" 1178 | "resolved" "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz" 1179 | "version" "3.0.0" 1180 | 1181 | "has-flag@^4.0.0": 1182 | "integrity" "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" 1183 | "resolved" "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz" 1184 | "version" "4.0.0" 1185 | 1186 | "has-symbols@^1.0.1", "has-symbols@^1.0.2": 1187 | "integrity" "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==" 1188 | "resolved" "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz" 1189 | "version" "1.0.2" 1190 | 1191 | "has@^1.0.3": 1192 | "integrity" "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==" 1193 | "resolved" "https://registry.npmjs.org/has/-/has-1.0.3.tgz" 1194 | "version" "1.0.3" 1195 | dependencies: 1196 | "function-bind" "^1.1.1" 1197 | 1198 | "hash-base@^3.0.0": 1199 | "integrity" "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==" 1200 | "resolved" "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz" 1201 | "version" "3.1.0" 1202 | dependencies: 1203 | "inherits" "^2.0.4" 1204 | "readable-stream" "^3.6.0" 1205 | "safe-buffer" "^5.2.0" 1206 | 1207 | "hash.js@^1.0.0", "hash.js@^1.0.3": 1208 | "integrity" "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==" 1209 | "resolved" "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz" 1210 | "version" "1.1.7" 1211 | dependencies: 1212 | "inherits" "^2.0.3" 1213 | "minimalistic-assert" "^1.0.1" 1214 | 1215 | "he@1.2.0": 1216 | "integrity" "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==" 1217 | "resolved" "https://registry.npmjs.org/he/-/he-1.2.0.tgz" 1218 | "version" "1.2.0" 1219 | 1220 | "hmac-drbg@^1.0.1": 1221 | "integrity" "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=" 1222 | "resolved" "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz" 1223 | "version" "1.0.1" 1224 | dependencies: 1225 | "hash.js" "^1.0.3" 1226 | "minimalistic-assert" "^1.0.0" 1227 | "minimalistic-crypto-utils" "^1.0.1" 1228 | 1229 | "hoist-non-react-statics@^3.3.0": 1230 | "integrity" "sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==" 1231 | "resolved" "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz" 1232 | "version" "3.3.2" 1233 | dependencies: 1234 | "react-is" "^16.7.0" 1235 | 1236 | "hsluv@^0.1.0": 1237 | "integrity" "sha512-ERcanKLAszD2XN3Vh5r5Szkrv9q0oSTudmP0rkiKAGM/3NMc9FLmMZBB7TSqTaXJfSDBOreYTfjezCOYbRKqlw==" 1238 | "resolved" "https://registry.npmjs.org/hsluv/-/hsluv-0.1.0.tgz" 1239 | "version" "0.1.0" 1240 | 1241 | "http-errors@1.7.3": 1242 | "integrity" "sha512-ZTTX0MWrsQ2ZAhA1cejAwDLycFsd7I7nVtnkT3Ol0aqodaKW+0CTZDQ1uBv5whptCnc8e8HeRRJxRs0kmm/Qfw==" 1243 | "resolved" "https://registry.npmjs.org/http-errors/-/http-errors-1.7.3.tgz" 1244 | "version" "1.7.3" 1245 | dependencies: 1246 | "depd" "~1.1.2" 1247 | "inherits" "2.0.4" 1248 | "setprototypeof" "1.1.1" 1249 | "statuses" ">= 1.5.0 < 2" 1250 | "toidentifier" "1.0.0" 1251 | 1252 | "https-browserify@^1.0.0", "https-browserify@1.0.0": 1253 | "integrity" "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=" 1254 | "resolved" "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz" 1255 | "version" "1.0.0" 1256 | 1257 | "iconv-lite@^0.6.2": 1258 | "integrity" "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==" 1259 | "resolved" "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz" 1260 | "version" "0.6.3" 1261 | dependencies: 1262 | "safer-buffer" ">= 2.1.2 < 3.0.0" 1263 | 1264 | "iconv-lite@0.4.24": 1265 | "integrity" "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==" 1266 | "resolved" "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz" 1267 | "version" "0.4.24" 1268 | dependencies: 1269 | "safer-buffer" ">= 2.1.2 < 3" 1270 | 1271 | "ieee754@^1.1.4": 1272 | "integrity" "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==" 1273 | "resolved" "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz" 1274 | "version" "1.2.1" 1275 | 1276 | "inherits@^2.0.1", "inherits@^2.0.3", "inherits@^2.0.4", "inherits@~2.0.4", "inherits@2.0.4": 1277 | "integrity" "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" 1278 | "resolved" "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz" 1279 | "version" "2.0.4" 1280 | 1281 | "inherits@~2.0.1", "inherits@2.0.1": 1282 | "integrity" "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=" 1283 | "resolved" "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz" 1284 | "version" "2.0.1" 1285 | 1286 | "inherits@~2.0.3": 1287 | "integrity" "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" 1288 | "resolved" "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz" 1289 | "version" "2.0.4" 1290 | 1291 | "inherits@2.0.3": 1292 | "integrity" "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" 1293 | "resolved" "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz" 1294 | "version" "2.0.3" 1295 | 1296 | "ioredis@^4.27.6": 1297 | "integrity" "sha512-6W3ZHMbpCa8ByMyC1LJGOi7P2WiOKP9B3resoZOVLDhi+6dDBOW+KNsRq3yI36Hmnb2sifCxHX+YSarTeXh48A==" 1298 | "resolved" "https://registry.npmjs.org/ioredis/-/ioredis-4.27.6.tgz" 1299 | "version" "4.27.6" 1300 | dependencies: 1301 | "cluster-key-slot" "^1.1.0" 1302 | "debug" "^4.3.1" 1303 | "denque" "^1.1.0" 1304 | "lodash.defaults" "^4.2.0" 1305 | "lodash.flatten" "^4.4.0" 1306 | "p-map" "^2.1.0" 1307 | "redis-commands" "1.7.0" 1308 | "redis-errors" "^1.2.0" 1309 | "redis-parser" "^3.0.0" 1310 | "standard-as-callback" "^2.1.0" 1311 | 1312 | "is-arguments@^1.0.4": 1313 | "integrity" "sha512-1Ij4lOMPl/xB5kBDn7I+b2ttPMKa8szhEIrXDuXQD/oe3HJLTLhqhgGspwgyGd6MOywBUqVvYicF72lkgDnIHg==" 1314 | "resolved" "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.0.tgz" 1315 | "version" "1.1.0" 1316 | dependencies: 1317 | "call-bind" "^1.0.0" 1318 | 1319 | "is-bigint@^1.0.1": 1320 | "integrity" "sha512-0JV5+SOCQkIdzjBK9buARcV804Ddu7A0Qet6sHi3FimE9ne6m4BGQZfRn+NZiXbBk4F4XmHfDZIipLj9pX8dSA==" 1321 | "resolved" "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.2.tgz" 1322 | "version" "1.0.2" 1323 | 1324 | "is-binary-path@~2.1.0": 1325 | "integrity" "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==" 1326 | "resolved" "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz" 1327 | "version" "2.1.0" 1328 | dependencies: 1329 | "binary-extensions" "^2.0.0" 1330 | 1331 | "is-boolean-object@^1.1.0": 1332 | "integrity" "sha512-bXdQWkECBUIAcCkeH1unwJLIpZYaa5VvuygSyS/c2lf719mTKZDU5UdDRlpd01UjADgmW8RfqaP+mRaVPdr/Ng==" 1333 | "resolved" "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.1.tgz" 1334 | "version" "1.1.1" 1335 | dependencies: 1336 | "call-bind" "^1.0.2" 1337 | 1338 | "is-callable@^1.1.4", "is-callable@^1.2.3": 1339 | "integrity" "sha512-J1DcMe8UYTBSrKezuIUTUwjXsho29693unXM2YhJUTR2txK/eG47bvNa/wipPFmZFgr/N6f1GA66dv0mEyTIyQ==" 1340 | "resolved" "https://registry.npmjs.org/is-callable/-/is-callable-1.2.3.tgz" 1341 | "version" "1.2.3" 1342 | 1343 | "is-date-object@^1.0.1": 1344 | "integrity" "sha512-/b4ZVsG7Z5XVtIxs/h9W8nvfLgSAyKYdtGWQLbqy6jA1icmgjf8WCoTKgeS4wy5tYaPePouzFMANbnj94c2Z+A==" 1345 | "resolved" "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.4.tgz" 1346 | "version" "1.0.4" 1347 | 1348 | "is-extglob@^2.1.1": 1349 | "integrity" "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=" 1350 | "resolved" "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz" 1351 | "version" "2.1.1" 1352 | 1353 | "is-generator-function@^1.0.7": 1354 | "integrity" "sha512-ZJ34p1uvIfptHCN7sFTjGibB9/oBg17sHqzDLfuwhvmN/qLVvIQXRQ8licZQ35WJ8KuEQt/etnnzQFI9C9Ue/A==" 1355 | "resolved" "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.9.tgz" 1356 | "version" "1.0.9" 1357 | 1358 | "is-glob@^4.0.1", "is-glob@~4.0.1": 1359 | "integrity" "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==" 1360 | "resolved" "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz" 1361 | "version" "4.0.1" 1362 | dependencies: 1363 | "is-extglob" "^2.1.1" 1364 | 1365 | "is-nan@^1.2.1": 1366 | "integrity" "sha512-E+zBKpQ2t6MEo1VsonYmluk9NxGrbzpeeLC2xIViuO2EjU2xsXsBPwTr3Ykv9l08UYEVEdWeRZNouaZqF6RN0w==" 1367 | "resolved" "https://registry.npmjs.org/is-nan/-/is-nan-1.3.2.tgz" 1368 | "version" "1.3.2" 1369 | dependencies: 1370 | "call-bind" "^1.0.0" 1371 | "define-properties" "^1.1.3" 1372 | 1373 | "is-negative-zero@^2.0.1": 1374 | "integrity" "sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w==" 1375 | "resolved" "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.1.tgz" 1376 | "version" "2.0.1" 1377 | 1378 | "is-number-object@^1.0.4": 1379 | "integrity" "sha512-RU0lI/n95pMoUKu9v1BZP5MBcZuNSVJkMkAG2dJqC4z2GlkGUNeH68SuHuBKBD/XFe+LHZ+f9BKkLET60Niedw==" 1380 | "resolved" "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.5.tgz" 1381 | "version" "1.0.5" 1382 | 1383 | "is-number@^7.0.0": 1384 | "integrity" "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==" 1385 | "resolved" "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz" 1386 | "version" "7.0.0" 1387 | 1388 | "is-regex@^1.1.3": 1389 | "integrity" "sha512-qSVXFz28HM7y+IWX6vLCsexdlvzT1PJNFSBuaQLQ5o0IEw8UDYW6/2+eCMVyIsbM8CNLX2a/QWmSpyxYEHY7CQ==" 1390 | "resolved" "https://registry.npmjs.org/is-regex/-/is-regex-1.1.3.tgz" 1391 | "version" "1.1.3" 1392 | dependencies: 1393 | "call-bind" "^1.0.2" 1394 | "has-symbols" "^1.0.2" 1395 | 1396 | "is-string@^1.0.5", "is-string@^1.0.6": 1397 | "integrity" "sha512-2gdzbKUuqtQ3lYNrUTQYoClPhm7oQu4UdpSZMp1/DGgkHBT8E2Z1l0yMdb6D4zNAxwDiMv8MdulKROJGNl0Q0w==" 1398 | "resolved" "https://registry.npmjs.org/is-string/-/is-string-1.0.6.tgz" 1399 | "version" "1.0.6" 1400 | 1401 | "is-symbol@^1.0.2", "is-symbol@^1.0.3": 1402 | "integrity" "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==" 1403 | "resolved" "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz" 1404 | "version" "1.0.4" 1405 | dependencies: 1406 | "has-symbols" "^1.0.2" 1407 | 1408 | "is-typed-array@^1.1.3": 1409 | "integrity" "sha512-S+GRDgJlR3PyEbsX/Fobd9cqpZBuvUS+8asRqYDMLCb2qMzt1oz5m5oxQCxOgUDxiWsOVNi4yaF+/uvdlHlYug==" 1410 | "resolved" "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.5.tgz" 1411 | "version" "1.1.5" 1412 | dependencies: 1413 | "available-typed-arrays" "^1.0.2" 1414 | "call-bind" "^1.0.2" 1415 | "es-abstract" "^1.18.0-next.2" 1416 | "foreach" "^2.0.5" 1417 | "has-symbols" "^1.0.1" 1418 | 1419 | "isarray@^1.0.0", "isarray@~1.0.0": 1420 | "integrity" "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" 1421 | "resolved" "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz" 1422 | "version" "1.0.0" 1423 | 1424 | "jest-worker@27.0.0-next.5": 1425 | "integrity" "sha512-mk0umAQ5lT+CaOJ+Qp01N6kz48sJG2kr2n1rX0koqKf6FIygQV0qLOdN9SCYID4IVeSigDOcPeGLozdMLYfb5g==" 1426 | "resolved" "https://registry.npmjs.org/jest-worker/-/jest-worker-27.0.0-next.5.tgz" 1427 | "version" "27.0.0-next.5" 1428 | dependencies: 1429 | "@types/node" "*" 1430 | "merge-stream" "^2.0.0" 1431 | "supports-color" "^8.0.0" 1432 | 1433 | "js-tokens@^3.0.0 || ^4.0.0", "js-tokens@^4.0.0": 1434 | "integrity" "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" 1435 | "resolved" "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz" 1436 | "version" "4.0.0" 1437 | 1438 | "json5@^1.0.1": 1439 | "integrity" "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==" 1440 | "resolved" "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz" 1441 | "version" "1.0.1" 1442 | dependencies: 1443 | "minimist" "^1.2.0" 1444 | 1445 | "jsonwebtoken@^8.5.1": 1446 | "integrity" "sha512-XjwVfRS6jTMsqYs0EsuJ4LGxXV14zQybNd4L2r0UvbVnSF9Af8x7p5MzbJ90Ioz/9TI41/hTCvznF/loiSzn8w==" 1447 | "resolved" "https://registry.npmjs.org/jsonwebtoken/-/jsonwebtoken-8.5.1.tgz" 1448 | "version" "8.5.1" 1449 | dependencies: 1450 | "jws" "^3.2.2" 1451 | "lodash.includes" "^4.3.0" 1452 | "lodash.isboolean" "^3.0.3" 1453 | "lodash.isinteger" "^4.0.4" 1454 | "lodash.isnumber" "^3.0.3" 1455 | "lodash.isplainobject" "^4.0.6" 1456 | "lodash.isstring" "^4.0.1" 1457 | "lodash.once" "^4.0.0" 1458 | "ms" "^2.1.1" 1459 | "semver" "^5.6.0" 1460 | 1461 | "jwa@^1.4.1": 1462 | "integrity" "sha512-qiLX/xhEEFKUAJ6FiBMbes3w9ATzyk5W7Hvzpa/SLYdxNtng+gcurvrI7TbACjIXlsJyr05/S1oUhZrc63evQA==" 1463 | "resolved" "https://registry.npmjs.org/jwa/-/jwa-1.4.1.tgz" 1464 | "version" "1.4.1" 1465 | dependencies: 1466 | "buffer-equal-constant-time" "1.0.1" 1467 | "ecdsa-sig-formatter" "1.0.11" 1468 | "safe-buffer" "^5.0.1" 1469 | 1470 | "jws@^3.2.2": 1471 | "integrity" "sha512-YHlZCB6lMTllWDtSPHz/ZXTsi8S00usEV6v1tjq8tOUZzw7DpSDWVXjXDre6ed1w/pd495ODpHZYSdkRTsa0HA==" 1472 | "resolved" "https://registry.npmjs.org/jws/-/jws-3.2.2.tgz" 1473 | "version" "3.2.2" 1474 | dependencies: 1475 | "jwa" "^1.4.1" 1476 | "safe-buffer" "^5.0.1" 1477 | 1478 | "keygrip@~1.1.0": 1479 | "integrity" "sha512-iYSchDJ+liQ8iwbSI2QqsQOvqv58eJCEanyJPJi+Khyu8smkcKSFUCbPwzFcL7YVtZ6eONjqRX/38caJ7QjRAQ==" 1480 | "resolved" "https://registry.npmjs.org/keygrip/-/keygrip-1.1.0.tgz" 1481 | "version" "1.1.0" 1482 | dependencies: 1483 | "tsscmp" "1.0.6" 1484 | 1485 | "loader-utils@1.2.3": 1486 | "integrity" "sha512-fkpz8ejdnEMG3s37wGL07iSBDg99O9D5yflE9RGNH3hRdx9SOwYfnGYdZOUIZitN8E+E2vkq3MUMYMvPYl5ZZA==" 1487 | "resolved" "https://registry.npmjs.org/loader-utils/-/loader-utils-1.2.3.tgz" 1488 | "version" "1.2.3" 1489 | dependencies: 1490 | "big.js" "^5.2.2" 1491 | "emojis-list" "^2.0.0" 1492 | "json5" "^1.0.1" 1493 | 1494 | "locate-path@^5.0.0": 1495 | "integrity" "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==" 1496 | "resolved" "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz" 1497 | "version" "5.0.0" 1498 | dependencies: 1499 | "p-locate" "^4.1.0" 1500 | 1501 | "lodash.defaults@^4.2.0": 1502 | "integrity" "sha1-0JF4cW/+pN3p5ft7N/bwgCJ0WAw=" 1503 | "resolved" "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz" 1504 | "version" "4.2.0" 1505 | 1506 | "lodash.flatten@^4.4.0": 1507 | "integrity" "sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8=" 1508 | "resolved" "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz" 1509 | "version" "4.4.0" 1510 | 1511 | "lodash.includes@^4.3.0": 1512 | "integrity" "sha1-YLuYqHy5I8aMoeUTJUgzFISfVT8=" 1513 | "resolved" "https://registry.npmjs.org/lodash.includes/-/lodash.includes-4.3.0.tgz" 1514 | "version" "4.3.0" 1515 | 1516 | "lodash.isboolean@^3.0.3": 1517 | "integrity" "sha1-bC4XHbKiV82WgC/UOwGyDV9YcPY=" 1518 | "resolved" "https://registry.npmjs.org/lodash.isboolean/-/lodash.isboolean-3.0.3.tgz" 1519 | "version" "3.0.3" 1520 | 1521 | "lodash.isinteger@^4.0.4": 1522 | "integrity" "sha1-YZwK89A/iwTDH1iChAt3sRzWg0M=" 1523 | "resolved" "https://registry.npmjs.org/lodash.isinteger/-/lodash.isinteger-4.0.4.tgz" 1524 | "version" "4.0.4" 1525 | 1526 | "lodash.isnumber@^3.0.3": 1527 | "integrity" "sha1-POdoEMWSjQM1IwGsKHMX8RwLH/w=" 1528 | "resolved" "https://registry.npmjs.org/lodash.isnumber/-/lodash.isnumber-3.0.3.tgz" 1529 | "version" "3.0.3" 1530 | 1531 | "lodash.isplainobject@^4.0.6": 1532 | "integrity" "sha1-fFJqUtibRcRcxpC4gWO+BJf1UMs=" 1533 | "resolved" "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz" 1534 | "version" "4.0.6" 1535 | 1536 | "lodash.isstring@^4.0.1": 1537 | "integrity" "sha1-1SfftUVuynzJu5XV2ur4i6VKVFE=" 1538 | "resolved" "https://registry.npmjs.org/lodash.isstring/-/lodash.isstring-4.0.1.tgz" 1539 | "version" "4.0.1" 1540 | 1541 | "lodash.once@^4.0.0": 1542 | "integrity" "sha1-DdOXEhPHxW34gJd9UEyI+0cal6w=" 1543 | "resolved" "https://registry.npmjs.org/lodash.once/-/lodash.once-4.1.1.tgz" 1544 | "version" "4.1.1" 1545 | 1546 | "lodash.sortby@^4.7.0": 1547 | "integrity" "sha1-7dFMgk4sycHgsKG0K7UhBRakJDg=" 1548 | "resolved" "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz" 1549 | "version" "4.7.0" 1550 | 1551 | "lodash@^4.17.13", "lodash@^4.17.4": 1552 | "integrity" "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" 1553 | "resolved" "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz" 1554 | "version" "4.17.21" 1555 | 1556 | "loose-envify@^1.1.0", "loose-envify@^1.4.0": 1557 | "integrity" "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==" 1558 | "resolved" "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz" 1559 | "version" "1.4.0" 1560 | dependencies: 1561 | "js-tokens" "^3.0.0 || ^4.0.0" 1562 | 1563 | "make-dir@^3.0.2": 1564 | "integrity" "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==" 1565 | "resolved" "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz" 1566 | "version" "3.1.0" 1567 | dependencies: 1568 | "semver" "^6.0.0" 1569 | 1570 | "md5.js@^1.3.4": 1571 | "integrity" "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==" 1572 | "resolved" "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz" 1573 | "version" "1.3.5" 1574 | dependencies: 1575 | "hash-base" "^3.0.0" 1576 | "inherits" "^2.0.1" 1577 | "safe-buffer" "^5.1.2" 1578 | 1579 | "merge-stream@^2.0.0": 1580 | "integrity" "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==" 1581 | "resolved" "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz" 1582 | "version" "2.0.0" 1583 | 1584 | "miller-rabin@^4.0.0": 1585 | "integrity" "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==" 1586 | "resolved" "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz" 1587 | "version" "4.0.1" 1588 | dependencies: 1589 | "bn.js" "^4.0.0" 1590 | "brorand" "^1.0.1" 1591 | 1592 | "mime-db@1.48.0": 1593 | "integrity" "sha512-FM3QwxV+TnZYQ2aRqhlKBMHxk10lTbMt3bBkMAp54ddrNeVSfcQYOOKuGuy3Ddrm38I04If834fOUSq1yzslJQ==" 1594 | "resolved" "https://registry.npmjs.org/mime-db/-/mime-db-1.48.0.tgz" 1595 | "version" "1.48.0" 1596 | 1597 | "mime-types@^2.1.12": 1598 | "integrity" "sha512-XGZnNzm3QvgKxa8dpzyhFTHmpP3l5YNusmne07VUOXxou9CqUqYa/HBy124RqtVh/O2pECas/MOcsDgpilPOPg==" 1599 | "resolved" "https://registry.npmjs.org/mime-types/-/mime-types-2.1.31.tgz" 1600 | "version" "2.1.31" 1601 | dependencies: 1602 | "mime-db" "1.48.0" 1603 | 1604 | "minimalistic-assert@^1.0.0", "minimalistic-assert@^1.0.1": 1605 | "integrity" "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" 1606 | "resolved" "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz" 1607 | "version" "1.0.1" 1608 | 1609 | "minimalistic-crypto-utils@^1.0.1": 1610 | "integrity" "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=" 1611 | "resolved" "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz" 1612 | "version" "1.0.1" 1613 | 1614 | "minimist@^1.2.0": 1615 | "integrity" "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" 1616 | "resolved" "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz" 1617 | "version" "1.2.5" 1618 | 1619 | "ms@^2.1.1": 1620 | "integrity" "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" 1621 | "resolved" "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz" 1622 | "version" "2.1.3" 1623 | 1624 | "ms@2.0.0": 1625 | "integrity" "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" 1626 | "resolved" "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz" 1627 | "version" "2.0.0" 1628 | 1629 | "ms@2.1.2": 1630 | "integrity" "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" 1631 | "resolved" "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz" 1632 | "version" "2.1.2" 1633 | 1634 | "nanoid@^3.1.22": 1635 | "integrity" "sha512-FiB0kzdP0FFVGDKlRLEQ1BgDzU87dy5NnzjeW9YZNt+/c3+q82EQDUwniSAUxp/F0gFNI1ZhKU1FqYsMuqZVnw==" 1636 | "resolved" "https://registry.npmjs.org/nanoid/-/nanoid-3.1.23.tgz" 1637 | "version" "3.1.23" 1638 | 1639 | "native-url@0.3.4": 1640 | "integrity" "sha512-6iM8R99ze45ivyH8vybJ7X0yekIcPf5GgLV5K0ENCbmRcaRIDoj37BC8iLEmaaBfqqb8enuZ5p0uhY+lVAbAcA==" 1641 | "resolved" "https://registry.npmjs.org/native-url/-/native-url-0.3.4.tgz" 1642 | "version" "0.3.4" 1643 | dependencies: 1644 | "querystring" "^0.2.0" 1645 | 1646 | "next@10.x": 1647 | "integrity" "sha512-dkM1mIfnORtGyzw/Yme8RdqNxlCMZyi4Lqj56F01/yHbe1ZtOaJ0cyqqRB4RGiPhjGGh0319f8ddjDyO1605Ow==" 1648 | "resolved" "https://registry.npmjs.org/next/-/next-10.2.3.tgz" 1649 | "version" "10.2.3" 1650 | dependencies: 1651 | "@babel/runtime" "7.12.5" 1652 | "@hapi/accept" "5.0.2" 1653 | "@next/env" "10.2.3" 1654 | "@next/polyfill-module" "10.2.3" 1655 | "@next/react-dev-overlay" "10.2.3" 1656 | "@next/react-refresh-utils" "10.2.3" 1657 | "@opentelemetry/api" "0.14.0" 1658 | "assert" "2.0.0" 1659 | "ast-types" "0.13.2" 1660 | "browserify-zlib" "0.2.0" 1661 | "browserslist" "4.16.6" 1662 | "buffer" "5.6.0" 1663 | "caniuse-lite" "^1.0.30001228" 1664 | "chalk" "2.4.2" 1665 | "chokidar" "3.5.1" 1666 | "constants-browserify" "1.0.0" 1667 | "crypto-browserify" "3.12.0" 1668 | "cssnano-simple" "2.0.0" 1669 | "domain-browser" "4.19.0" 1670 | "encoding" "0.1.13" 1671 | "etag" "1.8.1" 1672 | "find-cache-dir" "3.3.1" 1673 | "get-orientation" "1.1.2" 1674 | "https-browserify" "1.0.0" 1675 | "jest-worker" "27.0.0-next.5" 1676 | "native-url" "0.3.4" 1677 | "node-fetch" "2.6.1" 1678 | "node-html-parser" "1.4.9" 1679 | "node-libs-browser" "^2.2.1" 1680 | "os-browserify" "0.3.0" 1681 | "p-limit" "3.1.0" 1682 | "path-browserify" "1.0.1" 1683 | "pnp-webpack-plugin" "1.6.4" 1684 | "postcss" "8.2.13" 1685 | "process" "0.11.10" 1686 | "prop-types" "15.7.2" 1687 | "querystring-es3" "0.2.1" 1688 | "raw-body" "2.4.1" 1689 | "react-is" "16.13.1" 1690 | "react-refresh" "0.8.3" 1691 | "stream-browserify" "3.0.0" 1692 | "stream-http" "3.1.1" 1693 | "string_decoder" "1.3.0" 1694 | "styled-jsx" "3.3.2" 1695 | "timers-browserify" "2.0.12" 1696 | "tty-browserify" "0.0.1" 1697 | "use-subscription" "1.5.1" 1698 | "util" "0.12.3" 1699 | "vm-browserify" "1.1.2" 1700 | "watchpack" "2.1.1" 1701 | 1702 | "node-fetch@^2.6.1", "node-fetch@2.6.1": 1703 | "integrity" "sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw==" 1704 | "resolved" "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.1.tgz" 1705 | "version" "2.6.1" 1706 | 1707 | "node-html-parser@1.4.9": 1708 | "integrity" "sha512-UVcirFD1Bn0O+TSmloHeHqZZCxHjvtIeGdVdGMhyZ8/PWlEiZaZ5iJzR189yKZr8p0FXN58BUeC7RHRkf/KYGw==" 1709 | "resolved" "https://registry.npmjs.org/node-html-parser/-/node-html-parser-1.4.9.tgz" 1710 | "version" "1.4.9" 1711 | dependencies: 1712 | "he" "1.2.0" 1713 | 1714 | "node-libs-browser@^2.2.1": 1715 | "integrity" "sha512-h/zcD8H9kaDZ9ALUWwlBUDo6TKF8a7qBSCSEGfjTVIYeqsioSKaAX+BN7NgiMGp6iSIXZ3PxgCu8KS3b71YK5Q==" 1716 | "resolved" "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.2.1.tgz" 1717 | "version" "2.2.1" 1718 | dependencies: 1719 | "assert" "^1.1.1" 1720 | "browserify-zlib" "^0.2.0" 1721 | "buffer" "^4.3.0" 1722 | "console-browserify" "^1.1.0" 1723 | "constants-browserify" "^1.0.0" 1724 | "crypto-browserify" "^3.11.0" 1725 | "domain-browser" "^1.1.1" 1726 | "events" "^3.0.0" 1727 | "https-browserify" "^1.0.0" 1728 | "os-browserify" "^0.3.0" 1729 | "path-browserify" "0.0.1" 1730 | "process" "^0.11.10" 1731 | "punycode" "^1.2.4" 1732 | "querystring-es3" "^0.2.0" 1733 | "readable-stream" "^2.3.3" 1734 | "stream-browserify" "^2.0.1" 1735 | "stream-http" "^2.7.2" 1736 | "string_decoder" "^1.0.0" 1737 | "timers-browserify" "^2.0.4" 1738 | "tty-browserify" "0.0.0" 1739 | "url" "^0.11.0" 1740 | "util" "^0.11.0" 1741 | "vm-browserify" "^1.0.1" 1742 | 1743 | "node-releases@^1.1.71": 1744 | "integrity" "sha512-uW7fodD6pyW2FZNZnp/Z3hvWKeEW1Y8R1+1CnErE8cXFXzl5blBOoVB41CvMer6P6Q0S5FXDwcHgFd1Wj0U9zg==" 1745 | "resolved" "https://registry.npmjs.org/node-releases/-/node-releases-1.1.73.tgz" 1746 | "version" "1.1.73" 1747 | 1748 | "normalize-path@^3.0.0", "normalize-path@~3.0.0": 1749 | "integrity" "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==" 1750 | "resolved" "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz" 1751 | "version" "3.0.0" 1752 | 1753 | "object-assign@^4.1.1": 1754 | "integrity" "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" 1755 | "resolved" "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz" 1756 | "version" "4.1.1" 1757 | 1758 | "object-inspect@^1.10.3": 1759 | "integrity" "sha512-e5mCJlSH7poANfC8z8S9s9S2IN5/4Zb3aZ33f5s8YqoazCFzNLloLU8r5VCG+G7WoqLvAAZoVMcy3tp/3X0Plw==" 1760 | "resolved" "https://registry.npmjs.org/object-inspect/-/object-inspect-1.10.3.tgz" 1761 | "version" "1.10.3" 1762 | 1763 | "object-is@^1.0.1": 1764 | "integrity" "sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==" 1765 | "resolved" "https://registry.npmjs.org/object-is/-/object-is-1.1.5.tgz" 1766 | "version" "1.1.5" 1767 | dependencies: 1768 | "call-bind" "^1.0.2" 1769 | "define-properties" "^1.1.3" 1770 | 1771 | "object-keys@^1.0.12", "object-keys@^1.1.1": 1772 | "integrity" "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==" 1773 | "resolved" "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz" 1774 | "version" "1.1.1" 1775 | 1776 | "object.assign@^4.1.2": 1777 | "integrity" "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==" 1778 | "resolved" "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz" 1779 | "version" "4.1.2" 1780 | dependencies: 1781 | "call-bind" "^1.0.0" 1782 | "define-properties" "^1.1.3" 1783 | "has-symbols" "^1.0.1" 1784 | "object-keys" "^1.1.1" 1785 | 1786 | "optimism@^0.10.0": 1787 | "integrity" "sha512-9A5pqGoQk49H6Vhjb9kPgAeeECfUDF6aIICbMDL23kDLStBn1MWk3YvcZ4xWF9CsSf6XEgvRLkXy4xof/56vVw==" 1788 | "resolved" "https://registry.npmjs.org/optimism/-/optimism-0.10.3.tgz" 1789 | "version" "0.10.3" 1790 | dependencies: 1791 | "@wry/context" "^0.4.0" 1792 | 1793 | "os-browserify@^0.3.0", "os-browserify@0.3.0": 1794 | "integrity" "sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=" 1795 | "resolved" "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz" 1796 | "version" "0.3.0" 1797 | 1798 | "p-limit@^2.2.0": 1799 | "integrity" "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==" 1800 | "resolved" "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz" 1801 | "version" "2.3.0" 1802 | dependencies: 1803 | "p-try" "^2.0.0" 1804 | 1805 | "p-limit@3.1.0": 1806 | "integrity" "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==" 1807 | "resolved" "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz" 1808 | "version" "3.1.0" 1809 | dependencies: 1810 | "yocto-queue" "^0.1.0" 1811 | 1812 | "p-locate@^4.1.0": 1813 | "integrity" "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==" 1814 | "resolved" "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz" 1815 | "version" "4.1.0" 1816 | dependencies: 1817 | "p-limit" "^2.2.0" 1818 | 1819 | "p-map@^2.1.0": 1820 | "integrity" "sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==" 1821 | "resolved" "https://registry.npmjs.org/p-map/-/p-map-2.1.0.tgz" 1822 | "version" "2.1.0" 1823 | 1824 | "p-try@^2.0.0": 1825 | "integrity" "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==" 1826 | "resolved" "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz" 1827 | "version" "2.2.0" 1828 | 1829 | "pako@~1.0.5": 1830 | "integrity" "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==" 1831 | "resolved" "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz" 1832 | "version" "1.0.11" 1833 | 1834 | "parse-asn1@^5.0.0", "parse-asn1@^5.1.5": 1835 | "integrity" "sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw==" 1836 | "resolved" "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.6.tgz" 1837 | "version" "5.1.6" 1838 | dependencies: 1839 | "asn1.js" "^5.2.0" 1840 | "browserify-aes" "^1.0.0" 1841 | "evp_bytestokey" "^1.0.0" 1842 | "pbkdf2" "^3.0.3" 1843 | "safe-buffer" "^5.1.1" 1844 | 1845 | "path-browserify@0.0.1": 1846 | "integrity" "sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ==" 1847 | "resolved" "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.1.tgz" 1848 | "version" "0.0.1" 1849 | 1850 | "path-browserify@1.0.1": 1851 | "integrity" "sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==" 1852 | "resolved" "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz" 1853 | "version" "1.0.1" 1854 | 1855 | "path-exists@^4.0.0": 1856 | "integrity" "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==" 1857 | "resolved" "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz" 1858 | "version" "4.0.0" 1859 | 1860 | "pbkdf2@^3.0.3": 1861 | "integrity" "sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==" 1862 | "resolved" "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz" 1863 | "version" "3.1.2" 1864 | dependencies: 1865 | "create-hash" "^1.1.2" 1866 | "create-hmac" "^1.1.4" 1867 | "ripemd160" "^2.0.1" 1868 | "safe-buffer" "^5.0.1" 1869 | "sha.js" "^2.4.8" 1870 | 1871 | "picomatch@^2.0.4", "picomatch@^2.2.1": 1872 | "integrity" "sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw==" 1873 | "resolved" "https://registry.npmjs.org/picomatch/-/picomatch-2.3.0.tgz" 1874 | "version" "2.3.0" 1875 | 1876 | "pkg-dir@^4.1.0": 1877 | "integrity" "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==" 1878 | "resolved" "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz" 1879 | "version" "4.2.0" 1880 | dependencies: 1881 | "find-up" "^4.0.0" 1882 | 1883 | "platform@1.3.6": 1884 | "integrity" "sha512-fnWVljUchTro6RiCFvCXBbNhJc2NijN7oIQxbwsyL0buWJPG85v81ehlHI9fXrJsMNgTofEoWIQeClKpgxFLrg==" 1885 | "resolved" "https://registry.npmjs.org/platform/-/platform-1.3.6.tgz" 1886 | "version" "1.3.6" 1887 | 1888 | "pnp-webpack-plugin@1.6.4": 1889 | "integrity" "sha512-7Wjy+9E3WwLOEL30D+m8TSTF7qJJUJLONBnwQp0518siuMxUQUbgZwssaFX+QKlZkjHZcw/IpZCt/H0srrntSg==" 1890 | "resolved" "https://registry.npmjs.org/pnp-webpack-plugin/-/pnp-webpack-plugin-1.6.4.tgz" 1891 | "version" "1.6.4" 1892 | dependencies: 1893 | "ts-pnp" "^1.1.6" 1894 | 1895 | "postcss@^8.2.1", "postcss@^8.2.2", "postcss@8.2.13": 1896 | "integrity" "sha512-FCE5xLH+hjbzRdpbRb1IMCvPv9yZx2QnDarBEYSN0N0HYk+TcXsEhwdFcFb+SRWOKzKGErhIEbBK2ogyLdTtfQ==" 1897 | "resolved" "https://registry.npmjs.org/postcss/-/postcss-8.2.13.tgz" 1898 | "version" "8.2.13" 1899 | dependencies: 1900 | "colorette" "^1.2.2" 1901 | "nanoid" "^3.1.22" 1902 | "source-map" "^0.6.1" 1903 | 1904 | "process-nextick-args@~2.0.0": 1905 | "integrity" "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" 1906 | "resolved" "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz" 1907 | "version" "2.0.1" 1908 | 1909 | "process@^0.11.10", "process@0.11.10": 1910 | "integrity" "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=" 1911 | "resolved" "https://registry.npmjs.org/process/-/process-0.11.10.tgz" 1912 | "version" "0.11.10" 1913 | 1914 | "prop-types@^15.6.2", "prop-types@^15.7.2", "prop-types@15.7.2": 1915 | "integrity" "sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ==" 1916 | "resolved" "https://registry.npmjs.org/prop-types/-/prop-types-15.7.2.tgz" 1917 | "version" "15.7.2" 1918 | dependencies: 1919 | "loose-envify" "^1.4.0" 1920 | "object-assign" "^4.1.1" 1921 | "react-is" "^16.8.1" 1922 | 1923 | "public-encrypt@^4.0.0": 1924 | "integrity" "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==" 1925 | "resolved" "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz" 1926 | "version" "4.0.3" 1927 | dependencies: 1928 | "bn.js" "^4.1.0" 1929 | "browserify-rsa" "^4.0.0" 1930 | "create-hash" "^1.1.0" 1931 | "parse-asn1" "^5.0.0" 1932 | "randombytes" "^2.0.1" 1933 | "safe-buffer" "^5.1.2" 1934 | 1935 | "punycode@^1.2.4": 1936 | "integrity" "sha1-wNWmOycYgArY4esPpSachN1BhF4=" 1937 | "resolved" "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz" 1938 | "version" "1.4.1" 1939 | 1940 | "punycode@^2.1.0": 1941 | "integrity" "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==" 1942 | "resolved" "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz" 1943 | "version" "2.1.1" 1944 | 1945 | "punycode@1.3.2": 1946 | "integrity" "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=" 1947 | "resolved" "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz" 1948 | "version" "1.3.2" 1949 | 1950 | "querystring-es3@^0.2.0", "querystring-es3@0.2.1": 1951 | "integrity" "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=" 1952 | "resolved" "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz" 1953 | "version" "0.2.1" 1954 | 1955 | "querystring@^0.2.0": 1956 | "integrity" "sha512-wkvS7mL/JMugcup3/rMitHmd9ecIGd2lhFhK9N3UUQ450h66d1r3Y9nvXzQAW1Lq+wyx61k/1pfKS5KuKiyEbg==" 1957 | "resolved" "https://registry.npmjs.org/querystring/-/querystring-0.2.1.tgz" 1958 | "version" "0.2.1" 1959 | 1960 | "querystring@0.2.0": 1961 | "integrity" "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=" 1962 | "resolved" "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz" 1963 | "version" "0.2.0" 1964 | 1965 | "randombytes@^2.0.0", "randombytes@^2.0.1", "randombytes@^2.0.5": 1966 | "integrity" "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==" 1967 | "resolved" "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz" 1968 | "version" "2.1.0" 1969 | dependencies: 1970 | "safe-buffer" "^5.1.0" 1971 | 1972 | "randomfill@^1.0.3": 1973 | "integrity" "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==" 1974 | "resolved" "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz" 1975 | "version" "1.0.4" 1976 | dependencies: 1977 | "randombytes" "^2.0.5" 1978 | "safe-buffer" "^5.1.0" 1979 | 1980 | "raw-body@2.4.1": 1981 | "integrity" "sha512-9WmIKF6mkvA0SLmA2Knm9+qj89e+j1zqgyn8aXGd7+nAduPoqgI9lO57SAZNn/Byzo5P7JhXTyg9PzaJbH73bA==" 1982 | "resolved" "https://registry.npmjs.org/raw-body/-/raw-body-2.4.1.tgz" 1983 | "version" "2.4.1" 1984 | dependencies: 1985 | "bytes" "3.1.0" 1986 | "http-errors" "1.7.3" 1987 | "iconv-lite" "0.4.24" 1988 | "unpipe" "1.0.0" 1989 | 1990 | "react-apollo@^3.1.5": 1991 | "integrity" "sha512-xOxMqxORps+WHrUYbjVHPliviomefOpu5Sh35oO3osuOyPTxvrljdfTLGCggMhcXBsDljtS5Oy4g+ijWg3D4JQ==" 1992 | "resolved" "https://registry.npmjs.org/react-apollo/-/react-apollo-3.1.5.tgz" 1993 | "version" "3.1.5" 1994 | dependencies: 1995 | "@apollo/react-common" "^3.1.4" 1996 | "@apollo/react-components" "^3.1.5" 1997 | "@apollo/react-hoc" "^3.1.5" 1998 | "@apollo/react-hooks" "^3.1.5" 1999 | "@apollo/react-ssr" "^3.1.5" 2000 | 2001 | "react-dom@^16.6.0 || ^17", "react-dom@^16.8.0", "react-dom@^16.9.0", "react-dom@^16.9.0 || ^17", "react-dom@>=16.6.0", "react-dom@17.x": 2002 | "integrity" "sha512-s4h96KtLDUQlsENhMn1ar8t2bEa+q/YAtj8pPPdIjPDGBDIVNsrD9aXNWqspUe6AzKCIG0C1HZZLqLV7qpOBGA==" 2003 | "resolved" "https://registry.npmjs.org/react-dom/-/react-dom-17.0.2.tgz" 2004 | "version" "17.0.2" 2005 | dependencies: 2006 | "loose-envify" "^1.1.0" 2007 | "object-assign" "^4.1.1" 2008 | "scheduler" "^0.20.2" 2009 | 2010 | "react-is@^16.7.0", "react-is@^16.8.1", "react-is@16.13.1": 2011 | "integrity" "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" 2012 | "resolved" "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz" 2013 | "version" "16.13.1" 2014 | 2015 | "react-refresh@0.8.3": 2016 | "integrity" "sha512-X8jZHc7nCMjaCqoU+V2I0cOhNW+QMBwSUkeXnTi8IPe6zaRWfn60ZzvFDZqWPfmSJfjub7dDW1SP0jaHWLu/hg==" 2017 | "resolved" "https://registry.npmjs.org/react-refresh/-/react-refresh-0.8.3.tgz" 2018 | "version" "0.8.3" 2019 | 2020 | "react-transition-group@^4.4.1": 2021 | "integrity" "sha512-/RNYfRAMlZwDSr6z4zNKV6xu53/e2BuaBbGhbyYIXTrmgu/bGHzmqOs7mJSJBHy9Ud+ApHx3QjrkKSp1pxvlFg==" 2022 | "resolved" "https://registry.npmjs.org/react-transition-group/-/react-transition-group-4.4.2.tgz" 2023 | "version" "4.4.2" 2024 | dependencies: 2025 | "@babel/runtime" "^7.5.5" 2026 | "dom-helpers" "^5.0.1" 2027 | "loose-envify" "^1.4.0" 2028 | "prop-types" "^15.6.2" 2029 | 2030 | "react@^16.0.0", "react@^16.6.0 || ^17", "react@^16.8.0", "react@^16.8.0 || ^17.0.0", "react@^16.9.0", "react@^16.9.0 || ^17", "react@>=16.6.0", "react@15.x.x || 16.x.x || 17.x.x", "react@17.0.2", "react@17.x": 2031 | "integrity" "sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA==" 2032 | "resolved" "https://registry.npmjs.org/react/-/react-17.0.2.tgz" 2033 | "version" "17.0.2" 2034 | dependencies: 2035 | "loose-envify" "^1.1.0" 2036 | "object-assign" "^4.1.1" 2037 | 2038 | "readable-stream@^2.0.2", "readable-stream@^2.3.3", "readable-stream@^2.3.6": 2039 | "integrity" "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==" 2040 | "resolved" "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz" 2041 | "version" "2.3.7" 2042 | dependencies: 2043 | "core-util-is" "~1.0.0" 2044 | "inherits" "~2.0.3" 2045 | "isarray" "~1.0.0" 2046 | "process-nextick-args" "~2.0.0" 2047 | "safe-buffer" "~5.1.1" 2048 | "string_decoder" "~1.1.1" 2049 | "util-deprecate" "~1.0.1" 2050 | 2051 | "readable-stream@^3.5.0", "readable-stream@^3.6.0": 2052 | "integrity" "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==" 2053 | "resolved" "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz" 2054 | "version" "3.6.0" 2055 | dependencies: 2056 | "inherits" "^2.0.3" 2057 | "string_decoder" "^1.1.1" 2058 | "util-deprecate" "^1.0.1" 2059 | 2060 | "readdirp@~3.5.0": 2061 | "integrity" "sha512-cMhu7c/8rdhkHXWsY+osBhfSy0JikwpHK/5+imo+LpeasTF8ouErHrlYkwT0++njiyuDvc7OFY5T3ukvZ8qmFQ==" 2062 | "resolved" "https://registry.npmjs.org/readdirp/-/readdirp-3.5.0.tgz" 2063 | "version" "3.5.0" 2064 | dependencies: 2065 | "picomatch" "^2.2.1" 2066 | 2067 | "redis-commands@1.7.0": 2068 | "integrity" "sha512-nJWqw3bTFy21hX/CPKHth6sfhZbdiHP6bTawSgQBlKOVRG7EZkfHbbHwQJnrE4vsQf0CMNE+3gJ4Fmm16vdVlQ==" 2069 | "resolved" "https://registry.npmjs.org/redis-commands/-/redis-commands-1.7.0.tgz" 2070 | "version" "1.7.0" 2071 | 2072 | "redis-errors@^1.0.0", "redis-errors@^1.2.0": 2073 | "integrity" "sha1-62LSrbFeTq9GEMBK/hUpOEJQq60=" 2074 | "resolved" "https://registry.npmjs.org/redis-errors/-/redis-errors-1.2.0.tgz" 2075 | "version" "1.2.0" 2076 | 2077 | "redis-parser@^3.0.0": 2078 | "integrity" "sha1-tm2CjNyv5rS4pCin3vTGvKwxyLQ=" 2079 | "resolved" "https://registry.npmjs.org/redis-parser/-/redis-parser-3.0.0.tgz" 2080 | "version" "3.0.0" 2081 | dependencies: 2082 | "redis-errors" "^1.0.0" 2083 | 2084 | "regenerator-runtime@^0.13.4": 2085 | "integrity" "sha512-a54FxoJDIr27pgf7IgeQGxmqUNYrcV338lf/6gH456HZ/PhX+5BcwHXG9ajESmwe6WRO0tAzRUrRmNONWgkrew==" 2086 | "resolved" "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.7.tgz" 2087 | "version" "0.13.7" 2088 | 2089 | "ripemd160@^2.0.0", "ripemd160@^2.0.1": 2090 | "integrity" "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==" 2091 | "resolved" "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz" 2092 | "version" "2.0.2" 2093 | dependencies: 2094 | "hash-base" "^3.0.0" 2095 | "inherits" "^2.0.1" 2096 | 2097 | "safe-buffer@^5.0.1", "safe-buffer@^5.1.0", "safe-buffer@^5.1.1", "safe-buffer@^5.1.2", "safe-buffer@^5.2.0", "safe-buffer@~5.2.0": 2098 | "integrity" "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" 2099 | "resolved" "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz" 2100 | "version" "5.2.1" 2101 | 2102 | "safe-buffer@~5.1.0", "safe-buffer@~5.1.1": 2103 | "integrity" "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" 2104 | "resolved" "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz" 2105 | "version" "5.1.2" 2106 | 2107 | "safer-buffer@^2.1.0", "safer-buffer@>= 2.1.2 < 3", "safer-buffer@>= 2.1.2 < 3.0.0": 2108 | "integrity" "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" 2109 | "resolved" "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz" 2110 | "version" "2.1.2" 2111 | 2112 | "scheduler@^0.20.2": 2113 | "integrity" "sha512-2eWfGgAqqWFGqtdMmcL5zCMK1U8KlXv8SQFGglL3CEtd0aDVDWgeF/YoCmvln55m5zSk3J/20hTaSBeSObsQDQ==" 2114 | "resolved" "https://registry.npmjs.org/scheduler/-/scheduler-0.20.2.tgz" 2115 | "version" "0.20.2" 2116 | dependencies: 2117 | "loose-envify" "^1.1.0" 2118 | "object-assign" "^4.1.1" 2119 | 2120 | "semver@^5.6.0": 2121 | "integrity" "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" 2122 | "resolved" "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz" 2123 | "version" "5.7.1" 2124 | 2125 | "semver@^6.0.0": 2126 | "integrity" "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" 2127 | "resolved" "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz" 2128 | "version" "6.3.0" 2129 | 2130 | "setimmediate@^1.0.4": 2131 | "integrity" "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=" 2132 | "resolved" "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz" 2133 | "version" "1.0.5" 2134 | 2135 | "setprototypeof@1.1.1": 2136 | "integrity" "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==" 2137 | "resolved" "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz" 2138 | "version" "1.1.1" 2139 | 2140 | "sha.js@^2.4.0", "sha.js@^2.4.8": 2141 | "integrity" "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==" 2142 | "resolved" "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz" 2143 | "version" "2.4.11" 2144 | dependencies: 2145 | "inherits" "^2.0.1" 2146 | "safe-buffer" "^5.0.1" 2147 | 2148 | "shell-quote@1.7.2": 2149 | "integrity" "sha512-mRz/m/JVscCrkMyPqHc/bczi3OQHkLTqXHEFu0zDhK/qfv3UcOA4SVmRCLmos4bhjr9ekVQubj/R7waKapmiQg==" 2150 | "resolved" "https://registry.npmjs.org/shell-quote/-/shell-quote-1.7.2.tgz" 2151 | "version" "1.7.2" 2152 | 2153 | "source-map@^0.6.1": 2154 | "integrity" "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" 2155 | "resolved" "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz" 2156 | "version" "0.6.1" 2157 | 2158 | "source-map@0.7.3": 2159 | "integrity" "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==" 2160 | "resolved" "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz" 2161 | "version" "0.7.3" 2162 | 2163 | "source-map@0.8.0-beta.0": 2164 | "integrity" "sha512-2ymg6oRBpebeZi9UUNsgQ89bhx01TcTkmNTGnNO88imTmbSgy4nfujrgVEFKWpMTEGA11EDkTt7mqObTPdigIA==" 2165 | "resolved" "https://registry.npmjs.org/source-map/-/source-map-0.8.0-beta.0.tgz" 2166 | "version" "0.8.0-beta.0" 2167 | dependencies: 2168 | "whatwg-url" "^7.0.0" 2169 | 2170 | "stacktrace-parser@0.1.10": 2171 | "integrity" "sha512-KJP1OCML99+8fhOHxwwzyWrlUuVX5GQ0ZpJTd1DFXhdkrvg1szxfHhawXUZ3g9TkXORQd4/WG68jMlQZ2p8wlg==" 2172 | "resolved" "https://registry.npmjs.org/stacktrace-parser/-/stacktrace-parser-0.1.10.tgz" 2173 | "version" "0.1.10" 2174 | dependencies: 2175 | "type-fest" "^0.7.1" 2176 | 2177 | "standard-as-callback@^2.1.0": 2178 | "integrity" "sha512-qoRRSyROncaz1z0mvYqIE4lCd9p2R90i6GxW3uZv5ucSu8tU7B5HXUP1gG8pVZsYNVaXjk8ClXHPttLyxAL48A==" 2179 | "resolved" "https://registry.npmjs.org/standard-as-callback/-/standard-as-callback-2.1.0.tgz" 2180 | "version" "2.1.0" 2181 | 2182 | "statuses@>= 1.5.0 < 2": 2183 | "integrity" "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=" 2184 | "resolved" "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz" 2185 | "version" "1.5.0" 2186 | 2187 | "stream-browserify@^2.0.1": 2188 | "integrity" "sha512-nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg==" 2189 | "resolved" "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.2.tgz" 2190 | "version" "2.0.2" 2191 | dependencies: 2192 | "inherits" "~2.0.1" 2193 | "readable-stream" "^2.0.2" 2194 | 2195 | "stream-browserify@3.0.0": 2196 | "integrity" "sha512-H73RAHsVBapbim0tU2JwwOiXUj+fikfiaoYAKHF3VJfA0pe2BCzkhAHBlLG6REzE+2WNZcxOXjK7lkso+9euLA==" 2197 | "resolved" "https://registry.npmjs.org/stream-browserify/-/stream-browserify-3.0.0.tgz" 2198 | "version" "3.0.0" 2199 | dependencies: 2200 | "inherits" "~2.0.4" 2201 | "readable-stream" "^3.5.0" 2202 | 2203 | "stream-http@^2.7.2": 2204 | "integrity" "sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw==" 2205 | "resolved" "https://registry.npmjs.org/stream-http/-/stream-http-2.8.3.tgz" 2206 | "version" "2.8.3" 2207 | dependencies: 2208 | "builtin-status-codes" "^3.0.0" 2209 | "inherits" "^2.0.1" 2210 | "readable-stream" "^2.3.6" 2211 | "to-arraybuffer" "^1.0.0" 2212 | "xtend" "^4.0.0" 2213 | 2214 | "stream-http@3.1.1": 2215 | "integrity" "sha512-S7OqaYu0EkFpgeGFb/NPOoPLxFko7TPqtEeFg5DXPB4v/KETHG0Ln6fRFrNezoelpaDKmycEmmZ81cC9DAwgYg==" 2216 | "resolved" "https://registry.npmjs.org/stream-http/-/stream-http-3.1.1.tgz" 2217 | "version" "3.1.1" 2218 | dependencies: 2219 | "builtin-status-codes" "^3.0.0" 2220 | "inherits" "^2.0.4" 2221 | "readable-stream" "^3.6.0" 2222 | "xtend" "^4.0.2" 2223 | 2224 | "stream-parser@^0.3.1": 2225 | "integrity" "sha1-FhhUhpRCACGhGC/wrxkRwSl2F3M=" 2226 | "resolved" "https://registry.npmjs.org/stream-parser/-/stream-parser-0.3.1.tgz" 2227 | "version" "0.3.1" 2228 | dependencies: 2229 | "debug" "2" 2230 | 2231 | "string_decoder@^1.0.0", "string_decoder@^1.1.1", "string_decoder@1.3.0": 2232 | "integrity" "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==" 2233 | "resolved" "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz" 2234 | "version" "1.3.0" 2235 | dependencies: 2236 | "safe-buffer" "~5.2.0" 2237 | 2238 | "string_decoder@~1.1.1": 2239 | "integrity" "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==" 2240 | "resolved" "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz" 2241 | "version" "1.1.1" 2242 | dependencies: 2243 | "safe-buffer" "~5.1.0" 2244 | 2245 | "string-hash@1.1.3": 2246 | "integrity" "sha1-6Kr8CsGFW0Zmkp7X3RJ1311sgRs=" 2247 | "resolved" "https://registry.npmjs.org/string-hash/-/string-hash-1.1.3.tgz" 2248 | "version" "1.1.3" 2249 | 2250 | "string.prototype.trimend@^1.0.4": 2251 | "integrity" "sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A==" 2252 | "resolved" "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz" 2253 | "version" "1.0.4" 2254 | dependencies: 2255 | "call-bind" "^1.0.2" 2256 | "define-properties" "^1.1.3" 2257 | 2258 | "string.prototype.trimstart@^1.0.4": 2259 | "integrity" "sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw==" 2260 | "resolved" "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz" 2261 | "version" "1.0.4" 2262 | dependencies: 2263 | "call-bind" "^1.0.2" 2264 | "define-properties" "^1.1.3" 2265 | 2266 | "strip-ansi@6.0.0": 2267 | "integrity" "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==" 2268 | "resolved" "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz" 2269 | "version" "6.0.0" 2270 | dependencies: 2271 | "ansi-regex" "^5.0.0" 2272 | 2273 | "styled-jsx@3.3.2": 2274 | "integrity" "sha512-daAkGd5mqhbBhLd6jYAjYBa9LpxYCzsgo/f6qzPdFxVB8yoGbhxvzQgkC0pfmCVvW3JuAEBn0UzFLBfkHVZG1g==" 2275 | "resolved" "https://registry.npmjs.org/styled-jsx/-/styled-jsx-3.3.2.tgz" 2276 | "version" "3.3.2" 2277 | dependencies: 2278 | "@babel/types" "7.8.3" 2279 | "babel-plugin-syntax-jsx" "6.18.0" 2280 | "convert-source-map" "1.7.0" 2281 | "loader-utils" "1.2.3" 2282 | "source-map" "0.7.3" 2283 | "string-hash" "1.1.3" 2284 | "stylis" "3.5.4" 2285 | "stylis-rule-sheet" "0.0.10" 2286 | 2287 | "stylis-rule-sheet@0.0.10": 2288 | "integrity" "sha512-nTbZoaqoBnmK+ptANthb10ZRZOGC+EmTLLUxeYIuHNkEKcmKgXX1XWKkUBT2Ac4es3NybooPe0SmvKdhKJZAuw==" 2289 | "resolved" "https://registry.npmjs.org/stylis-rule-sheet/-/stylis-rule-sheet-0.0.10.tgz" 2290 | "version" "0.0.10" 2291 | 2292 | "stylis@^3.5.0", "stylis@3.5.4": 2293 | "integrity" "sha512-8/3pSmthWM7lsPBKv7NXkzn2Uc9W7NotcwGNpJaa3k7WMM1XDCA4MgT5k/8BIexd5ydZdboXtU90XH9Ec4Bv/Q==" 2294 | "resolved" "https://registry.npmjs.org/stylis/-/stylis-3.5.4.tgz" 2295 | "version" "3.5.4" 2296 | 2297 | "supports-color@^5.3.0": 2298 | "integrity" "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==" 2299 | "resolved" "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz" 2300 | "version" "5.5.0" 2301 | dependencies: 2302 | "has-flag" "^3.0.0" 2303 | 2304 | "supports-color@^7.1.0": 2305 | "integrity" "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==" 2306 | "resolved" "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz" 2307 | "version" "7.2.0" 2308 | dependencies: 2309 | "has-flag" "^4.0.0" 2310 | 2311 | "supports-color@^8.0.0": 2312 | "integrity" "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==" 2313 | "resolved" "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz" 2314 | "version" "8.1.1" 2315 | dependencies: 2316 | "has-flag" "^4.0.0" 2317 | 2318 | "symbol-observable@^1.0.2": 2319 | "integrity" "sha512-e900nM8RRtGhlV36KGEU9k65K3mPb1WV70OdjfxlG2EAuM1noi/E/BaW/uMhL7bPEssK8QV57vN3esixjUvcXQ==" 2320 | "resolved" "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.2.0.tgz" 2321 | "version" "1.2.0" 2322 | 2323 | "timers-browserify@^2.0.4", "timers-browserify@2.0.12": 2324 | "integrity" "sha512-9phl76Cqm6FhSX9Xe1ZUAMLtm1BLkKj2Qd5ApyWkXzsMRaA7dgr81kf4wJmQf/hAvg8EEyJxDo3du/0KlhPiKQ==" 2325 | "resolved" "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.12.tgz" 2326 | "version" "2.0.12" 2327 | dependencies: 2328 | "setimmediate" "^1.0.4" 2329 | 2330 | "to-arraybuffer@^1.0.0": 2331 | "integrity" "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=" 2332 | "resolved" "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz" 2333 | "version" "1.0.1" 2334 | 2335 | "to-fast-properties@^2.0.0": 2336 | "integrity" "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=" 2337 | "resolved" "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz" 2338 | "version" "2.0.0" 2339 | 2340 | "to-regex-range@^5.0.1": 2341 | "integrity" "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==" 2342 | "resolved" "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz" 2343 | "version" "5.0.1" 2344 | dependencies: 2345 | "is-number" "^7.0.0" 2346 | 2347 | "toidentifier@1.0.0": 2348 | "integrity" "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==" 2349 | "resolved" "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz" 2350 | "version" "1.0.0" 2351 | 2352 | "tr46@^1.0.1": 2353 | "integrity" "sha1-qLE/1r/SSJUZZ0zN5VujaTtwbQk=" 2354 | "resolved" "https://registry.npmjs.org/tr46/-/tr46-1.0.1.tgz" 2355 | "version" "1.0.1" 2356 | dependencies: 2357 | "punycode" "^2.1.0" 2358 | 2359 | "ts-invariant@^0.4.0", "ts-invariant@^0.4.4": 2360 | "integrity" "sha512-uEtWkFM/sdZvRNNDL3Ehu4WVpwaulhwQszV8mrtcdeE8nN00BV9mAmQ88RkrBhFgl9gMgvjJLAQcZbnPXI9mlA==" 2361 | "resolved" "https://registry.npmjs.org/ts-invariant/-/ts-invariant-0.4.4.tgz" 2362 | "version" "0.4.4" 2363 | dependencies: 2364 | "tslib" "^1.9.3" 2365 | 2366 | "ts-pnp@^1.1.6": 2367 | "integrity" "sha512-csd+vJOb/gkzvcCHgTGSChYpy5f1/XKNsmvBGO4JXS+z1v2HobugDz4s1IeFXM3wZB44uczs+eazB5Q/ccdhQw==" 2368 | "resolved" "https://registry.npmjs.org/ts-pnp/-/ts-pnp-1.2.0.tgz" 2369 | "version" "1.2.0" 2370 | 2371 | "tslib@^1.10.0": 2372 | "integrity" "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" 2373 | "resolved" "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz" 2374 | "version" "1.14.1" 2375 | 2376 | "tslib@^1.14.1": 2377 | "integrity" "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" 2378 | "resolved" "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz" 2379 | "version" "1.14.1" 2380 | 2381 | "tslib@^1.9.3": 2382 | "integrity" "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" 2383 | "resolved" "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz" 2384 | "version" "1.14.1" 2385 | 2386 | "tslib@^2.0.3", "tslib@^2.1.0": 2387 | "integrity" "sha512-gS9GVHRU+RGn5KQM2rllAlR3dU6m7AcpJKdtH8gFvQiC4Otgk98XnmMU+nZenHt/+VhnBPWwgrJsyrdcw6i23w==" 2388 | "resolved" "https://registry.npmjs.org/tslib/-/tslib-2.2.0.tgz" 2389 | "version" "2.2.0" 2390 | 2391 | "tsscmp@1.0.6": 2392 | "integrity" "sha512-LxhtAkPDTkVCMQjt2h6eBVY28KCjikZqZfMcC15YBeNjkgUpdCfBu5HoiOTDu86v6smE8yOjyEktJ8hlbANHQA==" 2393 | "resolved" "https://registry.npmjs.org/tsscmp/-/tsscmp-1.0.6.tgz" 2394 | "version" "1.0.6" 2395 | 2396 | "tty-browserify@0.0.0": 2397 | "integrity" "sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY=" 2398 | "resolved" "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz" 2399 | "version" "0.0.0" 2400 | 2401 | "tty-browserify@0.0.1": 2402 | "integrity" "sha512-C3TaO7K81YvjCgQH9Q1S3R3P3BtN3RIM8n+OvX4il1K1zgE8ZhI0op7kClgkxtutIE8hQrcrHBXvIheqKUUCxw==" 2403 | "resolved" "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.1.tgz" 2404 | "version" "0.0.1" 2405 | 2406 | "type-fest@^0.7.1": 2407 | "integrity" "sha512-Ne2YiiGN8bmrmJJEuTWTLJR32nh/JdL1+PSicowtNb0WFpn59GK8/lfD61bVtzguz7b3PBt74nxpv/Pw5po5Rg==" 2408 | "resolved" "https://registry.npmjs.org/type-fest/-/type-fest-0.7.1.tgz" 2409 | "version" "0.7.1" 2410 | 2411 | "unbox-primitive@^1.0.1": 2412 | "integrity" "sha512-tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw==" 2413 | "resolved" "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.1.tgz" 2414 | "version" "1.0.1" 2415 | dependencies: 2416 | "function-bind" "^1.1.1" 2417 | "has-bigints" "^1.0.1" 2418 | "has-symbols" "^1.0.2" 2419 | "which-boxed-primitive" "^1.0.2" 2420 | 2421 | "unpipe@1.0.0": 2422 | "integrity" "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=" 2423 | "resolved" "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz" 2424 | "version" "1.0.0" 2425 | 2426 | "url@^0.11.0": 2427 | "integrity" "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=" 2428 | "resolved" "https://registry.npmjs.org/url/-/url-0.11.0.tgz" 2429 | "version" "0.11.0" 2430 | dependencies: 2431 | "punycode" "1.3.2" 2432 | "querystring" "0.2.0" 2433 | 2434 | "use-subscription@1.5.1": 2435 | "integrity" "sha512-Xv2a1P/yReAjAbhylMfFplFKj9GssgTwN7RlcTxBujFQcloStWNDQdc4g4NRWH9xS4i/FDk04vQBptAXoF3VcA==" 2436 | "resolved" "https://registry.npmjs.org/use-subscription/-/use-subscription-1.5.1.tgz" 2437 | "version" "1.5.1" 2438 | dependencies: 2439 | "object-assign" "^4.1.1" 2440 | 2441 | "util-deprecate@^1.0.1", "util-deprecate@~1.0.1": 2442 | "integrity" "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" 2443 | "resolved" "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz" 2444 | "version" "1.0.2" 2445 | 2446 | "util@^0.11.0": 2447 | "integrity" "sha512-HShAsny+zS2TZfaXxD9tYj4HQGlBezXZMZuM/S5PKLLoZkShZiGk9o5CzukI1LVHZvjdvZ2Sj1aW/Ndn2NB/HQ==" 2448 | "resolved" "https://registry.npmjs.org/util/-/util-0.11.1.tgz" 2449 | "version" "0.11.1" 2450 | dependencies: 2451 | "inherits" "2.0.3" 2452 | 2453 | "util@^0.12.0", "util@0.12.3": 2454 | "integrity" "sha512-I8XkoQwE+fPQEhy9v012V+TSdH2kp9ts29i20TaaDUXsg7x/onePbhFJUExBfv/2ay1ZOp/Vsm3nDlmnFGSAog==" 2455 | "resolved" "https://registry.npmjs.org/util/-/util-0.12.3.tgz" 2456 | "version" "0.12.3" 2457 | dependencies: 2458 | "inherits" "^2.0.3" 2459 | "is-arguments" "^1.0.4" 2460 | "is-generator-function" "^1.0.7" 2461 | "is-typed-array" "^1.1.3" 2462 | "safe-buffer" "^5.1.2" 2463 | "which-typed-array" "^1.1.2" 2464 | 2465 | "util@0.10.3": 2466 | "integrity" "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=" 2467 | "resolved" "https://registry.npmjs.org/util/-/util-0.10.3.tgz" 2468 | "version" "0.10.3" 2469 | dependencies: 2470 | "inherits" "2.0.1" 2471 | 2472 | "uuid@^8.3.1": 2473 | "integrity" "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==" 2474 | "resolved" "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz" 2475 | "version" "8.3.2" 2476 | 2477 | "vm-browserify@^1.0.1", "vm-browserify@1.1.2": 2478 | "integrity" "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==" 2479 | "resolved" "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz" 2480 | "version" "1.1.2" 2481 | 2482 | "watchpack@2.1.1": 2483 | "integrity" "sha512-Oo7LXCmc1eE1AjyuSBmtC3+Wy4HcV8PxWh2kP6fOl8yTlNS7r0K9l1ao2lrrUza7V39Y3D/BbJgY8VeSlc5JKw==" 2484 | "resolved" "https://registry.npmjs.org/watchpack/-/watchpack-2.1.1.tgz" 2485 | "version" "2.1.1" 2486 | dependencies: 2487 | "glob-to-regexp" "^0.4.1" 2488 | "graceful-fs" "^4.1.2" 2489 | 2490 | "webidl-conversions@^4.0.2": 2491 | "integrity" "sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==" 2492 | "resolved" "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz" 2493 | "version" "4.0.2" 2494 | 2495 | "whatwg-url@^7.0.0": 2496 | "integrity" "sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==" 2497 | "resolved" "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.1.0.tgz" 2498 | "version" "7.1.0" 2499 | dependencies: 2500 | "lodash.sortby" "^4.7.0" 2501 | "tr46" "^1.0.1" 2502 | "webidl-conversions" "^4.0.2" 2503 | 2504 | "which-boxed-primitive@^1.0.2": 2505 | "integrity" "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==" 2506 | "resolved" "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz" 2507 | "version" "1.0.2" 2508 | dependencies: 2509 | "is-bigint" "^1.0.1" 2510 | "is-boolean-object" "^1.1.0" 2511 | "is-number-object" "^1.0.4" 2512 | "is-string" "^1.0.5" 2513 | "is-symbol" "^1.0.3" 2514 | 2515 | "which-typed-array@^1.1.2": 2516 | "integrity" "sha512-49E0SpUe90cjpoc7BOJwyPHRqSAd12c10Qm2amdEZrJPCY2NDxaW01zHITrem+rnETY3dwrbH3UUrUwagfCYDA==" 2517 | "resolved" "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.4.tgz" 2518 | "version" "1.1.4" 2519 | dependencies: 2520 | "available-typed-arrays" "^1.0.2" 2521 | "call-bind" "^1.0.0" 2522 | "es-abstract" "^1.18.0-next.1" 2523 | "foreach" "^2.0.5" 2524 | "function-bind" "^1.1.1" 2525 | "has-symbols" "^1.0.1" 2526 | "is-typed-array" "^1.1.3" 2527 | 2528 | "xtend@^4.0.0", "xtend@^4.0.2": 2529 | "integrity" "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==" 2530 | "resolved" "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz" 2531 | "version" "4.0.2" 2532 | 2533 | "yocto-queue@^0.1.0": 2534 | "integrity" "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==" 2535 | "resolved" "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz" 2536 | "version" "0.1.0" 2537 | 2538 | "zen-observable-ts@^0.8.21": 2539 | "integrity" "sha512-Yj3yXweRc8LdRMrCC8nIc4kkjWecPAUVh0TI0OUrWXx6aX790vLcDlWca6I4vsyCGH3LpWxq0dJRcMOFoVqmeg==" 2540 | "resolved" "https://registry.npmjs.org/zen-observable-ts/-/zen-observable-ts-0.8.21.tgz" 2541 | "version" "0.8.21" 2542 | dependencies: 2543 | "tslib" "^1.9.3" 2544 | "zen-observable" "^0.8.0" 2545 | 2546 | "zen-observable@^0.8.0": 2547 | "integrity" "sha512-PQ2PC7R9rslx84ndNBZB/Dkv8V8fZEpk83RLgXtYd0fwUgEjseMn1Dgajh2x6S8QbZAFa9p2qVCEuYZNgve0dQ==" 2548 | "resolved" "https://registry.npmjs.org/zen-observable/-/zen-observable-0.8.15.tgz" 2549 | "version" "0.8.15" 2550 | --------------------------------------------------------------------------------