diff --git a/examples/3.routes/8.tolls-and-ferries/README.md b/examples/3.routes/8.tolls-and-ferries/README.md index b821e02..f2cfa22 100644 --- a/examples/3.routes/8.tolls-and-ferries/README.md +++ b/examples/3.routes/8.tolls-and-ferries/README.md @@ -16,4 +16,4 @@ This example will explain how to add ferries and toll roads to the journey overv ## Next steps -The last couple of examples explained most of the variables when it comes to routing. In the next step, the vector tile service is introduced. +In this example we saw how to add tolls and ferries onto our journey overview. In the next example we will try requesting certain amenities on charging stops. diff --git a/examples/3.routes/8.tolls-and-ferries/index.js b/examples/3.routes/8.tolls-and-ferries/index.js index e8eba5c..3754adf 100644 --- a/examples/3.routes/8.tolls-and-ferries/index.js +++ b/examples/3.routes/8.tolls-and-ferries/index.js @@ -12,6 +12,10 @@ import { drawRoutePolyline } from './map'; * - queries.js - The GraphQL queries used in the networking requests */ +// Until the route loads, don't load the sidecard +const sideCard = document.getElementById('side-card'); +sideCard.style.display = 'block'; + getRoute(route => { drawRoutePolyline(route); renderRouteData(route); diff --git a/examples/3.routes/9.amenities-on-route/README.md b/examples/3.routes/9.amenities-on-route/README.md new file mode 100644 index 0000000..d17b76e --- /dev/null +++ b/examples/3.routes/9.amenities-on-route/README.md @@ -0,0 +1,21 @@ +# Add amenities to your route + +I need coffee! The kids need a bathroom break! Feed me or I'll end it all! Common complaints heard whilst driving. With amenity-based-routing, your caffeine/bathroom/food/other needs can be catered too, all whilst you charge your vehicle. + +## Requirements + +- [Chargetrip API key](https://account.chargetrip.com) - to plot routes outside this region +- [Mapbox API key](https://www.mapbox.com) - to display the map +- [URQL](https://formidable.com/open-source/urql/) - a lightweight graphQL client + +## Steps to take + +1. Plotting a route starts by executing the `newRoute` mutation. This mutation requires information about the car, origin and destination. After the mutation is finished executing a route `id` will be returned. Here the amenity preferences for the route should be added. +2. This `id` can be used to request route updates through the `routeUpdatedById` subscription. This subscription receives dynamic updates. +3. After the subscription returns done as status, data can be rendered onto the screen. The `polyline` and the `legs` object will be used to display charge stations on the map. Total distance, duration of a trip, consumption are displayed on the side. +4. The amenities are also displayed underneath the relevant station for the end user to see. +5. Using the `route.leg.type` property, it's possible to check if a leg ends at an amenity. + +## Next steps + +This example shows how routing can be supplemented by adding amenities during certain charging stops. Next, let's move on from routing and dive in to the tile service. diff --git a/examples/3.routes/9.amenities-on-route/client.js b/examples/3.routes/9.amenities-on-route/client.js new file mode 100644 index 0000000..7c7c447 --- /dev/null +++ b/examples/3.routes/9.amenities-on-route/client.js @@ -0,0 +1,88 @@ +import { createClient, createRequest, defaultExchanges, subscriptionExchange } from '@urql/core'; +import { pipe, subscribe } from 'wonka'; +import { SubscriptionClient } from 'subscriptions-transport-ws'; +import { createRouteQuery, routeUpdateSubscription, getAmenityListQuery } from './queries.js'; + +/** + * Example application of how to build a route with the Chargetrip API. + * Please have a look to Readme file in this repo for more details. + * + * For the purpose of this example we use urgl - lightweights GraphQL client. + * To establish a connection with Chargetrip GraphQL API you need to have an API key. + * The key in this example is a public one and gives access only to a part of our extensive database. + * You need a registered `x-client-id` to access the full database. + * Read more about an authorisation in our documentation (https://docs.chargetrip.com/#authorisation). + */ +const headers = { + //Replace this x-client-id and app-id with your own to get access to more cars + 'x-client-id': '5ed1175bad06853b3aa1e492', + 'x-app-id': '623998b2c35130073829b2d2', +}; + +const subscriptionClient = new SubscriptionClient('wss://api.chargetrip.io/graphql', { + reconnect: true, + connectionParams: headers, +}); + +const client = createClient({ + url: 'https://api.chargetrip.io/graphql', + fetchOptions: { + method: 'POST', + headers, + }, + exchanges: [ + ...defaultExchanges, + subscriptionExchange({ + forwardSubscription(operation) { + return subscriptionClient.request(operation); + }, + }), + ], +}); + +/** + * To create a route you need: + * + * 1. Create a new route and receive back its ID; + * 2. Subscribe to route updates in order to receive its details. + */ +export const getRoute = callback => { + client + .mutation(createRouteQuery()) + .toPromise() + .then(response => { + const routeId = response.data.newRoute; + if (!routeId) return Promise.reject('Could not retrieve Route ID. The response is not valid.'); + + const { unsubscribe } = pipe( + client.executeSubscription(createRequest(routeUpdateSubscription, { id: routeId })), + subscribe(result => { + const { status, route } = result.data.routeUpdatedById; + + // you can keep listening to the route changes to update route information + // for this example we want to only draw the initial route + if (status === 'done' && route) { + unsubscribe(); + callback(route); + } + }), + ); + }) + .catch(error => console.log(error)); +}; + +/** + * Fetch the detail data of a specific station + * @param { string } id - the id of the station + */ +export const getAmenityData = id => { + return client + .query(getAmenityListQuery, { + stationId: id, + }) + .toPromise() + .then(response => { + return response.data; + }) + .catch(error => console.log(error)); +}; diff --git a/examples/3.routes/9.amenities-on-route/index.js b/examples/3.routes/9.amenities-on-route/index.js new file mode 100644 index 0000000..89a024d --- /dev/null +++ b/examples/3.routes/9.amenities-on-route/index.js @@ -0,0 +1,24 @@ +import { getRoute, getAmenityData } from './client'; +import { renderRouteData, renderAmenityData } from './interface'; +import { drawRoutePolyline } from './map'; + +/** + * This project shows you how to fetch a car list and render the car details + * The project structure contains; + * + * - client.js - All networking requests + * - interface.js - All interface rendering + * - map.js - All map rendering (including routes and waypoints) + * - queries.js - The GraphQL queries used in the networking requests + */ + +getRoute(route => { + drawRoutePolyline(route); + renderRouteData(route); + // Check if the leg ends at an amenity + if (route && route.legs[0].type === 'stationAmenity') { + getAmenityData(route.legs[0].stationId).then(data => { + renderAmenityData(data.amenityList[0]); + }); + } +}); diff --git a/examples/3.routes/9.amenities-on-route/interface.js b/examples/3.routes/9.amenities-on-route/interface.js new file mode 100644 index 0000000..4d008de --- /dev/null +++ b/examples/3.routes/9.amenities-on-route/interface.js @@ -0,0 +1,57 @@ +import { getDurationString } from '../../../utils'; + +/** + * Render journey overview. + * + * @param data {object} route specification + */ +export const renderRouteData = data => { + // Show the side card once the route information has loaded + const sideCard = document.getElementById('side-card'); + sideCard.style.display = 'block'; + + // the total duration of the journey (including charge time), in seconds + document.getElementById('duration').innerHTML = `${getDurationString(data.duration ?? 0)}`; + + // the total distance of the route, in meters converted to km + const routeDistance = data.distance ? `${(data.distance / 1000).toFixed(0)} km` : 'Unknown'; + + // the total energy used of the route, in kWh + const routeEnergy = data.consumption ? `${data.consumption.toFixed(2)} kWh` : 'Unknown'; + + // the amount of stops in this route + const routeStops = `${data.charges ?? 0} stops`; + + // A combined field containing several of the route meta data + document.getElementById('route-metadata').innerHTML = `${routeDistance} / ${routeStops} / ${routeEnergy}`; + + const numberOfLegs = data.legs.length; + // Populate journey overview + if (data && data.legs) { + // Show first distance + document.getElementById('first-leg-distance').innerHTML = `Drive for ${(data.legs[0].distance / 1000).toFixed( + 1, + )} km`; + document.getElementById('first-leg-duration').innerHTML = `Approx ${getDurationString(data.legs[0].duration)}`; + document.getElementById('charging-time').innerHTML = `Charge for ${getDurationString(data.legs[0].chargeTime)}utes`; + document.getElementById('last-leg-distance').innerHTML = `Drive for ${( + data.legs[numberOfLegs - 1].distance / 1000 + ).toFixed(1)} km`; + document.getElementById('last-leg-duration').innerHTML = `Approx ${getDurationString( + data.legs[numberOfLegs - 1].duration, + )}`; + } +}; + +/** + * Render a horizontal list of amenity icons + * @param { Object } amenities - an object that contains all amenities and their details + */ +export const renderAmenityData = amenityData => { + let amenityName = document.getElementById('restaurant-name'); + let amenityAddress = document.getElementById('restaurant-address'); + let amenityDistance = document.getElementById('restaurant-distance'); + amenityName.innerHTML = amenityData.name; + amenityAddress.innerHTML = `${amenityData.address.formattedAddress[0]} | ${amenityData.address.country}`; + amenityDistance.innerHTML = `${amenityData.distance} meters from charging station`; +}; diff --git a/examples/3.routes/9.amenities-on-route/map.js b/examples/3.routes/9.amenities-on-route/map.js new file mode 100644 index 0000000..e992281 --- /dev/null +++ b/examples/3.routes/9.amenities-on-route/map.js @@ -0,0 +1,185 @@ +import mapboxgl from 'mapbox-gl'; +import { getDurationString } from '../../../utils'; +import * as mapboxPolyline from '@mapbox/polyline'; + +mapboxgl.accessToken = 'pk.eyJ1IjoiY2hhcmdldHJpcCIsImEiOiJjazhpaG8ydTIwNWNpM21ud29xeXc2amhlIn0.rGKgR3JfG9Z5dCWjUI_oGA'; + +// Keep track of the charging time popups +let chargingTimePopUps = []; + +const map = new mapboxgl.Map({ + cooperativeGestures: true, + container: 'map', + style: 'mapbox://styles/chargetrip/ckgcbf3kz0h8819qki8uwhe0k', + zoom: 7, + center: [10, 55.0758916], +}); + +/** + * Draw a route on a map. + * + * Route object contains `polyline` data - the polyline encoded route (series of coordinates as a single string). + * We need to decode this information first. We use Mapbox polyline tool (https://www.npmjs.com/package/@mapbox/polyline) for this. + * As a result of decoding we get pairs [latitude, longitude]. + * To draw a route on a map we use Mapbox GL JS. This tool uses the format [longitude,latitude], + * so we have to reverse every pair. + * + * @param data {object} route specification + */ +export const drawRoutePolyline = data => { + const decodedData = mapboxPolyline.decode(data.polyline); + const reversed = decodedData.map(item => item.reverse()); + + drawRoute(reversed, data.legs); +}; + +/** + * Draw route polyline and show charging stations on the map. + * + * @param coordinates {array} Array of coordinates + * @param legs {array} route legs (stops) - each leg represents either a charging station, or via point or final point + */ +const drawRoute = (coordinates, legs) => { + if (map.loaded()) { + drawPolyline(coordinates); + drawChargingTimes(legs); + showLegs(legs); + } else { + map.on('load', () => { + drawPolyline(coordinates); + drawChargingTimes(legs); + showLegs(legs); + }); + } +}; + +/** + * Render the charging times at each station directly on top of it's marker. + * @param {array} legs - each leg represents either a charging station, or a via point or final point + */ +const drawChargingTimes = legs => { + legs.forEach((leg, idx) => { + if (idx == legs.length - 1) { + return; + } + + const chargeTime = leg.chargeTime; + const hrs = ~~(chargeTime / 3600); + const mins = ~~((chargeTime % 3600) / 60); + + const popup = new mapboxgl.Popup({ closeOnClick: false }) + .setLngLat(leg.destination.geometry.coordinates) + .setHTML(`${hrs}:${mins}`) + .addTo(map); + + // Add the popup to the chargingTimePopUps array + chargingTimePopUps.push(popup); + }); +}; + +/** + * Draw route polyline on a map. + * + * @param coordinates {array} polyline coordinates + */ +const drawPolyline = coordinates => { + const geojson = { + type: 'FeatureCollection', + features: [ + { + type: 'Feature', + geometry: { + type: 'LineString', + properties: {}, + coordinates, + }, + }, + ], + }; + + map.addSource('polyline-source', { + type: 'geojson', + lineMetrics: true, + data: geojson, + }); + + map.addLayer({ + id: 'polyline', + type: 'line', + options: 'beforeLayer', + source: 'polyline-source', + layout: { + 'line-join': 'round', + 'line-cap': 'round', + }, + paint: { + 'line-color': '#0078FF', + 'line-width': 3, + }, + }); +}; + +/** + * Show the charging station, origin and destination on the map. + * + * Last leg of the route is a destination point. + * All other legs are either charging stations or via points (if route has stops). + * + * @param legs {array} route legs + */ +const showLegs = legs => { + if (legs.length === 0) return; + + let points = []; + + // we want to show origin point on the map + // to do that we use the origin of the first leg + points.push({ + type: 'Feature', + properties: { + icon: 'location_big', + }, + geometry: legs[0].origin?.geometry, + }); + + legs.map((leg, index) => { + // add charging stations + if (index !== legs.length - 1) { + points.push({ + type: 'Feature', + properties: { + description: `${getDurationString(leg.chargeTime)}`, + icon: 'restaurant', + }, + geometry: leg.destination?.geometry, + }); + } else { + // add destination point (last leg) + points.push({ + type: 'Feature', + properties: { + icon: 'arrival', + }, + geometry: leg.destination?.geometry, + }); + } + }); + + // draw route points on a map + map.addLayer({ + id: 'legs', + type: 'symbol', + layout: { + 'icon-image': '{icon}', + 'icon-allow-overlap': true, + 'icon-offset': ['case', ['==', ['get', 'icon'], 'location_big'], ['literal', [0, 0]], ['literal', [0, -15]]], + }, + source: { + type: 'geojson', + data: { + type: 'FeatureCollection', + features: points, + }, + }, + }); +}; diff --git a/examples/3.routes/9.amenities-on-route/meta/index.json b/examples/3.routes/9.amenities-on-route/meta/index.json new file mode 100644 index 0000000..e287e1c --- /dev/null +++ b/examples/3.routes/9.amenities-on-route/meta/index.json @@ -0,0 +1,7 @@ +{ + "label": "Amenities on Route", + "sublabel": "Add amenities to your route", + "background": "accent", + "url": "https://examples.chargetrip.com/amenities-on-route/", + "github": "https://github.com/chargetrip/examples/tree/main/examples/3.routes/9.amenities-on-route" +} diff --git a/examples/3.routes/9.amenities-on-route/queries.js b/examples/3.routes/9.amenities-on-route/queries.js new file mode 100644 index 0000000..51cd935 --- /dev/null +++ b/examples/3.routes/9.amenities-on-route/queries.js @@ -0,0 +1,134 @@ +import qql from 'graphql-tag'; + +/* + * In this example we request a route from Hamburg, Germany to Aarhus, Denmark + * We request a restaurant stop after just under an hour and a half of driving (5000 seconds) + */ +export const createRouteQuery = () => { + return qql` +mutation newRoute{ + newRoute( + input: { + ev: { + id: "5f043b76bc262f1627fc025b" + battery: { + stateOfCharge: { + value: 100, + type: percentage + }, + finalStateOfCharge: { + value: 10, + type: percentage + } + } + numberOfPassengers: 2 + } + routeRequest: { + amenity_preferences: { + scheduled_charge_stops: [ + { + types: [restaurant], + duration: 2400, + offset: 2100, + stop_after: 3600, + max_distance_from_station: 1000 + } + ], + }, + origin: { + type: Feature + geometry: { type: Point, coordinates: [9.9872, 53.5488] } + properties: { name: "Hamburg, Germany" } + } + destination: { + type: Feature + geometry: { type: Point, coordinates: [10.2039, 56.1629] } + properties: { name: "Aarhus, Denmark" } + } + } + } + ) + } +`; +}; + +export const routeUpdateSubscription = qql` +subscription routeUpdatedById($id: ID!){ + routeUpdatedById(id: $id) { + status + route { + tags + charges + saving { + money + co2 + } + chargeTime + distance + duration + consumption + polyline + legs{ + type + rangeStartPercentage + rangeEndPercentage + plugsAvailable + plugsCount + duration + distance + chargeTime + steps { + distance + duration + } + origin{ + geometry{ + type + coordinates + } + properties + } + destination{ + geometry + { + type + coordinates + } + properties + } + stationId + } + } + } +} +`; + +export const getStationDataQuery = qql` +query station($stationId: ID!){ + station(id: $stationId) { + id + name + chargers { + status { + free + } + total + } + amenities + status + } +} +`; + +export const getAmenityListQuery = qql` + query amenityList($stationId: ID!) { + amenityList(stationId: $stationId) { + name + distance + address { + formattedAddress + country + } + } + } + `; diff --git a/public/amenities-on-route/images/amenities/bathroom.svg b/public/amenities-on-route/images/amenities/bathroom.svg new file mode 100644 index 0000000..56a42c5 --- /dev/null +++ b/public/amenities-on-route/images/amenities/bathroom.svg @@ -0,0 +1,3 @@ + + + diff --git a/public/amenities-on-route/images/amenities/border.svg b/public/amenities-on-route/images/amenities/border.svg new file mode 100644 index 0000000..e51bc73 --- /dev/null +++ b/public/amenities-on-route/images/amenities/border.svg @@ -0,0 +1,3 @@ + + + diff --git a/public/amenities-on-route/images/amenities/carwash.svg b/public/amenities-on-route/images/amenities/carwash.svg new file mode 100644 index 0000000..cb0e820 --- /dev/null +++ b/public/amenities-on-route/images/amenities/carwash.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/public/amenities-on-route/images/amenities/coffee.svg b/public/amenities-on-route/images/amenities/coffee.svg new file mode 100644 index 0000000..39e9147 --- /dev/null +++ b/public/amenities-on-route/images/amenities/coffee.svg @@ -0,0 +1,3 @@ + + + diff --git a/public/amenities-on-route/images/amenities/ferry.svg b/public/amenities-on-route/images/amenities/ferry.svg new file mode 100644 index 0000000..fd58f87 --- /dev/null +++ b/public/amenities-on-route/images/amenities/ferry.svg @@ -0,0 +1,4 @@ + + + + diff --git a/public/amenities-on-route/images/amenities/hotel.svg b/public/amenities-on-route/images/amenities/hotel.svg new file mode 100644 index 0000000..b2ee605 --- /dev/null +++ b/public/amenities-on-route/images/amenities/hotel.svg @@ -0,0 +1,3 @@ + + + diff --git a/public/amenities-on-route/images/amenities/museum.svg b/public/amenities-on-route/images/amenities/museum.svg new file mode 100644 index 0000000..0be64f8 --- /dev/null +++ b/public/amenities-on-route/images/amenities/museum.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/public/amenities-on-route/images/amenities/park.svg b/public/amenities-on-route/images/amenities/park.svg new file mode 100644 index 0000000..0e46fbd --- /dev/null +++ b/public/amenities-on-route/images/amenities/park.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/public/amenities-on-route/images/amenities/pharmacy.svg b/public/amenities-on-route/images/amenities/pharmacy.svg new file mode 100644 index 0000000..6de443e --- /dev/null +++ b/public/amenities-on-route/images/amenities/pharmacy.svg @@ -0,0 +1,3 @@ + + + diff --git a/public/amenities-on-route/images/amenities/playground.svg b/public/amenities-on-route/images/amenities/playground.svg new file mode 100644 index 0000000..4b77e54 --- /dev/null +++ b/public/amenities-on-route/images/amenities/playground.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/public/amenities-on-route/images/amenities/restaurant.svg b/public/amenities-on-route/images/amenities/restaurant.svg new file mode 100644 index 0000000..885940d --- /dev/null +++ b/public/amenities-on-route/images/amenities/restaurant.svg @@ -0,0 +1,3 @@ + + + diff --git a/public/amenities-on-route/images/amenities/shopping.svg b/public/amenities-on-route/images/amenities/shopping.svg new file mode 100644 index 0000000..9d26444 --- /dev/null +++ b/public/amenities-on-route/images/amenities/shopping.svg @@ -0,0 +1,3 @@ + + + diff --git a/public/amenities-on-route/images/amenities/store.svg b/public/amenities-on-route/images/amenities/store.svg new file mode 100644 index 0000000..a11f603 --- /dev/null +++ b/public/amenities-on-route/images/amenities/store.svg @@ -0,0 +1,3 @@ + + + diff --git a/public/amenities-on-route/images/amenities/supermarket.svg b/public/amenities-on-route/images/amenities/supermarket.svg new file mode 100644 index 0000000..7528618 --- /dev/null +++ b/public/amenities-on-route/images/amenities/supermarket.svg @@ -0,0 +1,3 @@ + + + diff --git a/public/amenities-on-route/images/amenities/vehicle.svg b/public/amenities-on-route/images/amenities/vehicle.svg new file mode 100644 index 0000000..33aa26f --- /dev/null +++ b/public/amenities-on-route/images/amenities/vehicle.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/public/amenities-on-route/images/charge-turbo.svg b/public/amenities-on-route/images/charge-turbo.svg new file mode 100755 index 0000000..29e0379 --- /dev/null +++ b/public/amenities-on-route/images/charge-turbo.svg @@ -0,0 +1,3 @@ + + + diff --git a/public/amenities-on-route/images/chargetrip.svg b/public/amenities-on-route/images/chargetrip.svg new file mode 100644 index 0000000..114f416 --- /dev/null +++ b/public/amenities-on-route/images/chargetrip.svg @@ -0,0 +1,3 @@ + + + diff --git a/public/amenities-on-route/images/close.svg b/public/amenities-on-route/images/close.svg new file mode 100644 index 0000000..256824e --- /dev/null +++ b/public/amenities-on-route/images/close.svg @@ -0,0 +1,4 @@ + + + + diff --git a/public/amenities-on-route/images/endPoint.svg b/public/amenities-on-route/images/endPoint.svg new file mode 100644 index 0000000..f1dea34 --- /dev/null +++ b/public/amenities-on-route/images/endPoint.svg @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + diff --git a/public/amenities-on-route/images/ferry.svg b/public/amenities-on-route/images/ferry.svg new file mode 100755 index 0000000..fd58f87 --- /dev/null +++ b/public/amenities-on-route/images/ferry.svg @@ -0,0 +1,4 @@ + + + + diff --git a/public/amenities-on-route/images/github.svg b/public/amenities-on-route/images/github.svg new file mode 100644 index 0000000..27c42a2 --- /dev/null +++ b/public/amenities-on-route/images/github.svg @@ -0,0 +1,3 @@ + + + diff --git a/public/amenities-on-route/images/startPoint.svg b/public/amenities-on-route/images/startPoint.svg new file mode 100644 index 0000000..4e98ef5 --- /dev/null +++ b/public/amenities-on-route/images/startPoint.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/public/amenities-on-route/images/station-pinlet.svg b/public/amenities-on-route/images/station-pinlet.svg new file mode 100755 index 0000000..456d35a --- /dev/null +++ b/public/amenities-on-route/images/station-pinlet.svg @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + diff --git a/public/amenities-on-route/images/toll.svg b/public/amenities-on-route/images/toll.svg new file mode 100644 index 0000000..b18eb7b --- /dev/null +++ b/public/amenities-on-route/images/toll.svg @@ -0,0 +1 @@ + diff --git a/public/amenities-on-route/images/vehicle.svg b/public/amenities-on-route/images/vehicle.svg new file mode 100755 index 0000000..f9c6306 --- /dev/null +++ b/public/amenities-on-route/images/vehicle.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/public/amenities-on-route/index.html b/public/amenities-on-route/index.html new file mode 100644 index 0000000..af78ac3 --- /dev/null +++ b/public/amenities-on-route/index.html @@ -0,0 +1,99 @@ + + + + + Chargetrip API: Amenity routing example + + + + + + + + + + +
+
+
+ +
+ + + diff --git a/public/amenities-on-route/style.css b/public/amenities-on-route/style.css new file mode 100644 index 0000000..ef7e302 --- /dev/null +++ b/public/amenities-on-route/style.css @@ -0,0 +1,494 @@ +:root { + --base: 16px; + + --font-size-h1: 2rem; + --font-size-h2: 1.5rem; + --font-size-h3: 1.25rem; + --font-size-base: 0.875rem; + --font-size-small: 0.75rem; + --font-size-micro: 0.5rem; + + --background-body: #ffffff; + --background-subdued: #e5f0f5; + --background-base: #f4f8fb; + --background-alt: #e5f0f5; + --background-alt2: #c9dee9; + --background-alt3: #8dadbf; + --background-alt4: #608192; + + --accent-base: #0078ff; + --accent-alt: #005ee5; + --accent-alt2: #0041c8; + + --status-approved: #2bc7b4; + + --font-base: #1b2023; + --font-alt: #2c353a; + --font-alt2: #45535b; + --font-alt3: #566a75; +} + +html, +body { + padding: 0; + margin: 0; + color: var(--font-base); + font-family: 'Inter', 'Roboto', sans-serif; + font-size: var(--base); + font-weight: normal; +} + +* { + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; + box-sizing: border-box; +} + +h1, +h2, +h3, +h4, +h5, +h6, +p { + margin: 0; + padding: 0; +} + +h1 { + font-weight: bold; + font-size: var(--font-size-h1); + line-height: 2.5rem; +} + +h3 { + font-weight: 600; + font-size: var(--font-size-h3); + line-height: 1.75rem; +} + +p { + font-style: normal; + font-weight: normal; + font-size: var(--font-size-base); + line-height: 1.75rem; +} + +a { + text-decoration: none; + color: var(--font-base); +} + +ul { + list-style: none; + margin: 0; + padding: 0; +} + +li { + padding: 0.25rem 0; + display: flex; + justify-content: space-between; +} + +li p:last-child { + font-weight: 600; +} + +button { + width: 100%; + height: 40px; + display: flex; + align-items: center; + justify-content: center; + font-size: var(--font-size-base); + font-weight: 600; + color: var(--background-body); + border-radius: 4px; + background-color: var(--accent-base); + border: none; + cursor: pointer; + transition: all 300ms ease-in-out; + font-weight: bold; +} + +button:disabled { + background-color: var(--background-alt2); + color: var(--font-alt3); + opacity: 0.5; + cursor: not-allowed; +} + +section { + padding: 1rem; + border-top: 1px solid var(--background-alt); +} + +main section:first-child { + border-top: none; +} + +#map { + width: 100%; + height: 100%; + position: absolute; + top: 0; + left: 0; +} + +.card { + position: relative; + overflow: hidden; + display: grid; + top: 1rem; + left: 1rem; + width: 360px; + height: calc(100vh - 2rem); + border-radius: 8px; + background-color: var(--background-body); + box-shadow: 0px 8px 62px rgba(0, 0, 0, 0.07), 0px 9.63424px 10.0459px rgba(0, 0, 0, 0.08), + 0px 5.80506px 6.13245px rgba(0, 0, 0, 0.0310277), 0px -4px 3.46624px rgba(0, 0, 0, 0.024633), + 0px 24px 64px rgba(0, 0, 0, 0.08); + z-index: 10; + + grid-template-areas: + 'header' + 'main' + 'footer'; + + grid-template-rows: min-content 1fr min-content; +} + +.card header { + z-index: 10; + grid-area: header; + width: inherit; + padding: 1rem; + background: var(--background-body); + box-shadow: 0px 4px 4px 4px rgba(0, 0, 0, 0.02), 0px 2px 6px -1px rgba(0, 0, 0, 0.1); +} + +header h1 { + width: 100%; + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; +} + +header p { + color: var(--font-alt3); +} + +.border-crossing { + display: flex; + align-items: center; + margin: 0.25rem 0 0; +} + +.border-crossing p { + font-size: var(--font-size-base); + color: var(--font-base); + font-weight: bold; + padding-left: 0.5rem; +} + +.border-crossing .icon { + width: 24px; + height: 24px; + border-radius: 12px; + background: url('images/border.svg') no-repeat center center #1b2023; +} + +.card main { + grid-area: main; + overflow-y: auto; +} + +.car-details { + width: 100%; + height: 100%; + border-radius: 0.5rem; + background: radial-gradient(61.98% 65.37% at 41.69% 0%, #434850 0%, #252a32 100%); + display: flex; + flex-direction: column; + align-items: center; + padding: 1rem 0; + margin-bottom: 1rem; +} + +.car-details p { + color: var(--background-base); + line-height: 1.25rem; + font-size: var(--base); +} + +.car-image { + margin-top: 1rem; +} + +.tag { + border-radius: 16px; + padding: 4px 8px; + background: var(--background-alt); + color: var(--font-alt3); +} + +.tag.blue { + background-color: rgba(0, 120, 255, 0.2); + color: var(--accent-base); +} + +.tag.red { + background-color: rgba(244, 111, 9, 0.2); + color: #f46f09; +} + +.card footer { + grid-area: footer; + border-radius: 0 0 0.5rem 0.5rem; + width: 360px; + background: var(--background-body); + border-top: 1px solid var(--background-alt); +} + +.action { + padding: 1rem 1rem; + border-bottom: 1px solid var(--background-alt); +} + +.chargetrip-logo { + display: inline-block; + height: 2.5rem; + line-height: 39px; + background: url('images/chargetrip.svg') no-repeat right center transparent; + background-size: 5.25rem; + padding-right: 5.5rem; + font-size: var(--font-size-small); + font-weight: 600; + text-transform: uppercase; + color: var(--font-alt3); + font-weight: bold; +} + +.prefooter { + padding: 1rem; + border-bottom: 1px solid var(--background-alt); +} + +.disclaimer { + padding: 0 1rem; +} + +.mapboxgl-ctrl-attrib-button { + display: none; +} + +.mapboxgl-popup-tip, +.mapboxgl-popup-close-button { + display: none; +} + +.mapboxgl-popup-content { + background: var(--background-base); + margin: 0px 0 24px 40px; + padding: 0 0.375rem; + border-radius: 0.75rem; + box-shadow: 0px 2px 6px rgba(37, 42, 50, 0.12); + font-size: var(--font-size-small); + font-weight: bold; +} + +.mapboxgl-popup-content small { + margin-top: -1px; + display: flex; +} + +/* View project on the github link */ +.github-link { + position: fixed; + top: 16px; + right: 16px; + display: flex; + align-items: center; + + padding: 0 12px; + box-shadow: 0 16px 32px rgba(0, 0, 0, 0.08); + + background-color: #fff; + border-radius: 20px; + + color: #0c0c10; + font-size: 15px; + font-weight: 500; + line-height: 40px; + z-index: 2; +} + +.github-link a { + padding: 0 16px 0 32px; + margin: 0 8px 0 0; + background: url('images/github.svg') no-repeat left center; + border-right: 1px solid #edf2f6; + color: var(--font-base); + font-weight: bold; +} + +.github-link button { + width: 16px; + height: 16px; + padding: 0; + background: url('images/close.svg') no-repeat; + border: none; + cursor: pointer; + -webkit-appearance: none; +} + +.github button:focus { + outline: none; +} + +.journey-timeline { + position: relative; +} +.journey-timeline:after { + position: absolute; + content: ' '; + top: 22px; + left: 12px; + bottom: 40px; + width: 8px; + background-color: #e5f0f5; +} +.timeline-item { + padding: 8px 0 18px 48px; + position: relative; +} +.timeline-item.station, +.timeline-item.timelineDestination, +.timeline-item.waypoint { + padding-top: 16px; +} +.timeline-item.waypoint { + min-height: 88px; +} +.timeline-item.timelineDestination .timeline-content p, +.timeline-item.waypoint .timeline-content p, +.timeline-item.timelineStartPoint .timeline-content p { + text-overflow: ellipsis; + white-space: nowrap; + overflow: hidden; +} +.timeline-item.station { + cursor: pointer; +} +.timeline-icon { + position: absolute; + left: 0; + width: 32px; + height: 32px; + border-radius: 50%; + z-index: 1; + background-color: #fff; + background-repeat: no-repeat; + background-position: center; + filter: drop-shadow(0px 2px 6px rgba(37, 42, 50, 0.12)); +} +.timeline-icon.timelineStartPoint svg { + width: 18px; +} +.timeline-icon.vehicle { + background-image: url('images/vehicle.svg'); +} +.timeline-icon.station { + background-image: url('images/amenities/restaurant.svg'); + /* background-color: #0078ff; */ +} +.timeline-icon.ferry { + background-image: url('images/ferry.svg'); + background-repeat: no-repeat; + background-position: center; + background-color: #fff; +} +.timeline-item .separator { + width: 8px; + position: absolute; + left: 12px; + top: 0px; + background: #fff; + height: 16px; + z-index: 1; +} +.timeline-item .separator .circle-container { + background: #d3d3d3; + border-bottom-left-radius: 8px; + border-bottom-right-radius: 8px; + padding: 1px; +} +.timeline-item .separator .circle { + width: 6px; + height: 6px; + background: #fff; + border-radius: 50%; +} +.timeline-item .separator.waypoint { + top: unset; + bottom: -8px; +} +.timeline-item .title { + font-weight: bold; +} +.station-title-container { + display: flex; + align-items: flex-start; + justify-content: space-between; +} +.station-info { + display: flex; + align-items: flex-start; + justify-content: space-between; +} + +.drive-title-container { + display: flex; + align-items: flex-start; + justify-content: space-between; +} + +.amenities { + display: flex; + overflow-x: scroll; + -ms-overflow-style: none; + scrollbar-width: none; +} + +.amenities li:last-child { + margin-right: 0; +} + +.amenities li { + margin-right: 0.5rem; +} + +.amenity { + width: 40px; + height: 40px; + border-radius: 20px; + background-color: var(--background-alt); + display: flex; + align-items: center; + justify-content: center; +} + +.start .icon { + background-image: url('images/startPoint.svg'); +} + +.end .icon { + background-color: #fff; + background-image: url('images/endPoint.svg'); + background-repeat: no-repeat; + background-position: center; +} + +.restaurant { +} diff --git a/public/bundle.js b/public/bundle.js new file mode 100644 index 0000000..65b4f2b --- /dev/null +++ b/public/bundle.js @@ -0,0 +1,4097 @@ +(function() { + 'use strict'; + + var commonjsGlobal = + typeof globalThis !== 'undefined' + ? globalThis + : typeof window !== 'undefined' + ? window + : typeof global !== 'undefined' + ? global + : typeof self !== 'undefined' + ? self + : {}; + + function createCommonjsModule(fn, module) { + return (module = { exports: {} }), fn(module, module.exports), module.exports; + } + + var check = function(it) { + return it && it.Math == Math && it; + }; + + // https://github.com/zloirock/core-js/issues/86#issuecomment-115759028 + var global_1 = + // eslint-disable-next-line no-undef + check(typeof globalThis == 'object' && globalThis) || + check(typeof window == 'object' && window) || + check(typeof self == 'object' && self) || + check(typeof commonjsGlobal == 'object' && commonjsGlobal) || + // eslint-disable-next-line no-new-func + Function('return this')(); + + var fails = function(exec) { + try { + return !!exec(); + } catch (error) { + return true; + } + }; + + // Thank's IE8 for his funny defineProperty + var descriptors = !fails(function() { + return ( + Object.defineProperty({}, 1, { + get: function() { + return 7; + }, + })[1] != 7 + ); + }); + + var nativePropertyIsEnumerable = {}.propertyIsEnumerable; + var getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor; + + // Nashorn ~ JDK8 bug + var NASHORN_BUG = getOwnPropertyDescriptor && !nativePropertyIsEnumerable.call({ 1: 2 }, 1); + + // `Object.prototype.propertyIsEnumerable` method implementation + // https://tc39.github.io/ecma262/#sec-object.prototype.propertyisenumerable + var f = NASHORN_BUG + ? function propertyIsEnumerable(V) { + var descriptor = getOwnPropertyDescriptor(this, V); + return !!descriptor && descriptor.enumerable; + } + : nativePropertyIsEnumerable; + + var objectPropertyIsEnumerable = { + f: f, + }; + + var createPropertyDescriptor = function(bitmap, value) { + return { + enumerable: !(bitmap & 1), + configurable: !(bitmap & 2), + writable: !(bitmap & 4), + value: value, + }; + }; + + var toString = {}.toString; + + var classofRaw = function(it) { + return toString.call(it).slice(8, -1); + }; + + var split = ''.split; + + // fallback for non-array-like ES3 and non-enumerable old V8 strings + var indexedObject = fails(function() { + // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346 + // eslint-disable-next-line no-prototype-builtins + return !Object('z').propertyIsEnumerable(0); + }) + ? function(it) { + return classofRaw(it) == 'String' ? split.call(it, '') : Object(it); + } + : Object; + + // `RequireObjectCoercible` abstract operation + // https://tc39.github.io/ecma262/#sec-requireobjectcoercible + var requireObjectCoercible = function(it) { + if (it == undefined) throw TypeError("Can't call method on " + it); + return it; + }; + + // toObject with fallback for non-array-like ES3 strings + + var toIndexedObject = function(it) { + return indexedObject(requireObjectCoercible(it)); + }; + + var isObject = function(it) { + return typeof it === 'object' ? it !== null : typeof it === 'function'; + }; + + // `ToPrimitive` abstract operation + // https://tc39.github.io/ecma262/#sec-toprimitive + // instead of the ES6 spec version, we didn't implement @@toPrimitive case + // and the second argument - flag - preferred type is a string + var toPrimitive = function(input, PREFERRED_STRING) { + if (!isObject(input)) return input; + var fn, val; + if (PREFERRED_STRING && typeof (fn = input.toString) == 'function' && !isObject((val = fn.call(input)))) return val; + if (typeof (fn = input.valueOf) == 'function' && !isObject((val = fn.call(input)))) return val; + if (!PREFERRED_STRING && typeof (fn = input.toString) == 'function' && !isObject((val = fn.call(input)))) + return val; + throw TypeError("Can't convert object to primitive value"); + }; + + var hasOwnProperty = {}.hasOwnProperty; + + var has = function(it, key) { + return hasOwnProperty.call(it, key); + }; + + var document$1 = global_1.document; + // typeof document.createElement is 'object' in old IE + var EXISTS = isObject(document$1) && isObject(document$1.createElement); + + var documentCreateElement = function(it) { + return EXISTS ? document$1.createElement(it) : {}; + }; + + // Thank's IE8 for his funny defineProperty + var ie8DomDefine = + !descriptors && + !fails(function() { + return ( + Object.defineProperty(documentCreateElement('div'), 'a', { + get: function() { + return 7; + }, + }).a != 7 + ); + }); + + var nativeGetOwnPropertyDescriptor = Object.getOwnPropertyDescriptor; + + // `Object.getOwnPropertyDescriptor` method + // https://tc39.github.io/ecma262/#sec-object.getownpropertydescriptor + var f$1 = descriptors + ? nativeGetOwnPropertyDescriptor + : function getOwnPropertyDescriptor(O, P) { + O = toIndexedObject(O); + P = toPrimitive(P, true); + if (ie8DomDefine) + try { + return nativeGetOwnPropertyDescriptor(O, P); + } catch (error) { + /* empty */ + } + if (has(O, P)) return createPropertyDescriptor(!objectPropertyIsEnumerable.f.call(O, P), O[P]); + }; + + var objectGetOwnPropertyDescriptor = { + f: f$1, + }; + + var anObject = function(it) { + if (!isObject(it)) { + throw TypeError(String(it) + ' is not an object'); + } + return it; + }; + + var nativeDefineProperty = Object.defineProperty; + + // `Object.defineProperty` method + // https://tc39.github.io/ecma262/#sec-object.defineproperty + var f$2 = descriptors + ? nativeDefineProperty + : function defineProperty(O, P, Attributes) { + anObject(O); + P = toPrimitive(P, true); + anObject(Attributes); + if (ie8DomDefine) + try { + return nativeDefineProperty(O, P, Attributes); + } catch (error) { + /* empty */ + } + if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported'); + if ('value' in Attributes) O[P] = Attributes.value; + return O; + }; + + var objectDefineProperty = { + f: f$2, + }; + + var createNonEnumerableProperty = descriptors + ? function(object, key, value) { + return objectDefineProperty.f(object, key, createPropertyDescriptor(1, value)); + } + : function(object, key, value) { + object[key] = value; + return object; + }; + + var setGlobal = function(key, value) { + try { + createNonEnumerableProperty(global_1, key, value); + } catch (error) { + global_1[key] = value; + } + return value; + }; + + var SHARED = '__core-js_shared__'; + var store = global_1[SHARED] || setGlobal(SHARED, {}); + + var sharedStore = store; + + var functionToString = Function.toString; + + // this helper broken in `3.4.1-3.4.4`, so we can't use `shared` helper + if (typeof sharedStore.inspectSource != 'function') { + sharedStore.inspectSource = function(it) { + return functionToString.call(it); + }; + } + + var inspectSource = sharedStore.inspectSource; + + var WeakMap = global_1.WeakMap; + + var nativeWeakMap = typeof WeakMap === 'function' && /native code/.test(inspectSource(WeakMap)); + + var isPure = false; + + var shared = createCommonjsModule(function(module) { + (module.exports = function(key, value) { + return sharedStore[key] || (sharedStore[key] = value !== undefined ? value : {}); + })('versions', []).push({ + version: '3.6.5', + mode: 'global', + copyright: '© 2020 Denis Pushkarev (zloirock.ru)', + }); + }); + + var id = 0; + var postfix = Math.random(); + + var uid = function(key) { + return 'Symbol(' + String(key === undefined ? '' : key) + ')_' + (++id + postfix).toString(36); + }; + + var keys = shared('keys'); + + var sharedKey = function(key) { + return keys[key] || (keys[key] = uid(key)); + }; + + var hiddenKeys = {}; + + var WeakMap$1 = global_1.WeakMap; + var set, get, has$1; + + var enforce = function(it) { + return has$1(it) ? get(it) : set(it, {}); + }; + + var getterFor = function(TYPE) { + return function(it) { + var state; + if (!isObject(it) || (state = get(it)).type !== TYPE) { + throw TypeError('Incompatible receiver, ' + TYPE + ' required'); + } + return state; + }; + }; + + if (nativeWeakMap) { + var store$1 = new WeakMap$1(); + var wmget = store$1.get; + var wmhas = store$1.has; + var wmset = store$1.set; + set = function(it, metadata) { + wmset.call(store$1, it, metadata); + return metadata; + }; + get = function(it) { + return wmget.call(store$1, it) || {}; + }; + has$1 = function(it) { + return wmhas.call(store$1, it); + }; + } else { + var STATE = sharedKey('state'); + hiddenKeys[STATE] = true; + set = function(it, metadata) { + createNonEnumerableProperty(it, STATE, metadata); + return metadata; + }; + get = function(it) { + return has(it, STATE) ? it[STATE] : {}; + }; + has$1 = function(it) { + return has(it, STATE); + }; + } + + var internalState = { + set: set, + get: get, + has: has$1, + enforce: enforce, + getterFor: getterFor, + }; + + var redefine = createCommonjsModule(function(module) { + var getInternalState = internalState.get; + var enforceInternalState = internalState.enforce; + var TEMPLATE = String(String).split('String'); + + (module.exports = function(O, key, value, options) { + var unsafe = options ? !!options.unsafe : false; + var simple = options ? !!options.enumerable : false; + var noTargetGet = options ? !!options.noTargetGet : false; + if (typeof value == 'function') { + if (typeof key == 'string' && !has(value, 'name')) createNonEnumerableProperty(value, 'name', key); + enforceInternalState(value).source = TEMPLATE.join(typeof key == 'string' ? key : ''); + } + if (O === global_1) { + if (simple) O[key] = value; + else setGlobal(key, value); + return; + } else if (!unsafe) { + delete O[key]; + } else if (!noTargetGet && O[key]) { + simple = true; + } + if (simple) O[key] = value; + else createNonEnumerableProperty(O, key, value); + // add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative + })(Function.prototype, 'toString', function toString() { + return (typeof this == 'function' && getInternalState(this).source) || inspectSource(this); + }); + }); + + var path = global_1; + + var aFunction = function(variable) { + return typeof variable == 'function' ? variable : undefined; + }; + + var getBuiltIn = function(namespace, method) { + return arguments.length < 2 + ? aFunction(path[namespace]) || aFunction(global_1[namespace]) + : (path[namespace] && path[namespace][method]) || (global_1[namespace] && global_1[namespace][method]); + }; + + var ceil = Math.ceil; + var floor = Math.floor; + + // `ToInteger` abstract operation + // https://tc39.github.io/ecma262/#sec-tointeger + var toInteger = function(argument) { + return isNaN((argument = +argument)) ? 0 : (argument > 0 ? floor : ceil)(argument); + }; + + var min = Math.min; + + // `ToLength` abstract operation + // https://tc39.github.io/ecma262/#sec-tolength + var toLength = function(argument) { + return argument > 0 ? min(toInteger(argument), 0x1fffffffffffff) : 0; // 2 ** 53 - 1 == 9007199254740991 + }; + + var max = Math.max; + var min$1 = Math.min; + + // Helper for a popular repeating case of the spec: + // Let integer be ? ToInteger(index). + // If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length). + var toAbsoluteIndex = function(index, length) { + var integer = toInteger(index); + return integer < 0 ? max(integer + length, 0) : min$1(integer, length); + }; + + // `Array.prototype.{ indexOf, includes }` methods implementation + var createMethod = function(IS_INCLUDES) { + return function($this, el, fromIndex) { + var O = toIndexedObject($this); + var length = toLength(O.length); + var index = toAbsoluteIndex(fromIndex, length); + var value; + // Array#includes uses SameValueZero equality algorithm + // eslint-disable-next-line no-self-compare + if (IS_INCLUDES && el != el) + while (length > index) { + value = O[index++]; + // eslint-disable-next-line no-self-compare + if (value != value) return true; + // Array#indexOf ignores holes, Array#includes - not + } + else + for (; length > index; index++) { + if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0; + } + return !IS_INCLUDES && -1; + }; + }; + + var arrayIncludes = { + // `Array.prototype.includes` method + // https://tc39.github.io/ecma262/#sec-array.prototype.includes + includes: createMethod(true), + // `Array.prototype.indexOf` method + // https://tc39.github.io/ecma262/#sec-array.prototype.indexof + indexOf: createMethod(false), + }; + + var indexOf = arrayIncludes.indexOf; + + var objectKeysInternal = function(object, names) { + var O = toIndexedObject(object); + var i = 0; + var result = []; + var key; + for (key in O) !has(hiddenKeys, key) && has(O, key) && result.push(key); + // Don't enum bug & hidden keys + while (names.length > i) + if (has(O, (key = names[i++]))) { + ~indexOf(result, key) || result.push(key); + } + return result; + }; + + // IE8- don't enum bug keys + var enumBugKeys = [ + 'constructor', + 'hasOwnProperty', + 'isPrototypeOf', + 'propertyIsEnumerable', + 'toLocaleString', + 'toString', + 'valueOf', + ]; + + var hiddenKeys$1 = enumBugKeys.concat('length', 'prototype'); + + // `Object.getOwnPropertyNames` method + // https://tc39.github.io/ecma262/#sec-object.getownpropertynames + var f$3 = + Object.getOwnPropertyNames || + function getOwnPropertyNames(O) { + return objectKeysInternal(O, hiddenKeys$1); + }; + + var objectGetOwnPropertyNames = { + f: f$3, + }; + + var f$4 = Object.getOwnPropertySymbols; + + var objectGetOwnPropertySymbols = { + f: f$4, + }; + + // all object keys, includes non-enumerable and symbols + var ownKeys = + getBuiltIn('Reflect', 'ownKeys') || + function ownKeys(it) { + var keys = objectGetOwnPropertyNames.f(anObject(it)); + var getOwnPropertySymbols = objectGetOwnPropertySymbols.f; + return getOwnPropertySymbols ? keys.concat(getOwnPropertySymbols(it)) : keys; + }; + + var copyConstructorProperties = function(target, source) { + var keys = ownKeys(source); + var defineProperty = objectDefineProperty.f; + var getOwnPropertyDescriptor = objectGetOwnPropertyDescriptor.f; + for (var i = 0; i < keys.length; i++) { + var key = keys[i]; + if (!has(target, key)) defineProperty(target, key, getOwnPropertyDescriptor(source, key)); + } + }; + + var replacement = /#|\.prototype\./; + + var isForced = function(feature, detection) { + var value = data[normalize(feature)]; + return value == POLYFILL + ? true + : value == NATIVE + ? false + : typeof detection == 'function' + ? fails(detection) + : !!detection; + }; + + var normalize = (isForced.normalize = function(string) { + return String(string) + .replace(replacement, '.') + .toLowerCase(); + }); + + var data = (isForced.data = {}); + var NATIVE = (isForced.NATIVE = 'N'); + var POLYFILL = (isForced.POLYFILL = 'P'); + + var isForced_1 = isForced; + + var getOwnPropertyDescriptor$1 = objectGetOwnPropertyDescriptor.f; + + /* + options.target - name of the target object + options.global - target is the global object + options.stat - export as static methods of target + options.proto - export as prototype methods of target + options.real - real prototype method for the `pure` version + options.forced - export even if the native feature is available + options.bind - bind methods to the target, required for the `pure` version + options.wrap - wrap constructors to preventing global pollution, required for the `pure` version + options.unsafe - use the simple assignment of property instead of delete + defineProperty + options.sham - add a flag to not completely full polyfills + options.enumerable - export as enumerable property + options.noTargetGet - prevent calling a getter on target + */ + var _export = function(options, source) { + var TARGET = options.target; + var GLOBAL = options.global; + var STATIC = options.stat; + var FORCED, target, key, targetProperty, sourceProperty, descriptor; + if (GLOBAL) { + target = global_1; + } else if (STATIC) { + target = global_1[TARGET] || setGlobal(TARGET, {}); + } else { + target = (global_1[TARGET] || {}).prototype; + } + if (target) + for (key in source) { + sourceProperty = source[key]; + if (options.noTargetGet) { + descriptor = getOwnPropertyDescriptor$1(target, key); + targetProperty = descriptor && descriptor.value; + } else targetProperty = target[key]; + FORCED = isForced_1(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced); + // contained in target + if (!FORCED && targetProperty !== undefined) { + if (typeof sourceProperty === typeof targetProperty) continue; + copyConstructorProperties(sourceProperty, targetProperty); + } + // add a flag to not completely full polyfills + if (options.sham || (targetProperty && targetProperty.sham)) { + createNonEnumerableProperty(sourceProperty, 'sham', true); + } + // extend global + redefine(target, key, sourceProperty, options); + } + }; + + var nativeSymbol = + !!Object.getOwnPropertySymbols && + !fails(function() { + // Chrome 38 Symbol has incorrect toString conversion + // eslint-disable-next-line no-undef + return !String(Symbol()); + }); + + var useSymbolAsUid = + nativeSymbol && + // eslint-disable-next-line no-undef + !Symbol.sham && + // eslint-disable-next-line no-undef + typeof Symbol.iterator == 'symbol'; + + // `IsArray` abstract operation + // https://tc39.github.io/ecma262/#sec-isarray + var isArray = + Array.isArray || + function isArray(arg) { + return classofRaw(arg) == 'Array'; + }; + + // `ToObject` abstract operation + // https://tc39.github.io/ecma262/#sec-toobject + var toObject = function(argument) { + return Object(requireObjectCoercible(argument)); + }; + + // `Object.keys` method + // https://tc39.github.io/ecma262/#sec-object.keys + var objectKeys = + Object.keys || + function keys(O) { + return objectKeysInternal(O, enumBugKeys); + }; + + // `Object.defineProperties` method + // https://tc39.github.io/ecma262/#sec-object.defineproperties + var objectDefineProperties = descriptors + ? Object.defineProperties + : function defineProperties(O, Properties) { + anObject(O); + var keys = objectKeys(Properties); + var length = keys.length; + var index = 0; + var key; + while (length > index) objectDefineProperty.f(O, (key = keys[index++]), Properties[key]); + return O; + }; + + var html = getBuiltIn('document', 'documentElement'); + + var GT = '>'; + var LT = '<'; + var PROTOTYPE = 'prototype'; + var SCRIPT = 'script'; + var IE_PROTO = sharedKey('IE_PROTO'); + + var EmptyConstructor = function() { + /* empty */ + }; + + var scriptTag = function(content) { + return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT; + }; + + // Create object with fake `null` prototype: use ActiveX Object with cleared prototype + var NullProtoObjectViaActiveX = function(activeXDocument) { + activeXDocument.write(scriptTag('')); + activeXDocument.close(); + var temp = activeXDocument.parentWindow.Object; + activeXDocument = null; // avoid memory leak + return temp; + }; + + // Create object with fake `null` prototype: use iframe Object with cleared prototype + var NullProtoObjectViaIFrame = function() { + // Thrash, waste and sodomy: IE GC bug + var iframe = documentCreateElement('iframe'); + var JS = 'java' + SCRIPT + ':'; + var iframeDocument; + iframe.style.display = 'none'; + html.appendChild(iframe); + // https://github.com/zloirock/core-js/issues/475 + iframe.src = String(JS); + iframeDocument = iframe.contentWindow.document; + iframeDocument.open(); + iframeDocument.write(scriptTag('document.F=Object')); + iframeDocument.close(); + return iframeDocument.F; + }; + + // Check for document.domain and active x support + // No need to use active x approach when document.domain is not set + // see https://github.com/es-shims/es5-shim/issues/150 + // variation of https://github.com/kitcambridge/es5-shim/commit/4f738ac066346 + // avoid IE GC bug + var activeXDocument; + var NullProtoObject = function() { + try { + /* global ActiveXObject */ + activeXDocument = document.domain && new ActiveXObject('htmlfile'); + } catch (error) { + /* ignore */ + } + NullProtoObject = activeXDocument ? NullProtoObjectViaActiveX(activeXDocument) : NullProtoObjectViaIFrame(); + var length = enumBugKeys.length; + while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys[length]]; + return NullProtoObject(); + }; + + hiddenKeys[IE_PROTO] = true; + + // `Object.create` method + // https://tc39.github.io/ecma262/#sec-object.create + var objectCreate = + Object.create || + function create(O, Properties) { + var result; + if (O !== null) { + EmptyConstructor[PROTOTYPE] = anObject(O); + result = new EmptyConstructor(); + EmptyConstructor[PROTOTYPE] = null; + // add "__proto__" for Object.getPrototypeOf polyfill + result[IE_PROTO] = O; + } else result = NullProtoObject(); + return Properties === undefined ? result : objectDefineProperties(result, Properties); + }; + + var nativeGetOwnPropertyNames = objectGetOwnPropertyNames.f; + + var toString$1 = {}.toString; + + var windowNames = + typeof window == 'object' && window && Object.getOwnPropertyNames ? Object.getOwnPropertyNames(window) : []; + + var getWindowNames = function(it) { + try { + return nativeGetOwnPropertyNames(it); + } catch (error) { + return windowNames.slice(); + } + }; + + // fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window + var f$5 = function getOwnPropertyNames(it) { + return windowNames && toString$1.call(it) == '[object Window]' + ? getWindowNames(it) + : nativeGetOwnPropertyNames(toIndexedObject(it)); + }; + + var objectGetOwnPropertyNamesExternal = { + f: f$5, + }; + + var WellKnownSymbolsStore = shared('wks'); + var Symbol$1 = global_1.Symbol; + var createWellKnownSymbol = useSymbolAsUid ? Symbol$1 : (Symbol$1 && Symbol$1.withoutSetter) || uid; + + var wellKnownSymbol = function(name) { + if (!has(WellKnownSymbolsStore, name)) { + if (nativeSymbol && has(Symbol$1, name)) WellKnownSymbolsStore[name] = Symbol$1[name]; + else WellKnownSymbolsStore[name] = createWellKnownSymbol('Symbol.' + name); + } + return WellKnownSymbolsStore[name]; + }; + + var f$6 = wellKnownSymbol; + + var wellKnownSymbolWrapped = { + f: f$6, + }; + + var defineProperty = objectDefineProperty.f; + + var defineWellKnownSymbol = function(NAME) { + var Symbol = path.Symbol || (path.Symbol = {}); + if (!has(Symbol, NAME)) + defineProperty(Symbol, NAME, { + value: wellKnownSymbolWrapped.f(NAME), + }); + }; + + var defineProperty$1 = objectDefineProperty.f; + + var TO_STRING_TAG = wellKnownSymbol('toStringTag'); + + var setToStringTag = function(it, TAG, STATIC) { + if (it && !has((it = STATIC ? it : it.prototype), TO_STRING_TAG)) { + defineProperty$1(it, TO_STRING_TAG, { configurable: true, value: TAG }); + } + }; + + var aFunction$1 = function(it) { + if (typeof it != 'function') { + throw TypeError(String(it) + ' is not a function'); + } + return it; + }; + + // optional / simple context binding + var functionBindContext = function(fn, that, length) { + aFunction$1(fn); + if (that === undefined) return fn; + switch (length) { + case 0: + return function() { + return fn.call(that); + }; + case 1: + return function(a) { + return fn.call(that, a); + }; + case 2: + return function(a, b) { + return fn.call(that, a, b); + }; + case 3: + return function(a, b, c) { + return fn.call(that, a, b, c); + }; + } + return function(/* ...args */) { + return fn.apply(that, arguments); + }; + }; + + var SPECIES = wellKnownSymbol('species'); + + // `ArraySpeciesCreate` abstract operation + // https://tc39.github.io/ecma262/#sec-arrayspeciescreate + var arraySpeciesCreate = function(originalArray, length) { + var C; + if (isArray(originalArray)) { + C = originalArray.constructor; + // cross-realm fallback + if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined; + else if (isObject(C)) { + C = C[SPECIES]; + if (C === null) C = undefined; + } + } + return new (C === undefined ? Array : C)(length === 0 ? 0 : length); + }; + + var push = [].push; + + // `Array.prototype.{ forEach, map, filter, some, every, find, findIndex }` methods implementation + var createMethod$1 = function(TYPE) { + var IS_MAP = TYPE == 1; + var IS_FILTER = TYPE == 2; + var IS_SOME = TYPE == 3; + var IS_EVERY = TYPE == 4; + var IS_FIND_INDEX = TYPE == 6; + var NO_HOLES = TYPE == 5 || IS_FIND_INDEX; + return function($this, callbackfn, that, specificCreate) { + var O = toObject($this); + var self = indexedObject(O); + var boundFunction = functionBindContext(callbackfn, that, 3); + var length = toLength(self.length); + var index = 0; + var create = specificCreate || arraySpeciesCreate; + var target = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined; + var value, result; + for (; length > index; index++) + if (NO_HOLES || index in self) { + value = self[index]; + result = boundFunction(value, index, O); + if (TYPE) { + if (IS_MAP) target[index] = result; + // map + else if (result) + switch (TYPE) { + case 3: + return true; // some + case 5: + return value; // find + case 6: + return index; // findIndex + case 2: + push.call(target, value); // filter + } + else if (IS_EVERY) return false; // every + } + } + return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : target; + }; + }; + + var arrayIteration = { + // `Array.prototype.forEach` method + // https://tc39.github.io/ecma262/#sec-array.prototype.foreach + forEach: createMethod$1(0), + // `Array.prototype.map` method + // https://tc39.github.io/ecma262/#sec-array.prototype.map + map: createMethod$1(1), + // `Array.prototype.filter` method + // https://tc39.github.io/ecma262/#sec-array.prototype.filter + filter: createMethod$1(2), + // `Array.prototype.some` method + // https://tc39.github.io/ecma262/#sec-array.prototype.some + some: createMethod$1(3), + // `Array.prototype.every` method + // https://tc39.github.io/ecma262/#sec-array.prototype.every + every: createMethod$1(4), + // `Array.prototype.find` method + // https://tc39.github.io/ecma262/#sec-array.prototype.find + find: createMethod$1(5), + // `Array.prototype.findIndex` method + // https://tc39.github.io/ecma262/#sec-array.prototype.findIndex + findIndex: createMethod$1(6), + }; + + var $forEach = arrayIteration.forEach; + + var HIDDEN = sharedKey('hidden'); + var SYMBOL = 'Symbol'; + var PROTOTYPE$1 = 'prototype'; + var TO_PRIMITIVE = wellKnownSymbol('toPrimitive'); + var setInternalState = internalState.set; + var getInternalState = internalState.getterFor(SYMBOL); + var ObjectPrototype = Object[PROTOTYPE$1]; + var $Symbol = global_1.Symbol; + var $stringify = getBuiltIn('JSON', 'stringify'); + var nativeGetOwnPropertyDescriptor$1 = objectGetOwnPropertyDescriptor.f; + var nativeDefineProperty$1 = objectDefineProperty.f; + var nativeGetOwnPropertyNames$1 = objectGetOwnPropertyNamesExternal.f; + var nativePropertyIsEnumerable$1 = objectPropertyIsEnumerable.f; + var AllSymbols = shared('symbols'); + var ObjectPrototypeSymbols = shared('op-symbols'); + var StringToSymbolRegistry = shared('string-to-symbol-registry'); + var SymbolToStringRegistry = shared('symbol-to-string-registry'); + var WellKnownSymbolsStore$1 = shared('wks'); + var QObject = global_1.QObject; + // Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173 + var USE_SETTER = !QObject || !QObject[PROTOTYPE$1] || !QObject[PROTOTYPE$1].findChild; + + // fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687 + var setSymbolDescriptor = + descriptors && + fails(function() { + return ( + objectCreate( + nativeDefineProperty$1({}, 'a', { + get: function() { + return nativeDefineProperty$1(this, 'a', { value: 7 }).a; + }, + }), + ).a != 7 + ); + }) + ? function(O, P, Attributes) { + var ObjectPrototypeDescriptor = nativeGetOwnPropertyDescriptor$1(ObjectPrototype, P); + if (ObjectPrototypeDescriptor) delete ObjectPrototype[P]; + nativeDefineProperty$1(O, P, Attributes); + if (ObjectPrototypeDescriptor && O !== ObjectPrototype) { + nativeDefineProperty$1(ObjectPrototype, P, ObjectPrototypeDescriptor); + } + } + : nativeDefineProperty$1; + + var wrap = function(tag, description) { + var symbol = (AllSymbols[tag] = objectCreate($Symbol[PROTOTYPE$1])); + setInternalState(symbol, { + type: SYMBOL, + tag: tag, + description: description, + }); + if (!descriptors) symbol.description = description; + return symbol; + }; + + var isSymbol = useSymbolAsUid + ? function(it) { + return typeof it == 'symbol'; + } + : function(it) { + return Object(it) instanceof $Symbol; + }; + + var $defineProperty = function defineProperty(O, P, Attributes) { + if (O === ObjectPrototype) $defineProperty(ObjectPrototypeSymbols, P, Attributes); + anObject(O); + var key = toPrimitive(P, true); + anObject(Attributes); + if (has(AllSymbols, key)) { + if (!Attributes.enumerable) { + if (!has(O, HIDDEN)) nativeDefineProperty$1(O, HIDDEN, createPropertyDescriptor(1, {})); + O[HIDDEN][key] = true; + } else { + if (has(O, HIDDEN) && O[HIDDEN][key]) O[HIDDEN][key] = false; + Attributes = objectCreate(Attributes, { enumerable: createPropertyDescriptor(0, false) }); + } + return setSymbolDescriptor(O, key, Attributes); + } + return nativeDefineProperty$1(O, key, Attributes); + }; + + var $defineProperties = function defineProperties(O, Properties) { + anObject(O); + var properties = toIndexedObject(Properties); + var keys = objectKeys(properties).concat($getOwnPropertySymbols(properties)); + $forEach(keys, function(key) { + if (!descriptors || $propertyIsEnumerable.call(properties, key)) $defineProperty(O, key, properties[key]); + }); + return O; + }; + + var $create = function create(O, Properties) { + return Properties === undefined ? objectCreate(O) : $defineProperties(objectCreate(O), Properties); + }; + + var $propertyIsEnumerable = function propertyIsEnumerable(V) { + var P = toPrimitive(V, true); + var enumerable = nativePropertyIsEnumerable$1.call(this, P); + if (this === ObjectPrototype && has(AllSymbols, P) && !has(ObjectPrototypeSymbols, P)) return false; + return enumerable || !has(this, P) || !has(AllSymbols, P) || (has(this, HIDDEN) && this[HIDDEN][P]) + ? enumerable + : true; + }; + + var $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(O, P) { + var it = toIndexedObject(O); + var key = toPrimitive(P, true); + if (it === ObjectPrototype && has(AllSymbols, key) && !has(ObjectPrototypeSymbols, key)) return; + var descriptor = nativeGetOwnPropertyDescriptor$1(it, key); + if (descriptor && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key])) { + descriptor.enumerable = true; + } + return descriptor; + }; + + var $getOwnPropertyNames = function getOwnPropertyNames(O) { + var names = nativeGetOwnPropertyNames$1(toIndexedObject(O)); + var result = []; + $forEach(names, function(key) { + if (!has(AllSymbols, key) && !has(hiddenKeys, key)) result.push(key); + }); + return result; + }; + + var $getOwnPropertySymbols = function getOwnPropertySymbols(O) { + var IS_OBJECT_PROTOTYPE = O === ObjectPrototype; + var names = nativeGetOwnPropertyNames$1(IS_OBJECT_PROTOTYPE ? ObjectPrototypeSymbols : toIndexedObject(O)); + var result = []; + $forEach(names, function(key) { + if (has(AllSymbols, key) && (!IS_OBJECT_PROTOTYPE || has(ObjectPrototype, key))) { + result.push(AllSymbols[key]); + } + }); + return result; + }; + + // `Symbol` constructor + // https://tc39.github.io/ecma262/#sec-symbol-constructor + if (!nativeSymbol) { + $Symbol = function Symbol() { + if (this instanceof $Symbol) throw TypeError('Symbol is not a constructor'); + var description = !arguments.length || arguments[0] === undefined ? undefined : String(arguments[0]); + var tag = uid(description); + var setter = function(value) { + if (this === ObjectPrototype) setter.call(ObjectPrototypeSymbols, value); + if (has(this, HIDDEN) && has(this[HIDDEN], tag)) this[HIDDEN][tag] = false; + setSymbolDescriptor(this, tag, createPropertyDescriptor(1, value)); + }; + if (descriptors && USE_SETTER) setSymbolDescriptor(ObjectPrototype, tag, { configurable: true, set: setter }); + return wrap(tag, description); + }; + + redefine($Symbol[PROTOTYPE$1], 'toString', function toString() { + return getInternalState(this).tag; + }); + + redefine($Symbol, 'withoutSetter', function(description) { + return wrap(uid(description), description); + }); + + objectPropertyIsEnumerable.f = $propertyIsEnumerable; + objectDefineProperty.f = $defineProperty; + objectGetOwnPropertyDescriptor.f = $getOwnPropertyDescriptor; + objectGetOwnPropertyNames.f = objectGetOwnPropertyNamesExternal.f = $getOwnPropertyNames; + objectGetOwnPropertySymbols.f = $getOwnPropertySymbols; + + wellKnownSymbolWrapped.f = function(name) { + return wrap(wellKnownSymbol(name), name); + }; + + if (descriptors) { + // https://github.com/tc39/proposal-Symbol-description + nativeDefineProperty$1($Symbol[PROTOTYPE$1], 'description', { + configurable: true, + get: function description() { + return getInternalState(this).description; + }, + }); + { + redefine(ObjectPrototype, 'propertyIsEnumerable', $propertyIsEnumerable, { unsafe: true }); + } + } + } + + _export( + { global: true, wrap: true, forced: !nativeSymbol, sham: !nativeSymbol }, + { + Symbol: $Symbol, + }, + ); + + $forEach(objectKeys(WellKnownSymbolsStore$1), function(name) { + defineWellKnownSymbol(name); + }); + + _export( + { target: SYMBOL, stat: true, forced: !nativeSymbol }, + { + // `Symbol.for` method + // https://tc39.github.io/ecma262/#sec-symbol.for + for: function(key) { + var string = String(key); + if (has(StringToSymbolRegistry, string)) return StringToSymbolRegistry[string]; + var symbol = $Symbol(string); + StringToSymbolRegistry[string] = symbol; + SymbolToStringRegistry[symbol] = string; + return symbol; + }, + // `Symbol.keyFor` method + // https://tc39.github.io/ecma262/#sec-symbol.keyfor + keyFor: function keyFor(sym) { + if (!isSymbol(sym)) throw TypeError(sym + ' is not a symbol'); + if (has(SymbolToStringRegistry, sym)) return SymbolToStringRegistry[sym]; + }, + useSetter: function() { + USE_SETTER = true; + }, + useSimple: function() { + USE_SETTER = false; + }, + }, + ); + + _export( + { target: 'Object', stat: true, forced: !nativeSymbol, sham: !descriptors }, + { + // `Object.create` method + // https://tc39.github.io/ecma262/#sec-object.create + create: $create, + // `Object.defineProperty` method + // https://tc39.github.io/ecma262/#sec-object.defineproperty + defineProperty: $defineProperty, + // `Object.defineProperties` method + // https://tc39.github.io/ecma262/#sec-object.defineproperties + defineProperties: $defineProperties, + // `Object.getOwnPropertyDescriptor` method + // https://tc39.github.io/ecma262/#sec-object.getownpropertydescriptors + getOwnPropertyDescriptor: $getOwnPropertyDescriptor, + }, + ); + + _export( + { target: 'Object', stat: true, forced: !nativeSymbol }, + { + // `Object.getOwnPropertyNames` method + // https://tc39.github.io/ecma262/#sec-object.getownpropertynames + getOwnPropertyNames: $getOwnPropertyNames, + // `Object.getOwnPropertySymbols` method + // https://tc39.github.io/ecma262/#sec-object.getownpropertysymbols + getOwnPropertySymbols: $getOwnPropertySymbols, + }, + ); + + // Chrome 38 and 39 `Object.getOwnPropertySymbols` fails on primitives + // https://bugs.chromium.org/p/v8/issues/detail?id=3443 + _export( + { + target: 'Object', + stat: true, + forced: fails(function() { + objectGetOwnPropertySymbols.f(1); + }), + }, + { + getOwnPropertySymbols: function getOwnPropertySymbols(it) { + return objectGetOwnPropertySymbols.f(toObject(it)); + }, + }, + ); + + // `JSON.stringify` method behavior with symbols + // https://tc39.github.io/ecma262/#sec-json.stringify + if ($stringify) { + var FORCED_JSON_STRINGIFY = + !nativeSymbol || + fails(function() { + var symbol = $Symbol(); + // MS Edge converts symbol values to JSON as {} + return ( + $stringify([symbol]) != '[null]' || + // WebKit converts symbol values to JSON as null + $stringify({ a: symbol }) != '{}' || + // V8 throws on boxed symbols + $stringify(Object(symbol)) != '{}' + ); + }); + + _export( + { target: 'JSON', stat: true, forced: FORCED_JSON_STRINGIFY }, + { + // eslint-disable-next-line no-unused-vars + stringify: function stringify(it, replacer, space) { + var args = [it]; + var index = 1; + var $replacer; + while (arguments.length > index) args.push(arguments[index++]); + $replacer = replacer; + if ((!isObject(replacer) && it === undefined) || isSymbol(it)) return; // IE8 returns string on undefined + if (!isArray(replacer)) + replacer = function(key, value) { + if (typeof $replacer == 'function') value = $replacer.call(this, key, value); + if (!isSymbol(value)) return value; + }; + args[1] = replacer; + return $stringify.apply(null, args); + }, + }, + ); + } + + // `Symbol.prototype[@@toPrimitive]` method + // https://tc39.github.io/ecma262/#sec-symbol.prototype-@@toprimitive + if (!$Symbol[PROTOTYPE$1][TO_PRIMITIVE]) { + createNonEnumerableProperty($Symbol[PROTOTYPE$1], TO_PRIMITIVE, $Symbol[PROTOTYPE$1].valueOf); + } + // `Symbol.prototype[@@toStringTag]` property + // https://tc39.github.io/ecma262/#sec-symbol.prototype-@@tostringtag + setToStringTag($Symbol, SYMBOL); + + hiddenKeys[HIDDEN] = true; + + var defineProperty$2 = objectDefineProperty.f; + + var NativeSymbol = global_1.Symbol; + + if ( + descriptors && + typeof NativeSymbol == 'function' && + (!('description' in NativeSymbol.prototype) || + // Safari 12 bug + NativeSymbol().description !== undefined) + ) { + var EmptyStringDescriptionStore = {}; + // wrap Symbol constructor for correct work with undefined description + var SymbolWrapper = function Symbol() { + var description = arguments.length < 1 || arguments[0] === undefined ? undefined : String(arguments[0]); + var result = + this instanceof SymbolWrapper + ? new NativeSymbol(description) + : // in Edge 13, String(Symbol(undefined)) === 'Symbol(undefined)' + description === undefined + ? NativeSymbol() + : NativeSymbol(description); + if (description === '') EmptyStringDescriptionStore[result] = true; + return result; + }; + copyConstructorProperties(SymbolWrapper, NativeSymbol); + var symbolPrototype = (SymbolWrapper.prototype = NativeSymbol.prototype); + symbolPrototype.constructor = SymbolWrapper; + + var symbolToString = symbolPrototype.toString; + var native = String(NativeSymbol('test')) == 'Symbol(test)'; + var regexp = /^Symbol\((.*)\)[^)]+$/; + defineProperty$2(symbolPrototype, 'description', { + configurable: true, + get: function description() { + var symbol = isObject(this) ? this.valueOf() : this; + var string = symbolToString.call(symbol); + if (has(EmptyStringDescriptionStore, symbol)) return ''; + var desc = native ? string.slice(7, -1) : string.replace(regexp, '$1'); + return desc === '' ? undefined : desc; + }, + }); + + _export( + { global: true, forced: true }, + { + Symbol: SymbolWrapper, + }, + ); + } + + var engineUserAgent = getBuiltIn('navigator', 'userAgent') || ''; + + var process = global_1.process; + var versions = process && process.versions; + var v8 = versions && versions.v8; + var match, version; + + if (v8) { + match = v8.split('.'); + version = match[0] + match[1]; + } else if (engineUserAgent) { + match = engineUserAgent.match(/Edge\/(\d+)/); + if (!match || match[1] >= 74) { + match = engineUserAgent.match(/Chrome\/(\d+)/); + if (match) version = match[1]; + } + } + + var engineV8Version = version && +version; + + var SPECIES$1 = wellKnownSymbol('species'); + + var arrayMethodHasSpeciesSupport = function(METHOD_NAME) { + // We can't use this feature detection in V8 since it causes + // deoptimization and serious performance degradation + // https://github.com/zloirock/core-js/issues/677 + return ( + engineV8Version >= 51 || + !fails(function() { + var array = []; + var constructor = (array.constructor = {}); + constructor[SPECIES$1] = function() { + return { foo: 1 }; + }; + return array[METHOD_NAME](Boolean).foo !== 1; + }) + ); + }; + + var defineProperty$3 = Object.defineProperty; + var cache = {}; + + var thrower = function(it) { + throw it; + }; + + var arrayMethodUsesToLength = function(METHOD_NAME, options) { + if (has(cache, METHOD_NAME)) return cache[METHOD_NAME]; + if (!options) options = {}; + var method = [][METHOD_NAME]; + var ACCESSORS = has(options, 'ACCESSORS') ? options.ACCESSORS : false; + var argument0 = has(options, 0) ? options[0] : thrower; + var argument1 = has(options, 1) ? options[1] : undefined; + + return (cache[METHOD_NAME] = + !!method && + !fails(function() { + if (ACCESSORS && !descriptors) return true; + var O = { length: -1 }; + + if (ACCESSORS) defineProperty$3(O, 1, { enumerable: true, get: thrower }); + else O[1] = 1; + + method.call(O, argument0, argument1); + })); + }; + + var $filter = arrayIteration.filter; + + var HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('filter'); + // Edge 14- issue + var USES_TO_LENGTH = arrayMethodUsesToLength('filter'); + + // `Array.prototype.filter` method + // https://tc39.github.io/ecma262/#sec-array.prototype.filter + // with adding support of @@species + _export( + { target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT || !USES_TO_LENGTH }, + { + filter: function filter(callbackfn /* , thisArg */) { + return $filter(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined); + }, + }, + ); + + var UNSCOPABLES = wellKnownSymbol('unscopables'); + var ArrayPrototype = Array.prototype; + + // Array.prototype[@@unscopables] + // https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables + if (ArrayPrototype[UNSCOPABLES] == undefined) { + objectDefineProperty.f(ArrayPrototype, UNSCOPABLES, { + configurable: true, + value: objectCreate(null), + }); + } + + // add a key to Array.prototype[@@unscopables] + var addToUnscopables = function(key) { + ArrayPrototype[UNSCOPABLES][key] = true; + }; + + var iterators = {}; + + var correctPrototypeGetter = !fails(function() { + function F() { + /* empty */ + } + F.prototype.constructor = null; + return Object.getPrototypeOf(new F()) !== F.prototype; + }); + + var IE_PROTO$1 = sharedKey('IE_PROTO'); + var ObjectPrototype$1 = Object.prototype; + + // `Object.getPrototypeOf` method + // https://tc39.github.io/ecma262/#sec-object.getprototypeof + var objectGetPrototypeOf = correctPrototypeGetter + ? Object.getPrototypeOf + : function(O) { + O = toObject(O); + if (has(O, IE_PROTO$1)) return O[IE_PROTO$1]; + if (typeof O.constructor == 'function' && O instanceof O.constructor) { + return O.constructor.prototype; + } + return O instanceof Object ? ObjectPrototype$1 : null; + }; + + var ITERATOR = wellKnownSymbol('iterator'); + var BUGGY_SAFARI_ITERATORS = false; + + var returnThis = function() { + return this; + }; + + // `%IteratorPrototype%` object + // https://tc39.github.io/ecma262/#sec-%iteratorprototype%-object + var IteratorPrototype, PrototypeOfArrayIteratorPrototype, arrayIterator; + + if ([].keys) { + arrayIterator = [].keys(); + // Safari 8 has buggy iterators w/o `next` + if (!('next' in arrayIterator)) BUGGY_SAFARI_ITERATORS = true; + else { + PrototypeOfArrayIteratorPrototype = objectGetPrototypeOf(objectGetPrototypeOf(arrayIterator)); + if (PrototypeOfArrayIteratorPrototype !== Object.prototype) IteratorPrototype = PrototypeOfArrayIteratorPrototype; + } + } + + if (IteratorPrototype == undefined) IteratorPrototype = {}; + + // 25.1.2.1.1 %IteratorPrototype%[@@iterator]() + if (!has(IteratorPrototype, ITERATOR)) { + createNonEnumerableProperty(IteratorPrototype, ITERATOR, returnThis); + } + + var iteratorsCore = { + IteratorPrototype: IteratorPrototype, + BUGGY_SAFARI_ITERATORS: BUGGY_SAFARI_ITERATORS, + }; + + var IteratorPrototype$1 = iteratorsCore.IteratorPrototype; + + var returnThis$1 = function() { + return this; + }; + + var createIteratorConstructor = function(IteratorConstructor, NAME, next) { + var TO_STRING_TAG = NAME + ' Iterator'; + IteratorConstructor.prototype = objectCreate(IteratorPrototype$1, { next: createPropertyDescriptor(1, next) }); + setToStringTag(IteratorConstructor, TO_STRING_TAG, false); + iterators[TO_STRING_TAG] = returnThis$1; + return IteratorConstructor; + }; + + var aPossiblePrototype = function(it) { + if (!isObject(it) && it !== null) { + throw TypeError("Can't set " + String(it) + ' as a prototype'); + } + return it; + }; + + // `Object.setPrototypeOf` method + // https://tc39.github.io/ecma262/#sec-object.setprototypeof + // Works with __proto__ only. Old v8 can't work with null proto objects. + /* eslint-disable no-proto */ + var objectSetPrototypeOf = + Object.setPrototypeOf || + ('__proto__' in {} + ? (function() { + var CORRECT_SETTER = false; + var test = {}; + var setter; + try { + setter = Object.getOwnPropertyDescriptor(Object.prototype, '__proto__').set; + setter.call(test, []); + CORRECT_SETTER = test instanceof Array; + } catch (error) { + /* empty */ + } + return function setPrototypeOf(O, proto) { + anObject(O); + aPossiblePrototype(proto); + if (CORRECT_SETTER) setter.call(O, proto); + else O.__proto__ = proto; + return O; + }; + })() + : undefined); + + var IteratorPrototype$2 = iteratorsCore.IteratorPrototype; + var BUGGY_SAFARI_ITERATORS$1 = iteratorsCore.BUGGY_SAFARI_ITERATORS; + var ITERATOR$1 = wellKnownSymbol('iterator'); + var KEYS = 'keys'; + var VALUES = 'values'; + var ENTRIES = 'entries'; + + var returnThis$2 = function() { + return this; + }; + + var defineIterator = function(Iterable, NAME, IteratorConstructor, next, DEFAULT, IS_SET, FORCED) { + createIteratorConstructor(IteratorConstructor, NAME, next); + + var getIterationMethod = function(KIND) { + if (KIND === DEFAULT && defaultIterator) return defaultIterator; + if (!BUGGY_SAFARI_ITERATORS$1 && KIND in IterablePrototype) return IterablePrototype[KIND]; + switch (KIND) { + case KEYS: + return function keys() { + return new IteratorConstructor(this, KIND); + }; + case VALUES: + return function values() { + return new IteratorConstructor(this, KIND); + }; + case ENTRIES: + return function entries() { + return new IteratorConstructor(this, KIND); + }; + } + return function() { + return new IteratorConstructor(this); + }; + }; + + var TO_STRING_TAG = NAME + ' Iterator'; + var INCORRECT_VALUES_NAME = false; + var IterablePrototype = Iterable.prototype; + var nativeIterator = + IterablePrototype[ITERATOR$1] || IterablePrototype['@@iterator'] || (DEFAULT && IterablePrototype[DEFAULT]); + var defaultIterator = (!BUGGY_SAFARI_ITERATORS$1 && nativeIterator) || getIterationMethod(DEFAULT); + var anyNativeIterator = NAME == 'Array' ? IterablePrototype.entries || nativeIterator : nativeIterator; + var CurrentIteratorPrototype, methods, KEY; + + // fix native + if (anyNativeIterator) { + CurrentIteratorPrototype = objectGetPrototypeOf(anyNativeIterator.call(new Iterable())); + if (IteratorPrototype$2 !== Object.prototype && CurrentIteratorPrototype.next) { + if (objectGetPrototypeOf(CurrentIteratorPrototype) !== IteratorPrototype$2) { + if (objectSetPrototypeOf) { + objectSetPrototypeOf(CurrentIteratorPrototype, IteratorPrototype$2); + } else if (typeof CurrentIteratorPrototype[ITERATOR$1] != 'function') { + createNonEnumerableProperty(CurrentIteratorPrototype, ITERATOR$1, returnThis$2); + } + } + // Set @@toStringTag to native iterators + setToStringTag(CurrentIteratorPrototype, TO_STRING_TAG, true); + } + } + + // fix Array#{values, @@iterator}.name in V8 / FF + if (DEFAULT == VALUES && nativeIterator && nativeIterator.name !== VALUES) { + INCORRECT_VALUES_NAME = true; + defaultIterator = function values() { + return nativeIterator.call(this); + }; + } + + // define iterator + if (IterablePrototype[ITERATOR$1] !== defaultIterator) { + createNonEnumerableProperty(IterablePrototype, ITERATOR$1, defaultIterator); + } + iterators[NAME] = defaultIterator; + + // export additional methods + if (DEFAULT) { + methods = { + values: getIterationMethod(VALUES), + keys: IS_SET ? defaultIterator : getIterationMethod(KEYS), + entries: getIterationMethod(ENTRIES), + }; + if (FORCED) + for (KEY in methods) { + if (BUGGY_SAFARI_ITERATORS$1 || INCORRECT_VALUES_NAME || !(KEY in IterablePrototype)) { + redefine(IterablePrototype, KEY, methods[KEY]); + } + } + else _export({ target: NAME, proto: true, forced: BUGGY_SAFARI_ITERATORS$1 || INCORRECT_VALUES_NAME }, methods); + } + + return methods; + }; + + var ARRAY_ITERATOR = 'Array Iterator'; + var setInternalState$1 = internalState.set; + var getInternalState$1 = internalState.getterFor(ARRAY_ITERATOR); + + // `Array.prototype.entries` method + // https://tc39.github.io/ecma262/#sec-array.prototype.entries + // `Array.prototype.keys` method + // https://tc39.github.io/ecma262/#sec-array.prototype.keys + // `Array.prototype.values` method + // https://tc39.github.io/ecma262/#sec-array.prototype.values + // `Array.prototype[@@iterator]` method + // https://tc39.github.io/ecma262/#sec-array.prototype-@@iterator + // `CreateArrayIterator` internal method + // https://tc39.github.io/ecma262/#sec-createarrayiterator + var es_array_iterator = defineIterator( + Array, + 'Array', + function(iterated, kind) { + setInternalState$1(this, { + type: ARRAY_ITERATOR, + target: toIndexedObject(iterated), // target + index: 0, // next index + kind: kind, // kind + }); + // `%ArrayIteratorPrototype%.next` method + // https://tc39.github.io/ecma262/#sec-%arrayiteratorprototype%.next + }, + function() { + var state = getInternalState$1(this); + var target = state.target; + var kind = state.kind; + var index = state.index++; + if (!target || index >= target.length) { + state.target = undefined; + return { value: undefined, done: true }; + } + if (kind == 'keys') return { value: index, done: false }; + if (kind == 'values') return { value: target[index], done: false }; + return { value: [index, target[index]], done: false }; + }, + 'values', + ); + + // argumentsList[@@iterator] is %ArrayProto_values% + // https://tc39.github.io/ecma262/#sec-createunmappedargumentsobject + // https://tc39.github.io/ecma262/#sec-createmappedargumentsobject + iterators.Arguments = iterators.Array; + + // https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables + addToUnscopables('keys'); + addToUnscopables('values'); + addToUnscopables('entries'); + + var TO_STRING_TAG$1 = wellKnownSymbol('toStringTag'); + var test = {}; + + test[TO_STRING_TAG$1] = 'z'; + + var toStringTagSupport = String(test) === '[object z]'; + + var TO_STRING_TAG$2 = wellKnownSymbol('toStringTag'); + // ES3 wrong here + var CORRECT_ARGUMENTS = + classofRaw( + (function() { + return arguments; + })(), + ) == 'Arguments'; + + // fallback for IE11 Script Access Denied error + var tryGet = function(it, key) { + try { + return it[key]; + } catch (error) { + /* empty */ + } + }; + + // getting tag from ES6+ `Object.prototype.toString` + var classof = toStringTagSupport + ? classofRaw + : function(it) { + var O, tag, result; + return it === undefined + ? 'Undefined' + : it === null + ? 'Null' + : // @@toStringTag case + typeof (tag = tryGet((O = Object(it)), TO_STRING_TAG$2)) == 'string' + ? tag + : // builtinTag case + CORRECT_ARGUMENTS + ? classofRaw(O) + : // ES3 arguments fallback + (result = classofRaw(O)) == 'Object' && typeof O.callee == 'function' + ? 'Arguments' + : result; + }; + + // `Object.prototype.toString` method implementation + // https://tc39.github.io/ecma262/#sec-object.prototype.tostring + var objectToString = toStringTagSupport + ? {}.toString + : function toString() { + return '[object ' + classof(this) + ']'; + }; + + // `Object.prototype.toString` method + // https://tc39.github.io/ecma262/#sec-object.prototype.tostring + if (!toStringTagSupport) { + redefine(Object.prototype, 'toString', objectToString, { unsafe: true }); + } + + // `RegExp.prototype.flags` getter implementation + // https://tc39.github.io/ecma262/#sec-get-regexp.prototype.flags + var regexpFlags = function() { + var that = anObject(this); + var result = ''; + if (that.global) result += 'g'; + if (that.ignoreCase) result += 'i'; + if (that.multiline) result += 'm'; + if (that.dotAll) result += 's'; + if (that.unicode) result += 'u'; + if (that.sticky) result += 'y'; + return result; + }; + + // babel-minify transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError, + // so we use an intermediate function. + function RE(s, f) { + return RegExp(s, f); + } + + var UNSUPPORTED_Y = fails(function() { + // babel-minify transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError + var re = RE('a', 'y'); + re.lastIndex = 2; + return re.exec('abcd') != null; + }); + + var BROKEN_CARET = fails(function() { + // https://bugzilla.mozilla.org/show_bug.cgi?id=773687 + var re = RE('^r', 'gy'); + re.lastIndex = 2; + return re.exec('str') != null; + }); + + var regexpStickyHelpers = { + UNSUPPORTED_Y: UNSUPPORTED_Y, + BROKEN_CARET: BROKEN_CARET, + }; + + var nativeExec = RegExp.prototype.exec; + // This always refers to the native implementation, because the + // String#replace polyfill uses ./fix-regexp-well-known-symbol-logic.js, + // which loads this file before patching the method. + var nativeReplace = String.prototype.replace; + + var patchedExec = nativeExec; + + var UPDATES_LAST_INDEX_WRONG = (function() { + var re1 = /a/; + var re2 = /b*/g; + nativeExec.call(re1, 'a'); + nativeExec.call(re2, 'a'); + return re1.lastIndex !== 0 || re2.lastIndex !== 0; + })(); + + var UNSUPPORTED_Y$1 = regexpStickyHelpers.UNSUPPORTED_Y || regexpStickyHelpers.BROKEN_CARET; + + // nonparticipating capturing group, copied from es5-shim's String#split patch. + var NPCG_INCLUDED = /()??/.exec('')[1] !== undefined; + + var PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED || UNSUPPORTED_Y$1; + + if (PATCH) { + patchedExec = function exec(str) { + var re = this; + var lastIndex, reCopy, match, i; + var sticky = UNSUPPORTED_Y$1 && re.sticky; + var flags = regexpFlags.call(re); + var source = re.source; + var charsAdded = 0; + var strCopy = str; + + if (sticky) { + flags = flags.replace('y', ''); + if (flags.indexOf('g') === -1) { + flags += 'g'; + } + + strCopy = String(str).slice(re.lastIndex); + // Support anchored sticky behavior. + if (re.lastIndex > 0 && (!re.multiline || (re.multiline && str[re.lastIndex - 1] !== '\n'))) { + source = '(?: ' + source + ')'; + strCopy = ' ' + strCopy; + charsAdded++; + } + // ^(? + rx + ) is needed, in combination with some str slicing, to + // simulate the 'y' flag. + reCopy = new RegExp('^(?:' + source + ')', flags); + } + + if (NPCG_INCLUDED) { + reCopy = new RegExp('^' + source + '$(?!\\s)', flags); + } + if (UPDATES_LAST_INDEX_WRONG) lastIndex = re.lastIndex; + + match = nativeExec.call(sticky ? reCopy : re, strCopy); + + if (sticky) { + if (match) { + match.input = match.input.slice(charsAdded); + match[0] = match[0].slice(charsAdded); + match.index = re.lastIndex; + re.lastIndex += match[0].length; + } else re.lastIndex = 0; + } else if (UPDATES_LAST_INDEX_WRONG && match) { + re.lastIndex = re.global ? match.index + match[0].length : lastIndex; + } + if (NPCG_INCLUDED && match && match.length > 1) { + // Fix browsers whose `exec` methods don't consistently return `undefined` + // for NPCG, like IE8. NOTE: This doesn' work for /(.?)?/ + nativeReplace.call(match[0], reCopy, function() { + for (i = 1; i < arguments.length - 2; i++) { + if (arguments[i] === undefined) match[i] = undefined; + } + }); + } + + return match; + }; + } + + var regexpExec = patchedExec; + + _export( + { target: 'RegExp', proto: true, forced: /./.exec !== regexpExec }, + { + exec: regexpExec, + }, + ); + + // `String.prototype.{ codePointAt, at }` methods implementation + var createMethod$2 = function(CONVERT_TO_STRING) { + return function($this, pos) { + var S = String(requireObjectCoercible($this)); + var position = toInteger(pos); + var size = S.length; + var first, second; + if (position < 0 || position >= size) return CONVERT_TO_STRING ? '' : undefined; + first = S.charCodeAt(position); + return first < 0xd800 || + first > 0xdbff || + position + 1 === size || + (second = S.charCodeAt(position + 1)) < 0xdc00 || + second > 0xdfff + ? CONVERT_TO_STRING + ? S.charAt(position) + : first + : CONVERT_TO_STRING + ? S.slice(position, position + 2) + : ((first - 0xd800) << 10) + (second - 0xdc00) + 0x10000; + }; + }; + + var stringMultibyte = { + // `String.prototype.codePointAt` method + // https://tc39.github.io/ecma262/#sec-string.prototype.codepointat + codeAt: createMethod$2(false), + // `String.prototype.at` method + // https://github.com/mathiasbynens/String.prototype.at + charAt: createMethod$2(true), + }; + + var charAt = stringMultibyte.charAt; + + var STRING_ITERATOR = 'String Iterator'; + var setInternalState$2 = internalState.set; + var getInternalState$2 = internalState.getterFor(STRING_ITERATOR); + + // `String.prototype[@@iterator]` method + // https://tc39.github.io/ecma262/#sec-string.prototype-@@iterator + defineIterator( + String, + 'String', + function(iterated) { + setInternalState$2(this, { + type: STRING_ITERATOR, + string: String(iterated), + index: 0, + }); + // `%StringIteratorPrototype%.next` method + // https://tc39.github.io/ecma262/#sec-%stringiteratorprototype%.next + }, + function next() { + var state = getInternalState$2(this); + var string = state.string; + var index = state.index; + var point; + if (index >= string.length) return { value: undefined, done: true }; + point = charAt(string, index); + state.index += point.length; + return { value: point, done: false }; + }, + ); + + // TODO: Remove from `core-js@4` since it's moved to entry points + + var SPECIES$2 = wellKnownSymbol('species'); + + var REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function() { + // #replace needs built-in support for named groups. + // #match works fine because it just return the exec results, even if it has + // a "grops" property. + var re = /./; + re.exec = function() { + var result = []; + result.groups = { a: '7' }; + return result; + }; + return ''.replace(re, '$') !== '7'; + }); + + // IE <= 11 replaces $0 with the whole match, as if it was $& + // https://stackoverflow.com/questions/6024666/getting-ie-to-replace-a-regex-with-the-literal-string-0 + var REPLACE_KEEPS_$0 = (function() { + return 'a'.replace(/./, '$0') === '$0'; + })(); + + var REPLACE = wellKnownSymbol('replace'); + // Safari <= 13.0.3(?) substitutes nth capture where n>m with an empty string + var REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE = (function() { + if (/./[REPLACE]) { + return /./[REPLACE]('a', '$0') === ''; + } + return false; + })(); + + // Chrome 51 has a buggy "split" implementation when RegExp#exec !== nativeExec + // Weex JS has frozen built-in prototypes, so use try / catch wrapper + var SPLIT_WORKS_WITH_OVERWRITTEN_EXEC = !fails(function() { + var re = /(?:)/; + var originalExec = re.exec; + re.exec = function() { + return originalExec.apply(this, arguments); + }; + var result = 'ab'.split(re); + return result.length !== 2 || result[0] !== 'a' || result[1] !== 'b'; + }); + + var fixRegexpWellKnownSymbolLogic = function(KEY, length, exec, sham) { + var SYMBOL = wellKnownSymbol(KEY); + + var DELEGATES_TO_SYMBOL = !fails(function() { + // String methods call symbol-named RegEp methods + var O = {}; + O[SYMBOL] = function() { + return 7; + }; + return ''[KEY](O) != 7; + }); + + var DELEGATES_TO_EXEC = + DELEGATES_TO_SYMBOL && + !fails(function() { + // Symbol-named RegExp methods call .exec + var execCalled = false; + var re = /a/; + + if (KEY === 'split') { + // We can't use real regex here since it causes deoptimization + // and serious performance degradation in V8 + // https://github.com/zloirock/core-js/issues/306 + re = {}; + // RegExp[@@split] doesn't call the regex's exec method, but first creates + // a new one. We need to return the patched regex when creating the new one. + re.constructor = {}; + re.constructor[SPECIES$2] = function() { + return re; + }; + re.flags = ''; + re[SYMBOL] = /./[SYMBOL]; + } + + re.exec = function() { + execCalled = true; + return null; + }; + + re[SYMBOL](''); + return !execCalled; + }); + + if ( + !DELEGATES_TO_SYMBOL || + !DELEGATES_TO_EXEC || + (KEY === 'replace' && + !(REPLACE_SUPPORTS_NAMED_GROUPS && REPLACE_KEEPS_$0 && !REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE)) || + (KEY === 'split' && !SPLIT_WORKS_WITH_OVERWRITTEN_EXEC) + ) { + var nativeRegExpMethod = /./[SYMBOL]; + var methods = exec( + SYMBOL, + ''[KEY], + function(nativeMethod, regexp, str, arg2, forceStringMethod) { + if (regexp.exec === regexpExec) { + if (DELEGATES_TO_SYMBOL && !forceStringMethod) { + // The native String method already delegates to @@method (this + // polyfilled function), leasing to infinite recursion. + // We avoid it by directly calling the native @@method method. + return { done: true, value: nativeRegExpMethod.call(regexp, str, arg2) }; + } + return { done: true, value: nativeMethod.call(str, regexp, arg2) }; + } + return { done: false }; + }, + { + REPLACE_KEEPS_$0: REPLACE_KEEPS_$0, + REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE: REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE, + }, + ); + var stringMethod = methods[0]; + var regexMethod = methods[1]; + + redefine(String.prototype, KEY, stringMethod); + redefine( + RegExp.prototype, + SYMBOL, + length == 2 + ? // 21.2.5.8 RegExp.prototype[@@replace](string, replaceValue) + // 21.2.5.11 RegExp.prototype[@@split](string, limit) + function(string, arg) { + return regexMethod.call(string, this, arg); + } + : // 21.2.5.6 RegExp.prototype[@@match](string) + // 21.2.5.9 RegExp.prototype[@@search](string) + function(string) { + return regexMethod.call(string, this); + }, + ); + } + + if (sham) createNonEnumerableProperty(RegExp.prototype[SYMBOL], 'sham', true); + }; + + var charAt$1 = stringMultibyte.charAt; + + // `AdvanceStringIndex` abstract operation + // https://tc39.github.io/ecma262/#sec-advancestringindex + var advanceStringIndex = function(S, index, unicode) { + return index + (unicode ? charAt$1(S, index).length : 1); + }; + + // `RegExpExec` abstract operation + // https://tc39.github.io/ecma262/#sec-regexpexec + var regexpExecAbstract = function(R, S) { + var exec = R.exec; + if (typeof exec === 'function') { + var result = exec.call(R, S); + if (typeof result !== 'object') { + throw TypeError('RegExp exec method returned something other than an Object or null'); + } + return result; + } + + if (classofRaw(R) !== 'RegExp') { + throw TypeError('RegExp#exec called on incompatible receiver'); + } + + return regexpExec.call(R, S); + }; + + // @@match logic + fixRegexpWellKnownSymbolLogic('match', 1, function(MATCH, nativeMatch, maybeCallNative) { + return [ + // `String.prototype.match` method + // https://tc39.github.io/ecma262/#sec-string.prototype.match + function match(regexp) { + var O = requireObjectCoercible(this); + var matcher = regexp == undefined ? undefined : regexp[MATCH]; + return matcher !== undefined ? matcher.call(regexp, O) : new RegExp(regexp)[MATCH](String(O)); + }, + // `RegExp.prototype[@@match]` method + // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@match + function(regexp) { + var res = maybeCallNative(nativeMatch, regexp, this); + if (res.done) return res.value; + + var rx = anObject(regexp); + var S = String(this); + + if (!rx.global) return regexpExecAbstract(rx, S); + + var fullUnicode = rx.unicode; + rx.lastIndex = 0; + var A = []; + var n = 0; + var result; + while ((result = regexpExecAbstract(rx, S)) !== null) { + var matchStr = String(result[0]); + A[n] = matchStr; + if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode); + n++; + } + return n === 0 ? null : A; + }, + ]; + }); + + // `SameValue` abstract operation + // https://tc39.github.io/ecma262/#sec-samevalue + var sameValue = + Object.is || + function is(x, y) { + // eslint-disable-next-line no-self-compare + return x === y ? x !== 0 || 1 / x === 1 / y : x != x && y != y; + }; + + // @@search logic + fixRegexpWellKnownSymbolLogic('search', 1, function(SEARCH, nativeSearch, maybeCallNative) { + return [ + // `String.prototype.search` method + // https://tc39.github.io/ecma262/#sec-string.prototype.search + function search(regexp) { + var O = requireObjectCoercible(this); + var searcher = regexp == undefined ? undefined : regexp[SEARCH]; + return searcher !== undefined ? searcher.call(regexp, O) : new RegExp(regexp)[SEARCH](String(O)); + }, + // `RegExp.prototype[@@search]` method + // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@search + function(regexp) { + var res = maybeCallNative(nativeSearch, regexp, this); + if (res.done) return res.value; + + var rx = anObject(regexp); + var S = String(this); + + var previousLastIndex = rx.lastIndex; + if (!sameValue(previousLastIndex, 0)) rx.lastIndex = 0; + var result = regexpExecAbstract(rx, S); + if (!sameValue(rx.lastIndex, previousLastIndex)) rx.lastIndex = previousLastIndex; + return result === null ? -1 : result.index; + }, + ]; + }); + + // iterable DOM collections + // flag - `iterable` interface - 'entries', 'keys', 'values', 'forEach' methods + var domIterables = { + CSSRuleList: 0, + CSSStyleDeclaration: 0, + CSSValueList: 0, + ClientRectList: 0, + DOMRectList: 0, + DOMStringList: 0, + DOMTokenList: 1, + DataTransferItemList: 0, + FileList: 0, + HTMLAllCollection: 0, + HTMLCollection: 0, + HTMLFormElement: 0, + HTMLSelectElement: 0, + MediaList: 0, + MimeTypeArray: 0, + NamedNodeMap: 0, + NodeList: 1, + PaintRequestList: 0, + Plugin: 0, + PluginArray: 0, + SVGLengthList: 0, + SVGNumberList: 0, + SVGPathSegList: 0, + SVGPointList: 0, + SVGStringList: 0, + SVGTransformList: 0, + SourceBufferList: 0, + StyleSheetList: 0, + TextTrackCueList: 0, + TextTrackList: 0, + TouchList: 0, + }; + + var ITERATOR$2 = wellKnownSymbol('iterator'); + var TO_STRING_TAG$3 = wellKnownSymbol('toStringTag'); + var ArrayValues = es_array_iterator.values; + + for (var COLLECTION_NAME in domIterables) { + var Collection = global_1[COLLECTION_NAME]; + var CollectionPrototype = Collection && Collection.prototype; + if (CollectionPrototype) { + // some Chrome versions have non-configurable methods on DOMTokenList + if (CollectionPrototype[ITERATOR$2] !== ArrayValues) + try { + createNonEnumerableProperty(CollectionPrototype, ITERATOR$2, ArrayValues); + } catch (error) { + CollectionPrototype[ITERATOR$2] = ArrayValues; + } + if (!CollectionPrototype[TO_STRING_TAG$3]) { + createNonEnumerableProperty(CollectionPrototype, TO_STRING_TAG$3, COLLECTION_NAME); + } + if (domIterables[COLLECTION_NAME]) + for (var METHOD_NAME in es_array_iterator) { + // some Chrome versions have non-configurable methods on DOMTokenList + if (CollectionPrototype[METHOD_NAME] !== es_array_iterator[METHOD_NAME]) + try { + createNonEnumerableProperty(CollectionPrototype, METHOD_NAME, es_array_iterator[METHOD_NAME]); + } catch (error) { + CollectionPrototype[METHOD_NAME] = es_array_iterator[METHOD_NAME]; + } + } + } + } + + var ITERATOR$3 = wellKnownSymbol('iterator'); + + var nativeUrl = !fails(function() { + var url = new URL('b?a=1&b=2&c=3', 'http://a'); + var searchParams = url.searchParams; + var result = ''; + url.pathname = 'c%20d'; + searchParams.forEach(function(value, key) { + searchParams['delete']('b'); + result += key + value; + }); + return ( + (isPure && !url.toJSON) || + !searchParams.sort || + url.href !== 'http://a/c%20d?a=1&c=3' || + searchParams.get('c') !== '3' || + String(new URLSearchParams('?a=1')) !== 'a=1' || + !searchParams[ITERATOR$3] || + // throws in Edge + new URL('https://a@b').username !== 'a' || + new URLSearchParams(new URLSearchParams('a=b')).get('a') !== 'b' || + // not punycoded in Edge + new URL('http://тест').host !== 'xn--e1aybc' || + // not escaped in Chrome 62- + new URL('http://a#б').hash !== '#%D0%B1' || + // fails in Chrome 66- + result !== 'a1c3' || + // throws in Safari + new URL('http://x', undefined).host !== 'x' + ); + }); + + var anInstance = function(it, Constructor, name) { + if (!(it instanceof Constructor)) { + throw TypeError('Incorrect ' + (name ? name + ' ' : '') + 'invocation'); + } + return it; + }; + + var nativeAssign = Object.assign; + var defineProperty$4 = Object.defineProperty; + + // `Object.assign` method + // https://tc39.github.io/ecma262/#sec-object.assign + var objectAssign = + !nativeAssign || + fails(function() { + // should have correct order of operations (Edge bug) + if ( + descriptors && + nativeAssign( + { b: 1 }, + nativeAssign( + defineProperty$4({}, 'a', { + enumerable: true, + get: function() { + defineProperty$4(this, 'b', { + value: 3, + enumerable: false, + }); + }, + }), + { b: 2 }, + ), + ).b !== 1 + ) + return true; + // should work with symbols and should have deterministic property order (V8 bug) + var A = {}; + var B = {}; + // eslint-disable-next-line no-undef + var symbol = Symbol(); + var alphabet = 'abcdefghijklmnopqrst'; + A[symbol] = 7; + alphabet.split('').forEach(function(chr) { + B[chr] = chr; + }); + return nativeAssign({}, A)[symbol] != 7 || objectKeys(nativeAssign({}, B)).join('') != alphabet; + }) + ? function assign(target, source) { + // eslint-disable-line no-unused-vars + var T = toObject(target); + var argumentsLength = arguments.length; + var index = 1; + var getOwnPropertySymbols = objectGetOwnPropertySymbols.f; + var propertyIsEnumerable = objectPropertyIsEnumerable.f; + while (argumentsLength > index) { + var S = indexedObject(arguments[index++]); + var keys = getOwnPropertySymbols ? objectKeys(S).concat(getOwnPropertySymbols(S)) : objectKeys(S); + var length = keys.length; + var j = 0; + var key; + while (length > j) { + key = keys[j++]; + if (!descriptors || propertyIsEnumerable.call(S, key)) T[key] = S[key]; + } + } + return T; + } + : nativeAssign; + + // call something on iterator step with safe closing on error + var callWithSafeIterationClosing = function(iterator, fn, value, ENTRIES) { + try { + return ENTRIES ? fn(anObject(value)[0], value[1]) : fn(value); + // 7.4.6 IteratorClose(iterator, completion) + } catch (error) { + var returnMethod = iterator['return']; + if (returnMethod !== undefined) anObject(returnMethod.call(iterator)); + throw error; + } + }; + + var ITERATOR$4 = wellKnownSymbol('iterator'); + var ArrayPrototype$1 = Array.prototype; + + // check on default Array iterator + var isArrayIteratorMethod = function(it) { + return it !== undefined && (iterators.Array === it || ArrayPrototype$1[ITERATOR$4] === it); + }; + + var createProperty = function(object, key, value) { + var propertyKey = toPrimitive(key); + if (propertyKey in object) objectDefineProperty.f(object, propertyKey, createPropertyDescriptor(0, value)); + else object[propertyKey] = value; + }; + + var ITERATOR$5 = wellKnownSymbol('iterator'); + + var getIteratorMethod = function(it) { + if (it != undefined) return it[ITERATOR$5] || it['@@iterator'] || iterators[classof(it)]; + }; + + // `Array.from` method implementation + // https://tc39.github.io/ecma262/#sec-array.from + var arrayFrom = function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) { + var O = toObject(arrayLike); + var C = typeof this == 'function' ? this : Array; + var argumentsLength = arguments.length; + var mapfn = argumentsLength > 1 ? arguments[1] : undefined; + var mapping = mapfn !== undefined; + var iteratorMethod = getIteratorMethod(O); + var index = 0; + var length, result, step, iterator, next, value; + if (mapping) mapfn = functionBindContext(mapfn, argumentsLength > 2 ? arguments[2] : undefined, 2); + // if the target is not iterable or it's an array with the default iterator - use a simple case + if (iteratorMethod != undefined && !(C == Array && isArrayIteratorMethod(iteratorMethod))) { + iterator = iteratorMethod.call(O); + next = iterator.next; + result = new C(); + for (; !(step = next.call(iterator)).done; index++) { + value = mapping ? callWithSafeIterationClosing(iterator, mapfn, [step.value, index], true) : step.value; + createProperty(result, index, value); + } + } else { + length = toLength(O.length); + result = new C(length); + for (; length > index; index++) { + value = mapping ? mapfn(O[index], index) : O[index]; + createProperty(result, index, value); + } + } + result.length = index; + return result; + }; + + // based on https://github.com/bestiejs/punycode.js/blob/master/punycode.js + var maxInt = 2147483647; // aka. 0x7FFFFFFF or 2^31-1 + var base = 36; + var tMin = 1; + var tMax = 26; + var skew = 38; + var damp = 700; + var initialBias = 72; + var initialN = 128; // 0x80 + var delimiter = '-'; // '\x2D' + var regexNonASCII = /[^\0-\u007E]/; // non-ASCII chars + var regexSeparators = /[.\u3002\uFF0E\uFF61]/g; // RFC 3490 separators + var OVERFLOW_ERROR = 'Overflow: input needs wider integers to process'; + var baseMinusTMin = base - tMin; + var floor$1 = Math.floor; + var stringFromCharCode = String.fromCharCode; + + /** + * Creates an array containing the numeric code points of each Unicode + * character in the string. While JavaScript uses UCS-2 internally, + * this function will convert a pair of surrogate halves (each of which + * UCS-2 exposes as separate characters) into a single code point, + * matching UTF-16. + */ + var ucs2decode = function(string) { + var output = []; + var counter = 0; + var length = string.length; + while (counter < length) { + var value = string.charCodeAt(counter++); + if (value >= 0xd800 && value <= 0xdbff && counter < length) { + // It's a high surrogate, and there is a next character. + var extra = string.charCodeAt(counter++); + if ((extra & 0xfc00) == 0xdc00) { + // Low surrogate. + output.push(((value & 0x3ff) << 10) + (extra & 0x3ff) + 0x10000); + } else { + // It's an unmatched surrogate; only append this code unit, in case the + // next code unit is the high surrogate of a surrogate pair. + output.push(value); + counter--; + } + } else { + output.push(value); + } + } + return output; + }; + + /** + * Converts a digit/integer into a basic code point. + */ + var digitToBasic = function(digit) { + // 0..25 map to ASCII a..z or A..Z + // 26..35 map to ASCII 0..9 + return digit + 22 + 75 * (digit < 26); + }; + + /** + * Bias adaptation function as per section 3.4 of RFC 3492. + * https://tools.ietf.org/html/rfc3492#section-3.4 + */ + var adapt = function(delta, numPoints, firstTime) { + var k = 0; + delta = firstTime ? floor$1(delta / damp) : delta >> 1; + delta += floor$1(delta / numPoints); + for (; delta > (baseMinusTMin * tMax) >> 1; k += base) { + delta = floor$1(delta / baseMinusTMin); + } + return floor$1(k + ((baseMinusTMin + 1) * delta) / (delta + skew)); + }; + + /** + * Converts a string of Unicode symbols (e.g. a domain name label) to a + * Punycode string of ASCII-only symbols. + */ + // eslint-disable-next-line max-statements + var encode = function(input) { + var output = []; + + // Convert the input in UCS-2 to an array of Unicode code points. + input = ucs2decode(input); + + // Cache the length. + var inputLength = input.length; + + // Initialize the state. + var n = initialN; + var delta = 0; + var bias = initialBias; + var i, currentValue; + + // Handle the basic code points. + for (i = 0; i < input.length; i++) { + currentValue = input[i]; + if (currentValue < 0x80) { + output.push(stringFromCharCode(currentValue)); + } + } + + var basicLength = output.length; // number of basic code points. + var handledCPCount = basicLength; // number of code points that have been handled; + + // Finish the basic string with a delimiter unless it's empty. + if (basicLength) { + output.push(delimiter); + } + + // Main encoding loop: + while (handledCPCount < inputLength) { + // All non-basic code points < n have been handled already. Find the next larger one: + var m = maxInt; + for (i = 0; i < input.length; i++) { + currentValue = input[i]; + if (currentValue >= n && currentValue < m) { + m = currentValue; + } + } + + // Increase `delta` enough to advance the decoder's state to , but guard against overflow. + var handledCPCountPlusOne = handledCPCount + 1; + if (m - n > floor$1((maxInt - delta) / handledCPCountPlusOne)) { + throw RangeError(OVERFLOW_ERROR); + } + + delta += (m - n) * handledCPCountPlusOne; + n = m; + + for (i = 0; i < input.length; i++) { + currentValue = input[i]; + if (currentValue < n && ++delta > maxInt) { + throw RangeError(OVERFLOW_ERROR); + } + if (currentValue == n) { + // Represent delta as a generalized variable-length integer. + var q = delta; + for (var k = base /* no condition */; ; k += base) { + var t = k <= bias ? tMin : k >= bias + tMax ? tMax : k - bias; + if (q < t) break; + var qMinusT = q - t; + var baseMinusT = base - t; + output.push(stringFromCharCode(digitToBasic(t + (qMinusT % baseMinusT)))); + q = floor$1(qMinusT / baseMinusT); + } + + output.push(stringFromCharCode(digitToBasic(q))); + bias = adapt(delta, handledCPCountPlusOne, handledCPCount == basicLength); + delta = 0; + ++handledCPCount; + } + } + + ++delta; + ++n; + } + return output.join(''); + }; + + var stringPunycodeToAscii = function(input) { + var encoded = []; + var labels = input + .toLowerCase() + .replace(regexSeparators, '\u002E') + .split('.'); + var i, label; + for (i = 0; i < labels.length; i++) { + label = labels[i]; + encoded.push(regexNonASCII.test(label) ? 'xn--' + encode(label) : label); + } + return encoded.join('.'); + }; + + var redefineAll = function(target, src, options) { + for (var key in src) redefine(target, key, src[key], options); + return target; + }; + + var getIterator = function(it) { + var iteratorMethod = getIteratorMethod(it); + if (typeof iteratorMethod != 'function') { + throw TypeError(String(it) + ' is not iterable'); + } + return anObject(iteratorMethod.call(it)); + }; + + // TODO: in core-js@4, move /modules/ dependencies to public entries for better optimization by tools like `preset-env` + + var $fetch = getBuiltIn('fetch'); + var Headers = getBuiltIn('Headers'); + var ITERATOR$6 = wellKnownSymbol('iterator'); + var URL_SEARCH_PARAMS = 'URLSearchParams'; + var URL_SEARCH_PARAMS_ITERATOR = URL_SEARCH_PARAMS + 'Iterator'; + var setInternalState$3 = internalState.set; + var getInternalParamsState = internalState.getterFor(URL_SEARCH_PARAMS); + var getInternalIteratorState = internalState.getterFor(URL_SEARCH_PARAMS_ITERATOR); + + var plus = /\+/g; + var sequences = Array(4); + + var percentSequence = function(bytes) { + return sequences[bytes - 1] || (sequences[bytes - 1] = RegExp('((?:%[\\da-f]{2}){' + bytes + '})', 'gi')); + }; + + var percentDecode = function(sequence) { + try { + return decodeURIComponent(sequence); + } catch (error) { + return sequence; + } + }; + + var deserialize = function(it) { + var result = it.replace(plus, ' '); + var bytes = 4; + try { + return decodeURIComponent(result); + } catch (error) { + while (bytes) { + result = result.replace(percentSequence(bytes--), percentDecode); + } + return result; + } + }; + + var find = /[!'()~]|%20/g; + + var replace = { + '!': '%21', + "'": '%27', + '(': '%28', + ')': '%29', + '~': '%7E', + '%20': '+', + }; + + var replacer = function(match) { + return replace[match]; + }; + + var serialize = function(it) { + return encodeURIComponent(it).replace(find, replacer); + }; + + var parseSearchParams = function(result, query) { + if (query) { + var attributes = query.split('&'); + var index = 0; + var attribute, entry; + while (index < attributes.length) { + attribute = attributes[index++]; + if (attribute.length) { + entry = attribute.split('='); + result.push({ + key: deserialize(entry.shift()), + value: deserialize(entry.join('=')), + }); + } + } + } + }; + + var updateSearchParams = function(query) { + this.entries.length = 0; + parseSearchParams(this.entries, query); + }; + + var validateArgumentsLength = function(passed, required) { + if (passed < required) throw TypeError('Not enough arguments'); + }; + + var URLSearchParamsIterator = createIteratorConstructor( + function Iterator(params, kind) { + setInternalState$3(this, { + type: URL_SEARCH_PARAMS_ITERATOR, + iterator: getIterator(getInternalParamsState(params).entries), + kind: kind, + }); + }, + 'Iterator', + function next() { + var state = getInternalIteratorState(this); + var kind = state.kind; + var step = state.iterator.next(); + var entry = step.value; + if (!step.done) { + step.value = kind === 'keys' ? entry.key : kind === 'values' ? entry.value : [entry.key, entry.value]; + } + return step; + }, + ); + + // `URLSearchParams` constructor + // https://url.spec.whatwg.org/#interface-urlsearchparams + var URLSearchParamsConstructor = function URLSearchParams(/* init */) { + anInstance(this, URLSearchParamsConstructor, URL_SEARCH_PARAMS); + var init = arguments.length > 0 ? arguments[0] : undefined; + var that = this; + var entries = []; + var iteratorMethod, iterator, next, step, entryIterator, entryNext, first, second, key; + + setInternalState$3(that, { + type: URL_SEARCH_PARAMS, + entries: entries, + updateURL: function() { + /* empty */ + }, + updateSearchParams: updateSearchParams, + }); + + if (init !== undefined) { + if (isObject(init)) { + iteratorMethod = getIteratorMethod(init); + if (typeof iteratorMethod === 'function') { + iterator = iteratorMethod.call(init); + next = iterator.next; + while (!(step = next.call(iterator)).done) { + entryIterator = getIterator(anObject(step.value)); + entryNext = entryIterator.next; + if ( + (first = entryNext.call(entryIterator)).done || + (second = entryNext.call(entryIterator)).done || + !entryNext.call(entryIterator).done + ) + throw TypeError('Expected sequence with length 2'); + entries.push({ key: first.value + '', value: second.value + '' }); + } + } else for (key in init) if (has(init, key)) entries.push({ key: key, value: init[key] + '' }); + } else { + parseSearchParams( + entries, + typeof init === 'string' ? (init.charAt(0) === '?' ? init.slice(1) : init) : init + '', + ); + } + } + }; + + var URLSearchParamsPrototype = URLSearchParamsConstructor.prototype; + + redefineAll( + URLSearchParamsPrototype, + { + // `URLSearchParams.prototype.appent` method + // https://url.spec.whatwg.org/#dom-urlsearchparams-append + append: function append(name, value) { + validateArgumentsLength(arguments.length, 2); + var state = getInternalParamsState(this); + state.entries.push({ key: name + '', value: value + '' }); + state.updateURL(); + }, + // `URLSearchParams.prototype.delete` method + // https://url.spec.whatwg.org/#dom-urlsearchparams-delete + delete: function(name) { + validateArgumentsLength(arguments.length, 1); + var state = getInternalParamsState(this); + var entries = state.entries; + var key = name + ''; + var index = 0; + while (index < entries.length) { + if (entries[index].key === key) entries.splice(index, 1); + else index++; + } + state.updateURL(); + }, + // `URLSearchParams.prototype.get` method + // https://url.spec.whatwg.org/#dom-urlsearchparams-get + get: function get(name) { + validateArgumentsLength(arguments.length, 1); + var entries = getInternalParamsState(this).entries; + var key = name + ''; + var index = 0; + for (; index < entries.length; index++) { + if (entries[index].key === key) return entries[index].value; + } + return null; + }, + // `URLSearchParams.prototype.getAll` method + // https://url.spec.whatwg.org/#dom-urlsearchparams-getall + getAll: function getAll(name) { + validateArgumentsLength(arguments.length, 1); + var entries = getInternalParamsState(this).entries; + var key = name + ''; + var result = []; + var index = 0; + for (; index < entries.length; index++) { + if (entries[index].key === key) result.push(entries[index].value); + } + return result; + }, + // `URLSearchParams.prototype.has` method + // https://url.spec.whatwg.org/#dom-urlsearchparams-has + has: function has(name) { + validateArgumentsLength(arguments.length, 1); + var entries = getInternalParamsState(this).entries; + var key = name + ''; + var index = 0; + while (index < entries.length) { + if (entries[index++].key === key) return true; + } + return false; + }, + // `URLSearchParams.prototype.set` method + // https://url.spec.whatwg.org/#dom-urlsearchparams-set + set: function set(name, value) { + validateArgumentsLength(arguments.length, 1); + var state = getInternalParamsState(this); + var entries = state.entries; + var found = false; + var key = name + ''; + var val = value + ''; + var index = 0; + var entry; + for (; index < entries.length; index++) { + entry = entries[index]; + if (entry.key === key) { + if (found) entries.splice(index--, 1); + else { + found = true; + entry.value = val; + } + } + } + if (!found) entries.push({ key: key, value: val }); + state.updateURL(); + }, + // `URLSearchParams.prototype.sort` method + // https://url.spec.whatwg.org/#dom-urlsearchparams-sort + sort: function sort() { + var state = getInternalParamsState(this); + var entries = state.entries; + // Array#sort is not stable in some engines + var slice = entries.slice(); + var entry, entriesIndex, sliceIndex; + entries.length = 0; + for (sliceIndex = 0; sliceIndex < slice.length; sliceIndex++) { + entry = slice[sliceIndex]; + for (entriesIndex = 0; entriesIndex < sliceIndex; entriesIndex++) { + if (entries[entriesIndex].key > entry.key) { + entries.splice(entriesIndex, 0, entry); + break; + } + } + if (entriesIndex === sliceIndex) entries.push(entry); + } + state.updateURL(); + }, + // `URLSearchParams.prototype.forEach` method + forEach: function forEach(callback /* , thisArg */) { + var entries = getInternalParamsState(this).entries; + var boundFunction = functionBindContext(callback, arguments.length > 1 ? arguments[1] : undefined, 3); + var index = 0; + var entry; + while (index < entries.length) { + entry = entries[index++]; + boundFunction(entry.value, entry.key, this); + } + }, + // `URLSearchParams.prototype.keys` method + keys: function keys() { + return new URLSearchParamsIterator(this, 'keys'); + }, + // `URLSearchParams.prototype.values` method + values: function values() { + return new URLSearchParamsIterator(this, 'values'); + }, + // `URLSearchParams.prototype.entries` method + entries: function entries() { + return new URLSearchParamsIterator(this, 'entries'); + }, + }, + { enumerable: true }, + ); + + // `URLSearchParams.prototype[@@iterator]` method + redefine(URLSearchParamsPrototype, ITERATOR$6, URLSearchParamsPrototype.entries); + + // `URLSearchParams.prototype.toString` method + // https://url.spec.whatwg.org/#urlsearchparams-stringification-behavior + redefine( + URLSearchParamsPrototype, + 'toString', + function toString() { + var entries = getInternalParamsState(this).entries; + var result = []; + var index = 0; + var entry; + while (index < entries.length) { + entry = entries[index++]; + result.push(serialize(entry.key) + '=' + serialize(entry.value)); + } + return result.join('&'); + }, + { enumerable: true }, + ); + + setToStringTag(URLSearchParamsConstructor, URL_SEARCH_PARAMS); + + _export( + { global: true, forced: !nativeUrl }, + { + URLSearchParams: URLSearchParamsConstructor, + }, + ); + + // Wrap `fetch` for correct work with polyfilled `URLSearchParams` + // https://github.com/zloirock/core-js/issues/674 + if (!nativeUrl && typeof $fetch == 'function' && typeof Headers == 'function') { + _export( + { global: true, enumerable: true, forced: true }, + { + fetch: function fetch(input /* , init */) { + var args = [input]; + var init, body, headers; + if (arguments.length > 1) { + init = arguments[1]; + if (isObject(init)) { + body = init.body; + if (classof(body) === URL_SEARCH_PARAMS) { + headers = init.headers ? new Headers(init.headers) : new Headers(); + if (!headers.has('content-type')) { + headers.set('content-type', 'application/x-www-form-urlencoded;charset=UTF-8'); + } + init = objectCreate(init, { + body: createPropertyDescriptor(0, String(body)), + headers: createPropertyDescriptor(0, headers), + }); + } + } + args.push(init); + } + return $fetch.apply(this, args); + }, + }, + ); + } + + var web_urlSearchParams = { + URLSearchParams: URLSearchParamsConstructor, + getState: getInternalParamsState, + }; + + // TODO: in core-js@4, move /modules/ dependencies to public entries for better optimization by tools like `preset-env` + + var codeAt = stringMultibyte.codeAt; + + var NativeURL = global_1.URL; + var URLSearchParams$1 = web_urlSearchParams.URLSearchParams; + var getInternalSearchParamsState = web_urlSearchParams.getState; + var setInternalState$4 = internalState.set; + var getInternalURLState = internalState.getterFor('URL'); + var floor$2 = Math.floor; + var pow = Math.pow; + + var INVALID_AUTHORITY = 'Invalid authority'; + var INVALID_SCHEME = 'Invalid scheme'; + var INVALID_HOST = 'Invalid host'; + var INVALID_PORT = 'Invalid port'; + + var ALPHA = /[A-Za-z]/; + var ALPHANUMERIC = /[\d+-.A-Za-z]/; + var DIGIT = /\d/; + var HEX_START = /^(0x|0X)/; + var OCT = /^[0-7]+$/; + var DEC = /^\d+$/; + var HEX = /^[\dA-Fa-f]+$/; + // eslint-disable-next-line no-control-regex + var FORBIDDEN_HOST_CODE_POINT = /[\u0000\u0009\u000A\u000D #%/:?@[\\]]/; + // eslint-disable-next-line no-control-regex + var FORBIDDEN_HOST_CODE_POINT_EXCLUDING_PERCENT = /[\u0000\u0009\u000A\u000D #/:?@[\\]]/; + // eslint-disable-next-line no-control-regex + var LEADING_AND_TRAILING_C0_CONTROL_OR_SPACE = /^[\u0000-\u001F ]+|[\u0000-\u001F ]+$/g; + // eslint-disable-next-line no-control-regex + var TAB_AND_NEW_LINE = /[\u0009\u000A\u000D]/g; + var EOF; + + var parseHost = function(url, input) { + var result, codePoints, index; + if (input.charAt(0) == '[') { + if (input.charAt(input.length - 1) != ']') return INVALID_HOST; + result = parseIPv6(input.slice(1, -1)); + if (!result) return INVALID_HOST; + url.host = result; + // opaque host + } else if (!isSpecial(url)) { + if (FORBIDDEN_HOST_CODE_POINT_EXCLUDING_PERCENT.test(input)) return INVALID_HOST; + result = ''; + codePoints = arrayFrom(input); + for (index = 0; index < codePoints.length; index++) { + result += percentEncode(codePoints[index], C0ControlPercentEncodeSet); + } + url.host = result; + } else { + input = stringPunycodeToAscii(input); + if (FORBIDDEN_HOST_CODE_POINT.test(input)) return INVALID_HOST; + result = parseIPv4(input); + if (result === null) return INVALID_HOST; + url.host = result; + } + }; + + var parseIPv4 = function(input) { + var parts = input.split('.'); + var partsLength, numbers, index, part, radix, number, ipv4; + if (parts.length && parts[parts.length - 1] == '') { + parts.pop(); + } + partsLength = parts.length; + if (partsLength > 4) return input; + numbers = []; + for (index = 0; index < partsLength; index++) { + part = parts[index]; + if (part == '') return input; + radix = 10; + if (part.length > 1 && part.charAt(0) == '0') { + radix = HEX_START.test(part) ? 16 : 8; + part = part.slice(radix == 8 ? 1 : 2); + } + if (part === '') { + number = 0; + } else { + if (!(radix == 10 ? DEC : radix == 8 ? OCT : HEX).test(part)) return input; + number = parseInt(part, radix); + } + numbers.push(number); + } + for (index = 0; index < partsLength; index++) { + number = numbers[index]; + if (index == partsLength - 1) { + if (number >= pow(256, 5 - partsLength)) return null; + } else if (number > 255) return null; + } + ipv4 = numbers.pop(); + for (index = 0; index < numbers.length; index++) { + ipv4 += numbers[index] * pow(256, 3 - index); + } + return ipv4; + }; + + // eslint-disable-next-line max-statements + var parseIPv6 = function(input) { + var address = [0, 0, 0, 0, 0, 0, 0, 0]; + var pieceIndex = 0; + var compress = null; + var pointer = 0; + var value, length, numbersSeen, ipv4Piece, number, swaps, swap; + + var char = function() { + return input.charAt(pointer); + }; + + if (char() == ':') { + if (input.charAt(1) != ':') return; + pointer += 2; + pieceIndex++; + compress = pieceIndex; + } + while (char()) { + if (pieceIndex == 8) return; + if (char() == ':') { + if (compress !== null) return; + pointer++; + pieceIndex++; + compress = pieceIndex; + continue; + } + value = length = 0; + while (length < 4 && HEX.test(char())) { + value = value * 16 + parseInt(char(), 16); + pointer++; + length++; + } + if (char() == '.') { + if (length == 0) return; + pointer -= length; + if (pieceIndex > 6) return; + numbersSeen = 0; + while (char()) { + ipv4Piece = null; + if (numbersSeen > 0) { + if (char() == '.' && numbersSeen < 4) pointer++; + else return; + } + if (!DIGIT.test(char())) return; + while (DIGIT.test(char())) { + number = parseInt(char(), 10); + if (ipv4Piece === null) ipv4Piece = number; + else if (ipv4Piece == 0) return; + else ipv4Piece = ipv4Piece * 10 + number; + if (ipv4Piece > 255) return; + pointer++; + } + address[pieceIndex] = address[pieceIndex] * 256 + ipv4Piece; + numbersSeen++; + if (numbersSeen == 2 || numbersSeen == 4) pieceIndex++; + } + if (numbersSeen != 4) return; + break; + } else if (char() == ':') { + pointer++; + if (!char()) return; + } else if (char()) return; + address[pieceIndex++] = value; + } + if (compress !== null) { + swaps = pieceIndex - compress; + pieceIndex = 7; + while (pieceIndex != 0 && swaps > 0) { + swap = address[pieceIndex]; + address[pieceIndex--] = address[compress + swaps - 1]; + address[compress + --swaps] = swap; + } + } else if (pieceIndex != 8) return; + return address; + }; + + var findLongestZeroSequence = function(ipv6) { + var maxIndex = null; + var maxLength = 1; + var currStart = null; + var currLength = 0; + var index = 0; + for (; index < 8; index++) { + if (ipv6[index] !== 0) { + if (currLength > maxLength) { + maxIndex = currStart; + maxLength = currLength; + } + currStart = null; + currLength = 0; + } else { + if (currStart === null) currStart = index; + ++currLength; + } + } + if (currLength > maxLength) { + maxIndex = currStart; + maxLength = currLength; + } + return maxIndex; + }; + + var serializeHost = function(host) { + var result, index, compress, ignore0; + // ipv4 + if (typeof host == 'number') { + result = []; + for (index = 0; index < 4; index++) { + result.unshift(host % 256); + host = floor$2(host / 256); + } + return result.join('.'); + // ipv6 + } else if (typeof host == 'object') { + result = ''; + compress = findLongestZeroSequence(host); + for (index = 0; index < 8; index++) { + if (ignore0 && host[index] === 0) continue; + if (ignore0) ignore0 = false; + if (compress === index) { + result += index ? ':' : '::'; + ignore0 = true; + } else { + result += host[index].toString(16); + if (index < 7) result += ':'; + } + } + return '[' + result + ']'; + } + return host; + }; + + var C0ControlPercentEncodeSet = {}; + var fragmentPercentEncodeSet = objectAssign({}, C0ControlPercentEncodeSet, { + ' ': 1, + '"': 1, + '<': 1, + '>': 1, + '`': 1, + }); + var pathPercentEncodeSet = objectAssign({}, fragmentPercentEncodeSet, { + '#': 1, + '?': 1, + '{': 1, + '}': 1, + }); + var userinfoPercentEncodeSet = objectAssign({}, pathPercentEncodeSet, { + '/': 1, + ':': 1, + ';': 1, + '=': 1, + '@': 1, + '[': 1, + '\\': 1, + ']': 1, + '^': 1, + '|': 1, + }); + + var percentEncode = function(char, set) { + var code = codeAt(char, 0); + return code > 0x20 && code < 0x7f && !has(set, char) ? char : encodeURIComponent(char); + }; + + var specialSchemes = { + ftp: 21, + file: null, + http: 80, + https: 443, + ws: 80, + wss: 443, + }; + + var isSpecial = function(url) { + return has(specialSchemes, url.scheme); + }; + + var includesCredentials = function(url) { + return url.username != '' || url.password != ''; + }; + + var cannotHaveUsernamePasswordPort = function(url) { + return !url.host || url.cannotBeABaseURL || url.scheme == 'file'; + }; + + var isWindowsDriveLetter = function(string, normalized) { + var second; + return ( + string.length == 2 && + ALPHA.test(string.charAt(0)) && + ((second = string.charAt(1)) == ':' || (!normalized && second == '|')) + ); + }; + + var startsWithWindowsDriveLetter = function(string) { + var third; + return ( + string.length > 1 && + isWindowsDriveLetter(string.slice(0, 2)) && + (string.length == 2 || (third = string.charAt(2)) === '/' || third === '\\' || third === '?' || third === '#') + ); + }; + + var shortenURLsPath = function(url) { + var path = url.path; + var pathSize = path.length; + if (pathSize && (url.scheme != 'file' || pathSize != 1 || !isWindowsDriveLetter(path[0], true))) { + path.pop(); + } + }; + + var isSingleDot = function(segment) { + return segment === '.' || segment.toLowerCase() === '%2e'; + }; + + var isDoubleDot = function(segment) { + segment = segment.toLowerCase(); + return segment === '..' || segment === '%2e.' || segment === '.%2e' || segment === '%2e%2e'; + }; + + // States: + var SCHEME_START = {}; + var SCHEME = {}; + var NO_SCHEME = {}; + var SPECIAL_RELATIVE_OR_AUTHORITY = {}; + var PATH_OR_AUTHORITY = {}; + var RELATIVE = {}; + var RELATIVE_SLASH = {}; + var SPECIAL_AUTHORITY_SLASHES = {}; + var SPECIAL_AUTHORITY_IGNORE_SLASHES = {}; + var AUTHORITY = {}; + var HOST = {}; + var HOSTNAME = {}; + var PORT = {}; + var FILE = {}; + var FILE_SLASH = {}; + var FILE_HOST = {}; + var PATH_START = {}; + var PATH = {}; + var CANNOT_BE_A_BASE_URL_PATH = {}; + var QUERY = {}; + var FRAGMENT = {}; + + // eslint-disable-next-line max-statements + var parseURL = function(url, input, stateOverride, base) { + var state = stateOverride || SCHEME_START; + var pointer = 0; + var buffer = ''; + var seenAt = false; + var seenBracket = false; + var seenPasswordToken = false; + var codePoints, char, bufferCodePoints, failure; + + if (!stateOverride) { + url.scheme = ''; + url.username = ''; + url.password = ''; + url.host = null; + url.port = null; + url.path = []; + url.query = null; + url.fragment = null; + url.cannotBeABaseURL = false; + input = input.replace(LEADING_AND_TRAILING_C0_CONTROL_OR_SPACE, ''); + } + + input = input.replace(TAB_AND_NEW_LINE, ''); + + codePoints = arrayFrom(input); + + while (pointer <= codePoints.length) { + char = codePoints[pointer]; + switch (state) { + case SCHEME_START: + if (char && ALPHA.test(char)) { + buffer += char.toLowerCase(); + state = SCHEME; + } else if (!stateOverride) { + state = NO_SCHEME; + continue; + } else return INVALID_SCHEME; + break; + + case SCHEME: + if (char && (ALPHANUMERIC.test(char) || char == '+' || char == '-' || char == '.')) { + buffer += char.toLowerCase(); + } else if (char == ':') { + if ( + stateOverride && + (isSpecial(url) != has(specialSchemes, buffer) || + (buffer == 'file' && (includesCredentials(url) || url.port !== null)) || + (url.scheme == 'file' && !url.host)) + ) + return; + url.scheme = buffer; + if (stateOverride) { + if (isSpecial(url) && specialSchemes[url.scheme] == url.port) url.port = null; + return; + } + buffer = ''; + if (url.scheme == 'file') { + state = FILE; + } else if (isSpecial(url) && base && base.scheme == url.scheme) { + state = SPECIAL_RELATIVE_OR_AUTHORITY; + } else if (isSpecial(url)) { + state = SPECIAL_AUTHORITY_SLASHES; + } else if (codePoints[pointer + 1] == '/') { + state = PATH_OR_AUTHORITY; + pointer++; + } else { + url.cannotBeABaseURL = true; + url.path.push(''); + state = CANNOT_BE_A_BASE_URL_PATH; + } + } else if (!stateOverride) { + buffer = ''; + state = NO_SCHEME; + pointer = 0; + continue; + } else return INVALID_SCHEME; + break; + + case NO_SCHEME: + if (!base || (base.cannotBeABaseURL && char != '#')) return INVALID_SCHEME; + if (base.cannotBeABaseURL && char == '#') { + url.scheme = base.scheme; + url.path = base.path.slice(); + url.query = base.query; + url.fragment = ''; + url.cannotBeABaseURL = true; + state = FRAGMENT; + break; + } + state = base.scheme == 'file' ? FILE : RELATIVE; + continue; + + case SPECIAL_RELATIVE_OR_AUTHORITY: + if (char == '/' && codePoints[pointer + 1] == '/') { + state = SPECIAL_AUTHORITY_IGNORE_SLASHES; + pointer++; + } else { + state = RELATIVE; + continue; + } + break; + + case PATH_OR_AUTHORITY: + if (char == '/') { + state = AUTHORITY; + break; + } else { + state = PATH; + continue; + } + + case RELATIVE: + url.scheme = base.scheme; + if (char == EOF) { + url.username = base.username; + url.password = base.password; + url.host = base.host; + url.port = base.port; + url.path = base.path.slice(); + url.query = base.query; + } else if (char == '/' || (char == '\\' && isSpecial(url))) { + state = RELATIVE_SLASH; + } else if (char == '?') { + url.username = base.username; + url.password = base.password; + url.host = base.host; + url.port = base.port; + url.path = base.path.slice(); + url.query = ''; + state = QUERY; + } else if (char == '#') { + url.username = base.username; + url.password = base.password; + url.host = base.host; + url.port = base.port; + url.path = base.path.slice(); + url.query = base.query; + url.fragment = ''; + state = FRAGMENT; + } else { + url.username = base.username; + url.password = base.password; + url.host = base.host; + url.port = base.port; + url.path = base.path.slice(); + url.path.pop(); + state = PATH; + continue; + } + break; + + case RELATIVE_SLASH: + if (isSpecial(url) && (char == '/' || char == '\\')) { + state = SPECIAL_AUTHORITY_IGNORE_SLASHES; + } else if (char == '/') { + state = AUTHORITY; + } else { + url.username = base.username; + url.password = base.password; + url.host = base.host; + url.port = base.port; + state = PATH; + continue; + } + break; + + case SPECIAL_AUTHORITY_SLASHES: + state = SPECIAL_AUTHORITY_IGNORE_SLASHES; + if (char != '/' || buffer.charAt(pointer + 1) != '/') continue; + pointer++; + break; + + case SPECIAL_AUTHORITY_IGNORE_SLASHES: + if (char != '/' && char != '\\') { + state = AUTHORITY; + continue; + } + break; + + case AUTHORITY: + if (char == '@') { + if (seenAt) buffer = '%40' + buffer; + seenAt = true; + bufferCodePoints = arrayFrom(buffer); + for (var i = 0; i < bufferCodePoints.length; i++) { + var codePoint = bufferCodePoints[i]; + if (codePoint == ':' && !seenPasswordToken) { + seenPasswordToken = true; + continue; + } + var encodedCodePoints = percentEncode(codePoint, userinfoPercentEncodeSet); + if (seenPasswordToken) url.password += encodedCodePoints; + else url.username += encodedCodePoints; + } + buffer = ''; + } else if (char == EOF || char == '/' || char == '?' || char == '#' || (char == '\\' && isSpecial(url))) { + if (seenAt && buffer == '') return INVALID_AUTHORITY; + pointer -= arrayFrom(buffer).length + 1; + buffer = ''; + state = HOST; + } else buffer += char; + break; + + case HOST: + case HOSTNAME: + if (stateOverride && url.scheme == 'file') { + state = FILE_HOST; + continue; + } else if (char == ':' && !seenBracket) { + if (buffer == '') return INVALID_HOST; + failure = parseHost(url, buffer); + if (failure) return failure; + buffer = ''; + state = PORT; + if (stateOverride == HOSTNAME) return; + } else if (char == EOF || char == '/' || char == '?' || char == '#' || (char == '\\' && isSpecial(url))) { + if (isSpecial(url) && buffer == '') return INVALID_HOST; + if (stateOverride && buffer == '' && (includesCredentials(url) || url.port !== null)) return; + failure = parseHost(url, buffer); + if (failure) return failure; + buffer = ''; + state = PATH_START; + if (stateOverride) return; + continue; + } else { + if (char == '[') seenBracket = true; + else if (char == ']') seenBracket = false; + buffer += char; + } + break; + + case PORT: + if (DIGIT.test(char)) { + buffer += char; + } else if ( + char == EOF || + char == '/' || + char == '?' || + char == '#' || + (char == '\\' && isSpecial(url)) || + stateOverride + ) { + if (buffer != '') { + var port = parseInt(buffer, 10); + if (port > 0xffff) return INVALID_PORT; + url.port = isSpecial(url) && port === specialSchemes[url.scheme] ? null : port; + buffer = ''; + } + if (stateOverride) return; + state = PATH_START; + continue; + } else return INVALID_PORT; + break; + + case FILE: + url.scheme = 'file'; + if (char == '/' || char == '\\') state = FILE_SLASH; + else if (base && base.scheme == 'file') { + if (char == EOF) { + url.host = base.host; + url.path = base.path.slice(); + url.query = base.query; + } else if (char == '?') { + url.host = base.host; + url.path = base.path.slice(); + url.query = ''; + state = QUERY; + } else if (char == '#') { + url.host = base.host; + url.path = base.path.slice(); + url.query = base.query; + url.fragment = ''; + state = FRAGMENT; + } else { + if (!startsWithWindowsDriveLetter(codePoints.slice(pointer).join(''))) { + url.host = base.host; + url.path = base.path.slice(); + shortenURLsPath(url); + } + state = PATH; + continue; + } + } else { + state = PATH; + continue; + } + break; + + case FILE_SLASH: + if (char == '/' || char == '\\') { + state = FILE_HOST; + break; + } + if (base && base.scheme == 'file' && !startsWithWindowsDriveLetter(codePoints.slice(pointer).join(''))) { + if (isWindowsDriveLetter(base.path[0], true)) url.path.push(base.path[0]); + else url.host = base.host; + } + state = PATH; + continue; + + case FILE_HOST: + if (char == EOF || char == '/' || char == '\\' || char == '?' || char == '#') { + if (!stateOverride && isWindowsDriveLetter(buffer)) { + state = PATH; + } else if (buffer == '') { + url.host = ''; + if (stateOverride) return; + state = PATH_START; + } else { + failure = parseHost(url, buffer); + if (failure) return failure; + if (url.host == 'localhost') url.host = ''; + if (stateOverride) return; + buffer = ''; + state = PATH_START; + } + continue; + } else buffer += char; + break; + + case PATH_START: + if (isSpecial(url)) { + state = PATH; + if (char != '/' && char != '\\') continue; + } else if (!stateOverride && char == '?') { + url.query = ''; + state = QUERY; + } else if (!stateOverride && char == '#') { + url.fragment = ''; + state = FRAGMENT; + } else if (char != EOF) { + state = PATH; + if (char != '/') continue; + } + break; + + case PATH: + if ( + char == EOF || + char == '/' || + (char == '\\' && isSpecial(url)) || + (!stateOverride && (char == '?' || char == '#')) + ) { + if (isDoubleDot(buffer)) { + shortenURLsPath(url); + if (char != '/' && !(char == '\\' && isSpecial(url))) { + url.path.push(''); + } + } else if (isSingleDot(buffer)) { + if (char != '/' && !(char == '\\' && isSpecial(url))) { + url.path.push(''); + } + } else { + if (url.scheme == 'file' && !url.path.length && isWindowsDriveLetter(buffer)) { + if (url.host) url.host = ''; + buffer = buffer.charAt(0) + ':'; // normalize windows drive letter + } + url.path.push(buffer); + } + buffer = ''; + if (url.scheme == 'file' && (char == EOF || char == '?' || char == '#')) { + while (url.path.length > 1 && url.path[0] === '') { + url.path.shift(); + } + } + if (char == '?') { + url.query = ''; + state = QUERY; + } else if (char == '#') { + url.fragment = ''; + state = FRAGMENT; + } + } else { + buffer += percentEncode(char, pathPercentEncodeSet); + } + break; + + case CANNOT_BE_A_BASE_URL_PATH: + if (char == '?') { + url.query = ''; + state = QUERY; + } else if (char == '#') { + url.fragment = ''; + state = FRAGMENT; + } else if (char != EOF) { + url.path[0] += percentEncode(char, C0ControlPercentEncodeSet); + } + break; + + case QUERY: + if (!stateOverride && char == '#') { + url.fragment = ''; + state = FRAGMENT; + } else if (char != EOF) { + if (char == "'" && isSpecial(url)) url.query += '%27'; + else if (char == '#') url.query += '%23'; + else url.query += percentEncode(char, C0ControlPercentEncodeSet); + } + break; + + case FRAGMENT: + if (char != EOF) url.fragment += percentEncode(char, fragmentPercentEncodeSet); + break; + } + + pointer++; + } + }; + + // `URL` constructor + // https://url.spec.whatwg.org/#url-class + var URLConstructor = function URL(url /* , base */) { + var that = anInstance(this, URLConstructor, 'URL'); + var base = arguments.length > 1 ? arguments[1] : undefined; + var urlString = String(url); + var state = setInternalState$4(that, { type: 'URL' }); + var baseState, failure; + if (base !== undefined) { + if (base instanceof URLConstructor) baseState = getInternalURLState(base); + else { + failure = parseURL((baseState = {}), String(base)); + if (failure) throw TypeError(failure); + } + } + failure = parseURL(state, urlString, null, baseState); + if (failure) throw TypeError(failure); + var searchParams = (state.searchParams = new URLSearchParams$1()); + var searchParamsState = getInternalSearchParamsState(searchParams); + searchParamsState.updateSearchParams(state.query); + searchParamsState.updateURL = function() { + state.query = String(searchParams) || null; + }; + if (!descriptors) { + that.href = serializeURL.call(that); + that.origin = getOrigin.call(that); + that.protocol = getProtocol.call(that); + that.username = getUsername.call(that); + that.password = getPassword.call(that); + that.host = getHost.call(that); + that.hostname = getHostname.call(that); + that.port = getPort.call(that); + that.pathname = getPathname.call(that); + that.search = getSearch.call(that); + that.searchParams = getSearchParams.call(that); + that.hash = getHash.call(that); + } + }; + + var URLPrototype = URLConstructor.prototype; + + var serializeURL = function() { + var url = getInternalURLState(this); + var scheme = url.scheme; + var username = url.username; + var password = url.password; + var host = url.host; + var port = url.port; + var path = url.path; + var query = url.query; + var fragment = url.fragment; + var output = scheme + ':'; + if (host !== null) { + output += '//'; + if (includesCredentials(url)) { + output += username + (password ? ':' + password : '') + '@'; + } + output += serializeHost(host); + if (port !== null) output += ':' + port; + } else if (scheme == 'file') output += '//'; + output += url.cannotBeABaseURL ? path[0] : path.length ? '/' + path.join('/') : ''; + if (query !== null) output += '?' + query; + if (fragment !== null) output += '#' + fragment; + return output; + }; + + var getOrigin = function() { + var url = getInternalURLState(this); + var scheme = url.scheme; + var port = url.port; + if (scheme == 'blob') + try { + return new URL(scheme.path[0]).origin; + } catch (error) { + return 'null'; + } + if (scheme == 'file' || !isSpecial(url)) return 'null'; + return scheme + '://' + serializeHost(url.host) + (port !== null ? ':' + port : ''); + }; + + var getProtocol = function() { + return getInternalURLState(this).scheme + ':'; + }; + + var getUsername = function() { + return getInternalURLState(this).username; + }; + + var getPassword = function() { + return getInternalURLState(this).password; + }; + + var getHost = function() { + var url = getInternalURLState(this); + var host = url.host; + var port = url.port; + return host === null ? '' : port === null ? serializeHost(host) : serializeHost(host) + ':' + port; + }; + + var getHostname = function() { + var host = getInternalURLState(this).host; + return host === null ? '' : serializeHost(host); + }; + + var getPort = function() { + var port = getInternalURLState(this).port; + return port === null ? '' : String(port); + }; + + var getPathname = function() { + var url = getInternalURLState(this); + var path = url.path; + return url.cannotBeABaseURL ? path[0] : path.length ? '/' + path.join('/') : ''; + }; + + var getSearch = function() { + var query = getInternalURLState(this).query; + return query ? '?' + query : ''; + }; + + var getSearchParams = function() { + return getInternalURLState(this).searchParams; + }; + + var getHash = function() { + var fragment = getInternalURLState(this).fragment; + return fragment ? '#' + fragment : ''; + }; + + var accessorDescriptor = function(getter, setter) { + return { get: getter, set: setter, configurable: true, enumerable: true }; + }; + + if (descriptors) { + objectDefineProperties(URLPrototype, { + // `URL.prototype.href` accessors pair + // https://url.spec.whatwg.org/#dom-url-href + href: accessorDescriptor(serializeURL, function(href) { + var url = getInternalURLState(this); + var urlString = String(href); + var failure = parseURL(url, urlString); + if (failure) throw TypeError(failure); + getInternalSearchParamsState(url.searchParams).updateSearchParams(url.query); + }), + // `URL.prototype.origin` getter + // https://url.spec.whatwg.org/#dom-url-origin + origin: accessorDescriptor(getOrigin), + // `URL.prototype.protocol` accessors pair + // https://url.spec.whatwg.org/#dom-url-protocol + protocol: accessorDescriptor(getProtocol, function(protocol) { + var url = getInternalURLState(this); + parseURL(url, String(protocol) + ':', SCHEME_START); + }), + // `URL.prototype.username` accessors pair + // https://url.spec.whatwg.org/#dom-url-username + username: accessorDescriptor(getUsername, function(username) { + var url = getInternalURLState(this); + var codePoints = arrayFrom(String(username)); + if (cannotHaveUsernamePasswordPort(url)) return; + url.username = ''; + for (var i = 0; i < codePoints.length; i++) { + url.username += percentEncode(codePoints[i], userinfoPercentEncodeSet); + } + }), + // `URL.prototype.password` accessors pair + // https://url.spec.whatwg.org/#dom-url-password + password: accessorDescriptor(getPassword, function(password) { + var url = getInternalURLState(this); + var codePoints = arrayFrom(String(password)); + if (cannotHaveUsernamePasswordPort(url)) return; + url.password = ''; + for (var i = 0; i < codePoints.length; i++) { + url.password += percentEncode(codePoints[i], userinfoPercentEncodeSet); + } + }), + // `URL.prototype.host` accessors pair + // https://url.spec.whatwg.org/#dom-url-host + host: accessorDescriptor(getHost, function(host) { + var url = getInternalURLState(this); + if (url.cannotBeABaseURL) return; + parseURL(url, String(host), HOST); + }), + // `URL.prototype.hostname` accessors pair + // https://url.spec.whatwg.org/#dom-url-hostname + hostname: accessorDescriptor(getHostname, function(hostname) { + var url = getInternalURLState(this); + if (url.cannotBeABaseURL) return; + parseURL(url, String(hostname), HOSTNAME); + }), + // `URL.prototype.port` accessors pair + // https://url.spec.whatwg.org/#dom-url-port + port: accessorDescriptor(getPort, function(port) { + var url = getInternalURLState(this); + if (cannotHaveUsernamePasswordPort(url)) return; + port = String(port); + if (port == '') url.port = null; + else parseURL(url, port, PORT); + }), + // `URL.prototype.pathname` accessors pair + // https://url.spec.whatwg.org/#dom-url-pathname + pathname: accessorDescriptor(getPathname, function(pathname) { + var url = getInternalURLState(this); + if (url.cannotBeABaseURL) return; + url.path = []; + parseURL(url, pathname + '', PATH_START); + }), + // `URL.prototype.search` accessors pair + // https://url.spec.whatwg.org/#dom-url-search + search: accessorDescriptor(getSearch, function(search) { + var url = getInternalURLState(this); + search = String(search); + if (search == '') { + url.query = null; + } else { + if ('?' == search.charAt(0)) search = search.slice(1); + url.query = ''; + parseURL(url, search, QUERY); + } + getInternalSearchParamsState(url.searchParams).updateSearchParams(url.query); + }), + // `URL.prototype.searchParams` getter + // https://url.spec.whatwg.org/#dom-url-searchparams + searchParams: accessorDescriptor(getSearchParams), + // `URL.prototype.hash` accessors pair + // https://url.spec.whatwg.org/#dom-url-hash + hash: accessorDescriptor(getHash, function(hash) { + var url = getInternalURLState(this); + hash = String(hash); + if (hash == '') { + url.fragment = null; + return; + } + if ('#' == hash.charAt(0)) hash = hash.slice(1); + url.fragment = ''; + parseURL(url, hash, FRAGMENT); + }), + }); + } + + // `URL.prototype.toJSON` method + // https://url.spec.whatwg.org/#dom-url-tojson + redefine( + URLPrototype, + 'toJSON', + function toJSON() { + return serializeURL.call(this); + }, + { enumerable: true }, + ); + + // `URL.prototype.toString` method + // https://url.spec.whatwg.org/#URL-stringification-behavior + redefine( + URLPrototype, + 'toString', + function toString() { + return serializeURL.call(this); + }, + { enumerable: true }, + ); + + if (NativeURL) { + var nativeCreateObjectURL = NativeURL.createObjectURL; + var nativeRevokeObjectURL = NativeURL.revokeObjectURL; + // `URL.createObjectURL` method + // https://developer.mozilla.org/en-US/docs/Web/API/URL/createObjectURL + // eslint-disable-next-line no-unused-vars + if (nativeCreateObjectURL) + redefine(URLConstructor, 'createObjectURL', function createObjectURL(blob) { + return nativeCreateObjectURL.apply(NativeURL, arguments); + }); + // `URL.revokeObjectURL` method + // https://developer.mozilla.org/en-US/docs/Web/API/URL/revokeObjectURL + // eslint-disable-next-line no-unused-vars + if (nativeRevokeObjectURL) + redefine(URLConstructor, 'revokeObjectURL', function revokeObjectURL(url) { + return nativeRevokeObjectURL.apply(NativeURL, arguments); + }); + } + + setToStringTag(URLConstructor, 'URL'); + + _export( + { global: true, forced: !nativeUrl, sham: !descriptors }, + { + URL: URLConstructor, + }, + ); + + function _toConsumableArray(arr) { + return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); + } + + function _arrayWithoutHoles(arr) { + if (Array.isArray(arr)) return _arrayLikeToArray(arr); + } + + function _iterableToArray(iter) { + if (typeof Symbol !== 'undefined' && Symbol.iterator in Object(iter)) return Array.from(iter); + } + + function _unsupportedIterableToArray(o, minLen) { + if (!o) return; + if (typeof o === 'string') return _arrayLikeToArray(o, minLen); + var n = Object.prototype.toString.call(o).slice(8, -1); + if (n === 'Object' && o.constructor) n = o.constructor.name; + if (n === 'Map' || n === 'Set') return Array.from(o); + if (n === 'Arguments' || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); + } + + function _arrayLikeToArray(arr, len) { + if (len == null || len > arr.length) len = arr.length; + + for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; + + return arr2; + } + + function _nonIterableSpread() { + throw new TypeError( + 'Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.', + ); + } + + var iframe = document.getElementById('iframe'); + var overview = document.getElementById('overview'); + var metaDescription = document.querySelector('meta[name="description"]'); + var urlParams = new URLSearchParams(window.location.search); + var pageId = urlParams.get('id'); + var title = document.getElementById('overview-title'); + var examples = [ + { + id: 'stations-around', + url: '/stations/', + title: 'Chargetrip API: Stations around example', + description: 'Query stations around a GeoJSON point with the Chargetrip API.', + }, + { + id: 'station-details', + url: '/station-info/', + title: 'Chargetrip API: Station example', + description: 'Query particular station with the Chargetrip API.', + }, + { + id: 'car-list', + url: '/car-list/', + title: 'Chargetrip API: Query the car list example', + description: 'Query the list of cars with Chargetrip API and lazy load the next set', + }, + { + id: 'car-details', + url: '/car/', + title: 'Chargetrip API: Query the car example', + description: 'Query the list of cars with Chargetrip API and compare the models', + }, + { + id: 'tile-server', + url: '/tile-server/', + title: 'Chargetrip API: Tile Service example using the mvt response', + description: + 'Show charging stations on the map with the Chargetrip API and the mvt response from Chargetrip Tile Service', + }, + { + id: 'tile-json', + url: '/tile-json/', + title: 'Chargetrip API: Tile Service example using the GeoJSON response', + description: + 'Show charging stations on the map with the Chargetrip API and the GeoJSON response from Chargetrip Tile Service', + }, + { + id: 'route', + url: '/route/', + title: 'Chargetrip API: Build a route example', + description: 'Example of how to request a route and show it on a map.', + }, + { + id: 'stations-along-route', + url: '/stations-along-route/', + title: 'Chargetrip API: Stations along route example', + description: 'Build a route with the Chargetrip API and display stations along the route.', + }, + { + id: 'alternative-routes', + url: '/alternative-routes/', + title: 'Chargetrip API: Alternative routes example', + description: 'Plot alternative routes between two locations.', + }, + { + id: 'preferred-operator', + url: '/preferred-operator/', + title: 'Chargetrip API: Preferred operators example', + description: 'Construct a route based on operator preference or operator exclusion.', + }, + { + id: 'elevation-plot', + url: '/elevation-plot/', + title: 'Chargetrip API: Elevation plot example', + description: 'Build a route with the Chargetrip API and show elevation data', + }, + { + id: 'state-of-charge', + url: '/state-of-charge/', + title: 'Chargetrip API: Impact of SoC changes example', + description: 'Update a route based on the state of charge at departure', + }, + { + id: 'battery-capacity', + url: '/battery-capacity/', + title: 'Chargetrip API: Impact of battery capacity changes example', + description: 'Update a route based on the battery capacity at departure', + }, + { + id: 'isolines', + url: '/isolines/', + title: 'Chargetrip API: Rendering the range of a vehicle on a map', + description: 'Use isolines to show how far an electric vehicle can travel from a specific origin', + }, + ]; + var page = examples.filter(function(value) { + return value.id === pageId; + })[0]; + + if (page) { + iframe.src = page.url; + document.title = page.title; + metaDescription.setAttribute('content', page.description); + } else { + iframe.style.display = 'none'; + overview.style.display = 'grid'; + title.style.display = 'block'; + document.title = 'Chargetrip API examples'; + metaDescription.setAttribute( + 'content', + 'Discover how to work with the Chargetrip API by exploring any of our examples.', + ); + } + + var isLoggedIn = function isLoggedIn() { + var _cookies$match; + + var signIn = document.getElementById('sign-in'); + var signUp = document.getElementById('sign-up'); + var cookies = document.cookie; + var accessToken = + (_cookies$match = cookies.match('(^|;)\\s*' + 'access_token' + '\\s*=\\s*([^;]+)')) === null || + _cookies$match === void 0 + ? void 0 + : _cookies$match.pop(); + if (accessToken === undefined) return; + signUp.remove(); + signIn.href = 'https://account.chargetrip.com/'; + _toConsumableArray(signIn.childNodes)[1].style.stroke = '#0078FF'; + _toConsumableArray(signIn.childNodes)[3].innerHTML = 'Account'; + }; + + isLoggedIn(); +})(); +//# sourceMappingURL=bundle.js.map diff --git a/public/bundle.js.map b/public/bundle.js.map new file mode 100644 index 0000000..85ed18f --- /dev/null +++ b/public/bundle.js.map @@ -0,0 +1 @@ +{"version":3,"file":"bundle.js","sources":["../node_modules/core-js/internals/global.js","../node_modules/core-js/internals/fails.js","../node_modules/core-js/internals/descriptors.js","../node_modules/core-js/internals/object-property-is-enumerable.js","../node_modules/core-js/internals/create-property-descriptor.js","../node_modules/core-js/internals/classof-raw.js","../node_modules/core-js/internals/indexed-object.js","../node_modules/core-js/internals/require-object-coercible.js","../node_modules/core-js/internals/to-indexed-object.js","../node_modules/core-js/internals/is-object.js","../node_modules/core-js/internals/to-primitive.js","../node_modules/core-js/internals/has.js","../node_modules/core-js/internals/document-create-element.js","../node_modules/core-js/internals/ie8-dom-define.js","../node_modules/core-js/internals/object-get-own-property-descriptor.js","../node_modules/core-js/internals/an-object.js","../node_modules/core-js/internals/object-define-property.js","../node_modules/core-js/internals/create-non-enumerable-property.js","../node_modules/core-js/internals/set-global.js","../node_modules/core-js/internals/shared-store.js","../node_modules/core-js/internals/inspect-source.js","../node_modules/core-js/internals/native-weak-map.js","../node_modules/core-js/internals/is-pure.js","../node_modules/core-js/internals/shared.js","../node_modules/core-js/internals/uid.js","../node_modules/core-js/internals/shared-key.js","../node_modules/core-js/internals/hidden-keys.js","../node_modules/core-js/internals/internal-state.js","../node_modules/core-js/internals/redefine.js","../node_modules/core-js/internals/path.js","../node_modules/core-js/internals/get-built-in.js","../node_modules/core-js/internals/to-integer.js","../node_modules/core-js/internals/to-length.js","../node_modules/core-js/internals/to-absolute-index.js","../node_modules/core-js/internals/array-includes.js","../node_modules/core-js/internals/object-keys-internal.js","../node_modules/core-js/internals/enum-bug-keys.js","../node_modules/core-js/internals/object-get-own-property-names.js","../node_modules/core-js/internals/object-get-own-property-symbols.js","../node_modules/core-js/internals/own-keys.js","../node_modules/core-js/internals/copy-constructor-properties.js","../node_modules/core-js/internals/is-forced.js","../node_modules/core-js/internals/export.js","../node_modules/core-js/internals/native-symbol.js","../node_modules/core-js/internals/use-symbol-as-uid.js","../node_modules/core-js/internals/is-array.js","../node_modules/core-js/internals/to-object.js","../node_modules/core-js/internals/object-keys.js","../node_modules/core-js/internals/object-define-properties.js","../node_modules/core-js/internals/html.js","../node_modules/core-js/internals/object-create.js","../node_modules/core-js/internals/object-get-own-property-names-external.js","../node_modules/core-js/internals/well-known-symbol.js","../node_modules/core-js/internals/well-known-symbol-wrapped.js","../node_modules/core-js/internals/define-well-known-symbol.js","../node_modules/core-js/internals/set-to-string-tag.js","../node_modules/core-js/internals/a-function.js","../node_modules/core-js/internals/function-bind-context.js","../node_modules/core-js/internals/array-species-create.js","../node_modules/core-js/internals/array-iteration.js","../node_modules/core-js/modules/es.symbol.js","../node_modules/core-js/modules/es.symbol.description.js","../node_modules/core-js/internals/engine-user-agent.js","../node_modules/core-js/internals/engine-v8-version.js","../node_modules/core-js/internals/array-method-has-species-support.js","../node_modules/core-js/internals/array-method-uses-to-length.js","../node_modules/core-js/modules/es.array.filter.js","../node_modules/core-js/internals/add-to-unscopables.js","../node_modules/core-js/internals/iterators.js","../node_modules/core-js/internals/correct-prototype-getter.js","../node_modules/core-js/internals/object-get-prototype-of.js","../node_modules/core-js/internals/iterators-core.js","../node_modules/core-js/internals/create-iterator-constructor.js","../node_modules/core-js/internals/a-possible-prototype.js","../node_modules/core-js/internals/object-set-prototype-of.js","../node_modules/core-js/internals/define-iterator.js","../node_modules/core-js/modules/es.array.iterator.js","../node_modules/core-js/internals/to-string-tag-support.js","../node_modules/core-js/internals/classof.js","../node_modules/core-js/internals/object-to-string.js","../node_modules/core-js/modules/es.object.to-string.js","../node_modules/core-js/internals/regexp-flags.js","../node_modules/core-js/internals/regexp-sticky-helpers.js","../node_modules/core-js/internals/regexp-exec.js","../node_modules/core-js/modules/es.regexp.exec.js","../node_modules/core-js/internals/string-multibyte.js","../node_modules/core-js/modules/es.string.iterator.js","../node_modules/core-js/internals/fix-regexp-well-known-symbol-logic.js","../node_modules/core-js/internals/advance-string-index.js","../node_modules/core-js/internals/regexp-exec-abstract.js","../node_modules/core-js/modules/es.string.match.js","../node_modules/core-js/internals/same-value.js","../node_modules/core-js/modules/es.string.search.js","../node_modules/core-js/internals/dom-iterables.js","../node_modules/core-js/modules/web.dom-collections.iterator.js","../node_modules/core-js/internals/native-url.js","../node_modules/core-js/internals/an-instance.js","../node_modules/core-js/internals/object-assign.js","../node_modules/core-js/internals/call-with-safe-iteration-closing.js","../node_modules/core-js/internals/is-array-iterator-method.js","../node_modules/core-js/internals/create-property.js","../node_modules/core-js/internals/get-iterator-method.js","../node_modules/core-js/internals/array-from.js","../node_modules/core-js/internals/string-punycode-to-ascii.js","../node_modules/core-js/internals/redefine-all.js","../node_modules/core-js/internals/get-iterator.js","../node_modules/core-js/modules/web.url-search-params.js","../node_modules/core-js/modules/web.url.js","../navigation/index.js"],"sourcesContent":["var check = function (it) {\n return it && it.Math == Math && it;\n};\n\n// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nmodule.exports =\n // eslint-disable-next-line no-undef\n check(typeof globalThis == 'object' && globalThis) ||\n check(typeof window == 'object' && window) ||\n check(typeof self == 'object' && self) ||\n check(typeof global == 'object' && global) ||\n // eslint-disable-next-line no-new-func\n Function('return this')();\n","module.exports = function (exec) {\n try {\n return !!exec();\n } catch (error) {\n return true;\n }\n};\n","var fails = require('../internals/fails');\n\n// Thank's IE8 for his funny defineProperty\nmodule.exports = !fails(function () {\n return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] != 7;\n});\n","'use strict';\nvar nativePropertyIsEnumerable = {}.propertyIsEnumerable;\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// Nashorn ~ JDK8 bug\nvar NASHORN_BUG = getOwnPropertyDescriptor && !nativePropertyIsEnumerable.call({ 1: 2 }, 1);\n\n// `Object.prototype.propertyIsEnumerable` method implementation\n// https://tc39.github.io/ecma262/#sec-object.prototype.propertyisenumerable\nexports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {\n var descriptor = getOwnPropertyDescriptor(this, V);\n return !!descriptor && descriptor.enumerable;\n} : nativePropertyIsEnumerable;\n","module.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n","var toString = {}.toString;\n\nmodule.exports = function (it) {\n return toString.call(it).slice(8, -1);\n};\n","var fails = require('../internals/fails');\nvar classof = require('../internals/classof-raw');\n\nvar split = ''.split;\n\n// fallback for non-array-like ES3 and non-enumerable old V8 strings\nmodule.exports = fails(function () {\n // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346\n // eslint-disable-next-line no-prototype-builtins\n return !Object('z').propertyIsEnumerable(0);\n}) ? function (it) {\n return classof(it) == 'String' ? split.call(it, '') : Object(it);\n} : Object;\n","// `RequireObjectCoercible` abstract operation\n// https://tc39.github.io/ecma262/#sec-requireobjectcoercible\nmodule.exports = function (it) {\n if (it == undefined) throw TypeError(\"Can't call method on \" + it);\n return it;\n};\n","// toObject with fallback for non-array-like ES3 strings\nvar IndexedObject = require('../internals/indexed-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nmodule.exports = function (it) {\n return IndexedObject(requireObjectCoercible(it));\n};\n","module.exports = function (it) {\n return typeof it === 'object' ? it !== null : typeof it === 'function';\n};\n","var isObject = require('../internals/is-object');\n\n// `ToPrimitive` abstract operation\n// https://tc39.github.io/ecma262/#sec-toprimitive\n// instead of the ES6 spec version, we didn't implement @@toPrimitive case\n// and the second argument - flag - preferred type is a string\nmodule.exports = function (input, PREFERRED_STRING) {\n if (!isObject(input)) return input;\n var fn, val;\n if (PREFERRED_STRING && typeof (fn = input.toString) == 'function' && !isObject(val = fn.call(input))) return val;\n if (typeof (fn = input.valueOf) == 'function' && !isObject(val = fn.call(input))) return val;\n if (!PREFERRED_STRING && typeof (fn = input.toString) == 'function' && !isObject(val = fn.call(input))) return val;\n throw TypeError(\"Can't convert object to primitive value\");\n};\n","var hasOwnProperty = {}.hasOwnProperty;\n\nmodule.exports = function (it, key) {\n return hasOwnProperty.call(it, key);\n};\n","var global = require('../internals/global');\nvar isObject = require('../internals/is-object');\n\nvar document = global.document;\n// typeof document.createElement is 'object' in old IE\nvar EXISTS = isObject(document) && isObject(document.createElement);\n\nmodule.exports = function (it) {\n return EXISTS ? document.createElement(it) : {};\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar createElement = require('../internals/document-create-element');\n\n// Thank's IE8 for his funny defineProperty\nmodule.exports = !DESCRIPTORS && !fails(function () {\n return Object.defineProperty(createElement('div'), 'a', {\n get: function () { return 7; }\n }).a != 7;\n});\n","var DESCRIPTORS = require('../internals/descriptors');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPrimitive = require('../internals/to-primitive');\nvar has = require('../internals/has');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\n\nvar nativeGetOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// `Object.getOwnPropertyDescriptor` method\n// https://tc39.github.io/ecma262/#sec-object.getownpropertydescriptor\nexports.f = DESCRIPTORS ? nativeGetOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {\n O = toIndexedObject(O);\n P = toPrimitive(P, true);\n if (IE8_DOM_DEFINE) try {\n return nativeGetOwnPropertyDescriptor(O, P);\n } catch (error) { /* empty */ }\n if (has(O, P)) return createPropertyDescriptor(!propertyIsEnumerableModule.f.call(O, P), O[P]);\n};\n","var isObject = require('../internals/is-object');\n\nmodule.exports = function (it) {\n if (!isObject(it)) {\n throw TypeError(String(it) + ' is not an object');\n } return it;\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\nvar anObject = require('../internals/an-object');\nvar toPrimitive = require('../internals/to-primitive');\n\nvar nativeDefineProperty = Object.defineProperty;\n\n// `Object.defineProperty` method\n// https://tc39.github.io/ecma262/#sec-object.defineproperty\nexports.f = DESCRIPTORS ? nativeDefineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPrimitive(P, true);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return nativeDefineProperty(O, P, Attributes);\n } catch (error) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = DESCRIPTORS ? function (object, key, value) {\n return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n","var global = require('../internals/global');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\n\nmodule.exports = function (key, value) {\n try {\n createNonEnumerableProperty(global, key, value);\n } catch (error) {\n global[key] = value;\n } return value;\n};\n","var global = require('../internals/global');\nvar setGlobal = require('../internals/set-global');\n\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || setGlobal(SHARED, {});\n\nmodule.exports = store;\n","var store = require('../internals/shared-store');\n\nvar functionToString = Function.toString;\n\n// this helper broken in `3.4.1-3.4.4`, so we can't use `shared` helper\nif (typeof store.inspectSource != 'function') {\n store.inspectSource = function (it) {\n return functionToString.call(it);\n };\n}\n\nmodule.exports = store.inspectSource;\n","var global = require('../internals/global');\nvar inspectSource = require('../internals/inspect-source');\n\nvar WeakMap = global.WeakMap;\n\nmodule.exports = typeof WeakMap === 'function' && /native code/.test(inspectSource(WeakMap));\n","module.exports = false;\n","var IS_PURE = require('../internals/is-pure');\nvar store = require('../internals/shared-store');\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: '3.6.5',\n mode: IS_PURE ? 'pure' : 'global',\n copyright: '© 2020 Denis Pushkarev (zloirock.ru)'\n});\n","var id = 0;\nvar postfix = Math.random();\n\nmodule.exports = function (key) {\n return 'Symbol(' + String(key === undefined ? '' : key) + ')_' + (++id + postfix).toString(36);\n};\n","var shared = require('../internals/shared');\nvar uid = require('../internals/uid');\n\nvar keys = shared('keys');\n\nmodule.exports = function (key) {\n return keys[key] || (keys[key] = uid(key));\n};\n","module.exports = {};\n","var NATIVE_WEAK_MAP = require('../internals/native-weak-map');\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar objectHas = require('../internals/has');\nvar sharedKey = require('../internals/shared-key');\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar WeakMap = global.WeakMap;\nvar set, get, has;\n\nvar enforce = function (it) {\n return has(it) ? get(it) : set(it, {});\n};\n\nvar getterFor = function (TYPE) {\n return function (it) {\n var state;\n if (!isObject(it) || (state = get(it)).type !== TYPE) {\n throw TypeError('Incompatible receiver, ' + TYPE + ' required');\n } return state;\n };\n};\n\nif (NATIVE_WEAK_MAP) {\n var store = new WeakMap();\n var wmget = store.get;\n var wmhas = store.has;\n var wmset = store.set;\n set = function (it, metadata) {\n wmset.call(store, it, metadata);\n return metadata;\n };\n get = function (it) {\n return wmget.call(store, it) || {};\n };\n has = function (it) {\n return wmhas.call(store, it);\n };\n} else {\n var STATE = sharedKey('state');\n hiddenKeys[STATE] = true;\n set = function (it, metadata) {\n createNonEnumerableProperty(it, STATE, metadata);\n return metadata;\n };\n get = function (it) {\n return objectHas(it, STATE) ? it[STATE] : {};\n };\n has = function (it) {\n return objectHas(it, STATE);\n };\n}\n\nmodule.exports = {\n set: set,\n get: get,\n has: has,\n enforce: enforce,\n getterFor: getterFor\n};\n","var global = require('../internals/global');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar has = require('../internals/has');\nvar setGlobal = require('../internals/set-global');\nvar inspectSource = require('../internals/inspect-source');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar getInternalState = InternalStateModule.get;\nvar enforceInternalState = InternalStateModule.enforce;\nvar TEMPLATE = String(String).split('String');\n\n(module.exports = function (O, key, value, options) {\n var unsafe = options ? !!options.unsafe : false;\n var simple = options ? !!options.enumerable : false;\n var noTargetGet = options ? !!options.noTargetGet : false;\n if (typeof value == 'function') {\n if (typeof key == 'string' && !has(value, 'name')) createNonEnumerableProperty(value, 'name', key);\n enforceInternalState(value).source = TEMPLATE.join(typeof key == 'string' ? key : '');\n }\n if (O === global) {\n if (simple) O[key] = value;\n else setGlobal(key, value);\n return;\n } else if (!unsafe) {\n delete O[key];\n } else if (!noTargetGet && O[key]) {\n simple = true;\n }\n if (simple) O[key] = value;\n else createNonEnumerableProperty(O, key, value);\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n})(Function.prototype, 'toString', function toString() {\n return typeof this == 'function' && getInternalState(this).source || inspectSource(this);\n});\n","var global = require('../internals/global');\n\nmodule.exports = global;\n","var path = require('../internals/path');\nvar global = require('../internals/global');\n\nvar aFunction = function (variable) {\n return typeof variable == 'function' ? variable : undefined;\n};\n\nmodule.exports = function (namespace, method) {\n return arguments.length < 2 ? aFunction(path[namespace]) || aFunction(global[namespace])\n : path[namespace] && path[namespace][method] || global[namespace] && global[namespace][method];\n};\n","var ceil = Math.ceil;\nvar floor = Math.floor;\n\n// `ToInteger` abstract operation\n// https://tc39.github.io/ecma262/#sec-tointeger\nmodule.exports = function (argument) {\n return isNaN(argument = +argument) ? 0 : (argument > 0 ? floor : ceil)(argument);\n};\n","var toInteger = require('../internals/to-integer');\n\nvar min = Math.min;\n\n// `ToLength` abstract operation\n// https://tc39.github.io/ecma262/#sec-tolength\nmodule.exports = function (argument) {\n return argument > 0 ? min(toInteger(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991\n};\n","var toInteger = require('../internals/to-integer');\n\nvar max = Math.max;\nvar min = Math.min;\n\n// Helper for a popular repeating case of the spec:\n// Let integer be ? ToInteger(index).\n// If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).\nmodule.exports = function (index, length) {\n var integer = toInteger(index);\n return integer < 0 ? max(integer + length, 0) : min(integer, length);\n};\n","var toIndexedObject = require('../internals/to-indexed-object');\nvar toLength = require('../internals/to-length');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\n\n// `Array.prototype.{ indexOf, includes }` methods implementation\nvar createMethod = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIndexedObject($this);\n var length = toLength(O.length);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare\n if (IS_INCLUDES && el != el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare\n if (value != value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) {\n if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.includes` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.includes\n includes: createMethod(true),\n // `Array.prototype.indexOf` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.indexof\n indexOf: createMethod(false)\n};\n","var has = require('../internals/has');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar indexOf = require('../internals/array-includes').indexOf;\nvar hiddenKeys = require('../internals/hidden-keys');\n\nmodule.exports = function (object, names) {\n var O = toIndexedObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) !has(hiddenKeys, key) && has(O, key) && result.push(key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (has(O, key = names[i++])) {\n ~indexOf(result, key) || result.push(key);\n }\n return result;\n};\n","// IE8- don't enum bug keys\nmodule.exports = [\n 'constructor',\n 'hasOwnProperty',\n 'isPrototypeOf',\n 'propertyIsEnumerable',\n 'toLocaleString',\n 'toString',\n 'valueOf'\n];\n","var internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\nvar hiddenKeys = enumBugKeys.concat('length', 'prototype');\n\n// `Object.getOwnPropertyNames` method\n// https://tc39.github.io/ecma262/#sec-object.getownpropertynames\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return internalObjectKeys(O, hiddenKeys);\n};\n","exports.f = Object.getOwnPropertySymbols;\n","var getBuiltIn = require('../internals/get-built-in');\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar anObject = require('../internals/an-object');\n\n// all object keys, includes non-enumerable and symbols\nmodule.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {\n var keys = getOwnPropertyNamesModule.f(anObject(it));\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n return getOwnPropertySymbols ? keys.concat(getOwnPropertySymbols(it)) : keys;\n};\n","var has = require('../internals/has');\nvar ownKeys = require('../internals/own-keys');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar definePropertyModule = require('../internals/object-define-property');\n\nmodule.exports = function (target, source) {\n var keys = ownKeys(source);\n var defineProperty = definePropertyModule.f;\n var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n if (!has(target, key)) defineProperty(target, key, getOwnPropertyDescriptor(source, key));\n }\n};\n","var fails = require('../internals/fails');\n\nvar replacement = /#|\\.prototype\\./;\n\nvar isForced = function (feature, detection) {\n var value = data[normalize(feature)];\n return value == POLYFILL ? true\n : value == NATIVE ? false\n : typeof detection == 'function' ? fails(detection)\n : !!detection;\n};\n\nvar normalize = isForced.normalize = function (string) {\n return String(string).replace(replacement, '.').toLowerCase();\n};\n\nvar data = isForced.data = {};\nvar NATIVE = isForced.NATIVE = 'N';\nvar POLYFILL = isForced.POLYFILL = 'P';\n\nmodule.exports = isForced;\n","var global = require('../internals/global');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar redefine = require('../internals/redefine');\nvar setGlobal = require('../internals/set-global');\nvar copyConstructorProperties = require('../internals/copy-constructor-properties');\nvar isForced = require('../internals/is-forced');\n\n/*\n options.target - name of the target object\n options.global - target is the global object\n options.stat - export as static methods of target\n options.proto - export as prototype methods of target\n options.real - real prototype method for the `pure` version\n options.forced - export even if the native feature is available\n options.bind - bind methods to the target, required for the `pure` version\n options.wrap - wrap constructors to preventing global pollution, required for the `pure` version\n options.unsafe - use the simple assignment of property instead of delete + defineProperty\n options.sham - add a flag to not completely full polyfills\n options.enumerable - export as enumerable property\n options.noTargetGet - prevent calling a getter on target\n*/\nmodule.exports = function (options, source) {\n var TARGET = options.target;\n var GLOBAL = options.global;\n var STATIC = options.stat;\n var FORCED, target, key, targetProperty, sourceProperty, descriptor;\n if (GLOBAL) {\n target = global;\n } else if (STATIC) {\n target = global[TARGET] || setGlobal(TARGET, {});\n } else {\n target = (global[TARGET] || {}).prototype;\n }\n if (target) for (key in source) {\n sourceProperty = source[key];\n if (options.noTargetGet) {\n descriptor = getOwnPropertyDescriptor(target, key);\n targetProperty = descriptor && descriptor.value;\n } else targetProperty = target[key];\n FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);\n // contained in target\n if (!FORCED && targetProperty !== undefined) {\n if (typeof sourceProperty === typeof targetProperty) continue;\n copyConstructorProperties(sourceProperty, targetProperty);\n }\n // add a flag to not completely full polyfills\n if (options.sham || (targetProperty && targetProperty.sham)) {\n createNonEnumerableProperty(sourceProperty, 'sham', true);\n }\n // extend global\n redefine(target, key, sourceProperty, options);\n }\n};\n","var fails = require('../internals/fails');\n\nmodule.exports = !!Object.getOwnPropertySymbols && !fails(function () {\n // Chrome 38 Symbol has incorrect toString conversion\n // eslint-disable-next-line no-undef\n return !String(Symbol());\n});\n","var NATIVE_SYMBOL = require('../internals/native-symbol');\n\nmodule.exports = NATIVE_SYMBOL\n // eslint-disable-next-line no-undef\n && !Symbol.sham\n // eslint-disable-next-line no-undef\n && typeof Symbol.iterator == 'symbol';\n","var classof = require('../internals/classof-raw');\n\n// `IsArray` abstract operation\n// https://tc39.github.io/ecma262/#sec-isarray\nmodule.exports = Array.isArray || function isArray(arg) {\n return classof(arg) == 'Array';\n};\n","var requireObjectCoercible = require('../internals/require-object-coercible');\n\n// `ToObject` abstract operation\n// https://tc39.github.io/ecma262/#sec-toobject\nmodule.exports = function (argument) {\n return Object(requireObjectCoercible(argument));\n};\n","var internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\n// `Object.keys` method\n// https://tc39.github.io/ecma262/#sec-object.keys\nmodule.exports = Object.keys || function keys(O) {\n return internalObjectKeys(O, enumBugKeys);\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar definePropertyModule = require('../internals/object-define-property');\nvar anObject = require('../internals/an-object');\nvar objectKeys = require('../internals/object-keys');\n\n// `Object.defineProperties` method\n// https://tc39.github.io/ecma262/#sec-object.defineproperties\nmodule.exports = DESCRIPTORS ? Object.defineProperties : function defineProperties(O, Properties) {\n anObject(O);\n var keys = objectKeys(Properties);\n var length = keys.length;\n var index = 0;\n var key;\n while (length > index) definePropertyModule.f(O, key = keys[index++], Properties[key]);\n return O;\n};\n","var getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('document', 'documentElement');\n","var anObject = require('../internals/an-object');\nvar defineProperties = require('../internals/object-define-properties');\nvar enumBugKeys = require('../internals/enum-bug-keys');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar html = require('../internals/html');\nvar documentCreateElement = require('../internals/document-create-element');\nvar sharedKey = require('../internals/shared-key');\n\nvar GT = '>';\nvar LT = '<';\nvar PROTOTYPE = 'prototype';\nvar SCRIPT = 'script';\nvar IE_PROTO = sharedKey('IE_PROTO');\n\nvar EmptyConstructor = function () { /* empty */ };\n\nvar scriptTag = function (content) {\n return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT;\n};\n\n// Create object with fake `null` prototype: use ActiveX Object with cleared prototype\nvar NullProtoObjectViaActiveX = function (activeXDocument) {\n activeXDocument.write(scriptTag(''));\n activeXDocument.close();\n var temp = activeXDocument.parentWindow.Object;\n activeXDocument = null; // avoid memory leak\n return temp;\n};\n\n// Create object with fake `null` prototype: use iframe Object with cleared prototype\nvar NullProtoObjectViaIFrame = function () {\n // Thrash, waste and sodomy: IE GC bug\n var iframe = documentCreateElement('iframe');\n var JS = 'java' + SCRIPT + ':';\n var iframeDocument;\n iframe.style.display = 'none';\n html.appendChild(iframe);\n // https://github.com/zloirock/core-js/issues/475\n iframe.src = String(JS);\n iframeDocument = iframe.contentWindow.document;\n iframeDocument.open();\n iframeDocument.write(scriptTag('document.F=Object'));\n iframeDocument.close();\n return iframeDocument.F;\n};\n\n// Check for document.domain and active x support\n// No need to use active x approach when document.domain is not set\n// see https://github.com/es-shims/es5-shim/issues/150\n// variation of https://github.com/kitcambridge/es5-shim/commit/4f738ac066346\n// avoid IE GC bug\nvar activeXDocument;\nvar NullProtoObject = function () {\n try {\n /* global ActiveXObject */\n activeXDocument = document.domain && new ActiveXObject('htmlfile');\n } catch (error) { /* ignore */ }\n NullProtoObject = activeXDocument ? NullProtoObjectViaActiveX(activeXDocument) : NullProtoObjectViaIFrame();\n var length = enumBugKeys.length;\n while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys[length]];\n return NullProtoObject();\n};\n\nhiddenKeys[IE_PROTO] = true;\n\n// `Object.create` method\n// https://tc39.github.io/ecma262/#sec-object.create\nmodule.exports = Object.create || function create(O, Properties) {\n var result;\n if (O !== null) {\n EmptyConstructor[PROTOTYPE] = anObject(O);\n result = new EmptyConstructor();\n EmptyConstructor[PROTOTYPE] = null;\n // add \"__proto__\" for Object.getPrototypeOf polyfill\n result[IE_PROTO] = O;\n } else result = NullProtoObject();\n return Properties === undefined ? result : defineProperties(result, Properties);\n};\n","var toIndexedObject = require('../internals/to-indexed-object');\nvar nativeGetOwnPropertyNames = require('../internals/object-get-own-property-names').f;\n\nvar toString = {}.toString;\n\nvar windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames\n ? Object.getOwnPropertyNames(window) : [];\n\nvar getWindowNames = function (it) {\n try {\n return nativeGetOwnPropertyNames(it);\n } catch (error) {\n return windowNames.slice();\n }\n};\n\n// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window\nmodule.exports.f = function getOwnPropertyNames(it) {\n return windowNames && toString.call(it) == '[object Window]'\n ? getWindowNames(it)\n : nativeGetOwnPropertyNames(toIndexedObject(it));\n};\n","var global = require('../internals/global');\nvar shared = require('../internals/shared');\nvar has = require('../internals/has');\nvar uid = require('../internals/uid');\nvar NATIVE_SYMBOL = require('../internals/native-symbol');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar WellKnownSymbolsStore = shared('wks');\nvar Symbol = global.Symbol;\nvar createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol : Symbol && Symbol.withoutSetter || uid;\n\nmodule.exports = function (name) {\n if (!has(WellKnownSymbolsStore, name)) {\n if (NATIVE_SYMBOL && has(Symbol, name)) WellKnownSymbolsStore[name] = Symbol[name];\n else WellKnownSymbolsStore[name] = createWellKnownSymbol('Symbol.' + name);\n } return WellKnownSymbolsStore[name];\n};\n","var wellKnownSymbol = require('../internals/well-known-symbol');\n\nexports.f = wellKnownSymbol;\n","var path = require('../internals/path');\nvar has = require('../internals/has');\nvar wrappedWellKnownSymbolModule = require('../internals/well-known-symbol-wrapped');\nvar defineProperty = require('../internals/object-define-property').f;\n\nmodule.exports = function (NAME) {\n var Symbol = path.Symbol || (path.Symbol = {});\n if (!has(Symbol, NAME)) defineProperty(Symbol, NAME, {\n value: wrappedWellKnownSymbolModule.f(NAME)\n });\n};\n","var defineProperty = require('../internals/object-define-property').f;\nvar has = require('../internals/has');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\n\nmodule.exports = function (it, TAG, STATIC) {\n if (it && !has(it = STATIC ? it : it.prototype, TO_STRING_TAG)) {\n defineProperty(it, TO_STRING_TAG, { configurable: true, value: TAG });\n }\n};\n","module.exports = function (it) {\n if (typeof it != 'function') {\n throw TypeError(String(it) + ' is not a function');\n } return it;\n};\n","var aFunction = require('../internals/a-function');\n\n// optional / simple context binding\nmodule.exports = function (fn, that, length) {\n aFunction(fn);\n if (that === undefined) return fn;\n switch (length) {\n case 0: return function () {\n return fn.call(that);\n };\n case 1: return function (a) {\n return fn.call(that, a);\n };\n case 2: return function (a, b) {\n return fn.call(that, a, b);\n };\n case 3: return function (a, b, c) {\n return fn.call(that, a, b, c);\n };\n }\n return function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n","var isObject = require('../internals/is-object');\nvar isArray = require('../internals/is-array');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\n\n// `ArraySpeciesCreate` abstract operation\n// https://tc39.github.io/ecma262/#sec-arrayspeciescreate\nmodule.exports = function (originalArray, length) {\n var C;\n if (isArray(originalArray)) {\n C = originalArray.constructor;\n // cross-realm fallback\n if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined;\n else if (isObject(C)) {\n C = C[SPECIES];\n if (C === null) C = undefined;\n }\n } return new (C === undefined ? Array : C)(length === 0 ? 0 : length);\n};\n","var bind = require('../internals/function-bind-context');\nvar IndexedObject = require('../internals/indexed-object');\nvar toObject = require('../internals/to-object');\nvar toLength = require('../internals/to-length');\nvar arraySpeciesCreate = require('../internals/array-species-create');\n\nvar push = [].push;\n\n// `Array.prototype.{ forEach, map, filter, some, every, find, findIndex }` methods implementation\nvar createMethod = function (TYPE) {\n var IS_MAP = TYPE == 1;\n var IS_FILTER = TYPE == 2;\n var IS_SOME = TYPE == 3;\n var IS_EVERY = TYPE == 4;\n var IS_FIND_INDEX = TYPE == 6;\n var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;\n return function ($this, callbackfn, that, specificCreate) {\n var O = toObject($this);\n var self = IndexedObject(O);\n var boundFunction = bind(callbackfn, that, 3);\n var length = toLength(self.length);\n var index = 0;\n var create = specificCreate || arraySpeciesCreate;\n var target = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined;\n var value, result;\n for (;length > index; index++) if (NO_HOLES || index in self) {\n value = self[index];\n result = boundFunction(value, index, O);\n if (TYPE) {\n if (IS_MAP) target[index] = result; // map\n else if (result) switch (TYPE) {\n case 3: return true; // some\n case 5: return value; // find\n case 6: return index; // findIndex\n case 2: push.call(target, value); // filter\n } else if (IS_EVERY) return false; // every\n }\n }\n return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : target;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.forEach` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.foreach\n forEach: createMethod(0),\n // `Array.prototype.map` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.map\n map: createMethod(1),\n // `Array.prototype.filter` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.filter\n filter: createMethod(2),\n // `Array.prototype.some` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.some\n some: createMethod(3),\n // `Array.prototype.every` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.every\n every: createMethod(4),\n // `Array.prototype.find` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.find\n find: createMethod(5),\n // `Array.prototype.findIndex` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.findIndex\n findIndex: createMethod(6)\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar global = require('../internals/global');\nvar getBuiltIn = require('../internals/get-built-in');\nvar IS_PURE = require('../internals/is-pure');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar NATIVE_SYMBOL = require('../internals/native-symbol');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\nvar fails = require('../internals/fails');\nvar has = require('../internals/has');\nvar isArray = require('../internals/is-array');\nvar isObject = require('../internals/is-object');\nvar anObject = require('../internals/an-object');\nvar toObject = require('../internals/to-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPrimitive = require('../internals/to-primitive');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar nativeObjectCreate = require('../internals/object-create');\nvar objectKeys = require('../internals/object-keys');\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertyNamesExternal = require('../internals/object-get-own-property-names-external');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar definePropertyModule = require('../internals/object-define-property');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar redefine = require('../internals/redefine');\nvar shared = require('../internals/shared');\nvar sharedKey = require('../internals/shared-key');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar uid = require('../internals/uid');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar wrappedWellKnownSymbolModule = require('../internals/well-known-symbol-wrapped');\nvar defineWellKnownSymbol = require('../internals/define-well-known-symbol');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar InternalStateModule = require('../internals/internal-state');\nvar $forEach = require('../internals/array-iteration').forEach;\n\nvar HIDDEN = sharedKey('hidden');\nvar SYMBOL = 'Symbol';\nvar PROTOTYPE = 'prototype';\nvar TO_PRIMITIVE = wellKnownSymbol('toPrimitive');\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(SYMBOL);\nvar ObjectPrototype = Object[PROTOTYPE];\nvar $Symbol = global.Symbol;\nvar $stringify = getBuiltIn('JSON', 'stringify');\nvar nativeGetOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\nvar nativeDefineProperty = definePropertyModule.f;\nvar nativeGetOwnPropertyNames = getOwnPropertyNamesExternal.f;\nvar nativePropertyIsEnumerable = propertyIsEnumerableModule.f;\nvar AllSymbols = shared('symbols');\nvar ObjectPrototypeSymbols = shared('op-symbols');\nvar StringToSymbolRegistry = shared('string-to-symbol-registry');\nvar SymbolToStringRegistry = shared('symbol-to-string-registry');\nvar WellKnownSymbolsStore = shared('wks');\nvar QObject = global.QObject;\n// Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173\nvar USE_SETTER = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild;\n\n// fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687\nvar setSymbolDescriptor = DESCRIPTORS && fails(function () {\n return nativeObjectCreate(nativeDefineProperty({}, 'a', {\n get: function () { return nativeDefineProperty(this, 'a', { value: 7 }).a; }\n })).a != 7;\n}) ? function (O, P, Attributes) {\n var ObjectPrototypeDescriptor = nativeGetOwnPropertyDescriptor(ObjectPrototype, P);\n if (ObjectPrototypeDescriptor) delete ObjectPrototype[P];\n nativeDefineProperty(O, P, Attributes);\n if (ObjectPrototypeDescriptor && O !== ObjectPrototype) {\n nativeDefineProperty(ObjectPrototype, P, ObjectPrototypeDescriptor);\n }\n} : nativeDefineProperty;\n\nvar wrap = function (tag, description) {\n var symbol = AllSymbols[tag] = nativeObjectCreate($Symbol[PROTOTYPE]);\n setInternalState(symbol, {\n type: SYMBOL,\n tag: tag,\n description: description\n });\n if (!DESCRIPTORS) symbol.description = description;\n return symbol;\n};\n\nvar isSymbol = USE_SYMBOL_AS_UID ? function (it) {\n return typeof it == 'symbol';\n} : function (it) {\n return Object(it) instanceof $Symbol;\n};\n\nvar $defineProperty = function defineProperty(O, P, Attributes) {\n if (O === ObjectPrototype) $defineProperty(ObjectPrototypeSymbols, P, Attributes);\n anObject(O);\n var key = toPrimitive(P, true);\n anObject(Attributes);\n if (has(AllSymbols, key)) {\n if (!Attributes.enumerable) {\n if (!has(O, HIDDEN)) nativeDefineProperty(O, HIDDEN, createPropertyDescriptor(1, {}));\n O[HIDDEN][key] = true;\n } else {\n if (has(O, HIDDEN) && O[HIDDEN][key]) O[HIDDEN][key] = false;\n Attributes = nativeObjectCreate(Attributes, { enumerable: createPropertyDescriptor(0, false) });\n } return setSymbolDescriptor(O, key, Attributes);\n } return nativeDefineProperty(O, key, Attributes);\n};\n\nvar $defineProperties = function defineProperties(O, Properties) {\n anObject(O);\n var properties = toIndexedObject(Properties);\n var keys = objectKeys(properties).concat($getOwnPropertySymbols(properties));\n $forEach(keys, function (key) {\n if (!DESCRIPTORS || $propertyIsEnumerable.call(properties, key)) $defineProperty(O, key, properties[key]);\n });\n return O;\n};\n\nvar $create = function create(O, Properties) {\n return Properties === undefined ? nativeObjectCreate(O) : $defineProperties(nativeObjectCreate(O), Properties);\n};\n\nvar $propertyIsEnumerable = function propertyIsEnumerable(V) {\n var P = toPrimitive(V, true);\n var enumerable = nativePropertyIsEnumerable.call(this, P);\n if (this === ObjectPrototype && has(AllSymbols, P) && !has(ObjectPrototypeSymbols, P)) return false;\n return enumerable || !has(this, P) || !has(AllSymbols, P) || has(this, HIDDEN) && this[HIDDEN][P] ? enumerable : true;\n};\n\nvar $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(O, P) {\n var it = toIndexedObject(O);\n var key = toPrimitive(P, true);\n if (it === ObjectPrototype && has(AllSymbols, key) && !has(ObjectPrototypeSymbols, key)) return;\n var descriptor = nativeGetOwnPropertyDescriptor(it, key);\n if (descriptor && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key])) {\n descriptor.enumerable = true;\n }\n return descriptor;\n};\n\nvar $getOwnPropertyNames = function getOwnPropertyNames(O) {\n var names = nativeGetOwnPropertyNames(toIndexedObject(O));\n var result = [];\n $forEach(names, function (key) {\n if (!has(AllSymbols, key) && !has(hiddenKeys, key)) result.push(key);\n });\n return result;\n};\n\nvar $getOwnPropertySymbols = function getOwnPropertySymbols(O) {\n var IS_OBJECT_PROTOTYPE = O === ObjectPrototype;\n var names = nativeGetOwnPropertyNames(IS_OBJECT_PROTOTYPE ? ObjectPrototypeSymbols : toIndexedObject(O));\n var result = [];\n $forEach(names, function (key) {\n if (has(AllSymbols, key) && (!IS_OBJECT_PROTOTYPE || has(ObjectPrototype, key))) {\n result.push(AllSymbols[key]);\n }\n });\n return result;\n};\n\n// `Symbol` constructor\n// https://tc39.github.io/ecma262/#sec-symbol-constructor\nif (!NATIVE_SYMBOL) {\n $Symbol = function Symbol() {\n if (this instanceof $Symbol) throw TypeError('Symbol is not a constructor');\n var description = !arguments.length || arguments[0] === undefined ? undefined : String(arguments[0]);\n var tag = uid(description);\n var setter = function (value) {\n if (this === ObjectPrototype) setter.call(ObjectPrototypeSymbols, value);\n if (has(this, HIDDEN) && has(this[HIDDEN], tag)) this[HIDDEN][tag] = false;\n setSymbolDescriptor(this, tag, createPropertyDescriptor(1, value));\n };\n if (DESCRIPTORS && USE_SETTER) setSymbolDescriptor(ObjectPrototype, tag, { configurable: true, set: setter });\n return wrap(tag, description);\n };\n\n redefine($Symbol[PROTOTYPE], 'toString', function toString() {\n return getInternalState(this).tag;\n });\n\n redefine($Symbol, 'withoutSetter', function (description) {\n return wrap(uid(description), description);\n });\n\n propertyIsEnumerableModule.f = $propertyIsEnumerable;\n definePropertyModule.f = $defineProperty;\n getOwnPropertyDescriptorModule.f = $getOwnPropertyDescriptor;\n getOwnPropertyNamesModule.f = getOwnPropertyNamesExternal.f = $getOwnPropertyNames;\n getOwnPropertySymbolsModule.f = $getOwnPropertySymbols;\n\n wrappedWellKnownSymbolModule.f = function (name) {\n return wrap(wellKnownSymbol(name), name);\n };\n\n if (DESCRIPTORS) {\n // https://github.com/tc39/proposal-Symbol-description\n nativeDefineProperty($Symbol[PROTOTYPE], 'description', {\n configurable: true,\n get: function description() {\n return getInternalState(this).description;\n }\n });\n if (!IS_PURE) {\n redefine(ObjectPrototype, 'propertyIsEnumerable', $propertyIsEnumerable, { unsafe: true });\n }\n }\n}\n\n$({ global: true, wrap: true, forced: !NATIVE_SYMBOL, sham: !NATIVE_SYMBOL }, {\n Symbol: $Symbol\n});\n\n$forEach(objectKeys(WellKnownSymbolsStore), function (name) {\n defineWellKnownSymbol(name);\n});\n\n$({ target: SYMBOL, stat: true, forced: !NATIVE_SYMBOL }, {\n // `Symbol.for` method\n // https://tc39.github.io/ecma262/#sec-symbol.for\n 'for': function (key) {\n var string = String(key);\n if (has(StringToSymbolRegistry, string)) return StringToSymbolRegistry[string];\n var symbol = $Symbol(string);\n StringToSymbolRegistry[string] = symbol;\n SymbolToStringRegistry[symbol] = string;\n return symbol;\n },\n // `Symbol.keyFor` method\n // https://tc39.github.io/ecma262/#sec-symbol.keyfor\n keyFor: function keyFor(sym) {\n if (!isSymbol(sym)) throw TypeError(sym + ' is not a symbol');\n if (has(SymbolToStringRegistry, sym)) return SymbolToStringRegistry[sym];\n },\n useSetter: function () { USE_SETTER = true; },\n useSimple: function () { USE_SETTER = false; }\n});\n\n$({ target: 'Object', stat: true, forced: !NATIVE_SYMBOL, sham: !DESCRIPTORS }, {\n // `Object.create` method\n // https://tc39.github.io/ecma262/#sec-object.create\n create: $create,\n // `Object.defineProperty` method\n // https://tc39.github.io/ecma262/#sec-object.defineproperty\n defineProperty: $defineProperty,\n // `Object.defineProperties` method\n // https://tc39.github.io/ecma262/#sec-object.defineproperties\n defineProperties: $defineProperties,\n // `Object.getOwnPropertyDescriptor` method\n // https://tc39.github.io/ecma262/#sec-object.getownpropertydescriptors\n getOwnPropertyDescriptor: $getOwnPropertyDescriptor\n});\n\n$({ target: 'Object', stat: true, forced: !NATIVE_SYMBOL }, {\n // `Object.getOwnPropertyNames` method\n // https://tc39.github.io/ecma262/#sec-object.getownpropertynames\n getOwnPropertyNames: $getOwnPropertyNames,\n // `Object.getOwnPropertySymbols` method\n // https://tc39.github.io/ecma262/#sec-object.getownpropertysymbols\n getOwnPropertySymbols: $getOwnPropertySymbols\n});\n\n// Chrome 38 and 39 `Object.getOwnPropertySymbols` fails on primitives\n// https://bugs.chromium.org/p/v8/issues/detail?id=3443\n$({ target: 'Object', stat: true, forced: fails(function () { getOwnPropertySymbolsModule.f(1); }) }, {\n getOwnPropertySymbols: function getOwnPropertySymbols(it) {\n return getOwnPropertySymbolsModule.f(toObject(it));\n }\n});\n\n// `JSON.stringify` method behavior with symbols\n// https://tc39.github.io/ecma262/#sec-json.stringify\nif ($stringify) {\n var FORCED_JSON_STRINGIFY = !NATIVE_SYMBOL || fails(function () {\n var symbol = $Symbol();\n // MS Edge converts symbol values to JSON as {}\n return $stringify([symbol]) != '[null]'\n // WebKit converts symbol values to JSON as null\n || $stringify({ a: symbol }) != '{}'\n // V8 throws on boxed symbols\n || $stringify(Object(symbol)) != '{}';\n });\n\n $({ target: 'JSON', stat: true, forced: FORCED_JSON_STRINGIFY }, {\n // eslint-disable-next-line no-unused-vars\n stringify: function stringify(it, replacer, space) {\n var args = [it];\n var index = 1;\n var $replacer;\n while (arguments.length > index) args.push(arguments[index++]);\n $replacer = replacer;\n if (!isObject(replacer) && it === undefined || isSymbol(it)) return; // IE8 returns string on undefined\n if (!isArray(replacer)) replacer = function (key, value) {\n if (typeof $replacer == 'function') value = $replacer.call(this, key, value);\n if (!isSymbol(value)) return value;\n };\n args[1] = replacer;\n return $stringify.apply(null, args);\n }\n });\n}\n\n// `Symbol.prototype[@@toPrimitive]` method\n// https://tc39.github.io/ecma262/#sec-symbol.prototype-@@toprimitive\nif (!$Symbol[PROTOTYPE][TO_PRIMITIVE]) {\n createNonEnumerableProperty($Symbol[PROTOTYPE], TO_PRIMITIVE, $Symbol[PROTOTYPE].valueOf);\n}\n// `Symbol.prototype[@@toStringTag]` property\n// https://tc39.github.io/ecma262/#sec-symbol.prototype-@@tostringtag\nsetToStringTag($Symbol, SYMBOL);\n\nhiddenKeys[HIDDEN] = true;\n","// `Symbol.prototype.description` getter\n// https://tc39.github.io/ecma262/#sec-symbol.prototype.description\n'use strict';\nvar $ = require('../internals/export');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar global = require('../internals/global');\nvar has = require('../internals/has');\nvar isObject = require('../internals/is-object');\nvar defineProperty = require('../internals/object-define-property').f;\nvar copyConstructorProperties = require('../internals/copy-constructor-properties');\n\nvar NativeSymbol = global.Symbol;\n\nif (DESCRIPTORS && typeof NativeSymbol == 'function' && (!('description' in NativeSymbol.prototype) ||\n // Safari 12 bug\n NativeSymbol().description !== undefined\n)) {\n var EmptyStringDescriptionStore = {};\n // wrap Symbol constructor for correct work with undefined description\n var SymbolWrapper = function Symbol() {\n var description = arguments.length < 1 || arguments[0] === undefined ? undefined : String(arguments[0]);\n var result = this instanceof SymbolWrapper\n ? new NativeSymbol(description)\n // in Edge 13, String(Symbol(undefined)) === 'Symbol(undefined)'\n : description === undefined ? NativeSymbol() : NativeSymbol(description);\n if (description === '') EmptyStringDescriptionStore[result] = true;\n return result;\n };\n copyConstructorProperties(SymbolWrapper, NativeSymbol);\n var symbolPrototype = SymbolWrapper.prototype = NativeSymbol.prototype;\n symbolPrototype.constructor = SymbolWrapper;\n\n var symbolToString = symbolPrototype.toString;\n var native = String(NativeSymbol('test')) == 'Symbol(test)';\n var regexp = /^Symbol\\((.*)\\)[^)]+$/;\n defineProperty(symbolPrototype, 'description', {\n configurable: true,\n get: function description() {\n var symbol = isObject(this) ? this.valueOf() : this;\n var string = symbolToString.call(symbol);\n if (has(EmptyStringDescriptionStore, symbol)) return '';\n var desc = native ? string.slice(7, -1) : string.replace(regexp, '$1');\n return desc === '' ? undefined : desc;\n }\n });\n\n $({ global: true, forced: true }, {\n Symbol: SymbolWrapper\n });\n}\n","var getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('navigator', 'userAgent') || '';\n","var global = require('../internals/global');\nvar userAgent = require('../internals/engine-user-agent');\n\nvar process = global.process;\nvar versions = process && process.versions;\nvar v8 = versions && versions.v8;\nvar match, version;\n\nif (v8) {\n match = v8.split('.');\n version = match[0] + match[1];\n} else if (userAgent) {\n match = userAgent.match(/Edge\\/(\\d+)/);\n if (!match || match[1] >= 74) {\n match = userAgent.match(/Chrome\\/(\\d+)/);\n if (match) version = match[1];\n }\n}\n\nmodule.exports = version && +version;\n","var fails = require('../internals/fails');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar SPECIES = wellKnownSymbol('species');\n\nmodule.exports = function (METHOD_NAME) {\n // We can't use this feature detection in V8 since it causes\n // deoptimization and serious performance degradation\n // https://github.com/zloirock/core-js/issues/677\n return V8_VERSION >= 51 || !fails(function () {\n var array = [];\n var constructor = array.constructor = {};\n constructor[SPECIES] = function () {\n return { foo: 1 };\n };\n return array[METHOD_NAME](Boolean).foo !== 1;\n });\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar has = require('../internals/has');\n\nvar defineProperty = Object.defineProperty;\nvar cache = {};\n\nvar thrower = function (it) { throw it; };\n\nmodule.exports = function (METHOD_NAME, options) {\n if (has(cache, METHOD_NAME)) return cache[METHOD_NAME];\n if (!options) options = {};\n var method = [][METHOD_NAME];\n var ACCESSORS = has(options, 'ACCESSORS') ? options.ACCESSORS : false;\n var argument0 = has(options, 0) ? options[0] : thrower;\n var argument1 = has(options, 1) ? options[1] : undefined;\n\n return cache[METHOD_NAME] = !!method && !fails(function () {\n if (ACCESSORS && !DESCRIPTORS) return true;\n var O = { length: -1 };\n\n if (ACCESSORS) defineProperty(O, 1, { enumerable: true, get: thrower });\n else O[1] = 1;\n\n method.call(O, argument0, argument1);\n });\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar $filter = require('../internals/array-iteration').filter;\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\nvar arrayMethodUsesToLength = require('../internals/array-method-uses-to-length');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('filter');\n// Edge 14- issue\nvar USES_TO_LENGTH = arrayMethodUsesToLength('filter');\n\n// `Array.prototype.filter` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.filter\n// with adding support of @@species\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT || !USES_TO_LENGTH }, {\n filter: function filter(callbackfn /* , thisArg */) {\n return $filter(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","var wellKnownSymbol = require('../internals/well-known-symbol');\nvar create = require('../internals/object-create');\nvar definePropertyModule = require('../internals/object-define-property');\n\nvar UNSCOPABLES = wellKnownSymbol('unscopables');\nvar ArrayPrototype = Array.prototype;\n\n// Array.prototype[@@unscopables]\n// https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables\nif (ArrayPrototype[UNSCOPABLES] == undefined) {\n definePropertyModule.f(ArrayPrototype, UNSCOPABLES, {\n configurable: true,\n value: create(null)\n });\n}\n\n// add a key to Array.prototype[@@unscopables]\nmodule.exports = function (key) {\n ArrayPrototype[UNSCOPABLES][key] = true;\n};\n","module.exports = {};\n","var fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n function F() { /* empty */ }\n F.prototype.constructor = null;\n return Object.getPrototypeOf(new F()) !== F.prototype;\n});\n","var has = require('../internals/has');\nvar toObject = require('../internals/to-object');\nvar sharedKey = require('../internals/shared-key');\nvar CORRECT_PROTOTYPE_GETTER = require('../internals/correct-prototype-getter');\n\nvar IE_PROTO = sharedKey('IE_PROTO');\nvar ObjectPrototype = Object.prototype;\n\n// `Object.getPrototypeOf` method\n// https://tc39.github.io/ecma262/#sec-object.getprototypeof\nmodule.exports = CORRECT_PROTOTYPE_GETTER ? Object.getPrototypeOf : function (O) {\n O = toObject(O);\n if (has(O, IE_PROTO)) return O[IE_PROTO];\n if (typeof O.constructor == 'function' && O instanceof O.constructor) {\n return O.constructor.prototype;\n } return O instanceof Object ? ObjectPrototype : null;\n};\n","'use strict';\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar has = require('../internals/has');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_PURE = require('../internals/is-pure');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar BUGGY_SAFARI_ITERATORS = false;\n\nvar returnThis = function () { return this; };\n\n// `%IteratorPrototype%` object\n// https://tc39.github.io/ecma262/#sec-%iteratorprototype%-object\nvar IteratorPrototype, PrototypeOfArrayIteratorPrototype, arrayIterator;\n\nif ([].keys) {\n arrayIterator = [].keys();\n // Safari 8 has buggy iterators w/o `next`\n if (!('next' in arrayIterator)) BUGGY_SAFARI_ITERATORS = true;\n else {\n PrototypeOfArrayIteratorPrototype = getPrototypeOf(getPrototypeOf(arrayIterator));\n if (PrototypeOfArrayIteratorPrototype !== Object.prototype) IteratorPrototype = PrototypeOfArrayIteratorPrototype;\n }\n}\n\nif (IteratorPrototype == undefined) IteratorPrototype = {};\n\n// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()\nif (!IS_PURE && !has(IteratorPrototype, ITERATOR)) {\n createNonEnumerableProperty(IteratorPrototype, ITERATOR, returnThis);\n}\n\nmodule.exports = {\n IteratorPrototype: IteratorPrototype,\n BUGGY_SAFARI_ITERATORS: BUGGY_SAFARI_ITERATORS\n};\n","'use strict';\nvar IteratorPrototype = require('../internals/iterators-core').IteratorPrototype;\nvar create = require('../internals/object-create');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar Iterators = require('../internals/iterators');\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (IteratorConstructor, NAME, next) {\n var TO_STRING_TAG = NAME + ' Iterator';\n IteratorConstructor.prototype = create(IteratorPrototype, { next: createPropertyDescriptor(1, next) });\n setToStringTag(IteratorConstructor, TO_STRING_TAG, false, true);\n Iterators[TO_STRING_TAG] = returnThis;\n return IteratorConstructor;\n};\n","var isObject = require('../internals/is-object');\n\nmodule.exports = function (it) {\n if (!isObject(it) && it !== null) {\n throw TypeError(\"Can't set \" + String(it) + ' as a prototype');\n } return it;\n};\n","var anObject = require('../internals/an-object');\nvar aPossiblePrototype = require('../internals/a-possible-prototype');\n\n// `Object.setPrototypeOf` method\n// https://tc39.github.io/ecma262/#sec-object.setprototypeof\n// Works with __proto__ only. Old v8 can't work with null proto objects.\n/* eslint-disable no-proto */\nmodule.exports = Object.setPrototypeOf || ('__proto__' in {} ? function () {\n var CORRECT_SETTER = false;\n var test = {};\n var setter;\n try {\n setter = Object.getOwnPropertyDescriptor(Object.prototype, '__proto__').set;\n setter.call(test, []);\n CORRECT_SETTER = test instanceof Array;\n } catch (error) { /* empty */ }\n return function setPrototypeOf(O, proto) {\n anObject(O);\n aPossiblePrototype(proto);\n if (CORRECT_SETTER) setter.call(O, proto);\n else O.__proto__ = proto;\n return O;\n };\n}() : undefined);\n","'use strict';\nvar $ = require('../internals/export');\nvar createIteratorConstructor = require('../internals/create-iterator-constructor');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar redefine = require('../internals/redefine');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_PURE = require('../internals/is-pure');\nvar Iterators = require('../internals/iterators');\nvar IteratorsCore = require('../internals/iterators-core');\n\nvar IteratorPrototype = IteratorsCore.IteratorPrototype;\nvar BUGGY_SAFARI_ITERATORS = IteratorsCore.BUGGY_SAFARI_ITERATORS;\nvar ITERATOR = wellKnownSymbol('iterator');\nvar KEYS = 'keys';\nvar VALUES = 'values';\nvar ENTRIES = 'entries';\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (Iterable, NAME, IteratorConstructor, next, DEFAULT, IS_SET, FORCED) {\n createIteratorConstructor(IteratorConstructor, NAME, next);\n\n var getIterationMethod = function (KIND) {\n if (KIND === DEFAULT && defaultIterator) return defaultIterator;\n if (!BUGGY_SAFARI_ITERATORS && KIND in IterablePrototype) return IterablePrototype[KIND];\n switch (KIND) {\n case KEYS: return function keys() { return new IteratorConstructor(this, KIND); };\n case VALUES: return function values() { return new IteratorConstructor(this, KIND); };\n case ENTRIES: return function entries() { return new IteratorConstructor(this, KIND); };\n } return function () { return new IteratorConstructor(this); };\n };\n\n var TO_STRING_TAG = NAME + ' Iterator';\n var INCORRECT_VALUES_NAME = false;\n var IterablePrototype = Iterable.prototype;\n var nativeIterator = IterablePrototype[ITERATOR]\n || IterablePrototype['@@iterator']\n || DEFAULT && IterablePrototype[DEFAULT];\n var defaultIterator = !BUGGY_SAFARI_ITERATORS && nativeIterator || getIterationMethod(DEFAULT);\n var anyNativeIterator = NAME == 'Array' ? IterablePrototype.entries || nativeIterator : nativeIterator;\n var CurrentIteratorPrototype, methods, KEY;\n\n // fix native\n if (anyNativeIterator) {\n CurrentIteratorPrototype = getPrototypeOf(anyNativeIterator.call(new Iterable()));\n if (IteratorPrototype !== Object.prototype && CurrentIteratorPrototype.next) {\n if (!IS_PURE && getPrototypeOf(CurrentIteratorPrototype) !== IteratorPrototype) {\n if (setPrototypeOf) {\n setPrototypeOf(CurrentIteratorPrototype, IteratorPrototype);\n } else if (typeof CurrentIteratorPrototype[ITERATOR] != 'function') {\n createNonEnumerableProperty(CurrentIteratorPrototype, ITERATOR, returnThis);\n }\n }\n // Set @@toStringTag to native iterators\n setToStringTag(CurrentIteratorPrototype, TO_STRING_TAG, true, true);\n if (IS_PURE) Iterators[TO_STRING_TAG] = returnThis;\n }\n }\n\n // fix Array#{values, @@iterator}.name in V8 / FF\n if (DEFAULT == VALUES && nativeIterator && nativeIterator.name !== VALUES) {\n INCORRECT_VALUES_NAME = true;\n defaultIterator = function values() { return nativeIterator.call(this); };\n }\n\n // define iterator\n if ((!IS_PURE || FORCED) && IterablePrototype[ITERATOR] !== defaultIterator) {\n createNonEnumerableProperty(IterablePrototype, ITERATOR, defaultIterator);\n }\n Iterators[NAME] = defaultIterator;\n\n // export additional methods\n if (DEFAULT) {\n methods = {\n values: getIterationMethod(VALUES),\n keys: IS_SET ? defaultIterator : getIterationMethod(KEYS),\n entries: getIterationMethod(ENTRIES)\n };\n if (FORCED) for (KEY in methods) {\n if (BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME || !(KEY in IterablePrototype)) {\n redefine(IterablePrototype, KEY, methods[KEY]);\n }\n } else $({ target: NAME, proto: true, forced: BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME }, methods);\n }\n\n return methods;\n};\n","'use strict';\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar addToUnscopables = require('../internals/add-to-unscopables');\nvar Iterators = require('../internals/iterators');\nvar InternalStateModule = require('../internals/internal-state');\nvar defineIterator = require('../internals/define-iterator');\n\nvar ARRAY_ITERATOR = 'Array Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(ARRAY_ITERATOR);\n\n// `Array.prototype.entries` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.entries\n// `Array.prototype.keys` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.keys\n// `Array.prototype.values` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.values\n// `Array.prototype[@@iterator]` method\n// https://tc39.github.io/ecma262/#sec-array.prototype-@@iterator\n// `CreateArrayIterator` internal method\n// https://tc39.github.io/ecma262/#sec-createarrayiterator\nmodule.exports = defineIterator(Array, 'Array', function (iterated, kind) {\n setInternalState(this, {\n type: ARRAY_ITERATOR,\n target: toIndexedObject(iterated), // target\n index: 0, // next index\n kind: kind // kind\n });\n// `%ArrayIteratorPrototype%.next` method\n// https://tc39.github.io/ecma262/#sec-%arrayiteratorprototype%.next\n}, function () {\n var state = getInternalState(this);\n var target = state.target;\n var kind = state.kind;\n var index = state.index++;\n if (!target || index >= target.length) {\n state.target = undefined;\n return { value: undefined, done: true };\n }\n if (kind == 'keys') return { value: index, done: false };\n if (kind == 'values') return { value: target[index], done: false };\n return { value: [index, target[index]], done: false };\n}, 'values');\n\n// argumentsList[@@iterator] is %ArrayProto_values%\n// https://tc39.github.io/ecma262/#sec-createunmappedargumentsobject\n// https://tc39.github.io/ecma262/#sec-createmappedargumentsobject\nIterators.Arguments = Iterators.Array;\n\n// https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables('keys');\naddToUnscopables('values');\naddToUnscopables('entries');\n","var wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar test = {};\n\ntest[TO_STRING_TAG] = 'z';\n\nmodule.exports = String(test) === '[object z]';\n","var TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar classofRaw = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\n// ES3 wrong here\nvar CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) == 'Arguments';\n\n// fallback for IE11 Script Access Denied error\nvar tryGet = function (it, key) {\n try {\n return it[key];\n } catch (error) { /* empty */ }\n};\n\n// getting tag from ES6+ `Object.prototype.toString`\nmodule.exports = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) {\n var O, tag, result;\n return it === undefined ? 'Undefined' : it === null ? 'Null'\n // @@toStringTag case\n : typeof (tag = tryGet(O = Object(it), TO_STRING_TAG)) == 'string' ? tag\n // builtinTag case\n : CORRECT_ARGUMENTS ? classofRaw(O)\n // ES3 arguments fallback\n : (result = classofRaw(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : result;\n};\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar classof = require('../internals/classof');\n\n// `Object.prototype.toString` method implementation\n// https://tc39.github.io/ecma262/#sec-object.prototype.tostring\nmodule.exports = TO_STRING_TAG_SUPPORT ? {}.toString : function toString() {\n return '[object ' + classof(this) + ']';\n};\n","var TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar redefine = require('../internals/redefine');\nvar toString = require('../internals/object-to-string');\n\n// `Object.prototype.toString` method\n// https://tc39.github.io/ecma262/#sec-object.prototype.tostring\nif (!TO_STRING_TAG_SUPPORT) {\n redefine(Object.prototype, 'toString', toString, { unsafe: true });\n}\n","'use strict';\nvar anObject = require('../internals/an-object');\n\n// `RegExp.prototype.flags` getter implementation\n// https://tc39.github.io/ecma262/#sec-get-regexp.prototype.flags\nmodule.exports = function () {\n var that = anObject(this);\n var result = '';\n if (that.global) result += 'g';\n if (that.ignoreCase) result += 'i';\n if (that.multiline) result += 'm';\n if (that.dotAll) result += 's';\n if (that.unicode) result += 'u';\n if (that.sticky) result += 'y';\n return result;\n};\n","'use strict';\n\nvar fails = require('./fails');\n\n// babel-minify transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError,\n// so we use an intermediate function.\nfunction RE(s, f) {\n return RegExp(s, f);\n}\n\nexports.UNSUPPORTED_Y = fails(function () {\n // babel-minify transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError\n var re = RE('a', 'y');\n re.lastIndex = 2;\n return re.exec('abcd') != null;\n});\n\nexports.BROKEN_CARET = fails(function () {\n // https://bugzilla.mozilla.org/show_bug.cgi?id=773687\n var re = RE('^r', 'gy');\n re.lastIndex = 2;\n return re.exec('str') != null;\n});\n","'use strict';\nvar regexpFlags = require('./regexp-flags');\nvar stickyHelpers = require('./regexp-sticky-helpers');\n\nvar nativeExec = RegExp.prototype.exec;\n// This always refers to the native implementation, because the\n// String#replace polyfill uses ./fix-regexp-well-known-symbol-logic.js,\n// which loads this file before patching the method.\nvar nativeReplace = String.prototype.replace;\n\nvar patchedExec = nativeExec;\n\nvar UPDATES_LAST_INDEX_WRONG = (function () {\n var re1 = /a/;\n var re2 = /b*/g;\n nativeExec.call(re1, 'a');\n nativeExec.call(re2, 'a');\n return re1.lastIndex !== 0 || re2.lastIndex !== 0;\n})();\n\nvar UNSUPPORTED_Y = stickyHelpers.UNSUPPORTED_Y || stickyHelpers.BROKEN_CARET;\n\n// nonparticipating capturing group, copied from es5-shim's String#split patch.\nvar NPCG_INCLUDED = /()??/.exec('')[1] !== undefined;\n\nvar PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED || UNSUPPORTED_Y;\n\nif (PATCH) {\n patchedExec = function exec(str) {\n var re = this;\n var lastIndex, reCopy, match, i;\n var sticky = UNSUPPORTED_Y && re.sticky;\n var flags = regexpFlags.call(re);\n var source = re.source;\n var charsAdded = 0;\n var strCopy = str;\n\n if (sticky) {\n flags = flags.replace('y', '');\n if (flags.indexOf('g') === -1) {\n flags += 'g';\n }\n\n strCopy = String(str).slice(re.lastIndex);\n // Support anchored sticky behavior.\n if (re.lastIndex > 0 && (!re.multiline || re.multiline && str[re.lastIndex - 1] !== '\\n')) {\n source = '(?: ' + source + ')';\n strCopy = ' ' + strCopy;\n charsAdded++;\n }\n // ^(? + rx + ) is needed, in combination with some str slicing, to\n // simulate the 'y' flag.\n reCopy = new RegExp('^(?:' + source + ')', flags);\n }\n\n if (NPCG_INCLUDED) {\n reCopy = new RegExp('^' + source + '$(?!\\\\s)', flags);\n }\n if (UPDATES_LAST_INDEX_WRONG) lastIndex = re.lastIndex;\n\n match = nativeExec.call(sticky ? reCopy : re, strCopy);\n\n if (sticky) {\n if (match) {\n match.input = match.input.slice(charsAdded);\n match[0] = match[0].slice(charsAdded);\n match.index = re.lastIndex;\n re.lastIndex += match[0].length;\n } else re.lastIndex = 0;\n } else if (UPDATES_LAST_INDEX_WRONG && match) {\n re.lastIndex = re.global ? match.index + match[0].length : lastIndex;\n }\n if (NPCG_INCLUDED && match && match.length > 1) {\n // Fix browsers whose `exec` methods don't consistently return `undefined`\n // for NPCG, like IE8. NOTE: This doesn' work for /(.?)?/\n nativeReplace.call(match[0], reCopy, function () {\n for (i = 1; i < arguments.length - 2; i++) {\n if (arguments[i] === undefined) match[i] = undefined;\n }\n });\n }\n\n return match;\n };\n}\n\nmodule.exports = patchedExec;\n","'use strict';\nvar $ = require('../internals/export');\nvar exec = require('../internals/regexp-exec');\n\n$({ target: 'RegExp', proto: true, forced: /./.exec !== exec }, {\n exec: exec\n});\n","var toInteger = require('../internals/to-integer');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\n// `String.prototype.{ codePointAt, at }` methods implementation\nvar createMethod = function (CONVERT_TO_STRING) {\n return function ($this, pos) {\n var S = String(requireObjectCoercible($this));\n var position = toInteger(pos);\n var size = S.length;\n var first, second;\n if (position < 0 || position >= size) return CONVERT_TO_STRING ? '' : undefined;\n first = S.charCodeAt(position);\n return first < 0xD800 || first > 0xDBFF || position + 1 === size\n || (second = S.charCodeAt(position + 1)) < 0xDC00 || second > 0xDFFF\n ? CONVERT_TO_STRING ? S.charAt(position) : first\n : CONVERT_TO_STRING ? S.slice(position, position + 2) : (first - 0xD800 << 10) + (second - 0xDC00) + 0x10000;\n };\n};\n\nmodule.exports = {\n // `String.prototype.codePointAt` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.codepointat\n codeAt: createMethod(false),\n // `String.prototype.at` method\n // https://github.com/mathiasbynens/String.prototype.at\n charAt: createMethod(true)\n};\n","'use strict';\nvar charAt = require('../internals/string-multibyte').charAt;\nvar InternalStateModule = require('../internals/internal-state');\nvar defineIterator = require('../internals/define-iterator');\n\nvar STRING_ITERATOR = 'String Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(STRING_ITERATOR);\n\n// `String.prototype[@@iterator]` method\n// https://tc39.github.io/ecma262/#sec-string.prototype-@@iterator\ndefineIterator(String, 'String', function (iterated) {\n setInternalState(this, {\n type: STRING_ITERATOR,\n string: String(iterated),\n index: 0\n });\n// `%StringIteratorPrototype%.next` method\n// https://tc39.github.io/ecma262/#sec-%stringiteratorprototype%.next\n}, function next() {\n var state = getInternalState(this);\n var string = state.string;\n var index = state.index;\n var point;\n if (index >= string.length) return { value: undefined, done: true };\n point = charAt(string, index);\n state.index += point.length;\n return { value: point, done: false };\n});\n","'use strict';\n// TODO: Remove from `core-js@4` since it's moved to entry points\nrequire('../modules/es.regexp.exec');\nvar redefine = require('../internals/redefine');\nvar fails = require('../internals/fails');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar regexpExec = require('../internals/regexp-exec');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\n\nvar SPECIES = wellKnownSymbol('species');\n\nvar REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () {\n // #replace needs built-in support for named groups.\n // #match works fine because it just return the exec results, even if it has\n // a \"grops\" property.\n var re = /./;\n re.exec = function () {\n var result = [];\n result.groups = { a: '7' };\n return result;\n };\n return ''.replace(re, '$') !== '7';\n});\n\n// IE <= 11 replaces $0 with the whole match, as if it was $&\n// https://stackoverflow.com/questions/6024666/getting-ie-to-replace-a-regex-with-the-literal-string-0\nvar REPLACE_KEEPS_$0 = (function () {\n return 'a'.replace(/./, '$0') === '$0';\n})();\n\nvar REPLACE = wellKnownSymbol('replace');\n// Safari <= 13.0.3(?) substitutes nth capture where n>m with an empty string\nvar REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE = (function () {\n if (/./[REPLACE]) {\n return /./[REPLACE]('a', '$0') === '';\n }\n return false;\n})();\n\n// Chrome 51 has a buggy \"split\" implementation when RegExp#exec !== nativeExec\n// Weex JS has frozen built-in prototypes, so use try / catch wrapper\nvar SPLIT_WORKS_WITH_OVERWRITTEN_EXEC = !fails(function () {\n var re = /(?:)/;\n var originalExec = re.exec;\n re.exec = function () { return originalExec.apply(this, arguments); };\n var result = 'ab'.split(re);\n return result.length !== 2 || result[0] !== 'a' || result[1] !== 'b';\n});\n\nmodule.exports = function (KEY, length, exec, sham) {\n var SYMBOL = wellKnownSymbol(KEY);\n\n var DELEGATES_TO_SYMBOL = !fails(function () {\n // String methods call symbol-named RegEp methods\n var O = {};\n O[SYMBOL] = function () { return 7; };\n return ''[KEY](O) != 7;\n });\n\n var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL && !fails(function () {\n // Symbol-named RegExp methods call .exec\n var execCalled = false;\n var re = /a/;\n\n if (KEY === 'split') {\n // We can't use real regex here since it causes deoptimization\n // and serious performance degradation in V8\n // https://github.com/zloirock/core-js/issues/306\n re = {};\n // RegExp[@@split] doesn't call the regex's exec method, but first creates\n // a new one. We need to return the patched regex when creating the new one.\n re.constructor = {};\n re.constructor[SPECIES] = function () { return re; };\n re.flags = '';\n re[SYMBOL] = /./[SYMBOL];\n }\n\n re.exec = function () { execCalled = true; return null; };\n\n re[SYMBOL]('');\n return !execCalled;\n });\n\n if (\n !DELEGATES_TO_SYMBOL ||\n !DELEGATES_TO_EXEC ||\n (KEY === 'replace' && !(\n REPLACE_SUPPORTS_NAMED_GROUPS &&\n REPLACE_KEEPS_$0 &&\n !REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE\n )) ||\n (KEY === 'split' && !SPLIT_WORKS_WITH_OVERWRITTEN_EXEC)\n ) {\n var nativeRegExpMethod = /./[SYMBOL];\n var methods = exec(SYMBOL, ''[KEY], function (nativeMethod, regexp, str, arg2, forceStringMethod) {\n if (regexp.exec === regexpExec) {\n if (DELEGATES_TO_SYMBOL && !forceStringMethod) {\n // The native String method already delegates to @@method (this\n // polyfilled function), leasing to infinite recursion.\n // We avoid it by directly calling the native @@method method.\n return { done: true, value: nativeRegExpMethod.call(regexp, str, arg2) };\n }\n return { done: true, value: nativeMethod.call(str, regexp, arg2) };\n }\n return { done: false };\n }, {\n REPLACE_KEEPS_$0: REPLACE_KEEPS_$0,\n REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE: REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE\n });\n var stringMethod = methods[0];\n var regexMethod = methods[1];\n\n redefine(String.prototype, KEY, stringMethod);\n redefine(RegExp.prototype, SYMBOL, length == 2\n // 21.2.5.8 RegExp.prototype[@@replace](string, replaceValue)\n // 21.2.5.11 RegExp.prototype[@@split](string, limit)\n ? function (string, arg) { return regexMethod.call(string, this, arg); }\n // 21.2.5.6 RegExp.prototype[@@match](string)\n // 21.2.5.9 RegExp.prototype[@@search](string)\n : function (string) { return regexMethod.call(string, this); }\n );\n }\n\n if (sham) createNonEnumerableProperty(RegExp.prototype[SYMBOL], 'sham', true);\n};\n","'use strict';\nvar charAt = require('../internals/string-multibyte').charAt;\n\n// `AdvanceStringIndex` abstract operation\n// https://tc39.github.io/ecma262/#sec-advancestringindex\nmodule.exports = function (S, index, unicode) {\n return index + (unicode ? charAt(S, index).length : 1);\n};\n","var classof = require('./classof-raw');\nvar regexpExec = require('./regexp-exec');\n\n// `RegExpExec` abstract operation\n// https://tc39.github.io/ecma262/#sec-regexpexec\nmodule.exports = function (R, S) {\n var exec = R.exec;\n if (typeof exec === 'function') {\n var result = exec.call(R, S);\n if (typeof result !== 'object') {\n throw TypeError('RegExp exec method returned something other than an Object or null');\n }\n return result;\n }\n\n if (classof(R) !== 'RegExp') {\n throw TypeError('RegExp#exec called on incompatible receiver');\n }\n\n return regexpExec.call(R, S);\n};\n\n","'use strict';\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar anObject = require('../internals/an-object');\nvar toLength = require('../internals/to-length');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar advanceStringIndex = require('../internals/advance-string-index');\nvar regExpExec = require('../internals/regexp-exec-abstract');\n\n// @@match logic\nfixRegExpWellKnownSymbolLogic('match', 1, function (MATCH, nativeMatch, maybeCallNative) {\n return [\n // `String.prototype.match` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.match\n function match(regexp) {\n var O = requireObjectCoercible(this);\n var matcher = regexp == undefined ? undefined : regexp[MATCH];\n return matcher !== undefined ? matcher.call(regexp, O) : new RegExp(regexp)[MATCH](String(O));\n },\n // `RegExp.prototype[@@match]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@match\n function (regexp) {\n var res = maybeCallNative(nativeMatch, regexp, this);\n if (res.done) return res.value;\n\n var rx = anObject(regexp);\n var S = String(this);\n\n if (!rx.global) return regExpExec(rx, S);\n\n var fullUnicode = rx.unicode;\n rx.lastIndex = 0;\n var A = [];\n var n = 0;\n var result;\n while ((result = regExpExec(rx, S)) !== null) {\n var matchStr = String(result[0]);\n A[n] = matchStr;\n if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);\n n++;\n }\n return n === 0 ? null : A;\n }\n ];\n});\n","// `SameValue` abstract operation\n// https://tc39.github.io/ecma262/#sec-samevalue\nmodule.exports = Object.is || function is(x, y) {\n // eslint-disable-next-line no-self-compare\n return x === y ? x !== 0 || 1 / x === 1 / y : x != x && y != y;\n};\n","'use strict';\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar anObject = require('../internals/an-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar sameValue = require('../internals/same-value');\nvar regExpExec = require('../internals/regexp-exec-abstract');\n\n// @@search logic\nfixRegExpWellKnownSymbolLogic('search', 1, function (SEARCH, nativeSearch, maybeCallNative) {\n return [\n // `String.prototype.search` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.search\n function search(regexp) {\n var O = requireObjectCoercible(this);\n var searcher = regexp == undefined ? undefined : regexp[SEARCH];\n return searcher !== undefined ? searcher.call(regexp, O) : new RegExp(regexp)[SEARCH](String(O));\n },\n // `RegExp.prototype[@@search]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@search\n function (regexp) {\n var res = maybeCallNative(nativeSearch, regexp, this);\n if (res.done) return res.value;\n\n var rx = anObject(regexp);\n var S = String(this);\n\n var previousLastIndex = rx.lastIndex;\n if (!sameValue(previousLastIndex, 0)) rx.lastIndex = 0;\n var result = regExpExec(rx, S);\n if (!sameValue(rx.lastIndex, previousLastIndex)) rx.lastIndex = previousLastIndex;\n return result === null ? -1 : result.index;\n }\n ];\n});\n","// iterable DOM collections\n// flag - `iterable` interface - 'entries', 'keys', 'values', 'forEach' methods\nmodule.exports = {\n CSSRuleList: 0,\n CSSStyleDeclaration: 0,\n CSSValueList: 0,\n ClientRectList: 0,\n DOMRectList: 0,\n DOMStringList: 0,\n DOMTokenList: 1,\n DataTransferItemList: 0,\n FileList: 0,\n HTMLAllCollection: 0,\n HTMLCollection: 0,\n HTMLFormElement: 0,\n HTMLSelectElement: 0,\n MediaList: 0,\n MimeTypeArray: 0,\n NamedNodeMap: 0,\n NodeList: 1,\n PaintRequestList: 0,\n Plugin: 0,\n PluginArray: 0,\n SVGLengthList: 0,\n SVGNumberList: 0,\n SVGPathSegList: 0,\n SVGPointList: 0,\n SVGStringList: 0,\n SVGTransformList: 0,\n SourceBufferList: 0,\n StyleSheetList: 0,\n TextTrackCueList: 0,\n TextTrackList: 0,\n TouchList: 0\n};\n","var global = require('../internals/global');\nvar DOMIterables = require('../internals/dom-iterables');\nvar ArrayIteratorMethods = require('../modules/es.array.iterator');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar ArrayValues = ArrayIteratorMethods.values;\n\nfor (var COLLECTION_NAME in DOMIterables) {\n var Collection = global[COLLECTION_NAME];\n var CollectionPrototype = Collection && Collection.prototype;\n if (CollectionPrototype) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[ITERATOR] !== ArrayValues) try {\n createNonEnumerableProperty(CollectionPrototype, ITERATOR, ArrayValues);\n } catch (error) {\n CollectionPrototype[ITERATOR] = ArrayValues;\n }\n if (!CollectionPrototype[TO_STRING_TAG]) {\n createNonEnumerableProperty(CollectionPrototype, TO_STRING_TAG, COLLECTION_NAME);\n }\n if (DOMIterables[COLLECTION_NAME]) for (var METHOD_NAME in ArrayIteratorMethods) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[METHOD_NAME] !== ArrayIteratorMethods[METHOD_NAME]) try {\n createNonEnumerableProperty(CollectionPrototype, METHOD_NAME, ArrayIteratorMethods[METHOD_NAME]);\n } catch (error) {\n CollectionPrototype[METHOD_NAME] = ArrayIteratorMethods[METHOD_NAME];\n }\n }\n }\n}\n","var fails = require('../internals/fails');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_PURE = require('../internals/is-pure');\n\nvar ITERATOR = wellKnownSymbol('iterator');\n\nmodule.exports = !fails(function () {\n var url = new URL('b?a=1&b=2&c=3', 'http://a');\n var searchParams = url.searchParams;\n var result = '';\n url.pathname = 'c%20d';\n searchParams.forEach(function (value, key) {\n searchParams['delete']('b');\n result += key + value;\n });\n return (IS_PURE && !url.toJSON)\n || !searchParams.sort\n || url.href !== 'http://a/c%20d?a=1&c=3'\n || searchParams.get('c') !== '3'\n || String(new URLSearchParams('?a=1')) !== 'a=1'\n || !searchParams[ITERATOR]\n // throws in Edge\n || new URL('https://a@b').username !== 'a'\n || new URLSearchParams(new URLSearchParams('a=b')).get('a') !== 'b'\n // not punycoded in Edge\n || new URL('http://тест').host !== 'xn--e1aybc'\n // not escaped in Chrome 62-\n || new URL('http://a#б').hash !== '#%D0%B1'\n // fails in Chrome 66-\n || result !== 'a1c3'\n // throws in Safari\n || new URL('http://x', undefined).host !== 'x';\n});\n","module.exports = function (it, Constructor, name) {\n if (!(it instanceof Constructor)) {\n throw TypeError('Incorrect ' + (name ? name + ' ' : '') + 'invocation');\n } return it;\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar objectKeys = require('../internals/object-keys');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar toObject = require('../internals/to-object');\nvar IndexedObject = require('../internals/indexed-object');\n\nvar nativeAssign = Object.assign;\nvar defineProperty = Object.defineProperty;\n\n// `Object.assign` method\n// https://tc39.github.io/ecma262/#sec-object.assign\nmodule.exports = !nativeAssign || fails(function () {\n // should have correct order of operations (Edge bug)\n if (DESCRIPTORS && nativeAssign({ b: 1 }, nativeAssign(defineProperty({}, 'a', {\n enumerable: true,\n get: function () {\n defineProperty(this, 'b', {\n value: 3,\n enumerable: false\n });\n }\n }), { b: 2 })).b !== 1) return true;\n // should work with symbols and should have deterministic property order (V8 bug)\n var A = {};\n var B = {};\n // eslint-disable-next-line no-undef\n var symbol = Symbol();\n var alphabet = 'abcdefghijklmnopqrst';\n A[symbol] = 7;\n alphabet.split('').forEach(function (chr) { B[chr] = chr; });\n return nativeAssign({}, A)[symbol] != 7 || objectKeys(nativeAssign({}, B)).join('') != alphabet;\n}) ? function assign(target, source) { // eslint-disable-line no-unused-vars\n var T = toObject(target);\n var argumentsLength = arguments.length;\n var index = 1;\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n var propertyIsEnumerable = propertyIsEnumerableModule.f;\n while (argumentsLength > index) {\n var S = IndexedObject(arguments[index++]);\n var keys = getOwnPropertySymbols ? objectKeys(S).concat(getOwnPropertySymbols(S)) : objectKeys(S);\n var length = keys.length;\n var j = 0;\n var key;\n while (length > j) {\n key = keys[j++];\n if (!DESCRIPTORS || propertyIsEnumerable.call(S, key)) T[key] = S[key];\n }\n } return T;\n} : nativeAssign;\n","var anObject = require('../internals/an-object');\n\n// call something on iterator step with safe closing on error\nmodule.exports = function (iterator, fn, value, ENTRIES) {\n try {\n return ENTRIES ? fn(anObject(value)[0], value[1]) : fn(value);\n // 7.4.6 IteratorClose(iterator, completion)\n } catch (error) {\n var returnMethod = iterator['return'];\n if (returnMethod !== undefined) anObject(returnMethod.call(iterator));\n throw error;\n }\n};\n","var wellKnownSymbol = require('../internals/well-known-symbol');\nvar Iterators = require('../internals/iterators');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar ArrayPrototype = Array.prototype;\n\n// check on default Array iterator\nmodule.exports = function (it) {\n return it !== undefined && (Iterators.Array === it || ArrayPrototype[ITERATOR] === it);\n};\n","'use strict';\nvar toPrimitive = require('../internals/to-primitive');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = function (object, key, value) {\n var propertyKey = toPrimitive(key);\n if (propertyKey in object) definePropertyModule.f(object, propertyKey, createPropertyDescriptor(0, value));\n else object[propertyKey] = value;\n};\n","var classof = require('../internals/classof');\nvar Iterators = require('../internals/iterators');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\n\nmodule.exports = function (it) {\n if (it != undefined) return it[ITERATOR]\n || it['@@iterator']\n || Iterators[classof(it)];\n};\n","'use strict';\nvar bind = require('../internals/function-bind-context');\nvar toObject = require('../internals/to-object');\nvar callWithSafeIterationClosing = require('../internals/call-with-safe-iteration-closing');\nvar isArrayIteratorMethod = require('../internals/is-array-iterator-method');\nvar toLength = require('../internals/to-length');\nvar createProperty = require('../internals/create-property');\nvar getIteratorMethod = require('../internals/get-iterator-method');\n\n// `Array.from` method implementation\n// https://tc39.github.io/ecma262/#sec-array.from\nmodule.exports = function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) {\n var O = toObject(arrayLike);\n var C = typeof this == 'function' ? this : Array;\n var argumentsLength = arguments.length;\n var mapfn = argumentsLength > 1 ? arguments[1] : undefined;\n var mapping = mapfn !== undefined;\n var iteratorMethod = getIteratorMethod(O);\n var index = 0;\n var length, result, step, iterator, next, value;\n if (mapping) mapfn = bind(mapfn, argumentsLength > 2 ? arguments[2] : undefined, 2);\n // if the target is not iterable or it's an array with the default iterator - use a simple case\n if (iteratorMethod != undefined && !(C == Array && isArrayIteratorMethod(iteratorMethod))) {\n iterator = iteratorMethod.call(O);\n next = iterator.next;\n result = new C();\n for (;!(step = next.call(iterator)).done; index++) {\n value = mapping ? callWithSafeIterationClosing(iterator, mapfn, [step.value, index], true) : step.value;\n createProperty(result, index, value);\n }\n } else {\n length = toLength(O.length);\n result = new C(length);\n for (;length > index; index++) {\n value = mapping ? mapfn(O[index], index) : O[index];\n createProperty(result, index, value);\n }\n }\n result.length = index;\n return result;\n};\n","'use strict';\n// based on https://github.com/bestiejs/punycode.js/blob/master/punycode.js\nvar maxInt = 2147483647; // aka. 0x7FFFFFFF or 2^31-1\nvar base = 36;\nvar tMin = 1;\nvar tMax = 26;\nvar skew = 38;\nvar damp = 700;\nvar initialBias = 72;\nvar initialN = 128; // 0x80\nvar delimiter = '-'; // '\\x2D'\nvar regexNonASCII = /[^\\0-\\u007E]/; // non-ASCII chars\nvar regexSeparators = /[.\\u3002\\uFF0E\\uFF61]/g; // RFC 3490 separators\nvar OVERFLOW_ERROR = 'Overflow: input needs wider integers to process';\nvar baseMinusTMin = base - tMin;\nvar floor = Math.floor;\nvar stringFromCharCode = String.fromCharCode;\n\n/**\n * Creates an array containing the numeric code points of each Unicode\n * character in the string. While JavaScript uses UCS-2 internally,\n * this function will convert a pair of surrogate halves (each of which\n * UCS-2 exposes as separate characters) into a single code point,\n * matching UTF-16.\n */\nvar ucs2decode = function (string) {\n var output = [];\n var counter = 0;\n var length = string.length;\n while (counter < length) {\n var value = string.charCodeAt(counter++);\n if (value >= 0xD800 && value <= 0xDBFF && counter < length) {\n // It's a high surrogate, and there is a next character.\n var extra = string.charCodeAt(counter++);\n if ((extra & 0xFC00) == 0xDC00) { // Low surrogate.\n output.push(((value & 0x3FF) << 10) + (extra & 0x3FF) + 0x10000);\n } else {\n // It's an unmatched surrogate; only append this code unit, in case the\n // next code unit is the high surrogate of a surrogate pair.\n output.push(value);\n counter--;\n }\n } else {\n output.push(value);\n }\n }\n return output;\n};\n\n/**\n * Converts a digit/integer into a basic code point.\n */\nvar digitToBasic = function (digit) {\n // 0..25 map to ASCII a..z or A..Z\n // 26..35 map to ASCII 0..9\n return digit + 22 + 75 * (digit < 26);\n};\n\n/**\n * Bias adaptation function as per section 3.4 of RFC 3492.\n * https://tools.ietf.org/html/rfc3492#section-3.4\n */\nvar adapt = function (delta, numPoints, firstTime) {\n var k = 0;\n delta = firstTime ? floor(delta / damp) : delta >> 1;\n delta += floor(delta / numPoints);\n for (; delta > baseMinusTMin * tMax >> 1; k += base) {\n delta = floor(delta / baseMinusTMin);\n }\n return floor(k + (baseMinusTMin + 1) * delta / (delta + skew));\n};\n\n/**\n * Converts a string of Unicode symbols (e.g. a domain name label) to a\n * Punycode string of ASCII-only symbols.\n */\n// eslint-disable-next-line max-statements\nvar encode = function (input) {\n var output = [];\n\n // Convert the input in UCS-2 to an array of Unicode code points.\n input = ucs2decode(input);\n\n // Cache the length.\n var inputLength = input.length;\n\n // Initialize the state.\n var n = initialN;\n var delta = 0;\n var bias = initialBias;\n var i, currentValue;\n\n // Handle the basic code points.\n for (i = 0; i < input.length; i++) {\n currentValue = input[i];\n if (currentValue < 0x80) {\n output.push(stringFromCharCode(currentValue));\n }\n }\n\n var basicLength = output.length; // number of basic code points.\n var handledCPCount = basicLength; // number of code points that have been handled;\n\n // Finish the basic string with a delimiter unless it's empty.\n if (basicLength) {\n output.push(delimiter);\n }\n\n // Main encoding loop:\n while (handledCPCount < inputLength) {\n // All non-basic code points < n have been handled already. Find the next larger one:\n var m = maxInt;\n for (i = 0; i < input.length; i++) {\n currentValue = input[i];\n if (currentValue >= n && currentValue < m) {\n m = currentValue;\n }\n }\n\n // Increase `delta` enough to advance the decoder's state to , but guard against overflow.\n var handledCPCountPlusOne = handledCPCount + 1;\n if (m - n > floor((maxInt - delta) / handledCPCountPlusOne)) {\n throw RangeError(OVERFLOW_ERROR);\n }\n\n delta += (m - n) * handledCPCountPlusOne;\n n = m;\n\n for (i = 0; i < input.length; i++) {\n currentValue = input[i];\n if (currentValue < n && ++delta > maxInt) {\n throw RangeError(OVERFLOW_ERROR);\n }\n if (currentValue == n) {\n // Represent delta as a generalized variable-length integer.\n var q = delta;\n for (var k = base; /* no condition */; k += base) {\n var t = k <= bias ? tMin : (k >= bias + tMax ? tMax : k - bias);\n if (q < t) break;\n var qMinusT = q - t;\n var baseMinusT = base - t;\n output.push(stringFromCharCode(digitToBasic(t + qMinusT % baseMinusT)));\n q = floor(qMinusT / baseMinusT);\n }\n\n output.push(stringFromCharCode(digitToBasic(q)));\n bias = adapt(delta, handledCPCountPlusOne, handledCPCount == basicLength);\n delta = 0;\n ++handledCPCount;\n }\n }\n\n ++delta;\n ++n;\n }\n return output.join('');\n};\n\nmodule.exports = function (input) {\n var encoded = [];\n var labels = input.toLowerCase().replace(regexSeparators, '\\u002E').split('.');\n var i, label;\n for (i = 0; i < labels.length; i++) {\n label = labels[i];\n encoded.push(regexNonASCII.test(label) ? 'xn--' + encode(label) : label);\n }\n return encoded.join('.');\n};\n","var redefine = require('../internals/redefine');\n\nmodule.exports = function (target, src, options) {\n for (var key in src) redefine(target, key, src[key], options);\n return target;\n};\n","var anObject = require('../internals/an-object');\nvar getIteratorMethod = require('../internals/get-iterator-method');\n\nmodule.exports = function (it) {\n var iteratorMethod = getIteratorMethod(it);\n if (typeof iteratorMethod != 'function') {\n throw TypeError(String(it) + ' is not iterable');\n } return anObject(iteratorMethod.call(it));\n};\n","'use strict';\n// TODO: in core-js@4, move /modules/ dependencies to public entries for better optimization by tools like `preset-env`\nrequire('../modules/es.array.iterator');\nvar $ = require('../internals/export');\nvar getBuiltIn = require('../internals/get-built-in');\nvar USE_NATIVE_URL = require('../internals/native-url');\nvar redefine = require('../internals/redefine');\nvar redefineAll = require('../internals/redefine-all');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar createIteratorConstructor = require('../internals/create-iterator-constructor');\nvar InternalStateModule = require('../internals/internal-state');\nvar anInstance = require('../internals/an-instance');\nvar hasOwn = require('../internals/has');\nvar bind = require('../internals/function-bind-context');\nvar classof = require('../internals/classof');\nvar anObject = require('../internals/an-object');\nvar isObject = require('../internals/is-object');\nvar create = require('../internals/object-create');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar getIterator = require('../internals/get-iterator');\nvar getIteratorMethod = require('../internals/get-iterator-method');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar $fetch = getBuiltIn('fetch');\nvar Headers = getBuiltIn('Headers');\nvar ITERATOR = wellKnownSymbol('iterator');\nvar URL_SEARCH_PARAMS = 'URLSearchParams';\nvar URL_SEARCH_PARAMS_ITERATOR = URL_SEARCH_PARAMS + 'Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalParamsState = InternalStateModule.getterFor(URL_SEARCH_PARAMS);\nvar getInternalIteratorState = InternalStateModule.getterFor(URL_SEARCH_PARAMS_ITERATOR);\n\nvar plus = /\\+/g;\nvar sequences = Array(4);\n\nvar percentSequence = function (bytes) {\n return sequences[bytes - 1] || (sequences[bytes - 1] = RegExp('((?:%[\\\\da-f]{2}){' + bytes + '})', 'gi'));\n};\n\nvar percentDecode = function (sequence) {\n try {\n return decodeURIComponent(sequence);\n } catch (error) {\n return sequence;\n }\n};\n\nvar deserialize = function (it) {\n var result = it.replace(plus, ' ');\n var bytes = 4;\n try {\n return decodeURIComponent(result);\n } catch (error) {\n while (bytes) {\n result = result.replace(percentSequence(bytes--), percentDecode);\n }\n return result;\n }\n};\n\nvar find = /[!'()~]|%20/g;\n\nvar replace = {\n '!': '%21',\n \"'\": '%27',\n '(': '%28',\n ')': '%29',\n '~': '%7E',\n '%20': '+'\n};\n\nvar replacer = function (match) {\n return replace[match];\n};\n\nvar serialize = function (it) {\n return encodeURIComponent(it).replace(find, replacer);\n};\n\nvar parseSearchParams = function (result, query) {\n if (query) {\n var attributes = query.split('&');\n var index = 0;\n var attribute, entry;\n while (index < attributes.length) {\n attribute = attributes[index++];\n if (attribute.length) {\n entry = attribute.split('=');\n result.push({\n key: deserialize(entry.shift()),\n value: deserialize(entry.join('='))\n });\n }\n }\n }\n};\n\nvar updateSearchParams = function (query) {\n this.entries.length = 0;\n parseSearchParams(this.entries, query);\n};\n\nvar validateArgumentsLength = function (passed, required) {\n if (passed < required) throw TypeError('Not enough arguments');\n};\n\nvar URLSearchParamsIterator = createIteratorConstructor(function Iterator(params, kind) {\n setInternalState(this, {\n type: URL_SEARCH_PARAMS_ITERATOR,\n iterator: getIterator(getInternalParamsState(params).entries),\n kind: kind\n });\n}, 'Iterator', function next() {\n var state = getInternalIteratorState(this);\n var kind = state.kind;\n var step = state.iterator.next();\n var entry = step.value;\n if (!step.done) {\n step.value = kind === 'keys' ? entry.key : kind === 'values' ? entry.value : [entry.key, entry.value];\n } return step;\n});\n\n// `URLSearchParams` constructor\n// https://url.spec.whatwg.org/#interface-urlsearchparams\nvar URLSearchParamsConstructor = function URLSearchParams(/* init */) {\n anInstance(this, URLSearchParamsConstructor, URL_SEARCH_PARAMS);\n var init = arguments.length > 0 ? arguments[0] : undefined;\n var that = this;\n var entries = [];\n var iteratorMethod, iterator, next, step, entryIterator, entryNext, first, second, key;\n\n setInternalState(that, {\n type: URL_SEARCH_PARAMS,\n entries: entries,\n updateURL: function () { /* empty */ },\n updateSearchParams: updateSearchParams\n });\n\n if (init !== undefined) {\n if (isObject(init)) {\n iteratorMethod = getIteratorMethod(init);\n if (typeof iteratorMethod === 'function') {\n iterator = iteratorMethod.call(init);\n next = iterator.next;\n while (!(step = next.call(iterator)).done) {\n entryIterator = getIterator(anObject(step.value));\n entryNext = entryIterator.next;\n if (\n (first = entryNext.call(entryIterator)).done ||\n (second = entryNext.call(entryIterator)).done ||\n !entryNext.call(entryIterator).done\n ) throw TypeError('Expected sequence with length 2');\n entries.push({ key: first.value + '', value: second.value + '' });\n }\n } else for (key in init) if (hasOwn(init, key)) entries.push({ key: key, value: init[key] + '' });\n } else {\n parseSearchParams(entries, typeof init === 'string' ? init.charAt(0) === '?' ? init.slice(1) : init : init + '');\n }\n }\n};\n\nvar URLSearchParamsPrototype = URLSearchParamsConstructor.prototype;\n\nredefineAll(URLSearchParamsPrototype, {\n // `URLSearchParams.prototype.appent` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-append\n append: function append(name, value) {\n validateArgumentsLength(arguments.length, 2);\n var state = getInternalParamsState(this);\n state.entries.push({ key: name + '', value: value + '' });\n state.updateURL();\n },\n // `URLSearchParams.prototype.delete` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-delete\n 'delete': function (name) {\n validateArgumentsLength(arguments.length, 1);\n var state = getInternalParamsState(this);\n var entries = state.entries;\n var key = name + '';\n var index = 0;\n while (index < entries.length) {\n if (entries[index].key === key) entries.splice(index, 1);\n else index++;\n }\n state.updateURL();\n },\n // `URLSearchParams.prototype.get` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-get\n get: function get(name) {\n validateArgumentsLength(arguments.length, 1);\n var entries = getInternalParamsState(this).entries;\n var key = name + '';\n var index = 0;\n for (; index < entries.length; index++) {\n if (entries[index].key === key) return entries[index].value;\n }\n return null;\n },\n // `URLSearchParams.prototype.getAll` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-getall\n getAll: function getAll(name) {\n validateArgumentsLength(arguments.length, 1);\n var entries = getInternalParamsState(this).entries;\n var key = name + '';\n var result = [];\n var index = 0;\n for (; index < entries.length; index++) {\n if (entries[index].key === key) result.push(entries[index].value);\n }\n return result;\n },\n // `URLSearchParams.prototype.has` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-has\n has: function has(name) {\n validateArgumentsLength(arguments.length, 1);\n var entries = getInternalParamsState(this).entries;\n var key = name + '';\n var index = 0;\n while (index < entries.length) {\n if (entries[index++].key === key) return true;\n }\n return false;\n },\n // `URLSearchParams.prototype.set` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-set\n set: function set(name, value) {\n validateArgumentsLength(arguments.length, 1);\n var state = getInternalParamsState(this);\n var entries = state.entries;\n var found = false;\n var key = name + '';\n var val = value + '';\n var index = 0;\n var entry;\n for (; index < entries.length; index++) {\n entry = entries[index];\n if (entry.key === key) {\n if (found) entries.splice(index--, 1);\n else {\n found = true;\n entry.value = val;\n }\n }\n }\n if (!found) entries.push({ key: key, value: val });\n state.updateURL();\n },\n // `URLSearchParams.prototype.sort` method\n // https://url.spec.whatwg.org/#dom-urlsearchparams-sort\n sort: function sort() {\n var state = getInternalParamsState(this);\n var entries = state.entries;\n // Array#sort is not stable in some engines\n var slice = entries.slice();\n var entry, entriesIndex, sliceIndex;\n entries.length = 0;\n for (sliceIndex = 0; sliceIndex < slice.length; sliceIndex++) {\n entry = slice[sliceIndex];\n for (entriesIndex = 0; entriesIndex < sliceIndex; entriesIndex++) {\n if (entries[entriesIndex].key > entry.key) {\n entries.splice(entriesIndex, 0, entry);\n break;\n }\n }\n if (entriesIndex === sliceIndex) entries.push(entry);\n }\n state.updateURL();\n },\n // `URLSearchParams.prototype.forEach` method\n forEach: function forEach(callback /* , thisArg */) {\n var entries = getInternalParamsState(this).entries;\n var boundFunction = bind(callback, arguments.length > 1 ? arguments[1] : undefined, 3);\n var index = 0;\n var entry;\n while (index < entries.length) {\n entry = entries[index++];\n boundFunction(entry.value, entry.key, this);\n }\n },\n // `URLSearchParams.prototype.keys` method\n keys: function keys() {\n return new URLSearchParamsIterator(this, 'keys');\n },\n // `URLSearchParams.prototype.values` method\n values: function values() {\n return new URLSearchParamsIterator(this, 'values');\n },\n // `URLSearchParams.prototype.entries` method\n entries: function entries() {\n return new URLSearchParamsIterator(this, 'entries');\n }\n}, { enumerable: true });\n\n// `URLSearchParams.prototype[@@iterator]` method\nredefine(URLSearchParamsPrototype, ITERATOR, URLSearchParamsPrototype.entries);\n\n// `URLSearchParams.prototype.toString` method\n// https://url.spec.whatwg.org/#urlsearchparams-stringification-behavior\nredefine(URLSearchParamsPrototype, 'toString', function toString() {\n var entries = getInternalParamsState(this).entries;\n var result = [];\n var index = 0;\n var entry;\n while (index < entries.length) {\n entry = entries[index++];\n result.push(serialize(entry.key) + '=' + serialize(entry.value));\n } return result.join('&');\n}, { enumerable: true });\n\nsetToStringTag(URLSearchParamsConstructor, URL_SEARCH_PARAMS);\n\n$({ global: true, forced: !USE_NATIVE_URL }, {\n URLSearchParams: URLSearchParamsConstructor\n});\n\n// Wrap `fetch` for correct work with polyfilled `URLSearchParams`\n// https://github.com/zloirock/core-js/issues/674\nif (!USE_NATIVE_URL && typeof $fetch == 'function' && typeof Headers == 'function') {\n $({ global: true, enumerable: true, forced: true }, {\n fetch: function fetch(input /* , init */) {\n var args = [input];\n var init, body, headers;\n if (arguments.length > 1) {\n init = arguments[1];\n if (isObject(init)) {\n body = init.body;\n if (classof(body) === URL_SEARCH_PARAMS) {\n headers = init.headers ? new Headers(init.headers) : new Headers();\n if (!headers.has('content-type')) {\n headers.set('content-type', 'application/x-www-form-urlencoded;charset=UTF-8');\n }\n init = create(init, {\n body: createPropertyDescriptor(0, String(body)),\n headers: createPropertyDescriptor(0, headers)\n });\n }\n }\n args.push(init);\n } return $fetch.apply(this, args);\n }\n });\n}\n\nmodule.exports = {\n URLSearchParams: URLSearchParamsConstructor,\n getState: getInternalParamsState\n};\n","'use strict';\n// TODO: in core-js@4, move /modules/ dependencies to public entries for better optimization by tools like `preset-env`\nrequire('../modules/es.string.iterator');\nvar $ = require('../internals/export');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar USE_NATIVE_URL = require('../internals/native-url');\nvar global = require('../internals/global');\nvar defineProperties = require('../internals/object-define-properties');\nvar redefine = require('../internals/redefine');\nvar anInstance = require('../internals/an-instance');\nvar has = require('../internals/has');\nvar assign = require('../internals/object-assign');\nvar arrayFrom = require('../internals/array-from');\nvar codeAt = require('../internals/string-multibyte').codeAt;\nvar toASCII = require('../internals/string-punycode-to-ascii');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar URLSearchParamsModule = require('../modules/web.url-search-params');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar NativeURL = global.URL;\nvar URLSearchParams = URLSearchParamsModule.URLSearchParams;\nvar getInternalSearchParamsState = URLSearchParamsModule.getState;\nvar setInternalState = InternalStateModule.set;\nvar getInternalURLState = InternalStateModule.getterFor('URL');\nvar floor = Math.floor;\nvar pow = Math.pow;\n\nvar INVALID_AUTHORITY = 'Invalid authority';\nvar INVALID_SCHEME = 'Invalid scheme';\nvar INVALID_HOST = 'Invalid host';\nvar INVALID_PORT = 'Invalid port';\n\nvar ALPHA = /[A-Za-z]/;\nvar ALPHANUMERIC = /[\\d+-.A-Za-z]/;\nvar DIGIT = /\\d/;\nvar HEX_START = /^(0x|0X)/;\nvar OCT = /^[0-7]+$/;\nvar DEC = /^\\d+$/;\nvar HEX = /^[\\dA-Fa-f]+$/;\n// eslint-disable-next-line no-control-regex\nvar FORBIDDEN_HOST_CODE_POINT = /[\\u0000\\u0009\\u000A\\u000D #%/:?@[\\\\]]/;\n// eslint-disable-next-line no-control-regex\nvar FORBIDDEN_HOST_CODE_POINT_EXCLUDING_PERCENT = /[\\u0000\\u0009\\u000A\\u000D #/:?@[\\\\]]/;\n// eslint-disable-next-line no-control-regex\nvar LEADING_AND_TRAILING_C0_CONTROL_OR_SPACE = /^[\\u0000-\\u001F ]+|[\\u0000-\\u001F ]+$/g;\n// eslint-disable-next-line no-control-regex\nvar TAB_AND_NEW_LINE = /[\\u0009\\u000A\\u000D]/g;\nvar EOF;\n\nvar parseHost = function (url, input) {\n var result, codePoints, index;\n if (input.charAt(0) == '[') {\n if (input.charAt(input.length - 1) != ']') return INVALID_HOST;\n result = parseIPv6(input.slice(1, -1));\n if (!result) return INVALID_HOST;\n url.host = result;\n // opaque host\n } else if (!isSpecial(url)) {\n if (FORBIDDEN_HOST_CODE_POINT_EXCLUDING_PERCENT.test(input)) return INVALID_HOST;\n result = '';\n codePoints = arrayFrom(input);\n for (index = 0; index < codePoints.length; index++) {\n result += percentEncode(codePoints[index], C0ControlPercentEncodeSet);\n }\n url.host = result;\n } else {\n input = toASCII(input);\n if (FORBIDDEN_HOST_CODE_POINT.test(input)) return INVALID_HOST;\n result = parseIPv4(input);\n if (result === null) return INVALID_HOST;\n url.host = result;\n }\n};\n\nvar parseIPv4 = function (input) {\n var parts = input.split('.');\n var partsLength, numbers, index, part, radix, number, ipv4;\n if (parts.length && parts[parts.length - 1] == '') {\n parts.pop();\n }\n partsLength = parts.length;\n if (partsLength > 4) return input;\n numbers = [];\n for (index = 0; index < partsLength; index++) {\n part = parts[index];\n if (part == '') return input;\n radix = 10;\n if (part.length > 1 && part.charAt(0) == '0') {\n radix = HEX_START.test(part) ? 16 : 8;\n part = part.slice(radix == 8 ? 1 : 2);\n }\n if (part === '') {\n number = 0;\n } else {\n if (!(radix == 10 ? DEC : radix == 8 ? OCT : HEX).test(part)) return input;\n number = parseInt(part, radix);\n }\n numbers.push(number);\n }\n for (index = 0; index < partsLength; index++) {\n number = numbers[index];\n if (index == partsLength - 1) {\n if (number >= pow(256, 5 - partsLength)) return null;\n } else if (number > 255) return null;\n }\n ipv4 = numbers.pop();\n for (index = 0; index < numbers.length; index++) {\n ipv4 += numbers[index] * pow(256, 3 - index);\n }\n return ipv4;\n};\n\n// eslint-disable-next-line max-statements\nvar parseIPv6 = function (input) {\n var address = [0, 0, 0, 0, 0, 0, 0, 0];\n var pieceIndex = 0;\n var compress = null;\n var pointer = 0;\n var value, length, numbersSeen, ipv4Piece, number, swaps, swap;\n\n var char = function () {\n return input.charAt(pointer);\n };\n\n if (char() == ':') {\n if (input.charAt(1) != ':') return;\n pointer += 2;\n pieceIndex++;\n compress = pieceIndex;\n }\n while (char()) {\n if (pieceIndex == 8) return;\n if (char() == ':') {\n if (compress !== null) return;\n pointer++;\n pieceIndex++;\n compress = pieceIndex;\n continue;\n }\n value = length = 0;\n while (length < 4 && HEX.test(char())) {\n value = value * 16 + parseInt(char(), 16);\n pointer++;\n length++;\n }\n if (char() == '.') {\n if (length == 0) return;\n pointer -= length;\n if (pieceIndex > 6) return;\n numbersSeen = 0;\n while (char()) {\n ipv4Piece = null;\n if (numbersSeen > 0) {\n if (char() == '.' && numbersSeen < 4) pointer++;\n else return;\n }\n if (!DIGIT.test(char())) return;\n while (DIGIT.test(char())) {\n number = parseInt(char(), 10);\n if (ipv4Piece === null) ipv4Piece = number;\n else if (ipv4Piece == 0) return;\n else ipv4Piece = ipv4Piece * 10 + number;\n if (ipv4Piece > 255) return;\n pointer++;\n }\n address[pieceIndex] = address[pieceIndex] * 256 + ipv4Piece;\n numbersSeen++;\n if (numbersSeen == 2 || numbersSeen == 4) pieceIndex++;\n }\n if (numbersSeen != 4) return;\n break;\n } else if (char() == ':') {\n pointer++;\n if (!char()) return;\n } else if (char()) return;\n address[pieceIndex++] = value;\n }\n if (compress !== null) {\n swaps = pieceIndex - compress;\n pieceIndex = 7;\n while (pieceIndex != 0 && swaps > 0) {\n swap = address[pieceIndex];\n address[pieceIndex--] = address[compress + swaps - 1];\n address[compress + --swaps] = swap;\n }\n } else if (pieceIndex != 8) return;\n return address;\n};\n\nvar findLongestZeroSequence = function (ipv6) {\n var maxIndex = null;\n var maxLength = 1;\n var currStart = null;\n var currLength = 0;\n var index = 0;\n for (; index < 8; index++) {\n if (ipv6[index] !== 0) {\n if (currLength > maxLength) {\n maxIndex = currStart;\n maxLength = currLength;\n }\n currStart = null;\n currLength = 0;\n } else {\n if (currStart === null) currStart = index;\n ++currLength;\n }\n }\n if (currLength > maxLength) {\n maxIndex = currStart;\n maxLength = currLength;\n }\n return maxIndex;\n};\n\nvar serializeHost = function (host) {\n var result, index, compress, ignore0;\n // ipv4\n if (typeof host == 'number') {\n result = [];\n for (index = 0; index < 4; index++) {\n result.unshift(host % 256);\n host = floor(host / 256);\n } return result.join('.');\n // ipv6\n } else if (typeof host == 'object') {\n result = '';\n compress = findLongestZeroSequence(host);\n for (index = 0; index < 8; index++) {\n if (ignore0 && host[index] === 0) continue;\n if (ignore0) ignore0 = false;\n if (compress === index) {\n result += index ? ':' : '::';\n ignore0 = true;\n } else {\n result += host[index].toString(16);\n if (index < 7) result += ':';\n }\n }\n return '[' + result + ']';\n } return host;\n};\n\nvar C0ControlPercentEncodeSet = {};\nvar fragmentPercentEncodeSet = assign({}, C0ControlPercentEncodeSet, {\n ' ': 1, '\"': 1, '<': 1, '>': 1, '`': 1\n});\nvar pathPercentEncodeSet = assign({}, fragmentPercentEncodeSet, {\n '#': 1, '?': 1, '{': 1, '}': 1\n});\nvar userinfoPercentEncodeSet = assign({}, pathPercentEncodeSet, {\n '/': 1, ':': 1, ';': 1, '=': 1, '@': 1, '[': 1, '\\\\': 1, ']': 1, '^': 1, '|': 1\n});\n\nvar percentEncode = function (char, set) {\n var code = codeAt(char, 0);\n return code > 0x20 && code < 0x7F && !has(set, char) ? char : encodeURIComponent(char);\n};\n\nvar specialSchemes = {\n ftp: 21,\n file: null,\n http: 80,\n https: 443,\n ws: 80,\n wss: 443\n};\n\nvar isSpecial = function (url) {\n return has(specialSchemes, url.scheme);\n};\n\nvar includesCredentials = function (url) {\n return url.username != '' || url.password != '';\n};\n\nvar cannotHaveUsernamePasswordPort = function (url) {\n return !url.host || url.cannotBeABaseURL || url.scheme == 'file';\n};\n\nvar isWindowsDriveLetter = function (string, normalized) {\n var second;\n return string.length == 2 && ALPHA.test(string.charAt(0))\n && ((second = string.charAt(1)) == ':' || (!normalized && second == '|'));\n};\n\nvar startsWithWindowsDriveLetter = function (string) {\n var third;\n return string.length > 1 && isWindowsDriveLetter(string.slice(0, 2)) && (\n string.length == 2 ||\n ((third = string.charAt(2)) === '/' || third === '\\\\' || third === '?' || third === '#')\n );\n};\n\nvar shortenURLsPath = function (url) {\n var path = url.path;\n var pathSize = path.length;\n if (pathSize && (url.scheme != 'file' || pathSize != 1 || !isWindowsDriveLetter(path[0], true))) {\n path.pop();\n }\n};\n\nvar isSingleDot = function (segment) {\n return segment === '.' || segment.toLowerCase() === '%2e';\n};\n\nvar isDoubleDot = function (segment) {\n segment = segment.toLowerCase();\n return segment === '..' || segment === '%2e.' || segment === '.%2e' || segment === '%2e%2e';\n};\n\n// States:\nvar SCHEME_START = {};\nvar SCHEME = {};\nvar NO_SCHEME = {};\nvar SPECIAL_RELATIVE_OR_AUTHORITY = {};\nvar PATH_OR_AUTHORITY = {};\nvar RELATIVE = {};\nvar RELATIVE_SLASH = {};\nvar SPECIAL_AUTHORITY_SLASHES = {};\nvar SPECIAL_AUTHORITY_IGNORE_SLASHES = {};\nvar AUTHORITY = {};\nvar HOST = {};\nvar HOSTNAME = {};\nvar PORT = {};\nvar FILE = {};\nvar FILE_SLASH = {};\nvar FILE_HOST = {};\nvar PATH_START = {};\nvar PATH = {};\nvar CANNOT_BE_A_BASE_URL_PATH = {};\nvar QUERY = {};\nvar FRAGMENT = {};\n\n// eslint-disable-next-line max-statements\nvar parseURL = function (url, input, stateOverride, base) {\n var state = stateOverride || SCHEME_START;\n var pointer = 0;\n var buffer = '';\n var seenAt = false;\n var seenBracket = false;\n var seenPasswordToken = false;\n var codePoints, char, bufferCodePoints, failure;\n\n if (!stateOverride) {\n url.scheme = '';\n url.username = '';\n url.password = '';\n url.host = null;\n url.port = null;\n url.path = [];\n url.query = null;\n url.fragment = null;\n url.cannotBeABaseURL = false;\n input = input.replace(LEADING_AND_TRAILING_C0_CONTROL_OR_SPACE, '');\n }\n\n input = input.replace(TAB_AND_NEW_LINE, '');\n\n codePoints = arrayFrom(input);\n\n while (pointer <= codePoints.length) {\n char = codePoints[pointer];\n switch (state) {\n case SCHEME_START:\n if (char && ALPHA.test(char)) {\n buffer += char.toLowerCase();\n state = SCHEME;\n } else if (!stateOverride) {\n state = NO_SCHEME;\n continue;\n } else return INVALID_SCHEME;\n break;\n\n case SCHEME:\n if (char && (ALPHANUMERIC.test(char) || char == '+' || char == '-' || char == '.')) {\n buffer += char.toLowerCase();\n } else if (char == ':') {\n if (stateOverride && (\n (isSpecial(url) != has(specialSchemes, buffer)) ||\n (buffer == 'file' && (includesCredentials(url) || url.port !== null)) ||\n (url.scheme == 'file' && !url.host)\n )) return;\n url.scheme = buffer;\n if (stateOverride) {\n if (isSpecial(url) && specialSchemes[url.scheme] == url.port) url.port = null;\n return;\n }\n buffer = '';\n if (url.scheme == 'file') {\n state = FILE;\n } else if (isSpecial(url) && base && base.scheme == url.scheme) {\n state = SPECIAL_RELATIVE_OR_AUTHORITY;\n } else if (isSpecial(url)) {\n state = SPECIAL_AUTHORITY_SLASHES;\n } else if (codePoints[pointer + 1] == '/') {\n state = PATH_OR_AUTHORITY;\n pointer++;\n } else {\n url.cannotBeABaseURL = true;\n url.path.push('');\n state = CANNOT_BE_A_BASE_URL_PATH;\n }\n } else if (!stateOverride) {\n buffer = '';\n state = NO_SCHEME;\n pointer = 0;\n continue;\n } else return INVALID_SCHEME;\n break;\n\n case NO_SCHEME:\n if (!base || (base.cannotBeABaseURL && char != '#')) return INVALID_SCHEME;\n if (base.cannotBeABaseURL && char == '#') {\n url.scheme = base.scheme;\n url.path = base.path.slice();\n url.query = base.query;\n url.fragment = '';\n url.cannotBeABaseURL = true;\n state = FRAGMENT;\n break;\n }\n state = base.scheme == 'file' ? FILE : RELATIVE;\n continue;\n\n case SPECIAL_RELATIVE_OR_AUTHORITY:\n if (char == '/' && codePoints[pointer + 1] == '/') {\n state = SPECIAL_AUTHORITY_IGNORE_SLASHES;\n pointer++;\n } else {\n state = RELATIVE;\n continue;\n } break;\n\n case PATH_OR_AUTHORITY:\n if (char == '/') {\n state = AUTHORITY;\n break;\n } else {\n state = PATH;\n continue;\n }\n\n case RELATIVE:\n url.scheme = base.scheme;\n if (char == EOF) {\n url.username = base.username;\n url.password = base.password;\n url.host = base.host;\n url.port = base.port;\n url.path = base.path.slice();\n url.query = base.query;\n } else if (char == '/' || (char == '\\\\' && isSpecial(url))) {\n state = RELATIVE_SLASH;\n } else if (char == '?') {\n url.username = base.username;\n url.password = base.password;\n url.host = base.host;\n url.port = base.port;\n url.path = base.path.slice();\n url.query = '';\n state = QUERY;\n } else if (char == '#') {\n url.username = base.username;\n url.password = base.password;\n url.host = base.host;\n url.port = base.port;\n url.path = base.path.slice();\n url.query = base.query;\n url.fragment = '';\n state = FRAGMENT;\n } else {\n url.username = base.username;\n url.password = base.password;\n url.host = base.host;\n url.port = base.port;\n url.path = base.path.slice();\n url.path.pop();\n state = PATH;\n continue;\n } break;\n\n case RELATIVE_SLASH:\n if (isSpecial(url) && (char == '/' || char == '\\\\')) {\n state = SPECIAL_AUTHORITY_IGNORE_SLASHES;\n } else if (char == '/') {\n state = AUTHORITY;\n } else {\n url.username = base.username;\n url.password = base.password;\n url.host = base.host;\n url.port = base.port;\n state = PATH;\n continue;\n } break;\n\n case SPECIAL_AUTHORITY_SLASHES:\n state = SPECIAL_AUTHORITY_IGNORE_SLASHES;\n if (char != '/' || buffer.charAt(pointer + 1) != '/') continue;\n pointer++;\n break;\n\n case SPECIAL_AUTHORITY_IGNORE_SLASHES:\n if (char != '/' && char != '\\\\') {\n state = AUTHORITY;\n continue;\n } break;\n\n case AUTHORITY:\n if (char == '@') {\n if (seenAt) buffer = '%40' + buffer;\n seenAt = true;\n bufferCodePoints = arrayFrom(buffer);\n for (var i = 0; i < bufferCodePoints.length; i++) {\n var codePoint = bufferCodePoints[i];\n if (codePoint == ':' && !seenPasswordToken) {\n seenPasswordToken = true;\n continue;\n }\n var encodedCodePoints = percentEncode(codePoint, userinfoPercentEncodeSet);\n if (seenPasswordToken) url.password += encodedCodePoints;\n else url.username += encodedCodePoints;\n }\n buffer = '';\n } else if (\n char == EOF || char == '/' || char == '?' || char == '#' ||\n (char == '\\\\' && isSpecial(url))\n ) {\n if (seenAt && buffer == '') return INVALID_AUTHORITY;\n pointer -= arrayFrom(buffer).length + 1;\n buffer = '';\n state = HOST;\n } else buffer += char;\n break;\n\n case HOST:\n case HOSTNAME:\n if (stateOverride && url.scheme == 'file') {\n state = FILE_HOST;\n continue;\n } else if (char == ':' && !seenBracket) {\n if (buffer == '') return INVALID_HOST;\n failure = parseHost(url, buffer);\n if (failure) return failure;\n buffer = '';\n state = PORT;\n if (stateOverride == HOSTNAME) return;\n } else if (\n char == EOF || char == '/' || char == '?' || char == '#' ||\n (char == '\\\\' && isSpecial(url))\n ) {\n if (isSpecial(url) && buffer == '') return INVALID_HOST;\n if (stateOverride && buffer == '' && (includesCredentials(url) || url.port !== null)) return;\n failure = parseHost(url, buffer);\n if (failure) return failure;\n buffer = '';\n state = PATH_START;\n if (stateOverride) return;\n continue;\n } else {\n if (char == '[') seenBracket = true;\n else if (char == ']') seenBracket = false;\n buffer += char;\n } break;\n\n case PORT:\n if (DIGIT.test(char)) {\n buffer += char;\n } else if (\n char == EOF || char == '/' || char == '?' || char == '#' ||\n (char == '\\\\' && isSpecial(url)) ||\n stateOverride\n ) {\n if (buffer != '') {\n var port = parseInt(buffer, 10);\n if (port > 0xFFFF) return INVALID_PORT;\n url.port = (isSpecial(url) && port === specialSchemes[url.scheme]) ? null : port;\n buffer = '';\n }\n if (stateOverride) return;\n state = PATH_START;\n continue;\n } else return INVALID_PORT;\n break;\n\n case FILE:\n url.scheme = 'file';\n if (char == '/' || char == '\\\\') state = FILE_SLASH;\n else if (base && base.scheme == 'file') {\n if (char == EOF) {\n url.host = base.host;\n url.path = base.path.slice();\n url.query = base.query;\n } else if (char == '?') {\n url.host = base.host;\n url.path = base.path.slice();\n url.query = '';\n state = QUERY;\n } else if (char == '#') {\n url.host = base.host;\n url.path = base.path.slice();\n url.query = base.query;\n url.fragment = '';\n state = FRAGMENT;\n } else {\n if (!startsWithWindowsDriveLetter(codePoints.slice(pointer).join(''))) {\n url.host = base.host;\n url.path = base.path.slice();\n shortenURLsPath(url);\n }\n state = PATH;\n continue;\n }\n } else {\n state = PATH;\n continue;\n } break;\n\n case FILE_SLASH:\n if (char == '/' || char == '\\\\') {\n state = FILE_HOST;\n break;\n }\n if (base && base.scheme == 'file' && !startsWithWindowsDriveLetter(codePoints.slice(pointer).join(''))) {\n if (isWindowsDriveLetter(base.path[0], true)) url.path.push(base.path[0]);\n else url.host = base.host;\n }\n state = PATH;\n continue;\n\n case FILE_HOST:\n if (char == EOF || char == '/' || char == '\\\\' || char == '?' || char == '#') {\n if (!stateOverride && isWindowsDriveLetter(buffer)) {\n state = PATH;\n } else if (buffer == '') {\n url.host = '';\n if (stateOverride) return;\n state = PATH_START;\n } else {\n failure = parseHost(url, buffer);\n if (failure) return failure;\n if (url.host == 'localhost') url.host = '';\n if (stateOverride) return;\n buffer = '';\n state = PATH_START;\n } continue;\n } else buffer += char;\n break;\n\n case PATH_START:\n if (isSpecial(url)) {\n state = PATH;\n if (char != '/' && char != '\\\\') continue;\n } else if (!stateOverride && char == '?') {\n url.query = '';\n state = QUERY;\n } else if (!stateOverride && char == '#') {\n url.fragment = '';\n state = FRAGMENT;\n } else if (char != EOF) {\n state = PATH;\n if (char != '/') continue;\n } break;\n\n case PATH:\n if (\n char == EOF || char == '/' ||\n (char == '\\\\' && isSpecial(url)) ||\n (!stateOverride && (char == '?' || char == '#'))\n ) {\n if (isDoubleDot(buffer)) {\n shortenURLsPath(url);\n if (char != '/' && !(char == '\\\\' && isSpecial(url))) {\n url.path.push('');\n }\n } else if (isSingleDot(buffer)) {\n if (char != '/' && !(char == '\\\\' && isSpecial(url))) {\n url.path.push('');\n }\n } else {\n if (url.scheme == 'file' && !url.path.length && isWindowsDriveLetter(buffer)) {\n if (url.host) url.host = '';\n buffer = buffer.charAt(0) + ':'; // normalize windows drive letter\n }\n url.path.push(buffer);\n }\n buffer = '';\n if (url.scheme == 'file' && (char == EOF || char == '?' || char == '#')) {\n while (url.path.length > 1 && url.path[0] === '') {\n url.path.shift();\n }\n }\n if (char == '?') {\n url.query = '';\n state = QUERY;\n } else if (char == '#') {\n url.fragment = '';\n state = FRAGMENT;\n }\n } else {\n buffer += percentEncode(char, pathPercentEncodeSet);\n } break;\n\n case CANNOT_BE_A_BASE_URL_PATH:\n if (char == '?') {\n url.query = '';\n state = QUERY;\n } else if (char == '#') {\n url.fragment = '';\n state = FRAGMENT;\n } else if (char != EOF) {\n url.path[0] += percentEncode(char, C0ControlPercentEncodeSet);\n } break;\n\n case QUERY:\n if (!stateOverride && char == '#') {\n url.fragment = '';\n state = FRAGMENT;\n } else if (char != EOF) {\n if (char == \"'\" && isSpecial(url)) url.query += '%27';\n else if (char == '#') url.query += '%23';\n else url.query += percentEncode(char, C0ControlPercentEncodeSet);\n } break;\n\n case FRAGMENT:\n if (char != EOF) url.fragment += percentEncode(char, fragmentPercentEncodeSet);\n break;\n }\n\n pointer++;\n }\n};\n\n// `URL` constructor\n// https://url.spec.whatwg.org/#url-class\nvar URLConstructor = function URL(url /* , base */) {\n var that = anInstance(this, URLConstructor, 'URL');\n var base = arguments.length > 1 ? arguments[1] : undefined;\n var urlString = String(url);\n var state = setInternalState(that, { type: 'URL' });\n var baseState, failure;\n if (base !== undefined) {\n if (base instanceof URLConstructor) baseState = getInternalURLState(base);\n else {\n failure = parseURL(baseState = {}, String(base));\n if (failure) throw TypeError(failure);\n }\n }\n failure = parseURL(state, urlString, null, baseState);\n if (failure) throw TypeError(failure);\n var searchParams = state.searchParams = new URLSearchParams();\n var searchParamsState = getInternalSearchParamsState(searchParams);\n searchParamsState.updateSearchParams(state.query);\n searchParamsState.updateURL = function () {\n state.query = String(searchParams) || null;\n };\n if (!DESCRIPTORS) {\n that.href = serializeURL.call(that);\n that.origin = getOrigin.call(that);\n that.protocol = getProtocol.call(that);\n that.username = getUsername.call(that);\n that.password = getPassword.call(that);\n that.host = getHost.call(that);\n that.hostname = getHostname.call(that);\n that.port = getPort.call(that);\n that.pathname = getPathname.call(that);\n that.search = getSearch.call(that);\n that.searchParams = getSearchParams.call(that);\n that.hash = getHash.call(that);\n }\n};\n\nvar URLPrototype = URLConstructor.prototype;\n\nvar serializeURL = function () {\n var url = getInternalURLState(this);\n var scheme = url.scheme;\n var username = url.username;\n var password = url.password;\n var host = url.host;\n var port = url.port;\n var path = url.path;\n var query = url.query;\n var fragment = url.fragment;\n var output = scheme + ':';\n if (host !== null) {\n output += '//';\n if (includesCredentials(url)) {\n output += username + (password ? ':' + password : '') + '@';\n }\n output += serializeHost(host);\n if (port !== null) output += ':' + port;\n } else if (scheme == 'file') output += '//';\n output += url.cannotBeABaseURL ? path[0] : path.length ? '/' + path.join('/') : '';\n if (query !== null) output += '?' + query;\n if (fragment !== null) output += '#' + fragment;\n return output;\n};\n\nvar getOrigin = function () {\n var url = getInternalURLState(this);\n var scheme = url.scheme;\n var port = url.port;\n if (scheme == 'blob') try {\n return new URL(scheme.path[0]).origin;\n } catch (error) {\n return 'null';\n }\n if (scheme == 'file' || !isSpecial(url)) return 'null';\n return scheme + '://' + serializeHost(url.host) + (port !== null ? ':' + port : '');\n};\n\nvar getProtocol = function () {\n return getInternalURLState(this).scheme + ':';\n};\n\nvar getUsername = function () {\n return getInternalURLState(this).username;\n};\n\nvar getPassword = function () {\n return getInternalURLState(this).password;\n};\n\nvar getHost = function () {\n var url = getInternalURLState(this);\n var host = url.host;\n var port = url.port;\n return host === null ? ''\n : port === null ? serializeHost(host)\n : serializeHost(host) + ':' + port;\n};\n\nvar getHostname = function () {\n var host = getInternalURLState(this).host;\n return host === null ? '' : serializeHost(host);\n};\n\nvar getPort = function () {\n var port = getInternalURLState(this).port;\n return port === null ? '' : String(port);\n};\n\nvar getPathname = function () {\n var url = getInternalURLState(this);\n var path = url.path;\n return url.cannotBeABaseURL ? path[0] : path.length ? '/' + path.join('/') : '';\n};\n\nvar getSearch = function () {\n var query = getInternalURLState(this).query;\n return query ? '?' + query : '';\n};\n\nvar getSearchParams = function () {\n return getInternalURLState(this).searchParams;\n};\n\nvar getHash = function () {\n var fragment = getInternalURLState(this).fragment;\n return fragment ? '#' + fragment : '';\n};\n\nvar accessorDescriptor = function (getter, setter) {\n return { get: getter, set: setter, configurable: true, enumerable: true };\n};\n\nif (DESCRIPTORS) {\n defineProperties(URLPrototype, {\n // `URL.prototype.href` accessors pair\n // https://url.spec.whatwg.org/#dom-url-href\n href: accessorDescriptor(serializeURL, function (href) {\n var url = getInternalURLState(this);\n var urlString = String(href);\n var failure = parseURL(url, urlString);\n if (failure) throw TypeError(failure);\n getInternalSearchParamsState(url.searchParams).updateSearchParams(url.query);\n }),\n // `URL.prototype.origin` getter\n // https://url.spec.whatwg.org/#dom-url-origin\n origin: accessorDescriptor(getOrigin),\n // `URL.prototype.protocol` accessors pair\n // https://url.spec.whatwg.org/#dom-url-protocol\n protocol: accessorDescriptor(getProtocol, function (protocol) {\n var url = getInternalURLState(this);\n parseURL(url, String(protocol) + ':', SCHEME_START);\n }),\n // `URL.prototype.username` accessors pair\n // https://url.spec.whatwg.org/#dom-url-username\n username: accessorDescriptor(getUsername, function (username) {\n var url = getInternalURLState(this);\n var codePoints = arrayFrom(String(username));\n if (cannotHaveUsernamePasswordPort(url)) return;\n url.username = '';\n for (var i = 0; i < codePoints.length; i++) {\n url.username += percentEncode(codePoints[i], userinfoPercentEncodeSet);\n }\n }),\n // `URL.prototype.password` accessors pair\n // https://url.spec.whatwg.org/#dom-url-password\n password: accessorDescriptor(getPassword, function (password) {\n var url = getInternalURLState(this);\n var codePoints = arrayFrom(String(password));\n if (cannotHaveUsernamePasswordPort(url)) return;\n url.password = '';\n for (var i = 0; i < codePoints.length; i++) {\n url.password += percentEncode(codePoints[i], userinfoPercentEncodeSet);\n }\n }),\n // `URL.prototype.host` accessors pair\n // https://url.spec.whatwg.org/#dom-url-host\n host: accessorDescriptor(getHost, function (host) {\n var url = getInternalURLState(this);\n if (url.cannotBeABaseURL) return;\n parseURL(url, String(host), HOST);\n }),\n // `URL.prototype.hostname` accessors pair\n // https://url.spec.whatwg.org/#dom-url-hostname\n hostname: accessorDescriptor(getHostname, function (hostname) {\n var url = getInternalURLState(this);\n if (url.cannotBeABaseURL) return;\n parseURL(url, String(hostname), HOSTNAME);\n }),\n // `URL.prototype.port` accessors pair\n // https://url.spec.whatwg.org/#dom-url-port\n port: accessorDescriptor(getPort, function (port) {\n var url = getInternalURLState(this);\n if (cannotHaveUsernamePasswordPort(url)) return;\n port = String(port);\n if (port == '') url.port = null;\n else parseURL(url, port, PORT);\n }),\n // `URL.prototype.pathname` accessors pair\n // https://url.spec.whatwg.org/#dom-url-pathname\n pathname: accessorDescriptor(getPathname, function (pathname) {\n var url = getInternalURLState(this);\n if (url.cannotBeABaseURL) return;\n url.path = [];\n parseURL(url, pathname + '', PATH_START);\n }),\n // `URL.prototype.search` accessors pair\n // https://url.spec.whatwg.org/#dom-url-search\n search: accessorDescriptor(getSearch, function (search) {\n var url = getInternalURLState(this);\n search = String(search);\n if (search == '') {\n url.query = null;\n } else {\n if ('?' == search.charAt(0)) search = search.slice(1);\n url.query = '';\n parseURL(url, search, QUERY);\n }\n getInternalSearchParamsState(url.searchParams).updateSearchParams(url.query);\n }),\n // `URL.prototype.searchParams` getter\n // https://url.spec.whatwg.org/#dom-url-searchparams\n searchParams: accessorDescriptor(getSearchParams),\n // `URL.prototype.hash` accessors pair\n // https://url.spec.whatwg.org/#dom-url-hash\n hash: accessorDescriptor(getHash, function (hash) {\n var url = getInternalURLState(this);\n hash = String(hash);\n if (hash == '') {\n url.fragment = null;\n return;\n }\n if ('#' == hash.charAt(0)) hash = hash.slice(1);\n url.fragment = '';\n parseURL(url, hash, FRAGMENT);\n })\n });\n}\n\n// `URL.prototype.toJSON` method\n// https://url.spec.whatwg.org/#dom-url-tojson\nredefine(URLPrototype, 'toJSON', function toJSON() {\n return serializeURL.call(this);\n}, { enumerable: true });\n\n// `URL.prototype.toString` method\n// https://url.spec.whatwg.org/#URL-stringification-behavior\nredefine(URLPrototype, 'toString', function toString() {\n return serializeURL.call(this);\n}, { enumerable: true });\n\nif (NativeURL) {\n var nativeCreateObjectURL = NativeURL.createObjectURL;\n var nativeRevokeObjectURL = NativeURL.revokeObjectURL;\n // `URL.createObjectURL` method\n // https://developer.mozilla.org/en-US/docs/Web/API/URL/createObjectURL\n // eslint-disable-next-line no-unused-vars\n if (nativeCreateObjectURL) redefine(URLConstructor, 'createObjectURL', function createObjectURL(blob) {\n return nativeCreateObjectURL.apply(NativeURL, arguments);\n });\n // `URL.revokeObjectURL` method\n // https://developer.mozilla.org/en-US/docs/Web/API/URL/revokeObjectURL\n // eslint-disable-next-line no-unused-vars\n if (nativeRevokeObjectURL) redefine(URLConstructor, 'revokeObjectURL', function revokeObjectURL(url) {\n return nativeRevokeObjectURL.apply(NativeURL, arguments);\n });\n}\n\nsetToStringTag(URLConstructor, 'URL');\n\n$({ global: true, forced: !USE_NATIVE_URL, sham: !DESCRIPTORS }, {\n URL: URLConstructor\n});\n","const iframe = document.getElementById('iframe');\nconst overview = document.getElementById('overview');\nconst metaDescription = document.querySelector('meta[name=\"description\"]');\nconst urlParams = new URLSearchParams(window.location.search);\nconst pageId = urlParams.get('id');\nconst title = document.getElementById('overview-title');\n\nconst examples = [\n {\n id: 'stations-around',\n url: '/stations/',\n title: 'Chargetrip API: Stations around example',\n description: 'Query stations around a GeoJSON point with the Chargetrip API.',\n },\n {\n id: 'station-details',\n url: '/station-info/',\n title: 'Chargetrip API: Station example',\n description: 'Query particular station with the Chargetrip API.',\n },\n {\n id: 'car-list',\n url: '/car-list/',\n title: 'Chargetrip API: Query the car list example',\n description: 'Query the list of cars with Chargetrip API and lazy load the next set',\n },\n {\n id: 'car-details',\n url: '/car/',\n title: 'Chargetrip API: Query the car example',\n description: 'Query the list of cars with Chargetrip API and compare the models',\n },\n {\n id: 'tile-server',\n url: '/tile-server/',\n title: 'Chargetrip API: Tile Service example using the mvt response',\n description:\n 'Show charging stations on the map with the Chargetrip API and the mvt response from Chargetrip Tile Service',\n },\n {\n id: 'tile-json',\n url: '/tile-json/',\n title: 'Chargetrip API: Tile Service example using the GeoJSON response',\n description:\n 'Show charging stations on the map with the Chargetrip API and the GeoJSON response from Chargetrip Tile Service',\n },\n {\n id: 'route',\n url: '/route/',\n title: 'Chargetrip API: Build a route example',\n description: 'Example of how to request a route and show it on a map.',\n },\n {\n id: 'stations-along-route',\n url: '/stations-along-route/',\n title: 'Chargetrip API: Stations along route example',\n description: 'Build a route with the Chargetrip API and display stations along the route.',\n },\n {\n id: 'alternative-routes',\n url: '/alternative-routes/',\n title: 'Chargetrip API: Alternative routes example',\n description: 'Plot alternative routes between two locations.',\n },\n {\n id: 'preferred-operator',\n url: '/preferred-operator/',\n title: 'Chargetrip API: Preferred operators example',\n description: 'Construct a route based on operator preference or operator exclusion.',\n },\n {\n id: 'elevation-plot',\n url: '/elevation-plot/',\n title: 'Chargetrip API: Elevation plot example',\n description: 'Build a route with the Chargetrip API and show elevation data',\n },\n {\n id: 'state-of-charge',\n url: '/state-of-charge/',\n title: 'Chargetrip API: Impact of SoC changes example',\n description: 'Update a route based on the state of charge at departure',\n },\n {\n id: 'battery-capacity',\n url: '/battery-capacity/',\n title: 'Chargetrip API: Impact of battery capacity changes example',\n description: 'Update a route based on the battery capacity at departure',\n },\n {\n id: 'isolines',\n url: '/isolines/',\n title: 'Chargetrip API: Rendering the range of a vehicle on a map',\n description: 'Use isolines to show how far an electric vehicle can travel from a specific origin',\n },\n];\n\nconst page = examples.filter(value => value.id === pageId)[0];\n\nif (page) {\n iframe.src = page.url;\n\n document.title = page.title;\n metaDescription.setAttribute('content', page.description);\n} else {\n iframe.style.display = 'none';\n overview.style.display = 'grid';\n title.style.display = 'block';\n\n document.title = 'Chargetrip API examples';\n metaDescription.setAttribute(\n 'content',\n 'Discover how to work with the Chargetrip API by exploring any of our examples.',\n );\n}\n\nconst isLoggedIn = () => {\n const signIn = document.getElementById('sign-in');\n const signUp = document.getElementById('sign-up');\n\n const cookies = document.cookie;\n const accessToken = cookies.match('(^|;)\\\\s*' + 'access_token' + '\\\\s*=\\\\s*([^;]+)')?.pop();\n\n if (accessToken === undefined) return;\n\n signUp.remove();\n signIn.href = 'https://account.chargetrip.com/';\n [...signIn.childNodes][1].style.stroke = '#0078FF';\n [...signIn.childNodes][3].innerHTML = 'Account';\n};\n\nisLoggedIn();\n"],"names":["global","classof","IndexedObject","document","DESCRIPTORS","createElement","IE8_DOM_DEFINE","propertyIsEnumerableModule","definePropertyModule","store","WeakMap","has","NATIVE_WEAK_MAP","objectHas","InternalStateModule","min","require$$0","hiddenKeys","internalObjectKeys","getOwnPropertyNamesModule","getOwnPropertySymbolsModule","getOwnPropertyDescriptorModule","getOwnPropertyDescriptor","isForced","NATIVE_SYMBOL","defineProperties","toString","Symbol","USE_SYMBOL_AS_UID","wrappedWellKnownSymbolModule","defineProperty","aFunction","createMethod","bind","PROTOTYPE","nativeGetOwnPropertyDescriptor","nativeDefineProperty","nativeGetOwnPropertyNames","getOwnPropertyNamesExternal","nativePropertyIsEnumerable","WellKnownSymbolsStore","nativeObjectCreate","$","userAgent","SPECIES","V8_VERSION","create","IE_PROTO","ObjectPrototype","CORRECT_PROTOTYPE_GETTER","getPrototypeOf","IteratorPrototype","returnThis","Iterators","IteratorsCore","BUGGY_SAFARI_ITERATORS","ITERATOR","setPrototypeOf","setInternalState","getInternalState","TO_STRING_TAG","TO_STRING_TAG_SUPPORT","UNSUPPORTED_Y","stickyHelpers","exec","charAt","fixRegExpWellKnownSymbolLogic","regExpExec","ArrayIteratorMethods","DOMIterables","IS_PURE","ArrayPrototype","floor","hasOwn","USE_NATIVE_URL","require$$1","URLSearchParams","URLSearchParamsModule","toASCII","assign","iframe","getElementById","overview","metaDescription","querySelector","urlParams","window","location","search","pageId","get","title","examples","id","url","description","page","filter","value","src","setAttribute","style","display","isLoggedIn","signIn","signUp","cookies","cookie","accessToken","match","pop","undefined","remove","href","childNodes","stroke","innerHTML"],"mappings":"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"} \ No newline at end of file diff --git a/public/index.html b/public/index.html index 9e85f0b..877d741 100644 --- a/public/index.html +++ b/public/index.html @@ -16,6 +16,9 @@
  • Alternative routes
  • +
  • + Amenities on route +
  • Battery capacity
  • diff --git a/rollup.config.js b/rollup.config.js index e6ff2c9..0844cfc 100644 --- a/rollup.config.js +++ b/rollup.config.js @@ -135,6 +135,15 @@ export default [ }, plugins, }, + { + input: 'examples/3.routes/9.amenities-on-route/index.js', + output: { + file: 'public/amenities-on-route/bundle.js', + format: 'iife', + sourcemap: true, + }, + plugins, + }, { input: 'examples/4.tile-service/1.tile-server/index.js', output: {