diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 0000000..5d47c21 --- /dev/null +++ b/.editorconfig @@ -0,0 +1,12 @@ +# EditorConfig is awesome: https://EditorConfig.org + +# top-most EditorConfig file +root = true + +[*] +indent_style = space +indent_size = 2 +end_of_line = lf +charset = utf-8 +trim_trailing_whitespace = true +insert_final_newline = true diff --git a/.env.example b/.env.example new file mode 100644 index 0000000..730bcc3 --- /dev/null +++ b/.env.example @@ -0,0 +1,3 @@ +API_KEY= +USERNAME= +REASON= diff --git a/.eslintrc.js b/.eslintrc.js new file mode 100644 index 0000000..40c6dcd --- /dev/null +++ b/.eslintrc.js @@ -0,0 +1,4 @@ +module.exports = { + root: true, + extends: '@react-native-community', +}; diff --git a/.gitignore b/.gitignore index 68bb1dc..bd4e169 100644 --- a/.gitignore +++ b/.gitignore @@ -13,3 +13,5 @@ web-build/ # macOS .DS_Store + +.env diff --git a/.prettierrc.js b/.prettierrc.js new file mode 100644 index 0000000..a9a7e67 --- /dev/null +++ b/.prettierrc.js @@ -0,0 +1,6 @@ +module.exports = { + bracketSpacing: true, + singleQuote: true, + trailingComma: 'all', + arrowParens: 'avoid', +}; diff --git a/App.js b/App.js deleted file mode 100644 index 8b03cbf..0000000 --- a/App.js +++ /dev/null @@ -1,28 +0,0 @@ -import { StatusBar } from "expo-status-bar"; -import React from "react"; -import { StyleSheet, SafeAreaView } from "react-native"; -import { NavigationContainer } from "@react-navigation/native"; -import { createNativeStackNavigator } from "@react-navigation/native-stack"; - -import UserCalendar from "./src/components/UserCalendar"; -import EventDetails from "./src/components/EventDetails"; - -const Stack = createNativeStackNavigator(); - -export default function App() { - return ( - - - - - - - ); -} - -const styles = StyleSheet.create({ - container: { - flex: 1, - backgroundColor: "#fff", - }, -}); diff --git a/App.tsx b/App.tsx new file mode 100644 index 0000000..e5897ba --- /dev/null +++ b/App.tsx @@ -0,0 +1,34 @@ +import React from 'react'; +import { NavigationContainer } from '@react-navigation/native'; +import { createNativeStackNavigator } from '@react-navigation/native-stack'; + +import { UserCalendar } from './src/components/UserCalendar'; +import EventDetails from './src/components/EventDetails'; + +import { Event } from './src/calendarData'; +import { EventLikesProvider } from './src/modules/eventLikes/context/eventLikesProvider'; +import { QueryClient, QueryClientProvider } from 'react-query'; + +const queryClient = new QueryClient(); + +export type RootStackParamList = { + Calendar: undefined; + Event: { event: Event }; +}; + +const Stack = createNativeStackNavigator(); + +export default function App() { + return ( + + + + + + + + + + + ); +} diff --git a/README.md b/README.md index c51772c..d6b9802 100644 --- a/README.md +++ b/README.md @@ -52,3 +52,55 @@ We would like you to make the following improvements: A perfect looking screen is much less important than making sure you are pleased with your code quality and have something that works end-to-end at least minimally. *Good luck, and have fun!* + +## My Additions + +My first task was to convert the project to use TypeScript, ESLint and Prettier. I consider these standard +requirements for any project I work on these days, and the time savings lost by implementing them up front +I gained later by not having to mentally keep track of APIs as TypeScript can handle these for me. + +Next, I installed React Native Test Library and updated the existing test for the EventDetails screen. + +Next I removed the snapshot test as I find these utterly pointless and raise too many false +positives during development, as half the time when updating project code it breaks snapshots for no actual +reason other than they don't match - even if the functionality is identical. For this reason I prefer to +test how the screens and components would be actually used by an end user, as the only time I want to know +a test has failed is when it functionally breaks. For testing how a component actually looks there are better +tools such as visual regression testing. + +Following this, I added a failing test that checked if a like button existed on the screen and was set to +the default 'not-liked' setting. If I'm 100% honest, this was my intent but I still hadn't fully formed the +actual code in my head yet so did the opposite of this state. Either way, I had a failing test I could then +build my code against. + +My next step was to create the code to pass the test. I chose to create a context provider that would allow +passing an array of 'liked' event IDs, and subsequently created a custom hook that passed this value and a +toggle function. I could then use the values from this hook in the event details screen to check whether +the screen's event id was included in this list and display the appropriate like/unlike button accordingly - +with a press handler than took care of this functionality. + +After a small refactor to encapsulate this feature within its own component, I was able to update the failing +unit test to make sure when pressing the like/unlike button the component updated accordingly. + +Next I imported this same hook into the calendar screen and was able to check each event for whether it was +liked as it was being rendered. If so, I added the like-enabled image to the end of the calendar item. + +It might be worth noting that I turned the renderItem/renderSectionHeader functions back into inline functions +in the SectionList component. This was primarily done to simplify typing these functions, but it also served +a practical purpose for the renderItem function as I was unable to include my custom hook when this function +was extracted and, due to the time pressure, I figured it wasn't worth refactoring it to allow it. + +Finally, I began to work on the calendar API call but ran out of time on this feature. I began by installing +the react-query package and adding its context provider, and I began to add its query hook into the calendar +screen (this code is still there, but commented out so you can see the approach I was going for). + +I then created an external API file that included the fetch call to the API response, which would then return +the normalised response back to the component in order to be rendered. I was able to call the API successfully +using the provided API string and credentials, however I didn't think it'd be very smart to commit secret +data to a public github repository so planned to use a `.env` file to include those values securely. However, +I wasn't able to get this feature of Expo to work properly and by then I'd run out of time, so decided to call +it a day. + +As the code to make the API call was correct and returning data back to the Calendar screen, the only main +piece of code required to complete was to normalise the API response into a properly typed and SectionList-ready +format. diff --git a/__tests__/components/__snapshots__/eventDetails.test.js.snap b/__tests__/components/__snapshots__/eventDetails.test.js.snap deleted file mode 100644 index de123f5..0000000 --- a/__tests__/components/__snapshots__/eventDetails.test.js.snap +++ /dev/null @@ -1,79 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`EventDetails renders event info correctly 1`] = ` - - - - Biffy Clyro at O2 Forum Kentish Town - - - 2 November 2021 - - - - Line Up - - - Biffy Clyro - - - -`; diff --git a/__tests__/components/eventDetails.test.js b/__tests__/components/eventDetails.test.js deleted file mode 100644 index af2238a..0000000 --- a/__tests__/components/eventDetails.test.js +++ /dev/null @@ -1,14 +0,0 @@ -import React from "react"; -import renderer from "react-test-renderer"; - -import EventDetails from "../../src/components/EventDetails"; - -import { event } from "../fixtures/events"; - -describe("EventDetails", () => { - test("renders event info correctly", () => { - const props = { route: { params: { event: event } } }; - const tree = renderer.create().toJSON(); - expect(tree).toMatchSnapshot(); - }); -}); diff --git a/__tests__/components/eventDetails.test.tsx b/__tests__/components/eventDetails.test.tsx new file mode 100644 index 0000000..c367440 --- /dev/null +++ b/__tests__/components/eventDetails.test.tsx @@ -0,0 +1,49 @@ +import React from 'react'; +import { fireEvent, render } from '@testing-library/react-native'; + +import EventDetails from '../../src/components/EventDetails'; + +import { event } from '../fixtures/events'; +import { EventLikesProvider } from '../../src/modules/eventLikes/context/eventLikesProvider'; + +describe('EventDetails', () => { + test('renders event info correctly', () => { + const props = { + navigation: jest.fn(), + route: { params: { event } }, + }; + + // @ts-expect-error incorrect props being passed (for now) + const { getByText } = render(); + + const artistTitle = getByText( + `${event.performance[0].displayName} at ${event.venue.displayName}`, + ); + + expect(artistTitle).toBeDefined(); + }); + + test('like and dislike button', () => { + const props = { + navigation: jest.fn(), + route: { params: { event } }, + }; + + const { getByA11yLabel } = render( + + {/* @ts-expect-error incorrect props being passed (for now) */} + + , + ); + + const notLikedButton = getByA11yLabel('not-liked'); + + expect(notLikedButton).toBeDefined(); + + fireEvent.press(notLikedButton); + + const likedButton = getByA11yLabel('liked'); + + expect(likedButton).toBeDefined(); + }); +}); diff --git a/__tests__/fixtures/events.js b/__tests__/fixtures/events.js index ee76ece..0cf786e 100644 --- a/__tests__/fixtures/events.js +++ b/__tests__/fixtures/events.js @@ -1,26 +1,26 @@ export const event = { id: 39657660, - displayName: "Biffy Clyro at O2 Forum Kentish Town (November 2, 2021)", - status: "ok", + displayName: 'Biffy Clyro at O2 Forum Kentish Town (November 2, 2021)', + status: 'ok', start: { - date: "2021-11-02", - datetime: "2021-11-02T19:00:00+0000", - time: "19:00:00", + date: '2021-11-02', + datetime: '2021-11-02T19:00:00+0000', + time: '19:00:00', }, performance: [ { id: 75006083, - displayName: "Biffy Clyro", - billing: "headline", + displayName: 'Biffy Clyro', + billing: 'headline', billingIndex: 1, }, ], venue: { id: 37414, - displayName: "O2 Forum Kentish Town", + displayName: 'O2 Forum Kentish Town', metroArea: { - displayName: "London", - country: { displayName: "UK" }, + displayName: 'London', + country: { displayName: 'UK' }, }, }, }; diff --git a/babel.config.js b/babel.config.js index 2900afe..d186409 100644 --- a/babel.config.js +++ b/babel.config.js @@ -1,6 +1,7 @@ -module.exports = function(api) { +module.exports = function (api) { api.cache(true); return { presets: ['babel-preset-expo'], + plugins: ['transform-inline-environment-variables'], }; }; diff --git a/jest/setup.ts b/jest/setup.ts new file mode 100644 index 0000000..a7a0e6b --- /dev/null +++ b/jest/setup.ts @@ -0,0 +1,6 @@ +/* eslint-env jest */ + +import '@testing-library/jest-native/extend-expect'; + +// Silence the warning: Animated: `useNativeDriver` is not supported because the native animated module is missing +jest.mock('react-native/Libraries/Animated/NativeAnimatedHelper'); diff --git a/package.json b/package.json index 1560408..0badb61 100644 --- a/package.json +++ b/package.json @@ -6,7 +6,9 @@ "ios": "expo start --ios", "web": "expo start --web", "eject": "expo eject", - "test": "jest" + "test": "jest", + "lint": "eslint . --ext .js,.jsx,.ts,.tsx", + "lint:fix": "eslint . --fix --ext .js,.jsx,.ts,.tsx" }, "dependencies": { "@react-navigation/native": "^6.0.6", @@ -18,19 +20,38 @@ "react-native": "0.64.2", "react-native-safe-area-context": "3.3.2", "react-native-screens": "~3.8.0", - "react-native-web": "0.17.1" + "react-native-web": "0.17.1", + "react-query": "^3.34.15" }, "devDependencies": { "@babel/core": "^7.12.9", + "@react-native-community/eslint-config": "^3.0.1", + "@testing-library/jest-native": "^4.0.4", + "@testing-library/react-native": "^9.0.0", + "@types/babel__core": "^7.1.18", + "@types/eslint": "^8.4.1", + "@types/jest": "^27.4.0", + "@types/react": "17.0.1", + "@types/react-dom": "17.0.1", + "@types/react-native": "0.64.2", + "@types/react-test-renderer": "^17.0.1", + "babel-plugin-transform-inline-environment-variables": "^0.4.3", + "eslint": "^7.32.0", "jest-expo": "^43.0.1", - "react-test-renderer": "^17.0.2" + "react-test-renderer": "^17.0.2", + "typescript": "^4.5.5" }, "jest": { "preset": "jest-expo", "transformIgnorePatterns": [ "node_modules/(?!((jest-)?react-native|@react-native(-community)?)|expo(nent)?|@expo(nent)?/.*|react-navigation|@react-navigation/.*|@unimodules/.*|unimodules|sentry-expo|native-base|react-native-svg)" ], - "modulePathIgnorePatterns": ["__tests__/fixtures/*"] + "setupFilesAfterEnv": [ + "/jest/setup.ts" + ], + "modulePathIgnorePatterns": [ + "__tests__/fixtures/*" + ] }, "private": true } diff --git a/src/api/calendar.ts b/src/api/calendar.ts new file mode 100644 index 0000000..addfc31 --- /dev/null +++ b/src/api/calendar.ts @@ -0,0 +1,22 @@ +export async function fetchCalendarEvents() { + try { + const response = await fetch( + 'https://api.songkick.com/api/3.0/users/{process.env.API_USER}/calendar.json?reason={process.env.REASON}&apikey={process.env.API_KEY}', + ); + + if (!response.ok) { + throw new Error('Failed to recieve API response'); + } + + const results: unknown = await response.json(); + + // TODO: normalise API results and return in section format + // e.g. return normaliseEventsResponse(results) + + return results; + } catch (error: unknown) { + if (error instanceof Error) { + console.error(error.message); + } + } +} diff --git a/src/calendarData.js b/src/calendarData.js deleted file mode 100644 index 025fb56..0000000 --- a/src/calendarData.js +++ /dev/null @@ -1,4079 +0,0 @@ -export const calendarData = [ - { - title: "November 2021", - data: [ - { - id: 39657660, - displayName: "Biffy Clyro at O2 Forum Kentish Town (November 2, 2021)", - type: "Concert", - uri: "https://www.songkick.com/concerts/39657660-biffy-clyro-at-o2-forum-kentish-town?utm_source=2356&utm_medium=partner", - status: "ok", - popularity: 0.08813, - start: { - date: "2021-11-02", - datetime: "2021-11-02T19:00:00+0000", - time: "19:00:00", - }, - performance: [ - { - id: 75006083, - displayName: "Biffy Clyro", - billing: "headline", - billingIndex: 1, - artist: { - id: 181912, - displayName: "Biffy Clyro", - uri: "https://www.songkick.com/artists/181912-biffy-clyro?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "892500b7-09a6-4049-ba92-2d192dd70563", - href: "https://api.songkick.com/api/3.0/artists/mbid:892500b7-09a6-4049-ba92-2d192dd70563.json", - }, - ], - }, - }, - ], - ageRestriction: null, - flaggedAsEnded: false, - venue: { - id: 37414, - displayName: "O2 Forum Kentish Town", - uri: "https://www.songkick.com/venues/37414-o2-forum-kentish-town?utm_source=2356&utm_medium=partner", - metroArea: { - displayName: "London", - country: { displayName: "UK" }, - id: 24426, - uri: "https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner", - }, - lat: 51.55214, - lng: -0.14217, - }, - location: { city: "London, UK", lat: 51.55214, lng: -0.14217 }, - }, - { - id: 39792892, - displayName: - "Willy Mason with Voka Gentle at The Boileroom (November 2, 2021)", - type: "Concert", - uri: "https://www.songkick.com/concerts/39792892-willy-mason-at-boileroom?utm_source=2356&utm_medium=partner", - status: "ok", - popularity: 0.011677, - start: { - date: "2021-11-02", - datetime: "2021-11-02T19:00:00+0000", - time: "19:00:00", - }, - performance: [ - { - id: 75227287, - displayName: "Willy Mason", - billing: "headline", - billingIndex: 1, - artist: { - id: 61968, - displayName: "Willy Mason", - uri: "https://www.songkick.com/artists/61968-willy-mason?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "d5c9ee75-5711-469f-b671-669dcde5c9bf", - href: "https://api.songkick.com/api/3.0/artists/mbid:d5c9ee75-5711-469f-b671-669dcde5c9bf.json", - }, - ], - }, - }, - { - id: 75699031, - displayName: "Voka Gentle", - billing: "support", - billingIndex: 2, - artist: { - id: 10147281, - displayName: "Voka Gentle", - uri: "https://www.songkick.com/artists/10147281-voka-gentle?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "13141069-19bc-4d5d-96a3-55fc376ff4ec", - href: "https://api.songkick.com/api/3.0/artists/mbid:13141069-19bc-4d5d-96a3-55fc376ff4ec.json", - }, - ], - }, - }, - ], - ageRestriction: null, - flaggedAsEnded: false, - venue: { - id: 3268, - displayName: "The Boileroom", - uri: "https://www.songkick.com/venues/3268-boileroom?utm_source=2356&utm_medium=partner", - metroArea: { - displayName: "London", - country: { displayName: "UK" }, - id: 24426, - uri: "https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner", - }, - lat: 51.23992, - lng: -0.57299, - }, - location: { city: "Guildford, UK", lat: 51.23992, lng: -0.57299 }, - }, - { - id: 39794127, - displayName: "Mathilda Homer at Lafayette (November 5, 2021)", - type: "Concert", - uri: "https://www.songkick.com/concerts/39794127-mathilda-homer-at-lafayette?utm_source=2356&utm_medium=partner", - status: "ok", - popularity: 0.000773, - start: { - date: "2021-11-05", - datetime: "2021-11-05T19:00:00+0000", - time: "19:00:00", - }, - performance: [ - { - id: 75229241, - displayName: "Mathilda Homer", - billing: "headline", - billingIndex: 1, - artist: { - id: 9545879, - displayName: "Mathilda Homer", - uri: "https://www.songkick.com/artists/9545879-mathilda-homer?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "1fe3de69-4bbd-4f13-bee4-2581f4bdd675", - href: "https://api.songkick.com/api/3.0/artists/mbid:1fe3de69-4bbd-4f13-bee4-2581f4bdd675.json", - }, - ], - }, - }, - ], - ageRestriction: null, - flaggedAsEnded: false, - venue: { - id: 4364813, - displayName: "Lafayette", - uri: "https://www.songkick.com/venues/4364813-lafayette?utm_source=2356&utm_medium=partner", - metroArea: { - displayName: "London", - country: { displayName: "UK" }, - id: 24426, - uri: "https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner", - }, - lat: 51.53417, - lng: -0.12596, - }, - location: { city: "London, UK", lat: 51.53417, lng: -0.12596 }, - }, - { - id: 39207965, - displayName: - "Easy Life with BERWYN at O2 Academy Brixton (November 16, 2021)", - type: "Concert", - uri: "https://www.songkick.com/concerts/39207965-easy-life-at-o2-academy-brixton?utm_source=2356&utm_medium=partner", - status: "ok", - popularity: 0.01075, - start: { - date: "2021-11-16", - datetime: "2021-11-16T19:00:00+0000", - time: "19:00:00", - }, - performance: [ - { - id: 74220176, - displayName: "Easy Life", - billing: "headline", - billingIndex: 1, - artist: { - id: 8282533, - displayName: "Easy Life", - uri: "https://www.songkick.com/artists/8282533-easy-life?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "75c13fa5-c939-4caf-855e-13d1cd332da6", - href: "https://api.songkick.com/api/3.0/artists/mbid:75c13fa5-c939-4caf-855e-13d1cd332da6.json", - }, - ], - }, - }, - { - id: 75543615, - displayName: "BERWYN", - billing: "support", - billingIndex: 2, - artist: { - id: 10142114, - displayName: "BERWYN", - uri: "https://www.songkick.com/artists/10142114-berwyn?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "1dca0c81-8361-424d-993f-1b40bcc22ae0", - href: "https://api.songkick.com/api/3.0/artists/mbid:1dca0c81-8361-424d-993f-1b40bcc22ae0.json", - }, - ], - }, - }, - ], - ageRestriction: null, - flaggedAsEnded: false, - venue: { - id: 17522, - displayName: "O2 Academy Brixton", - uri: "https://www.songkick.com/venues/17522-o2-academy-brixton?utm_source=2356&utm_medium=partner", - metroArea: { - displayName: "London", - country: { displayName: "UK" }, - id: 24426, - uri: "https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner", - }, - lat: 51.46516, - lng: -0.11493, - }, - location: { city: "London, UK", lat: 51.46516, lng: -0.11493 }, - }, - { - id: 39803982, - displayName: - "Easy Life with BERWYN at O2 Academy Brixton (November 17, 2021)", - type: "Concert", - uri: "https://www.songkick.com/concerts/39803982-easy-life-at-o2-academy-brixton?utm_source=2356&utm_medium=partner", - status: "ok", - popularity: 0.01075, - start: { - date: "2021-11-17", - datetime: "2021-11-17T19:00:00+0000", - time: "19:00:00", - }, - performance: [ - { - id: 75245973, - displayName: "Easy Life", - billing: "headline", - billingIndex: 1, - artist: { - id: 8282533, - displayName: "Easy Life", - uri: "https://www.songkick.com/artists/8282533-easy-life?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "75c13fa5-c939-4caf-855e-13d1cd332da6", - href: "https://api.songkick.com/api/3.0/artists/mbid:75c13fa5-c939-4caf-855e-13d1cd332da6.json", - }, - ], - }, - }, - { - id: 75542979, - displayName: "BERWYN", - billing: "support", - billingIndex: 2, - artist: { - id: 10142114, - displayName: "BERWYN", - uri: "https://www.songkick.com/artists/10142114-berwyn?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "1dca0c81-8361-424d-993f-1b40bcc22ae0", - href: "https://api.songkick.com/api/3.0/artists/mbid:1dca0c81-8361-424d-993f-1b40bcc22ae0.json", - }, - ], - }, - }, - ], - ageRestriction: null, - flaggedAsEnded: false, - venue: { - id: 17522, - displayName: "O2 Academy Brixton", - uri: "https://www.songkick.com/venues/17522-o2-academy-brixton?utm_source=2356&utm_medium=partner", - metroArea: { - displayName: "London", - country: { displayName: "UK" }, - id: 24426, - uri: "https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner", - }, - lat: 51.46516, - lng: -0.11493, - }, - location: { city: "London, UK", lat: 51.46516, lng: -0.11493 }, - }, - { - id: 39792261, - displayName: - "Willy Mason at The Dome, Tufnell Park (November 18, 2021)", - type: "Concert", - uri: "https://www.songkick.com/concerts/39792261-willy-mason-at-dome-tufnell-park?utm_source=2356&utm_medium=partner", - status: "ok", - popularity: 0.012093, - start: { date: "2021-11-18", datetime: null, time: null }, - performance: [ - { - id: 75226380, - displayName: "Willy Mason", - billing: "headline", - billingIndex: 1, - artist: { - id: 61968, - displayName: "Willy Mason", - uri: "https://www.songkick.com/artists/61968-willy-mason?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "d5c9ee75-5711-469f-b671-669dcde5c9bf", - href: "https://api.songkick.com/api/3.0/artists/mbid:d5c9ee75-5711-469f-b671-669dcde5c9bf.json", - }, - ], - }, - }, - ], - ageRestriction: null, - flaggedAsEnded: false, - venue: { - id: 29349, - displayName: "The Dome, Tufnell Park", - uri: "https://www.songkick.com/venues/29349-dome-tufnell-park?utm_source=2356&utm_medium=partner", - metroArea: { - displayName: "London", - country: { displayName: "UK" }, - id: 24426, - uri: "https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner", - }, - lat: 51.55759, - lng: -0.13877, - }, - location: { city: "London, UK", lat: 51.55759, lng: -0.13877 }, - }, - { - id: 39849714, - displayName: - "Yo La Tengo at Royal Festival Hall, Southbank Centre (November 19, 2021)", - type: "Concert", - uri: "https://www.songkick.com/concerts/39849714-yo-la-tengo-at-royal-festival-hall-southbank-centre?utm_source=2356&utm_medium=partner", - status: "ok", - popularity: 0.068049, - start: { date: "2021-11-19", datetime: null, time: null }, - performance: [ - { - id: 75319375, - displayName: "Yo La Tengo", - billing: "headline", - billingIndex: 1, - artist: { - id: 70762, - displayName: "Yo La Tengo", - uri: "https://www.songkick.com/artists/70762-yo-la-tengo?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "3f542031-b054-454d-b57b-812fa2a81b11", - href: "https://api.songkick.com/api/3.0/artists/mbid:3f542031-b054-454d-b57b-812fa2a81b11.json", - }, - ], - }, - }, - ], - ageRestriction: null, - flaggedAsEnded: false, - venue: { - id: 17582, - displayName: "Royal Festival Hall, Southbank Centre", - uri: "https://www.songkick.com/venues/17582-royal-festival-hall-southbank-centre?utm_source=2356&utm_medium=partner", - metroArea: { - displayName: "London", - country: { displayName: "UK" }, - id: 24426, - uri: "https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner", - }, - lat: 51.5034, - lng: -0.11745, - }, - location: { city: "London, UK", lat: 51.5034, lng: -0.11745 }, - }, - { - id: 39616396, - displayName: - "Sam Fender with Gang of Youths at Alexandra Palace (November 20, 2021)", - type: "Concert", - uri: "https://www.songkick.com/concerts/39616396-sam-fender-at-alexandra-palace?utm_source=2356&utm_medium=partner", - status: "ok", - popularity: 0.021183, - start: { - date: "2021-11-20", - datetime: "2021-11-20T18:30:00+0000", - time: "18:30:00", - }, - performance: [ - { - id: 74935031, - displayName: "Sam Fender", - billing: "headline", - billingIndex: 1, - artist: { - id: 6907314, - displayName: "Sam Fender", - uri: "https://www.songkick.com/artists/6907314-sam-fender?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "3478a5d1-bd96-4584-aa54-4d6e0a329658", - href: "https://api.songkick.com/api/3.0/artists/mbid:3478a5d1-bd96-4584-aa54-4d6e0a329658.json", - }, - ], - }, - }, - { - id: 74935032, - displayName: "Gang of Youths", - billing: "support", - billingIndex: 2, - artist: { - id: 6400184, - displayName: "Gang of Youths", - uri: "https://www.songkick.com/artists/6400184-gang-of-youths?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "99c5de7a-d0b9-4454-98bc-b4f6679a9ce7", - href: "https://api.songkick.com/api/3.0/artists/mbid:99c5de7a-d0b9-4454-98bc-b4f6679a9ce7.json", - }, - ], - }, - }, - ], - ageRestriction: null, - flaggedAsEnded: false, - venue: { - id: 1787, - displayName: "Alexandra Palace", - uri: "https://www.songkick.com/venues/1787-alexandra-palace?utm_source=2356&utm_medium=partner", - metroArea: { - displayName: "London", - country: { displayName: "UK" }, - id: 24426, - uri: "https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner", - }, - lat: 51.59079, - lng: -0.13318, - }, - location: { city: "London, UK", lat: 51.59079, lng: -0.13318 }, - }, - { - id: 39158410, - displayName: - "Sam Fender with Gang of Youths at Alexandra Palace (November 21, 2021)", - type: "Concert", - uri: "https://www.songkick.com/concerts/39158410-sam-fender-at-alexandra-palace?utm_source=2356&utm_medium=partner", - status: "ok", - popularity: 0.021183, - start: { - date: "2021-11-21", - datetime: "2021-11-21T18:30:00+0000", - time: "18:30:00", - }, - performance: [ - { - id: 74136401, - displayName: "Sam Fender", - billing: "headline", - billingIndex: 1, - artist: { - id: 6907314, - displayName: "Sam Fender", - uri: "https://www.songkick.com/artists/6907314-sam-fender?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "3478a5d1-bd96-4584-aa54-4d6e0a329658", - href: "https://api.songkick.com/api/3.0/artists/mbid:3478a5d1-bd96-4584-aa54-4d6e0a329658.json", - }, - ], - }, - }, - { - id: 74818844, - displayName: "Gang of Youths", - billing: "support", - billingIndex: 2, - artist: { - id: 6400184, - displayName: "Gang of Youths", - uri: "https://www.songkick.com/artists/6400184-gang-of-youths?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "99c5de7a-d0b9-4454-98bc-b4f6679a9ce7", - href: "https://api.songkick.com/api/3.0/artists/mbid:99c5de7a-d0b9-4454-98bc-b4f6679a9ce7.json", - }, - ], - }, - }, - ], - ageRestriction: null, - flaggedAsEnded: false, - venue: { - id: 1787, - displayName: "Alexandra Palace", - uri: "https://www.songkick.com/venues/1787-alexandra-palace?utm_source=2356&utm_medium=partner", - metroArea: { - displayName: "London", - country: { displayName: "UK" }, - id: 24426, - uri: "https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner", - }, - lat: 51.59079, - lng: -0.13318, - }, - location: { city: "London, UK", lat: 51.59079, lng: -0.13318 }, - }, - { - id: 39623647, - displayName: - "Sports Team with Courting at O2 Academy Brixton (November 25, 2021)", - type: "Concert", - uri: "https://www.songkick.com/concerts/39623647-sports-team-at-o2-academy-brixton?utm_source=2356&utm_medium=partner", - status: "ok", - popularity: 0.003686, - start: { - date: "2021-11-25", - datetime: "2021-11-25T07:00:00+0000", - time: "07:00:00", - }, - performance: [ - { - id: 74947467, - displayName: "Sports Team", - billing: "headline", - billingIndex: 1, - artist: { - id: 7599019, - displayName: "Sports Team", - uri: "https://www.songkick.com/artists/7599019-sports-team?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "bf5931bd-4cf6-4c64-8c1b-140242238507", - href: "https://api.songkick.com/api/3.0/artists/mbid:bf5931bd-4cf6-4c64-8c1b-140242238507.json", - }, - ], - }, - }, - { - id: 75499512, - displayName: "Courting", - billing: "support", - billingIndex: 2, - artist: { - id: 9743649, - displayName: "Courting", - uri: "https://www.songkick.com/artists/9743649-courting?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "2ba62367-f36f-4d49-9439-9a81f22a47ce", - href: "https://api.songkick.com/api/3.0/artists/mbid:2ba62367-f36f-4d49-9439-9a81f22a47ce.json", - }, - ], - }, - }, - ], - ageRestriction: null, - flaggedAsEnded: false, - venue: { - id: 17522, - displayName: "O2 Academy Brixton", - uri: "https://www.songkick.com/venues/17522-o2-academy-brixton?utm_source=2356&utm_medium=partner", - metroArea: { - displayName: "London", - country: { displayName: "UK" }, - id: 24426, - uri: "https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner", - }, - lat: 51.46516, - lng: -0.11493, - }, - location: { city: "London, UK", lat: 51.46516, lng: -0.11493 }, - }, - { - id: 39848460, - displayName: - "Mr Jukes with Barney Artist, Mr Jukes & Barney Artist, and MANIK MC at Scala (November 29, 2021)", - type: "Concert", - uri: "https://www.songkick.com/concerts/39848460-mr-jukes-at-scala?utm_source=2356&utm_medium=partner", - status: "ok", - popularity: 0.007457, - start: { - date: "2021-11-29", - datetime: "2021-11-29T19:30:00+0000", - time: "19:30:00", - }, - performance: [ - { - id: 75317413, - displayName: "Mr Jukes", - billing: "headline", - billingIndex: 1, - artist: { - id: 9133079, - displayName: "Mr Jukes", - uri: "https://www.songkick.com/artists/9133079-mr-jukes?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "7c2bc378-506f-40bf-a53f-038755e4bf86", - href: "https://api.songkick.com/api/3.0/artists/mbid:7c2bc378-506f-40bf-a53f-038755e4bf86.json", - }, - ], - }, - }, - { - id: 75321115, - displayName: "Barney Artist", - billing: "support", - billingIndex: 2, - artist: { - id: 8292408, - displayName: "Barney Artist", - uri: "https://www.songkick.com/artists/8292408-barney-artist?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "c3765eb4-2510-4e6e-ba7e-31d7c35096b7", - href: "https://api.songkick.com/api/3.0/artists/mbid:c3765eb4-2510-4e6e-ba7e-31d7c35096b7.json", - }, - ], - }, - }, - { - id: 75494564, - displayName: "Mr Jukes & Barney Artist", - billing: "support", - billingIndex: 3, - artist: { - id: 10165368, - displayName: "Mr Jukes & Barney Artist", - uri: "https://www.songkick.com/artists/10165368-mr-jukes-and-barney-artist?utm_source=2356&utm_medium=partner", - identifier: [], - }, - }, - { - id: 75652122, - displayName: "MANIK MC", - billing: "support", - billingIndex: 4, - artist: { - id: 9857499, - displayName: "MANIK MC", - uri: "https://www.songkick.com/artists/9857499-manik-mc?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "091d4c01-6b9b-4834-8ddd-cb779291fbd5", - href: "https://api.songkick.com/api/3.0/artists/mbid:091d4c01-6b9b-4834-8ddd-cb779291fbd5.json", - }, - ], - }, - }, - ], - ageRestriction: null, - flaggedAsEnded: false, - venue: { - id: 3428, - displayName: "Scala", - uri: "https://www.songkick.com/venues/3428-scala?utm_source=2356&utm_medium=partner", - metroArea: { - displayName: "London", - country: { displayName: "UK" }, - id: 24426, - uri: "https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner", - }, - lat: 51.53093, - lng: -0.12027, - }, - location: { city: "London, UK", lat: 51.53093, lng: -0.12027 }, - }, - ], - }, - { - title: "December 2021", - data: [ - { - id: 39842037, - displayName: - "Eagles of Death Metal with BONES UK at The Roundhouse (December 2, 2021)", - type: "Concert", - uri: "https://www.songkick.com/concerts/39842037-eagles-of-death-metal-at-roundhouse?utm_source=2356&utm_medium=partner", - status: "ok", - popularity: 0.042593, - start: { - date: "2021-12-02", - datetime: "2021-12-02T19:00:00+0000", - time: "19:00:00", - }, - performance: [ - { - id: 75306945, - displayName: "Eagles of Death Metal", - billing: "headline", - billingIndex: 1, - artist: { - id: 527957, - displayName: "Eagles of Death Metal", - uri: "https://www.songkick.com/artists/527957-eagles-of-death-metal?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "de11b037-d880-40e0-8901-0397c768c457", - href: "https://api.songkick.com/api/3.0/artists/mbid:de11b037-d880-40e0-8901-0397c768c457.json", - }, - ], - }, - }, - { - id: 75461655, - displayName: "BONES UK", - billing: "support", - billingIndex: 2, - artist: { - id: 8312908, - displayName: "BONES UK", - uri: "https://www.songkick.com/artists/8312908-bones-uk?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "61750ee6-6dad-45e4-b994-7d5a03046719", - href: "https://api.songkick.com/api/3.0/artists/mbid:61750ee6-6dad-45e4-b994-7d5a03046719.json", - }, - ], - }, - }, - ], - ageRestriction: null, - flaggedAsEnded: false, - venue: { - id: 17874, - displayName: "The Roundhouse", - uri: "https://www.songkick.com/venues/17874-roundhouse?utm_source=2356&utm_medium=partner", - metroArea: { - displayName: "London", - country: { displayName: "UK" }, - id: 24426, - uri: "https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner", - }, - lat: 51.54296, - lng: -0.1492, - }, - location: { city: "London, UK", lat: 51.54296, lng: -0.1492 }, - }, - { - id: 39595848, - displayName: "Fenne Lily with Katie Malco at Omeara (December 4, 2021)", - type: "Concert", - uri: "https://www.songkick.com/concerts/39595848-fenne-lily-at-omeara?utm_source=2356&utm_medium=partner", - status: "ok", - popularity: 0.006036, - start: { - date: "2021-12-04", - datetime: "2021-12-04T19:00:00+0000", - time: "19:00:00", - }, - performance: [ - { - id: 74893210, - displayName: "Fenne Lily", - billing: "headline", - billingIndex: 1, - artist: { - id: 8455673, - displayName: "Fenne Lily", - uri: "https://www.songkick.com/artists/8455673-fenne-lily?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "cd295735-b68a-4b5d-aa10-de0dea37ca89", - href: "https://api.songkick.com/api/3.0/artists/mbid:cd295735-b68a-4b5d-aa10-de0dea37ca89.json", - }, - ], - }, - }, - { - id: 75477541, - displayName: "Katie Malco", - billing: "support", - billingIndex: 2, - artist: { - id: 2268067, - displayName: "Katie Malco", - uri: "https://www.songkick.com/artists/2268067-katie-malco?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "57ea5b34-a835-41c2-a82d-25a49cb719ca", - href: "https://api.songkick.com/api/3.0/artists/mbid:57ea5b34-a835-41c2-a82d-25a49cb719ca.json", - }, - ], - }, - }, - ], - ageRestriction: null, - flaggedAsEnded: false, - venue: { - id: 3375829, - displayName: "Omeara", - uri: "https://www.songkick.com/venues/3375829-omeara?utm_source=2356&utm_medium=partner", - metroArea: { - displayName: "London", - country: { displayName: "UK" }, - id: 24426, - uri: "https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner", - }, - lat: 51.50417, - lng: -0.09472, - }, - location: { city: "London, UK", lat: 51.50417, lng: -0.09472 }, - }, - { - id: 39688298, - displayName: "Malaki at Camden Assembly (December 7, 2021)", - type: "Concert", - uri: "https://www.songkick.com/concerts/39688298-malaki-at-camden-assembly?utm_source=2356&utm_medium=partner", - status: "ok", - popularity: 0.000437, - start: { - date: "2021-12-07", - datetime: "2021-12-07T19:00:00+0000", - time: "19:00:00", - }, - performance: [ - { - id: 75054374, - displayName: "Malaki", - billing: "headline", - billingIndex: 1, - artist: { - id: 8257838, - displayName: "Malaki", - uri: "https://www.songkick.com/artists/8257838-malaki?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "5c8e7026-adfa-468d-8ffd-4f971df42d46", - href: "https://api.songkick.com/api/3.0/artists/mbid:5c8e7026-adfa-468d-8ffd-4f971df42d46.json", - }, - ], - }, - }, - ], - ageRestriction: null, - flaggedAsEnded: false, - venue: { - id: 7786, - displayName: "Camden Assembly", - uri: "https://www.songkick.com/venues/7786-camden-assembly?utm_source=2356&utm_medium=partner", - metroArea: { - displayName: "London", - country: { displayName: "UK" }, - id: 24426, - uri: "https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner", - }, - lat: 51.54311, - lng: -0.14923, - }, - location: { city: "Camden, UK", lat: 51.54311, lng: -0.14923 }, - }, - { - id: 39324428, - displayName: "Il Divo at SSE Arena, Wembley (December 17, 2021)", - type: "Concert", - uri: "https://www.songkick.com/concerts/39324428-il-divo-at-sse-arena-wembley?utm_source=2356&utm_medium=partner", - status: "ok", - popularity: 0.022215, - start: { - date: "2021-12-17", - datetime: "2021-12-17T18:00:00+0000", - time: "18:00:00", - }, - performance: [ - { - id: 74413889, - displayName: "Il Divo", - billing: "headline", - billingIndex: 1, - artist: { - id: 197544, - displayName: "Il Divo", - uri: "https://www.songkick.com/artists/197544-il-divo?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "e555f0c3-0a83-4c57-8a67-e657aac27ace", - href: "https://api.songkick.com/api/3.0/artists/mbid:e555f0c3-0a83-4c57-8a67-e657aac27ace.json", - }, - ], - }, - }, - ], - ageRestriction: null, - flaggedAsEnded: false, - venue: { - id: 1686, - displayName: "SSE Arena, Wembley", - uri: "https://www.songkick.com/venues/1686-sse-arena-wembley?utm_source=2356&utm_medium=partner", - metroArea: { - displayName: "London", - country: { displayName: "UK" }, - id: 24426, - uri: "https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner", - }, - lat: 51.55861, - lng: -0.28033, - }, - location: { city: "London, UK", lat: 51.55861, lng: -0.28033 }, - }, - ], - }, - { - title: "January 2022", - data: [ - { - id: 39762581, - displayName: "La Femme at O2 Forum Kentish Town (January 13, 2022)", - type: "Concert", - uri: "https://www.songkick.com/concerts/39762581-la-femme-at-o2-forum-kentish-town?utm_source=2356&utm_medium=partner", - status: "ok", - popularity: 0.01774, - start: { - date: "2022-01-13", - datetime: "2022-01-13T19:00:00+0000", - time: "19:00:00", - }, - performance: [ - { - id: 75176475, - displayName: "La Femme", - billing: "headline", - billingIndex: 1, - artist: { - id: 130301, - displayName: "La Femme", - uri: "https://www.songkick.com/artists/130301-la-femme?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "45ce3d4f-3cb5-474a-a3b0-614b0f517349", - href: "https://api.songkick.com/api/3.0/artists/mbid:45ce3d4f-3cb5-474a-a3b0-614b0f517349.json", - }, - { - mbid: "559211a5-2a51-4346-ba84-5cc74821a1cd", - href: "https://api.songkick.com/api/3.0/artists/mbid:559211a5-2a51-4346-ba84-5cc74821a1cd.json", - }, - ], - }, - }, - ], - ageRestriction: null, - flaggedAsEnded: false, - venue: { - id: 37414, - displayName: "O2 Forum Kentish Town", - uri: "https://www.songkick.com/venues/37414-o2-forum-kentish-town?utm_source=2356&utm_medium=partner", - metroArea: { - displayName: "London", - country: { displayName: "UK" }, - id: 24426, - uri: "https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner", - }, - lat: 51.55214, - lng: -0.14217, - }, - location: { city: "London, UK", lat: 51.55214, lng: -0.14217 }, - }, - { - id: 39411702, - displayName: "Lime Cordiale at The Garage (January 14, 2022)", - type: "Concert", - uri: "https://www.songkick.com/concerts/39411702-lime-cordiale-at-garage?utm_source=2356&utm_medium=partner", - status: "ok", - popularity: 0.012772, - start: { - date: "2022-01-14", - datetime: "2022-01-14T19:00:00+0000", - time: "19:00:00", - }, - performance: [ - { - id: 74563666, - displayName: "Lime Cordiale", - billing: "headline", - billingIndex: 1, - artist: { - id: 3670801, - displayName: "Lime Cordiale", - uri: "https://www.songkick.com/artists/3670801-lime-cordiale?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "ebbbea25-2e67-4d85-b720-97dbede34cf3", - href: "https://api.songkick.com/api/3.0/artists/mbid:ebbbea25-2e67-4d85-b720-97dbede34cf3.json", - }, - ], - }, - }, - ], - ageRestriction: null, - flaggedAsEnded: false, - venue: { - id: 9314, - displayName: "The Garage", - uri: "https://www.songkick.com/venues/9314-garage?utm_source=2356&utm_medium=partner", - metroArea: { - displayName: "London", - country: { displayName: "UK" }, - id: 24426, - uri: "https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner", - }, - lat: null, - lng: null, - }, - location: { city: "London, UK", lat: 51.5078, lng: -0.128 }, - }, - { - id: 39489329, - displayName: "Lime Cordiale at Electric Ballroom (January 15, 2022)", - type: "Concert", - uri: "https://www.songkick.com/concerts/39489329-lime-cordiale-at-electric-ballroom?utm_source=2356&utm_medium=partner", - status: "ok", - popularity: 0.013228, - start: { - date: "2022-01-15", - datetime: "2022-01-15T18:00:00+0000", - time: "18:00:00", - }, - performance: [ - { - id: 74702570, - displayName: "Lime Cordiale", - billing: "headline", - billingIndex: 1, - artist: { - id: 3670801, - displayName: "Lime Cordiale", - uri: "https://www.songkick.com/artists/3670801-lime-cordiale?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "ebbbea25-2e67-4d85-b720-97dbede34cf3", - href: "https://api.songkick.com/api/3.0/artists/mbid:ebbbea25-2e67-4d85-b720-97dbede34cf3.json", - }, - ], - }, - }, - ], - ageRestriction: null, - flaggedAsEnded: false, - venue: { - id: 16762, - displayName: "Electric Ballroom", - uri: "https://www.songkick.com/venues/16762-electric-ballroom?utm_source=2356&utm_medium=partner", - metroArea: { - displayName: "London", - country: { displayName: "UK" }, - id: 24426, - uri: "https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner", - }, - lat: 51.5397, - lng: -0.143, - }, - location: { city: "London, UK", lat: 51.5397, lng: -0.143 }, - }, - ], - }, - { - title: "February 2022", - data: [ - { - id: 39836946, - displayName: - "Benjamin Francis Leftwich at Lafayette (February 2, 2022)", - type: "Concert", - uri: "https://www.songkick.com/concerts/39836946-benjamin-francis-leftwich-at-lafayette?utm_source=2356&utm_medium=partner", - status: "ok", - popularity: 0.046561, - start: { - date: "2022-02-02", - datetime: "2022-02-02T19:00:00+0000", - time: "19:00:00", - }, - performance: [ - { - id: 75298128, - displayName: "Benjamin Francis Leftwich", - billing: "headline", - billingIndex: 1, - artist: { - id: 3050976, - displayName: "Benjamin Francis Leftwich", - uri: "https://www.songkick.com/artists/3050976-benjamin-francis-leftwich?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "b9e82c61-c1ec-4b42-9233-ca3567d2f2da", - href: "https://api.songkick.com/api/3.0/artists/mbid:b9e82c61-c1ec-4b42-9233-ca3567d2f2da.json", - }, - ], - }, - }, - ], - ageRestriction: null, - flaggedAsEnded: false, - venue: { - id: 4364813, - displayName: "Lafayette", - uri: "https://www.songkick.com/venues/4364813-lafayette?utm_source=2356&utm_medium=partner", - metroArea: { - displayName: "London", - country: { displayName: "UK" }, - id: 24426, - uri: "https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner", - }, - lat: 51.53417, - lng: -0.12596, - }, - location: { city: "London, UK", lat: 51.53417, lng: -0.12596 }, - }, - { - id: 39486373, - displayName: "Tom Rosenthal at Lafayette (February 7, 2022)", - type: "Concert", - uri: "https://www.songkick.com/concerts/39486373-tom-rosenthal-at-lafayette?utm_source=2356&utm_medium=partner", - status: "ok", - popularity: 0.015618, - start: { - date: "2022-02-07", - datetime: "2022-02-07T19:00:00+0000", - time: "19:00:00", - }, - performance: [ - { - id: 74697391, - displayName: "Tom Rosenthal", - billing: "headline", - billingIndex: 1, - artist: { - id: 605621, - displayName: "Tom Rosenthal", - uri: "https://www.songkick.com/artists/605621-tom-rosenthal?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "a80f56d4-2030-4422-a365-2ed209ecfb58", - href: "https://api.songkick.com/api/3.0/artists/mbid:a80f56d4-2030-4422-a365-2ed209ecfb58.json", - }, - ], - }, - }, - ], - ageRestriction: null, - flaggedAsEnded: false, - venue: { - id: 4364813, - displayName: "Lafayette", - uri: "https://www.songkick.com/venues/4364813-lafayette?utm_source=2356&utm_medium=partner", - metroArea: { - displayName: "London", - country: { displayName: "UK" }, - id: 24426, - uri: "https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner", - }, - lat: null, - lng: null, - }, - location: { city: "London, UK", lat: 51.5078, lng: -0.128 }, - }, - { - id: 39136775, - displayName: "Simply Red with Mica Paris at The O2 (February 19, 2022)", - type: "Concert", - uri: "https://www.songkick.com/concerts/39136775-simply-red-at-o2?utm_source=2356&utm_medium=partner", - status: "ok", - popularity: 0.061389, - start: { - date: "2022-02-19", - datetime: "2022-02-19T18:00:00+0000", - time: "18:00:00", - }, - performance: [ - { - id: 74099893, - displayName: "Simply Red", - billing: "headline", - billingIndex: 1, - artist: { - id: 364324, - displayName: "Simply Red", - uri: "https://www.songkick.com/artists/364324-simply-red?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "a9100753-f539-43cf-bcc9-579566fb512e", - href: "https://api.songkick.com/api/3.0/artists/mbid:a9100753-f539-43cf-bcc9-579566fb512e.json", - }, - ], - }, - }, - { - id: 75405553, - displayName: "Mica Paris", - billing: "support", - billingIndex: 2, - artist: { - id: 88314, - displayName: "Mica Paris", - uri: "https://www.songkick.com/artists/88314-mica-paris?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "8e999f06-978a-4bff-8f18-9832403c1da6", - href: "https://api.songkick.com/api/3.0/artists/mbid:8e999f06-978a-4bff-8f18-9832403c1da6.json", - }, - ], - }, - }, - ], - ageRestriction: null, - flaggedAsEnded: false, - venue: { - id: 17532, - displayName: "The O2", - uri: "https://www.songkick.com/venues/17532-o2?utm_source=2356&utm_medium=partner", - metroArea: { - displayName: "London", - country: { displayName: "UK" }, - id: 24426, - uri: "https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner", - }, - lat: 51.50094, - lng: 0.00536, - }, - location: { city: "London, UK", lat: 51.50094, lng: 0.00536 }, - }, - { - id: 39207083, - displayName: "Simply Red with Mica Paris at The O2 (February 20, 2022)", - type: "Concert", - uri: "https://www.songkick.com/concerts/39207083-simply-red-at-o2?utm_source=2356&utm_medium=partner", - status: "ok", - popularity: 0.061389, - start: { - date: "2022-02-20", - datetime: "2022-02-20T18:00:00+0000", - time: "18:00:00", - }, - performance: [ - { - id: 74218737, - displayName: "Simply Red", - billing: "headline", - billingIndex: 1, - artist: { - id: 364324, - displayName: "Simply Red", - uri: "https://www.songkick.com/artists/364324-simply-red?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "a9100753-f539-43cf-bcc9-579566fb512e", - href: "https://api.songkick.com/api/3.0/artists/mbid:a9100753-f539-43cf-bcc9-579566fb512e.json", - }, - ], - }, - }, - { - id: 75405552, - displayName: "Mica Paris", - billing: "support", - billingIndex: 2, - artist: { - id: 88314, - displayName: "Mica Paris", - uri: "https://www.songkick.com/artists/88314-mica-paris?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "8e999f06-978a-4bff-8f18-9832403c1da6", - href: "https://api.songkick.com/api/3.0/artists/mbid:8e999f06-978a-4bff-8f18-9832403c1da6.json", - }, - ], - }, - }, - ], - ageRestriction: null, - flaggedAsEnded: false, - venue: { - id: 17532, - displayName: "The O2", - uri: "https://www.songkick.com/venues/17532-o2?utm_source=2356&utm_medium=partner", - metroArea: { - displayName: "London", - country: { displayName: "UK" }, - id: 24426, - uri: "https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner", - }, - lat: 51.50094, - lng: 0.00536, - }, - location: { city: "London, UK", lat: 51.50094, lng: 0.00536 }, - }, - ], - }, - { - title: "March 2022", - data: [ - { - id: 39848461, - displayName: - "The Lumineers with Gregory Alan Isakov at The O2 (March 4, 2022)", - type: "Concert", - uri: "https://www.songkick.com/concerts/39848461-lumineers-at-o2?utm_source=2356&utm_medium=partner", - status: "ok", - popularity: 0.329423, - start: { - date: "2022-03-04", - datetime: "2022-03-04T19:00:00+0000", - time: "19:00:00", - }, - performance: [ - { - id: 75317414, - displayName: "The Lumineers", - billing: "headline", - billingIndex: 1, - artist: { - id: 2827981, - displayName: "The Lumineers", - uri: "https://www.songkick.com/artists/2827981-lumineers?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "bfcb6630-9b31-4e63-b11f-7b0363be72b5", - href: "https://api.songkick.com/api/3.0/artists/mbid:bfcb6630-9b31-4e63-b11f-7b0363be72b5.json", - }, - ], - }, - }, - { - id: 75333335, - displayName: "Gregory Alan Isakov", - billing: "support", - billingIndex: 2, - artist: { - id: 41674, - displayName: "Gregory Alan Isakov", - uri: "https://www.songkick.com/artists/41674-gregory-alan-isakov?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "5c61efe6-3cdf-4160-b43c-9274944369e6", - href: "https://api.songkick.com/api/3.0/artists/mbid:5c61efe6-3cdf-4160-b43c-9274944369e6.json", - }, - ], - }, - }, - ], - ageRestriction: null, - flaggedAsEnded: false, - venue: { - id: 17532, - displayName: "The O2", - uri: "https://www.songkick.com/venues/17532-o2?utm_source=2356&utm_medium=partner", - metroArea: { - displayName: "London", - country: { displayName: "UK" }, - id: 24426, - uri: "https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner", - }, - lat: 51.50094, - lng: 0.00536, - }, - location: { city: "London, UK", lat: 51.50094, lng: 0.00536 }, - }, - { - id: 39719781, - displayName: "Yumi Zouma at Lafayette (March 18, 2022)", - type: "Concert", - uri: "https://www.songkick.com/concerts/39719781-yumi-zouma-at-lafayette?utm_source=2356&utm_medium=partner", - status: "ok", - popularity: 0.009886, - start: { - date: "2022-03-18", - datetime: "2022-03-18T19:30:00+0000", - time: "19:30:00", - }, - performance: [ - { - id: 75104497, - displayName: "Yumi Zouma", - billing: "headline", - billingIndex: 1, - artist: { - id: 7736594, - displayName: "Yumi Zouma", - uri: "https://www.songkick.com/artists/7736594-yumi-zouma?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "6e3252a1-397d-4bf8-b2b7-d16f7fbcb3dd", - href: "https://api.songkick.com/api/3.0/artists/mbid:6e3252a1-397d-4bf8-b2b7-d16f7fbcb3dd.json", - }, - ], - }, - }, - ], - ageRestriction: null, - flaggedAsEnded: false, - venue: { - id: 4364813, - displayName: "Lafayette", - uri: "https://www.songkick.com/venues/4364813-lafayette?utm_source=2356&utm_medium=partner", - metroArea: { - displayName: "London", - country: { displayName: "UK" }, - id: 24426, - uri: "https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner", - }, - lat: 51.53417, - lng: -0.12596, - }, - location: { city: "London, UK", lat: 51.53417, lng: -0.12596 }, - }, - { - id: 39769471, - displayName: "RY X at The Roundhouse (March 20, 2022)", - type: "Concert", - uri: "https://www.songkick.com/concerts/39769471-ry-x-at-roundhouse?utm_source=2356&utm_medium=partner", - status: "ok", - popularity: 0.038413, - start: { - date: "2022-03-20", - datetime: "2022-03-20T19:00:00+0000", - time: "19:00:00", - }, - performance: [ - { - id: 75187604, - displayName: "RY X", - billing: "headline", - billingIndex: 1, - artist: { - id: 6888059, - displayName: "RY X", - uri: "https://www.songkick.com/artists/6888059-ry-x?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "3b4cd16e-3a25-4c7b-ada6-33f5ea91e1b1", - href: "https://api.songkick.com/api/3.0/artists/mbid:3b4cd16e-3a25-4c7b-ada6-33f5ea91e1b1.json", - }, - ], - }, - }, - ], - ageRestriction: null, - flaggedAsEnded: false, - venue: { - id: 17874, - displayName: "The Roundhouse", - uri: "https://www.songkick.com/venues/17874-roundhouse?utm_source=2356&utm_medium=partner", - metroArea: { - displayName: "London", - country: { displayName: "UK" }, - id: 24426, - uri: "https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner", - }, - lat: 51.54296, - lng: -0.1492, - }, - location: { city: "London, UK", lat: 51.54296, lng: -0.1492 }, - }, - { - id: 39637893, - displayName: "POLO & PAN at O2 Forum Kentish Town (March 29, 2022)", - type: "Concert", - uri: "https://www.songkick.com/concerts/39637893-polo-and-pan-at-o2-forum-kentish-town?utm_source=2356&utm_medium=partner", - status: "ok", - popularity: 0.023074, - start: { - date: "2022-03-29", - datetime: "2022-03-29T19:00:00+0100", - time: "19:00:00", - }, - performance: [ - { - id: 74972212, - displayName: "POLO & PAN", - billing: "headline", - billingIndex: 1, - artist: { - id: 8544689, - displayName: "POLO & PAN", - uri: "https://www.songkick.com/artists/8544689-polo-and-pan?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "1d9ec7ea-0fa4-41d9-917b-723c735ebbfe", - href: "https://api.songkick.com/api/3.0/artists/mbid:1d9ec7ea-0fa4-41d9-917b-723c735ebbfe.json", - }, - ], - }, - }, - ], - ageRestriction: null, - flaggedAsEnded: false, - venue: { - id: 37414, - displayName: "O2 Forum Kentish Town", - uri: "https://www.songkick.com/venues/37414-o2-forum-kentish-town?utm_source=2356&utm_medium=partner", - metroArea: { - displayName: "London", - country: { displayName: "UK" }, - id: 24426, - uri: "https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner", - }, - lat: 51.55214, - lng: -0.14217, - }, - location: { city: "London, UK", lat: 51.55214, lng: -0.14217 }, - }, - { - id: 39845378, - displayName: - "Japanese Breakfast at O2 Forum Kentish Town (March 30, 2022)", - type: "Concert", - uri: "https://www.songkick.com/concerts/39845378-japanese-breakfast-at-o2-forum-kentish-town?utm_source=2356&utm_medium=partner", - status: "ok", - popularity: 0.0206, - start: { - date: "2022-03-30", - datetime: "2022-03-30T19:00:00+0100", - time: "19:00:00", - }, - performance: [ - { - id: 75312486, - displayName: "Japanese Breakfast", - billing: "headline", - billingIndex: 1, - artist: { - id: 8413103, - displayName: "Japanese Breakfast", - uri: "https://www.songkick.com/artists/8413103-japanese-breakfast?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "8c529495-91f5-4e2f-b71b-adcb66878d04", - href: "https://api.songkick.com/api/3.0/artists/mbid:8c529495-91f5-4e2f-b71b-adcb66878d04.json", - }, - ], - }, - }, - ], - ageRestriction: null, - flaggedAsEnded: false, - venue: { - id: 37414, - displayName: "O2 Forum Kentish Town", - uri: "https://www.songkick.com/venues/37414-o2-forum-kentish-town?utm_source=2356&utm_medium=partner", - metroArea: { - displayName: "London", - country: { displayName: "UK" }, - id: 24426, - uri: "https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner", - }, - lat: 51.55214, - lng: -0.14217, - }, - location: { city: "London, UK", lat: 51.55214, lng: -0.14217 }, - }, - ], - }, - { - title: "April 2022", - data: [ - { - id: 39293287, - displayName: "Tash Sultana at Eventim Apollo (April 6, 2022)", - type: "Concert", - uri: "https://www.songkick.com/concerts/39293287-tash-sultana-at-eventim-apollo?utm_source=2356&utm_medium=partner", - status: "ok", - popularity: 0.054656, - start: { - date: "2022-04-06", - datetime: "2022-04-06T19:00:00+0100", - time: "19:00:00", - }, - performance: [ - { - id: 74362402, - displayName: "Tash Sultana", - billing: "headline", - billingIndex: 1, - artist: { - id: 5112228, - displayName: "Tash Sultana", - uri: "https://www.songkick.com/artists/5112228-tash-sultana?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "b3adc16a-abdb-4668-9b05-baabbf942db6", - href: "https://api.songkick.com/api/3.0/artists/mbid:b3adc16a-abdb-4668-9b05-baabbf942db6.json", - }, - ], - }, - }, - ], - ageRestriction: null, - flaggedAsEnded: false, - venue: { - id: 8086, - displayName: "Eventim Apollo", - uri: "https://www.songkick.com/venues/8086-eventim-apollo?utm_source=2356&utm_medium=partner", - metroArea: { - displayName: "London", - country: { displayName: "UK" }, - id: 24426, - uri: "https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner", - }, - lat: 51.49084, - lng: -0.2245, - }, - location: { city: "London, UK", lat: 51.49084, lng: -0.2245 }, - }, - { - id: 39232393, - displayName: - "Louis Tomlinson with Only The Poets at SSE Arena, Wembley (April 22, 2022)", - type: "Concert", - uri: "https://www.songkick.com/concerts/39232393-louis-tomlinson-at-sse-arena-wembley?utm_source=2356&utm_medium=partner", - status: "ok", - popularity: 0.059619, - start: { - date: "2022-04-22", - datetime: "2022-04-22T18:00:00+0100", - time: "18:00:00", - }, - performance: [ - { - id: 74259876, - displayName: "Louis Tomlinson", - billing: "headline", - billingIndex: 1, - artist: { - id: 6299134, - displayName: "Louis Tomlinson", - uri: "https://www.songkick.com/artists/6299134-louis-tomlinson?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "6d390061-b3cd-4db3-b905-e56b7f5357fd", - href: "https://api.songkick.com/api/3.0/artists/mbid:6d390061-b3cd-4db3-b905-e56b7f5357fd.json", - }, - ], - }, - }, - { - id: 74865797, - displayName: "Only The Poets", - billing: "support", - billingIndex: 2, - artist: { - id: 9030034, - displayName: "Only The Poets", - uri: "https://www.songkick.com/artists/9030034-only-the-poets?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "ba579d19-f99a-42df-bdb7-2070ec1209dd", - href: "https://api.songkick.com/api/3.0/artists/mbid:ba579d19-f99a-42df-bdb7-2070ec1209dd.json", - }, - ], - }, - }, - ], - ageRestriction: null, - flaggedAsEnded: false, - venue: { - id: 1686, - displayName: "SSE Arena, Wembley", - uri: "https://www.songkick.com/venues/1686-sse-arena-wembley?utm_source=2356&utm_medium=partner", - metroArea: { - displayName: "London", - country: { displayName: "UK" }, - id: 24426, - uri: "https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner", - }, - lat: 51.55861, - lng: -0.28033, - }, - location: { city: "London, UK", lat: 51.55861, lng: -0.28033 }, - }, - { - id: 39524846, - displayName: "OneRepublic at Eventim Apollo (April 25, 2022)", - type: "Concert", - uri: "https://www.songkick.com/concerts/39524846-onerepublic-at-eventim-apollo?utm_source=2356&utm_medium=partner", - status: "ok", - popularity: 0.449715, - start: { - date: "2022-04-25", - datetime: "2022-04-25T19:00:00+0100", - time: "19:00:00", - }, - performance: [ - { - id: 74766271, - displayName: "OneRepublic", - billing: "headline", - billingIndex: 1, - artist: { - id: 568431, - displayName: "OneRepublic", - uri: "https://www.songkick.com/artists/568431-onerepublic?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "c33c2065-b1c3-4406-b066-d33a9e2ea71a", - href: "https://api.songkick.com/api/3.0/artists/mbid:c33c2065-b1c3-4406-b066-d33a9e2ea71a.json", - }, - ], - }, - }, - ], - ageRestriction: null, - flaggedAsEnded: false, - venue: { - id: 8086, - displayName: "Eventim Apollo", - uri: "https://www.songkick.com/venues/8086-eventim-apollo?utm_source=2356&utm_medium=partner", - metroArea: { - displayName: "London", - country: { displayName: "UK" }, - id: 24426, - uri: "https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner", - }, - lat: 51.49084, - lng: -0.2245, - }, - location: { city: "London, UK", lat: 51.49084, lng: -0.2245 }, - }, - { - id: 39678953, - displayName: "Mae Muller at O2 Forum Kentish Town (April 29, 2022)", - type: "Concert", - uri: "https://www.songkick.com/concerts/39678953-mae-muller-at-o2-forum-kentish-town?utm_source=2356&utm_medium=partner", - status: "ok", - popularity: 0.001773, - start: { - date: "2022-04-29", - datetime: "2022-04-29T19:00:00+0100", - time: "19:00:00", - }, - performance: [ - { - id: 75039132, - displayName: "Mae Muller", - billing: "headline", - billingIndex: 1, - artist: { - id: 9960564, - displayName: "Mae Muller", - uri: "https://www.songkick.com/artists/9960564-mae-muller?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "f102440f-8e60-45eb-af2b-f6a6df4025d2", - href: "https://api.songkick.com/api/3.0/artists/mbid:f102440f-8e60-45eb-af2b-f6a6df4025d2.json", - }, - ], - }, - }, - ], - ageRestriction: null, - flaggedAsEnded: false, - venue: { - id: 37414, - displayName: "O2 Forum Kentish Town", - uri: "https://www.songkick.com/venues/37414-o2-forum-kentish-town?utm_source=2356&utm_medium=partner", - metroArea: { - displayName: "London", - country: { displayName: "UK" }, - id: 24426, - uri: "https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner", - }, - lat: 51.55214, - lng: -0.14217, - }, - location: { city: "London, UK", lat: 51.55214, lng: -0.14217 }, - }, - ], - }, - { - title: "May 2022", - data: [ - { - id: 39786471, - displayName: "Metronomy at Alexandra Palace (May 7, 2022)", - type: "Concert", - uri: "https://www.songkick.com/concerts/39786471-metronomy-at-alexandra-palace?utm_source=2356&utm_medium=partner", - status: "ok", - popularity: 0.101843, - start: { - date: "2022-05-07", - datetime: "2022-05-07T18:30:00+0100", - time: "18:30:00", - }, - performance: [ - { - id: 75217151, - displayName: "Metronomy", - billing: "headline", - billingIndex: 1, - artist: { - id: 16165, - displayName: "Metronomy", - uri: "https://www.songkick.com/artists/16165-metronomy?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "93eb7110-0bc9-4d3f-816b-4b52ef982ec8", - href: "https://api.songkick.com/api/3.0/artists/mbid:93eb7110-0bc9-4d3f-816b-4b52ef982ec8.json", - }, - ], - }, - }, - ], - ageRestriction: null, - flaggedAsEnded: false, - venue: { - id: 1787, - displayName: "Alexandra Palace", - uri: "https://www.songkick.com/venues/1787-alexandra-palace?utm_source=2356&utm_medium=partner", - metroArea: { - displayName: "London", - country: { displayName: "UK" }, - id: 24426, - uri: "https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner", - }, - lat: 51.59079, - lng: -0.13318, - }, - location: { city: "London, UK", lat: 51.59079, lng: -0.13318 }, - }, - { - id: 39684873, - displayName: "Little Mix with Since September at The O2 (May 12, 2022)", - type: "Concert", - uri: "https://www.songkick.com/concerts/39684873-little-mix-at-o2?utm_source=2356&utm_medium=partner", - status: "ok", - popularity: 0.217537, - start: { - date: "2022-05-12", - datetime: "2022-05-12T18:30:00+0100", - time: "18:30:00", - }, - performance: [ - { - id: 75048672, - displayName: "Little Mix", - billing: "headline", - billingIndex: 1, - artist: { - id: 5427893, - displayName: "Little Mix", - uri: "https://www.songkick.com/artists/5427893-little-mix?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "38f59974-2f4d-4bfa-b2e3-d2696de1b675", - href: "https://api.songkick.com/api/3.0/artists/mbid:38f59974-2f4d-4bfa-b2e3-d2696de1b675.json", - }, - ], - }, - }, - { - id: 75098949, - displayName: "Since September", - billing: "support", - billingIndex: 2, - artist: { - id: 10143235, - displayName: "Since September", - uri: "https://www.songkick.com/artists/10143235-since-september?utm_source=2356&utm_medium=partner", - identifier: [], - }, - }, - ], - ageRestriction: null, - flaggedAsEnded: false, - venue: { - id: 17532, - displayName: "The O2", - uri: "https://www.songkick.com/venues/17532-o2?utm_source=2356&utm_medium=partner", - metroArea: { - displayName: "London", - country: { displayName: "UK" }, - id: 24426, - uri: "https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner", - }, - lat: 51.50094, - lng: 0.00536, - }, - location: { city: "London, UK", lat: 51.50094, lng: 0.00536 }, - }, - { - id: 39684874, - displayName: "Little Mix with Since September at The O2 (May 13, 2022)", - type: "Concert", - uri: "https://www.songkick.com/concerts/39684874-little-mix-at-o2?utm_source=2356&utm_medium=partner", - status: "ok", - popularity: 0.217537, - start: { - date: "2022-05-13", - datetime: "2022-05-13T18:30:00+0100", - time: "18:30:00", - }, - performance: [ - { - id: 75048673, - displayName: "Little Mix", - billing: "headline", - billingIndex: 1, - artist: { - id: 5427893, - displayName: "Little Mix", - uri: "https://www.songkick.com/artists/5427893-little-mix?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "38f59974-2f4d-4bfa-b2e3-d2696de1b675", - href: "https://api.songkick.com/api/3.0/artists/mbid:38f59974-2f4d-4bfa-b2e3-d2696de1b675.json", - }, - ], - }, - }, - { - id: 75098950, - displayName: "Since September", - billing: "support", - billingIndex: 2, - artist: { - id: 10143235, - displayName: "Since September", - uri: "https://www.songkick.com/artists/10143235-since-september?utm_source=2356&utm_medium=partner", - identifier: [], - }, - }, - ], - ageRestriction: null, - flaggedAsEnded: false, - venue: { - id: 17532, - displayName: "The O2", - uri: "https://www.songkick.com/venues/17532-o2?utm_source=2356&utm_medium=partner", - metroArea: { - displayName: "London", - country: { displayName: "UK" }, - id: 24426, - uri: "https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner", - }, - lat: 51.50094, - lng: 0.00536, - }, - location: { city: "London, UK", lat: 51.50094, lng: 0.00536 }, - }, - { - id: 39690100, - displayName: "Little Mix with Since September at The O2 (May 14, 2022)", - type: "Concert", - uri: "https://www.songkick.com/concerts/39690100-little-mix-at-o2?utm_source=2356&utm_medium=partner", - status: "ok", - popularity: 0.217537, - start: { - date: "2022-05-14", - datetime: "2022-05-14T18:30:00+0100", - time: "18:30:00", - }, - performance: [ - { - id: 75057087, - displayName: "Little Mix", - billing: "headline", - billingIndex: 1, - artist: { - id: 5427893, - displayName: "Little Mix", - uri: "https://www.songkick.com/artists/5427893-little-mix?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "38f59974-2f4d-4bfa-b2e3-d2696de1b675", - href: "https://api.songkick.com/api/3.0/artists/mbid:38f59974-2f4d-4bfa-b2e3-d2696de1b675.json", - }, - ], - }, - }, - { - id: 75098951, - displayName: "Since September", - billing: "support", - billingIndex: 2, - artist: { - id: 10143235, - displayName: "Since September", - uri: "https://www.songkick.com/artists/10143235-since-september?utm_source=2356&utm_medium=partner", - identifier: [], - }, - }, - ], - ageRestriction: null, - flaggedAsEnded: false, - venue: { - id: 17532, - displayName: "The O2", - uri: "https://www.songkick.com/venues/17532-o2?utm_source=2356&utm_medium=partner", - metroArea: { - displayName: "London", - country: { displayName: "UK" }, - id: 24426, - uri: "https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner", - }, - lat: 51.50094, - lng: 0.00536, - }, - location: { city: "London, UK", lat: 51.50094, lng: 0.00536 }, - }, - ], - }, - { - title: "June 2022", - data: [ - { - id: 39700735, - displayName: "The Flaming Lips at O2 Forum Kentish Town (June 2, 2022)", - type: "Concert", - uri: "https://www.songkick.com/concerts/39700735-flaming-lips-at-o2-forum-kentish-town?utm_source=2356&utm_medium=partner", - status: "ok", - popularity: 0.135668, - start: { - date: "2022-06-02", - datetime: "2022-06-02T19:00:00+0100", - time: "19:00:00", - }, - performance: [ - { - id: 75074623, - displayName: "The Flaming Lips", - billing: "headline", - billingIndex: 1, - artist: { - id: 7453, - displayName: "The Flaming Lips", - uri: "https://www.songkick.com/artists/7453-flaming-lips?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "1f43d76f-8edf-44f6-aaf1-b65f05ad9402", - href: "https://api.songkick.com/api/3.0/artists/mbid:1f43d76f-8edf-44f6-aaf1-b65f05ad9402.json", - }, - ], - }, - }, - ], - ageRestriction: null, - flaggedAsEnded: false, - venue: { - id: 37414, - displayName: "O2 Forum Kentish Town", - uri: "https://www.songkick.com/venues/37414-o2-forum-kentish-town?utm_source=2356&utm_medium=partner", - metroArea: { - displayName: "London", - country: { displayName: "UK" }, - id: 24426, - uri: "https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner", - }, - lat: 51.55214, - lng: -0.14217, - }, - location: { city: "London, UK", lat: 51.55214, lng: -0.14217 }, - }, - { - id: 39290374, - displayName: - "The Killers with Sam Fender at Emirates Stadium (June 3, 2022)", - type: "Concert", - uri: "https://www.songkick.com/concerts/39290374-killers-at-emirates-stadium?utm_source=2356&utm_medium=partner", - status: "ok", - popularity: 0.583358, - start: { - date: "2022-06-03", - datetime: "2022-06-03T16:30:00+0100", - time: "16:30:00", - }, - performance: [ - { - id: 74357544, - displayName: "The Killers", - billing: "headline", - billingIndex: 1, - artist: { - id: 555021, - displayName: "The Killers", - uri: "https://www.songkick.com/artists/555021-killers?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "66101a13-70cc-40a7-8371-abcb78012aa3", - href: "https://api.songkick.com/api/3.0/artists/mbid:66101a13-70cc-40a7-8371-abcb78012aa3.json", - }, - { - mbid: "0dc08b92-4639-4370-94cf-1cd31b0811f6", - href: "https://api.songkick.com/api/3.0/artists/mbid:0dc08b92-4639-4370-94cf-1cd31b0811f6.json", - }, - { - mbid: "386b27fb-fc2b-400c-a296-079b13e21061", - href: "https://api.songkick.com/api/3.0/artists/mbid:386b27fb-fc2b-400c-a296-079b13e21061.json", - }, - { - mbid: "95e1ead9-4d31-4808-a7ac-32c3614c116b", - href: "https://api.songkick.com/api/3.0/artists/mbid:95e1ead9-4d31-4808-a7ac-32c3614c116b.json", - }, - { - mbid: "4665e836-2c96-4569-9462-bfea34850b69", - href: "https://api.songkick.com/api/3.0/artists/mbid:4665e836-2c96-4569-9462-bfea34850b69.json", - }, - { - mbid: "24b4aee8-32ed-4163-98f7-55bae67411ae", - href: "https://api.songkick.com/api/3.0/artists/mbid:24b4aee8-32ed-4163-98f7-55bae67411ae.json", - }, - ], - }, - }, - { - id: 75477552, - displayName: "Sam Fender", - billing: "support", - billingIndex: 2, - artist: { - id: 6907314, - displayName: "Sam Fender", - uri: "https://www.songkick.com/artists/6907314-sam-fender?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "3478a5d1-bd96-4584-aa54-4d6e0a329658", - href: "https://api.songkick.com/api/3.0/artists/mbid:3478a5d1-bd96-4584-aa54-4d6e0a329658.json", - }, - ], - }, - }, - ], - ageRestriction: null, - flaggedAsEnded: false, - venue: { - id: 12994, - displayName: "Emirates Stadium", - uri: "https://www.songkick.com/venues/12994-emirates-stadium?utm_source=2356&utm_medium=partner", - metroArea: { - displayName: "London", - country: { displayName: "UK" }, - id: 24426, - uri: "https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner", - }, - lat: 51.56214, - lng: -0.11707, - }, - location: { city: "London, UK", lat: 51.56214, lng: -0.11707 }, - }, - { - id: 39772205, - displayName: "Junction 2 2022", - type: "Festival", - uri: "https://www.songkick.com/festivals/1465354-junction-2/id/39772205-junction-2-2022?utm_source=2356&utm_medium=partner", - status: "ok", - popularity: 0.072653, - start: { - date: "2022-06-03", - datetime: "2022-06-03T12:00:00+0100", - time: "12:00:00", - }, - performance: [ - { - id: 75194961, - displayName: "Four Tet", - billing: "headline", - billingIndex: 1, - artist: { - id: 306583, - displayName: "Four Tet", - uri: "https://www.songkick.com/artists/306583-four-tet?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "3bcff06f-675a-451f-9075-99e8657047e8", - href: "https://api.songkick.com/api/3.0/artists/mbid:3bcff06f-675a-451f-9075-99e8657047e8.json", - }, - ], - }, - }, - { - id: 75194962, - displayName: "Jon Hopkins", - billing: "headline", - billingIndex: 2, - artist: { - id: 298044, - displayName: "Jon Hopkins", - uri: "https://www.songkick.com/artists/298044-jon-hopkins?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "bbd87753-db07-44ea-b8de-5491d32db956", - href: "https://api.songkick.com/api/3.0/artists/mbid:bbd87753-db07-44ea-b8de-5491d32db956.json", - }, - { - mbid: "4ddf952a-0502-42b2-8bbc-8922d53d3091", - href: "https://api.songkick.com/api/3.0/artists/mbid:4ddf952a-0502-42b2-8bbc-8922d53d3091.json", - }, - { - mbid: "0b0c25f4-f31c-46a5-a4fb-ccbf53d663bd", - href: "https://api.songkick.com/api/3.0/artists/mbid:0b0c25f4-f31c-46a5-a4fb-ccbf53d663bd.json", - }, - ], - }, - }, - { - id: 75194963, - displayName: "DJ Koze", - billing: "headline", - billingIndex: 3, - artist: { - id: 165622, - displayName: "DJ Koze", - uri: "https://www.songkick.com/artists/165622-dj-koze?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "dd4458c8-6728-4a44-980c-48107fa72bb8", - href: "https://api.songkick.com/api/3.0/artists/mbid:dd4458c8-6728-4a44-980c-48107fa72bb8.json", - }, - ], - }, - }, - { - id: 75194964, - displayName: "Midland", - billing: "headline", - billingIndex: 4, - artist: { - id: 371106, - displayName: "Midland", - uri: "https://www.songkick.com/artists/371106-midland?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "35fddf9e-01f6-49af-8d03-b841dda89995", - href: "https://api.songkick.com/api/3.0/artists/mbid:35fddf9e-01f6-49af-8d03-b841dda89995.json", - }, - ], - }, - }, - { - id: 75194965, - displayName: "Maceo Plex", - billing: "headline", - billingIndex: 5, - artist: { - id: 3894886, - displayName: "Maceo Plex", - uri: "https://www.songkick.com/artists/3894886-maceo-plex?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "0ab688fd-0943-41cd-a24c-78ec2baad3fd", - href: "https://api.songkick.com/api/3.0/artists/mbid:0ab688fd-0943-41cd-a24c-78ec2baad3fd.json", - }, - ], - }, - }, - { - id: 75194966, - displayName: "Romy", - billing: "headline", - billingIndex: 6, - artist: { - id: 310525, - displayName: "Romy", - uri: "https://www.songkick.com/artists/310525-romy?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "4ec9623e-ef79-4312-92c9-ab784328bc2e", - href: "https://api.songkick.com/api/3.0/artists/mbid:4ec9623e-ef79-4312-92c9-ab784328bc2e.json", - }, - ], - }, - }, - { - id: 75194967, - displayName: "Nina Kraviz", - billing: "headline", - billingIndex: 7, - artist: { - id: 3037096, - displayName: "Nina Kraviz", - uri: "https://www.songkick.com/artists/3037096-nina-kraviz?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "5dd3cf5b-474d-465a-a539-456d7e125ebc", - href: "https://api.songkick.com/api/3.0/artists/mbid:5dd3cf5b-474d-465a-a539-456d7e125ebc.json", - }, - ], - }, - }, - { - id: 75194968, - displayName: "Rival Consoles", - billing: "headline", - billingIndex: 8, - artist: { - id: 483204, - displayName: "Rival Consoles", - uri: "https://www.songkick.com/artists/483204-rival-consoles?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "803f2853-7e3e-4dff-96a7-9f77b5f56de5", - href: "https://api.songkick.com/api/3.0/artists/mbid:803f2853-7e3e-4dff-96a7-9f77b5f56de5.json", - }, - ], - }, - }, - { - id: 75194969, - displayName: "Joy Orbison", - billing: "headline", - billingIndex: 9, - artist: { - id: 2552181, - displayName: "Joy Orbison", - uri: "https://www.songkick.com/artists/2552181-joy-orbison?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "8542f9a4-bd91-4066-91cf-359d2d9950db", - href: "https://api.songkick.com/api/3.0/artists/mbid:8542f9a4-bd91-4066-91cf-359d2d9950db.json", - }, - ], - }, - }, - { - id: 75194970, - displayName: "Adam Beyer", - billing: "headline", - billingIndex: 10, - artist: { - id: 173218, - displayName: "Adam Beyer", - uri: "https://www.songkick.com/artists/173218-adam-beyer?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "0d6daf47-0be9-44ee-a9e8-fb5a7b718538", - href: "https://api.songkick.com/api/3.0/artists/mbid:0d6daf47-0be9-44ee-a9e8-fb5a7b718538.json", - }, - ], - }, - }, - { - id: 75194971, - displayName: "Leon Vynehall", - billing: "headline", - billingIndex: 11, - artist: { - id: 5091393, - displayName: "Leon Vynehall", - uri: "https://www.songkick.com/artists/5091393-leon-vynehall?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "b98202d3-4fb4-4e32-9ff3-b9e1987d02cf", - href: "https://api.songkick.com/api/3.0/artists/mbid:b98202d3-4fb4-4e32-9ff3-b9e1987d02cf.json", - }, - ], - }, - }, - { - id: 75194972, - displayName: "Fatima Yamaha", - billing: "headline", - billingIndex: 12, - artist: { - id: 5666364, - displayName: "Fatima Yamaha", - uri: "https://www.songkick.com/artists/5666364-fatima-yamaha?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "dfac8e50-286a-443a-923f-820997e5794f", - href: "https://api.songkick.com/api/3.0/artists/mbid:dfac8e50-286a-443a-923f-820997e5794f.json", - }, - ], - }, - }, - { - id: 75194973, - displayName: "Ben Klock", - billing: "headline", - billingIndex: 13, - artist: { - id: 286113, - displayName: "Ben Klock", - uri: "https://www.songkick.com/artists/286113-ben-klock?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "c5af0c3f-e401-43ed-a096-b504606a05cb", - href: "https://api.songkick.com/api/3.0/artists/mbid:c5af0c3f-e401-43ed-a096-b504606a05cb.json", - }, - ], - }, - }, - { - id: 75194974, - displayName: "Seth Troxler", - billing: "headline", - billingIndex: 14, - artist: { - id: 2328789, - displayName: "Seth Troxler", - uri: "https://www.songkick.com/artists/2328789-seth-troxler?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "d701634c-95a1-4244-92d6-903113bd79d3", - href: "https://api.songkick.com/api/3.0/artists/mbid:d701634c-95a1-4244-92d6-903113bd79d3.json", - }, - ], - }, - }, - { - id: 75194975, - displayName: "Dixon", - billing: "headline", - billingIndex: 15, - artist: { - id: 123319, - displayName: "Dixon", - uri: "https://www.songkick.com/artists/123319-dixon?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "f912d0c6-52c6-4b0b-8aaa-975a9afdfee3", - href: "https://api.songkick.com/api/3.0/artists/mbid:f912d0c6-52c6-4b0b-8aaa-975a9afdfee3.json", - }, - { - mbid: "b3f428b4-93f4-4ebd-aa73-d4b93f179033", - href: "https://api.songkick.com/api/3.0/artists/mbid:b3f428b4-93f4-4ebd-aa73-d4b93f179033.json", - }, - ], - }, - }, - { - id: 75194976, - displayName: "Amelie Lens", - billing: "headline", - billingIndex: 16, - artist: { - id: 8931019, - displayName: "Amelie Lens", - uri: "https://www.songkick.com/artists/8931019-amelie-lens?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "67db280d-c3e4-49d9-978e-4050f4e209ef", - href: "https://api.songkick.com/api/3.0/artists/mbid:67db280d-c3e4-49d9-978e-4050f4e209ef.json", - }, - ], - }, - }, - { - id: 75194978, - displayName: "Chaos in the CBD", - billing: "headline", - billingIndex: 17, - artist: { - id: 4237541, - displayName: "Chaos in the CBD", - uri: "https://www.songkick.com/artists/4237541-chaos-in-the-cbd?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "ae534b5f-95e5-40d9-9ce0-75e4b777cad1", - href: "https://api.songkick.com/api/3.0/artists/mbid:ae534b5f-95e5-40d9-9ce0-75e4b777cad1.json", - }, - ], - }, - }, - { - id: 75194977, - displayName: "Blawan", - billing: "headline", - billingIndex: 18, - artist: { - id: 3370006, - displayName: "Blawan", - uri: "https://www.songkick.com/artists/3370006-blawan?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "c27d4389-390e-497c-9a41-dd446ace742c", - href: "https://api.songkick.com/api/3.0/artists/mbid:c27d4389-390e-497c-9a41-dd446ace742c.json", - }, - ], - }, - }, - { - id: 75194979, - displayName: "Robert Hood", - billing: "headline", - billingIndex: 19, - artist: { - id: 557284, - displayName: "Robert Hood", - uri: "https://www.songkick.com/artists/557284-robert-hood?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "e8a61400-baf7-4fb3-a3e3-c9e7b665547f", - href: "https://api.songkick.com/api/3.0/artists/mbid:e8a61400-baf7-4fb3-a3e3-c9e7b665547f.json", - }, - ], - }, - }, - { - id: 75194980, - displayName: "Marcel Dettmann", - billing: "headline", - billingIndex: 20, - artist: { - id: 2327706, - displayName: "Marcel Dettmann", - uri: "https://www.songkick.com/artists/2327706-marcel-dettmann?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "6d7238a1-f0bc-4408-93fc-8ec64c06f7af", - href: "https://api.songkick.com/api/3.0/artists/mbid:6d7238a1-f0bc-4408-93fc-8ec64c06f7af.json", - }, - ], - }, - }, - { - id: 75194981, - displayName: "Honey Dijon", - billing: "headline", - billingIndex: 21, - artist: { - id: 2376006, - displayName: "Honey Dijon", - uri: "https://www.songkick.com/artists/2376006-honey-dijon?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "740c6238-3f5d-4e63-8836-826ad6c611ab", - href: "https://api.songkick.com/api/3.0/artists/mbid:740c6238-3f5d-4e63-8836-826ad6c611ab.json", - }, - ], - }, - }, - { - id: 75194982, - displayName: "Enrico Sangiuliano", - billing: "headline", - billingIndex: 22, - artist: { - id: 6160794, - displayName: "Enrico Sangiuliano", - uri: "https://www.songkick.com/artists/6160794-enrico-sangiuliano?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "fe69b211-d470-48e7-a7a0-64cecb5bc991", - href: "https://api.songkick.com/api/3.0/artists/mbid:fe69b211-d470-48e7-a7a0-64cecb5bc991.json", - }, - ], - }, - }, - { - id: 75194983, - displayName: "Skee Mask", - billing: "headline", - billingIndex: 23, - artist: { - id: 8828934, - displayName: "Skee Mask", - uri: "https://www.songkick.com/artists/8828934-skee-mask?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "2b3e25ba-983e-44ac-9def-907e03910cd2", - href: "https://api.songkick.com/api/3.0/artists/mbid:2b3e25ba-983e-44ac-9def-907e03910cd2.json", - }, - ], - }, - }, - { - id: 75194984, - displayName: "Mind Against", - billing: "headline", - billingIndex: 24, - artist: { - id: 6055179, - displayName: "Mind Against", - uri: "https://www.songkick.com/artists/6055179-mind-against?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "7e9826df-af21-4b16-9f5a-0523b2e3f4a0", - href: "https://api.songkick.com/api/3.0/artists/mbid:7e9826df-af21-4b16-9f5a-0523b2e3f4a0.json", - }, - ], - }, - }, - { - id: 75194986, - displayName: "DJ Boring", - billing: "headline", - billingIndex: 25, - artist: { - id: 9092519, - displayName: "DJ Boring", - uri: "https://www.songkick.com/artists/9092519-dj-boring?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "eea116c0-4829-4d3f-88c9-ff2c687c9bd9", - href: "https://api.songkick.com/api/3.0/artists/mbid:eea116c0-4829-4d3f-88c9-ff2c687c9bd9.json", - }, - ], - }, - }, - { - id: 75194985, - displayName: "Dense & Pika", - billing: "headline", - billingIndex: 26, - artist: { - id: 6203204, - displayName: "Dense & Pika", - uri: "https://www.songkick.com/artists/6203204-dense-and-pika?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "cbd41299-d081-4918-8b78-56f6d2edfe1f", - href: "https://api.songkick.com/api/3.0/artists/mbid:cbd41299-d081-4918-8b78-56f6d2edfe1f.json", - }, - ], - }, - }, - { - id: 75194987, - displayName: "Octo Octa", - billing: "headline", - billingIndex: 27, - artist: { - id: 5209828, - displayName: "Octo Octa", - uri: "https://www.songkick.com/artists/5209828-octo-octa?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "3fa65334-e3c4-4e83-b24f-5af5535ba462", - href: "https://api.songkick.com/api/3.0/artists/mbid:3fa65334-e3c4-4e83-b24f-5af5535ba462.json", - }, - ], - }, - }, - { - id: 75194988, - displayName: "DMX Krew", - billing: "headline", - billingIndex: 28, - artist: { - id: 63324, - displayName: "DMX Krew", - uri: "https://www.songkick.com/artists/63324-dmx-krew?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "a3494b6a-32b5-416c-8dea-dce62c8e9244", - href: "https://api.songkick.com/api/3.0/artists/mbid:a3494b6a-32b5-416c-8dea-dce62c8e9244.json", - }, - ], - }, - }, - { - id: 75194989, - displayName: "Avalon Emerson", - billing: "headline", - billingIndex: 29, - artist: { - id: 5469148, - displayName: "Avalon Emerson", - uri: "https://www.songkick.com/artists/5469148-avalon-emerson?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "f91ec397-c4be-4672-8faa-2d2983682b1c", - href: "https://api.songkick.com/api/3.0/artists/mbid:f91ec397-c4be-4672-8faa-2d2983682b1c.json", - }, - ], - }, - }, - { - id: 75194990, - displayName: "Traumer", - billing: "headline", - billingIndex: 30, - artist: { - id: 4994888, - displayName: "Traumer", - uri: "https://www.songkick.com/artists/4994888-traumer?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "319c89bc-c7a3-4139-8386-a2a5b48b4ed7", - href: "https://api.songkick.com/api/3.0/artists/mbid:319c89bc-c7a3-4139-8386-a2a5b48b4ed7.json", - }, - ], - }, - }, - { - id: 75194991, - displayName: "Brame & Hamo", - billing: "headline", - billingIndex: 31, - artist: { - id: 9092709, - displayName: "Brame & Hamo", - uri: "https://www.songkick.com/artists/9092709-brame-and-hamo?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "4537e8c2-23cd-4dff-a555-befdd31ad155", - href: "https://api.songkick.com/api/3.0/artists/mbid:4537e8c2-23cd-4dff-a555-befdd31ad155.json", - }, - ], - }, - }, - { - id: 75194992, - displayName: "Bambounou", - billing: "headline", - billingIndex: 32, - artist: { - id: 4585233, - displayName: "Bambounou", - uri: "https://www.songkick.com/artists/4585233-bambounou?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "8aa216f8-5be8-40aa-8342-a490ad656395", - href: "https://api.songkick.com/api/3.0/artists/mbid:8aa216f8-5be8-40aa-8342-a490ad656395.json", - }, - ], - }, - }, - { - id: 75194993, - displayName: "Benjamin Damage", - billing: "headline", - billingIndex: 33, - artist: { - id: 4371483, - displayName: "Benjamin Damage", - uri: "https://www.songkick.com/artists/4371483-benjamin-damage?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "92a8ef7d-b313-4b85-baeb-efcbeac5b7c8", - href: "https://api.songkick.com/api/3.0/artists/mbid:92a8ef7d-b313-4b85-baeb-efcbeac5b7c8.json", - }, - ], - }, - }, - { - id: 75194994, - displayName: "Joel Mull", - billing: "headline", - billingIndex: 34, - artist: { - id: 412771, - displayName: "Joel Mull", - uri: "https://www.songkick.com/artists/412771-joel-mull?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "72a09d0f-cc17-436f-8cae-b7f047341a90", - href: "https://api.songkick.com/api/3.0/artists/mbid:72a09d0f-cc17-436f-8cae-b7f047341a90.json", - }, - ], - }, - }, - { - id: 75194995, - displayName: "Dax J", - billing: "headline", - billingIndex: 35, - artist: { - id: 4731583, - displayName: "Dax J", - uri: "https://www.songkick.com/artists/4731583-dax-j?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "8a860182-6587-4bc3-b578-88e56424b6dc", - href: "https://api.songkick.com/api/3.0/artists/mbid:8a860182-6587-4bc3-b578-88e56424b6dc.json", - }, - ], - }, - }, - { - id: 75194996, - displayName: "Kobosil", - billing: "headline", - billingIndex: 36, - artist: { - id: 7342659, - displayName: "Kobosil", - uri: "https://www.songkick.com/artists/7342659-kobosil?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "c6b2c2c3-e771-4228-9401-b263369d5b48", - href: "https://api.songkick.com/api/3.0/artists/mbid:c6b2c2c3-e771-4228-9401-b263369d5b48.json", - }, - ], - }, - }, - { - id: 75194999, - displayName: "Ceri", - billing: "headline", - billingIndex: 37, - artist: { - id: 7945958, - displayName: "Ceri", - uri: "https://www.songkick.com/artists/7945958-ceri?utm_source=2356&utm_medium=partner", - identifier: [], - }, - }, - { - id: 75194998, - displayName: "Margaret Dygas", - billing: "headline", - billingIndex: 38, - artist: { - id: 950937, - displayName: "Margaret Dygas", - uri: "https://www.songkick.com/artists/950937-margaret-dygas?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "5d97692e-d1ce-40c9-8395-44d85d51ba15", - href: "https://api.songkick.com/api/3.0/artists/mbid:5d97692e-d1ce-40c9-8395-44d85d51ba15.json", - }, - ], - }, - }, - { - id: 75195000, - displayName: "The Zenker Brothers", - billing: "headline", - billingIndex: 39, - artist: { - id: 8392788, - displayName: "The Zenker Brothers", - uri: "https://www.songkick.com/artists/8392788-zenker-brothers?utm_source=2356&utm_medium=partner", - identifier: [], - }, - }, - { - id: 75195002, - displayName: "999999999", - billing: "headline", - billingIndex: 40, - artist: { - id: 9908829, - displayName: "999999999", - uri: "https://www.songkick.com/artists/9908829-999999999?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "fee18f64-e35c-4ca6-be78-605d73d0cefa", - href: "https://api.songkick.com/api/3.0/artists/mbid:fee18f64-e35c-4ca6-be78-605d73d0cefa.json", - }, - ], - }, - }, - { - id: 75195004, - displayName: "Eris Drew", - billing: "headline", - billingIndex: 41, - artist: { - id: 8973229, - displayName: "Eris Drew", - uri: "https://www.songkick.com/artists/8973229-eris-drew?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "8cd2d139-7257-4d8c-9247-621bfb742e6e", - href: "https://api.songkick.com/api/3.0/artists/mbid:8cd2d139-7257-4d8c-9247-621bfb742e6e.json", - }, - ], - }, - }, - { - id: 75195011, - displayName: "Yu Su", - billing: "headline", - billingIndex: 42, - artist: { - id: 10060867, - displayName: "Yu Su", - uri: "https://www.songkick.com/artists/10060867-yu-su?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "4472f89e-5944-49e4-9a33-43358390db40", - href: "https://api.songkick.com/api/3.0/artists/mbid:4472f89e-5944-49e4-9a33-43358390db40.json", - }, - ], - }, - }, - { - id: 75195007, - displayName: "Effy", - billing: "headline", - billingIndex: 43, - artist: { - id: 2807416, - displayName: "Effy", - uri: "https://www.songkick.com/artists/2807416-effy?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "740b6d81-1663-44ab-895a-9d01f4c1c46d", - href: "https://api.songkick.com/api/3.0/artists/mbid:740b6d81-1663-44ab-895a-9d01f4c1c46d.json", - }, - ], - }, - }, - { - id: 75195001, - displayName: "Eclair Fifi", - billing: "headline", - billingIndex: 44, - artist: { - id: 2555036, - displayName: "Eclair Fifi", - uri: "https://www.songkick.com/artists/2555036-eclair-fifi?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "178e684a-2630-4378-8824-2991d4bff13e", - href: "https://api.songkick.com/api/3.0/artists/mbid:178e684a-2630-4378-8824-2991d4bff13e.json", - }, - ], - }, - }, - { - id: 75195003, - displayName: "Aurora Halal", - billing: "headline", - billingIndex: 45, - artist: { - id: 6383469, - displayName: "Aurora Halal", - uri: "https://www.songkick.com/artists/6383469-aurora-halal?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "75823c6e-aa7c-40cd-a1b7-441b705750bf", - href: "https://api.songkick.com/api/3.0/artists/mbid:75823c6e-aa7c-40cd-a1b7-441b705750bf.json", - }, - ], - }, - }, - { - id: 75195005, - displayName: "D. Tiffany", - billing: "headline", - billingIndex: 46, - artist: { - id: 9521299, - displayName: "D. Tiffany", - uri: "https://www.songkick.com/artists/9521299-d-tiffany?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "35ff298f-126f-4dbf-8ceb-6a3781e0de5e", - href: "https://api.songkick.com/api/3.0/artists/mbid:35ff298f-126f-4dbf-8ceb-6a3781e0de5e.json", - }, - ], - }, - }, - { - id: 75195006, - displayName: "Sugar Free", - billing: "headline", - billingIndex: 47, - artist: { - id: 119990, - displayName: "Sugar Free", - uri: "https://www.songkick.com/artists/119990-sugar-free?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "088a3247-4fa8-4212-b894-9963732d82f1", - href: "https://api.songkick.com/api/3.0/artists/mbid:088a3247-4fa8-4212-b894-9963732d82f1.json", - }, - ], - }, - }, - { - id: 75195008, - displayName: "Hessle Audio", - billing: "headline", - billingIndex: 48, - artist: { - id: 702794, - displayName: "Hessle Audio", - uri: "https://www.songkick.com/artists/702794-hessle-audio?utm_source=2356&utm_medium=partner", - identifier: [], - }, - }, - { - id: 75195010, - displayName: "ROZA TERENZI", - billing: "headline", - billingIndex: 49, - artist: { - id: 9653179, - displayName: "ROZA TERENZI", - uri: "https://www.songkick.com/artists/9653179-roza-terenzi?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "29c2b372-b02c-4bb9-b0a7-5741f0b48b3b", - href: "https://api.songkick.com/api/3.0/artists/mbid:29c2b372-b02c-4bb9-b0a7-5741f0b48b3b.json", - }, - ], - }, - }, - { - id: 75195009, - displayName: "Fumiya Tanaka", - billing: "headline", - billingIndex: 50, - artist: { - id: 177794, - displayName: "Fumiya Tanaka", - uri: "https://www.songkick.com/artists/177794-fumiya-tanaka?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "86b9a88e-d18f-43c5-9805-f8eb41007aa2", - href: "https://api.songkick.com/api/3.0/artists/mbid:86b9a88e-d18f-43c5-9805-f8eb41007aa2.json", - }, - ], - }, - }, - { - id: 75195012, - displayName: "Cromby", - billing: "headline", - billingIndex: 51, - artist: { - id: 9847079, - displayName: "Cromby", - uri: "https://www.songkick.com/artists/9847079-cromby?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "07d6c6eb-67f4-4a4d-9fdd-de21b294a37b", - href: "https://api.songkick.com/api/3.0/artists/mbid:07d6c6eb-67f4-4a4d-9fdd-de21b294a37b.json", - }, - ], - }, - }, - { - id: 75195013, - displayName: "Anastasia Kristensen", - billing: "headline", - billingIndex: 52, - artist: { - id: 9279734, - displayName: "Anastasia Kristensen", - uri: "https://www.songkick.com/artists/9279734-anastasia-kristensen?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "d5cf59c3-6e4a-4532-a409-618a9f3b43a5", - href: "https://api.songkick.com/api/3.0/artists/mbid:d5cf59c3-6e4a-4532-a409-618a9f3b43a5.json", - }, - ], - }, - }, - { - id: 75195014, - displayName: "ZoZo", - billing: "headline", - billingIndex: 53, - artist: { - id: 1603138, - displayName: "ZoZo", - uri: "https://www.songkick.com/artists/1603138-zozo?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "5e3efcc4-1791-417a-82ce-654be1777d7d", - href: "https://api.songkick.com/api/3.0/artists/mbid:5e3efcc4-1791-417a-82ce-654be1777d7d.json", - }, - ], - }, - }, - { - id: 75195018, - displayName: "carlota", - billing: "headline", - billingIndex: 54, - artist: { - id: 9979069, - displayName: "carlota", - uri: "https://www.songkick.com/artists/9979069-carlota?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "af3d2dd4-b26f-4062-a04a-6364d165a42c", - href: "https://api.songkick.com/api/3.0/artists/mbid:af3d2dd4-b26f-4062-a04a-6364d165a42c.json", - }, - ], - }, - }, - { - id: 75195015, - displayName: "Dr. Rubinstein", - billing: "headline", - billingIndex: 55, - artist: { - id: 8625669, - displayName: "Dr. Rubinstein", - uri: "https://www.songkick.com/artists/8625669-dr-rubinstein?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "e87c756f-c72a-46bd-aa87-2c2ea0cbbe9d", - href: "https://api.songkick.com/api/3.0/artists/mbid:e87c756f-c72a-46bd-aa87-2c2ea0cbbe9d.json", - }, - ], - }, - }, - { - id: 75195016, - displayName: "Samuel Deep", - billing: "headline", - billingIndex: 56, - artist: { - id: 5068288, - displayName: "Samuel Deep", - uri: "https://www.songkick.com/artists/5068288-samuel-deep?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "0e69714f-a57b-4431-bbb9-f0245cffd610", - href: "https://api.songkick.com/api/3.0/artists/mbid:0e69714f-a57b-4431-bbb9-f0245cffd610.json", - }, - ], - }, - }, - { - id: 75195017, - displayName: "BINH", - billing: "headline", - billingIndex: 57, - artist: { - id: 645009, - displayName: "BINH", - uri: "https://www.songkick.com/artists/645009-binh?utm_source=2356&utm_medium=partner", - identifier: [], - }, - }, - { - id: 75195019, - displayName: "Saoirse", - billing: "headline", - billingIndex: 58, - artist: { - id: 114676, - displayName: "Saoirse", - uri: "https://www.songkick.com/artists/114676-saoirse?utm_source=2356&utm_medium=partner", - identifier: [], - }, - }, - { - id: 75195020, - displayName: "Roi Perez", - billing: "headline", - billingIndex: 59, - artist: { - id: 8506533, - displayName: "Roi Perez", - uri: "https://www.songkick.com/artists/8506533-roi-perez?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "bb201868-668e-4201-90d4-78cc6429515b", - href: "https://api.songkick.com/api/3.0/artists/mbid:bb201868-668e-4201-90d4-78cc6429515b.json", - }, - ], - }, - }, - { - id: 75195021, - displayName: "Robin Ordell", - billing: "headline", - billingIndex: 60, - artist: { - id: 3089201, - displayName: "Robin Ordell", - uri: "https://www.songkick.com/artists/3089201-robin-ordell?utm_source=2356&utm_medium=partner", - identifier: [], - }, - }, - { - id: 75195022, - displayName: "Francesco Del Garda", - billing: "headline", - billingIndex: 61, - artist: { - id: 1090220, - displayName: "Francesco Del Garda", - uri: "https://www.songkick.com/artists/1090220-francesco-del-garda?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "c13f201c-83bc-4a6e-a7b0-7fbcd13adddc", - href: "https://api.songkick.com/api/3.0/artists/mbid:c13f201c-83bc-4a6e-a7b0-7fbcd13adddc.json", - }, - ], - }, - }, - { - id: 75195023, - displayName: "Jossy Mitsu", - billing: "headline", - billingIndex: 62, - artist: { - id: 9128319, - displayName: "Jossy Mitsu", - uri: "https://www.songkick.com/artists/9128319-jossy-mitsu?utm_source=2356&utm_medium=partner", - identifier: [], - }, - }, - { - id: 75195025, - displayName: "dBreathe", - billing: "headline", - billingIndex: 63, - artist: { - id: 9752514, - displayName: "dBreathe", - uri: "https://www.songkick.com/artists/9752514-dbreathe?utm_source=2356&utm_medium=partner", - identifier: [], - }, - }, - { - id: 75195024, - displayName: "Sam Bangura", - billing: "headline", - billingIndex: 64, - artist: { - id: 8741004, - displayName: "Sam Bangura", - uri: "https://www.songkick.com/artists/8741004-sam-bangura?utm_source=2356&utm_medium=partner", - identifier: [], - }, - }, - { - id: 75195026, - displayName: "Kiara Scuro", - billing: "headline", - billingIndex: 65, - artist: { - id: 9417634, - displayName: "Kiara Scuro", - uri: "https://www.songkick.com/artists/9417634-kiara-scuro?utm_source=2356&utm_medium=partner", - identifier: [], - }, - }, - ], - ageRestriction: null, - flaggedAsEnded: false, - venue: { - id: 1416463, - displayName: "Boston Manor Park", - uri: "https://www.songkick.com/venues/1416463-boston-manor-park?utm_source=2356&utm_medium=partner", - metroArea: { - displayName: "London", - country: { displayName: "UK" }, - id: 24426, - uri: "https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner", - }, - lat: 51.49283, - lng: -0.31825, - }, - location: { city: "Brentford, UK", lat: 51.49283, lng: -0.31825 }, - end: { date: "2022-06-04", time: null, datetime: null }, - series: { displayName: "Junction 2" }, - }, - { - id: 39275832, - displayName: - "The Killers with Sam Fender at Emirates Stadium (June 4, 2022)", - type: "Concert", - uri: "https://www.songkick.com/concerts/39275832-killers-at-emirates-stadium?utm_source=2356&utm_medium=partner", - status: "ok", - popularity: 0.586635, - start: { - date: "2022-06-04", - datetime: "2022-06-04T17:30:00+0100", - time: "17:30:00", - }, - performance: [ - { - id: 74332602, - displayName: "The Killers", - billing: "headline", - billingIndex: 1, - artist: { - id: 555021, - displayName: "The Killers", - uri: "https://www.songkick.com/artists/555021-killers?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "66101a13-70cc-40a7-8371-abcb78012aa3", - href: "https://api.songkick.com/api/3.0/artists/mbid:66101a13-70cc-40a7-8371-abcb78012aa3.json", - }, - { - mbid: "0dc08b92-4639-4370-94cf-1cd31b0811f6", - href: "https://api.songkick.com/api/3.0/artists/mbid:0dc08b92-4639-4370-94cf-1cd31b0811f6.json", - }, - { - mbid: "386b27fb-fc2b-400c-a296-079b13e21061", - href: "https://api.songkick.com/api/3.0/artists/mbid:386b27fb-fc2b-400c-a296-079b13e21061.json", - }, - { - mbid: "95e1ead9-4d31-4808-a7ac-32c3614c116b", - href: "https://api.songkick.com/api/3.0/artists/mbid:95e1ead9-4d31-4808-a7ac-32c3614c116b.json", - }, - { - mbid: "4665e836-2c96-4569-9462-bfea34850b69", - href: "https://api.songkick.com/api/3.0/artists/mbid:4665e836-2c96-4569-9462-bfea34850b69.json", - }, - { - mbid: "24b4aee8-32ed-4163-98f7-55bae67411ae", - href: "https://api.songkick.com/api/3.0/artists/mbid:24b4aee8-32ed-4163-98f7-55bae67411ae.json", - }, - ], - }, - }, - { - id: 75477553, - displayName: "Sam Fender", - billing: "support", - billingIndex: 2, - artist: { - id: 6907314, - displayName: "Sam Fender", - uri: "https://www.songkick.com/artists/6907314-sam-fender?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "3478a5d1-bd96-4584-aa54-4d6e0a329658", - href: "https://api.songkick.com/api/3.0/artists/mbid:3478a5d1-bd96-4584-aa54-4d6e0a329658.json", - }, - ], - }, - }, - ], - ageRestriction: null, - flaggedAsEnded: false, - venue: { - id: 12994, - displayName: "Emirates Stadium", - uri: "https://www.songkick.com/venues/12994-emirates-stadium?utm_source=2356&utm_medium=partner", - metroArea: { - displayName: "London", - country: { displayName: "UK" }, - id: 24426, - uri: "https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner", - }, - lat: 51.56214, - lng: -0.11707, - }, - location: { city: "London, UK", lat: 51.56214, lng: -0.11707 }, - }, - { - id: 39604088, - displayName: "Hampton Court Palace Festival - Lionel Richie 2022", - type: "Festival", - uri: "https://www.songkick.com/festivals/3273883-hampton-court-palace-lionel-richie/id/39604088-hampton-court-palace-festival--lionel-richie-2022?utm_source=2356&utm_medium=partner", - status: "ok", - popularity: 0.129297, - start: { - date: "2022-06-08", - datetime: "2022-06-08T17:30:00+0100", - time: "17:30:00", - }, - performance: [ - { - id: 74908192, - displayName: "Lionel Richie", - billing: "headline", - billingIndex: 1, - artist: { - id: 443179, - displayName: "Lionel Richie", - uri: "https://www.songkick.com/artists/443179-lionel-richie?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "3cb25fb2-5547-4b05-adec-1a5e37830d46", - href: "https://api.songkick.com/api/3.0/artists/mbid:3cb25fb2-5547-4b05-adec-1a5e37830d46.json", - }, - ], - }, - }, - ], - ageRestriction: null, - flaggedAsEnded: false, - venue: { - id: 56743, - displayName: "Hampton Court Palace", - uri: "https://www.songkick.com/venues/56743-hampton-court-palace?utm_source=2356&utm_medium=partner", - metroArea: { - displayName: "London", - country: { displayName: "UK" }, - id: 24426, - uri: "https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner", - }, - lat: 51.40381, - lng: -0.33767, - }, - location: { - city: "Kingston Upon Thames, UK", - lat: 51.40381, - lng: -0.33767, - }, - end: { date: "2022-06-08", time: null, datetime: null }, - series: { - displayName: "Hampton Court Palace Festival - Lionel Richie", - }, - }, - { - id: 39604084, - displayName: "Hampton Court Palace Festival - Lionel Richie 2022", - type: "Festival", - uri: "https://www.songkick.com/festivals/3273883-hampton-court-palace-lionel-richie/id/39604084-hampton-court-palace-festival--lionel-richie-2022?utm_source=2356&utm_medium=partner", - status: "ok", - popularity: 0.129297, - start: { - date: "2022-06-09", - datetime: "2022-06-09T17:30:00+0100", - time: "17:30:00", - }, - performance: [ - { - id: 74908188, - displayName: "Lionel Richie", - billing: "headline", - billingIndex: 1, - artist: { - id: 443179, - displayName: "Lionel Richie", - uri: "https://www.songkick.com/artists/443179-lionel-richie?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "3cb25fb2-5547-4b05-adec-1a5e37830d46", - href: "https://api.songkick.com/api/3.0/artists/mbid:3cb25fb2-5547-4b05-adec-1a5e37830d46.json", - }, - ], - }, - }, - ], - ageRestriction: null, - flaggedAsEnded: false, - venue: { - id: 56743, - displayName: "Hampton Court Palace", - uri: "https://www.songkick.com/venues/56743-hampton-court-palace?utm_source=2356&utm_medium=partner", - metroArea: { - displayName: "London", - country: { displayName: "UK" }, - id: 24426, - uri: "https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner", - }, - lat: 51.40381, - lng: -0.33767, - }, - location: { - city: "Kingston Upon Thames, UK", - lat: 51.40381, - lng: -0.33767, - }, - end: { date: "2022-06-09", time: null, datetime: null }, - series: { - displayName: "Hampton Court Palace Festival - Lionel Richie", - }, - }, - { - id: 39851001, - displayName: - "Billie Eilish with Jessie Reyez at The O2 (June 10, 2022)", - type: "Concert", - uri: "https://www.songkick.com/concerts/39851001-billie-eilish-at-o2?utm_source=2356&utm_medium=partner", - status: "ok", - popularity: 0.350619, - start: { - date: "2022-06-10", - datetime: "2022-06-10T19:00:00+0100", - time: "19:00:00", - }, - performance: [ - { - id: 75321172, - displayName: "Billie Eilish", - billing: "headline", - billingIndex: 1, - artist: { - id: 8913479, - displayName: "Billie Eilish", - uri: "https://www.songkick.com/artists/8913479-billie-eilish?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "f4abc0b5-3f7a-4eff-8f78-ac078dbce533", - href: "https://api.songkick.com/api/3.0/artists/mbid:f4abc0b5-3f7a-4eff-8f78-ac078dbce533.json", - }, - ], - }, - }, - { - id: 75531801, - displayName: "Jessie Reyez", - billing: "support", - billingIndex: 2, - artist: { - id: 8838519, - displayName: "Jessie Reyez", - uri: "https://www.songkick.com/artists/8838519-jessie-reyez?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "18f56081-ccd7-4e07-981a-558c20951ccd", - href: "https://api.songkick.com/api/3.0/artists/mbid:18f56081-ccd7-4e07-981a-558c20951ccd.json", - }, - ], - }, - }, - ], - ageRestriction: null, - flaggedAsEnded: false, - venue: { - id: 17532, - displayName: "The O2", - uri: "https://www.songkick.com/venues/17532-o2?utm_source=2356&utm_medium=partner", - metroArea: { - displayName: "London", - country: { displayName: "UK" }, - id: 24426, - uri: "https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner", - }, - lat: 51.50094, - lng: 0.00536, - }, - location: { city: "London, UK", lat: 51.50094, lng: 0.00536 }, - }, - { - id: 39850981, - displayName: - "Billie Eilish with Jessie Reyez at The O2 (June 11, 2022)", - type: "Concert", - uri: "https://www.songkick.com/concerts/39850981-billie-eilish-at-o2?utm_source=2356&utm_medium=partner", - status: "ok", - popularity: 0.350619, - start: { - date: "2022-06-11", - datetime: "2022-06-11T19:00:00+0100", - time: "19:00:00", - }, - performance: [ - { - id: 75321150, - displayName: "Billie Eilish", - billing: "headline", - billingIndex: 1, - artist: { - id: 8913479, - displayName: "Billie Eilish", - uri: "https://www.songkick.com/artists/8913479-billie-eilish?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "f4abc0b5-3f7a-4eff-8f78-ac078dbce533", - href: "https://api.songkick.com/api/3.0/artists/mbid:f4abc0b5-3f7a-4eff-8f78-ac078dbce533.json", - }, - ], - }, - }, - { - id: 75531784, - displayName: "Jessie Reyez", - billing: "support", - billingIndex: 2, - artist: { - id: 8838519, - displayName: "Jessie Reyez", - uri: "https://www.songkick.com/artists/8838519-jessie-reyez?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "18f56081-ccd7-4e07-981a-558c20951ccd", - href: "https://api.songkick.com/api/3.0/artists/mbid:18f56081-ccd7-4e07-981a-558c20951ccd.json", - }, - ], - }, - }, - ], - ageRestriction: null, - flaggedAsEnded: false, - venue: { - id: 17532, - displayName: "The O2", - uri: "https://www.songkick.com/venues/17532-o2?utm_source=2356&utm_medium=partner", - metroArea: { - displayName: "London", - country: { displayName: "UK" }, - id: 24426, - uri: "https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner", - }, - lat: 51.50094, - lng: 0.00536, - }, - location: { city: "London, UK", lat: 51.50094, lng: 0.00536 }, - }, - { - id: 39851158, - displayName: - "Billie Eilish with Jessie Reyez at The O2 (June 12, 2022)", - type: "Concert", - uri: "https://www.songkick.com/concerts/39851158-billie-eilish-at-o2?utm_source=2356&utm_medium=partner", - status: "ok", - popularity: 0.350619, - start: { - date: "2022-06-12", - datetime: "2022-06-12T19:00:00+0100", - time: "19:00:00", - }, - performance: [ - { - id: 75321358, - displayName: "Billie Eilish", - billing: "headline", - billingIndex: 1, - artist: { - id: 8913479, - displayName: "Billie Eilish", - uri: "https://www.songkick.com/artists/8913479-billie-eilish?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "f4abc0b5-3f7a-4eff-8f78-ac078dbce533", - href: "https://api.songkick.com/api/3.0/artists/mbid:f4abc0b5-3f7a-4eff-8f78-ac078dbce533.json", - }, - ], - }, - }, - { - id: 75532000, - displayName: "Jessie Reyez", - billing: "support", - billingIndex: 2, - artist: { - id: 8838519, - displayName: "Jessie Reyez", - uri: "https://www.songkick.com/artists/8838519-jessie-reyez?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "18f56081-ccd7-4e07-981a-558c20951ccd", - href: "https://api.songkick.com/api/3.0/artists/mbid:18f56081-ccd7-4e07-981a-558c20951ccd.json", - }, - ], - }, - }, - ], - ageRestriction: null, - flaggedAsEnded: false, - venue: { - id: 17532, - displayName: "The O2", - uri: "https://www.songkick.com/venues/17532-o2?utm_source=2356&utm_medium=partner", - metroArea: { - displayName: "London", - country: { displayName: "UK" }, - id: 24426, - uri: "https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner", - }, - lat: 51.50094, - lng: 0.00536, - }, - location: { city: "London, UK", lat: 51.50094, lng: 0.00536 }, - }, - { - id: 39472862, - displayName: "Beck at O2 Academy Brixton (June 16, 2022)", - type: "Concert", - uri: "https://www.songkick.com/concerts/39472862-beck-at-o2-academy-brixton?utm_source=2356&utm_medium=partner", - status: "ok", - popularity: 0.269293, - start: { - date: "2022-06-16", - datetime: "2022-06-16T19:00:00+0100", - time: "19:00:00", - }, - performance: [ - { - id: 74672767, - displayName: "Beck", - billing: "headline", - billingIndex: 1, - artist: { - id: 430505, - displayName: "Beck", - uri: "https://www.songkick.com/artists/430505-beck?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "1cc5adcd-1422-4b5c-a3cd-3ecd4f43f506", - href: "https://api.songkick.com/api/3.0/artists/mbid:1cc5adcd-1422-4b5c-a3cd-3ecd4f43f506.json", - }, - { - mbid: "309c62ba-7a22-4277-9f67-4a162526d18a", - href: "https://api.songkick.com/api/3.0/artists/mbid:309c62ba-7a22-4277-9f67-4a162526d18a.json", - }, - { - mbid: "a8baaa41-50f1-4f63-979e-717c14979dfb", - href: "https://api.songkick.com/api/3.0/artists/mbid:a8baaa41-50f1-4f63-979e-717c14979dfb.json", - }, - ], - }, - }, - ], - ageRestriction: null, - flaggedAsEnded: false, - venue: { - id: 17522, - displayName: "O2 Academy Brixton", - uri: "https://www.songkick.com/venues/17522-o2-academy-brixton?utm_source=2356&utm_medium=partner", - metroArea: { - displayName: "London", - country: { displayName: "UK" }, - id: 24426, - uri: "https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner", - }, - lat: 51.46516, - lng: -0.11493, - }, - location: { city: "London, UK", lat: 51.46516, lng: -0.11493 }, - }, - { - id: 39850946, - displayName: "Billie Eilish with Jungle at The O2 (June 16, 2022)", - type: "Concert", - uri: "https://www.songkick.com/concerts/39850946-billie-eilish-at-o2?utm_source=2356&utm_medium=partner", - status: "ok", - popularity: 0.350619, - start: { - date: "2022-06-16", - datetime: "2022-06-16T19:00:00+0100", - time: "19:00:00", - }, - performance: [ - { - id: 75321116, - displayName: "Billie Eilish", - billing: "headline", - billingIndex: 1, - artist: { - id: 8913479, - displayName: "Billie Eilish", - uri: "https://www.songkick.com/artists/8913479-billie-eilish?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "f4abc0b5-3f7a-4eff-8f78-ac078dbce533", - href: "https://api.songkick.com/api/3.0/artists/mbid:f4abc0b5-3f7a-4eff-8f78-ac078dbce533.json", - }, - ], - }, - }, - { - id: 75533168, - displayName: "Jungle", - billing: "support", - billingIndex: 2, - artist: { - id: 506651, - displayName: "Jungle", - uri: "https://www.songkick.com/artists/506651-jungle?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "3dd6a140-4526-4792-94dd-ba271e6ed041", - href: "https://api.songkick.com/api/3.0/artists/mbid:3dd6a140-4526-4792-94dd-ba271e6ed041.json", - }, - { - mbid: "6bbb3983-ce8a-4971-96e0-7cae73268fc4", - href: "https://api.songkick.com/api/3.0/artists/mbid:6bbb3983-ce8a-4971-96e0-7cae73268fc4.json", - }, - { - mbid: "6661d655-36be-4b60-ada1-ff564d82942a", - href: "https://api.songkick.com/api/3.0/artists/mbid:6661d655-36be-4b60-ada1-ff564d82942a.json", - }, - ], - }, - }, - ], - ageRestriction: null, - flaggedAsEnded: false, - venue: { - id: 17532, - displayName: "The O2", - uri: "https://www.songkick.com/venues/17532-o2?utm_source=2356&utm_medium=partner", - metroArea: { - displayName: "London", - country: { displayName: "UK" }, - id: 24426, - uri: "https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner", - }, - lat: 51.50094, - lng: 0.00536, - }, - location: { city: "London, UK", lat: 51.50094, lng: 0.00536 }, - }, - { - id: 39128585, - displayName: - "Green Day, Fall Out Boy, and Weezer at London Stadium, Queen Elizabeth (June 24, 2022)", - type: "Concert", - uri: "https://www.songkick.com/concerts/39128585-green-day-at-london-stadium-queen-elizabeth?utm_source=2356&utm_medium=partner", - status: "ok", - popularity: 0.499753, - start: { - date: "2022-06-24", - datetime: "2022-06-24T16:00:00+0100", - time: "16:00:00", - }, - performance: [ - { - id: 74085873, - displayName: "Green Day", - billing: "headline", - billingIndex: 1, - artist: { - id: 269937, - displayName: "Green Day", - uri: "https://www.songkick.com/artists/269937-green-day?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "084308bd-1654-436f-ba03-df6697104e19", - href: "https://api.songkick.com/api/3.0/artists/mbid:084308bd-1654-436f-ba03-df6697104e19.json", - }, - ], - }, - }, - { - id: 74085874, - displayName: "Fall Out Boy", - billing: "headline", - billingIndex: 2, - artist: { - id: 315398, - displayName: "Fall Out Boy", - uri: "https://www.songkick.com/artists/315398-fall-out-boy?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "9c75d4e4-85b0-4d0e-8110-3cb80279e870", - href: "https://api.songkick.com/api/3.0/artists/mbid:9c75d4e4-85b0-4d0e-8110-3cb80279e870.json", - }, - { - mbid: "516cef4d-0718-4007-9939-f9b38af3f784", - href: "https://api.songkick.com/api/3.0/artists/mbid:516cef4d-0718-4007-9939-f9b38af3f784.json", - }, - { - mbid: "0666707b-4f61-4f56-83a7-08597d6c70b9", - href: "https://api.songkick.com/api/3.0/artists/mbid:0666707b-4f61-4f56-83a7-08597d6c70b9.json", - }, - ], - }, - }, - { - id: 74087022, - displayName: "Weezer", - billing: "headline", - billingIndex: 3, - artist: { - id: 544909, - displayName: "Weezer", - uri: "https://www.songkick.com/artists/544909-weezer?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "6fe07aa5-fec0-4eca-a456-f29bff451b04", - href: "https://api.songkick.com/api/3.0/artists/mbid:6fe07aa5-fec0-4eca-a456-f29bff451b04.json", - }, - ], - }, - }, - ], - ageRestriction: null, - flaggedAsEnded: false, - venue: { - id: 3174414, - displayName: "London Stadium, Queen Elizabeth", - uri: "https://www.songkick.com/venues/3174414-london-stadium-queen-elizabeth?utm_source=2356&utm_medium=partner", - metroArea: { - displayName: "London", - country: { displayName: "UK" }, - id: 24426, - uri: "https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner", - }, - lat: 51.53871, - lng: -0.0166, - }, - location: { city: "London, UK", lat: 51.53871, lng: -0.0166 }, - }, - ], - }, - { - title: "July 2022", - data: [ - { - id: 39344372, - displayName: - "Guns N' Roses with Slash and Gary Clark Jr. at Tottenham Hotspur Stadium (July 1, 2022)", - type: "Concert", - uri: "https://www.songkick.com/concerts/39344372-guns-n-roses-at-tottenham-hotspur-stadium?utm_source=2356&utm_medium=partner", - status: "ok", - popularity: 0.384729, - start: { - date: "2022-07-01", - datetime: "2022-07-01T15:30:00+0100", - time: "15:30:00", - }, - performance: [ - { - id: 74446370, - displayName: "Guns N' Roses", - billing: "headline", - billingIndex: 1, - artist: { - id: 509644, - displayName: "Guns N' Roses", - uri: "https://www.songkick.com/artists/509644-guns-n-roses?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "eeb1195b-f213-4ce1-b28c-8565211f8e43", - href: "https://api.songkick.com/api/3.0/artists/mbid:eeb1195b-f213-4ce1-b28c-8565211f8e43.json", - }, - ], - }, - }, - { - id: 74866729, - displayName: "Slash", - billing: "support", - billingIndex: 2, - artist: { - id: 44022, - displayName: "Slash", - uri: "https://www.songkick.com/artists/44022-slash?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "649b8590-b2c2-4519-a2d4-2f81f3828242", - href: "https://api.songkick.com/api/3.0/artists/mbid:649b8590-b2c2-4519-a2d4-2f81f3828242.json", - }, - { - mbid: "5e7a7026-dfc5-4aba-8496-95140716f3db", - href: "https://api.songkick.com/api/3.0/artists/mbid:5e7a7026-dfc5-4aba-8496-95140716f3db.json", - }, - { - mbid: "ef2533cc-e8fa-4ba9-96a1-5a516e5bf850", - href: "https://api.songkick.com/api/3.0/artists/mbid:ef2533cc-e8fa-4ba9-96a1-5a516e5bf850.json", - }, - { - mbid: "a3068832-71ed-4367-8d74-c4f7979ee784", - href: "https://api.songkick.com/api/3.0/artists/mbid:a3068832-71ed-4367-8d74-c4f7979ee784.json", - }, - { - mbid: "e7ed88e7-3ea6-49de-a728-c4c2195a6fbd", - href: "https://api.songkick.com/api/3.0/artists/mbid:e7ed88e7-3ea6-49de-a728-c4c2195a6fbd.json", - }, - ], - }, - }, - { - id: 75235129, - displayName: "Gary Clark Jr.", - billing: "support", - billingIndex: 3, - artist: { - id: 309236, - displayName: "Gary Clark Jr.", - uri: "https://www.songkick.com/artists/309236-gary-clark-jr?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "c733c4e6-22a2-499d-ace7-17b832356aff", - href: "https://api.songkick.com/api/3.0/artists/mbid:c733c4e6-22a2-499d-ace7-17b832356aff.json", - }, - { - mbid: "0c15371a-a7dd-474f-8092-2e13619ee239", - href: "https://api.songkick.com/api/3.0/artists/mbid:0c15371a-a7dd-474f-8092-2e13619ee239.json", - }, - ], - }, - }, - ], - ageRestriction: null, - flaggedAsEnded: false, - venue: { - id: 4368336, - displayName: "Tottenham Hotspur Stadium", - uri: "https://www.songkick.com/venues/4368336-tottenham-hotspur-stadium?utm_source=2356&utm_medium=partner", - metroArea: { - displayName: "London", - country: { displayName: "UK" }, - id: 24426, - uri: "https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner", - }, - lat: 51.60473, - lng: -0.06784, - }, - location: { city: "London, UK", lat: 51.60473, lng: -0.06784 }, - }, - { - id: 39354794, - displayName: - "Guns N' Roses with Slash and Gary Clark Jr. at Tottenham Hotspur Stadium (July 2, 2022)", - type: "Concert", - uri: "https://www.songkick.com/concerts/39354794-guns-n-roses-at-tottenham-hotspur-stadium?utm_source=2356&utm_medium=partner", - status: "ok", - popularity: 0.384729, - start: { - date: "2022-07-02", - datetime: "2022-07-02T17:00:00+0100", - time: "17:00:00", - }, - performance: [ - { - id: 74463947, - displayName: "Guns N' Roses", - billing: "headline", - billingIndex: 1, - artist: { - id: 509644, - displayName: "Guns N' Roses", - uri: "https://www.songkick.com/artists/509644-guns-n-roses?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "eeb1195b-f213-4ce1-b28c-8565211f8e43", - href: "https://api.songkick.com/api/3.0/artists/mbid:eeb1195b-f213-4ce1-b28c-8565211f8e43.json", - }, - ], - }, - }, - { - id: 74866730, - displayName: "Slash", - billing: "support", - billingIndex: 2, - artist: { - id: 44022, - displayName: "Slash", - uri: "https://www.songkick.com/artists/44022-slash?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "649b8590-b2c2-4519-a2d4-2f81f3828242", - href: "https://api.songkick.com/api/3.0/artists/mbid:649b8590-b2c2-4519-a2d4-2f81f3828242.json", - }, - { - mbid: "5e7a7026-dfc5-4aba-8496-95140716f3db", - href: "https://api.songkick.com/api/3.0/artists/mbid:5e7a7026-dfc5-4aba-8496-95140716f3db.json", - }, - { - mbid: "ef2533cc-e8fa-4ba9-96a1-5a516e5bf850", - href: "https://api.songkick.com/api/3.0/artists/mbid:ef2533cc-e8fa-4ba9-96a1-5a516e5bf850.json", - }, - { - mbid: "a3068832-71ed-4367-8d74-c4f7979ee784", - href: "https://api.songkick.com/api/3.0/artists/mbid:a3068832-71ed-4367-8d74-c4f7979ee784.json", - }, - { - mbid: "e7ed88e7-3ea6-49de-a728-c4c2195a6fbd", - href: "https://api.songkick.com/api/3.0/artists/mbid:e7ed88e7-3ea6-49de-a728-c4c2195a6fbd.json", - }, - ], - }, - }, - { - id: 75235131, - displayName: "Gary Clark Jr.", - billing: "support", - billingIndex: 3, - artist: { - id: 309236, - displayName: "Gary Clark Jr.", - uri: "https://www.songkick.com/artists/309236-gary-clark-jr?utm_source=2356&utm_medium=partner", - identifier: [ - { - mbid: "c733c4e6-22a2-499d-ace7-17b832356aff", - href: "https://api.songkick.com/api/3.0/artists/mbid:c733c4e6-22a2-499d-ace7-17b832356aff.json", - }, - { - mbid: "0c15371a-a7dd-474f-8092-2e13619ee239", - href: "https://api.songkick.com/api/3.0/artists/mbid:0c15371a-a7dd-474f-8092-2e13619ee239.json", - }, - ], - }, - }, - ], - ageRestriction: null, - flaggedAsEnded: false, - venue: { - id: 4368336, - displayName: "Tottenham Hotspur Stadium", - uri: "https://www.songkick.com/venues/4368336-tottenham-hotspur-stadium?utm_source=2356&utm_medium=partner", - metroArea: { - displayName: "London", - country: { displayName: "UK" }, - id: 24426, - uri: "https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner", - }, - lat: 51.60473, - lng: -0.06784, - }, - location: { city: "London, UK", lat: 51.60473, lng: -0.06784 }, - }, - ], - }, -]; diff --git a/src/calendarData.ts b/src/calendarData.ts new file mode 100644 index 0000000..8605cf2 --- /dev/null +++ b/src/calendarData.ts @@ -0,0 +1,4162 @@ +type EventType = 'Concert' | 'Festival'; +type EventStatus = 'ok'; + +interface EventStart { + date: string; + datetime: string | null; + time: string | null; +} + +type PerformanceBilling = 'headline' | 'support'; + +interface ArtistIdentifier { + mbid: string; + href: string; +} + +interface Artist { + id: number; + displayName: string; + uri: string; + identifier: ArtistIdentifier[]; +} + +export interface EventPerformance { + id: number; + displayName: string; + billing: PerformanceBilling; + billingIndex: number; + artist: Artist; +} + +interface VenueCountry { + displayName: string; +} + +interface VenueArea { + id: number; + displayName: string; + country: VenueCountry; + uri: string; +} + +interface Venue { + id: number; + displayName: string; + uri: string; + metroArea: VenueArea; + lat: number | null; + lng: number | null; +} + +interface Location { + city: string; + lat: number; + lng: number; +} + +interface EventSeries { + displayName: string; +} + +export interface Event { + id: number; + displayName: string; + type: EventType; + uri: string; + status: EventStatus; + popularity: number; + start: EventStart; + end?: EventStart; + performance: EventPerformance[]; + ageRestriction: null; + flaggedAsEnded: boolean; + venue: Venue; + location: Location; + series?: EventSeries; +} + +export interface EventSection { + title: string; + data: Event[]; +} + +export const calendarData: EventSection[] = [ + { + title: 'November 2021', + data: [ + { + id: 39657660, + displayName: 'Biffy Clyro at O2 Forum Kentish Town (November 2, 2021)', + type: 'Concert', + uri: 'https://www.songkick.com/concerts/39657660-biffy-clyro-at-o2-forum-kentish-town?utm_source=2356&utm_medium=partner', + status: 'ok', + popularity: 0.08813, + start: { + date: '2021-11-02', + datetime: '2021-11-02T19:00:00+0000', + time: '19:00:00', + }, + performance: [ + { + id: 75006083, + displayName: 'Biffy Clyro', + billing: 'headline', + billingIndex: 1, + artist: { + id: 181912, + displayName: 'Biffy Clyro', + uri: 'https://www.songkick.com/artists/181912-biffy-clyro?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '892500b7-09a6-4049-ba92-2d192dd70563', + href: 'https://api.songkick.com/api/3.0/artists/mbid:892500b7-09a6-4049-ba92-2d192dd70563.json', + }, + ], + }, + }, + ], + ageRestriction: null, + flaggedAsEnded: false, + venue: { + id: 37414, + displayName: 'O2 Forum Kentish Town', + uri: 'https://www.songkick.com/venues/37414-o2-forum-kentish-town?utm_source=2356&utm_medium=partner', + metroArea: { + displayName: 'London', + country: { displayName: 'UK' }, + id: 24426, + uri: 'https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner', + }, + lat: 51.55214, + lng: -0.14217, + }, + location: { city: 'London, UK', lat: 51.55214, lng: -0.14217 }, + }, + { + id: 39792892, + displayName: + 'Willy Mason with Voka Gentle at The Boileroom (November 2, 2021)', + type: 'Concert', + uri: 'https://www.songkick.com/concerts/39792892-willy-mason-at-boileroom?utm_source=2356&utm_medium=partner', + status: 'ok', + popularity: 0.011677, + start: { + date: '2021-11-02', + datetime: '2021-11-02T19:00:00+0000', + time: '19:00:00', + }, + performance: [ + { + id: 75227287, + displayName: 'Willy Mason', + billing: 'headline', + billingIndex: 1, + artist: { + id: 61968, + displayName: 'Willy Mason', + uri: 'https://www.songkick.com/artists/61968-willy-mason?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: 'd5c9ee75-5711-469f-b671-669dcde5c9bf', + href: 'https://api.songkick.com/api/3.0/artists/mbid:d5c9ee75-5711-469f-b671-669dcde5c9bf.json', + }, + ], + }, + }, + { + id: 75699031, + displayName: 'Voka Gentle', + billing: 'support', + billingIndex: 2, + artist: { + id: 10147281, + displayName: 'Voka Gentle', + uri: 'https://www.songkick.com/artists/10147281-voka-gentle?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '13141069-19bc-4d5d-96a3-55fc376ff4ec', + href: 'https://api.songkick.com/api/3.0/artists/mbid:13141069-19bc-4d5d-96a3-55fc376ff4ec.json', + }, + ], + }, + }, + ], + ageRestriction: null, + flaggedAsEnded: false, + venue: { + id: 3268, + displayName: 'The Boileroom', + uri: 'https://www.songkick.com/venues/3268-boileroom?utm_source=2356&utm_medium=partner', + metroArea: { + displayName: 'London', + country: { displayName: 'UK' }, + id: 24426, + uri: 'https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner', + }, + lat: 51.23992, + lng: -0.57299, + }, + location: { city: 'Guildford, UK', lat: 51.23992, lng: -0.57299 }, + }, + { + id: 39794127, + displayName: 'Mathilda Homer at Lafayette (November 5, 2021)', + type: 'Concert', + uri: 'https://www.songkick.com/concerts/39794127-mathilda-homer-at-lafayette?utm_source=2356&utm_medium=partner', + status: 'ok', + popularity: 0.000773, + start: { + date: '2021-11-05', + datetime: '2021-11-05T19:00:00+0000', + time: '19:00:00', + }, + performance: [ + { + id: 75229241, + displayName: 'Mathilda Homer', + billing: 'headline', + billingIndex: 1, + artist: { + id: 9545879, + displayName: 'Mathilda Homer', + uri: 'https://www.songkick.com/artists/9545879-mathilda-homer?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '1fe3de69-4bbd-4f13-bee4-2581f4bdd675', + href: 'https://api.songkick.com/api/3.0/artists/mbid:1fe3de69-4bbd-4f13-bee4-2581f4bdd675.json', + }, + ], + }, + }, + ], + ageRestriction: null, + flaggedAsEnded: false, + venue: { + id: 4364813, + displayName: 'Lafayette', + uri: 'https://www.songkick.com/venues/4364813-lafayette?utm_source=2356&utm_medium=partner', + metroArea: { + displayName: 'London', + country: { displayName: 'UK' }, + id: 24426, + uri: 'https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner', + }, + lat: 51.53417, + lng: -0.12596, + }, + location: { city: 'London, UK', lat: 51.53417, lng: -0.12596 }, + }, + { + id: 39207965, + displayName: + 'Easy Life with BERWYN at O2 Academy Brixton (November 16, 2021)', + type: 'Concert', + uri: 'https://www.songkick.com/concerts/39207965-easy-life-at-o2-academy-brixton?utm_source=2356&utm_medium=partner', + status: 'ok', + popularity: 0.01075, + start: { + date: '2021-11-16', + datetime: '2021-11-16T19:00:00+0000', + time: '19:00:00', + }, + performance: [ + { + id: 74220176, + displayName: 'Easy Life', + billing: 'headline', + billingIndex: 1, + artist: { + id: 8282533, + displayName: 'Easy Life', + uri: 'https://www.songkick.com/artists/8282533-easy-life?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '75c13fa5-c939-4caf-855e-13d1cd332da6', + href: 'https://api.songkick.com/api/3.0/artists/mbid:75c13fa5-c939-4caf-855e-13d1cd332da6.json', + }, + ], + }, + }, + { + id: 75543615, + displayName: 'BERWYN', + billing: 'support', + billingIndex: 2, + artist: { + id: 10142114, + displayName: 'BERWYN', + uri: 'https://www.songkick.com/artists/10142114-berwyn?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '1dca0c81-8361-424d-993f-1b40bcc22ae0', + href: 'https://api.songkick.com/api/3.0/artists/mbid:1dca0c81-8361-424d-993f-1b40bcc22ae0.json', + }, + ], + }, + }, + ], + ageRestriction: null, + flaggedAsEnded: false, + venue: { + id: 17522, + displayName: 'O2 Academy Brixton', + uri: 'https://www.songkick.com/venues/17522-o2-academy-brixton?utm_source=2356&utm_medium=partner', + metroArea: { + displayName: 'London', + country: { displayName: 'UK' }, + id: 24426, + uri: 'https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner', + }, + lat: 51.46516, + lng: -0.11493, + }, + location: { city: 'London, UK', lat: 51.46516, lng: -0.11493 }, + }, + { + id: 39803982, + displayName: + 'Easy Life with BERWYN at O2 Academy Brixton (November 17, 2021)', + type: 'Concert', + uri: 'https://www.songkick.com/concerts/39803982-easy-life-at-o2-academy-brixton?utm_source=2356&utm_medium=partner', + status: 'ok', + popularity: 0.01075, + start: { + date: '2021-11-17', + datetime: '2021-11-17T19:00:00+0000', + time: '19:00:00', + }, + performance: [ + { + id: 75245973, + displayName: 'Easy Life', + billing: 'headline', + billingIndex: 1, + artist: { + id: 8282533, + displayName: 'Easy Life', + uri: 'https://www.songkick.com/artists/8282533-easy-life?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '75c13fa5-c939-4caf-855e-13d1cd332da6', + href: 'https://api.songkick.com/api/3.0/artists/mbid:75c13fa5-c939-4caf-855e-13d1cd332da6.json', + }, + ], + }, + }, + { + id: 75542979, + displayName: 'BERWYN', + billing: 'support', + billingIndex: 2, + artist: { + id: 10142114, + displayName: 'BERWYN', + uri: 'https://www.songkick.com/artists/10142114-berwyn?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '1dca0c81-8361-424d-993f-1b40bcc22ae0', + href: 'https://api.songkick.com/api/3.0/artists/mbid:1dca0c81-8361-424d-993f-1b40bcc22ae0.json', + }, + ], + }, + }, + ], + ageRestriction: null, + flaggedAsEnded: false, + venue: { + id: 17522, + displayName: 'O2 Academy Brixton', + uri: 'https://www.songkick.com/venues/17522-o2-academy-brixton?utm_source=2356&utm_medium=partner', + metroArea: { + displayName: 'London', + country: { displayName: 'UK' }, + id: 24426, + uri: 'https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner', + }, + lat: 51.46516, + lng: -0.11493, + }, + location: { city: 'London, UK', lat: 51.46516, lng: -0.11493 }, + }, + { + id: 39792261, + displayName: + 'Willy Mason at The Dome, Tufnell Park (November 18, 2021)', + type: 'Concert', + uri: 'https://www.songkick.com/concerts/39792261-willy-mason-at-dome-tufnell-park?utm_source=2356&utm_medium=partner', + status: 'ok', + popularity: 0.012093, + start: { date: '2021-11-18', datetime: null, time: null }, + performance: [ + { + id: 75226380, + displayName: 'Willy Mason', + billing: 'headline', + billingIndex: 1, + artist: { + id: 61968, + displayName: 'Willy Mason', + uri: 'https://www.songkick.com/artists/61968-willy-mason?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: 'd5c9ee75-5711-469f-b671-669dcde5c9bf', + href: 'https://api.songkick.com/api/3.0/artists/mbid:d5c9ee75-5711-469f-b671-669dcde5c9bf.json', + }, + ], + }, + }, + ], + ageRestriction: null, + flaggedAsEnded: false, + venue: { + id: 29349, + displayName: 'The Dome, Tufnell Park', + uri: 'https://www.songkick.com/venues/29349-dome-tufnell-park?utm_source=2356&utm_medium=partner', + metroArea: { + displayName: 'London', + country: { displayName: 'UK' }, + id: 24426, + uri: 'https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner', + }, + lat: 51.55759, + lng: -0.13877, + }, + location: { city: 'London, UK', lat: 51.55759, lng: -0.13877 }, + }, + { + id: 39849714, + displayName: + 'Yo La Tengo at Royal Festival Hall, Southbank Centre (November 19, 2021)', + type: 'Concert', + uri: 'https://www.songkick.com/concerts/39849714-yo-la-tengo-at-royal-festival-hall-southbank-centre?utm_source=2356&utm_medium=partner', + status: 'ok', + popularity: 0.068049, + start: { date: '2021-11-19', datetime: null, time: null }, + performance: [ + { + id: 75319375, + displayName: 'Yo La Tengo', + billing: 'headline', + billingIndex: 1, + artist: { + id: 70762, + displayName: 'Yo La Tengo', + uri: 'https://www.songkick.com/artists/70762-yo-la-tengo?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '3f542031-b054-454d-b57b-812fa2a81b11', + href: 'https://api.songkick.com/api/3.0/artists/mbid:3f542031-b054-454d-b57b-812fa2a81b11.json', + }, + ], + }, + }, + ], + ageRestriction: null, + flaggedAsEnded: false, + venue: { + id: 17582, + displayName: 'Royal Festival Hall, Southbank Centre', + uri: 'https://www.songkick.com/venues/17582-royal-festival-hall-southbank-centre?utm_source=2356&utm_medium=partner', + metroArea: { + displayName: 'London', + country: { displayName: 'UK' }, + id: 24426, + uri: 'https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner', + }, + lat: 51.5034, + lng: -0.11745, + }, + location: { city: 'London, UK', lat: 51.5034, lng: -0.11745 }, + }, + { + id: 39616396, + displayName: + 'Sam Fender with Gang of Youths at Alexandra Palace (November 20, 2021)', + type: 'Concert', + uri: 'https://www.songkick.com/concerts/39616396-sam-fender-at-alexandra-palace?utm_source=2356&utm_medium=partner', + status: 'ok', + popularity: 0.021183, + start: { + date: '2021-11-20', + datetime: '2021-11-20T18:30:00+0000', + time: '18:30:00', + }, + performance: [ + { + id: 74935031, + displayName: 'Sam Fender', + billing: 'headline', + billingIndex: 1, + artist: { + id: 6907314, + displayName: 'Sam Fender', + uri: 'https://www.songkick.com/artists/6907314-sam-fender?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '3478a5d1-bd96-4584-aa54-4d6e0a329658', + href: 'https://api.songkick.com/api/3.0/artists/mbid:3478a5d1-bd96-4584-aa54-4d6e0a329658.json', + }, + ], + }, + }, + { + id: 74935032, + displayName: 'Gang of Youths', + billing: 'support', + billingIndex: 2, + artist: { + id: 6400184, + displayName: 'Gang of Youths', + uri: 'https://www.songkick.com/artists/6400184-gang-of-youths?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '99c5de7a-d0b9-4454-98bc-b4f6679a9ce7', + href: 'https://api.songkick.com/api/3.0/artists/mbid:99c5de7a-d0b9-4454-98bc-b4f6679a9ce7.json', + }, + ], + }, + }, + ], + ageRestriction: null, + flaggedAsEnded: false, + venue: { + id: 1787, + displayName: 'Alexandra Palace', + uri: 'https://www.songkick.com/venues/1787-alexandra-palace?utm_source=2356&utm_medium=partner', + metroArea: { + displayName: 'London', + country: { displayName: 'UK' }, + id: 24426, + uri: 'https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner', + }, + lat: 51.59079, + lng: -0.13318, + }, + location: { city: 'London, UK', lat: 51.59079, lng: -0.13318 }, + }, + { + id: 39158410, + displayName: + 'Sam Fender with Gang of Youths at Alexandra Palace (November 21, 2021)', + type: 'Concert', + uri: 'https://www.songkick.com/concerts/39158410-sam-fender-at-alexandra-palace?utm_source=2356&utm_medium=partner', + status: 'ok', + popularity: 0.021183, + start: { + date: '2021-11-21', + datetime: '2021-11-21T18:30:00+0000', + time: '18:30:00', + }, + performance: [ + { + id: 74136401, + displayName: 'Sam Fender', + billing: 'headline', + billingIndex: 1, + artist: { + id: 6907314, + displayName: 'Sam Fender', + uri: 'https://www.songkick.com/artists/6907314-sam-fender?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '3478a5d1-bd96-4584-aa54-4d6e0a329658', + href: 'https://api.songkick.com/api/3.0/artists/mbid:3478a5d1-bd96-4584-aa54-4d6e0a329658.json', + }, + ], + }, + }, + { + id: 74818844, + displayName: 'Gang of Youths', + billing: 'support', + billingIndex: 2, + artist: { + id: 6400184, + displayName: 'Gang of Youths', + uri: 'https://www.songkick.com/artists/6400184-gang-of-youths?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '99c5de7a-d0b9-4454-98bc-b4f6679a9ce7', + href: 'https://api.songkick.com/api/3.0/artists/mbid:99c5de7a-d0b9-4454-98bc-b4f6679a9ce7.json', + }, + ], + }, + }, + ], + ageRestriction: null, + flaggedAsEnded: false, + venue: { + id: 1787, + displayName: 'Alexandra Palace', + uri: 'https://www.songkick.com/venues/1787-alexandra-palace?utm_source=2356&utm_medium=partner', + metroArea: { + displayName: 'London', + country: { displayName: 'UK' }, + id: 24426, + uri: 'https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner', + }, + lat: 51.59079, + lng: -0.13318, + }, + location: { city: 'London, UK', lat: 51.59079, lng: -0.13318 }, + }, + { + id: 39623647, + displayName: + 'Sports Team with Courting at O2 Academy Brixton (November 25, 2021)', + type: 'Concert', + uri: 'https://www.songkick.com/concerts/39623647-sports-team-at-o2-academy-brixton?utm_source=2356&utm_medium=partner', + status: 'ok', + popularity: 0.003686, + start: { + date: '2021-11-25', + datetime: '2021-11-25T07:00:00+0000', + time: '07:00:00', + }, + performance: [ + { + id: 74947467, + displayName: 'Sports Team', + billing: 'headline', + billingIndex: 1, + artist: { + id: 7599019, + displayName: 'Sports Team', + uri: 'https://www.songkick.com/artists/7599019-sports-team?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: 'bf5931bd-4cf6-4c64-8c1b-140242238507', + href: 'https://api.songkick.com/api/3.0/artists/mbid:bf5931bd-4cf6-4c64-8c1b-140242238507.json', + }, + ], + }, + }, + { + id: 75499512, + displayName: 'Courting', + billing: 'support', + billingIndex: 2, + artist: { + id: 9743649, + displayName: 'Courting', + uri: 'https://www.songkick.com/artists/9743649-courting?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '2ba62367-f36f-4d49-9439-9a81f22a47ce', + href: 'https://api.songkick.com/api/3.0/artists/mbid:2ba62367-f36f-4d49-9439-9a81f22a47ce.json', + }, + ], + }, + }, + ], + ageRestriction: null, + flaggedAsEnded: false, + venue: { + id: 17522, + displayName: 'O2 Academy Brixton', + uri: 'https://www.songkick.com/venues/17522-o2-academy-brixton?utm_source=2356&utm_medium=partner', + metroArea: { + displayName: 'London', + country: { displayName: 'UK' }, + id: 24426, + uri: 'https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner', + }, + lat: 51.46516, + lng: -0.11493, + }, + location: { city: 'London, UK', lat: 51.46516, lng: -0.11493 }, + }, + { + id: 39848460, + displayName: + 'Mr Jukes with Barney Artist, Mr Jukes & Barney Artist, and MANIK MC at Scala (November 29, 2021)', + type: 'Concert', + uri: 'https://www.songkick.com/concerts/39848460-mr-jukes-at-scala?utm_source=2356&utm_medium=partner', + status: 'ok', + popularity: 0.007457, + start: { + date: '2021-11-29', + datetime: '2021-11-29T19:30:00+0000', + time: '19:30:00', + }, + performance: [ + { + id: 75317413, + displayName: 'Mr Jukes', + billing: 'headline', + billingIndex: 1, + artist: { + id: 9133079, + displayName: 'Mr Jukes', + uri: 'https://www.songkick.com/artists/9133079-mr-jukes?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '7c2bc378-506f-40bf-a53f-038755e4bf86', + href: 'https://api.songkick.com/api/3.0/artists/mbid:7c2bc378-506f-40bf-a53f-038755e4bf86.json', + }, + ], + }, + }, + { + id: 75321115, + displayName: 'Barney Artist', + billing: 'support', + billingIndex: 2, + artist: { + id: 8292408, + displayName: 'Barney Artist', + uri: 'https://www.songkick.com/artists/8292408-barney-artist?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: 'c3765eb4-2510-4e6e-ba7e-31d7c35096b7', + href: 'https://api.songkick.com/api/3.0/artists/mbid:c3765eb4-2510-4e6e-ba7e-31d7c35096b7.json', + }, + ], + }, + }, + { + id: 75494564, + displayName: 'Mr Jukes & Barney Artist', + billing: 'support', + billingIndex: 3, + artist: { + id: 10165368, + displayName: 'Mr Jukes & Barney Artist', + uri: 'https://www.songkick.com/artists/10165368-mr-jukes-and-barney-artist?utm_source=2356&utm_medium=partner', + identifier: [], + }, + }, + { + id: 75652122, + displayName: 'MANIK MC', + billing: 'support', + billingIndex: 4, + artist: { + id: 9857499, + displayName: 'MANIK MC', + uri: 'https://www.songkick.com/artists/9857499-manik-mc?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '091d4c01-6b9b-4834-8ddd-cb779291fbd5', + href: 'https://api.songkick.com/api/3.0/artists/mbid:091d4c01-6b9b-4834-8ddd-cb779291fbd5.json', + }, + ], + }, + }, + ], + ageRestriction: null, + flaggedAsEnded: false, + venue: { + id: 3428, + displayName: 'Scala', + uri: 'https://www.songkick.com/venues/3428-scala?utm_source=2356&utm_medium=partner', + metroArea: { + displayName: 'London', + country: { displayName: 'UK' }, + id: 24426, + uri: 'https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner', + }, + lat: 51.53093, + lng: -0.12027, + }, + location: { city: 'London, UK', lat: 51.53093, lng: -0.12027 }, + }, + ], + }, + { + title: 'December 2021', + data: [ + { + id: 39842037, + displayName: + 'Eagles of Death Metal with BONES UK at The Roundhouse (December 2, 2021)', + type: 'Concert', + uri: 'https://www.songkick.com/concerts/39842037-eagles-of-death-metal-at-roundhouse?utm_source=2356&utm_medium=partner', + status: 'ok', + popularity: 0.042593, + start: { + date: '2021-12-02', + datetime: '2021-12-02T19:00:00+0000', + time: '19:00:00', + }, + performance: [ + { + id: 75306945, + displayName: 'Eagles of Death Metal', + billing: 'headline', + billingIndex: 1, + artist: { + id: 527957, + displayName: 'Eagles of Death Metal', + uri: 'https://www.songkick.com/artists/527957-eagles-of-death-metal?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: 'de11b037-d880-40e0-8901-0397c768c457', + href: 'https://api.songkick.com/api/3.0/artists/mbid:de11b037-d880-40e0-8901-0397c768c457.json', + }, + ], + }, + }, + { + id: 75461655, + displayName: 'BONES UK', + billing: 'support', + billingIndex: 2, + artist: { + id: 8312908, + displayName: 'BONES UK', + uri: 'https://www.songkick.com/artists/8312908-bones-uk?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '61750ee6-6dad-45e4-b994-7d5a03046719', + href: 'https://api.songkick.com/api/3.0/artists/mbid:61750ee6-6dad-45e4-b994-7d5a03046719.json', + }, + ], + }, + }, + ], + ageRestriction: null, + flaggedAsEnded: false, + venue: { + id: 17874, + displayName: 'The Roundhouse', + uri: 'https://www.songkick.com/venues/17874-roundhouse?utm_source=2356&utm_medium=partner', + metroArea: { + displayName: 'London', + country: { displayName: 'UK' }, + id: 24426, + uri: 'https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner', + }, + lat: 51.54296, + lng: -0.1492, + }, + location: { city: 'London, UK', lat: 51.54296, lng: -0.1492 }, + }, + { + id: 39595848, + displayName: 'Fenne Lily with Katie Malco at Omeara (December 4, 2021)', + type: 'Concert', + uri: 'https://www.songkick.com/concerts/39595848-fenne-lily-at-omeara?utm_source=2356&utm_medium=partner', + status: 'ok', + popularity: 0.006036, + start: { + date: '2021-12-04', + datetime: '2021-12-04T19:00:00+0000', + time: '19:00:00', + }, + performance: [ + { + id: 74893210, + displayName: 'Fenne Lily', + billing: 'headline', + billingIndex: 1, + artist: { + id: 8455673, + displayName: 'Fenne Lily', + uri: 'https://www.songkick.com/artists/8455673-fenne-lily?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: 'cd295735-b68a-4b5d-aa10-de0dea37ca89', + href: 'https://api.songkick.com/api/3.0/artists/mbid:cd295735-b68a-4b5d-aa10-de0dea37ca89.json', + }, + ], + }, + }, + { + id: 75477541, + displayName: 'Katie Malco', + billing: 'support', + billingIndex: 2, + artist: { + id: 2268067, + displayName: 'Katie Malco', + uri: 'https://www.songkick.com/artists/2268067-katie-malco?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '57ea5b34-a835-41c2-a82d-25a49cb719ca', + href: 'https://api.songkick.com/api/3.0/artists/mbid:57ea5b34-a835-41c2-a82d-25a49cb719ca.json', + }, + ], + }, + }, + ], + ageRestriction: null, + flaggedAsEnded: false, + venue: { + id: 3375829, + displayName: 'Omeara', + uri: 'https://www.songkick.com/venues/3375829-omeara?utm_source=2356&utm_medium=partner', + metroArea: { + displayName: 'London', + country: { displayName: 'UK' }, + id: 24426, + uri: 'https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner', + }, + lat: 51.50417, + lng: -0.09472, + }, + location: { city: 'London, UK', lat: 51.50417, lng: -0.09472 }, + }, + { + id: 39688298, + displayName: 'Malaki at Camden Assembly (December 7, 2021)', + type: 'Concert', + uri: 'https://www.songkick.com/concerts/39688298-malaki-at-camden-assembly?utm_source=2356&utm_medium=partner', + status: 'ok', + popularity: 0.000437, + start: { + date: '2021-12-07', + datetime: '2021-12-07T19:00:00+0000', + time: '19:00:00', + }, + performance: [ + { + id: 75054374, + displayName: 'Malaki', + billing: 'headline', + billingIndex: 1, + artist: { + id: 8257838, + displayName: 'Malaki', + uri: 'https://www.songkick.com/artists/8257838-malaki?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '5c8e7026-adfa-468d-8ffd-4f971df42d46', + href: 'https://api.songkick.com/api/3.0/artists/mbid:5c8e7026-adfa-468d-8ffd-4f971df42d46.json', + }, + ], + }, + }, + ], + ageRestriction: null, + flaggedAsEnded: false, + venue: { + id: 7786, + displayName: 'Camden Assembly', + uri: 'https://www.songkick.com/venues/7786-camden-assembly?utm_source=2356&utm_medium=partner', + metroArea: { + displayName: 'London', + country: { displayName: 'UK' }, + id: 24426, + uri: 'https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner', + }, + lat: 51.54311, + lng: -0.14923, + }, + location: { city: 'Camden, UK', lat: 51.54311, lng: -0.14923 }, + }, + { + id: 39324428, + displayName: 'Il Divo at SSE Arena, Wembley (December 17, 2021)', + type: 'Concert', + uri: 'https://www.songkick.com/concerts/39324428-il-divo-at-sse-arena-wembley?utm_source=2356&utm_medium=partner', + status: 'ok', + popularity: 0.022215, + start: { + date: '2021-12-17', + datetime: '2021-12-17T18:00:00+0000', + time: '18:00:00', + }, + performance: [ + { + id: 74413889, + displayName: 'Il Divo', + billing: 'headline', + billingIndex: 1, + artist: { + id: 197544, + displayName: 'Il Divo', + uri: 'https://www.songkick.com/artists/197544-il-divo?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: 'e555f0c3-0a83-4c57-8a67-e657aac27ace', + href: 'https://api.songkick.com/api/3.0/artists/mbid:e555f0c3-0a83-4c57-8a67-e657aac27ace.json', + }, + ], + }, + }, + ], + ageRestriction: null, + flaggedAsEnded: false, + venue: { + id: 1686, + displayName: 'SSE Arena, Wembley', + uri: 'https://www.songkick.com/venues/1686-sse-arena-wembley?utm_source=2356&utm_medium=partner', + metroArea: { + displayName: 'London', + country: { displayName: 'UK' }, + id: 24426, + uri: 'https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner', + }, + lat: 51.55861, + lng: -0.28033, + }, + location: { city: 'London, UK', lat: 51.55861, lng: -0.28033 }, + }, + ], + }, + { + title: 'January 2022', + data: [ + { + id: 39762581, + displayName: 'La Femme at O2 Forum Kentish Town (January 13, 2022)', + type: 'Concert', + uri: 'https://www.songkick.com/concerts/39762581-la-femme-at-o2-forum-kentish-town?utm_source=2356&utm_medium=partner', + status: 'ok', + popularity: 0.01774, + start: { + date: '2022-01-13', + datetime: '2022-01-13T19:00:00+0000', + time: '19:00:00', + }, + performance: [ + { + id: 75176475, + displayName: 'La Femme', + billing: 'headline', + billingIndex: 1, + artist: { + id: 130301, + displayName: 'La Femme', + uri: 'https://www.songkick.com/artists/130301-la-femme?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '45ce3d4f-3cb5-474a-a3b0-614b0f517349', + href: 'https://api.songkick.com/api/3.0/artists/mbid:45ce3d4f-3cb5-474a-a3b0-614b0f517349.json', + }, + { + mbid: '559211a5-2a51-4346-ba84-5cc74821a1cd', + href: 'https://api.songkick.com/api/3.0/artists/mbid:559211a5-2a51-4346-ba84-5cc74821a1cd.json', + }, + ], + }, + }, + ], + ageRestriction: null, + flaggedAsEnded: false, + venue: { + id: 37414, + displayName: 'O2 Forum Kentish Town', + uri: 'https://www.songkick.com/venues/37414-o2-forum-kentish-town?utm_source=2356&utm_medium=partner', + metroArea: { + displayName: 'London', + country: { displayName: 'UK' }, + id: 24426, + uri: 'https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner', + }, + lat: 51.55214, + lng: -0.14217, + }, + location: { city: 'London, UK', lat: 51.55214, lng: -0.14217 }, + }, + { + id: 39411702, + displayName: 'Lime Cordiale at The Garage (January 14, 2022)', + type: 'Concert', + uri: 'https://www.songkick.com/concerts/39411702-lime-cordiale-at-garage?utm_source=2356&utm_medium=partner', + status: 'ok', + popularity: 0.012772, + start: { + date: '2022-01-14', + datetime: '2022-01-14T19:00:00+0000', + time: '19:00:00', + }, + performance: [ + { + id: 74563666, + displayName: 'Lime Cordiale', + billing: 'headline', + billingIndex: 1, + artist: { + id: 3670801, + displayName: 'Lime Cordiale', + uri: 'https://www.songkick.com/artists/3670801-lime-cordiale?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: 'ebbbea25-2e67-4d85-b720-97dbede34cf3', + href: 'https://api.songkick.com/api/3.0/artists/mbid:ebbbea25-2e67-4d85-b720-97dbede34cf3.json', + }, + ], + }, + }, + ], + ageRestriction: null, + flaggedAsEnded: false, + venue: { + id: 9314, + displayName: 'The Garage', + uri: 'https://www.songkick.com/venues/9314-garage?utm_source=2356&utm_medium=partner', + metroArea: { + displayName: 'London', + country: { displayName: 'UK' }, + id: 24426, + uri: 'https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner', + }, + lat: null, + lng: null, + }, + location: { city: 'London, UK', lat: 51.5078, lng: -0.128 }, + }, + { + id: 39489329, + displayName: 'Lime Cordiale at Electric Ballroom (January 15, 2022)', + type: 'Concert', + uri: 'https://www.songkick.com/concerts/39489329-lime-cordiale-at-electric-ballroom?utm_source=2356&utm_medium=partner', + status: 'ok', + popularity: 0.013228, + start: { + date: '2022-01-15', + datetime: '2022-01-15T18:00:00+0000', + time: '18:00:00', + }, + performance: [ + { + id: 74702570, + displayName: 'Lime Cordiale', + billing: 'headline', + billingIndex: 1, + artist: { + id: 3670801, + displayName: 'Lime Cordiale', + uri: 'https://www.songkick.com/artists/3670801-lime-cordiale?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: 'ebbbea25-2e67-4d85-b720-97dbede34cf3', + href: 'https://api.songkick.com/api/3.0/artists/mbid:ebbbea25-2e67-4d85-b720-97dbede34cf3.json', + }, + ], + }, + }, + ], + ageRestriction: null, + flaggedAsEnded: false, + venue: { + id: 16762, + displayName: 'Electric Ballroom', + uri: 'https://www.songkick.com/venues/16762-electric-ballroom?utm_source=2356&utm_medium=partner', + metroArea: { + displayName: 'London', + country: { displayName: 'UK' }, + id: 24426, + uri: 'https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner', + }, + lat: 51.5397, + lng: -0.143, + }, + location: { city: 'London, UK', lat: 51.5397, lng: -0.143 }, + }, + ], + }, + { + title: 'February 2022', + data: [ + { + id: 39836946, + displayName: + 'Benjamin Francis Leftwich at Lafayette (February 2, 2022)', + type: 'Concert', + uri: 'https://www.songkick.com/concerts/39836946-benjamin-francis-leftwich-at-lafayette?utm_source=2356&utm_medium=partner', + status: 'ok', + popularity: 0.046561, + start: { + date: '2022-02-02', + datetime: '2022-02-02T19:00:00+0000', + time: '19:00:00', + }, + performance: [ + { + id: 75298128, + displayName: 'Benjamin Francis Leftwich', + billing: 'headline', + billingIndex: 1, + artist: { + id: 3050976, + displayName: 'Benjamin Francis Leftwich', + uri: 'https://www.songkick.com/artists/3050976-benjamin-francis-leftwich?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: 'b9e82c61-c1ec-4b42-9233-ca3567d2f2da', + href: 'https://api.songkick.com/api/3.0/artists/mbid:b9e82c61-c1ec-4b42-9233-ca3567d2f2da.json', + }, + ], + }, + }, + ], + ageRestriction: null, + flaggedAsEnded: false, + venue: { + id: 4364813, + displayName: 'Lafayette', + uri: 'https://www.songkick.com/venues/4364813-lafayette?utm_source=2356&utm_medium=partner', + metroArea: { + displayName: 'London', + country: { displayName: 'UK' }, + id: 24426, + uri: 'https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner', + }, + lat: 51.53417, + lng: -0.12596, + }, + location: { city: 'London, UK', lat: 51.53417, lng: -0.12596 }, + }, + { + id: 39486373, + displayName: 'Tom Rosenthal at Lafayette (February 7, 2022)', + type: 'Concert', + uri: 'https://www.songkick.com/concerts/39486373-tom-rosenthal-at-lafayette?utm_source=2356&utm_medium=partner', + status: 'ok', + popularity: 0.015618, + start: { + date: '2022-02-07', + datetime: '2022-02-07T19:00:00+0000', + time: '19:00:00', + }, + performance: [ + { + id: 74697391, + displayName: 'Tom Rosenthal', + billing: 'headline', + billingIndex: 1, + artist: { + id: 605621, + displayName: 'Tom Rosenthal', + uri: 'https://www.songkick.com/artists/605621-tom-rosenthal?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: 'a80f56d4-2030-4422-a365-2ed209ecfb58', + href: 'https://api.songkick.com/api/3.0/artists/mbid:a80f56d4-2030-4422-a365-2ed209ecfb58.json', + }, + ], + }, + }, + ], + ageRestriction: null, + flaggedAsEnded: false, + venue: { + id: 4364813, + displayName: 'Lafayette', + uri: 'https://www.songkick.com/venues/4364813-lafayette?utm_source=2356&utm_medium=partner', + metroArea: { + displayName: 'London', + country: { displayName: 'UK' }, + id: 24426, + uri: 'https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner', + }, + lat: null, + lng: null, + }, + location: { city: 'London, UK', lat: 51.5078, lng: -0.128 }, + }, + { + id: 39136775, + displayName: 'Simply Red with Mica Paris at The O2 (February 19, 2022)', + type: 'Concert', + uri: 'https://www.songkick.com/concerts/39136775-simply-red-at-o2?utm_source=2356&utm_medium=partner', + status: 'ok', + popularity: 0.061389, + start: { + date: '2022-02-19', + datetime: '2022-02-19T18:00:00+0000', + time: '18:00:00', + }, + performance: [ + { + id: 74099893, + displayName: 'Simply Red', + billing: 'headline', + billingIndex: 1, + artist: { + id: 364324, + displayName: 'Simply Red', + uri: 'https://www.songkick.com/artists/364324-simply-red?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: 'a9100753-f539-43cf-bcc9-579566fb512e', + href: 'https://api.songkick.com/api/3.0/artists/mbid:a9100753-f539-43cf-bcc9-579566fb512e.json', + }, + ], + }, + }, + { + id: 75405553, + displayName: 'Mica Paris', + billing: 'support', + billingIndex: 2, + artist: { + id: 88314, + displayName: 'Mica Paris', + uri: 'https://www.songkick.com/artists/88314-mica-paris?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '8e999f06-978a-4bff-8f18-9832403c1da6', + href: 'https://api.songkick.com/api/3.0/artists/mbid:8e999f06-978a-4bff-8f18-9832403c1da6.json', + }, + ], + }, + }, + ], + ageRestriction: null, + flaggedAsEnded: false, + venue: { + id: 17532, + displayName: 'The O2', + uri: 'https://www.songkick.com/venues/17532-o2?utm_source=2356&utm_medium=partner', + metroArea: { + displayName: 'London', + country: { displayName: 'UK' }, + id: 24426, + uri: 'https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner', + }, + lat: 51.50094, + lng: 0.00536, + }, + location: { city: 'London, UK', lat: 51.50094, lng: 0.00536 }, + }, + { + id: 39207083, + displayName: 'Simply Red with Mica Paris at The O2 (February 20, 2022)', + type: 'Concert', + uri: 'https://www.songkick.com/concerts/39207083-simply-red-at-o2?utm_source=2356&utm_medium=partner', + status: 'ok', + popularity: 0.061389, + start: { + date: '2022-02-20', + datetime: '2022-02-20T18:00:00+0000', + time: '18:00:00', + }, + performance: [ + { + id: 74218737, + displayName: 'Simply Red', + billing: 'headline', + billingIndex: 1, + artist: { + id: 364324, + displayName: 'Simply Red', + uri: 'https://www.songkick.com/artists/364324-simply-red?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: 'a9100753-f539-43cf-bcc9-579566fb512e', + href: 'https://api.songkick.com/api/3.0/artists/mbid:a9100753-f539-43cf-bcc9-579566fb512e.json', + }, + ], + }, + }, + { + id: 75405552, + displayName: 'Mica Paris', + billing: 'support', + billingIndex: 2, + artist: { + id: 88314, + displayName: 'Mica Paris', + uri: 'https://www.songkick.com/artists/88314-mica-paris?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '8e999f06-978a-4bff-8f18-9832403c1da6', + href: 'https://api.songkick.com/api/3.0/artists/mbid:8e999f06-978a-4bff-8f18-9832403c1da6.json', + }, + ], + }, + }, + ], + ageRestriction: null, + flaggedAsEnded: false, + venue: { + id: 17532, + displayName: 'The O2', + uri: 'https://www.songkick.com/venues/17532-o2?utm_source=2356&utm_medium=partner', + metroArea: { + displayName: 'London', + country: { displayName: 'UK' }, + id: 24426, + uri: 'https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner', + }, + lat: 51.50094, + lng: 0.00536, + }, + location: { city: 'London, UK', lat: 51.50094, lng: 0.00536 }, + }, + ], + }, + { + title: 'March 2022', + data: [ + { + id: 39848461, + displayName: + 'The Lumineers with Gregory Alan Isakov at The O2 (March 4, 2022)', + type: 'Concert', + uri: 'https://www.songkick.com/concerts/39848461-lumineers-at-o2?utm_source=2356&utm_medium=partner', + status: 'ok', + popularity: 0.329423, + start: { + date: '2022-03-04', + datetime: '2022-03-04T19:00:00+0000', + time: '19:00:00', + }, + performance: [ + { + id: 75317414, + displayName: 'The Lumineers', + billing: 'headline', + billingIndex: 1, + artist: { + id: 2827981, + displayName: 'The Lumineers', + uri: 'https://www.songkick.com/artists/2827981-lumineers?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: 'bfcb6630-9b31-4e63-b11f-7b0363be72b5', + href: 'https://api.songkick.com/api/3.0/artists/mbid:bfcb6630-9b31-4e63-b11f-7b0363be72b5.json', + }, + ], + }, + }, + { + id: 75333335, + displayName: 'Gregory Alan Isakov', + billing: 'support', + billingIndex: 2, + artist: { + id: 41674, + displayName: 'Gregory Alan Isakov', + uri: 'https://www.songkick.com/artists/41674-gregory-alan-isakov?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '5c61efe6-3cdf-4160-b43c-9274944369e6', + href: 'https://api.songkick.com/api/3.0/artists/mbid:5c61efe6-3cdf-4160-b43c-9274944369e6.json', + }, + ], + }, + }, + ], + ageRestriction: null, + flaggedAsEnded: false, + venue: { + id: 17532, + displayName: 'The O2', + uri: 'https://www.songkick.com/venues/17532-o2?utm_source=2356&utm_medium=partner', + metroArea: { + displayName: 'London', + country: { displayName: 'UK' }, + id: 24426, + uri: 'https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner', + }, + lat: 51.50094, + lng: 0.00536, + }, + location: { city: 'London, UK', lat: 51.50094, lng: 0.00536 }, + }, + { + id: 39719781, + displayName: 'Yumi Zouma at Lafayette (March 18, 2022)', + type: 'Concert', + uri: 'https://www.songkick.com/concerts/39719781-yumi-zouma-at-lafayette?utm_source=2356&utm_medium=partner', + status: 'ok', + popularity: 0.009886, + start: { + date: '2022-03-18', + datetime: '2022-03-18T19:30:00+0000', + time: '19:30:00', + }, + performance: [ + { + id: 75104497, + displayName: 'Yumi Zouma', + billing: 'headline', + billingIndex: 1, + artist: { + id: 7736594, + displayName: 'Yumi Zouma', + uri: 'https://www.songkick.com/artists/7736594-yumi-zouma?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '6e3252a1-397d-4bf8-b2b7-d16f7fbcb3dd', + href: 'https://api.songkick.com/api/3.0/artists/mbid:6e3252a1-397d-4bf8-b2b7-d16f7fbcb3dd.json', + }, + ], + }, + }, + ], + ageRestriction: null, + flaggedAsEnded: false, + venue: { + id: 4364813, + displayName: 'Lafayette', + uri: 'https://www.songkick.com/venues/4364813-lafayette?utm_source=2356&utm_medium=partner', + metroArea: { + displayName: 'London', + country: { displayName: 'UK' }, + id: 24426, + uri: 'https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner', + }, + lat: 51.53417, + lng: -0.12596, + }, + location: { city: 'London, UK', lat: 51.53417, lng: -0.12596 }, + }, + { + id: 39769471, + displayName: 'RY X at The Roundhouse (March 20, 2022)', + type: 'Concert', + uri: 'https://www.songkick.com/concerts/39769471-ry-x-at-roundhouse?utm_source=2356&utm_medium=partner', + status: 'ok', + popularity: 0.038413, + start: { + date: '2022-03-20', + datetime: '2022-03-20T19:00:00+0000', + time: '19:00:00', + }, + performance: [ + { + id: 75187604, + displayName: 'RY X', + billing: 'headline', + billingIndex: 1, + artist: { + id: 6888059, + displayName: 'RY X', + uri: 'https://www.songkick.com/artists/6888059-ry-x?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '3b4cd16e-3a25-4c7b-ada6-33f5ea91e1b1', + href: 'https://api.songkick.com/api/3.0/artists/mbid:3b4cd16e-3a25-4c7b-ada6-33f5ea91e1b1.json', + }, + ], + }, + }, + ], + ageRestriction: null, + flaggedAsEnded: false, + venue: { + id: 17874, + displayName: 'The Roundhouse', + uri: 'https://www.songkick.com/venues/17874-roundhouse?utm_source=2356&utm_medium=partner', + metroArea: { + displayName: 'London', + country: { displayName: 'UK' }, + id: 24426, + uri: 'https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner', + }, + lat: 51.54296, + lng: -0.1492, + }, + location: { city: 'London, UK', lat: 51.54296, lng: -0.1492 }, + }, + { + id: 39637893, + displayName: 'POLO & PAN at O2 Forum Kentish Town (March 29, 2022)', + type: 'Concert', + uri: 'https://www.songkick.com/concerts/39637893-polo-and-pan-at-o2-forum-kentish-town?utm_source=2356&utm_medium=partner', + status: 'ok', + popularity: 0.023074, + start: { + date: '2022-03-29', + datetime: '2022-03-29T19:00:00+0100', + time: '19:00:00', + }, + performance: [ + { + id: 74972212, + displayName: 'POLO & PAN', + billing: 'headline', + billingIndex: 1, + artist: { + id: 8544689, + displayName: 'POLO & PAN', + uri: 'https://www.songkick.com/artists/8544689-polo-and-pan?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '1d9ec7ea-0fa4-41d9-917b-723c735ebbfe', + href: 'https://api.songkick.com/api/3.0/artists/mbid:1d9ec7ea-0fa4-41d9-917b-723c735ebbfe.json', + }, + ], + }, + }, + ], + ageRestriction: null, + flaggedAsEnded: false, + venue: { + id: 37414, + displayName: 'O2 Forum Kentish Town', + uri: 'https://www.songkick.com/venues/37414-o2-forum-kentish-town?utm_source=2356&utm_medium=partner', + metroArea: { + displayName: 'London', + country: { displayName: 'UK' }, + id: 24426, + uri: 'https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner', + }, + lat: 51.55214, + lng: -0.14217, + }, + location: { city: 'London, UK', lat: 51.55214, lng: -0.14217 }, + }, + { + id: 39845378, + displayName: + 'Japanese Breakfast at O2 Forum Kentish Town (March 30, 2022)', + type: 'Concert', + uri: 'https://www.songkick.com/concerts/39845378-japanese-breakfast-at-o2-forum-kentish-town?utm_source=2356&utm_medium=partner', + status: 'ok', + popularity: 0.0206, + start: { + date: '2022-03-30', + datetime: '2022-03-30T19:00:00+0100', + time: '19:00:00', + }, + performance: [ + { + id: 75312486, + displayName: 'Japanese Breakfast', + billing: 'headline', + billingIndex: 1, + artist: { + id: 8413103, + displayName: 'Japanese Breakfast', + uri: 'https://www.songkick.com/artists/8413103-japanese-breakfast?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '8c529495-91f5-4e2f-b71b-adcb66878d04', + href: 'https://api.songkick.com/api/3.0/artists/mbid:8c529495-91f5-4e2f-b71b-adcb66878d04.json', + }, + ], + }, + }, + ], + ageRestriction: null, + flaggedAsEnded: false, + venue: { + id: 37414, + displayName: 'O2 Forum Kentish Town', + uri: 'https://www.songkick.com/venues/37414-o2-forum-kentish-town?utm_source=2356&utm_medium=partner', + metroArea: { + displayName: 'London', + country: { displayName: 'UK' }, + id: 24426, + uri: 'https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner', + }, + lat: 51.55214, + lng: -0.14217, + }, + location: { city: 'London, UK', lat: 51.55214, lng: -0.14217 }, + }, + ], + }, + { + title: 'April 2022', + data: [ + { + id: 39293287, + displayName: 'Tash Sultana at Eventim Apollo (April 6, 2022)', + type: 'Concert', + uri: 'https://www.songkick.com/concerts/39293287-tash-sultana-at-eventim-apollo?utm_source=2356&utm_medium=partner', + status: 'ok', + popularity: 0.054656, + start: { + date: '2022-04-06', + datetime: '2022-04-06T19:00:00+0100', + time: '19:00:00', + }, + performance: [ + { + id: 74362402, + displayName: 'Tash Sultana', + billing: 'headline', + billingIndex: 1, + artist: { + id: 5112228, + displayName: 'Tash Sultana', + uri: 'https://www.songkick.com/artists/5112228-tash-sultana?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: 'b3adc16a-abdb-4668-9b05-baabbf942db6', + href: 'https://api.songkick.com/api/3.0/artists/mbid:b3adc16a-abdb-4668-9b05-baabbf942db6.json', + }, + ], + }, + }, + ], + ageRestriction: null, + flaggedAsEnded: false, + venue: { + id: 8086, + displayName: 'Eventim Apollo', + uri: 'https://www.songkick.com/venues/8086-eventim-apollo?utm_source=2356&utm_medium=partner', + metroArea: { + displayName: 'London', + country: { displayName: 'UK' }, + id: 24426, + uri: 'https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner', + }, + lat: 51.49084, + lng: -0.2245, + }, + location: { city: 'London, UK', lat: 51.49084, lng: -0.2245 }, + }, + { + id: 39232393, + displayName: + 'Louis Tomlinson with Only The Poets at SSE Arena, Wembley (April 22, 2022)', + type: 'Concert', + uri: 'https://www.songkick.com/concerts/39232393-louis-tomlinson-at-sse-arena-wembley?utm_source=2356&utm_medium=partner', + status: 'ok', + popularity: 0.059619, + start: { + date: '2022-04-22', + datetime: '2022-04-22T18:00:00+0100', + time: '18:00:00', + }, + performance: [ + { + id: 74259876, + displayName: 'Louis Tomlinson', + billing: 'headline', + billingIndex: 1, + artist: { + id: 6299134, + displayName: 'Louis Tomlinson', + uri: 'https://www.songkick.com/artists/6299134-louis-tomlinson?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '6d390061-b3cd-4db3-b905-e56b7f5357fd', + href: 'https://api.songkick.com/api/3.0/artists/mbid:6d390061-b3cd-4db3-b905-e56b7f5357fd.json', + }, + ], + }, + }, + { + id: 74865797, + displayName: 'Only The Poets', + billing: 'support', + billingIndex: 2, + artist: { + id: 9030034, + displayName: 'Only The Poets', + uri: 'https://www.songkick.com/artists/9030034-only-the-poets?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: 'ba579d19-f99a-42df-bdb7-2070ec1209dd', + href: 'https://api.songkick.com/api/3.0/artists/mbid:ba579d19-f99a-42df-bdb7-2070ec1209dd.json', + }, + ], + }, + }, + ], + ageRestriction: null, + flaggedAsEnded: false, + venue: { + id: 1686, + displayName: 'SSE Arena, Wembley', + uri: 'https://www.songkick.com/venues/1686-sse-arena-wembley?utm_source=2356&utm_medium=partner', + metroArea: { + displayName: 'London', + country: { displayName: 'UK' }, + id: 24426, + uri: 'https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner', + }, + lat: 51.55861, + lng: -0.28033, + }, + location: { city: 'London, UK', lat: 51.55861, lng: -0.28033 }, + }, + { + id: 39524846, + displayName: 'OneRepublic at Eventim Apollo (April 25, 2022)', + type: 'Concert', + uri: 'https://www.songkick.com/concerts/39524846-onerepublic-at-eventim-apollo?utm_source=2356&utm_medium=partner', + status: 'ok', + popularity: 0.449715, + start: { + date: '2022-04-25', + datetime: '2022-04-25T19:00:00+0100', + time: '19:00:00', + }, + performance: [ + { + id: 74766271, + displayName: 'OneRepublic', + billing: 'headline', + billingIndex: 1, + artist: { + id: 568431, + displayName: 'OneRepublic', + uri: 'https://www.songkick.com/artists/568431-onerepublic?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: 'c33c2065-b1c3-4406-b066-d33a9e2ea71a', + href: 'https://api.songkick.com/api/3.0/artists/mbid:c33c2065-b1c3-4406-b066-d33a9e2ea71a.json', + }, + ], + }, + }, + ], + ageRestriction: null, + flaggedAsEnded: false, + venue: { + id: 8086, + displayName: 'Eventim Apollo', + uri: 'https://www.songkick.com/venues/8086-eventim-apollo?utm_source=2356&utm_medium=partner', + metroArea: { + displayName: 'London', + country: { displayName: 'UK' }, + id: 24426, + uri: 'https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner', + }, + lat: 51.49084, + lng: -0.2245, + }, + location: { city: 'London, UK', lat: 51.49084, lng: -0.2245 }, + }, + { + id: 39678953, + displayName: 'Mae Muller at O2 Forum Kentish Town (April 29, 2022)', + type: 'Concert', + uri: 'https://www.songkick.com/concerts/39678953-mae-muller-at-o2-forum-kentish-town?utm_source=2356&utm_medium=partner', + status: 'ok', + popularity: 0.001773, + start: { + date: '2022-04-29', + datetime: '2022-04-29T19:00:00+0100', + time: '19:00:00', + }, + performance: [ + { + id: 75039132, + displayName: 'Mae Muller', + billing: 'headline', + billingIndex: 1, + artist: { + id: 9960564, + displayName: 'Mae Muller', + uri: 'https://www.songkick.com/artists/9960564-mae-muller?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: 'f102440f-8e60-45eb-af2b-f6a6df4025d2', + href: 'https://api.songkick.com/api/3.0/artists/mbid:f102440f-8e60-45eb-af2b-f6a6df4025d2.json', + }, + ], + }, + }, + ], + ageRestriction: null, + flaggedAsEnded: false, + venue: { + id: 37414, + displayName: 'O2 Forum Kentish Town', + uri: 'https://www.songkick.com/venues/37414-o2-forum-kentish-town?utm_source=2356&utm_medium=partner', + metroArea: { + displayName: 'London', + country: { displayName: 'UK' }, + id: 24426, + uri: 'https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner', + }, + lat: 51.55214, + lng: -0.14217, + }, + location: { city: 'London, UK', lat: 51.55214, lng: -0.14217 }, + }, + ], + }, + { + title: 'May 2022', + data: [ + { + id: 39786471, + displayName: 'Metronomy at Alexandra Palace (May 7, 2022)', + type: 'Concert', + uri: 'https://www.songkick.com/concerts/39786471-metronomy-at-alexandra-palace?utm_source=2356&utm_medium=partner', + status: 'ok', + popularity: 0.101843, + start: { + date: '2022-05-07', + datetime: '2022-05-07T18:30:00+0100', + time: '18:30:00', + }, + performance: [ + { + id: 75217151, + displayName: 'Metronomy', + billing: 'headline', + billingIndex: 1, + artist: { + id: 16165, + displayName: 'Metronomy', + uri: 'https://www.songkick.com/artists/16165-metronomy?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '93eb7110-0bc9-4d3f-816b-4b52ef982ec8', + href: 'https://api.songkick.com/api/3.0/artists/mbid:93eb7110-0bc9-4d3f-816b-4b52ef982ec8.json', + }, + ], + }, + }, + ], + ageRestriction: null, + flaggedAsEnded: false, + venue: { + id: 1787, + displayName: 'Alexandra Palace', + uri: 'https://www.songkick.com/venues/1787-alexandra-palace?utm_source=2356&utm_medium=partner', + metroArea: { + displayName: 'London', + country: { displayName: 'UK' }, + id: 24426, + uri: 'https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner', + }, + lat: 51.59079, + lng: -0.13318, + }, + location: { city: 'London, UK', lat: 51.59079, lng: -0.13318 }, + }, + { + id: 39684873, + displayName: 'Little Mix with Since September at The O2 (May 12, 2022)', + type: 'Concert', + uri: 'https://www.songkick.com/concerts/39684873-little-mix-at-o2?utm_source=2356&utm_medium=partner', + status: 'ok', + popularity: 0.217537, + start: { + date: '2022-05-12', + datetime: '2022-05-12T18:30:00+0100', + time: '18:30:00', + }, + performance: [ + { + id: 75048672, + displayName: 'Little Mix', + billing: 'headline', + billingIndex: 1, + artist: { + id: 5427893, + displayName: 'Little Mix', + uri: 'https://www.songkick.com/artists/5427893-little-mix?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '38f59974-2f4d-4bfa-b2e3-d2696de1b675', + href: 'https://api.songkick.com/api/3.0/artists/mbid:38f59974-2f4d-4bfa-b2e3-d2696de1b675.json', + }, + ], + }, + }, + { + id: 75098949, + displayName: 'Since September', + billing: 'support', + billingIndex: 2, + artist: { + id: 10143235, + displayName: 'Since September', + uri: 'https://www.songkick.com/artists/10143235-since-september?utm_source=2356&utm_medium=partner', + identifier: [], + }, + }, + ], + ageRestriction: null, + flaggedAsEnded: false, + venue: { + id: 17532, + displayName: 'The O2', + uri: 'https://www.songkick.com/venues/17532-o2?utm_source=2356&utm_medium=partner', + metroArea: { + displayName: 'London', + country: { displayName: 'UK' }, + id: 24426, + uri: 'https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner', + }, + lat: 51.50094, + lng: 0.00536, + }, + location: { city: 'London, UK', lat: 51.50094, lng: 0.00536 }, + }, + { + id: 39684874, + displayName: 'Little Mix with Since September at The O2 (May 13, 2022)', + type: 'Concert', + uri: 'https://www.songkick.com/concerts/39684874-little-mix-at-o2?utm_source=2356&utm_medium=partner', + status: 'ok', + popularity: 0.217537, + start: { + date: '2022-05-13', + datetime: '2022-05-13T18:30:00+0100', + time: '18:30:00', + }, + performance: [ + { + id: 75048673, + displayName: 'Little Mix', + billing: 'headline', + billingIndex: 1, + artist: { + id: 5427893, + displayName: 'Little Mix', + uri: 'https://www.songkick.com/artists/5427893-little-mix?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '38f59974-2f4d-4bfa-b2e3-d2696de1b675', + href: 'https://api.songkick.com/api/3.0/artists/mbid:38f59974-2f4d-4bfa-b2e3-d2696de1b675.json', + }, + ], + }, + }, + { + id: 75098950, + displayName: 'Since September', + billing: 'support', + billingIndex: 2, + artist: { + id: 10143235, + displayName: 'Since September', + uri: 'https://www.songkick.com/artists/10143235-since-september?utm_source=2356&utm_medium=partner', + identifier: [], + }, + }, + ], + ageRestriction: null, + flaggedAsEnded: false, + venue: { + id: 17532, + displayName: 'The O2', + uri: 'https://www.songkick.com/venues/17532-o2?utm_source=2356&utm_medium=partner', + metroArea: { + displayName: 'London', + country: { displayName: 'UK' }, + id: 24426, + uri: 'https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner', + }, + lat: 51.50094, + lng: 0.00536, + }, + location: { city: 'London, UK', lat: 51.50094, lng: 0.00536 }, + }, + { + id: 39690100, + displayName: 'Little Mix with Since September at The O2 (May 14, 2022)', + type: 'Concert', + uri: 'https://www.songkick.com/concerts/39690100-little-mix-at-o2?utm_source=2356&utm_medium=partner', + status: 'ok', + popularity: 0.217537, + start: { + date: '2022-05-14', + datetime: '2022-05-14T18:30:00+0100', + time: '18:30:00', + }, + performance: [ + { + id: 75057087, + displayName: 'Little Mix', + billing: 'headline', + billingIndex: 1, + artist: { + id: 5427893, + displayName: 'Little Mix', + uri: 'https://www.songkick.com/artists/5427893-little-mix?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '38f59974-2f4d-4bfa-b2e3-d2696de1b675', + href: 'https://api.songkick.com/api/3.0/artists/mbid:38f59974-2f4d-4bfa-b2e3-d2696de1b675.json', + }, + ], + }, + }, + { + id: 75098951, + displayName: 'Since September', + billing: 'support', + billingIndex: 2, + artist: { + id: 10143235, + displayName: 'Since September', + uri: 'https://www.songkick.com/artists/10143235-since-september?utm_source=2356&utm_medium=partner', + identifier: [], + }, + }, + ], + ageRestriction: null, + flaggedAsEnded: false, + venue: { + id: 17532, + displayName: 'The O2', + uri: 'https://www.songkick.com/venues/17532-o2?utm_source=2356&utm_medium=partner', + metroArea: { + displayName: 'London', + country: { displayName: 'UK' }, + id: 24426, + uri: 'https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner', + }, + lat: 51.50094, + lng: 0.00536, + }, + location: { city: 'London, UK', lat: 51.50094, lng: 0.00536 }, + }, + ], + }, + { + title: 'June 2022', + data: [ + { + id: 39700735, + displayName: 'The Flaming Lips at O2 Forum Kentish Town (June 2, 2022)', + type: 'Concert', + uri: 'https://www.songkick.com/concerts/39700735-flaming-lips-at-o2-forum-kentish-town?utm_source=2356&utm_medium=partner', + status: 'ok', + popularity: 0.135668, + start: { + date: '2022-06-02', + datetime: '2022-06-02T19:00:00+0100', + time: '19:00:00', + }, + performance: [ + { + id: 75074623, + displayName: 'The Flaming Lips', + billing: 'headline', + billingIndex: 1, + artist: { + id: 7453, + displayName: 'The Flaming Lips', + uri: 'https://www.songkick.com/artists/7453-flaming-lips?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '1f43d76f-8edf-44f6-aaf1-b65f05ad9402', + href: 'https://api.songkick.com/api/3.0/artists/mbid:1f43d76f-8edf-44f6-aaf1-b65f05ad9402.json', + }, + ], + }, + }, + ], + ageRestriction: null, + flaggedAsEnded: false, + venue: { + id: 37414, + displayName: 'O2 Forum Kentish Town', + uri: 'https://www.songkick.com/venues/37414-o2-forum-kentish-town?utm_source=2356&utm_medium=partner', + metroArea: { + displayName: 'London', + country: { displayName: 'UK' }, + id: 24426, + uri: 'https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner', + }, + lat: 51.55214, + lng: -0.14217, + }, + location: { city: 'London, UK', lat: 51.55214, lng: -0.14217 }, + }, + { + id: 39290374, + displayName: + 'The Killers with Sam Fender at Emirates Stadium (June 3, 2022)', + type: 'Concert', + uri: 'https://www.songkick.com/concerts/39290374-killers-at-emirates-stadium?utm_source=2356&utm_medium=partner', + status: 'ok', + popularity: 0.583358, + start: { + date: '2022-06-03', + datetime: '2022-06-03T16:30:00+0100', + time: '16:30:00', + }, + performance: [ + { + id: 74357544, + displayName: 'The Killers', + billing: 'headline', + billingIndex: 1, + artist: { + id: 555021, + displayName: 'The Killers', + uri: 'https://www.songkick.com/artists/555021-killers?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '66101a13-70cc-40a7-8371-abcb78012aa3', + href: 'https://api.songkick.com/api/3.0/artists/mbid:66101a13-70cc-40a7-8371-abcb78012aa3.json', + }, + { + mbid: '0dc08b92-4639-4370-94cf-1cd31b0811f6', + href: 'https://api.songkick.com/api/3.0/artists/mbid:0dc08b92-4639-4370-94cf-1cd31b0811f6.json', + }, + { + mbid: '386b27fb-fc2b-400c-a296-079b13e21061', + href: 'https://api.songkick.com/api/3.0/artists/mbid:386b27fb-fc2b-400c-a296-079b13e21061.json', + }, + { + mbid: '95e1ead9-4d31-4808-a7ac-32c3614c116b', + href: 'https://api.songkick.com/api/3.0/artists/mbid:95e1ead9-4d31-4808-a7ac-32c3614c116b.json', + }, + { + mbid: '4665e836-2c96-4569-9462-bfea34850b69', + href: 'https://api.songkick.com/api/3.0/artists/mbid:4665e836-2c96-4569-9462-bfea34850b69.json', + }, + { + mbid: '24b4aee8-32ed-4163-98f7-55bae67411ae', + href: 'https://api.songkick.com/api/3.0/artists/mbid:24b4aee8-32ed-4163-98f7-55bae67411ae.json', + }, + ], + }, + }, + { + id: 75477552, + displayName: 'Sam Fender', + billing: 'support', + billingIndex: 2, + artist: { + id: 6907314, + displayName: 'Sam Fender', + uri: 'https://www.songkick.com/artists/6907314-sam-fender?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '3478a5d1-bd96-4584-aa54-4d6e0a329658', + href: 'https://api.songkick.com/api/3.0/artists/mbid:3478a5d1-bd96-4584-aa54-4d6e0a329658.json', + }, + ], + }, + }, + ], + ageRestriction: null, + flaggedAsEnded: false, + venue: { + id: 12994, + displayName: 'Emirates Stadium', + uri: 'https://www.songkick.com/venues/12994-emirates-stadium?utm_source=2356&utm_medium=partner', + metroArea: { + displayName: 'London', + country: { displayName: 'UK' }, + id: 24426, + uri: 'https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner', + }, + lat: 51.56214, + lng: -0.11707, + }, + location: { city: 'London, UK', lat: 51.56214, lng: -0.11707 }, + }, + { + id: 39772205, + displayName: 'Junction 2 2022', + type: 'Festival', + uri: 'https://www.songkick.com/festivals/1465354-junction-2/id/39772205-junction-2-2022?utm_source=2356&utm_medium=partner', + status: 'ok', + popularity: 0.072653, + start: { + date: '2022-06-03', + datetime: '2022-06-03T12:00:00+0100', + time: '12:00:00', + }, + performance: [ + { + id: 75194961, + displayName: 'Four Tet', + billing: 'headline', + billingIndex: 1, + artist: { + id: 306583, + displayName: 'Four Tet', + uri: 'https://www.songkick.com/artists/306583-four-tet?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '3bcff06f-675a-451f-9075-99e8657047e8', + href: 'https://api.songkick.com/api/3.0/artists/mbid:3bcff06f-675a-451f-9075-99e8657047e8.json', + }, + ], + }, + }, + { + id: 75194962, + displayName: 'Jon Hopkins', + billing: 'headline', + billingIndex: 2, + artist: { + id: 298044, + displayName: 'Jon Hopkins', + uri: 'https://www.songkick.com/artists/298044-jon-hopkins?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: 'bbd87753-db07-44ea-b8de-5491d32db956', + href: 'https://api.songkick.com/api/3.0/artists/mbid:bbd87753-db07-44ea-b8de-5491d32db956.json', + }, + { + mbid: '4ddf952a-0502-42b2-8bbc-8922d53d3091', + href: 'https://api.songkick.com/api/3.0/artists/mbid:4ddf952a-0502-42b2-8bbc-8922d53d3091.json', + }, + { + mbid: '0b0c25f4-f31c-46a5-a4fb-ccbf53d663bd', + href: 'https://api.songkick.com/api/3.0/artists/mbid:0b0c25f4-f31c-46a5-a4fb-ccbf53d663bd.json', + }, + ], + }, + }, + { + id: 75194963, + displayName: 'DJ Koze', + billing: 'headline', + billingIndex: 3, + artist: { + id: 165622, + displayName: 'DJ Koze', + uri: 'https://www.songkick.com/artists/165622-dj-koze?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: 'dd4458c8-6728-4a44-980c-48107fa72bb8', + href: 'https://api.songkick.com/api/3.0/artists/mbid:dd4458c8-6728-4a44-980c-48107fa72bb8.json', + }, + ], + }, + }, + { + id: 75194964, + displayName: 'Midland', + billing: 'headline', + billingIndex: 4, + artist: { + id: 371106, + displayName: 'Midland', + uri: 'https://www.songkick.com/artists/371106-midland?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '35fddf9e-01f6-49af-8d03-b841dda89995', + href: 'https://api.songkick.com/api/3.0/artists/mbid:35fddf9e-01f6-49af-8d03-b841dda89995.json', + }, + ], + }, + }, + { + id: 75194965, + displayName: 'Maceo Plex', + billing: 'headline', + billingIndex: 5, + artist: { + id: 3894886, + displayName: 'Maceo Plex', + uri: 'https://www.songkick.com/artists/3894886-maceo-plex?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '0ab688fd-0943-41cd-a24c-78ec2baad3fd', + href: 'https://api.songkick.com/api/3.0/artists/mbid:0ab688fd-0943-41cd-a24c-78ec2baad3fd.json', + }, + ], + }, + }, + { + id: 75194966, + displayName: 'Romy', + billing: 'headline', + billingIndex: 6, + artist: { + id: 310525, + displayName: 'Romy', + uri: 'https://www.songkick.com/artists/310525-romy?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '4ec9623e-ef79-4312-92c9-ab784328bc2e', + href: 'https://api.songkick.com/api/3.0/artists/mbid:4ec9623e-ef79-4312-92c9-ab784328bc2e.json', + }, + ], + }, + }, + { + id: 75194967, + displayName: 'Nina Kraviz', + billing: 'headline', + billingIndex: 7, + artist: { + id: 3037096, + displayName: 'Nina Kraviz', + uri: 'https://www.songkick.com/artists/3037096-nina-kraviz?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '5dd3cf5b-474d-465a-a539-456d7e125ebc', + href: 'https://api.songkick.com/api/3.0/artists/mbid:5dd3cf5b-474d-465a-a539-456d7e125ebc.json', + }, + ], + }, + }, + { + id: 75194968, + displayName: 'Rival Consoles', + billing: 'headline', + billingIndex: 8, + artist: { + id: 483204, + displayName: 'Rival Consoles', + uri: 'https://www.songkick.com/artists/483204-rival-consoles?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '803f2853-7e3e-4dff-96a7-9f77b5f56de5', + href: 'https://api.songkick.com/api/3.0/artists/mbid:803f2853-7e3e-4dff-96a7-9f77b5f56de5.json', + }, + ], + }, + }, + { + id: 75194969, + displayName: 'Joy Orbison', + billing: 'headline', + billingIndex: 9, + artist: { + id: 2552181, + displayName: 'Joy Orbison', + uri: 'https://www.songkick.com/artists/2552181-joy-orbison?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '8542f9a4-bd91-4066-91cf-359d2d9950db', + href: 'https://api.songkick.com/api/3.0/artists/mbid:8542f9a4-bd91-4066-91cf-359d2d9950db.json', + }, + ], + }, + }, + { + id: 75194970, + displayName: 'Adam Beyer', + billing: 'headline', + billingIndex: 10, + artist: { + id: 173218, + displayName: 'Adam Beyer', + uri: 'https://www.songkick.com/artists/173218-adam-beyer?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '0d6daf47-0be9-44ee-a9e8-fb5a7b718538', + href: 'https://api.songkick.com/api/3.0/artists/mbid:0d6daf47-0be9-44ee-a9e8-fb5a7b718538.json', + }, + ], + }, + }, + { + id: 75194971, + displayName: 'Leon Vynehall', + billing: 'headline', + billingIndex: 11, + artist: { + id: 5091393, + displayName: 'Leon Vynehall', + uri: 'https://www.songkick.com/artists/5091393-leon-vynehall?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: 'b98202d3-4fb4-4e32-9ff3-b9e1987d02cf', + href: 'https://api.songkick.com/api/3.0/artists/mbid:b98202d3-4fb4-4e32-9ff3-b9e1987d02cf.json', + }, + ], + }, + }, + { + id: 75194972, + displayName: 'Fatima Yamaha', + billing: 'headline', + billingIndex: 12, + artist: { + id: 5666364, + displayName: 'Fatima Yamaha', + uri: 'https://www.songkick.com/artists/5666364-fatima-yamaha?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: 'dfac8e50-286a-443a-923f-820997e5794f', + href: 'https://api.songkick.com/api/3.0/artists/mbid:dfac8e50-286a-443a-923f-820997e5794f.json', + }, + ], + }, + }, + { + id: 75194973, + displayName: 'Ben Klock', + billing: 'headline', + billingIndex: 13, + artist: { + id: 286113, + displayName: 'Ben Klock', + uri: 'https://www.songkick.com/artists/286113-ben-klock?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: 'c5af0c3f-e401-43ed-a096-b504606a05cb', + href: 'https://api.songkick.com/api/3.0/artists/mbid:c5af0c3f-e401-43ed-a096-b504606a05cb.json', + }, + ], + }, + }, + { + id: 75194974, + displayName: 'Seth Troxler', + billing: 'headline', + billingIndex: 14, + artist: { + id: 2328789, + displayName: 'Seth Troxler', + uri: 'https://www.songkick.com/artists/2328789-seth-troxler?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: 'd701634c-95a1-4244-92d6-903113bd79d3', + href: 'https://api.songkick.com/api/3.0/artists/mbid:d701634c-95a1-4244-92d6-903113bd79d3.json', + }, + ], + }, + }, + { + id: 75194975, + displayName: 'Dixon', + billing: 'headline', + billingIndex: 15, + artist: { + id: 123319, + displayName: 'Dixon', + uri: 'https://www.songkick.com/artists/123319-dixon?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: 'f912d0c6-52c6-4b0b-8aaa-975a9afdfee3', + href: 'https://api.songkick.com/api/3.0/artists/mbid:f912d0c6-52c6-4b0b-8aaa-975a9afdfee3.json', + }, + { + mbid: 'b3f428b4-93f4-4ebd-aa73-d4b93f179033', + href: 'https://api.songkick.com/api/3.0/artists/mbid:b3f428b4-93f4-4ebd-aa73-d4b93f179033.json', + }, + ], + }, + }, + { + id: 75194976, + displayName: 'Amelie Lens', + billing: 'headline', + billingIndex: 16, + artist: { + id: 8931019, + displayName: 'Amelie Lens', + uri: 'https://www.songkick.com/artists/8931019-amelie-lens?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '67db280d-c3e4-49d9-978e-4050f4e209ef', + href: 'https://api.songkick.com/api/3.0/artists/mbid:67db280d-c3e4-49d9-978e-4050f4e209ef.json', + }, + ], + }, + }, + { + id: 75194978, + displayName: 'Chaos in the CBD', + billing: 'headline', + billingIndex: 17, + artist: { + id: 4237541, + displayName: 'Chaos in the CBD', + uri: 'https://www.songkick.com/artists/4237541-chaos-in-the-cbd?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: 'ae534b5f-95e5-40d9-9ce0-75e4b777cad1', + href: 'https://api.songkick.com/api/3.0/artists/mbid:ae534b5f-95e5-40d9-9ce0-75e4b777cad1.json', + }, + ], + }, + }, + { + id: 75194977, + displayName: 'Blawan', + billing: 'headline', + billingIndex: 18, + artist: { + id: 3370006, + displayName: 'Blawan', + uri: 'https://www.songkick.com/artists/3370006-blawan?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: 'c27d4389-390e-497c-9a41-dd446ace742c', + href: 'https://api.songkick.com/api/3.0/artists/mbid:c27d4389-390e-497c-9a41-dd446ace742c.json', + }, + ], + }, + }, + { + id: 75194979, + displayName: 'Robert Hood', + billing: 'headline', + billingIndex: 19, + artist: { + id: 557284, + displayName: 'Robert Hood', + uri: 'https://www.songkick.com/artists/557284-robert-hood?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: 'e8a61400-baf7-4fb3-a3e3-c9e7b665547f', + href: 'https://api.songkick.com/api/3.0/artists/mbid:e8a61400-baf7-4fb3-a3e3-c9e7b665547f.json', + }, + ], + }, + }, + { + id: 75194980, + displayName: 'Marcel Dettmann', + billing: 'headline', + billingIndex: 20, + artist: { + id: 2327706, + displayName: 'Marcel Dettmann', + uri: 'https://www.songkick.com/artists/2327706-marcel-dettmann?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '6d7238a1-f0bc-4408-93fc-8ec64c06f7af', + href: 'https://api.songkick.com/api/3.0/artists/mbid:6d7238a1-f0bc-4408-93fc-8ec64c06f7af.json', + }, + ], + }, + }, + { + id: 75194981, + displayName: 'Honey Dijon', + billing: 'headline', + billingIndex: 21, + artist: { + id: 2376006, + displayName: 'Honey Dijon', + uri: 'https://www.songkick.com/artists/2376006-honey-dijon?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '740c6238-3f5d-4e63-8836-826ad6c611ab', + href: 'https://api.songkick.com/api/3.0/artists/mbid:740c6238-3f5d-4e63-8836-826ad6c611ab.json', + }, + ], + }, + }, + { + id: 75194982, + displayName: 'Enrico Sangiuliano', + billing: 'headline', + billingIndex: 22, + artist: { + id: 6160794, + displayName: 'Enrico Sangiuliano', + uri: 'https://www.songkick.com/artists/6160794-enrico-sangiuliano?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: 'fe69b211-d470-48e7-a7a0-64cecb5bc991', + href: 'https://api.songkick.com/api/3.0/artists/mbid:fe69b211-d470-48e7-a7a0-64cecb5bc991.json', + }, + ], + }, + }, + { + id: 75194983, + displayName: 'Skee Mask', + billing: 'headline', + billingIndex: 23, + artist: { + id: 8828934, + displayName: 'Skee Mask', + uri: 'https://www.songkick.com/artists/8828934-skee-mask?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '2b3e25ba-983e-44ac-9def-907e03910cd2', + href: 'https://api.songkick.com/api/3.0/artists/mbid:2b3e25ba-983e-44ac-9def-907e03910cd2.json', + }, + ], + }, + }, + { + id: 75194984, + displayName: 'Mind Against', + billing: 'headline', + billingIndex: 24, + artist: { + id: 6055179, + displayName: 'Mind Against', + uri: 'https://www.songkick.com/artists/6055179-mind-against?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '7e9826df-af21-4b16-9f5a-0523b2e3f4a0', + href: 'https://api.songkick.com/api/3.0/artists/mbid:7e9826df-af21-4b16-9f5a-0523b2e3f4a0.json', + }, + ], + }, + }, + { + id: 75194986, + displayName: 'DJ Boring', + billing: 'headline', + billingIndex: 25, + artist: { + id: 9092519, + displayName: 'DJ Boring', + uri: 'https://www.songkick.com/artists/9092519-dj-boring?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: 'eea116c0-4829-4d3f-88c9-ff2c687c9bd9', + href: 'https://api.songkick.com/api/3.0/artists/mbid:eea116c0-4829-4d3f-88c9-ff2c687c9bd9.json', + }, + ], + }, + }, + { + id: 75194985, + displayName: 'Dense & Pika', + billing: 'headline', + billingIndex: 26, + artist: { + id: 6203204, + displayName: 'Dense & Pika', + uri: 'https://www.songkick.com/artists/6203204-dense-and-pika?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: 'cbd41299-d081-4918-8b78-56f6d2edfe1f', + href: 'https://api.songkick.com/api/3.0/artists/mbid:cbd41299-d081-4918-8b78-56f6d2edfe1f.json', + }, + ], + }, + }, + { + id: 75194987, + displayName: 'Octo Octa', + billing: 'headline', + billingIndex: 27, + artist: { + id: 5209828, + displayName: 'Octo Octa', + uri: 'https://www.songkick.com/artists/5209828-octo-octa?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '3fa65334-e3c4-4e83-b24f-5af5535ba462', + href: 'https://api.songkick.com/api/3.0/artists/mbid:3fa65334-e3c4-4e83-b24f-5af5535ba462.json', + }, + ], + }, + }, + { + id: 75194988, + displayName: 'DMX Krew', + billing: 'headline', + billingIndex: 28, + artist: { + id: 63324, + displayName: 'DMX Krew', + uri: 'https://www.songkick.com/artists/63324-dmx-krew?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: 'a3494b6a-32b5-416c-8dea-dce62c8e9244', + href: 'https://api.songkick.com/api/3.0/artists/mbid:a3494b6a-32b5-416c-8dea-dce62c8e9244.json', + }, + ], + }, + }, + { + id: 75194989, + displayName: 'Avalon Emerson', + billing: 'headline', + billingIndex: 29, + artist: { + id: 5469148, + displayName: 'Avalon Emerson', + uri: 'https://www.songkick.com/artists/5469148-avalon-emerson?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: 'f91ec397-c4be-4672-8faa-2d2983682b1c', + href: 'https://api.songkick.com/api/3.0/artists/mbid:f91ec397-c4be-4672-8faa-2d2983682b1c.json', + }, + ], + }, + }, + { + id: 75194990, + displayName: 'Traumer', + billing: 'headline', + billingIndex: 30, + artist: { + id: 4994888, + displayName: 'Traumer', + uri: 'https://www.songkick.com/artists/4994888-traumer?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '319c89bc-c7a3-4139-8386-a2a5b48b4ed7', + href: 'https://api.songkick.com/api/3.0/artists/mbid:319c89bc-c7a3-4139-8386-a2a5b48b4ed7.json', + }, + ], + }, + }, + { + id: 75194991, + displayName: 'Brame & Hamo', + billing: 'headline', + billingIndex: 31, + artist: { + id: 9092709, + displayName: 'Brame & Hamo', + uri: 'https://www.songkick.com/artists/9092709-brame-and-hamo?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '4537e8c2-23cd-4dff-a555-befdd31ad155', + href: 'https://api.songkick.com/api/3.0/artists/mbid:4537e8c2-23cd-4dff-a555-befdd31ad155.json', + }, + ], + }, + }, + { + id: 75194992, + displayName: 'Bambounou', + billing: 'headline', + billingIndex: 32, + artist: { + id: 4585233, + displayName: 'Bambounou', + uri: 'https://www.songkick.com/artists/4585233-bambounou?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '8aa216f8-5be8-40aa-8342-a490ad656395', + href: 'https://api.songkick.com/api/3.0/artists/mbid:8aa216f8-5be8-40aa-8342-a490ad656395.json', + }, + ], + }, + }, + { + id: 75194993, + displayName: 'Benjamin Damage', + billing: 'headline', + billingIndex: 33, + artist: { + id: 4371483, + displayName: 'Benjamin Damage', + uri: 'https://www.songkick.com/artists/4371483-benjamin-damage?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '92a8ef7d-b313-4b85-baeb-efcbeac5b7c8', + href: 'https://api.songkick.com/api/3.0/artists/mbid:92a8ef7d-b313-4b85-baeb-efcbeac5b7c8.json', + }, + ], + }, + }, + { + id: 75194994, + displayName: 'Joel Mull', + billing: 'headline', + billingIndex: 34, + artist: { + id: 412771, + displayName: 'Joel Mull', + uri: 'https://www.songkick.com/artists/412771-joel-mull?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '72a09d0f-cc17-436f-8cae-b7f047341a90', + href: 'https://api.songkick.com/api/3.0/artists/mbid:72a09d0f-cc17-436f-8cae-b7f047341a90.json', + }, + ], + }, + }, + { + id: 75194995, + displayName: 'Dax J', + billing: 'headline', + billingIndex: 35, + artist: { + id: 4731583, + displayName: 'Dax J', + uri: 'https://www.songkick.com/artists/4731583-dax-j?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '8a860182-6587-4bc3-b578-88e56424b6dc', + href: 'https://api.songkick.com/api/3.0/artists/mbid:8a860182-6587-4bc3-b578-88e56424b6dc.json', + }, + ], + }, + }, + { + id: 75194996, + displayName: 'Kobosil', + billing: 'headline', + billingIndex: 36, + artist: { + id: 7342659, + displayName: 'Kobosil', + uri: 'https://www.songkick.com/artists/7342659-kobosil?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: 'c6b2c2c3-e771-4228-9401-b263369d5b48', + href: 'https://api.songkick.com/api/3.0/artists/mbid:c6b2c2c3-e771-4228-9401-b263369d5b48.json', + }, + ], + }, + }, + { + id: 75194999, + displayName: 'Ceri', + billing: 'headline', + billingIndex: 37, + artist: { + id: 7945958, + displayName: 'Ceri', + uri: 'https://www.songkick.com/artists/7945958-ceri?utm_source=2356&utm_medium=partner', + identifier: [], + }, + }, + { + id: 75194998, + displayName: 'Margaret Dygas', + billing: 'headline', + billingIndex: 38, + artist: { + id: 950937, + displayName: 'Margaret Dygas', + uri: 'https://www.songkick.com/artists/950937-margaret-dygas?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '5d97692e-d1ce-40c9-8395-44d85d51ba15', + href: 'https://api.songkick.com/api/3.0/artists/mbid:5d97692e-d1ce-40c9-8395-44d85d51ba15.json', + }, + ], + }, + }, + { + id: 75195000, + displayName: 'The Zenker Brothers', + billing: 'headline', + billingIndex: 39, + artist: { + id: 8392788, + displayName: 'The Zenker Brothers', + uri: 'https://www.songkick.com/artists/8392788-zenker-brothers?utm_source=2356&utm_medium=partner', + identifier: [], + }, + }, + { + id: 75195002, + displayName: '999999999', + billing: 'headline', + billingIndex: 40, + artist: { + id: 9908829, + displayName: '999999999', + uri: 'https://www.songkick.com/artists/9908829-999999999?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: 'fee18f64-e35c-4ca6-be78-605d73d0cefa', + href: 'https://api.songkick.com/api/3.0/artists/mbid:fee18f64-e35c-4ca6-be78-605d73d0cefa.json', + }, + ], + }, + }, + { + id: 75195004, + displayName: 'Eris Drew', + billing: 'headline', + billingIndex: 41, + artist: { + id: 8973229, + displayName: 'Eris Drew', + uri: 'https://www.songkick.com/artists/8973229-eris-drew?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '8cd2d139-7257-4d8c-9247-621bfb742e6e', + href: 'https://api.songkick.com/api/3.0/artists/mbid:8cd2d139-7257-4d8c-9247-621bfb742e6e.json', + }, + ], + }, + }, + { + id: 75195011, + displayName: 'Yu Su', + billing: 'headline', + billingIndex: 42, + artist: { + id: 10060867, + displayName: 'Yu Su', + uri: 'https://www.songkick.com/artists/10060867-yu-su?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '4472f89e-5944-49e4-9a33-43358390db40', + href: 'https://api.songkick.com/api/3.0/artists/mbid:4472f89e-5944-49e4-9a33-43358390db40.json', + }, + ], + }, + }, + { + id: 75195007, + displayName: 'Effy', + billing: 'headline', + billingIndex: 43, + artist: { + id: 2807416, + displayName: 'Effy', + uri: 'https://www.songkick.com/artists/2807416-effy?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '740b6d81-1663-44ab-895a-9d01f4c1c46d', + href: 'https://api.songkick.com/api/3.0/artists/mbid:740b6d81-1663-44ab-895a-9d01f4c1c46d.json', + }, + ], + }, + }, + { + id: 75195001, + displayName: 'Eclair Fifi', + billing: 'headline', + billingIndex: 44, + artist: { + id: 2555036, + displayName: 'Eclair Fifi', + uri: 'https://www.songkick.com/artists/2555036-eclair-fifi?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '178e684a-2630-4378-8824-2991d4bff13e', + href: 'https://api.songkick.com/api/3.0/artists/mbid:178e684a-2630-4378-8824-2991d4bff13e.json', + }, + ], + }, + }, + { + id: 75195003, + displayName: 'Aurora Halal', + billing: 'headline', + billingIndex: 45, + artist: { + id: 6383469, + displayName: 'Aurora Halal', + uri: 'https://www.songkick.com/artists/6383469-aurora-halal?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '75823c6e-aa7c-40cd-a1b7-441b705750bf', + href: 'https://api.songkick.com/api/3.0/artists/mbid:75823c6e-aa7c-40cd-a1b7-441b705750bf.json', + }, + ], + }, + }, + { + id: 75195005, + displayName: 'D. Tiffany', + billing: 'headline', + billingIndex: 46, + artist: { + id: 9521299, + displayName: 'D. Tiffany', + uri: 'https://www.songkick.com/artists/9521299-d-tiffany?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '35ff298f-126f-4dbf-8ceb-6a3781e0de5e', + href: 'https://api.songkick.com/api/3.0/artists/mbid:35ff298f-126f-4dbf-8ceb-6a3781e0de5e.json', + }, + ], + }, + }, + { + id: 75195006, + displayName: 'Sugar Free', + billing: 'headline', + billingIndex: 47, + artist: { + id: 119990, + displayName: 'Sugar Free', + uri: 'https://www.songkick.com/artists/119990-sugar-free?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '088a3247-4fa8-4212-b894-9963732d82f1', + href: 'https://api.songkick.com/api/3.0/artists/mbid:088a3247-4fa8-4212-b894-9963732d82f1.json', + }, + ], + }, + }, + { + id: 75195008, + displayName: 'Hessle Audio', + billing: 'headline', + billingIndex: 48, + artist: { + id: 702794, + displayName: 'Hessle Audio', + uri: 'https://www.songkick.com/artists/702794-hessle-audio?utm_source=2356&utm_medium=partner', + identifier: [], + }, + }, + { + id: 75195010, + displayName: 'ROZA TERENZI', + billing: 'headline', + billingIndex: 49, + artist: { + id: 9653179, + displayName: 'ROZA TERENZI', + uri: 'https://www.songkick.com/artists/9653179-roza-terenzi?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '29c2b372-b02c-4bb9-b0a7-5741f0b48b3b', + href: 'https://api.songkick.com/api/3.0/artists/mbid:29c2b372-b02c-4bb9-b0a7-5741f0b48b3b.json', + }, + ], + }, + }, + { + id: 75195009, + displayName: 'Fumiya Tanaka', + billing: 'headline', + billingIndex: 50, + artist: { + id: 177794, + displayName: 'Fumiya Tanaka', + uri: 'https://www.songkick.com/artists/177794-fumiya-tanaka?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '86b9a88e-d18f-43c5-9805-f8eb41007aa2', + href: 'https://api.songkick.com/api/3.0/artists/mbid:86b9a88e-d18f-43c5-9805-f8eb41007aa2.json', + }, + ], + }, + }, + { + id: 75195012, + displayName: 'Cromby', + billing: 'headline', + billingIndex: 51, + artist: { + id: 9847079, + displayName: 'Cromby', + uri: 'https://www.songkick.com/artists/9847079-cromby?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '07d6c6eb-67f4-4a4d-9fdd-de21b294a37b', + href: 'https://api.songkick.com/api/3.0/artists/mbid:07d6c6eb-67f4-4a4d-9fdd-de21b294a37b.json', + }, + ], + }, + }, + { + id: 75195013, + displayName: 'Anastasia Kristensen', + billing: 'headline', + billingIndex: 52, + artist: { + id: 9279734, + displayName: 'Anastasia Kristensen', + uri: 'https://www.songkick.com/artists/9279734-anastasia-kristensen?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: 'd5cf59c3-6e4a-4532-a409-618a9f3b43a5', + href: 'https://api.songkick.com/api/3.0/artists/mbid:d5cf59c3-6e4a-4532-a409-618a9f3b43a5.json', + }, + ], + }, + }, + { + id: 75195014, + displayName: 'ZoZo', + billing: 'headline', + billingIndex: 53, + artist: { + id: 1603138, + displayName: 'ZoZo', + uri: 'https://www.songkick.com/artists/1603138-zozo?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '5e3efcc4-1791-417a-82ce-654be1777d7d', + href: 'https://api.songkick.com/api/3.0/artists/mbid:5e3efcc4-1791-417a-82ce-654be1777d7d.json', + }, + ], + }, + }, + { + id: 75195018, + displayName: 'carlota', + billing: 'headline', + billingIndex: 54, + artist: { + id: 9979069, + displayName: 'carlota', + uri: 'https://www.songkick.com/artists/9979069-carlota?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: 'af3d2dd4-b26f-4062-a04a-6364d165a42c', + href: 'https://api.songkick.com/api/3.0/artists/mbid:af3d2dd4-b26f-4062-a04a-6364d165a42c.json', + }, + ], + }, + }, + { + id: 75195015, + displayName: 'Dr. Rubinstein', + billing: 'headline', + billingIndex: 55, + artist: { + id: 8625669, + displayName: 'Dr. Rubinstein', + uri: 'https://www.songkick.com/artists/8625669-dr-rubinstein?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: 'e87c756f-c72a-46bd-aa87-2c2ea0cbbe9d', + href: 'https://api.songkick.com/api/3.0/artists/mbid:e87c756f-c72a-46bd-aa87-2c2ea0cbbe9d.json', + }, + ], + }, + }, + { + id: 75195016, + displayName: 'Samuel Deep', + billing: 'headline', + billingIndex: 56, + artist: { + id: 5068288, + displayName: 'Samuel Deep', + uri: 'https://www.songkick.com/artists/5068288-samuel-deep?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '0e69714f-a57b-4431-bbb9-f0245cffd610', + href: 'https://api.songkick.com/api/3.0/artists/mbid:0e69714f-a57b-4431-bbb9-f0245cffd610.json', + }, + ], + }, + }, + { + id: 75195017, + displayName: 'BINH', + billing: 'headline', + billingIndex: 57, + artist: { + id: 645009, + displayName: 'BINH', + uri: 'https://www.songkick.com/artists/645009-binh?utm_source=2356&utm_medium=partner', + identifier: [], + }, + }, + { + id: 75195019, + displayName: 'Saoirse', + billing: 'headline', + billingIndex: 58, + artist: { + id: 114676, + displayName: 'Saoirse', + uri: 'https://www.songkick.com/artists/114676-saoirse?utm_source=2356&utm_medium=partner', + identifier: [], + }, + }, + { + id: 75195020, + displayName: 'Roi Perez', + billing: 'headline', + billingIndex: 59, + artist: { + id: 8506533, + displayName: 'Roi Perez', + uri: 'https://www.songkick.com/artists/8506533-roi-perez?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: 'bb201868-668e-4201-90d4-78cc6429515b', + href: 'https://api.songkick.com/api/3.0/artists/mbid:bb201868-668e-4201-90d4-78cc6429515b.json', + }, + ], + }, + }, + { + id: 75195021, + displayName: 'Robin Ordell', + billing: 'headline', + billingIndex: 60, + artist: { + id: 3089201, + displayName: 'Robin Ordell', + uri: 'https://www.songkick.com/artists/3089201-robin-ordell?utm_source=2356&utm_medium=partner', + identifier: [], + }, + }, + { + id: 75195022, + displayName: 'Francesco Del Garda', + billing: 'headline', + billingIndex: 61, + artist: { + id: 1090220, + displayName: 'Francesco Del Garda', + uri: 'https://www.songkick.com/artists/1090220-francesco-del-garda?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: 'c13f201c-83bc-4a6e-a7b0-7fbcd13adddc', + href: 'https://api.songkick.com/api/3.0/artists/mbid:c13f201c-83bc-4a6e-a7b0-7fbcd13adddc.json', + }, + ], + }, + }, + { + id: 75195023, + displayName: 'Jossy Mitsu', + billing: 'headline', + billingIndex: 62, + artist: { + id: 9128319, + displayName: 'Jossy Mitsu', + uri: 'https://www.songkick.com/artists/9128319-jossy-mitsu?utm_source=2356&utm_medium=partner', + identifier: [], + }, + }, + { + id: 75195025, + displayName: 'dBreathe', + billing: 'headline', + billingIndex: 63, + artist: { + id: 9752514, + displayName: 'dBreathe', + uri: 'https://www.songkick.com/artists/9752514-dbreathe?utm_source=2356&utm_medium=partner', + identifier: [], + }, + }, + { + id: 75195024, + displayName: 'Sam Bangura', + billing: 'headline', + billingIndex: 64, + artist: { + id: 8741004, + displayName: 'Sam Bangura', + uri: 'https://www.songkick.com/artists/8741004-sam-bangura?utm_source=2356&utm_medium=partner', + identifier: [], + }, + }, + { + id: 75195026, + displayName: 'Kiara Scuro', + billing: 'headline', + billingIndex: 65, + artist: { + id: 9417634, + displayName: 'Kiara Scuro', + uri: 'https://www.songkick.com/artists/9417634-kiara-scuro?utm_source=2356&utm_medium=partner', + identifier: [], + }, + }, + ], + ageRestriction: null, + flaggedAsEnded: false, + venue: { + id: 1416463, + displayName: 'Boston Manor Park', + uri: 'https://www.songkick.com/venues/1416463-boston-manor-park?utm_source=2356&utm_medium=partner', + metroArea: { + displayName: 'London', + country: { displayName: 'UK' }, + id: 24426, + uri: 'https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner', + }, + lat: 51.49283, + lng: -0.31825, + }, + location: { city: 'Brentford, UK', lat: 51.49283, lng: -0.31825 }, + end: { date: '2022-06-04', time: null, datetime: null }, + series: { displayName: 'Junction 2' }, + }, + { + id: 39275832, + displayName: + 'The Killers with Sam Fender at Emirates Stadium (June 4, 2022)', + type: 'Concert', + uri: 'https://www.songkick.com/concerts/39275832-killers-at-emirates-stadium?utm_source=2356&utm_medium=partner', + status: 'ok', + popularity: 0.586635, + start: { + date: '2022-06-04', + datetime: '2022-06-04T17:30:00+0100', + time: '17:30:00', + }, + performance: [ + { + id: 74332602, + displayName: 'The Killers', + billing: 'headline', + billingIndex: 1, + artist: { + id: 555021, + displayName: 'The Killers', + uri: 'https://www.songkick.com/artists/555021-killers?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '66101a13-70cc-40a7-8371-abcb78012aa3', + href: 'https://api.songkick.com/api/3.0/artists/mbid:66101a13-70cc-40a7-8371-abcb78012aa3.json', + }, + { + mbid: '0dc08b92-4639-4370-94cf-1cd31b0811f6', + href: 'https://api.songkick.com/api/3.0/artists/mbid:0dc08b92-4639-4370-94cf-1cd31b0811f6.json', + }, + { + mbid: '386b27fb-fc2b-400c-a296-079b13e21061', + href: 'https://api.songkick.com/api/3.0/artists/mbid:386b27fb-fc2b-400c-a296-079b13e21061.json', + }, + { + mbid: '95e1ead9-4d31-4808-a7ac-32c3614c116b', + href: 'https://api.songkick.com/api/3.0/artists/mbid:95e1ead9-4d31-4808-a7ac-32c3614c116b.json', + }, + { + mbid: '4665e836-2c96-4569-9462-bfea34850b69', + href: 'https://api.songkick.com/api/3.0/artists/mbid:4665e836-2c96-4569-9462-bfea34850b69.json', + }, + { + mbid: '24b4aee8-32ed-4163-98f7-55bae67411ae', + href: 'https://api.songkick.com/api/3.0/artists/mbid:24b4aee8-32ed-4163-98f7-55bae67411ae.json', + }, + ], + }, + }, + { + id: 75477553, + displayName: 'Sam Fender', + billing: 'support', + billingIndex: 2, + artist: { + id: 6907314, + displayName: 'Sam Fender', + uri: 'https://www.songkick.com/artists/6907314-sam-fender?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '3478a5d1-bd96-4584-aa54-4d6e0a329658', + href: 'https://api.songkick.com/api/3.0/artists/mbid:3478a5d1-bd96-4584-aa54-4d6e0a329658.json', + }, + ], + }, + }, + ], + ageRestriction: null, + flaggedAsEnded: false, + venue: { + id: 12994, + displayName: 'Emirates Stadium', + uri: 'https://www.songkick.com/venues/12994-emirates-stadium?utm_source=2356&utm_medium=partner', + metroArea: { + displayName: 'London', + country: { displayName: 'UK' }, + id: 24426, + uri: 'https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner', + }, + lat: 51.56214, + lng: -0.11707, + }, + location: { city: 'London, UK', lat: 51.56214, lng: -0.11707 }, + }, + { + id: 39604088, + displayName: 'Hampton Court Palace Festival - Lionel Richie 2022', + type: 'Festival', + uri: 'https://www.songkick.com/festivals/3273883-hampton-court-palace-lionel-richie/id/39604088-hampton-court-palace-festival--lionel-richie-2022?utm_source=2356&utm_medium=partner', + status: 'ok', + popularity: 0.129297, + start: { + date: '2022-06-08', + datetime: '2022-06-08T17:30:00+0100', + time: '17:30:00', + }, + performance: [ + { + id: 74908192, + displayName: 'Lionel Richie', + billing: 'headline', + billingIndex: 1, + artist: { + id: 443179, + displayName: 'Lionel Richie', + uri: 'https://www.songkick.com/artists/443179-lionel-richie?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '3cb25fb2-5547-4b05-adec-1a5e37830d46', + href: 'https://api.songkick.com/api/3.0/artists/mbid:3cb25fb2-5547-4b05-adec-1a5e37830d46.json', + }, + ], + }, + }, + ], + ageRestriction: null, + flaggedAsEnded: false, + venue: { + id: 56743, + displayName: 'Hampton Court Palace', + uri: 'https://www.songkick.com/venues/56743-hampton-court-palace?utm_source=2356&utm_medium=partner', + metroArea: { + displayName: 'London', + country: { displayName: 'UK' }, + id: 24426, + uri: 'https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner', + }, + lat: 51.40381, + lng: -0.33767, + }, + location: { + city: 'Kingston Upon Thames, UK', + lat: 51.40381, + lng: -0.33767, + }, + end: { date: '2022-06-08', time: null, datetime: null }, + series: { + displayName: 'Hampton Court Palace Festival - Lionel Richie', + }, + }, + { + id: 39604084, + displayName: 'Hampton Court Palace Festival - Lionel Richie 2022', + type: 'Festival', + uri: 'https://www.songkick.com/festivals/3273883-hampton-court-palace-lionel-richie/id/39604084-hampton-court-palace-festival--lionel-richie-2022?utm_source=2356&utm_medium=partner', + status: 'ok', + popularity: 0.129297, + start: { + date: '2022-06-09', + datetime: '2022-06-09T17:30:00+0100', + time: '17:30:00', + }, + performance: [ + { + id: 74908188, + displayName: 'Lionel Richie', + billing: 'headline', + billingIndex: 1, + artist: { + id: 443179, + displayName: 'Lionel Richie', + uri: 'https://www.songkick.com/artists/443179-lionel-richie?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '3cb25fb2-5547-4b05-adec-1a5e37830d46', + href: 'https://api.songkick.com/api/3.0/artists/mbid:3cb25fb2-5547-4b05-adec-1a5e37830d46.json', + }, + ], + }, + }, + ], + ageRestriction: null, + flaggedAsEnded: false, + venue: { + id: 56743, + displayName: 'Hampton Court Palace', + uri: 'https://www.songkick.com/venues/56743-hampton-court-palace?utm_source=2356&utm_medium=partner', + metroArea: { + displayName: 'London', + country: { displayName: 'UK' }, + id: 24426, + uri: 'https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner', + }, + lat: 51.40381, + lng: -0.33767, + }, + location: { + city: 'Kingston Upon Thames, UK', + lat: 51.40381, + lng: -0.33767, + }, + end: { date: '2022-06-09', time: null, datetime: null }, + series: { + displayName: 'Hampton Court Palace Festival - Lionel Richie', + }, + }, + { + id: 39851001, + displayName: + 'Billie Eilish with Jessie Reyez at The O2 (June 10, 2022)', + type: 'Concert', + uri: 'https://www.songkick.com/concerts/39851001-billie-eilish-at-o2?utm_source=2356&utm_medium=partner', + status: 'ok', + popularity: 0.350619, + start: { + date: '2022-06-10', + datetime: '2022-06-10T19:00:00+0100', + time: '19:00:00', + }, + performance: [ + { + id: 75321172, + displayName: 'Billie Eilish', + billing: 'headline', + billingIndex: 1, + artist: { + id: 8913479, + displayName: 'Billie Eilish', + uri: 'https://www.songkick.com/artists/8913479-billie-eilish?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: 'f4abc0b5-3f7a-4eff-8f78-ac078dbce533', + href: 'https://api.songkick.com/api/3.0/artists/mbid:f4abc0b5-3f7a-4eff-8f78-ac078dbce533.json', + }, + ], + }, + }, + { + id: 75531801, + displayName: 'Jessie Reyez', + billing: 'support', + billingIndex: 2, + artist: { + id: 8838519, + displayName: 'Jessie Reyez', + uri: 'https://www.songkick.com/artists/8838519-jessie-reyez?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '18f56081-ccd7-4e07-981a-558c20951ccd', + href: 'https://api.songkick.com/api/3.0/artists/mbid:18f56081-ccd7-4e07-981a-558c20951ccd.json', + }, + ], + }, + }, + ], + ageRestriction: null, + flaggedAsEnded: false, + venue: { + id: 17532, + displayName: 'The O2', + uri: 'https://www.songkick.com/venues/17532-o2?utm_source=2356&utm_medium=partner', + metroArea: { + displayName: 'London', + country: { displayName: 'UK' }, + id: 24426, + uri: 'https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner', + }, + lat: 51.50094, + lng: 0.00536, + }, + location: { city: 'London, UK', lat: 51.50094, lng: 0.00536 }, + }, + { + id: 39850981, + displayName: + 'Billie Eilish with Jessie Reyez at The O2 (June 11, 2022)', + type: 'Concert', + uri: 'https://www.songkick.com/concerts/39850981-billie-eilish-at-o2?utm_source=2356&utm_medium=partner', + status: 'ok', + popularity: 0.350619, + start: { + date: '2022-06-11', + datetime: '2022-06-11T19:00:00+0100', + time: '19:00:00', + }, + performance: [ + { + id: 75321150, + displayName: 'Billie Eilish', + billing: 'headline', + billingIndex: 1, + artist: { + id: 8913479, + displayName: 'Billie Eilish', + uri: 'https://www.songkick.com/artists/8913479-billie-eilish?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: 'f4abc0b5-3f7a-4eff-8f78-ac078dbce533', + href: 'https://api.songkick.com/api/3.0/artists/mbid:f4abc0b5-3f7a-4eff-8f78-ac078dbce533.json', + }, + ], + }, + }, + { + id: 75531784, + displayName: 'Jessie Reyez', + billing: 'support', + billingIndex: 2, + artist: { + id: 8838519, + displayName: 'Jessie Reyez', + uri: 'https://www.songkick.com/artists/8838519-jessie-reyez?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '18f56081-ccd7-4e07-981a-558c20951ccd', + href: 'https://api.songkick.com/api/3.0/artists/mbid:18f56081-ccd7-4e07-981a-558c20951ccd.json', + }, + ], + }, + }, + ], + ageRestriction: null, + flaggedAsEnded: false, + venue: { + id: 17532, + displayName: 'The O2', + uri: 'https://www.songkick.com/venues/17532-o2?utm_source=2356&utm_medium=partner', + metroArea: { + displayName: 'London', + country: { displayName: 'UK' }, + id: 24426, + uri: 'https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner', + }, + lat: 51.50094, + lng: 0.00536, + }, + location: { city: 'London, UK', lat: 51.50094, lng: 0.00536 }, + }, + { + id: 39851158, + displayName: + 'Billie Eilish with Jessie Reyez at The O2 (June 12, 2022)', + type: 'Concert', + uri: 'https://www.songkick.com/concerts/39851158-billie-eilish-at-o2?utm_source=2356&utm_medium=partner', + status: 'ok', + popularity: 0.350619, + start: { + date: '2022-06-12', + datetime: '2022-06-12T19:00:00+0100', + time: '19:00:00', + }, + performance: [ + { + id: 75321358, + displayName: 'Billie Eilish', + billing: 'headline', + billingIndex: 1, + artist: { + id: 8913479, + displayName: 'Billie Eilish', + uri: 'https://www.songkick.com/artists/8913479-billie-eilish?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: 'f4abc0b5-3f7a-4eff-8f78-ac078dbce533', + href: 'https://api.songkick.com/api/3.0/artists/mbid:f4abc0b5-3f7a-4eff-8f78-ac078dbce533.json', + }, + ], + }, + }, + { + id: 75532000, + displayName: 'Jessie Reyez', + billing: 'support', + billingIndex: 2, + artist: { + id: 8838519, + displayName: 'Jessie Reyez', + uri: 'https://www.songkick.com/artists/8838519-jessie-reyez?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '18f56081-ccd7-4e07-981a-558c20951ccd', + href: 'https://api.songkick.com/api/3.0/artists/mbid:18f56081-ccd7-4e07-981a-558c20951ccd.json', + }, + ], + }, + }, + ], + ageRestriction: null, + flaggedAsEnded: false, + venue: { + id: 17532, + displayName: 'The O2', + uri: 'https://www.songkick.com/venues/17532-o2?utm_source=2356&utm_medium=partner', + metroArea: { + displayName: 'London', + country: { displayName: 'UK' }, + id: 24426, + uri: 'https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner', + }, + lat: 51.50094, + lng: 0.00536, + }, + location: { city: 'London, UK', lat: 51.50094, lng: 0.00536 }, + }, + { + id: 39472862, + displayName: 'Beck at O2 Academy Brixton (June 16, 2022)', + type: 'Concert', + uri: 'https://www.songkick.com/concerts/39472862-beck-at-o2-academy-brixton?utm_source=2356&utm_medium=partner', + status: 'ok', + popularity: 0.269293, + start: { + date: '2022-06-16', + datetime: '2022-06-16T19:00:00+0100', + time: '19:00:00', + }, + performance: [ + { + id: 74672767, + displayName: 'Beck', + billing: 'headline', + billingIndex: 1, + artist: { + id: 430505, + displayName: 'Beck', + uri: 'https://www.songkick.com/artists/430505-beck?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '1cc5adcd-1422-4b5c-a3cd-3ecd4f43f506', + href: 'https://api.songkick.com/api/3.0/artists/mbid:1cc5adcd-1422-4b5c-a3cd-3ecd4f43f506.json', + }, + { + mbid: '309c62ba-7a22-4277-9f67-4a162526d18a', + href: 'https://api.songkick.com/api/3.0/artists/mbid:309c62ba-7a22-4277-9f67-4a162526d18a.json', + }, + { + mbid: 'a8baaa41-50f1-4f63-979e-717c14979dfb', + href: 'https://api.songkick.com/api/3.0/artists/mbid:a8baaa41-50f1-4f63-979e-717c14979dfb.json', + }, + ], + }, + }, + ], + ageRestriction: null, + flaggedAsEnded: false, + venue: { + id: 17522, + displayName: 'O2 Academy Brixton', + uri: 'https://www.songkick.com/venues/17522-o2-academy-brixton?utm_source=2356&utm_medium=partner', + metroArea: { + displayName: 'London', + country: { displayName: 'UK' }, + id: 24426, + uri: 'https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner', + }, + lat: 51.46516, + lng: -0.11493, + }, + location: { city: 'London, UK', lat: 51.46516, lng: -0.11493 }, + }, + { + id: 39850946, + displayName: 'Billie Eilish with Jungle at The O2 (June 16, 2022)', + type: 'Concert', + uri: 'https://www.songkick.com/concerts/39850946-billie-eilish-at-o2?utm_source=2356&utm_medium=partner', + status: 'ok', + popularity: 0.350619, + start: { + date: '2022-06-16', + datetime: '2022-06-16T19:00:00+0100', + time: '19:00:00', + }, + performance: [ + { + id: 75321116, + displayName: 'Billie Eilish', + billing: 'headline', + billingIndex: 1, + artist: { + id: 8913479, + displayName: 'Billie Eilish', + uri: 'https://www.songkick.com/artists/8913479-billie-eilish?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: 'f4abc0b5-3f7a-4eff-8f78-ac078dbce533', + href: 'https://api.songkick.com/api/3.0/artists/mbid:f4abc0b5-3f7a-4eff-8f78-ac078dbce533.json', + }, + ], + }, + }, + { + id: 75533168, + displayName: 'Jungle', + billing: 'support', + billingIndex: 2, + artist: { + id: 506651, + displayName: 'Jungle', + uri: 'https://www.songkick.com/artists/506651-jungle?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '3dd6a140-4526-4792-94dd-ba271e6ed041', + href: 'https://api.songkick.com/api/3.0/artists/mbid:3dd6a140-4526-4792-94dd-ba271e6ed041.json', + }, + { + mbid: '6bbb3983-ce8a-4971-96e0-7cae73268fc4', + href: 'https://api.songkick.com/api/3.0/artists/mbid:6bbb3983-ce8a-4971-96e0-7cae73268fc4.json', + }, + { + mbid: '6661d655-36be-4b60-ada1-ff564d82942a', + href: 'https://api.songkick.com/api/3.0/artists/mbid:6661d655-36be-4b60-ada1-ff564d82942a.json', + }, + ], + }, + }, + ], + ageRestriction: null, + flaggedAsEnded: false, + venue: { + id: 17532, + displayName: 'The O2', + uri: 'https://www.songkick.com/venues/17532-o2?utm_source=2356&utm_medium=partner', + metroArea: { + displayName: 'London', + country: { displayName: 'UK' }, + id: 24426, + uri: 'https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner', + }, + lat: 51.50094, + lng: 0.00536, + }, + location: { city: 'London, UK', lat: 51.50094, lng: 0.00536 }, + }, + { + id: 39128585, + displayName: + 'Green Day, Fall Out Boy, and Weezer at London Stadium, Queen Elizabeth (June 24, 2022)', + type: 'Concert', + uri: 'https://www.songkick.com/concerts/39128585-green-day-at-london-stadium-queen-elizabeth?utm_source=2356&utm_medium=partner', + status: 'ok', + popularity: 0.499753, + start: { + date: '2022-06-24', + datetime: '2022-06-24T16:00:00+0100', + time: '16:00:00', + }, + performance: [ + { + id: 74085873, + displayName: 'Green Day', + billing: 'headline', + billingIndex: 1, + artist: { + id: 269937, + displayName: 'Green Day', + uri: 'https://www.songkick.com/artists/269937-green-day?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '084308bd-1654-436f-ba03-df6697104e19', + href: 'https://api.songkick.com/api/3.0/artists/mbid:084308bd-1654-436f-ba03-df6697104e19.json', + }, + ], + }, + }, + { + id: 74085874, + displayName: 'Fall Out Boy', + billing: 'headline', + billingIndex: 2, + artist: { + id: 315398, + displayName: 'Fall Out Boy', + uri: 'https://www.songkick.com/artists/315398-fall-out-boy?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '9c75d4e4-85b0-4d0e-8110-3cb80279e870', + href: 'https://api.songkick.com/api/3.0/artists/mbid:9c75d4e4-85b0-4d0e-8110-3cb80279e870.json', + }, + { + mbid: '516cef4d-0718-4007-9939-f9b38af3f784', + href: 'https://api.songkick.com/api/3.0/artists/mbid:516cef4d-0718-4007-9939-f9b38af3f784.json', + }, + { + mbid: '0666707b-4f61-4f56-83a7-08597d6c70b9', + href: 'https://api.songkick.com/api/3.0/artists/mbid:0666707b-4f61-4f56-83a7-08597d6c70b9.json', + }, + ], + }, + }, + { + id: 74087022, + displayName: 'Weezer', + billing: 'headline', + billingIndex: 3, + artist: { + id: 544909, + displayName: 'Weezer', + uri: 'https://www.songkick.com/artists/544909-weezer?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '6fe07aa5-fec0-4eca-a456-f29bff451b04', + href: 'https://api.songkick.com/api/3.0/artists/mbid:6fe07aa5-fec0-4eca-a456-f29bff451b04.json', + }, + ], + }, + }, + ], + ageRestriction: null, + flaggedAsEnded: false, + venue: { + id: 3174414, + displayName: 'London Stadium, Queen Elizabeth', + uri: 'https://www.songkick.com/venues/3174414-london-stadium-queen-elizabeth?utm_source=2356&utm_medium=partner', + metroArea: { + displayName: 'London', + country: { displayName: 'UK' }, + id: 24426, + uri: 'https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner', + }, + lat: 51.53871, + lng: -0.0166, + }, + location: { city: 'London, UK', lat: 51.53871, lng: -0.0166 }, + }, + ], + }, + { + title: 'July 2022', + data: [ + { + id: 39344372, + displayName: + "Guns N' Roses with Slash and Gary Clark Jr. at Tottenham Hotspur Stadium (July 1, 2022)", + type: 'Concert', + uri: 'https://www.songkick.com/concerts/39344372-guns-n-roses-at-tottenham-hotspur-stadium?utm_source=2356&utm_medium=partner', + status: 'ok', + popularity: 0.384729, + start: { + date: '2022-07-01', + datetime: '2022-07-01T15:30:00+0100', + time: '15:30:00', + }, + performance: [ + { + id: 74446370, + displayName: "Guns N' Roses", + billing: 'headline', + billingIndex: 1, + artist: { + id: 509644, + displayName: "Guns N' Roses", + uri: 'https://www.songkick.com/artists/509644-guns-n-roses?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: 'eeb1195b-f213-4ce1-b28c-8565211f8e43', + href: 'https://api.songkick.com/api/3.0/artists/mbid:eeb1195b-f213-4ce1-b28c-8565211f8e43.json', + }, + ], + }, + }, + { + id: 74866729, + displayName: 'Slash', + billing: 'support', + billingIndex: 2, + artist: { + id: 44022, + displayName: 'Slash', + uri: 'https://www.songkick.com/artists/44022-slash?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '649b8590-b2c2-4519-a2d4-2f81f3828242', + href: 'https://api.songkick.com/api/3.0/artists/mbid:649b8590-b2c2-4519-a2d4-2f81f3828242.json', + }, + { + mbid: '5e7a7026-dfc5-4aba-8496-95140716f3db', + href: 'https://api.songkick.com/api/3.0/artists/mbid:5e7a7026-dfc5-4aba-8496-95140716f3db.json', + }, + { + mbid: 'ef2533cc-e8fa-4ba9-96a1-5a516e5bf850', + href: 'https://api.songkick.com/api/3.0/artists/mbid:ef2533cc-e8fa-4ba9-96a1-5a516e5bf850.json', + }, + { + mbid: 'a3068832-71ed-4367-8d74-c4f7979ee784', + href: 'https://api.songkick.com/api/3.0/artists/mbid:a3068832-71ed-4367-8d74-c4f7979ee784.json', + }, + { + mbid: 'e7ed88e7-3ea6-49de-a728-c4c2195a6fbd', + href: 'https://api.songkick.com/api/3.0/artists/mbid:e7ed88e7-3ea6-49de-a728-c4c2195a6fbd.json', + }, + ], + }, + }, + { + id: 75235129, + displayName: 'Gary Clark Jr.', + billing: 'support', + billingIndex: 3, + artist: { + id: 309236, + displayName: 'Gary Clark Jr.', + uri: 'https://www.songkick.com/artists/309236-gary-clark-jr?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: 'c733c4e6-22a2-499d-ace7-17b832356aff', + href: 'https://api.songkick.com/api/3.0/artists/mbid:c733c4e6-22a2-499d-ace7-17b832356aff.json', + }, + { + mbid: '0c15371a-a7dd-474f-8092-2e13619ee239', + href: 'https://api.songkick.com/api/3.0/artists/mbid:0c15371a-a7dd-474f-8092-2e13619ee239.json', + }, + ], + }, + }, + ], + ageRestriction: null, + flaggedAsEnded: false, + venue: { + id: 4368336, + displayName: 'Tottenham Hotspur Stadium', + uri: 'https://www.songkick.com/venues/4368336-tottenham-hotspur-stadium?utm_source=2356&utm_medium=partner', + metroArea: { + displayName: 'London', + country: { displayName: 'UK' }, + id: 24426, + uri: 'https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner', + }, + lat: 51.60473, + lng: -0.06784, + }, + location: { city: 'London, UK', lat: 51.60473, lng: -0.06784 }, + }, + { + id: 39354794, + displayName: + "Guns N' Roses with Slash and Gary Clark Jr. at Tottenham Hotspur Stadium (July 2, 2022)", + type: 'Concert', + uri: 'https://www.songkick.com/concerts/39354794-guns-n-roses-at-tottenham-hotspur-stadium?utm_source=2356&utm_medium=partner', + status: 'ok', + popularity: 0.384729, + start: { + date: '2022-07-02', + datetime: '2022-07-02T17:00:00+0100', + time: '17:00:00', + }, + performance: [ + { + id: 74463947, + displayName: "Guns N' Roses", + billing: 'headline', + billingIndex: 1, + artist: { + id: 509644, + displayName: "Guns N' Roses", + uri: 'https://www.songkick.com/artists/509644-guns-n-roses?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: 'eeb1195b-f213-4ce1-b28c-8565211f8e43', + href: 'https://api.songkick.com/api/3.0/artists/mbid:eeb1195b-f213-4ce1-b28c-8565211f8e43.json', + }, + ], + }, + }, + { + id: 74866730, + displayName: 'Slash', + billing: 'support', + billingIndex: 2, + artist: { + id: 44022, + displayName: 'Slash', + uri: 'https://www.songkick.com/artists/44022-slash?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: '649b8590-b2c2-4519-a2d4-2f81f3828242', + href: 'https://api.songkick.com/api/3.0/artists/mbid:649b8590-b2c2-4519-a2d4-2f81f3828242.json', + }, + { + mbid: '5e7a7026-dfc5-4aba-8496-95140716f3db', + href: 'https://api.songkick.com/api/3.0/artists/mbid:5e7a7026-dfc5-4aba-8496-95140716f3db.json', + }, + { + mbid: 'ef2533cc-e8fa-4ba9-96a1-5a516e5bf850', + href: 'https://api.songkick.com/api/3.0/artists/mbid:ef2533cc-e8fa-4ba9-96a1-5a516e5bf850.json', + }, + { + mbid: 'a3068832-71ed-4367-8d74-c4f7979ee784', + href: 'https://api.songkick.com/api/3.0/artists/mbid:a3068832-71ed-4367-8d74-c4f7979ee784.json', + }, + { + mbid: 'e7ed88e7-3ea6-49de-a728-c4c2195a6fbd', + href: 'https://api.songkick.com/api/3.0/artists/mbid:e7ed88e7-3ea6-49de-a728-c4c2195a6fbd.json', + }, + ], + }, + }, + { + id: 75235131, + displayName: 'Gary Clark Jr.', + billing: 'support', + billingIndex: 3, + artist: { + id: 309236, + displayName: 'Gary Clark Jr.', + uri: 'https://www.songkick.com/artists/309236-gary-clark-jr?utm_source=2356&utm_medium=partner', + identifier: [ + { + mbid: 'c733c4e6-22a2-499d-ace7-17b832356aff', + href: 'https://api.songkick.com/api/3.0/artists/mbid:c733c4e6-22a2-499d-ace7-17b832356aff.json', + }, + { + mbid: '0c15371a-a7dd-474f-8092-2e13619ee239', + href: 'https://api.songkick.com/api/3.0/artists/mbid:0c15371a-a7dd-474f-8092-2e13619ee239.json', + }, + ], + }, + }, + ], + ageRestriction: null, + flaggedAsEnded: false, + venue: { + id: 4368336, + displayName: 'Tottenham Hotspur Stadium', + uri: 'https://www.songkick.com/venues/4368336-tottenham-hotspur-stadium?utm_source=2356&utm_medium=partner', + metroArea: { + displayName: 'London', + country: { displayName: 'UK' }, + id: 24426, + uri: 'https://www.songkick.com/metro-areas/24426-uk-london?utm_source=2356&utm_medium=partner', + }, + lat: 51.60473, + lng: -0.06784, + }, + location: { city: 'London, UK', lat: 51.60473, lng: -0.06784 }, + }, + ], + }, +]; diff --git a/src/components/EventDetails.js b/src/components/EventDetails.tsx similarity index 50% rename from src/components/EventDetails.js rename to src/components/EventDetails.tsx index aa7f0f3..9297ef0 100644 --- a/src/components/EventDetails.js +++ b/src/components/EventDetails.tsx @@ -1,18 +1,24 @@ -import React from "react"; -import { View, Text, StyleSheet, Image } from "react-native"; +import React from 'react'; +import { View, Text, StyleSheet, Image } from 'react-native'; +import { NativeStackScreenProps } from '@react-navigation/native-stack'; +import { RootStackParamList } from '../../App'; +import { Event } from '../calendarData'; +import { EventLikesButton } from './EventLikesButton'; -const EventDetails = ({ route }) => { +interface Props extends NativeStackScreenProps {} + +function EventDetails({ route }: Props) { const event = route.params.event; - const eventTitle = (eventData) => { + const eventTitle = (eventData: Event) => { return `${eventData.performance[0].displayName} at ${eventData.venue.displayName}`; }; - const formatEventDate = (date) => { - return new Date(date).toLocaleDateString("en-GB", { - month: "long", - day: "numeric", - year: "numeric", + const formatEventDate = (date: string) => { + return new Date(date).toLocaleDateString('en-GB', { + month: 'long', + day: 'numeric', + year: 'numeric', }); }; @@ -20,13 +26,13 @@ const EventDetails = ({ route }) => { {eventTitle(event)} {formatEventDate(event.start.date)} Line Up - {event.performance.map((artist) => { + {event.performance.map(artist => { return ( {artist.displayName} @@ -34,46 +40,47 @@ const EventDetails = ({ route }) => { ); })} + ); -}; +} const styles = StyleSheet.create({ screen: { flex: 1, - justifyContent: "flex-start", - alignItems: "center", + justifyContent: 'flex-start', + alignItems: 'center', padding: 12, }, heroImage: { - width: "100%", + width: '100%', height: 250, }, title: { fontSize: 24, - fontWeight: "700", - color: "black", + fontWeight: '700', + color: 'black', marginVertical: 12, }, date: { fontSize: 16, - fontWeight: "400", - color: "black", + fontWeight: '400', + color: 'black', marginBottom: 12, }, lineUpContainer: { - flexDirection: "column", + flexDirection: 'column', }, lineUpTitle: { fontSize: 16, - fontWeight: "700", - color: "black", + fontWeight: '700', + color: 'black', marginBottom: 6, }, artistName: { fontSize: 14, - fontWeight: "400", - color: "black", + fontWeight: '400', + color: 'black', }, }); diff --git a/src/components/EventLikesButton.tsx b/src/components/EventLikesButton.tsx new file mode 100644 index 0000000..8f4a04b --- /dev/null +++ b/src/components/EventLikesButton.tsx @@ -0,0 +1,28 @@ +import React from 'react'; +import { Image, TouchableOpacity } from 'react-native'; +import { Event } from '../calendarData'; +import { useEventLikes } from '../modules/eventLikes/hooks/useEventLikes'; + +interface Props { + eventId: Event['id']; +} + +export function EventLikesButton({ eventId }: Props) { + const { eventLikes, toggleEventLike } = useEventLikes(); + + return ( + toggleEventLike(eventId)}> + {eventLikes.includes(eventId) ? ( + + ) : ( + + )} + + ); +} diff --git a/src/components/UserCalendar.js b/src/components/UserCalendar.js deleted file mode 100644 index a758dd8..0000000 --- a/src/components/UserCalendar.js +++ /dev/null @@ -1,115 +0,0 @@ -import React from "react"; -import { - View, - SectionList, - StyleSheet, - Text, - TouchableOpacity, - Image, -} from "react-native"; - -import { calendarData } from "../calendarData"; - -const UserCalendar = ({ navigation }) => { - const headliner = (performances) => { - return performances[0].displayName; - }; - - const formatEventDate = (date) => { - return new Date(date).toLocaleDateString("en-GB", { - day: "2-digit", - month: "short", - year: "numeric", - }); - }; - - const renderEventItem = ({ item }) => { - return ( - - navigation.navigate("Event", { - event: item, - }) - } - > - - - {headliner(item.performance)} - - {formatEventDate(item.start.date)} - - {item.venue.displayName} - - - ); - }; - - const renderSectionHeader = ({ section: { title } }) => { - return {title}; - }; - - return ( - - item.id} - renderItem={renderEventItem} - renderSectionHeader={renderSectionHeader} - /> - - ); -}; - -const styles = StyleSheet.create({ - container: { - flex: 1, - backgroundColor: "white", - paddingHorizontal: 8, - }, - header: { - fontSize: 24, - fontWeight: "700", - color: "black", - backgroundColor: "white", - paddingVertical: 8, - }, - eventItem: { - flexDirection: "row", - alignItems: "center", - justifyContent: "flex-start", - padding: 12, - backgroundColor: "#E4E5E7", - marginVertical: 4, - borderRadius: 12, - }, - image: { - height: 54, - width: 54, - marginRight: 12, - }, - eventWrapper: { - flexDirection: "column", - alignItems: "flex-start", - }, - eventTitle: { - fontSize: 16, - fontWeight: "700", - color: "black", - }, - eventDate: { - fontSize: 14, - fontWeight: "400", - color: "black", - }, - eventVenue: { - fontSize: 14, - fontWeight: "400", - color: "black", - }, -}); - -export default UserCalendar; diff --git a/src/components/UserCalendar.tsx b/src/components/UserCalendar.tsx new file mode 100644 index 0000000..1ad05e3 --- /dev/null +++ b/src/components/UserCalendar.tsx @@ -0,0 +1,131 @@ +import React from 'react'; +import { + View, + SectionList, + StyleSheet, + Text, + TouchableOpacity, + Image, +} from 'react-native'; +import { NativeStackScreenProps } from '@react-navigation/native-stack'; +import { RootStackParamList } from '../../App'; + +import { calendarData, EventPerformance } from '../calendarData'; +import { useEventLikes } from '../modules/eventLikes/hooks/useEventLikes'; +// import { useQuery } from 'react-query'; +// import { fetchCalendarEvents } from '../api/calendar'; + +interface Props + extends NativeStackScreenProps {} + +export function UserCalendar({ navigation }: Props) { + const { eventLikes } = useEventLikes(); + // const { status, data } = useQuery('calendarEvents', fetchCalendarEvents); + + const headliner = (performances: EventPerformance[]) => { + return performances[0].displayName; + }; + + const formatEventDate = (date: string) => { + return new Date(date).toLocaleDateString('en-GB', { + day: '2-digit', + month: 'short', + year: 'numeric', + }); + }; + + return ( + + `${item.id}`} + renderItem={({ item }) => { + return ( + + navigation.navigate('Event', { + event: item, + }) + } + > + + + + {headliner(item.performance)} + + + {formatEventDate(item.start.date)} + + {item.venue.displayName} + + + {eventLikes.includes(item.id) ? ( + + ) : null} + + + ); + }} + renderSectionHeader={({ section }) => { + return {section.title}; + }} + /> + + ); +} + +const styles = StyleSheet.create({ + container: { + flex: 1, + backgroundColor: 'white', + paddingHorizontal: 8, + }, + header: { + fontSize: 24, + fontWeight: '700', + color: 'black', + backgroundColor: 'white', + paddingVertical: 8, + }, + eventItem: { + flexDirection: 'row', + alignItems: 'center', + justifyContent: 'flex-start', + padding: 12, + backgroundColor: '#E4E5E7', + marginVertical: 4, + borderRadius: 12, + }, + eventLiked: { + alignItems: 'flex-end', + flexGrow: 1, + }, + image: { + height: 54, + width: 54, + marginRight: 12, + }, + eventWrapper: { + flexDirection: 'column', + alignItems: 'flex-start', + }, + eventTitle: { + fontSize: 16, + fontWeight: '700', + color: 'black', + }, + eventDate: { + fontSize: 14, + fontWeight: '400', + color: 'black', + }, + eventVenue: { + fontSize: 14, + fontWeight: '400', + color: 'black', + }, +}); diff --git a/src/modules/eventLikes/context/eventLikesContext.ts b/src/modules/eventLikes/context/eventLikesContext.ts new file mode 100644 index 0000000..b9b0eba --- /dev/null +++ b/src/modules/eventLikes/context/eventLikesContext.ts @@ -0,0 +1,16 @@ +import { createContext } from 'react'; +import { Event } from '../../../calendarData'; + +export type EventLikesState = number[]; + +export const initialState: EventLikesState = []; + +export type EventLikesValues = { + eventLikes: EventLikesState; + toggleEventLike: (eventId: Event['id']) => void; +}; + +export const EventLikesContext = createContext({ + eventLikes: initialState, + toggleEventLike: () => {}, +}); diff --git a/src/modules/eventLikes/context/eventLikesProvider.tsx b/src/modules/eventLikes/context/eventLikesProvider.tsx new file mode 100644 index 0000000..f9e1b75 --- /dev/null +++ b/src/modules/eventLikes/context/eventLikesProvider.tsx @@ -0,0 +1,31 @@ +import React, { ReactNode, useState } from 'react'; +import { Event } from '../../../calendarData'; +import { + initialState, + EventLikesContext, + EventLikesState, +} from './eventLikesContext'; + +interface EventLikesProviderProps { + children: ReactNode; +} + +export const EventLikesProvider = ({ children }: EventLikesProviderProps) => { + const [eventLikes, setEventLikes] = useState(initialState); + + function toggleEventLike(eventId: Event['id']) { + const eventIndex = eventLikes.indexOf(eventId); + + setEventLikes( + eventIndex === -1 + ? [...eventLikes, eventId] + : eventLikes.filter(id => id !== eventId), + ); + } + + return ( + + {children} + + ); +}; diff --git a/src/modules/eventLikes/hooks/useEventLikes.ts b/src/modules/eventLikes/hooks/useEventLikes.ts new file mode 100644 index 0000000..2198c63 --- /dev/null +++ b/src/modules/eventLikes/hooks/useEventLikes.ts @@ -0,0 +1,22 @@ +import { useContext } from 'react'; +import { + EventLikesContext, + EventLikesValues, +} from '../context/eventLikesContext'; + +interface UseEventLikesHook extends EventLikesValues {} + +export const useEventLikes = (): UseEventLikesHook => { + const context = useContext(EventLikesContext); + + if (!context) { + throw new Error('useEventLikes must be used within an EventLikesProvider'); + } + + const { eventLikes, toggleEventLike } = context; + + return { + eventLikes, + toggleEventLike, + }; +}; diff --git a/tsconfig.json b/tsconfig.json new file mode 100644 index 0000000..b9567f6 --- /dev/null +++ b/tsconfig.json @@ -0,0 +1,6 @@ +{ + "extends": "expo/tsconfig.base", + "compilerOptions": { + "strict": true + } +} diff --git a/yarn.lock b/yarn.lock index c851d5c..920f36a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2,6 +2,13 @@ # yarn lockfile v1 +"@babel/code-frame@7.12.11": + version "7.12.11" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.12.11.tgz#f4ad435aa263db935b8f10f2c552d23fb716a63f" + integrity sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw== + dependencies: + "@babel/highlight" "^7.10.4" + "@babel/code-frame@^7.0.0", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.14.5", "@babel/code-frame@^7.15.8": version "7.15.8" resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.15.8.tgz#45990c47adadb00c03677baa89221f7cc23d2503" @@ -9,6 +16,13 @@ dependencies: "@babel/highlight" "^7.14.5" +"@babel/code-frame@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.16.7.tgz#44416b6bd7624b998f5b1af5d470856c40138789" + integrity sha512-iAXqUn8IIeBTNd72xsFlgaXHkMBMt6y4HJp1tIaK465CWLT/fG1aqB7ykr95gHHmlBdGbFeWWfyB4NJJ0nmeIg== + dependencies: + "@babel/highlight" "^7.16.7" + "@babel/code-frame@~7.10.4": version "7.10.4" resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.10.4.tgz#168da1a36e90da68ae8d49c0f1b48c7c6249213a" @@ -51,6 +65,15 @@ jsesc "^2.5.1" source-map "^0.5.0" +"@babel/generator@^7.17.0": + version "7.17.0" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.17.0.tgz#7bd890ba706cd86d3e2f727322346ffdbf98f65e" + integrity sha512-I3Omiv6FGOC29dtlZhkfXO6pgkmukJSlT26QjVvS1DGZe/NzSVCPG41X0tS21oZkJYlovfj9qDWgKP+Cn4bXxw== + dependencies: + "@babel/types" "^7.17.0" + jsesc "^2.5.1" + source-map "^0.5.0" + "@babel/helper-annotate-as-pure@^7.14.5", "@babel/helper-annotate-as-pure@^7.15.4": version "7.15.4" resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.15.4.tgz#3d0e43b00c5e49fdb6c57e421601a7a658d5f835" @@ -110,6 +133,13 @@ resolve "^1.14.2" semver "^6.1.2" +"@babel/helper-environment-visitor@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.16.7.tgz#ff484094a839bde9d89cd63cba017d7aae80ecd7" + integrity sha512-SLLb0AAn6PkUeAfKJCCOl9e1R53pQlGAfc4y4XuMRZfqeMYLE0dM1LMhqbGAlGQY0lfw5/ohoYWAe9V1yibRag== + dependencies: + "@babel/types" "^7.16.7" + "@babel/helper-explode-assignable-expression@^7.15.4": version "7.15.4" resolved "https://registry.yarnpkg.com/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.15.4.tgz#f9aec9d219f271eaf92b9f561598ca6b2682600c" @@ -126,6 +156,15 @@ "@babel/template" "^7.15.4" "@babel/types" "^7.15.4" +"@babel/helper-function-name@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.16.7.tgz#f1ec51551fb1c8956bc8dd95f38523b6cf375f8f" + integrity sha512-QfDfEnIUyyBSR3HtrtGECuZ6DAyCkYFp7GHl75vFtTnn6pjKeK0T1DB5lLkFvBea8MdaiUABx3osbgLyInoejA== + dependencies: + "@babel/helper-get-function-arity" "^7.16.7" + "@babel/template" "^7.16.7" + "@babel/types" "^7.16.7" + "@babel/helper-get-function-arity@^7.15.4": version "7.15.4" resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.15.4.tgz#098818934a137fce78b536a3e015864be1e2879b" @@ -133,6 +172,13 @@ dependencies: "@babel/types" "^7.15.4" +"@babel/helper-get-function-arity@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.16.7.tgz#ea08ac753117a669f1508ba06ebcc49156387419" + integrity sha512-flc+RLSOBXzNzVhcLu6ujeHUrD6tANAOU5ojrRx/as+tbzf8+stUCj7+IfRRoAbEZqj/ahXEMsjhOhgeZsrnTw== + dependencies: + "@babel/types" "^7.16.7" + "@babel/helper-hoist-variables@^7.15.4": version "7.15.4" resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.15.4.tgz#09993a3259c0e918f99d104261dfdfc033f178df" @@ -140,6 +186,13 @@ dependencies: "@babel/types" "^7.15.4" +"@babel/helper-hoist-variables@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.16.7.tgz#86bcb19a77a509c7b77d0e22323ef588fa58c246" + integrity sha512-m04d/0Op34H5v7pbZw6pSKP7weA6lsMvfiIAMeIvkY/R4xQtBSMFEigu9QTZ2qB/9l22vsxtM8a+Q8CzD255fg== + dependencies: + "@babel/types" "^7.16.7" + "@babel/helper-member-expression-to-functions@^7.15.4": version "7.15.4" resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.15.4.tgz#bfd34dc9bba9824a4658b0317ec2fd571a51e6ef" @@ -220,11 +273,23 @@ dependencies: "@babel/types" "^7.15.4" +"@babel/helper-split-export-declaration@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.16.7.tgz#0b648c0c42da9d3920d85ad585f2778620b8726b" + integrity sha512-xbWoy/PFoxSWazIToT9Sif+jJTlrMcndIsaOKvTA6u7QEo7ilkRZpjew18/W3c7nm8fXdUDXh02VXTbZ0pGDNw== + dependencies: + "@babel/types" "^7.16.7" + "@babel/helper-validator-identifier@^7.14.5", "@babel/helper-validator-identifier@^7.14.9", "@babel/helper-validator-identifier@^7.15.7": version "7.15.7" resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.15.7.tgz#220df993bfe904a4a6b02ab4f3385a5ebf6e2389" integrity sha512-K4JvCtQqad9OY2+yTU8w+E82ywk/fe+ELNlt1G8z3bVGlZfn/hOcQQsUhGhW/N+tb3fxK800wLtKOE/aM0m72w== +"@babel/helper-validator-identifier@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.16.7.tgz#e8c602438c4a8195751243da9031d1607d247cad" + integrity sha512-hsEnFemeiW4D08A5gUAZxLBTXpZ39P+a+DGDsHw1yxqyQ/jzFEnxf5uTEGp+3bzAbNOxU1paTgYS4ECU/IgfDw== + "@babel/helper-validator-option@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.14.5.tgz#6e72a1fff18d5dfcb878e1e62f1a021c4b72d5a3" @@ -258,11 +323,25 @@ chalk "^2.0.0" js-tokens "^4.0.0" +"@babel/highlight@^7.16.7": + version "7.16.10" + resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.16.10.tgz#744f2eb81579d6eea753c227b0f570ad785aba88" + integrity sha512-5FnTQLSLswEj6IkgVw5KusNUUFY9ZGqe/TRFnP/BKYHYgfh7tc+C7mwiy95/yNP7Dh9x580Vv8r7u7ZfTBFxdw== + dependencies: + "@babel/helper-validator-identifier" "^7.16.7" + chalk "^2.0.0" + js-tokens "^4.0.0" + "@babel/parser@^7.0.0", "@babel/parser@^7.1.0", "@babel/parser@^7.1.6", "@babel/parser@^7.14.7", "@babel/parser@^7.15.4", "@babel/parser@^7.15.8": version "7.15.8" resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.15.8.tgz#7bacdcbe71bdc3ff936d510c15dcea7cf0b99016" integrity sha512-BRYa3wcQnjS/nqI8Ac94pYYpJfojHVvVXJ97+IDCImX4Jc8W8Xv1+47enbruk+q1etOpsQNwnfFcNGw+gtPGxA== +"@babel/parser@^7.16.7", "@babel/parser@^7.17.0", "@babel/parser@^7.7.0": + version "7.17.0" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.17.0.tgz#f0ac33eddbe214e4105363bb17c3341c5ffcc43c" + integrity sha512-VKXSCQx5D8S04ej+Dqsr1CzYvvWgf20jIw2D+YhQCrIlr2UZGaDds23Y0xg75/skOxpLCRpUZvk/1EAVkGoDOw== + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@^7.15.4": version "7.15.4" resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.15.4.tgz#dbdeabb1e80f622d9f0b583efb2999605e0a567e" @@ -999,6 +1078,13 @@ pirates "^4.0.0" source-map-support "^0.5.16" +"@babel/runtime@^7.12.5", "@babel/runtime@^7.5.5", "@babel/runtime@^7.6.2", "@babel/runtime@^7.7.2": + version "7.17.2" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.17.2.tgz#66f68591605e59da47523c631416b18508779941" + integrity sha512-hzeyJyMA1YGdJTuWU0e/j4wKXrU4OMFvY2MSlaI9B7VQb0r5cxTE3EAIS2Q7Tn2RIcDkRvTA/v2JsAEhxe99uw== + dependencies: + regenerator-runtime "^0.13.4" + "@babel/runtime@^7.14.0", "@babel/runtime@^7.8.4": version "7.15.4" resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.15.4.tgz#fd17d16bfdf878e6dd02d19753a39fa8a8d9c84a" @@ -1015,6 +1101,15 @@ "@babel/parser" "^7.15.4" "@babel/types" "^7.15.4" +"@babel/template@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.16.7.tgz#8d126c8701fde4d66b264b3eba3d96f07666d155" + integrity sha512-I8j/x8kHUrbYRTUxXrrMbfCa7jxkE7tZre39x3kjr9hvI82cK1FfqLygotcWN5kdPGWcLdWMHpSBavse5tWw3w== + dependencies: + "@babel/code-frame" "^7.16.7" + "@babel/parser" "^7.16.7" + "@babel/types" "^7.16.7" + "@babel/traverse@^7.0.0", "@babel/traverse@^7.1.0", "@babel/traverse@^7.13.0", "@babel/traverse@^7.15.4": version "7.15.4" resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.15.4.tgz#ff8510367a144bfbff552d9e18e28f3e2889c22d" @@ -1030,6 +1125,22 @@ debug "^4.1.0" globals "^11.1.0" +"@babel/traverse@^7.7.0", "@babel/traverse@^7.7.4": + version "7.17.0" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.17.0.tgz#3143e5066796408ccc880a33ecd3184f3e75cd30" + integrity sha512-fpFIXvqD6kC7c7PUNnZ0Z8cQXlarCLtCUpt2S1Dx7PjoRtCFffvOkHHSom+m5HIxMZn5bIBVb71lhabcmjEsqg== + dependencies: + "@babel/code-frame" "^7.16.7" + "@babel/generator" "^7.17.0" + "@babel/helper-environment-visitor" "^7.16.7" + "@babel/helper-function-name" "^7.16.7" + "@babel/helper-hoist-variables" "^7.16.7" + "@babel/helper-split-export-declaration" "^7.16.7" + "@babel/parser" "^7.17.0" + "@babel/types" "^7.17.0" + debug "^4.1.0" + globals "^11.1.0" + "@babel/types@^7.0.0", "@babel/types@^7.14.9", "@babel/types@^7.15.4", "@babel/types@^7.15.6", "@babel/types@^7.3.0", "@babel/types@^7.3.3", "@babel/types@^7.4.4": version "7.15.6" resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.15.6.tgz#99abdc48218b2881c058dd0a7ab05b99c9be758f" @@ -1038,6 +1149,14 @@ "@babel/helper-validator-identifier" "^7.14.9" to-fast-properties "^2.0.0" +"@babel/types@^7.16.7", "@babel/types@^7.17.0", "@babel/types@^7.7.0": + version "7.17.0" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.17.0.tgz#a826e368bccb6b3d84acd76acad5c0d87342390b" + integrity sha512-TmKSNO4D5rzhL5bjWFcVHHLETzfQ/AmbKpKPOSjlP0WoHZ6L911fgoOKY4Alp/emzG4cHJdyN49zpgkbXFEHHw== + dependencies: + "@babel/helper-validator-identifier" "^7.16.7" + to-fast-properties "^2.0.0" + "@bcoe/v8-coverage@^0.2.3": version "0.2.3" resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" @@ -1051,6 +1170,21 @@ exec-sh "^0.3.2" minimist "^1.2.0" +"@eslint/eslintrc@^0.4.3": + version "0.4.3" + resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-0.4.3.tgz#9e42981ef035beb3dd49add17acb96e8ff6f394c" + integrity sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw== + dependencies: + ajv "^6.12.4" + debug "^4.1.1" + espree "^7.3.0" + globals "^13.9.0" + ignore "^4.0.6" + import-fresh "^3.2.1" + js-yaml "^3.13.1" + minimatch "^3.0.4" + strip-json-comments "^3.1.1" + "@expo/config-plugins@3.1.0": version "3.1.0" resolved "https://registry.yarnpkg.com/@expo/config-plugins/-/config-plugins-3.1.0.tgz#0752ff33c5eab21cf42034a44e79df97f0f867f8" @@ -1180,6 +1314,20 @@ dependencies: "@hapi/hoek" "^9.0.0" +"@humanwhocodes/config-array@^0.5.0": + version "0.5.0" + resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.5.0.tgz#1407967d4c6eecd7388f83acf1eaf4d0c6e58ef9" + integrity sha512-FagtKFz74XrTl7y6HCzQpwDfXP0yhxe9lHLD1UZxjvZIcbyRz8zTFF/yYNfSfzU414eDwZ1SrO0Qvtyf+wFMQg== + dependencies: + "@humanwhocodes/object-schema" "^1.2.0" + debug "^4.1.1" + minimatch "^3.0.4" + +"@humanwhocodes/object-schema@^1.2.0": + version "1.2.1" + resolved "https://registry.yarnpkg.com/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz#b520529ec21d8e5945a1851dfd1c32e94e39ff45" + integrity sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA== + "@istanbuljs/load-nyc-config@^1.0.0": version "1.1.0" resolved "https://registry.yarnpkg.com/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz#fd3db1d59ecf7cf121e80650bb86712f9b55eced" @@ -1385,6 +1533,15 @@ source-map "^0.6.1" write-file-atomic "^3.0.0" +"@jest/types@^24.9.0": + version "24.9.0" + resolved "https://registry.yarnpkg.com/@jest/types/-/types-24.9.0.tgz#63cb26cb7500d069e5a389441a7c6ab5e909fc59" + integrity sha512-XKK7ze1apu5JWQ5eZjHITP66AX+QsLlbaJRBGYr8pNzwcAE2JVkwnf0yqjHTsDRcjR0mujy/NmZMXw5kl+kGBw== + dependencies: + "@types/istanbul-lib-coverage" "^2.0.0" + "@types/istanbul-reports" "^1.1.1" + "@types/yargs" "^13.0.0" + "@jest/types@^26.6.2": version "26.6.2" resolved "https://registry.yarnpkg.com/@jest/types/-/types-26.6.2.tgz#bef5a532030e1d88a2f5a6d933f84e97226ed48e" @@ -1552,6 +1709,30 @@ sudo-prompt "^9.0.0" wcwidth "^1.0.1" +"@react-native-community/eslint-config@^3.0.1": + version "3.0.1" + resolved "https://registry.yarnpkg.com/@react-native-community/eslint-config/-/eslint-config-3.0.1.tgz#c45968f1214139fe747a7aebdba06c4fa2a4d018" + integrity sha512-h0MRsaHkyfoQjEiTjG3a+Ie/p6AmQNAHXpYrVhtYMZNRF26TCwNOsQNp4/13QhKAq6vhS8EJppge0P43GnPmfQ== + dependencies: + "@react-native-community/eslint-plugin" "^1.1.0" + "@typescript-eslint/eslint-plugin" "^4.22.1" + "@typescript-eslint/parser" "^4.22.1" + babel-eslint "^10.1.0" + eslint-config-prettier "^6.10.1" + eslint-plugin-eslint-comments "^3.1.2" + eslint-plugin-flowtype "2.50.3" + eslint-plugin-jest "22.4.1" + eslint-plugin-prettier "3.1.2" + eslint-plugin-react "^7.20.0" + eslint-plugin-react-hooks "^4.0.7" + eslint-plugin-react-native "^3.10.0" + prettier "^2.0.2" + +"@react-native-community/eslint-plugin@^1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@react-native-community/eslint-plugin/-/eslint-plugin-1.1.0.tgz#e42b1bef12d2415411519fd528e64b593b1363dc" + integrity sha512-W/J0fNYVO01tioHjvYWQ9m6RgndVtbElzYozBq1ZPrHO/iCzlqoySHl4gO/fpCl9QEFjvJfjPgtPMTMlsoq5DQ== + "@react-native/assets@1.0.0": version "1.0.0" resolved "https://registry.yarnpkg.com/@react-native/assets/-/assets-1.0.0.tgz#c6f9bf63d274bafc8e970628de24986b30a55c8e" @@ -1643,6 +1824,25 @@ dependencies: "@sinonjs/commons" "^1.7.0" +"@testing-library/jest-native@^4.0.4": + version "4.0.4" + resolved "https://registry.yarnpkg.com/@testing-library/jest-native/-/jest-native-4.0.4.tgz#25e2046896118f887683202a6e5fd8a4056131cd" + integrity sha512-4q5FeTFyFgPCmQH18uMJsZkVnYvBtK24yhSfbd9hQi0SZzCpbjSeQQcsGXIaX+WjWcMeeip8B7NUvZmLhGHiZw== + dependencies: + chalk "^2.4.1" + jest-diff "^24.0.0" + jest-matcher-utils "^24.0.0" + pretty-format "^27.3.1" + ramda "^0.26.1" + redent "^2.0.0" + +"@testing-library/react-native@^9.0.0": + version "9.0.0" + resolved "https://registry.yarnpkg.com/@testing-library/react-native/-/react-native-9.0.0.tgz#e9c63411e93d2e8e70d744b12aeb78c58025c5fc" + integrity sha512-UE3FWOsDUr+2l3Pg6JTpn2rV5uzYsxIus6ZyN1uMOTmn30bIuBBDDlWQtdWGJx92YcY4xgJA4vViCEKv7wVzJA== + dependencies: + pretty-format "^27.0.0" + "@tootallnate/once@1": version "1.1.2" resolved "https://registry.yarnpkg.com/@tootallnate/once/-/once-1.1.2.tgz#ccb91445360179a04e7fe6aff78c00ffc1eeaf82" @@ -1659,6 +1859,17 @@ "@types/babel__template" "*" "@types/babel__traverse" "*" +"@types/babel__core@^7.1.18": + version "7.1.18" + resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.18.tgz#1a29abcc411a9c05e2094c98f9a1b7da6cdf49f8" + integrity sha512-S7unDjm/C7z2A2R9NzfKCK1I+BAALDtxEmsJBwlB3EzNfb929ykjL++1CK9LO++EIp2fQrC8O+BwjKvz6UeDyQ== + dependencies: + "@babel/parser" "^7.1.0" + "@babel/types" "^7.0.0" + "@types/babel__generator" "*" + "@types/babel__template" "*" + "@types/babel__traverse" "*" + "@types/babel__generator@*": version "7.6.3" resolved "https://registry.yarnpkg.com/@types/babel__generator/-/babel__generator-7.6.3.tgz#f456b4b2ce79137f768aa130d2423d2f0ccfaba5" @@ -1681,6 +1892,19 @@ dependencies: "@babel/types" "^7.3.0" +"@types/eslint@^8.4.1": + version "8.4.1" + resolved "https://registry.yarnpkg.com/@types/eslint/-/eslint-8.4.1.tgz#c48251553e8759db9e656de3efc846954ac32304" + integrity sha512-GE44+DNEyxxh2Kc6ro/VkIj+9ma0pO0bwv9+uHSyBrikYOHr8zYcdPvnBOp1aw8s+CjRvuSx7CyWqRrNFQ59mA== + dependencies: + "@types/estree" "*" + "@types/json-schema" "*" + +"@types/estree@*": + version "0.0.51" + resolved "https://registry.yarnpkg.com/@types/estree/-/estree-0.0.51.tgz#cfd70924a25a3fd32b218e5e420e6897e1ac4f40" + integrity sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ== + "@types/graceful-fs@^4.1.2": version "4.1.5" resolved "https://registry.yarnpkg.com/@types/graceful-fs/-/graceful-fs-4.1.5.tgz#21ffba0d98da4350db64891f92a9e5db3cdb4e15" @@ -1700,6 +1924,14 @@ dependencies: "@types/istanbul-lib-coverage" "*" +"@types/istanbul-reports@^1.1.1": + version "1.1.2" + resolved "https://registry.yarnpkg.com/@types/istanbul-reports/-/istanbul-reports-1.1.2.tgz#e875cc689e47bce549ec81f3df5e6f6f11cfaeb2" + integrity sha512-P/W9yOX/3oPZSpaYOCQzGqgCQRXn0FFO/V8bWrCQs+wLmvVVxk6CRBXALEvNs9OHIatlnlFokfhuDo2ug01ciw== + dependencies: + "@types/istanbul-lib-coverage" "*" + "@types/istanbul-lib-report" "*" + "@types/istanbul-reports@^3.0.0": version "3.0.1" resolved "https://registry.yarnpkg.com/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz#9153fe98bba2bd565a63add9436d6f0d7f8468ff" @@ -1707,6 +1939,19 @@ dependencies: "@types/istanbul-lib-report" "*" +"@types/jest@^27.4.0": + version "27.4.0" + resolved "https://registry.yarnpkg.com/@types/jest/-/jest-27.4.0.tgz#037ab8b872067cae842a320841693080f9cb84ed" + integrity sha512-gHl8XuC1RZ8H2j5sHv/JqsaxXkDDM9iDOgu0Wp8sjs4u/snb2PVehyWXJPr+ORA0RPpgw231mnutWI1+0hgjIQ== + dependencies: + jest-diff "^27.0.0" + pretty-format "^27.0.0" + +"@types/json-schema@*", "@types/json-schema@^7.0.7": + version "7.0.9" + resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.9.tgz#97edc9037ea0c38585320b28964dde3b39e4660d" + integrity sha512-qcUXuemtEu+E5wZSJHNxUXeCZhAfXKQ41D+duX+VYPde7xyEVZci+/oXKJL13tnRs9lR2pr4fod59GT6/X1/yQ== + "@types/node@*": version "16.11.6" resolved "https://registry.yarnpkg.com/@types/node/-/node-16.11.6.tgz#6bef7a2a0ad684cf6e90fcfe31cecabd9ce0a3ae" @@ -1722,6 +1967,54 @@ resolved "https://registry.yarnpkg.com/@types/prettier/-/prettier-2.4.1.tgz#e1303048d5389563e130f5bdd89d37a99acb75eb" integrity sha512-Fo79ojj3vdEZOHg3wR9ksAMRz4P3S5fDB5e/YWZiFnyFQI1WY2Vftu9XoXVVtJfxB7Bpce/QTqWSSntkz2Znrw== +"@types/prop-types@*": + version "15.7.4" + resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.4.tgz#fcf7205c25dff795ee79af1e30da2c9790808f11" + integrity sha512-rZ5drC/jWjrArrS8BR6SIr4cWpW09RNTYt9AMZo3Jwwif+iacXAqgVjm0B0Bv/S1jhDXKHqRVNCbACkJ89RAnQ== + +"@types/react-dom@17.0.1": + version "17.0.1" + resolved "https://registry.yarnpkg.com/@types/react-dom/-/react-dom-17.0.1.tgz#d92d77d020bfb083e07cc8e0ac9f933599a4d56a" + integrity sha512-yIVyopxQb8IDZ7SOHeTovurFq+fXiPICa+GV3gp0Xedsl+MwQlMLKmvrnEjFbQxjliH5YVAEWFh975eVNmKj7Q== + dependencies: + "@types/react" "*" + +"@types/react-native@0.64.2": + version "0.64.2" + resolved "https://registry.yarnpkg.com/@types/react-native/-/react-native-0.64.2.tgz#2e344aeec0b4eb21fb9eaa0ed8973245c5601d56" + integrity sha512-w2y04h+GVLY+OMlFSmq4adPuS51XtEp1yUr83OvXf+moMQ4zDG1Q07HhyvYDXdc+BSS9ANHySBqVCz0hFxli9Q== + dependencies: + "@types/react" "*" + +"@types/react-test-renderer@^17.0.1": + version "17.0.1" + resolved "https://registry.yarnpkg.com/@types/react-test-renderer/-/react-test-renderer-17.0.1.tgz#3120f7d1c157fba9df0118dae20cb0297ee0e06b" + integrity sha512-3Fi2O6Zzq/f3QR9dRnlnHso9bMl7weKCviFmfF6B4LS1Uat6Hkm15k0ZAQuDz+UBq6B3+g+NM6IT2nr5QgPzCw== + dependencies: + "@types/react" "*" + +"@types/react@*": + version "17.0.39" + resolved "https://registry.yarnpkg.com/@types/react/-/react-17.0.39.tgz#d0f4cde092502a6db00a1cded6e6bf2abb7633ce" + integrity sha512-UVavlfAxDd/AgAacMa60Azl7ygyQNRwC/DsHZmKgNvPmRR5p70AJ5Q9EAmL2NWOJmeV+vVUI4IAP7GZrN8h8Ug== + dependencies: + "@types/prop-types" "*" + "@types/scheduler" "*" + csstype "^3.0.2" + +"@types/react@17.0.1": + version "17.0.1" + resolved "https://registry.yarnpkg.com/@types/react/-/react-17.0.1.tgz#eb1f1407dea8da3bc741879c1192aa703ab9975b" + integrity sha512-w8t9f53B2ei4jeOqf/gxtc2Sswnc3LBK5s0DyJcg5xd10tMHXts2N31cKjWfH9IC/JvEPa/YF1U4YeP1t4R6HQ== + dependencies: + "@types/prop-types" "*" + csstype "^3.0.2" + +"@types/scheduler@*": + version "0.16.2" + resolved "https://registry.yarnpkg.com/@types/scheduler/-/scheduler-0.16.2.tgz#1a62f89525723dde24ba1b01b092bf5df8ad4d39" + integrity sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew== + "@types/stack-utils@^2.0.0": version "2.0.1" resolved "https://registry.yarnpkg.com/@types/stack-utils/-/stack-utils-2.0.1.tgz#20f18294f797f2209b5f65c8e3b5c8e8261d127c" @@ -1732,6 +2025,13 @@ resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-20.2.1.tgz#3b9ce2489919d9e4fea439b76916abc34b2df129" integrity sha512-7tFImggNeNBVMsn0vLrpn1H1uPrUBdnARPTpZoitY37ZrdJREzf7I16tMrlK3hen349gr1NYh8CmZQa7CTG6Aw== +"@types/yargs@^13.0.0": + version "13.0.12" + resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-13.0.12.tgz#d895a88c703b78af0465a9de88aa92c61430b092" + integrity sha512-qCxJE1qgz2y0hA4pIxjBR+PelCH0U5CK1XJXFwCNqfmliatKp47UCXXE9Dyk1OXBDLvsCF57TqQEJaeLfDYEOQ== + dependencies: + "@types/yargs-parser" "*" + "@types/yargs@^15.0.0": version "15.0.14" resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-15.0.14.tgz#26d821ddb89e70492160b66d10a0eb6df8f6fb06" @@ -1746,6 +2046,76 @@ dependencies: "@types/yargs-parser" "*" +"@typescript-eslint/eslint-plugin@^4.22.1": + version "4.33.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.33.0.tgz#c24dc7c8069c7706bc40d99f6fa87edcb2005276" + integrity sha512-aINiAxGVdOl1eJyVjaWn/YcVAq4Gi/Yo35qHGCnqbWVz61g39D0h23veY/MA0rFFGfxK7TySg2uwDeNv+JgVpg== + dependencies: + "@typescript-eslint/experimental-utils" "4.33.0" + "@typescript-eslint/scope-manager" "4.33.0" + debug "^4.3.1" + functional-red-black-tree "^1.0.1" + ignore "^5.1.8" + regexpp "^3.1.0" + semver "^7.3.5" + tsutils "^3.21.0" + +"@typescript-eslint/experimental-utils@4.33.0": + version "4.33.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/experimental-utils/-/experimental-utils-4.33.0.tgz#6f2a786a4209fa2222989e9380b5331b2810f7fd" + integrity sha512-zeQjOoES5JFjTnAhI5QY7ZviczMzDptls15GFsI6jyUOq0kOf9+WonkhtlIhh0RgHRnqj5gdNxW5j1EvAyYg6Q== + dependencies: + "@types/json-schema" "^7.0.7" + "@typescript-eslint/scope-manager" "4.33.0" + "@typescript-eslint/types" "4.33.0" + "@typescript-eslint/typescript-estree" "4.33.0" + eslint-scope "^5.1.1" + eslint-utils "^3.0.0" + +"@typescript-eslint/parser@^4.22.1": + version "4.33.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-4.33.0.tgz#dfe797570d9694e560528d18eecad86c8c744899" + integrity sha512-ZohdsbXadjGBSK0/r+d87X0SBmKzOq4/S5nzK6SBgJspFo9/CUDJ7hjayuze+JK7CZQLDMroqytp7pOcFKTxZA== + dependencies: + "@typescript-eslint/scope-manager" "4.33.0" + "@typescript-eslint/types" "4.33.0" + "@typescript-eslint/typescript-estree" "4.33.0" + debug "^4.3.1" + +"@typescript-eslint/scope-manager@4.33.0": + version "4.33.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-4.33.0.tgz#d38e49280d983e8772e29121cf8c6e9221f280a3" + integrity sha512-5IfJHpgTsTZuONKbODctL4kKuQje/bzBRkwHE8UOZ4f89Zeddg+EGZs8PD8NcN4LdM3ygHWYB3ukPAYjvl/qbQ== + dependencies: + "@typescript-eslint/types" "4.33.0" + "@typescript-eslint/visitor-keys" "4.33.0" + +"@typescript-eslint/types@4.33.0": + version "4.33.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-4.33.0.tgz#a1e59036a3b53ae8430ceebf2a919dc7f9af6d72" + integrity sha512-zKp7CjQzLQImXEpLt2BUw1tvOMPfNoTAfb8l51evhYbOEEzdWyQNmHWWGPR6hwKJDAi+1VXSBmnhL9kyVTTOuQ== + +"@typescript-eslint/typescript-estree@4.33.0": + version "4.33.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-4.33.0.tgz#0dfb51c2908f68c5c08d82aefeaf166a17c24609" + integrity sha512-rkWRY1MPFzjwnEVHsxGemDzqqddw2QbTJlICPD9p9I9LfsO8fdmfQPOX3uKfUaGRDFJbfrtm/sXhVXN4E+bzCA== + dependencies: + "@typescript-eslint/types" "4.33.0" + "@typescript-eslint/visitor-keys" "4.33.0" + debug "^4.3.1" + globby "^11.0.3" + is-glob "^4.0.1" + semver "^7.3.5" + tsutils "^3.21.0" + +"@typescript-eslint/visitor-keys@4.33.0": + version "4.33.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-4.33.0.tgz#2a22f77a41604289b7a186586e9ec48ca92ef1dd" + integrity sha512-uqi/2aSz9g2ftcHWf8uLPJA70rUv6yuMW5Bohw+bwcuzaxQIHaKFZCKGoGXIrc9vkTJ3+0txM73K0Hq3d5wgIg== + dependencies: + "@typescript-eslint/types" "4.33.0" + eslint-visitor-keys "^2.0.0" + "@xmldom/xmldom@~0.7.0": version "0.7.5" resolved "https://registry.yarnpkg.com/@xmldom/xmldom/-/xmldom-0.7.5.tgz#09fa51e356d07d0be200642b0e4f91d8e6dd408d" @@ -1784,12 +2154,17 @@ acorn-globals@^6.0.0: acorn "^7.1.1" acorn-walk "^7.1.1" +acorn-jsx@^5.3.1: + version "5.3.2" + resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937" + integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== + acorn-walk@^7.1.1: version "7.2.0" resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-7.2.0.tgz#0de889a601203909b0fbe07b8938dc21d2e967bc" integrity sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA== -acorn@^7.1.1: +acorn@^7.1.1, acorn@^7.4.0: version "7.4.1" resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== @@ -1806,11 +2181,36 @@ agent-base@6: dependencies: debug "4" +ajv@^6.10.0, ajv@^6.12.4: + version "6.12.6" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" + integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== + dependencies: + fast-deep-equal "^3.1.1" + fast-json-stable-stringify "^2.0.0" + json-schema-traverse "^0.4.1" + uri-js "^4.2.2" + +ajv@^8.0.1: + version "8.10.0" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.10.0.tgz#e573f719bd3af069017e3b66538ab968d040e54d" + integrity sha512-bzqAEZOjkrUMl2afH8dknrq5KEk2SrwdBROR+vH1EKVQTqaUbJVPdc/gEdggTMM0Se+s+Ja4ju4TlNcStKl2Hw== + dependencies: + fast-deep-equal "^3.1.1" + json-schema-traverse "^1.0.0" + require-from-string "^2.0.2" + uri-js "^4.2.2" + anser@^1.4.9: version "1.4.10" resolved "https://registry.yarnpkg.com/anser/-/anser-1.4.10.tgz#befa3eddf282684bd03b63dcda3927aef8c2e35b" integrity sha512-hCv9AqTQ8ycjpSd3upOJd7vFwW1JaoYQ7tpham03GJ1ca8/65rqn0RpaWpItOAd6ylW9wAw6luXYPJIyPFVOww== +ansi-colors@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.1.tgz#cbb9ae256bf750af1eab344f229aa27fe94ba348" + integrity sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA== + ansi-escapes@^4.2.1, ansi-escapes@^4.3.0, ansi-escapes@^4.3.1: version "4.3.2" resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.2.tgz#6b2291d1db7d98b6521d5f1efa42d0f3a9feb65e" @@ -1827,7 +2227,7 @@ ansi-fragments@^0.2.1: slice-ansi "^2.0.0" strip-ansi "^5.0.0" -ansi-regex@^4.1.0: +ansi-regex@^4.0.0, ansi-regex@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-4.1.0.tgz#8b9f8f08cf1acb843756a839ca8c7e3168c51997" integrity sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg== @@ -1914,6 +2314,17 @@ array-find-index@^1.0.2: resolved "https://registry.yarnpkg.com/array-find-index/-/array-find-index-1.0.2.tgz#df010aa1287e164bbda6f9723b0a96a1ec4187a1" integrity sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E= +array-includes@^3.1.3, array-includes@^3.1.4: + version "3.1.4" + resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.1.4.tgz#f5b493162c760f3539631f005ba2bb46acb45ba9" + integrity sha512-ZTNSQkmWumEbiHO2GF4GmWxYVTiQyJy2XOTa15sdQSrvKn7l+180egQMqlrMOUMCyLMD7pmyQe4mMDUT6Behrw== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.3" + es-abstract "^1.19.1" + get-intrinsic "^1.1.1" + is-string "^1.0.7" + array-map@~0.0.0: version "0.0.0" resolved "https://registry.yarnpkg.com/array-map/-/array-map-0.0.0.tgz#88a2bab73d1cf7bcd5c1b118a003f66f665fa662" @@ -1924,11 +2335,25 @@ array-reduce@~0.0.0: resolved "https://registry.yarnpkg.com/array-reduce/-/array-reduce-0.0.0.tgz#173899d3ffd1c7d9383e4479525dbe278cab5f2b" integrity sha1-FziZ0//Rx9k4PkR5Ul2+J4yrXys= +array-union@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d" + integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw== + array-unique@^0.3.2: version "0.3.2" resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428" integrity sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg= +array.prototype.flatmap@^1.2.5: + version "1.2.5" + resolved "https://registry.yarnpkg.com/array.prototype.flatmap/-/array.prototype.flatmap-1.2.5.tgz#908dc82d8a406930fdf38598d51e7411d18d4446" + integrity sha512-08u6rVyi1Lj7oqWbS9nUxliETrtIROT4XGTA4D/LWGten6E3ocm7cy9SIrmNHOL5XVbVuckUp3X6Xyg8/zpvHA== + dependencies: + call-bind "^1.0.0" + define-properties "^1.1.3" + es-abstract "^1.19.0" + asap@~2.0.3, asap@~2.0.6: version "2.0.6" resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46" @@ -1951,6 +2376,11 @@ astral-regex@^1.0.0: resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-1.0.0.tgz#6c8c3fb827dd43ee3918f27b82782ab7658a6fd9" integrity sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg== +astral-regex@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-2.0.0.tgz#483143c567aeed4785759c0865786dc77d7d2e31" + integrity sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ== + async-limiter@~1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/async-limiter/-/async-limiter-1.0.1.tgz#dd379e94f0db8310b08291f9d64c3209766617fd" @@ -1983,6 +2413,18 @@ babel-core@^7.0.0-bridge.0: resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-7.0.0-bridge.0.tgz#95a492ddd90f9b4e9a4a1da14eb335b87b634ece" integrity sha512-poPX9mZH/5CSanm50Q+1toVci6pv5KSRv/5TWCwtzQS5XEwn40BcCrgIeMFWP9CKKIniKXNxoIOnOq4VVlGXhg== +babel-eslint@^10.1.0: + version "10.1.0" + resolved "https://registry.yarnpkg.com/babel-eslint/-/babel-eslint-10.1.0.tgz#6968e568a910b78fb3779cdd8b6ac2f479943232" + integrity sha512-ifWaTHQ0ce+448CYop8AdrQiBsGrnC+bMgfyKFdi6EsPLTAWG+QfyDeM6OH+FmWnKvEq5NnBMLvlBUPKQZoDSg== + dependencies: + "@babel/code-frame" "^7.0.0" + "@babel/parser" "^7.7.0" + "@babel/traverse" "^7.7.0" + "@babel/types" "^7.7.0" + eslint-visitor-keys "^1.0.0" + resolve "^1.12.0" + babel-jest@^26.6.3: version "26.6.3" resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-26.6.3.tgz#d87d25cb0037577a0c89f82e5755c5d293c01056" @@ -2070,6 +2512,11 @@ babel-plugin-syntax-trailing-function-commas@^7.0.0-beta.0: resolved "https://registry.yarnpkg.com/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-7.0.0-beta.0.tgz#aa213c1435e2bffeb6fca842287ef534ad05d5cf" integrity sha512-Xj9XuRuz3nTSbaTXWv3itLOcxyF4oPD8douBBmj7U9BBC6nEBYfyOJYQMf/8PJAFotC62UY5dFfIGEPr7WswzQ== +babel-plugin-transform-inline-environment-variables@^0.4.3: + version "0.4.3" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-inline-environment-variables/-/babel-plugin-transform-inline-environment-variables-0.4.3.tgz#a3b09883353be8b5e2336e3ff1ef8a5d93f9c489" + integrity sha1-o7CYgzU76LXiM24/8e+KXZP5xIk= + babel-preset-current-node-syntax@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz#b4399239b89b2a011f9ddbe3e4f401fc40cff73b" @@ -2169,6 +2616,11 @@ big-integer@1.6.x: resolved "https://registry.yarnpkg.com/big-integer/-/big-integer-1.6.50.tgz#299a4be8bd441c73dcc492ed46b7169c34e92e70" integrity sha512-+O2uoQWFRo8ysZNo/rjtri2jIwjr3XfeAgRjAUADRqGG+ZITvyn8J1kvXLTaKVr3hhGXk+f23tKfdzmklVM9vQ== +big-integer@^1.6.16: + version "1.6.51" + resolved "https://registry.yarnpkg.com/big-integer/-/big-integer-1.6.51.tgz#0df92a5d9880560d3ff2d5fd20245c889d130686" + integrity sha512-GPEid2Y9QU1Exl1rpO9B2IPJGHPSupF5GnVIP0blYvNOMer2bTvSWs1jGOUg04hTmu67nmLsQ9TBo1puaotBHg== + blueimp-md5@^2.10.0: version "2.19.0" resolved "https://registry.yarnpkg.com/blueimp-md5/-/blueimp-md5-2.19.0.tgz#b53feea5498dcb53dc6ec4b823adb84b729c4af0" @@ -2219,6 +2671,20 @@ braces@^3.0.1: dependencies: fill-range "^7.0.1" +broadcast-channel@^3.4.1: + version "3.7.0" + resolved "https://registry.yarnpkg.com/broadcast-channel/-/broadcast-channel-3.7.0.tgz#2dfa5c7b4289547ac3f6705f9c00af8723889937" + integrity sha512-cIAKJXAxGJceNZGTZSBzMxzyOn72cVgPnKx4dc6LRjQgbaJUQqhy5rzL3zbMxkMWsGKkv2hSFkPRMEXfoMZ2Mg== + dependencies: + "@babel/runtime" "^7.7.2" + detect-node "^2.1.0" + js-sha3 "0.8.0" + microseconds "0.2.0" + nano-time "1.0.0" + oblivious-set "1.0.0" + rimraf "3.0.2" + unload "2.2.0" + browser-process-hrtime@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz#3c9b4b7d782c8121e56f10106d84c0d0ffc94626" @@ -2285,7 +2751,7 @@ cache-base@^1.0.1: union-value "^1.0.0" unset-value "^1.0.0" -call-bind@^1.0.0: +call-bind@^1.0.0, call-bind@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.2.tgz#b1d4e89e688119c3c9a903ad30abb2f6a919be3c" integrity sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA== @@ -2339,7 +2805,7 @@ capture-exit@^2.0.0: dependencies: rsvp "^4.8.4" -chalk@^2.0.0, chalk@^2.0.1, chalk@^2.4.2: +chalk@^2.0.0, chalk@^2.0.1, chalk@^2.4.1, chalk@^2.4.2: version "2.4.2" resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== @@ -2629,7 +3095,7 @@ cross-spawn@^6.0.0, cross-spawn@^6.0.5: shebang-command "^1.2.0" which "^1.2.9" -cross-spawn@^7.0.0: +cross-spawn@^7.0.0, cross-spawn@^7.0.2: version "7.0.3" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== @@ -2663,6 +3129,11 @@ cssstyle@^2.3.0: dependencies: cssom "~0.3.6" +csstype@^3.0.2: + version "3.0.10" + resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.0.10.tgz#2ad3a7bed70f35b965707c092e5f30b327c290e5" + integrity sha512-2u44ZG2OcNUO9HDp/Jl8C07x6pU/eTR3ncV91SiK3dhG9TWvRVsCoJw14Ckx5DgWkzGA3waZWO3d7pgqpUI/XA== + data-urls@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/data-urls/-/data-urls-2.0.0.tgz#156485a72963a970f5d5821aaf642bef2bf2db9b" @@ -2691,6 +3162,13 @@ debug@4, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1: dependencies: ms "2.1.2" +debug@^4.0.1: + version "4.3.3" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.3.tgz#04266e0b70a98d4462e6e288e38259213332b664" + integrity sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q== + dependencies: + ms "2.1.2" + decamelize@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" @@ -2706,7 +3184,7 @@ decode-uri-component@^0.2.0: resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545" integrity sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU= -deep-is@~0.1.3: +deep-is@^0.1.3, deep-is@~0.1.3: version "0.1.4" resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.4.tgz#a6f2dce612fadd2ef1f519b73551f17e85199831" integrity sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ== @@ -2782,11 +3260,47 @@ detect-newline@^3.0.0: resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-3.1.0.tgz#576f5dfc63ae1a192ff192d8ad3af6308991b651" integrity sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA== +detect-node@^2.0.4, detect-node@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/detect-node/-/detect-node-2.1.0.tgz#c9c70775a49c3d03bc2c06d9a73be550f978f8b1" + integrity sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g== + +diff-sequences@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-24.9.0.tgz#5715d6244e2aa65f48bba0bc972db0b0b11e95b5" + integrity sha512-Dj6Wk3tWyTE+Fo1rW8v0Xhwk80um6yFYKbuAxc9c3EZxIHFDYwbi34Uk42u1CdnIiVorvt4RmlSDjIPyzGC2ew== + diff-sequences@^26.6.2: version "26.6.2" resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-26.6.2.tgz#48ba99157de1923412eed41db6b6d4aa9ca7c0b1" integrity sha512-Mv/TDa3nZ9sbc5soK+OoA74BsS3mL37yixCvUAQkiuA4Wz6YtwP/K47n2rv2ovzHZvoiQeA5FTQOschKkEwB0Q== +diff-sequences@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-27.5.1.tgz#eaecc0d327fd68c8d9672a1e64ab8dccb2ef5327" + integrity sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ== + +dir-glob@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f" + integrity sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA== + dependencies: + path-type "^4.0.0" + +doctrine@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-2.1.0.tgz#5cd01fc101621b42c4cd7f5d1a66243716d3f39d" + integrity sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw== + dependencies: + esutils "^2.0.2" + +doctrine@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-3.0.0.tgz#addebead72a6574db783639dc87a121773973961" + integrity sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w== + dependencies: + esutils "^2.0.2" + domexception@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/domexception/-/domexception-2.0.1.tgz#fb44aefba793e1574b0af6aed2801d057529f304" @@ -2833,6 +3347,13 @@ end-of-stream@^1.1.0: dependencies: once "^1.4.0" +enquirer@^2.3.5: + version "2.3.6" + resolved "https://registry.yarnpkg.com/enquirer/-/enquirer-2.3.6.tgz#2a7fe5dd634a1e4125a975ec994ff5456dc3734d" + integrity sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg== + dependencies: + ansi-colors "^4.1.1" + envinfo@^7.7.2: version "7.8.1" resolved "https://registry.yarnpkg.com/envinfo/-/envinfo-7.8.1.tgz#06377e3e5f4d379fea7ac592d5ad8927e0c4d475" @@ -2860,6 +3381,41 @@ errorhandler@^1.5.0: accepts "~1.3.7" escape-html "~1.0.3" +es-abstract@^1.19.0, es-abstract@^1.19.1: + version "1.19.1" + resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.19.1.tgz#d4885796876916959de78edaa0df456627115ec3" + integrity sha512-2vJ6tjA/UfqLm2MPs7jxVybLoB8i1t1Jd9R3kISld20sIxPcTbLuggQOUxeWeAvIUkduv/CfMjuh4WmiXr2v9w== + dependencies: + call-bind "^1.0.2" + es-to-primitive "^1.2.1" + function-bind "^1.1.1" + get-intrinsic "^1.1.1" + get-symbol-description "^1.0.0" + has "^1.0.3" + has-symbols "^1.0.2" + internal-slot "^1.0.3" + is-callable "^1.2.4" + is-negative-zero "^2.0.1" + is-regex "^1.1.4" + is-shared-array-buffer "^1.0.1" + is-string "^1.0.7" + is-weakref "^1.0.1" + object-inspect "^1.11.0" + object-keys "^1.1.1" + object.assign "^4.1.2" + string.prototype.trimend "^1.0.4" + string.prototype.trimstart "^1.0.4" + unbox-primitive "^1.0.1" + +es-to-primitive@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.1.tgz#e55cd4c9cdc188bcefb03b366c736323fc5c898a" + integrity sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA== + dependencies: + is-callable "^1.1.4" + is-date-object "^1.0.1" + is-symbol "^1.0.2" + escalade@^3.1.1: version "3.1.1" resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" @@ -2897,12 +3453,190 @@ escodegen@^2.0.0: optionalDependencies: source-map "~0.6.1" +eslint-config-prettier@^6.10.1: + version "6.15.0" + resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-6.15.0.tgz#7f93f6cb7d45a92f1537a70ecc06366e1ac6fed9" + integrity sha512-a1+kOYLR8wMGustcgAjdydMsQ2A/2ipRPwRKUmfYaSxc9ZPcrku080Ctl6zrZzZNs/U82MjSv+qKREkoq3bJaw== + dependencies: + get-stdin "^6.0.0" + +eslint-plugin-eslint-comments@^3.1.2: + version "3.2.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-eslint-comments/-/eslint-plugin-eslint-comments-3.2.0.tgz#9e1cd7b4413526abb313933071d7aba05ca12ffa" + integrity sha512-0jkOl0hfojIHHmEHgmNdqv4fmh7300NdpA9FFpF7zaoLvB/QeXOGNLIo86oAveJFrfB1p05kC8hpEMHM8DwWVQ== + dependencies: + escape-string-regexp "^1.0.5" + ignore "^5.0.5" + +eslint-plugin-flowtype@2.50.3: + version "2.50.3" + resolved "https://registry.yarnpkg.com/eslint-plugin-flowtype/-/eslint-plugin-flowtype-2.50.3.tgz#61379d6dce1d010370acd6681740fd913d68175f" + integrity sha512-X+AoKVOr7Re0ko/yEXyM5SSZ0tazc6ffdIOocp2fFUlWoDt7DV0Bz99mngOkAFLOAWjqRA5jPwqUCbrx13XoxQ== + dependencies: + lodash "^4.17.10" + +eslint-plugin-jest@22.4.1: + version "22.4.1" + resolved "https://registry.yarnpkg.com/eslint-plugin-jest/-/eslint-plugin-jest-22.4.1.tgz#a5fd6f7a2a41388d16f527073b778013c5189a9c" + integrity sha512-gcLfn6P2PrFAVx3AobaOzlIEevpAEf9chTpFZz7bYfc7pz8XRv7vuKTIE4hxPKZSha6XWKKplDQ0x9Pq8xX2mg== + +eslint-plugin-prettier@3.1.2: + version "3.1.2" + resolved "https://registry.yarnpkg.com/eslint-plugin-prettier/-/eslint-plugin-prettier-3.1.2.tgz#432e5a667666ab84ce72f945c72f77d996a5c9ba" + integrity sha512-GlolCC9y3XZfv3RQfwGew7NnuFDKsfI4lbvRK+PIIo23SFH+LemGs4cKwzAaRa+Mdb+lQO/STaIayno8T5sJJA== + dependencies: + prettier-linter-helpers "^1.0.0" + +eslint-plugin-react-hooks@^4.0.7: + version "4.3.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.3.0.tgz#318dbf312e06fab1c835a4abef00121751ac1172" + integrity sha512-XslZy0LnMn+84NEG9jSGR6eGqaZB3133L8xewQo3fQagbQuGt7a63gf+P1NGKZavEYEC3UXaWEAA/AqDkuN6xA== + +eslint-plugin-react-native-globals@^0.1.1: + version "0.1.2" + resolved "https://registry.yarnpkg.com/eslint-plugin-react-native-globals/-/eslint-plugin-react-native-globals-0.1.2.tgz#ee1348bc2ceb912303ce6bdbd22e2f045ea86ea2" + integrity sha512-9aEPf1JEpiTjcFAmmyw8eiIXmcNZOqaZyHO77wgm0/dWfT/oxC1SrIq8ET38pMxHYrcB6Uew+TzUVsBeczF88g== + +eslint-plugin-react-native@^3.10.0: + version "3.11.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-react-native/-/eslint-plugin-react-native-3.11.0.tgz#c73b0886abb397867e5e6689d3a6a418682e6bac" + integrity sha512-7F3OTwrtQPfPFd+VygqKA2VZ0f2fz0M4gJmry/TRE18JBb94/OtMxwbL7Oqwu7FGyrdeIOWnXQbBAveMcSTZIA== + dependencies: + "@babel/traverse" "^7.7.4" + eslint-plugin-react-native-globals "^0.1.1" + +eslint-plugin-react@^7.20.0: + version "7.28.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.28.0.tgz#8f3ff450677571a659ce76efc6d80b6a525adbdf" + integrity sha512-IOlFIRHzWfEQQKcAD4iyYDndHwTQiCMcJVJjxempf203jnNLUnW34AXLrV33+nEXoifJE2ZEGmcjKPL8957eSw== + dependencies: + array-includes "^3.1.4" + array.prototype.flatmap "^1.2.5" + doctrine "^2.1.0" + estraverse "^5.3.0" + jsx-ast-utils "^2.4.1 || ^3.0.0" + minimatch "^3.0.4" + object.entries "^1.1.5" + object.fromentries "^2.0.5" + object.hasown "^1.1.0" + object.values "^1.1.5" + prop-types "^15.7.2" + resolve "^2.0.0-next.3" + semver "^6.3.0" + string.prototype.matchall "^4.0.6" + +eslint-scope@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.1.tgz#e786e59a66cb92b3f6c1fb0d508aab174848f48c" + integrity sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw== + dependencies: + esrecurse "^4.3.0" + estraverse "^4.1.1" + +eslint-utils@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-2.1.0.tgz#d2de5e03424e707dc10c74068ddedae708741b27" + integrity sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg== + dependencies: + eslint-visitor-keys "^1.1.0" + +eslint-utils@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-3.0.0.tgz#8aebaface7345bb33559db0a1f13a1d2d48c3672" + integrity sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA== + dependencies: + eslint-visitor-keys "^2.0.0" + +eslint-visitor-keys@^1.0.0, eslint-visitor-keys@^1.1.0, eslint-visitor-keys@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz#30ebd1ef7c2fdff01c3a4f151044af25fab0523e" + integrity sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ== + +eslint-visitor-keys@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz#f65328259305927392c938ed44eb0a5c9b2bd303" + integrity sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw== + +eslint@^7.32.0: + version "7.32.0" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.32.0.tgz#c6d328a14be3fb08c8d1d21e12c02fdb7a2a812d" + integrity sha512-VHZ8gX+EDfz+97jGcgyGCyRia/dPOd6Xh9yPv8Bl1+SoaIwD+a/vlrOmGRUyOYu7MwUhc7CxqeaDZU13S4+EpA== + dependencies: + "@babel/code-frame" "7.12.11" + "@eslint/eslintrc" "^0.4.3" + "@humanwhocodes/config-array" "^0.5.0" + ajv "^6.10.0" + chalk "^4.0.0" + cross-spawn "^7.0.2" + debug "^4.0.1" + doctrine "^3.0.0" + enquirer "^2.3.5" + escape-string-regexp "^4.0.0" + eslint-scope "^5.1.1" + eslint-utils "^2.1.0" + eslint-visitor-keys "^2.0.0" + espree "^7.3.1" + esquery "^1.4.0" + esutils "^2.0.2" + fast-deep-equal "^3.1.3" + file-entry-cache "^6.0.1" + functional-red-black-tree "^1.0.1" + glob-parent "^5.1.2" + globals "^13.6.0" + ignore "^4.0.6" + import-fresh "^3.0.0" + imurmurhash "^0.1.4" + is-glob "^4.0.0" + js-yaml "^3.13.1" + json-stable-stringify-without-jsonify "^1.0.1" + levn "^0.4.1" + lodash.merge "^4.6.2" + minimatch "^3.0.4" + natural-compare "^1.4.0" + optionator "^0.9.1" + progress "^2.0.0" + regexpp "^3.1.0" + semver "^7.2.1" + strip-ansi "^6.0.0" + strip-json-comments "^3.1.0" + table "^6.0.9" + text-table "^0.2.0" + v8-compile-cache "^2.0.3" + +espree@^7.3.0, espree@^7.3.1: + version "7.3.1" + resolved "https://registry.yarnpkg.com/espree/-/espree-7.3.1.tgz#f2df330b752c6f55019f8bd89b7660039c1bbbb6" + integrity sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g== + dependencies: + acorn "^7.4.0" + acorn-jsx "^5.3.1" + eslint-visitor-keys "^1.3.0" + esprima@^4.0.0, esprima@^4.0.1, esprima@~4.0.0: version "4.0.1" resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== -estraverse@^5.2.0: +esquery@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.4.0.tgz#2148ffc38b82e8c7057dfed48425b3e61f0f24a5" + integrity sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w== + dependencies: + estraverse "^5.1.0" + +esrecurse@^4.3.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.3.0.tgz#7ad7964d679abb28bee72cec63758b1c5d2c9921" + integrity sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag== + dependencies: + estraverse "^5.2.0" + +estraverse@^4.1.1: + version "4.3.0" + resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d" + integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw== + +estraverse@^5.1.0, estraverse@^5.2.0, estraverse@^5.3.0: version "5.3.0" resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.3.0.tgz#2eea5290702f26ab8fe5370370ff86c965d21123" integrity sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA== @@ -3118,6 +3852,16 @@ extglob@^2.0.4: snapdragon "^0.8.1" to-regex "^3.0.1" +fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: + version "3.1.3" + resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" + integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== + +fast-diff@^1.1.2: + version "1.2.0" + resolved "https://registry.yarnpkg.com/fast-diff/-/fast-diff-1.2.0.tgz#73ee11982d86caaf7959828d519cfe927fac5f03" + integrity sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w== + fast-glob@^3.2.5: version "3.2.7" resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.2.7.tgz#fd6cb7a2d7e9aa7a7846111e85a196d6b2f766a1" @@ -3129,12 +3873,23 @@ fast-glob@^3.2.5: merge2 "^1.3.0" micromatch "^4.0.4" +fast-glob@^3.2.9: + version "3.2.11" + resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.2.11.tgz#a1172ad95ceb8a16e20caa5c5e56480e5129c1d9" + integrity sha512-xrO3+1bxSo3ZVHAnqzyuewYT6aMFHRAd4Kcs92MAonjwQZLsK9d0SF1IyQ3k5PoirxTW0Oe/RqFgMQ6TcNE5Ew== + dependencies: + "@nodelib/fs.stat" "^2.0.2" + "@nodelib/fs.walk" "^1.2.3" + glob-parent "^5.1.2" + merge2 "^1.3.0" + micromatch "^4.0.4" + fast-json-stable-stringify@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== -fast-levenshtein@~2.0.6: +fast-levenshtein@^2.0.6, fast-levenshtein@~2.0.6: version "2.0.6" resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc= @@ -3191,6 +3946,13 @@ fbjs@^3.0.0: setimmediate "^1.0.5" ua-parser-js "^0.7.30" +file-entry-cache@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-6.0.1.tgz#211b2dd9659cb0394b073e7323ac3c933d522027" + integrity sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg== + dependencies: + flat-cache "^3.0.4" + fill-range@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-4.0.0.tgz#d544811d428f98eb06a63dc402d2403c328c38f7" @@ -3266,6 +4028,19 @@ find-up@^5.0.0, find-up@~5.0.0: locate-path "^6.0.0" path-exists "^4.0.0" +flat-cache@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-3.0.4.tgz#61b0338302b2fe9f957dcc32fc2a87f1c3048b11" + integrity sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg== + dependencies: + flatted "^3.1.0" + rimraf "^3.0.2" + +flatted@^3.1.0: + version "3.2.5" + resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.2.5.tgz#76c8584f4fc843db64702a6bd04ab7a8bd666da3" + integrity sha512-WIWGi2L3DyTUvUrwRKgGi9TwxQMUEqPOPQBVi71R96jZXJdFskXEmf54BoZaS1kknGODoIGASGEzBUYdyMCBJg== + flow-parser@0.*: version "0.162.1" resolved "https://registry.yarnpkg.com/flow-parser/-/flow-parser-0.162.1.tgz#128150cd483c4899719fb5ceb06744282e51a10d" @@ -3360,6 +4135,11 @@ function-bind@^1.1.1: resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== +functional-red-black-tree@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327" + integrity sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc= + gensync@^1.0.0-beta.2: version "1.0.0-beta.2" resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.2.tgz#32a6ee76c3d7f52d46b2b1ae5d93fea8580a25e0" @@ -3370,7 +4150,7 @@ get-caller-file@^2.0.1: resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== -get-intrinsic@^1.0.2: +get-intrinsic@^1.0.2, get-intrinsic@^1.1.0, get-intrinsic@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.1.1.tgz#15f59f376f855c446963948f0d24cd3637b4abc6" integrity sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q== @@ -3384,6 +4164,11 @@ get-package-type@^0.1.0: resolved "https://registry.yarnpkg.com/get-package-type/-/get-package-type-0.1.0.tgz#8de2d803cff44df3bc6c456e6668b36c3926e11a" integrity sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q== +get-stdin@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-6.0.0.tgz#9e09bf712b360ab9225e812048f71fde9c89657b" + integrity sha512-jp4tHawyV7+fkkSKyvjuLZswblUtz+SQKzSWnBbii16BuZksJlU1wuBYXY75r+duh/llF1ur6oNwi+2ZzjKZ7g== + get-stream@^4.0.0: version "4.1.0" resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-4.1.0.tgz#c1b255575f3dc21d59bfc79cd3d2b46b1c3a54b5" @@ -3398,6 +4183,14 @@ get-stream@^5.0.0: dependencies: pump "^3.0.0" +get-symbol-description@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/get-symbol-description/-/get-symbol-description-1.0.0.tgz#7fdb81c900101fbd564dd5f1a30af5aadc1e58d6" + integrity sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw== + dependencies: + call-bind "^1.0.2" + get-intrinsic "^1.1.1" + get-value@^2.0.3, get-value@^2.0.6: version "2.0.6" resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28" @@ -3444,6 +4237,25 @@ globals@^11.1.0: resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== +globals@^13.6.0, globals@^13.9.0: + version "13.12.1" + resolved "https://registry.yarnpkg.com/globals/-/globals-13.12.1.tgz#ec206be932e6c77236677127577aa8e50bf1c5cb" + integrity sha512-317dFlgY2pdJZ9rspXDks7073GpDmXdfbM3vYYp0HAMKGDh1FfWPleI2ljVNLQX5M5lXcAslTcPTrOrMEFOjyw== + dependencies: + type-fest "^0.20.2" + +globby@^11.0.3: + version "11.1.0" + resolved "https://registry.yarnpkg.com/globby/-/globby-11.1.0.tgz#bd4be98bb042f83d796f7e3811991fbe82a0d34b" + integrity sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g== + dependencies: + array-union "^2.1.0" + dir-glob "^3.0.1" + fast-glob "^3.2.9" + ignore "^5.2.0" + merge2 "^1.4.1" + slash "^3.0.0" + graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.3, graceful-fs@^4.1.6, graceful-fs@^4.1.9, graceful-fs@^4.2.0, graceful-fs@^4.2.4: version "4.2.8" resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.8.tgz#e412b8d33f5e006593cbd3cee6df9f2cebbe802a" @@ -3454,6 +4266,11 @@ growly@^1.3.0: resolved "https://registry.yarnpkg.com/growly/-/growly-1.3.0.tgz#f10748cbe76af964b7c96c93c6bcc28af120c081" integrity sha1-8QdIy+dq+WS3yWyTxrzCivEgwIE= +has-bigints@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/has-bigints/-/has-bigints-1.0.1.tgz#64fe6acb020673e3b78db035a5af69aa9d07b113" + integrity sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA== + has-flag@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" @@ -3464,11 +4281,18 @@ has-flag@^4.0.0: resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== -has-symbols@^1.0.1: +has-symbols@^1.0.1, has-symbols@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.2.tgz#165d3070c00309752a1236a479331e3ac56f1423" integrity sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw== +has-tostringtag@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/has-tostringtag/-/has-tostringtag-1.0.0.tgz#7e133818a7d394734f941e73c3d3f9291e658b25" + integrity sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ== + dependencies: + has-symbols "^1.0.2" + has-value@^0.3.1: version "0.3.1" resolved "https://registry.yarnpkg.com/has-value/-/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f" @@ -3588,6 +4412,16 @@ iconv-lite@^0.6.2: dependencies: safer-buffer ">= 2.1.2 < 3.0.0" +ignore@^4.0.6: + version "4.0.6" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-4.0.6.tgz#750e3db5862087b4737ebac8207ffd1ef27b25fc" + integrity sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg== + +ignore@^5.0.5, ignore@^5.1.8, ignore@^5.2.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.2.0.tgz#6d3bac8fa7fe0d45d9f9be7bac2fc279577e345a" + integrity sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ== + image-size@^0.6.0: version "0.6.3" resolved "https://registry.yarnpkg.com/image-size/-/image-size-0.6.3.tgz#e7e5c65bb534bd7cdcedd6cb5166272a85f75fb2" @@ -3601,6 +4435,14 @@ import-fresh@^2.0.0: caller-path "^2.0.0" resolve-from "^3.0.0" +import-fresh@^3.0.0, import-fresh@^3.2.1: + version "3.3.0" + resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.0.tgz#37162c25fcb9ebaa2e6e53d5b4d88ce17d9e0c2b" + integrity sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw== + dependencies: + parent-module "^1.0.0" + resolve-from "^4.0.0" + import-local@^3.0.2: version "3.0.3" resolved "https://registry.yarnpkg.com/import-local/-/import-local-3.0.3.tgz#4d51c2c495ca9393da259ec66b62e022920211e0" @@ -3614,6 +4456,11 @@ imurmurhash@^0.1.4: resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" integrity sha1-khi5srkoojixPcT7a21XbyMUU+o= +indent-string@^3.0.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-3.2.0.tgz#4a5fd6d27cc332f37e5419a504dbb837105c9289" + integrity sha1-Sl/W0nzDMvN+VBmlBNu4NxBckok= + inflight@^1.0.4: version "1.0.6" resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" @@ -3634,6 +4481,15 @@ inline-style-prefixer@^6.0.0: dependencies: css-in-js-utils "^2.0.0" +internal-slot@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/internal-slot/-/internal-slot-1.0.3.tgz#7347e307deeea2faac2ac6205d4bc7d34967f59c" + integrity sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA== + dependencies: + get-intrinsic "^1.1.0" + has "^1.0.3" + side-channel "^1.0.4" + interpret@^1.0.0: version "1.4.0" resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.4.0.tgz#665ab8bc4da27a774a40584e812e3e0fa45b1a1e" @@ -3670,11 +4526,31 @@ is-arrayish@^0.2.1: resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" integrity sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0= +is-bigint@^1.0.1: + version "1.0.4" + resolved "https://registry.yarnpkg.com/is-bigint/-/is-bigint-1.0.4.tgz#08147a1875bc2b32005d41ccd8291dffc6691df3" + integrity sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg== + dependencies: + has-bigints "^1.0.1" + +is-boolean-object@^1.1.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/is-boolean-object/-/is-boolean-object-1.1.2.tgz#5c6dc200246dd9321ae4b885a114bb1f75f63719" + integrity sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA== + dependencies: + call-bind "^1.0.2" + has-tostringtag "^1.0.0" + is-buffer@^1.1.5: version "1.1.6" resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w== +is-callable@^1.1.4, is-callable@^1.2.4: + version "1.2.4" + resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.4.tgz#47301d58dd0259407865547853df6d61fe471945" + integrity sha512-nsuwtxZfMX67Oryl9LCQ+upnC0Z0BgpwntpS89m1H/TLF0zNfzfLMV/9Wa/6MZsj0acpEjAO0KF1xT6ZdLl95w== + is-ci@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-2.0.0.tgz#6bc6334181810e04b5c22b3d589fdca55026404c" @@ -3689,6 +4565,13 @@ is-core-module@^2.2.0: dependencies: has "^1.0.3" +is-core-module@^2.8.1: + version "2.8.1" + resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.8.1.tgz#f59fdfca701d5879d0a6b100a40aa1560ce27211" + integrity sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA== + dependencies: + has "^1.0.3" + is-data-descriptor@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz#0b5ee648388e2c860282e793f1856fec3f301b56" @@ -3703,6 +4586,13 @@ is-data-descriptor@^1.0.0: dependencies: kind-of "^6.0.0" +is-date-object@^1.0.1: + version "1.0.5" + resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.5.tgz#0841d5536e724c25597bf6ea62e1bd38298df31f" + integrity sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ== + dependencies: + has-tostringtag "^1.0.0" + is-descriptor@^0.1.0: version "0.1.6" resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-0.1.6.tgz#366d8240dde487ca51823b1ab9f07a10a78251ca" @@ -3763,13 +4653,25 @@ is-generator-fn@^2.0.0: resolved "https://registry.yarnpkg.com/is-generator-fn/-/is-generator-fn-2.1.0.tgz#7d140adc389aaf3011a8f2a2a4cfa6faadffb118" integrity sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ== -is-glob@^4.0.1: +is-glob@^4.0.0, is-glob@^4.0.1: version "4.0.3" resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084" integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg== dependencies: is-extglob "^2.1.1" +is-negative-zero@^2.0.1: + version "2.0.2" + resolved "https://registry.yarnpkg.com/is-negative-zero/-/is-negative-zero-2.0.2.tgz#7bf6f03a28003b8b3965de3ac26f664d765f3150" + integrity sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA== + +is-number-object@^1.0.4: + version "1.0.6" + resolved "https://registry.yarnpkg.com/is-number-object/-/is-number-object-1.0.6.tgz#6a7aaf838c7f0686a50b4553f7e54a96494e89f0" + integrity sha512-bEVOqiRcvo3zO1+G2lVMy+gkkEm9Yh7cDMRusKKu5ZJKPUYSJwICTKZrNKHA2EbSP0Tu0+6B/emsYNHZyn6K8g== + dependencies: + has-tostringtag "^1.0.0" + is-number@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195" @@ -3794,6 +4696,19 @@ is-potential-custom-element-name@^1.0.1: resolved "https://registry.yarnpkg.com/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz#171ed6f19e3ac554394edf78caa05784a45bebb5" integrity sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ== +is-regex@^1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.1.4.tgz#eef5663cd59fa4c0ae339505323df6854bb15958" + integrity sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg== + dependencies: + call-bind "^1.0.2" + has-tostringtag "^1.0.0" + +is-shared-array-buffer@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-shared-array-buffer/-/is-shared-array-buffer-1.0.1.tgz#97b0c85fbdacb59c9c446fe653b82cf2b5b7cfe6" + integrity sha512-IU0NmyknYZN0rChcKhRO1X8LYz5Isj/Fsqh8NJOSf+N/hCOTwy29F32Ik7a+QszE63IdvmwdTPDd6cZ5pg4cwA== + is-stream@^1.0.1, is-stream@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" @@ -3804,11 +4719,32 @@ is-stream@^2.0.0: resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-2.0.1.tgz#fac1e3d53b97ad5a9d0ae9cef2389f5810a5c077" integrity sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg== +is-string@^1.0.5, is-string@^1.0.7: + version "1.0.7" + resolved "https://registry.yarnpkg.com/is-string/-/is-string-1.0.7.tgz#0dd12bf2006f255bb58f695110eff7491eebc0fd" + integrity sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg== + dependencies: + has-tostringtag "^1.0.0" + +is-symbol@^1.0.2, is-symbol@^1.0.3: + version "1.0.4" + resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.4.tgz#a6dac93b635b063ca6872236de88910a57af139c" + integrity sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg== + dependencies: + has-symbols "^1.0.2" + is-typedarray@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo= +is-weakref@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/is-weakref/-/is-weakref-1.0.2.tgz#9529f383a9338205e89765e0392efc2f100f06f2" + integrity sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ== + dependencies: + call-bind "^1.0.2" + is-windows@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" @@ -3960,6 +4896,16 @@ jest-config@^26.6.3: micromatch "^4.0.2" pretty-format "^26.6.2" +jest-diff@^24.0.0, jest-diff@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-24.9.0.tgz#931b7d0d5778a1baf7452cb816e325e3724055da" + integrity sha512-qMfrTs8AdJE2iqrTp0hzh7kTd2PQWrsFyj9tORoKmu32xjPjeE4NyjVRDz8ybYwqS2ik8N4hsIpiVTyFeo2lBQ== + dependencies: + chalk "^2.0.1" + diff-sequences "^24.9.0" + jest-get-type "^24.9.0" + pretty-format "^24.9.0" + jest-diff@^26.6.2: version "26.6.2" resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-26.6.2.tgz#1aa7468b52c3a68d7d5c5fdcdfcd5e49bd164394" @@ -3970,6 +4916,16 @@ jest-diff@^26.6.2: jest-get-type "^26.3.0" pretty-format "^26.6.2" +jest-diff@^27.0.0: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-27.5.1.tgz#a07f5011ac9e6643cf8a95a462b7b1ecf6680def" + integrity sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw== + dependencies: + chalk "^4.0.0" + diff-sequences "^27.5.1" + jest-get-type "^27.5.1" + pretty-format "^27.5.1" + jest-docblock@^26.0.0: version "26.0.0" resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-26.0.0.tgz#3e2fa20899fc928cb13bd0ff68bd3711a36889b5" @@ -4029,11 +4985,21 @@ jest-expo@^43.0.1: lodash "^4.17.19" react-test-renderer "~17.0.1" +jest-get-type@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-24.9.0.tgz#1684a0c8a50f2e4901b6644ae861f579eed2ef0e" + integrity sha512-lUseMzAley4LhIcpSP9Jf+fTrQ4a1yHQwLNeeVa2cEmbCGeoZAtYPOIv8JaxLD/sUpKxetKGP+gsHl8f8TSj8Q== + jest-get-type@^26.3.0: version "26.3.0" resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-26.3.0.tgz#e97dc3c3f53c2b406ca7afaed4493b1d099199e0" integrity sha512-TpfaviN1R2pQWkIihlfEanwOXK0zcxrKEE4MlU6Tn7keoXdN6/3gK/xl0yEh8DOunn5pOVGKf8hB4R9gVh04ig== +jest-get-type@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-27.5.1.tgz#3cd613c507b0f7ace013df407a1c1cd578bcb4f1" + integrity sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw== + jest-haste-map@^26.5.2, jest-haste-map@^26.6.2: version "26.6.2" resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-26.6.2.tgz#dd7e60fe7dc0e9f911a23d79c5ff7fb5c2cafeaa" @@ -4087,6 +5053,16 @@ jest-leak-detector@^26.6.2: jest-get-type "^26.3.0" pretty-format "^26.6.2" +jest-matcher-utils@^24.0.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-24.9.0.tgz#f5b3661d5e628dffe6dd65251dfdae0e87c3a073" + integrity sha512-OZz2IXsu6eaiMAwe67c1T+5tUAtQyQx27/EMEkbFAGiw52tB9em+uGbzpcgYVpA8wl0hlxKPZxrly4CXU/GjHA== + dependencies: + chalk "^2.0.1" + jest-diff "^24.9.0" + jest-get-type "^24.9.0" + pretty-format "^24.9.0" + jest-matcher-utils@^26.6.2: version "26.6.2" resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-26.6.2.tgz#8e6fd6e863c8b2d31ac6472eeb237bc595e53e7a" @@ -4380,6 +5356,11 @@ joi@^17.2.1: "@sideway/formula" "^3.0.0" "@sideway/pinpoint" "^2.0.0" +js-sha3@0.8.0: + version "0.8.0" + resolved "https://registry.yarnpkg.com/js-sha3/-/js-sha3-0.8.0.tgz#b9b7a5da73afad7dedd0f8c463954cbde6818840" + integrity sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q== + "js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" @@ -4476,6 +5457,21 @@ json-parse-even-better-errors@^2.3.0: resolved "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d" integrity sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w== +json-schema-traverse@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" + integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== + +json-schema-traverse@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz#ae7bcb3656ab77a73ba5c49bf654f38e6b6860e2" + integrity sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug== + +json-stable-stringify-without-jsonify@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" + integrity sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE= + json5@^0.5.1: version "0.5.1" resolved "https://registry.yarnpkg.com/json5/-/json5-0.5.1.tgz#1eade7acc012034ad84e2396767ead9fa5495821" @@ -4523,6 +5519,14 @@ jsonify@~0.0.0: resolved "https://registry.yarnpkg.com/jsonify/-/jsonify-0.0.0.tgz#2c74b6ee41d93ca51b7b5aaee8f503631d252a73" integrity sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM= +"jsx-ast-utils@^2.4.1 || ^3.0.0": + version "3.2.1" + resolved "https://registry.yarnpkg.com/jsx-ast-utils/-/jsx-ast-utils-3.2.1.tgz#720b97bfe7d901b927d87c3773637ae8ea48781b" + integrity sha512-uP5vu8xfy2F9A6LGC22KO7e2/vGTS1MhP+18f++ZNlf0Ohaxbc9nIEwHAsejlJKyzfZzU5UIhe5ItYkitcZnZA== + dependencies: + array-includes "^3.1.3" + object.assign "^4.1.2" + kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0: version "3.2.2" resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" @@ -4564,6 +5568,14 @@ leven@^3.1.0: resolved "https://registry.yarnpkg.com/leven/-/leven-3.1.0.tgz#77891de834064cccba82ae7842bb6b14a13ed7f2" integrity sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A== +levn@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/levn/-/levn-0.4.1.tgz#ae4562c007473b932a6200d403268dd2fffc6ade" + integrity sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ== + dependencies: + prelude-ls "^1.2.1" + type-check "~0.4.0" + levn@~0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee" @@ -4624,6 +5636,11 @@ lodash.isstring@^4.0.1: resolved "https://registry.yarnpkg.com/lodash.isstring/-/lodash.isstring-4.0.1.tgz#d527dfb5456eca7cc9bb95d5daeaf88ba54a5451" integrity sha1-1SfftUVuynzJu5XV2ur4i6VKVFE= +lodash.merge@^4.6.2: + version "4.6.2" + resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" + integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== + lodash.omit@^4.5.0: version "4.5.0" resolved "https://registry.yarnpkg.com/lodash.omit/-/lodash.omit-4.5.0.tgz#6eb19ae5a1ee1dd9df0b969e66ce0b7fa30b5e60" @@ -4654,7 +5671,12 @@ lodash.throttle@^4.1.1: resolved "https://registry.yarnpkg.com/lodash.throttle/-/lodash.throttle-4.1.1.tgz#c23e91b710242ac70c37f1e1cda9274cc39bf2f4" integrity sha1-wj6RtxAkKscMN/HhzaknTMOb8vQ= -lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.7.0: +lodash.truncate@^4.4.2: + version "4.4.2" + resolved "https://registry.yarnpkg.com/lodash.truncate/-/lodash.truncate-4.4.2.tgz#5a350da0b1113b837ecfffd5812cbe58d6eae193" + integrity sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM= + +lodash@^4.17.10, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.7.0: version "4.17.21" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== @@ -4723,6 +5745,14 @@ map-visit@^1.0.0: dependencies: object-visit "^1.0.0" +match-sorter@^6.0.2: + version "6.3.1" + resolved "https://registry.yarnpkg.com/match-sorter/-/match-sorter-6.3.1.tgz#98cc37fda756093424ddf3cbc62bfe9c75b92bda" + integrity sha512-mxybbo3pPNuA+ZuCUhm5bwNkXrJTbsk5VWbR5wiwz/GC6LIiegBGn2w3O08UG/jdbYLinw51fSQ5xNU1U3MgBw== + dependencies: + "@babel/runtime" "^7.12.5" + remove-accents "0.4.2" + md5-file@^3.2.3: version "3.2.3" resolved "https://registry.yarnpkg.com/md5-file/-/md5-file-3.2.3.tgz#f9bceb941eca2214a4c0727f5e700314e770f06f" @@ -4735,7 +5765,7 @@ merge-stream@^2.0.0: resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w== -merge2@^1.3.0: +merge2@^1.3.0, merge2@^1.4.1: version "1.4.1" resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae" integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== @@ -5116,6 +6146,11 @@ micromatch@^4.0.2, micromatch@^4.0.4: braces "^3.0.1" picomatch "^2.2.3" +microseconds@0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/microseconds/-/microseconds-0.2.0.tgz#233b25f50c62a65d861f978a4a4f8ec18797dc39" + integrity sha512-n7DHHMjR1avBbSpsTBj6fmMGh2AGrifVV4e+WYc3Q9lO+xnSZ3NyhcBND3vzzatt05LFhoKFRxrIyklmLlUtyA== + mime-db@1.50.0, "mime-db@>= 1.43.0 < 2": version "1.50.0" resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.50.0.tgz#abd4ac94e98d3c0e185016c67ab45d5fde40c11f" @@ -5199,6 +6234,13 @@ mz@^2.7.0: object-assign "^4.0.1" thenify-all "^1.0.0" +nano-time@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/nano-time/-/nano-time-1.0.0.tgz#b0554f69ad89e22d0907f7a12b0993a5d96137ef" + integrity sha1-sFVPaa2J4i0JB/ehKwmTpdlhN+8= + dependencies: + big-integer "^1.6.16" + nanoid@^3.1.23: version "3.1.30" resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.1.30.tgz#63f93cc548d2a113dc5dfbc63bfa09e2b9b64362" @@ -5380,6 +6422,11 @@ object-copy@^0.1.0: define-property "^0.2.5" kind-of "^3.0.3" +object-inspect@^1.11.0, object-inspect@^1.9.0: + version "1.12.0" + resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.12.0.tgz#6e2c120e868fd1fd18cb4f18c31741d0d6e776f0" + integrity sha512-Ho2z80bVIvJloH+YzRmpZVQe87+qASmBUKZDWgx9cu+KDrX2ZDH/3tMy+gXbZETVGs2M8YdxObOh7XAtim9Y0g== + object-keys@^1.0.12, object-keys@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" @@ -5392,7 +6439,7 @@ object-visit@^1.0.0: dependencies: isobject "^3.0.0" -object.assign@^4.1.0: +object.assign@^4.1.0, object.assign@^4.1.2: version "4.1.2" resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.2.tgz#0ed54a342eceb37b38ff76eb831a0e788cb63940" integrity sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ== @@ -5402,6 +6449,32 @@ object.assign@^4.1.0: has-symbols "^1.0.1" object-keys "^1.1.1" +object.entries@^1.1.5: + version "1.1.5" + resolved "https://registry.yarnpkg.com/object.entries/-/object.entries-1.1.5.tgz#e1acdd17c4de2cd96d5a08487cfb9db84d881861" + integrity sha512-TyxmjUoZggd4OrrU1W66FMDG6CuqJxsFvymeyXI51+vQLN67zYfZseptRge703kKQdo4uccgAKebXFcRCzk4+g== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.3" + es-abstract "^1.19.1" + +object.fromentries@^2.0.5: + version "2.0.5" + resolved "https://registry.yarnpkg.com/object.fromentries/-/object.fromentries-2.0.5.tgz#7b37b205109c21e741e605727fe8b0ad5fa08251" + integrity sha512-CAyG5mWQRRiBU57Re4FKoTBjXfDoNwdFVH2Y1tS9PqCsfUTymAohOkEMSG3aRNKmv4lV3O7p1et7c187q6bynw== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.3" + es-abstract "^1.19.1" + +object.hasown@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/object.hasown/-/object.hasown-1.1.0.tgz#7232ed266f34d197d15cac5880232f7a4790afe5" + integrity sha512-MhjYRfj3GBlhSkDHo6QmvgjRLXQ2zndabdf3nX0yTyZK9rPfxb6uRpAac8HXNLy1GpqWtZ81Qh4v3uOls2sRAg== + dependencies: + define-properties "^1.1.3" + es-abstract "^1.19.1" + object.pick@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/object.pick/-/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747" @@ -5409,6 +6482,20 @@ object.pick@^1.3.0: dependencies: isobject "^3.0.1" +object.values@^1.1.5: + version "1.1.5" + resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.1.5.tgz#959f63e3ce9ef108720333082131e4a459b716ac" + integrity sha512-QUZRW0ilQ3PnPpbNtgdNV1PDbEqLIiSFB3l+EnGtBQ/8SUTLj1PZwtQHABZtLgwpJZTSZhuGLOGk57Drx2IvYg== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.3" + es-abstract "^1.19.1" + +oblivious-set@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/oblivious-set/-/oblivious-set-1.0.0.tgz#c8316f2c2fb6ff7b11b6158db3234c49f733c566" + integrity sha512-z+pI07qxo4c2CulUHCDf9lcqDlMSo72N/4rLUpRXf6fu+q8vjt8y0xS+Tlf8NTJDdTXHbdeO1n3MlbctwEoXZw== + on-finished@~2.3.0: version "2.3.0" resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.3.0.tgz#20f1336481b083cd75337992a16971aa2d906947" @@ -5461,6 +6548,18 @@ optionator@^0.8.1: type-check "~0.3.2" word-wrap "~1.2.3" +optionator@^0.9.1: + version "0.9.1" + resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.1.tgz#4f236a6373dae0566a6d43e1326674f50c291499" + integrity sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw== + dependencies: + deep-is "^0.1.3" + fast-levenshtein "^2.0.6" + levn "^0.4.1" + prelude-ls "^1.2.1" + type-check "^0.4.0" + word-wrap "^1.2.3" + options@>=0.0.5: version "0.0.6" resolved "https://registry.yarnpkg.com/options/-/options-0.0.6.tgz#ec22d312806bb53e731773e7cdaefcf1c643128f" @@ -5533,6 +6632,13 @@ p-try@^2.0.0: resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== +parent-module@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" + integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g== + dependencies: + callsites "^3.0.0" + parse-json@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-4.0.0.tgz#be35f5425be1f7f6c747184f98a788cb99477ee0" @@ -5596,11 +6702,16 @@ path-key@^3.0.0, path-key@^3.1.0: resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== -path-parse@^1.0.6: +path-parse@^1.0.6, path-parse@^1.0.7: version "1.0.7" resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== +path-type@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" + integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== + picocolors@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c" @@ -5657,11 +6768,38 @@ posix-character-classes@^0.1.0: resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" integrity sha1-AerA/jta9xoqbAL+q7jB/vfgDqs= +prelude-ls@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" + integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== + prelude-ls@~1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" integrity sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ= +prettier-linter-helpers@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz#d23d41fe1375646de2d0104d3454a3008802cf7b" + integrity sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w== + dependencies: + fast-diff "^1.1.2" + +prettier@^2.0.2: + version "2.5.1" + resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.5.1.tgz#fff75fa9d519c54cf0fce328c1017d94546bc56a" + integrity sha512-vBZcPRUR5MZJwoyi3ZoyQlc1rXeEck8KgeC9AwwOn+exuxLxq5toTRDTSaVrXHxelDMHy9zlicw8u66yxoSUFg== + +pretty-format@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-24.9.0.tgz#12fac31b37019a4eea3c11aa9a959eb7628aa7c9" + integrity sha512-00ZMZUiHaJrNfk33guavqgvfJS30sLYf0f8+Srklv0AMPodGGHcoHgksZ3OThYnIvOd+8yMCn0YiEOogjlgsnA== + dependencies: + "@jest/types" "^24.9.0" + ansi-regex "^4.0.0" + ansi-styles "^3.2.0" + react-is "^16.8.4" + pretty-format@^26.4.0, pretty-format@^26.5.2, pretty-format@^26.6.2: version "26.6.2" resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-26.6.2.tgz#e35c2705f14cb7fe2fe94fa078345b444120fc93" @@ -5672,6 +6810,15 @@ pretty-format@^26.4.0, pretty-format@^26.5.2, pretty-format@^26.6.2: ansi-styles "^4.0.0" react-is "^17.0.1" +pretty-format@^27.0.0, pretty-format@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-27.5.1.tgz#2181879fdea51a7a5851fb39d920faa63f01d88e" + integrity sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ== + dependencies: + ansi-regex "^5.0.1" + ansi-styles "^5.0.0" + react-is "^17.0.1" + pretty-format@^27.3.1: version "27.3.1" resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-27.3.1.tgz#7e9486365ccdd4a502061fa761d3ab9ca1b78df5" @@ -5687,6 +6834,11 @@ process-nextick-args@~2.0.0: resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2" integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag== +progress@^2.0.0: + version "2.0.3" + resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8" + integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA== + promise@^7.1.1: version "7.3.1" resolved "https://registry.yarnpkg.com/promise/-/promise-7.3.1.tgz#064b72602b18f90f29192b8b1bc418ffd1ebd3bf" @@ -5731,7 +6883,7 @@ pump@^3.0.0: end-of-stream "^1.1.0" once "^1.3.1" -punycode@^2.1.1: +punycode@^2.1.0, punycode@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== @@ -5756,6 +6908,11 @@ queue-microtask@^1.2.2: resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243" integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A== +ramda@^0.26.1: + version "0.26.1" + resolved "https://registry.yarnpkg.com/ramda/-/ramda-0.26.1.tgz#8d41351eb8111c55353617fc3bbffad8e4d35d06" + integrity sha512-hLWjpy7EnsDBb0p+Z3B7rPi3GDeRG5ZtiI33kJhTt+ORCd38AbAIjB/9zRIUoeTbE/AVX5ZkU7m6bznsvrf8eQ== + range-parser@~1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" @@ -5783,7 +6940,7 @@ react-dom@17.0.1: resolved "https://registry.yarnpkg.com/react-is/-/react-is-17.0.2.tgz#e691d4a8e9c789365655539ab372762b0efb54f0" integrity sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w== -react-is@^16.13.0, react-is@^16.8.1: +react-is@^16.13.0, react-is@^16.8.1, react-is@^16.8.4: version "16.13.1" resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4" integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== @@ -5860,6 +7017,15 @@ react-native@0.64.2: whatwg-fetch "^3.0.0" ws "^6.1.4" +react-query@^3.34.15: + version "3.34.15" + resolved "https://registry.yarnpkg.com/react-query/-/react-query-3.34.15.tgz#9e143b7d0aa39c515102a35120d5518ad91b10f6" + integrity sha512-dOhGLB5RT3p+wWj0rVdAompSg+R9t6oMRk+JhU8DP0tpJM2UyIv3r4Kk0zUkHSxT+QG34hFdrgdqxVWxgeNq4g== + dependencies: + "@babel/runtime" "^7.5.5" + broadcast-channel "^3.4.1" + match-sorter "^6.0.2" + react-refresh@^0.4.0: version "0.4.3" resolved "https://registry.yarnpkg.com/react-refresh/-/react-refresh-0.4.3.tgz#966f1750c191672e76e16c2efa569150cc73ab53" @@ -5940,6 +7106,14 @@ rechoir@^0.6.2: dependencies: resolve "^1.1.6" +redent@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/redent/-/redent-2.0.0.tgz#c1b2007b42d57eb1389079b3c8333639d5e1ccaa" + integrity sha1-wbIAe0LVfrE4kHmzyDM2OdXhzKo= + dependencies: + indent-string "^3.0.0" + strip-indent "^2.0.0" + regenerate-unicode-properties@^9.0.0: version "9.0.0" resolved "https://registry.yarnpkg.com/regenerate-unicode-properties/-/regenerate-unicode-properties-9.0.0.tgz#54d09c7115e1f53dc2314a974b32c1c344efe326" @@ -5972,6 +7146,19 @@ regex-not@^1.0.0, regex-not@^1.0.2: extend-shallow "^3.0.2" safe-regex "^1.1.0" +regexp.prototype.flags@^1.3.1: + version "1.4.1" + resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.4.1.tgz#b3f4c0059af9e47eca9f3f660e51d81307e72307" + integrity sha512-pMR7hBVUUGI7PMA37m2ofIdQCsomVnas+Jn5UPGAHQ+/LlwKm/aTLJHdasmHRzlfeZwHiAOaRSo2rbBDm3nNUQ== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.3" + +regexpp@^3.1.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-3.2.0.tgz#0425a2768d8f23bad70ca4b90461fa2f1213e1b2" + integrity sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg== + regexpu-core@^4.7.1: version "4.8.0" resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-4.8.0.tgz#e5605ba361b67b1718478501327502f4479a98f0" @@ -5996,6 +7183,11 @@ regjsparser@^0.7.0: dependencies: jsesc "~0.5.0" +remove-accents@0.4.2: + version "0.4.2" + resolved "https://registry.yarnpkg.com/remove-accents/-/remove-accents-0.4.2.tgz#0a43d3aaae1e80db919e07ae254b285d9e1c7bb5" + integrity sha1-CkPTqq4egNuRngeuJUsoXZ4ce7U= + remove-trailing-separator@^1.0.1: version "1.1.0" resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" @@ -6048,6 +7240,11 @@ resolve-from@^3.0.0: resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-3.0.0.tgz#b22c7af7d9d6881bc8b6e653335eebcb0a188748" integrity sha1-six699nWiBvItuZTM17rywoYh0g= +resolve-from@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" + integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== + resolve-from@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-5.0.0.tgz#c35225843df8f776df21c57557bc087e9dfdfc69" @@ -6066,6 +7263,23 @@ resolve@^1.1.6, resolve@^1.10.0, resolve@^1.13.1, resolve@^1.14.2, resolve@^1.18 is-core-module "^2.2.0" path-parse "^1.0.6" +resolve@^1.12.0: + version "1.22.0" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.0.tgz#5e0b8c67c15df57a89bdbabe603a002f21731198" + integrity sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw== + dependencies: + is-core-module "^2.8.1" + path-parse "^1.0.7" + supports-preserve-symlinks-flag "^1.0.0" + +resolve@^2.0.0-next.3: + version "2.0.0-next.3" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-2.0.0-next.3.tgz#d41016293d4a8586a39ca5d9b5f15cbea1f55e46" + integrity sha512-W8LucSynKUIDu9ylraa7ueVZ7hc0uAgJBxVsQSKOXOyle8a93qXhcz+XAXZ8bIq2d6i4Ehddn6Evt+0/UwKk6Q== + dependencies: + is-core-module "^2.2.0" + path-parse "^1.0.6" + restore-cursor@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-2.0.0.tgz#9f7ee287f82fd326d4fd162923d62129eee0dfaf" @@ -6084,6 +7298,13 @@ reusify@^1.0.4: resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76" integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw== +rimraf@3.0.2, rimraf@^3.0.0, rimraf@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" + integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== + dependencies: + glob "^7.1.3" + rimraf@^2.5.4: version "2.7.1" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec" @@ -6091,13 +7312,6 @@ rimraf@^2.5.4: dependencies: glob "^7.1.3" -rimraf@^3.0.0: - version "3.0.2" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" - integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== - dependencies: - glob "^7.1.3" - rimraf@~2.2.6: version "2.2.8" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.2.8.tgz#e439be2aaee327321952730f99a8929e4fc50582" @@ -6194,7 +7408,7 @@ semver@^6.0.0, semver@^6.1.1, semver@^6.1.2, semver@^6.3.0: resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== -semver@^7.3.2, semver@^7.3.5: +semver@^7.2.1, semver@^7.3.2, semver@^7.3.5: version "7.3.5" resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.5.tgz#0b621c879348d8998e4b0e4be94b3f12e6018ef7" integrity sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ== @@ -6320,6 +7534,15 @@ shellwords@^0.1.1: resolved "https://registry.yarnpkg.com/shellwords/-/shellwords-0.1.1.tgz#d6b9181c1a48d397324c84871efbcfc73fc0654b" integrity sha512-vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww== +side-channel@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.0.4.tgz#efce5c8fdc104ee751b25c58d4290011fa5ea2cf" + integrity sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw== + dependencies: + call-bind "^1.0.0" + get-intrinsic "^1.0.2" + object-inspect "^1.9.0" + signal-exit@^3.0.0, signal-exit@^3.0.2: version "3.0.5" resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.5.tgz#9e3e8cc0c75a99472b44321033a7702e7738252f" @@ -6353,6 +7576,15 @@ slice-ansi@^2.0.0: astral-regex "^1.0.0" is-fullwidth-code-point "^2.0.0" +slice-ansi@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-4.0.0.tgz#500e8dd0fd55b05815086255b3195adf2a45fe6b" + integrity sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ== + dependencies: + ansi-styles "^4.0.0" + astral-regex "^2.0.0" + is-fullwidth-code-point "^3.0.0" + slugify@^1.3.4: version "1.6.1" resolved "https://registry.yarnpkg.com/slugify/-/slugify-1.6.1.tgz#a5fcaef29f4e57c6e932ce7044b6ffd9cf81b641" @@ -6520,7 +7752,7 @@ string-length@^4.0.1: char-regex "^1.0.2" strip-ansi "^6.0.0" -string-width@^4.1.0, string-width@^4.2.0: +string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: version "4.2.3" resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== @@ -6529,6 +7761,36 @@ string-width@^4.1.0, string-width@^4.2.0: is-fullwidth-code-point "^3.0.0" strip-ansi "^6.0.1" +string.prototype.matchall@^4.0.6: + version "4.0.6" + resolved "https://registry.yarnpkg.com/string.prototype.matchall/-/string.prototype.matchall-4.0.6.tgz#5abb5dabc94c7b0ea2380f65ba610b3a544b15fa" + integrity sha512-6WgDX8HmQqvEd7J+G6VtAahhsQIssiZ8zl7zKh1VDMFyL3hRTJP4FTNA3RbIp2TOQ9AYNDcc7e3fH0Qbup+DBg== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.3" + es-abstract "^1.19.1" + get-intrinsic "^1.1.1" + has-symbols "^1.0.2" + internal-slot "^1.0.3" + regexp.prototype.flags "^1.3.1" + side-channel "^1.0.4" + +string.prototype.trimend@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz#e75ae90c2942c63504686c18b287b4a0b1a45f80" + integrity sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.3" + +string.prototype.trimstart@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz#b36399af4ab2999b4c9c648bd7a3fb2bb26feeed" + integrity sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.3" + string_decoder@~1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8" @@ -6565,6 +7827,16 @@ strip-final-newline@^2.0.0: resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-2.0.0.tgz#89b852fb2fcbe936f6f4b3187afb0a12c1ab58ad" integrity sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA== +strip-indent@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-2.0.0.tgz#5ef8db295d01e6ed6cbf7aab96998d7822527b68" + integrity sha1-XvjbKV0B5u1sv3qrlpmNeCJSe2g= + +strip-json-comments@^3.1.0, strip-json-comments@^3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" + integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== + sucrase@^3.20.0: version "3.20.3" resolved "https://registry.yarnpkg.com/sucrase/-/sucrase-3.20.3.tgz#424f1e75b77f955724b06060f1ae708f5f0935cf" @@ -6604,11 +7876,27 @@ supports-hyperlinks@^2.0.0: has-flag "^4.0.0" supports-color "^7.0.0" +supports-preserve-symlinks-flag@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" + integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== + symbol-tree@^3.2.4: version "3.2.4" resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.4.tgz#430637d248ba77e078883951fb9aa0eed7c63fa2" integrity sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw== +table@^6.0.9: + version "6.8.0" + resolved "https://registry.yarnpkg.com/table/-/table-6.8.0.tgz#87e28f14fa4321c3377ba286f07b79b281a3b3ca" + integrity sha512-s/fitrbVeEyHKFa7mFdkuQMWlH1Wgw/yEXMt5xACT4ZpzWFluehAxRtUUQKPuWhaLAWhFcVx6w3oC8VKaUfPGA== + dependencies: + ajv "^8.0.1" + lodash.truncate "^4.4.2" + slice-ansi "^4.0.0" + string-width "^4.2.3" + strip-ansi "^6.0.1" + temp@0.8.3: version "0.8.3" resolved "https://registry.yarnpkg.com/temp/-/temp-0.8.3.tgz#e0c6bc4d26b903124410e4fed81103014dfc1f59" @@ -6641,6 +7929,11 @@ test-exclude@^6.0.0: glob "^7.1.4" minimatch "^3.0.4" +text-table@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" + integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ= + thenify-all@^1.0.0: version "1.6.0" resolved "https://registry.yarnpkg.com/thenify-all/-/thenify-all-1.6.0.tgz#1a1918d402d8fc3f98fbf234db0bcc8cc10e9726" @@ -6741,11 +8034,30 @@ ts-interface-checker@^0.1.9: resolved "https://registry.yarnpkg.com/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz#784fd3d679722bc103b1b4b8030bcddb5db2a699" integrity sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA== +tslib@^1.8.1: + version "1.14.1" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" + integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== + tslib@^2.0.1: version "2.3.1" resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.3.1.tgz#e8a335add5ceae51aa261d32a490158ef042ef01" integrity sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw== +tsutils@^3.21.0: + version "3.21.0" + resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-3.21.0.tgz#b48717d394cea6c1e096983eed58e9d61715b623" + integrity sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA== + dependencies: + tslib "^1.8.1" + +type-check@^0.4.0, type-check@~0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1" + integrity sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew== + dependencies: + prelude-ls "^1.2.1" + type-check@~0.3.2: version "0.3.2" resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72" @@ -6758,6 +8070,11 @@ type-detect@4.0.8: resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c" integrity sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g== +type-fest@^0.20.2: + version "0.20.2" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.20.2.tgz#1bf207f4b28f91583666cb5fbd327887301cd5f4" + integrity sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ== + type-fest@^0.21.3: version "0.21.3" resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.21.3.tgz#d260a24b0198436e133fa26a524a6d65fa3b2e37" @@ -6785,6 +8102,11 @@ typedarray-to-buffer@^3.1.5: dependencies: is-typedarray "^1.0.0" +typescript@^4.5.5: + version "4.5.5" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.5.5.tgz#d8c953832d28924a9e3d37c73d729c846c5896f3" + integrity sha512-TCTIul70LyWe6IJWT8QSYeA54WQe8EjQFU4wY52Fasj5UKx88LNYKCgBEHcOMOrFF1rKGbD8v/xcNWVUq9SymA== + ua-parser-js@^0.7.30: version "0.7.31" resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-0.7.31.tgz#649a656b191dffab4f21d5e053e27ca17cbff5c6" @@ -6803,6 +8125,16 @@ ultron@1.0.x: resolved "https://registry.yarnpkg.com/ultron/-/ultron-1.0.2.tgz#ace116ab557cd197386a4e88f4685378c8b2e4fa" integrity sha1-rOEWq1V80Zc4ak6I9GhTeMiy5Po= +unbox-primitive@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/unbox-primitive/-/unbox-primitive-1.0.1.tgz#085e215625ec3162574dc8859abee78a59b14471" + integrity sha512-tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw== + dependencies: + function-bind "^1.1.1" + has-bigints "^1.0.1" + has-symbols "^1.0.2" + which-boxed-primitive "^1.0.2" + unicode-canonical-property-names-ecmascript@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz#301acdc525631670d39f6146e0e77ff6bbdebddc" @@ -6851,6 +8183,14 @@ universalify@^2.0.0: resolved "https://registry.yarnpkg.com/universalify/-/universalify-2.0.0.tgz#75a4984efedc4b08975c5aeb73f530d02df25717" integrity sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ== +unload@2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/unload/-/unload-2.2.0.tgz#ccc88fdcad345faa06a92039ec0f80b488880ef7" + integrity sha512-B60uB5TNBLtN6/LsgAf3udH9saB5p7gqJwcFfbOEZ8BcBHnGwCf6G/TGiEqkRAxX7zAFIUtzdrXQSdL3Q/wqNA== + dependencies: + "@babel/runtime" "^7.6.2" + detect-node "^2.0.4" + unpipe@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" @@ -6864,6 +8204,13 @@ unset-value@^1.0.0: has-value "^0.3.1" isobject "^3.0.0" +uri-js@^4.2.2: + version "4.4.1" + resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e" + integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg== + dependencies: + punycode "^2.1.0" + urix@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" @@ -6914,6 +8261,11 @@ uuid@^8.3.0: resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2" integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg== +v8-compile-cache@^2.0.3: + version "2.3.0" + resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz#2de19618c66dc247dcfb6f99338035d8245a2cee" + integrity sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA== + v8-to-istanbul@^7.0.0: version "7.1.2" resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-7.1.2.tgz#30898d1a7fa0c84d225a2c1434fb958f290883c1" @@ -7023,6 +8375,17 @@ whatwg-url@^8.0.0, whatwg-url@^8.5.0: tr46 "^2.1.0" webidl-conversions "^6.1.0" +which-boxed-primitive@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz#13757bc89b209b049fe5d86430e21cf40a89a8e6" + integrity sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg== + dependencies: + is-bigint "^1.0.1" + is-boolean-object "^1.1.0" + is-number-object "^1.0.4" + is-string "^1.0.5" + is-symbol "^1.0.3" + which-module@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" @@ -7042,7 +8405,7 @@ which@^2.0.1, which@^2.0.2: dependencies: isexe "^2.0.0" -word-wrap@~1.2.3: +word-wrap@^1.2.3, word-wrap@~1.2.3: version "1.2.3" resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c" integrity sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==