From eb2c0f7f6a988c0a8f024fbfeafea6bd48b0f4af Mon Sep 17 00:00:00 2001 From: Max Caluva Date: Mon, 2 Oct 2017 19:00:00 -0300 Subject: [PATCH 01/35] Added shovelling line (#85) --- src/funnies.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/funnies.js b/src/funnies.js index db51b63..865b64b 100644 --- a/src/funnies.js +++ b/src/funnies.js @@ -195,5 +195,6 @@ export default [ "Downloading more RAM..", "Updating to Windows Vista...", "Deleting System32 folder", - "Hiding all ;'s in your code" + "Hiding all ;'s in your code", + "Shovelling coal into the server" ]; From d919c55100ac058c8445b6f217ce1b4a2faca533 Mon Sep 17 00:00:00 2001 From: Talitha Pumar Date: Mon, 2 Oct 2017 19:00:52 -0300 Subject: [PATCH 02/35] Added more funnies (#84) --- src/funnies.js | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/funnies.js b/src/funnies.js index 865b64b..3e62cdf 100644 --- a/src/funnies.js +++ b/src/funnies.js @@ -196,5 +196,10 @@ export default [ "Updating to Windows Vista...", "Deleting System32 folder", "Hiding all ;'s in your code", - "Shovelling coal into the server" + "When nothing is going right, go left!", + "Never let a computer know you're in a hurry.", + "A computer will do what you tell it to do, but that may be much different from what you had in mind.", + "Some things man was never meant to know. For everything else, there's Google.", + "Unix is user-friendly. It's just very selective about who its friends are." + "Shovelling coal into the server", ]; From 7cc2920c42245057e462829f2d5173719305f663 Mon Sep 17 00:00:00 2001 From: jeremytbrun Date: Mon, 2 Oct 2017 18:01:47 -0400 Subject: [PATCH 03/35] My funnies (#83) --- src/funnies.js | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/funnies.js b/src/funnies.js index 3e62cdf..774d8fa 100644 --- a/src/funnies.js +++ b/src/funnies.js @@ -196,6 +196,11 @@ export default [ "Updating to Windows Vista...", "Deleting System32 folder", "Hiding all ;'s in your code", + "Initializing the initializer...", + "When was the last time you dusted around here?", + "Optimizing the optimizer...", + "Last call for the data bus! All aboard!", + "Running swag sticker detection...", "When nothing is going right, go left!", "Never let a computer know you're in a hurry.", "A computer will do what you tell it to do, but that may be much different from what you had in mind.", From 9e7a4ce20148da23faf01653b195f4b6ee7cc3d8 Mon Sep 17 00:00:00 2001 From: Andre van Tonder Date: Tue, 3 Oct 2017 06:02:40 +0800 Subject: [PATCH 04/35] added 1 funny (#82) --- src/funnies.js | 1 + 1 file changed, 1 insertion(+) diff --git a/src/funnies.js b/src/funnies.js index 774d8fa..4aff068 100644 --- a/src/funnies.js +++ b/src/funnies.js @@ -196,6 +196,7 @@ export default [ "Updating to Windows Vista...", "Deleting System32 folder", "Hiding all ;'s in your code", + "Alt-F4 speeds things up.", "Initializing the initializer...", "When was the last time you dusted around here?", "Optimizing the optimizer...", From b25b6cb31fce0373cff4b6fb882d82ca8ad11942 Mon Sep 17 00:00:00 2001 From: Ryan Gaus Date: Tue, 3 Oct 2017 07:08:33 -0400 Subject: [PATCH 05/35] chore: removed a couple political funnies (#87) * chore: removed a couple political funnies I've let a couple slip through in the past and I think it's better that these stay less political so everyone can find them funny. * chore: add comma --- src/funnies.js | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/src/funnies.js b/src/funnies.js index 4aff068..4fa1520 100644 --- a/src/funnies.js +++ b/src/funnies.js @@ -65,7 +65,7 @@ export default [ "All I really need is a kilobit.", "I feel like im supposed to be loading something. . .", "What do you call 8 Hobbits? A Hobbyte.", - "Should have used a compiler language...", + "Should have used a compiled language...", "Is this Windows?", "Adjusting flux capacitor...", "Please wait until the sloth starts moving.", @@ -118,7 +118,6 @@ export default [ "May the forks be with you", "A commit a day keeps the mobs away", "This is not a joke, it's a commit.", - "Making America... great... again...", "Constructing additional pylons...", "Roping some seaturtles...", "Locating Jebediah Kerman...", @@ -163,7 +162,7 @@ export default [ "Kindly hold on as our intern quits vim...", "Winter is coming...", "Installing dependencies", - "Switching to the latest JS framework", + "Switching to the latest JS framework...", "Distracted by cat gifs", "Finding someone to hold my beer", "BRB, working on my side project", @@ -184,7 +183,7 @@ export default [ "Forget you saw that password I just typed into the IM ...", "What's under there?", "Your computer has a virus, it's name is Windows!", - "Go ahead, hold your breath and do ironman plank till loading complete", + "Go ahead, hold your breath and do an ironman plank till loading complete", "Bored of slow loading spinner, buy more RAM!", "Help, I'm trapped in a loader!", "What is the difference btwn a hippo and a zippo? One is really heavy, the other is a little lighter", @@ -206,6 +205,6 @@ export default [ "Never let a computer know you're in a hurry.", "A computer will do what you tell it to do, but that may be much different from what you had in mind.", "Some things man was never meant to know. For everything else, there's Google.", - "Unix is user-friendly. It's just very selective about who its friends are." + "Unix is user-friendly. It's just very selective about who its friends are.", "Shovelling coal into the server", ]; From a28878288515c826cdf1e58ba7531737ec3e5b8f Mon Sep 17 00:00:00 2001 From: Lien Phan Date: Tue, 3 Oct 2017 14:35:32 -0700 Subject: [PATCH 06/35] Update funnies.js (#88) --- src/funnies.js | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/funnies.js b/src/funnies.js index 4fa1520..33b4c8b 100644 --- a/src/funnies.js +++ b/src/funnies.js @@ -207,4 +207,6 @@ export default [ "Some things man was never meant to know. For everything else, there's Google.", "Unix is user-friendly. It's just very selective about who its friends are.", "Shovelling coal into the server", + "Pushing pixels...", + "How about this weather, eh?", ]; From 8806779a6c3748d52f4312a241130475dbcaba09 Mon Sep 17 00:00:00 2001 From: Andre van Tonder Date: Wed, 4 Oct 2017 08:31:11 +0800 Subject: [PATCH 07/35] Added 2 funnies (#89) --- src/funnies.js | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/funnies.js b/src/funnies.js index 33b4c8b..7486886 100644 --- a/src/funnies.js +++ b/src/funnies.js @@ -209,4 +209,6 @@ export default [ "Shovelling coal into the server", "Pushing pixels...", "How about this weather, eh?", + "Building a wall...", + "Everything is this universe is either a potato or not a potato", ]; From 52b63f13d39bf73eb8506cc31d9310119350af80 Mon Sep 17 00:00:00 2001 From: Garry Garcia Date: Wed, 4 Oct 2017 18:46:33 +0800 Subject: [PATCH 08/35] add funny phrase (#91) * add funny phrase * Added funny - line 214 --- src/funnies.js | 1 + 1 file changed, 1 insertion(+) diff --git a/src/funnies.js b/src/funnies.js index 7486886..9ffd5b9 100644 --- a/src/funnies.js +++ b/src/funnies.js @@ -211,4 +211,5 @@ export default [ "How about this weather, eh?", "Building a wall...", "Everything is this universe is either a potato or not a potato", + "The severity of your issue is always lower than you expected.", ]; From aa07926439ce19d828a5f6c11f33768c5474b5db Mon Sep 17 00:00:00 2001 From: Raphael Brasil Date: Sat, 7 Oct 2017 10:51:56 -0300 Subject: [PATCH 09/35] Fixes the name of gulp task on README. (#92) --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index d71b819..1534d24 100644 --- a/README.md +++ b/README.md @@ -10,7 +10,7 @@ A flexible way to add funny loading messages to webapps with optional react supp # Examples and Demo As of funnies `1.2.0`, funnies ships with examples. Take a look at https://1egoman.github.io/funnies/ or build them locally by cloning down this repository, then -running `npm install && gulp examples`. This will start up a local server on port 8080. +running `npm install && gulp example`. This will start up a local server on port 8080.

From 8f84678753573057bae57f46ad6c175f7ce814d4 Mon Sep 17 00:00:00 2001 From: Andre van Tonder Date: Mon, 9 Oct 2017 19:00:46 +0800 Subject: [PATCH 10/35] Added 4 funnies. (#94) --- src/funnies.js | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/funnies.js b/src/funnies.js index 9ffd5b9..296fce1 100644 --- a/src/funnies.js +++ b/src/funnies.js @@ -212,4 +212,8 @@ export default [ "Building a wall...", "Everything is this universe is either a potato or not a potato", "The severity of your issue is always lower than you expected.", + "Updating Updater...", + "Downloading Downloader...", + "Debugging Debugger...", + "Reading Terms and Conditions for you.", ]; From 0fbd513aa186cc3016545ad7ee6e478d41a36b79 Mon Sep 17 00:00:00 2001 From: aborysionek Date: Fri, 13 Oct 2017 12:11:16 +0200 Subject: [PATCH 11/35] Update funnies.js (#95) * Update funnies.js * Update funnies.js --- src/funnies.js | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/funnies.js b/src/funnies.js index 296fce1..f83bbe1 100644 --- a/src/funnies.js +++ b/src/funnies.js @@ -216,4 +216,16 @@ export default [ "Downloading Downloader...", "Debugging Debugger...", "Reading Terms and Conditions for you.", + "Digested cookies being baked again.", + "Live long and prosper.", + "There is no cow level, but there's a goat one!", + "Deleting all your hidden porn...", + "Running with scissors...", + "Definitely not a virus...", + "You may call me Steve.", + "All you had to do is to commit the damn funnies, CJ!", + "You seem like a nice person...", + "Coffee at my place, tommorow at 10A.M. - don't be late!", + "Work, work...", + "Patience! This is difficult, you know...", ]; From 9948efd9cc8273d34d403f922a88ddf250e1fd0d Mon Sep 17 00:00:00 2001 From: farque65 Date: Mon, 23 Oct 2017 06:54:32 -0400 Subject: [PATCH 12/35] added more funnies (#96) * added more funnies * Update funnies.js --- src/funnies.js | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/funnies.js b/src/funnies.js index f83bbe1..9b34bf7 100644 --- a/src/funnies.js +++ b/src/funnies.js @@ -78,6 +78,9 @@ export default [ "Putting the icing on the cake. The cake is not a lie...", "Cleaning off the cobwebs...", "Making sure all the i's have dots...", + "We are not liable for any broken screens as a result of waiting.", + "We need more dilithium crystals", + "Where did all the internets go", "Connecting Neurotoxin Storage Tank...", "Granting wishes...", "We are not liable for any broken screens as a result of waiting.", From 47f3602544781cba8d033001b73422411ba021ca Mon Sep 17 00:00:00 2001 From: Mike Foden Date: Thu, 26 Oct 2017 22:20:06 +1100 Subject: [PATCH 13/35] Extended list (#97) Added a new entry to improve product. :) --- src/funnies.js | 1 + 1 file changed, 1 insertion(+) diff --git a/src/funnies.js b/src/funnies.js index 9b34bf7..85f042b 100644 --- a/src/funnies.js +++ b/src/funnies.js @@ -231,4 +231,5 @@ export default [ "Coffee at my place, tommorow at 10A.M. - don't be late!", "Work, work...", "Patience! This is difficult, you know...", + "Discovering new ways of making you wait...", ]; From ed858f93fc51df68a005d5c47091eab225530cc1 Mon Sep 17 00:00:00 2001 From: Hampus Date: Sat, 28 Oct 2017 16:40:58 +0200 Subject: [PATCH 14/35] more messages (#99) --- src/funnies.js | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/funnies.js b/src/funnies.js index 85f042b..ee4cc0c 100644 --- a/src/funnies.js +++ b/src/funnies.js @@ -232,4 +232,7 @@ export default [ "Work, work...", "Patience! This is difficult, you know...", "Discovering new ways of making you wait...", + "Sorry we are busy catching em' all, we're done soon", + "TODO: Insert elevator music", + "Still faster than Windows update" ]; From de2bed648acd870d95de0a3040409394bb0c5067 Mon Sep 17 00:00:00 2001 From: Zack Date: Sun, 29 Oct 2017 22:48:31 +0200 Subject: [PATCH 15/35] #6 - Add funny phrases (#100) * Add some "jokes" * Made joke funnier! * Reverse accidental change of double- to singel-quotes --- src/funnies.js | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/funnies.js b/src/funnies.js index ee4cc0c..7594423 100644 --- a/src/funnies.js +++ b/src/funnies.js @@ -232,7 +232,11 @@ export default [ "Work, work...", "Patience! This is difficult, you know...", "Discovering new ways of making you wait...", + "Your time is very important to us. Please wait while we ignore you...", + "Time flies like an arrow; fruit flies like a banana", + "Two men walked into a bar; the third ducked...", + "Sooooo... Have you seen my vacation photos yet?", "Sorry we are busy catching em' all, we're done soon", "TODO: Insert elevator music", - "Still faster than Windows update" + "Still faster than Windows update", ]; From 6d8b6f78658417933e44ae2a53042c483ba245bc Mon Sep 17 00:00:00 2001 From: Alison Jo McCauley Date: Tue, 31 Oct 2017 19:21:29 -0400 Subject: [PATCH 16/35] typos (#103) * fixed typo line 216 * Typo line 188 * Typo line 101 * duplicate -- lines 81 and 86 (removed 86) --- src/funnies.js | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/src/funnies.js b/src/funnies.js index 7594423..5d0195c 100644 --- a/src/funnies.js +++ b/src/funnies.js @@ -83,7 +83,6 @@ export default [ "Where did all the internets go", "Connecting Neurotoxin Storage Tank...", "Granting wishes...", - "We are not liable for any broken screens as a result of waiting.", "Time flies when you’re having fun.", "Get some coffee and come back in ten minutes..", "Spinning the hamster…", @@ -98,7 +97,7 @@ export default [ "How did you get here?", "Wait, do you smell something burning?", "Computing the secret to life, the universe, and everything.", - "When nothing is going right, Go left!!...", + "When nothing is going right, go left!!...", "I love my job only when I'm on vacation...", "i'm not lazy, I'm just relaxed!!", "Never steal. The government hates competition....", @@ -185,7 +184,7 @@ export default [ "format C: ...", "Forget you saw that password I just typed into the IM ...", "What's under there?", - "Your computer has a virus, it's name is Windows!", + "Your computer has a virus, its name is Windows!", "Go ahead, hold your breath and do an ironman plank till loading complete", "Bored of slow loading spinner, buy more RAM!", "Help, I'm trapped in a loader!", @@ -213,7 +212,7 @@ export default [ "Pushing pixels...", "How about this weather, eh?", "Building a wall...", - "Everything is this universe is either a potato or not a potato", + "Everything in this universe is either a potato or not a potato", "The severity of your issue is always lower than you expected.", "Updating Updater...", "Downloading Downloader...", From 089e65cef5efeaabc374a2d08db6bd75a48f97fc Mon Sep 17 00:00:00 2001 From: Alison Jo McCauley Date: Tue, 31 Oct 2017 21:11:46 -0400 Subject: [PATCH 17/35] New funny (#104) --- src/funnies.js | 1 + 1 file changed, 1 insertion(+) diff --git a/src/funnies.js b/src/funnies.js index 5d0195c..942927c 100644 --- a/src/funnies.js +++ b/src/funnies.js @@ -238,4 +238,5 @@ export default [ "Sorry we are busy catching em' all, we're done soon", "TODO: Insert elevator music", "Still faster than Windows update", + "Composer hack: Waiting for reqs to be fetched is less frustrating if you add -vvv to your command.", ]; From c54fa8526f385fe858ec3cb55b6bc4f6904cd586 Mon Sep 17 00:00:00 2001 From: Ryan Gaus Date: Wed, 8 Nov 2017 06:24:49 -0500 Subject: [PATCH 18/35] code(react): remove explicit dependency on react At some point along the line, funnies ended up unintentionally requiring a dependency on react. Break out the react-only code into it's own module. --- docs/dist/docs/bundle.js | 8295 ++------------------------------------ docs/index.html | 2 +- docs/script.js | 8 +- src/index.js | 3 - src/react.js | 4 + 5 files changed, 358 insertions(+), 7954 deletions(-) diff --git a/docs/dist/docs/bundle.js b/docs/dist/docs/bundle.js index 3ec5151..44affee 100644 --- a/docs/dist/docs/bundle.js +++ b/docs/dist/docs/bundle.js @@ -1,7731 +1,16 @@ (function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o 1 && match[1]) || ''; - } - - function getSecondMatch(regex) { - var match = ua.match(regex); - return (match && match.length > 1 && match[2]) || ''; - } - - var iosdevice = getFirstMatch(/(ipod|iphone|ipad)/i).toLowerCase() - , likeAndroid = /like android/i.test(ua) - , android = !likeAndroid && /android/i.test(ua) - , nexusMobile = /nexus\s*[0-6]\s*/i.test(ua) - , nexusTablet = !nexusMobile && /nexus\s*[0-9]+/i.test(ua) - , chromeos = /CrOS/.test(ua) - , silk = /silk/i.test(ua) - , sailfish = /sailfish/i.test(ua) - , tizen = /tizen/i.test(ua) - , webos = /(web|hpw)os/i.test(ua) - , windowsphone = /windows phone/i.test(ua) - , samsungBrowser = /SamsungBrowser/i.test(ua) - , windows = !windowsphone && /windows/i.test(ua) - , mac = !iosdevice && !silk && /macintosh/i.test(ua) - , linux = !android && !sailfish && !tizen && !webos && /linux/i.test(ua) - , edgeVersion = getFirstMatch(/edge\/(\d+(\.\d+)?)/i) - , versionIdentifier = getFirstMatch(/version\/(\d+(\.\d+)?)/i) - , tablet = /tablet/i.test(ua) - , mobile = !tablet && /[^-]mobi/i.test(ua) - , xbox = /xbox/i.test(ua) - , result - - if (/opera/i.test(ua)) { - // an old Opera - result = { - name: 'Opera' - , opera: t - , version: versionIdentifier || getFirstMatch(/(?:opera|opr|opios)[\s\/](\d+(\.\d+)?)/i) - } - } else if (/opr|opios/i.test(ua)) { - // a new Opera - result = { - name: 'Opera' - , opera: t - , version: getFirstMatch(/(?:opr|opios)[\s\/](\d+(\.\d+)?)/i) || versionIdentifier - } - } - else if (/SamsungBrowser/i.test(ua)) { - result = { - name: 'Samsung Internet for Android' - , samsungBrowser: t - , version: versionIdentifier || getFirstMatch(/(?:SamsungBrowser)[\s\/](\d+(\.\d+)?)/i) - } - } - else if (/coast/i.test(ua)) { - result = { - name: 'Opera Coast' - , coast: t - , version: versionIdentifier || getFirstMatch(/(?:coast)[\s\/](\d+(\.\d+)?)/i) - } - } - else if (/yabrowser/i.test(ua)) { - result = { - name: 'Yandex Browser' - , yandexbrowser: t - , version: versionIdentifier || getFirstMatch(/(?:yabrowser)[\s\/](\d+(\.\d+)?)/i) - } - } - else if (/ucbrowser/i.test(ua)) { - result = { - name: 'UC Browser' - , ucbrowser: t - , version: getFirstMatch(/(?:ucbrowser)[\s\/](\d+(?:\.\d+)+)/i) - } - } - else if (/mxios/i.test(ua)) { - result = { - name: 'Maxthon' - , maxthon: t - , version: getFirstMatch(/(?:mxios)[\s\/](\d+(?:\.\d+)+)/i) - } - } - else if (/epiphany/i.test(ua)) { - result = { - name: 'Epiphany' - , epiphany: t - , version: getFirstMatch(/(?:epiphany)[\s\/](\d+(?:\.\d+)+)/i) - } - } - else if (/puffin/i.test(ua)) { - result = { - name: 'Puffin' - , puffin: t - , version: getFirstMatch(/(?:puffin)[\s\/](\d+(?:\.\d+)?)/i) - } - } - else if (/sleipnir/i.test(ua)) { - result = { - name: 'Sleipnir' - , sleipnir: t - , version: getFirstMatch(/(?:sleipnir)[\s\/](\d+(?:\.\d+)+)/i) - } - } - else if (/k-meleon/i.test(ua)) { - result = { - name: 'K-Meleon' - , kMeleon: t - , version: getFirstMatch(/(?:k-meleon)[\s\/](\d+(?:\.\d+)+)/i) - } - } - else if (windowsphone) { - result = { - name: 'Windows Phone' - , windowsphone: t - } - if (edgeVersion) { - result.msedge = t - result.version = edgeVersion - } - else { - result.msie = t - result.version = getFirstMatch(/iemobile\/(\d+(\.\d+)?)/i) - } - } - else if (/msie|trident/i.test(ua)) { - result = { - name: 'Internet Explorer' - , msie: t - , version: getFirstMatch(/(?:msie |rv:)(\d+(\.\d+)?)/i) - } - } else if (chromeos) { - result = { - name: 'Chrome' - , chromeos: t - , chromeBook: t - , chrome: t - , version: getFirstMatch(/(?:chrome|crios|crmo)\/(\d+(\.\d+)?)/i) - } - } else if (/chrome.+? edge/i.test(ua)) { - result = { - name: 'Microsoft Edge' - , msedge: t - , version: edgeVersion - } - } - else if (/vivaldi/i.test(ua)) { - result = { - name: 'Vivaldi' - , vivaldi: t - , version: getFirstMatch(/vivaldi\/(\d+(\.\d+)?)/i) || versionIdentifier - } - } - else if (sailfish) { - result = { - name: 'Sailfish' - , sailfish: t - , version: getFirstMatch(/sailfish\s?browser\/(\d+(\.\d+)?)/i) - } - } - else if (/seamonkey\//i.test(ua)) { - result = { - name: 'SeaMonkey' - , seamonkey: t - , version: getFirstMatch(/seamonkey\/(\d+(\.\d+)?)/i) - } - } - else if (/firefox|iceweasel|fxios/i.test(ua)) { - result = { - name: 'Firefox' - , firefox: t - , version: getFirstMatch(/(?:firefox|iceweasel|fxios)[ \/](\d+(\.\d+)?)/i) - } - if (/\((mobile|tablet);[^\)]*rv:[\d\.]+\)/i.test(ua)) { - result.firefoxos = t - } - } - else if (silk) { - result = { - name: 'Amazon Silk' - , silk: t - , version : getFirstMatch(/silk\/(\d+(\.\d+)?)/i) - } - } - else if (/phantom/i.test(ua)) { - result = { - name: 'PhantomJS' - , phantom: t - , version: getFirstMatch(/phantomjs\/(\d+(\.\d+)?)/i) - } - } - else if (/slimerjs/i.test(ua)) { - result = { - name: 'SlimerJS' - , slimer: t - , version: getFirstMatch(/slimerjs\/(\d+(\.\d+)?)/i) - } - } - else if (/blackberry|\bbb\d+/i.test(ua) || /rim\stablet/i.test(ua)) { - result = { - name: 'BlackBerry' - , blackberry: t - , version: versionIdentifier || getFirstMatch(/blackberry[\d]+\/(\d+(\.\d+)?)/i) - } - } - else if (webos) { - result = { - name: 'WebOS' - , webos: t - , version: versionIdentifier || getFirstMatch(/w(?:eb)?osbrowser\/(\d+(\.\d+)?)/i) - }; - /touchpad\//i.test(ua) && (result.touchpad = t) - } - else if (/bada/i.test(ua)) { - result = { - name: 'Bada' - , bada: t - , version: getFirstMatch(/dolfin\/(\d+(\.\d+)?)/i) - }; - } - else if (tizen) { - result = { - name: 'Tizen' - , tizen: t - , version: getFirstMatch(/(?:tizen\s?)?browser\/(\d+(\.\d+)?)/i) || versionIdentifier - }; - } - else if (/qupzilla/i.test(ua)) { - result = { - name: 'QupZilla' - , qupzilla: t - , version: getFirstMatch(/(?:qupzilla)[\s\/](\d+(?:\.\d+)+)/i) || versionIdentifier - } - } - else if (/chromium/i.test(ua)) { - result = { - name: 'Chromium' - , chromium: t - , version: getFirstMatch(/(?:chromium)[\s\/](\d+(?:\.\d+)?)/i) || versionIdentifier - } - } - else if (/chrome|crios|crmo/i.test(ua)) { - result = { - name: 'Chrome' - , chrome: t - , version: getFirstMatch(/(?:chrome|crios|crmo)\/(\d+(\.\d+)?)/i) - } - } - else if (android) { - result = { - name: 'Android' - , version: versionIdentifier - } - } - else if (/safari|applewebkit/i.test(ua)) { - result = { - name: 'Safari' - , safari: t - } - if (versionIdentifier) { - result.version = versionIdentifier - } - } - else if (iosdevice) { - result = { - name : iosdevice == 'iphone' ? 'iPhone' : iosdevice == 'ipad' ? 'iPad' : 'iPod' - } - // WTF: version is not part of user agent in web apps - if (versionIdentifier) { - result.version = versionIdentifier - } - } - else if(/googlebot/i.test(ua)) { - result = { - name: 'Googlebot' - , googlebot: t - , version: getFirstMatch(/googlebot\/(\d+(\.\d+))/i) || versionIdentifier - } - } - else { - result = { - name: getFirstMatch(/^(.*)\/(.*) /), - version: getSecondMatch(/^(.*)\/(.*) /) - }; - } - - // set webkit or gecko flag for browsers based on these engines - if (!result.msedge && /(apple)?webkit/i.test(ua)) { - if (/(apple)?webkit\/537\.36/i.test(ua)) { - result.name = result.name || "Blink" - result.blink = t - } else { - result.name = result.name || "Webkit" - result.webkit = t - } - if (!result.version && versionIdentifier) { - result.version = versionIdentifier - } - } else if (!result.opera && /gecko\//i.test(ua)) { - result.name = result.name || "Gecko" - result.gecko = t - result.version = result.version || getFirstMatch(/gecko\/(\d+(\.\d+)?)/i) - } - - // set OS flags for platforms that have multiple browsers - if (!result.msedge && (android || result.silk)) { - result.android = t - } else if (iosdevice) { - result[iosdevice] = t - result.ios = t - } else if (mac) { - result.mac = t - } else if (xbox) { - result.xbox = t - } else if (windows) { - result.windows = t - } else if (linux) { - result.linux = t - } - - // OS version extraction - var osVersion = ''; - if (result.windowsphone) { - osVersion = getFirstMatch(/windows phone (?:os)?\s?(\d+(\.\d+)*)/i); - } else if (iosdevice) { - osVersion = getFirstMatch(/os (\d+([_\s]\d+)*) like mac os x/i); - osVersion = osVersion.replace(/[_\s]/g, '.'); - } else if (android) { - osVersion = getFirstMatch(/android[ \/-](\d+(\.\d+)*)/i); - } else if (result.webos) { - osVersion = getFirstMatch(/(?:web|hpw)os\/(\d+(\.\d+)*)/i); - } else if (result.blackberry) { - osVersion = getFirstMatch(/rim\stablet\sos\s(\d+(\.\d+)*)/i); - } else if (result.bada) { - osVersion = getFirstMatch(/bada\/(\d+(\.\d+)*)/i); - } else if (result.tizen) { - osVersion = getFirstMatch(/tizen[\/\s](\d+(\.\d+)*)/i); - } - if (osVersion) { - result.osversion = osVersion; - } - - // device type extraction - var osMajorVersion = osVersion.split('.')[0]; - if ( - tablet - || nexusTablet - || iosdevice == 'ipad' - || (android && (osMajorVersion == 3 || (osMajorVersion >= 4 && !mobile))) - || result.silk - ) { - result.tablet = t - } else if ( - mobile - || iosdevice == 'iphone' - || iosdevice == 'ipod' - || android - || nexusMobile - || result.blackberry - || result.webos - || result.bada - ) { - result.mobile = t - } - - // Graded Browser Support - // http://developer.yahoo.com/yui/articles/gbs - if (result.msedge || - (result.msie && result.version >= 10) || - (result.yandexbrowser && result.version >= 15) || - (result.vivaldi && result.version >= 1.0) || - (result.chrome && result.version >= 20) || - (result.samsungBrowser && result.version >= 4) || - (result.firefox && result.version >= 20.0) || - (result.safari && result.version >= 6) || - (result.opera && result.version >= 10.0) || - (result.ios && result.osversion && result.osversion.split(".")[0] >= 6) || - (result.blackberry && result.version >= 10.1) - || (result.chromium && result.version >= 20) - ) { - result.a = t; - } - else if ((result.msie && result.version < 10) || - (result.chrome && result.version < 20) || - (result.firefox && result.version < 20.0) || - (result.safari && result.version < 6) || - (result.opera && result.version < 10.0) || - (result.ios && result.osversion && result.osversion.split(".")[0] < 6) - || (result.chromium && result.version < 20) - ) { - result.c = t - } else result.x = t - - return result - } - - var bowser = detect(typeof navigator !== 'undefined' ? navigator.userAgent || '' : '') - - bowser.test = function (browserList) { - for (var i = 0; i < browserList.length; ++i) { - var browserItem = browserList[i]; - if (typeof browserItem=== 'string') { - if (browserItem in bowser) { - return true; - } - } - } - return false; - } - - /** - * Get version precisions count - * - * @example - * getVersionPrecision("1.10.3") // 3 - * - * @param {string} version - * @return {number} - */ - function getVersionPrecision(version) { - return version.split(".").length; - } - - /** - * Array::map polyfill - * - * @param {Array} arr - * @param {Function} iterator - * @return {Array} - */ - function map(arr, iterator) { - var result = [], i; - if (Array.prototype.map) { - return Array.prototype.map.call(arr, iterator); - } - for (i = 0; i < arr.length; i++) { - result.push(iterator(arr[i])); - } - return result; - } - - /** - * Calculate browser version weight - * - * @example - * compareVersions(['1.10.2.1', '1.8.2.1.90']) // 1 - * compareVersions(['1.010.2.1', '1.09.2.1.90']); // 1 - * compareVersions(['1.10.2.1', '1.10.2.1']); // 0 - * compareVersions(['1.10.2.1', '1.0800.2']); // -1 - * - * @param {Array} versions versions to compare - * @return {Number} comparison result - */ - function compareVersions(versions) { - // 1) get common precision for both versions, for example for "10.0" and "9" it should be 2 - var precision = Math.max(getVersionPrecision(versions[0]), getVersionPrecision(versions[1])); - var chunks = map(versions, function (version) { - var delta = precision - getVersionPrecision(version); - - // 2) "9" -> "9.0" (for precision = 2) - version = version + new Array(delta + 1).join(".0"); - - // 3) "9.0" -> ["000000000"", "000000009"] - return map(version.split("."), function (chunk) { - return new Array(20 - chunk.length).join("0") + chunk; - }).reverse(); - }); - - // iterate in reverse order by reversed chunks array - while (--precision >= 0) { - // 4) compare: "000000009" > "000000010" = false (but "9" > "10" = true) - if (chunks[0][precision] > chunks[1][precision]) { - return 1; - } - else if (chunks[0][precision] === chunks[1][precision]) { - if (precision === 0) { - // all version chunks are same - return 0; - } - } - else { - return -1; - } - } - } - - /** - * Check if browser is unsupported - * - * @example - * bowser.isUnsupportedBrowser({ - * msie: "10", - * firefox: "23", - * chrome: "29", - * safari: "5.1", - * opera: "16", - * phantom: "534" - * }); - * - * @param {Object} minVersions map of minimal version to browser - * @param {Boolean} [strictMode = false] flag to return false if browser wasn't found in map - * @param {String} [ua] user agent string - * @return {Boolean} - */ - function isUnsupportedBrowser(minVersions, strictMode, ua) { - var _bowser = bowser; - - // make strictMode param optional with ua param usage - if (typeof strictMode === 'string') { - ua = strictMode; - strictMode = void(0); - } - - if (strictMode === void(0)) { - strictMode = false; - } - if (ua) { - _bowser = detect(ua); - } - - var version = "" + _bowser.version; - for (var browser in minVersions) { - if (minVersions.hasOwnProperty(browser)) { - if (_bowser[browser]) { - // browser version and min supported version. - return compareVersions([version, minVersions[browser]]) < 0; - } - } - } - - return strictMode; // not found - } - - /** - * Check if browser is supported - * - * @param {Object} minVersions map of minimal version to browser - * @param {Boolean} [strictMode = false] flag to return false if browser wasn't found in map - * @param {String} [ua] user agent string - * @return {Boolean} - */ - function check(minVersions, strictMode, ua) { - return !isUnsupportedBrowser(minVersions, strictMode, ua); - } - - bowser.isUnsupportedBrowser = isUnsupportedBrowser; - bowser.compareVersions = compareVersions; - bowser.check = check; - - /* - * Set our detect method to the main bowser object so we can - * reuse it to test other user agents. - * This is needed to implement future tests. - */ - bowser._detect = detect; - - return bowser -}); - -},{}],2:[function(require,module,exports){ -/*! - Copyright (c) 2015 Jed Watson. - Based on code that is Copyright 2013-2015, Facebook, Inc. - All rights reserved. -*/ -/* global define */ - -(function () { - 'use strict'; - - var canUseDOM = !!( - typeof window !== 'undefined' && - window.document && - window.document.createElement - ); - - var ExecutionEnvironment = { - - canUseDOM: canUseDOM, - - canUseWorkers: typeof Worker !== 'undefined', - - canUseEventListeners: - canUseDOM && !!(window.addEventListener || window.attachEvent), - - canUseViewport: canUseDOM && !!window.screen - - }; - - if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) { - define(function () { - return ExecutionEnvironment; - }); - } else if (typeof module !== 'undefined' && module.exports) { - module.exports = ExecutionEnvironment; - } else { - window.ExecutionEnvironment = ExecutionEnvironment; - } - -}()); - -},{}],3:[function(require,module,exports){ -"use strict"; - -/** - * Copyright (c) 2013-present, Facebook, Inc. - * All rights reserved. - * - * This source code is licensed under the BSD-style license found in the - * LICENSE file in the root directory of this source tree. An additional grant - * of patent rights can be found in the PATENTS file in the same directory. - * - * - */ - -function makeEmptyFunction(arg) { - return function () { - return arg; - }; -} - -/** - * This function accepts and discards inputs; it has no side effects. This is - * primarily useful idiomatically for overridable function endpoints which - * always need to be callable, since JS lacks a null-call idiom ala Cocoa. - */ -var emptyFunction = function emptyFunction() {}; - -emptyFunction.thatReturns = makeEmptyFunction; -emptyFunction.thatReturnsFalse = makeEmptyFunction(false); -emptyFunction.thatReturnsTrue = makeEmptyFunction(true); -emptyFunction.thatReturnsNull = makeEmptyFunction(null); -emptyFunction.thatReturnsThis = function () { - return this; -}; -emptyFunction.thatReturnsArgument = function (arg) { - return arg; -}; - -module.exports = emptyFunction; -},{}],4:[function(require,module,exports){ -(function (process){ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * All rights reserved. - * - * This source code is licensed under the BSD-style license found in the - * LICENSE file in the root directory of this source tree. An additional grant - * of patent rights can be found in the PATENTS file in the same directory. - * - */ - -'use strict'; - -var emptyObject = {}; - -if (process.env.NODE_ENV !== 'production') { - Object.freeze(emptyObject); -} - -module.exports = emptyObject; -}).call(this,require('_process')) - -},{"_process":122}],5:[function(require,module,exports){ -(function (process){ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * All rights reserved. - * - * This source code is licensed under the BSD-style license found in the - * LICENSE file in the root directory of this source tree. An additional grant - * of patent rights can be found in the PATENTS file in the same directory. - * - */ - -'use strict'; - -/** - * Use invariant() to assert state which your program assumes to be true. - * - * Provide sprintf-style format (only %s is supported) and arguments - * to provide information about what broke and what you were - * expecting. - * - * The invariant message will be stripped in production, but the invariant - * will remain to ensure logic does not differ in production. - */ - -function invariant(condition, format, a, b, c, d, e, f) { - if (process.env.NODE_ENV !== 'production') { - if (format === undefined) { - throw new Error('invariant requires an error message argument'); - } - } - - if (!condition) { - var error; - if (format === undefined) { - error = new Error('Minified exception occurred; use the non-minified dev environment ' + 'for the full error message and additional helpful warnings.'); - } else { - var args = [a, b, c, d, e, f]; - var argIndex = 0; - error = new Error(format.replace(/%s/g, function () { - return args[argIndex++]; - })); - error.name = 'Invariant Violation'; - } - - error.framesToPop = 1; // we don't care about invariant's own frame - throw error; - } -} - -module.exports = invariant; -}).call(this,require('_process')) - -},{"_process":122}],6:[function(require,module,exports){ -(function (process){ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * All rights reserved. - * - * This source code is licensed under the BSD-style license found in the - * LICENSE file in the root directory of this source tree. An additional grant - * of patent rights can be found in the PATENTS file in the same directory. - * - * @typechecks static-only - */ - -'use strict'; - -var invariant = require('./invariant'); - -/** - * Constructs an enumeration with keys equal to their value. - * - * For example: - * - * var COLORS = keyMirror({blue: null, red: null}); - * var myColor = COLORS.blue; - * var isColorValid = !!COLORS[myColor]; - * - * The last line could not be performed if the values of the generated enum were - * not equal to their keys. - * - * Input: {key1: val1, key2: val2} - * Output: {key1: key1, key2: key2} - * - * @param {object} obj - * @return {object} - */ -var keyMirror = function keyMirror(obj) { - var ret = {}; - var key; - !(obj instanceof Object && !Array.isArray(obj)) ? process.env.NODE_ENV !== 'production' ? invariant(false, 'keyMirror(...): Argument must be an object.') : invariant(false) : void 0; - for (key in obj) { - if (!obj.hasOwnProperty(key)) { - continue; - } - ret[key] = key; - } - return ret; -}; - -module.exports = keyMirror; -}).call(this,require('_process')) - -},{"./invariant":5,"_process":122}],7:[function(require,module,exports){ -"use strict"; - -/** - * Copyright (c) 2013-present, Facebook, Inc. - * All rights reserved. - * - * This source code is licensed under the BSD-style license found in the - * LICENSE file in the root directory of this source tree. An additional grant - * of patent rights can be found in the PATENTS file in the same directory. - * - */ - -/** - * Allows extraction of a minified key. Let's the build system minify keys - * without losing the ability to dynamically use key strings as values - * themselves. Pass in an object with a single key/val pair and it will return - * you the string key of that single record. Suppose you want to grab the - * value for a key 'className' inside of an object. Key/val minification may - * have aliased that key to be 'xa12'. keyOf({className: null}) will return - * 'xa12' in that case. Resolve keys you want to use once at startup time, then - * reuse those resolutions. - */ -var keyOf = function keyOf(oneKeyObj) { - var key; - for (key in oneKeyObj) { - if (!oneKeyObj.hasOwnProperty(key)) { - continue; - } - return key; - } - return null; -}; - -module.exports = keyOf; -},{}],8:[function(require,module,exports){ -(function (process){ -/** - * Copyright 2014-2015, Facebook, Inc. - * All rights reserved. - * - * This source code is licensed under the BSD-style license found in the - * LICENSE file in the root directory of this source tree. An additional grant - * of patent rights can be found in the PATENTS file in the same directory. - * - */ - -'use strict'; - -var emptyFunction = require('./emptyFunction'); - -/** - * Similar to invariant but only logs a warning if the condition is not met. - * This can be used to log issues in development environments in critical - * paths. Removing the logging code for production environments will keep the - * same logic and follow the same code paths. - */ - -var warning = emptyFunction; - -if (process.env.NODE_ENV !== 'production') { - (function () { - var printWarning = function printWarning(format) { - for (var _len = arguments.length, args = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) { - args[_key - 1] = arguments[_key]; - } - - var argIndex = 0; - var message = 'Warning: ' + format.replace(/%s/g, function () { - return args[argIndex++]; - }); - if (typeof console !== 'undefined') { - console.error(message); - } - try { - // --- Welcome to debugging React --- - // This error was thrown as a convenience so that you can use this stack - // to find the callsite that caused this warning to fire. - throw new Error(message); - } catch (x) {} - }; - - warning = function warning(condition, format) { - if (format === undefined) { - throw new Error('`warning(condition, format, ...args)` requires a warning ' + 'message argument'); - } - - if (format.indexOf('Failed Composite propType: ') === 0) { - return; // Ignore CompositeComponent proptype check. - } - - if (!condition) { - for (var _len2 = arguments.length, args = Array(_len2 > 2 ? _len2 - 2 : 0), _key2 = 2; _key2 < _len2; _key2++) { - args[_key2 - 2] = arguments[_key2]; - } - - printWarning.apply(undefined, [format].concat(args)); - } - }; - })(); -} - -module.exports = warning; -}).call(this,require('_process')) - -},{"./emptyFunction":3,"_process":122}],9:[function(require,module,exports){ -'use strict'; - -Object.defineProperty(exports, '__esModule', { - value: true -}); -exports['default'] = calc; - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; } - -var _utilsJoinPrefixedRules = require('../utils/joinPrefixedRules'); - -var _utilsJoinPrefixedRules2 = _interopRequireDefault(_utilsJoinPrefixedRules); - -var _utilsIsPrefixedValue = require('../utils/isPrefixedValue'); - -var _utilsIsPrefixedValue2 = _interopRequireDefault(_utilsIsPrefixedValue); - -function calc(property, value) { - if (typeof value === 'string' && value.indexOf('calc(') > -1) { - if ((0, _utilsIsPrefixedValue2['default'])(value)) return; - - return (0, _utilsJoinPrefixedRules2['default'])(property, value, function (prefix, value) { - return value.replace(/calc\(/g, prefix + 'calc('); - }); - } -} - -module.exports = exports['default']; -},{"../utils/isPrefixedValue":22,"../utils/joinPrefixedRules":23}],10:[function(require,module,exports){ -'use strict'; - -Object.defineProperty(exports, '__esModule', { - value: true -}); -exports['default'] = cursor; - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; } - -var _utilsJoinPrefixedRules = require('../utils/joinPrefixedRules'); - -var _utilsJoinPrefixedRules2 = _interopRequireDefault(_utilsJoinPrefixedRules); - -var values = { - 'zoom-in': true, - 'zoom-out': true, - 'grab': true, - 'grabbing': true -}; - -function cursor(property, value) { - if (property === 'cursor' && values[value]) { - return (0, _utilsJoinPrefixedRules2['default'])(property, value); - } -} - -module.exports = exports['default']; -},{"../utils/joinPrefixedRules":23}],11:[function(require,module,exports){ -'use strict'; - -Object.defineProperty(exports, '__esModule', { - value: true -}); -exports['default'] = flex; - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; } - -var _utilsCamelToDashCase = require('../utils/camelToDashCase'); - -var _utilsCamelToDashCase2 = _interopRequireDefault(_utilsCamelToDashCase); - -var values = { flex: true, 'inline-flex': true }; - -function flex(property, value) { - if (property === 'display' && values[value]) { - return { - display: ['-webkit-box', '-moz-box', '-ms-' + value + 'box', '-webkit-' + value, value] - }; - } -} - -module.exports = exports['default']; -},{"../utils/camelToDashCase":20}],12:[function(require,module,exports){ -'use strict'; - -Object.defineProperty(exports, '__esModule', { - value: true -}); -exports['default'] = flexboxIE; - -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } - -var alternativeValues = { - 'space-around': 'distribute', - 'space-between': 'justify', - 'flex-start': 'start', - 'flex-end': 'end' -}; -var alternativeProps = { - alignContent: 'msFlexLinePack', - alignSelf: 'msFlexItemAlign', - alignItems: 'msFlexAlign', - justifyContent: 'msFlexPack', - order: 'msFlexOrder', - flexGrow: 'msFlexPositive', - flexShrink: 'msFlexNegative', - flexBasis: 'msPreferredSize' -}; - -function flexboxIE(property, value) { - if (alternativeProps[property]) { - return _defineProperty({}, alternativeProps[property], alternativeValues[value] || value); - } -} - -module.exports = exports['default']; -},{}],13:[function(require,module,exports){ -'use strict'; - -Object.defineProperty(exports, '__esModule', { - value: true -}); -exports['default'] = flexboxOld; - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; } - -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } - -var _utilsCamelToDashCase = require('../utils/camelToDashCase'); - -var _utilsCamelToDashCase2 = _interopRequireDefault(_utilsCamelToDashCase); - -var alternativeValues = { - 'space-around': 'justify', - 'space-between': 'justify', - 'flex-start': 'start', - 'flex-end': 'end', - 'wrap-reverse': 'multiple', - wrap: 'multiple' -}; - -var alternativeProps = { - alignItems: 'WebkitBoxAlign', - justifyContent: 'WebkitBoxPack', - flexWrap: 'WebkitBoxLines' -}; - -function flexboxOld(property, value) { - if (property === 'flexDirection') { - return { - WebkitBoxOrient: value.indexOf('column') > -1 ? 'vertical' : 'horizontal', - WebkitBoxDirection: value.indexOf('reverse') > -1 ? 'reverse' : 'normal' - }; - } - if (alternativeProps[property]) { - return _defineProperty({}, alternativeProps[property], alternativeValues[value] || value); - } -} - -module.exports = exports['default']; -},{"../utils/camelToDashCase":20}],14:[function(require,module,exports){ -'use strict'; - -Object.defineProperty(exports, '__esModule', { - value: true -}); -exports['default'] = gradient; - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; } - -var _utilsJoinPrefixedRules = require('../utils/joinPrefixedRules'); - -var _utilsJoinPrefixedRules2 = _interopRequireDefault(_utilsJoinPrefixedRules); - -var _utilsIsPrefixedValue = require('../utils/isPrefixedValue'); - -var _utilsIsPrefixedValue2 = _interopRequireDefault(_utilsIsPrefixedValue); - -var values = /linear-gradient|radial-gradient|repeating-linear-gradient|repeating-radial-gradient/; - -function gradient(property, value) { - if (typeof value === 'string' && value.match(values) !== null) { - if ((0, _utilsIsPrefixedValue2['default'])(value)) return; - - return (0, _utilsJoinPrefixedRules2['default'])(property, value); - } -} - -module.exports = exports['default']; -},{"../utils/isPrefixedValue":22,"../utils/joinPrefixedRules":23}],15:[function(require,module,exports){ -'use strict'; - -Object.defineProperty(exports, '__esModule', { - value: true -}); -exports['default'] = sizing; - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; } - -var _utilsJoinPrefixedRules = require('../utils/joinPrefixedRules'); - -var _utilsJoinPrefixedRules2 = _interopRequireDefault(_utilsJoinPrefixedRules); - -var properties = { - maxHeight: true, - maxWidth: true, - width: true, - height: true, - columnWidth: true, - minWidth: true, - minHeight: true -}; -var values = { - 'min-content': true, - 'max-content': true, - 'fill-available': true, - 'fit-content': true, - 'contain-floats': true -}; - -function sizing(property, value) { - if (properties[property] && values[value]) { - return (0, _utilsJoinPrefixedRules2['default'])(property, value); - } -} - -module.exports = exports['default']; -},{"../utils/joinPrefixedRules":23}],16:[function(require,module,exports){ -'use strict'; - -Object.defineProperty(exports, '__esModule', { - value: true -}); -exports['default'] = transition; - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; } - -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } - -var _utilsCamelToDashCase = require('../utils/camelToDashCase'); - -var _utilsCamelToDashCase2 = _interopRequireDefault(_utilsCamelToDashCase); - -var _utilsCapitalizeString = require('../utils/capitalizeString'); - -var _utilsCapitalizeString2 = _interopRequireDefault(_utilsCapitalizeString); - -var _utilsIsPrefixedValue = require('../utils/isPrefixedValue'); - -var _utilsIsPrefixedValue2 = _interopRequireDefault(_utilsIsPrefixedValue); - -var _prefixProps = require('../prefixProps'); - -var _prefixProps2 = _interopRequireDefault(_prefixProps); - -var properties = { - transition: true, - transitionProperty: true, - WebkitTransition: true, - WebkitTransitionProperty: true -}; - -function transition(property, value) { - // also check for already prefixed transitions - if (typeof value === 'string' && properties[property]) { - var _ref2; - - var outputValue = prefixValue(value); - var webkitOutput = outputValue.split(',').filter(function (value) { - return value.match(/-moz-|-ms-/) === null; - }).join(','); - - // if the property is already prefixed - if (property.indexOf('Webkit') > -1) { - return _defineProperty({}, property, webkitOutput); - } - - return _ref2 = {}, _defineProperty(_ref2, 'Webkit' + (0, _utilsCapitalizeString2['default'])(property), webkitOutput), _defineProperty(_ref2, property, outputValue), _ref2; - } -} - -function prefixValue(value) { - if ((0, _utilsIsPrefixedValue2['default'])(value)) { - return value; - } - - // only split multi values, not cubic beziers - var multipleValues = value.split(/,(?![^()]*(?:\([^()]*\))?\))/g); - - // iterate each single value and check for transitioned properties - // that need to be prefixed as well - multipleValues.forEach(function (val, index) { - multipleValues[index] = Object.keys(_prefixProps2['default']).reduce(function (out, prefix) { - var dashCasePrefix = '-' + prefix.toLowerCase() + '-'; - - Object.keys(_prefixProps2['default'][prefix]).forEach(function (prop) { - var dashCaseProperty = (0, _utilsCamelToDashCase2['default'])(prop); - - if (val.indexOf(dashCaseProperty) > -1) { - // join all prefixes and create a new value - out = val.replace(dashCaseProperty, dashCasePrefix + dashCaseProperty) + ',' + out; - } - }); - return out; - }, val); - }); - - return multipleValues.join(','); -} -module.exports = exports['default']; -},{"../prefixProps":18,"../utils/camelToDashCase":20,"../utils/capitalizeString":21,"../utils/isPrefixedValue":22}],17:[function(require,module,exports){ -'use strict'; - -Object.defineProperty(exports, '__esModule', { - value: true -}); -exports['default'] = prefixAll; - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; } - -var _prefixProps = require('./prefixProps'); - -var _prefixProps2 = _interopRequireDefault(_prefixProps); - -var _utilsCapitalizeString = require('./utils/capitalizeString'); - -var _utilsCapitalizeString2 = _interopRequireDefault(_utilsCapitalizeString); - -var _utilsAssign = require('./utils/assign'); - -var _utilsAssign2 = _interopRequireDefault(_utilsAssign); - -var _pluginsCalc = require('./plugins/calc'); - -var _pluginsCalc2 = _interopRequireDefault(_pluginsCalc); - -var _pluginsCursor = require('./plugins/cursor'); - -var _pluginsCursor2 = _interopRequireDefault(_pluginsCursor); - -var _pluginsFlex = require('./plugins/flex'); - -var _pluginsFlex2 = _interopRequireDefault(_pluginsFlex); - -var _pluginsSizing = require('./plugins/sizing'); - -var _pluginsSizing2 = _interopRequireDefault(_pluginsSizing); - -var _pluginsGradient = require('./plugins/gradient'); - -var _pluginsGradient2 = _interopRequireDefault(_pluginsGradient); - -var _pluginsTransition = require('./plugins/transition'); - -var _pluginsTransition2 = _interopRequireDefault(_pluginsTransition); - -// special flexbox specifications - -var _pluginsFlexboxIE = require('./plugins/flexboxIE'); - -var _pluginsFlexboxIE2 = _interopRequireDefault(_pluginsFlexboxIE); - -var _pluginsFlexboxOld = require('./plugins/flexboxOld'); - -var _pluginsFlexboxOld2 = _interopRequireDefault(_pluginsFlexboxOld); - -var plugins = [_pluginsCalc2['default'], _pluginsCursor2['default'], _pluginsSizing2['default'], _pluginsGradient2['default'], _pluginsTransition2['default'], _pluginsFlexboxIE2['default'], _pluginsFlexboxOld2['default'], _pluginsFlex2['default']]; - -/** - * Returns a prefixed version of the style object using all vendor prefixes - * @param {Object} styles - Style object that gets prefixed properties added - * @returns {Object} - Style object with prefixed properties and values - */ - -function prefixAll(styles) { - return Object.keys(styles).reduce(function (prefixedStyles, property) { - var value = styles[property]; - if (value instanceof Object && !Array.isArray(value)) { - // recurse through nested style objects - prefixedStyles[property] = prefixAll(value); - } else { - Object.keys(_prefixProps2['default']).forEach(function (prefix) { - var properties = _prefixProps2['default'][prefix]; - // add prefixes if needed - if (properties[property]) { - prefixedStyles[prefix + (0, _utilsCapitalizeString2['default'])(property)] = value; - } - }); - - // resolve every special plugins - plugins.forEach(function (plugin) { - return (0, _utilsAssign2['default'])(prefixedStyles, plugin(property, value)); - }); - } - - return prefixedStyles; - }, styles); -} - -module.exports = exports['default']; -},{"./plugins/calc":9,"./plugins/cursor":10,"./plugins/flex":11,"./plugins/flexboxIE":12,"./plugins/flexboxOld":13,"./plugins/gradient":14,"./plugins/sizing":15,"./plugins/transition":16,"./prefixProps":18,"./utils/assign":19,"./utils/capitalizeString":21}],18:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = { "Webkit": { "transform": true, "transformOrigin": true, "transformOriginX": true, "transformOriginY": true, "backfaceVisibility": true, "perspective": true, "perspectiveOrigin": true, "transformStyle": true, "transformOriginZ": true, "animation": true, "animationDelay": true, "animationDirection": true, "animationFillMode": true, "animationDuration": true, "animationIterationCount": true, "animationName": true, "animationPlayState": true, "animationTimingFunction": true, "appearance": true, "userSelect": true, "fontKerning": true, "textEmphasisPosition": true, "textEmphasis": true, "textEmphasisStyle": true, "textEmphasisColor": true, "boxDecorationBreak": true, "clipPath": true, "maskImage": true, "maskMode": true, "maskRepeat": true, "maskPosition": true, "maskClip": true, "maskOrigin": true, "maskSize": true, "maskComposite": true, "mask": true, "maskBorderSource": true, "maskBorderMode": true, "maskBorderSlice": true, "maskBorderWidth": true, "maskBorderOutset": true, "maskBorderRepeat": true, "maskBorder": true, "maskType": true, "textDecorationStyle": true, "textDecorationSkip": true, "textDecorationLine": true, "textDecorationColor": true, "filter": true, "fontFeatureSettings": true, "breakAfter": true, "breakBefore": true, "breakInside": true, "columnCount": true, "columnFill": true, "columnGap": true, "columnRule": true, "columnRuleColor": true, "columnRuleStyle": true, "columnRuleWidth": true, "columns": true, "columnSpan": true, "columnWidth": true, "flex": true, "flexBasis": true, "flexDirection": true, "flexGrow": true, "flexFlow": true, "flexShrink": true, "flexWrap": true, "alignContent": true, "alignItems": true, "alignSelf": true, "justifyContent": true, "order": true, "transition": true, "transitionDelay": true, "transitionDuration": true, "transitionProperty": true, "transitionTimingFunction": true, "backdropFilter": true, "scrollSnapType": true, "scrollSnapPointsX": true, "scrollSnapPointsY": true, "scrollSnapDestination": true, "scrollSnapCoordinate": true, "shapeImageThreshold": true, "shapeImageMargin": true, "shapeImageOutside": true, "hyphens": true, "flowInto": true, "flowFrom": true, "regionFragment": true, "textSizeAdjust": true, "borderImage": true, "borderImageOutset": true, "borderImageRepeat": true, "borderImageSlice": true, "borderImageSource": true, "borderImageWidth": true, "tabSize": true, "objectFit": true, "objectPosition": true }, "Moz": { "appearance": true, "userSelect": true, "boxSizing": true, "textAlignLast": true, "textDecorationStyle": true, "textDecorationSkip": true, "textDecorationLine": true, "textDecorationColor": true, "tabSize": true, "hyphens": true, "fontFeatureSettings": true, "breakAfter": true, "breakBefore": true, "breakInside": true, "columnCount": true, "columnFill": true, "columnGap": true, "columnRule": true, "columnRuleColor": true, "columnRuleStyle": true, "columnRuleWidth": true, "columns": true, "columnSpan": true, "columnWidth": true }, "ms": { "flex": true, "flexBasis": false, "flexDirection": true, "flexGrow": false, "flexFlow": true, "flexShrink": false, "flexWrap": true, "alignContent": false, "alignItems": false, "alignSelf": false, "justifyContent": false, "order": false, "transform": true, "transformOrigin": true, "transformOriginX": true, "transformOriginY": true, "userSelect": true, "wrapFlow": true, "wrapThrough": true, "wrapMargin": true, "scrollSnapType": true, "scrollSnapPointsX": true, "scrollSnapPointsY": true, "scrollSnapDestination": true, "scrollSnapCoordinate": true, "touchAction": true, "hyphens": true, "flowInto": true, "flowFrom": true, "breakBefore": true, "breakAfter": true, "breakInside": true, "regionFragment": true, "gridTemplateColumns": true, "gridTemplateRows": true, "gridTemplateAreas": true, "gridTemplate": true, "gridAutoColumns": true, "gridAutoRows": true, "gridAutoFlow": true, "grid": true, "gridRowStart": true, "gridColumnStart": true, "gridRowEnd": true, "gridRow": true, "gridColumn": true, "gridColumnEnd": true, "gridColumnGap": true, "gridRowGap": true, "gridArea": true, "gridGap": true, "textSizeAdjust": true } }; -module.exports = exports["default"]; -},{}],19:[function(require,module,exports){ -// leight polyfill for Object.assign -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -exports["default"] = function (base) { - var extend = arguments.length <= 1 || arguments[1] === undefined ? {} : arguments[1]; - return Object.keys(extend).reduce(function (out, key) { - base[key] = extend[key]; - return out; - }, {}); -}; - -module.exports = exports["default"]; -},{}],20:[function(require,module,exports){ -/** - * Converts a camel-case string to a dash-case string - * @param {string} str - str that gets converted to dash-case - */ -'use strict'; - -Object.defineProperty(exports, '__esModule', { - value: true -}); - -exports['default'] = function (str) { - return str.replace(/([a-z]|^)([A-Z])/g, function (match, p1, p2) { - return p1 + '-' + p2.toLowerCase(); - }).replace('ms-', '-ms-'); -}; - -module.exports = exports['default']; -},{}],21:[function(require,module,exports){ -// helper to capitalize strings -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -exports["default"] = function (str) { - return str.charAt(0).toUpperCase() + str.slice(1); -}; - -module.exports = exports["default"]; -},{}],22:[function(require,module,exports){ -'use strict'; - -Object.defineProperty(exports, '__esModule', { - value: true -}); - -exports['default'] = function (value) { - if (Array.isArray(value)) value = value.join(','); - - return value.match(/-webkit-|-moz-|-ms-/) !== null; -}; - -module.exports = exports['default']; -},{}],23:[function(require,module,exports){ -'use strict'; - -Object.defineProperty(exports, '__esModule', { - value: true -}); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; } - -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } - -var _camelToDashCase = require('./camelToDashCase'); - -var _camelToDashCase2 = _interopRequireDefault(_camelToDashCase); - -// returns a style object with a single concated prefixed value string - -exports['default'] = function (property, value) { - var replacer = arguments.length <= 2 || arguments[2] === undefined ? function (prefix, value) { - return prefix + value; - } : arguments[2]; - return (function () { - return _defineProperty({}, property, ['-webkit-', '-moz-', ''].map(function (prefix) { - return replacer(prefix, value); - })); - })(); -}; - -module.exports = exports['default']; -},{"./camelToDashCase":20}],24:[function(require,module,exports){ -'use strict'; - -Object.defineProperty(exports, '__esModule', { - value: true -}); - -var _createClass = (function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ('value' in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; })(); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } } - -var _inlineStylePrefixAll = require('inline-style-prefix-all'); - -var _inlineStylePrefixAll2 = _interopRequireDefault(_inlineStylePrefixAll); - -var _utilsGetBrowserInformation = require('./utils/getBrowserInformation'); - -var _utilsGetBrowserInformation2 = _interopRequireDefault(_utilsGetBrowserInformation); - -var _utilsGetPrefixedKeyframes = require('./utils/getPrefixedKeyframes'); - -var _utilsGetPrefixedKeyframes2 = _interopRequireDefault(_utilsGetPrefixedKeyframes); - -var _utilsCapitalizeString = require('./utils/capitalizeString'); - -var _utilsCapitalizeString2 = _interopRequireDefault(_utilsCapitalizeString); - -var _utilsAssign = require('./utils/assign'); - -var _utilsAssign2 = _interopRequireDefault(_utilsAssign); - -var _prefixProps = require('./prefixProps'); - -var _prefixProps2 = _interopRequireDefault(_prefixProps); - -var _pluginsCalc = require('./plugins/calc'); - -var _pluginsCalc2 = _interopRequireDefault(_pluginsCalc); - -var _pluginsCursor = require('./plugins/cursor'); - -var _pluginsCursor2 = _interopRequireDefault(_pluginsCursor); - -var _pluginsFlex = require('./plugins/flex'); - -var _pluginsFlex2 = _interopRequireDefault(_pluginsFlex); - -var _pluginsSizing = require('./plugins/sizing'); - -var _pluginsSizing2 = _interopRequireDefault(_pluginsSizing); - -var _pluginsGradient = require('./plugins/gradient'); - -var _pluginsGradient2 = _interopRequireDefault(_pluginsGradient); - -var _pluginsTransition = require('./plugins/transition'); - -var _pluginsTransition2 = _interopRequireDefault(_pluginsTransition); - -// special flexbox specifications - -var _pluginsFlexboxIE = require('./plugins/flexboxIE'); - -var _pluginsFlexboxIE2 = _interopRequireDefault(_pluginsFlexboxIE); - -var _pluginsFlexboxOld = require('./plugins/flexboxOld'); - -var _pluginsFlexboxOld2 = _interopRequireDefault(_pluginsFlexboxOld); - -var plugins = [_pluginsCalc2['default'], _pluginsCursor2['default'], _pluginsSizing2['default'], _pluginsGradient2['default'], _pluginsTransition2['default'], _pluginsFlexboxIE2['default'], _pluginsFlexboxOld2['default'], -// this must be run AFTER the flexbox specs -_pluginsFlex2['default']]; - -var Prefixer = (function () { - /** - * Instantiante a new prefixer - * @param {string} userAgent - userAgent to gather prefix information according to caniuse.com - * @param {string} keepUnprefixed - keeps unprefixed properties and values - */ - - function Prefixer() { - var _this = this; - - var options = arguments.length <= 0 || arguments[0] === undefined ? {} : arguments[0]; - - _classCallCheck(this, Prefixer); - - var defaultUserAgent = typeof navigator !== 'undefined' ? navigator.userAgent : undefined; - - this._userAgent = options.userAgent || defaultUserAgent; - this._keepUnprefixed = options.keepUnprefixed || false; - - this._browserInfo = (0, _utilsGetBrowserInformation2['default'])(this._userAgent); - - // Checks if the userAgent was resolved correctly - if (this._browserInfo && this._browserInfo.prefix) { - // set additional prefix information - this.cssPrefix = this._browserInfo.prefix.css; - this.jsPrefix = this._browserInfo.prefix.inline; - this.prefixedKeyframes = (0, _utilsGetPrefixedKeyframes2['default'])(this._browserInfo); - } else { - this._usePrefixAllFallback = true; - return false; - } - - var data = this._browserInfo.browser && _prefixProps2['default'][this._browserInfo.browser]; - if (data) { - this._requiresPrefix = Object.keys(data).filter(function (key) { - return data[key] >= _this._browserInfo.version; - }).reduce(function (result, name) { - result[name] = true; - return result; - }, {}); - this._hasPropsRequiringPrefix = Object.keys(this._requiresPrefix).length > 0; - } else { - this._usePrefixAllFallback = true; - } - } - - /** - * Returns a prefixed version of the style object - * @param {Object} styles - Style object that gets prefixed properties added - * @returns {Object} - Style object with prefixed properties and values - */ - - _createClass(Prefixer, [{ - key: 'prefix', - value: function prefix(styles) { - var _this2 = this; - - // use prefixAll as fallback if userAgent can not be resolved - if (this._usePrefixAllFallback) { - return (0, _inlineStylePrefixAll2['default'])(styles); - } - - // only add prefixes if needed - if (!this._hasPropsRequiringPrefix) { - return styles; - } - - styles = (0, _utilsAssign2['default'])({}, styles); - - Object.keys(styles).forEach(function (property) { - var value = styles[property]; - if (value instanceof Object) { - // recurse through nested style objects - styles[property] = _this2.prefix(value); - } else { - // add prefixes if needed - if (_this2._requiresPrefix[property]) { - styles[_this2.jsPrefix + (0, _utilsCapitalizeString2['default'])(property)] = value; - if (!_this2._keepUnprefixed) { - delete styles[property]; - } - } - - // resolve plugins - plugins.forEach(function (plugin) { - // generates a new plugin interface with current data - var resolvedStyles = plugin({ - property: property, - value: value, - styles: styles, - browserInfo: _this2._browserInfo, - prefix: { - js: _this2.jsPrefix, - css: _this2.cssPrefix, - keyframes: _this2.prefixedKeyframes - }, - keepUnprefixed: _this2._keepUnprefixed, - requiresPrefix: _this2._requiresPrefix - }); - (0, _utilsAssign2['default'])(styles, resolvedStyles); - }); - } - }); - - return styles; - } - - /** - * Returns a prefixed version of the style object using all vendor prefixes - * @param {Object} styles - Style object that gets prefixed properties added - * @returns {Object} - Style object with prefixed properties and values - */ - }], [{ - key: 'prefixAll', - value: function prefixAll(styles) { - return (0, _inlineStylePrefixAll2['default'])(styles); - } - }]); - - return Prefixer; -})(); - -exports['default'] = Prefixer; -module.exports = exports['default']; -},{"./plugins/calc":25,"./plugins/cursor":26,"./plugins/flex":27,"./plugins/flexboxIE":28,"./plugins/flexboxOld":29,"./plugins/gradient":30,"./plugins/sizing":31,"./plugins/transition":32,"./prefixProps":33,"./utils/assign":34,"./utils/capitalizeString":36,"./utils/getBrowserInformation":37,"./utils/getPrefixedKeyframes":38,"inline-style-prefix-all":17}],25:[function(require,module,exports){ -'use strict'; - -Object.defineProperty(exports, '__esModule', { - value: true -}); -exports['default'] = calc; - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; } - -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } - -var _utilsCamelToDashCase = require('../utils/camelToDashCase'); - -var _utilsCamelToDashCase2 = _interopRequireDefault(_utilsCamelToDashCase); - -function calc(_ref2) { - var property = _ref2.property; - var value = _ref2.value; - var _ref2$browserInfo = _ref2.browserInfo; - var browser = _ref2$browserInfo.browser; - var version = _ref2$browserInfo.version; - var css = _ref2.prefix.css; - var keepUnprefixed = _ref2.keepUnprefixed; - - if (typeof value === 'string' && value.indexOf('calc(') > -1 && (browser === 'firefox' && version < 15 || browser === 'chrome' && version < 25 || browser === 'safari' && version < 6.1 || browser === 'ios_saf' && version < 7)) { - return _defineProperty({}, property, value.replace(/calc\(/g, css + 'calc(') + (keepUnprefixed ? ';' + (0, _utilsCamelToDashCase2['default'])(property) + ':' + value : '')); - } -} - -module.exports = exports['default']; -},{"../utils/camelToDashCase":35}],26:[function(require,module,exports){ -'use strict'; - -Object.defineProperty(exports, '__esModule', { - value: true -}); -exports['default'] = cursor; - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; } - -var _utilsCamelToDashCase = require('../utils/camelToDashCase'); - -var _utilsCamelToDashCase2 = _interopRequireDefault(_utilsCamelToDashCase); - -var values = { - 'zoom-in': true, - 'zoom-out': true, - 'grab': true, - 'grabbing': true -}; - -function cursor(_ref) { - var property = _ref.property; - var value = _ref.value; - var _ref$browserInfo = _ref.browserInfo; - var browser = _ref$browserInfo.browser; - var version = _ref$browserInfo.version; - var css = _ref.prefix.css; - var keepUnprefixed = _ref.keepUnprefixed; - - if (property === 'cursor' && values[value] && (browser === 'firefox' && version < 24 || browser === 'chrome' && version < 37 || browser === 'safari' && version < 9 || browser === 'opera' && version < 24)) { - return { - cursor: css + value + (keepUnprefixed ? ';' + (0, _utilsCamelToDashCase2['default'])(property) + ':' + value : '') - }; - } -} - -module.exports = exports['default']; -},{"../utils/camelToDashCase":35}],27:[function(require,module,exports){ -'use strict'; - -Object.defineProperty(exports, '__esModule', { - value: true -}); -exports['default'] = flex; - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; } - -var _utilsCamelToDashCase = require('../utils/camelToDashCase'); - -var _utilsCamelToDashCase2 = _interopRequireDefault(_utilsCamelToDashCase); - -var values = { - 'flex': true, - 'inline-flex': true -}; - -function flex(_ref) { - var property = _ref.property; - var value = _ref.value; - var _ref$browserInfo = _ref.browserInfo; - var browser = _ref$browserInfo.browser; - var version = _ref$browserInfo.version; - var css = _ref.prefix.css; - var keepUnprefixed = _ref.keepUnprefixed; - - if (property === 'display' && values[value] && (browser === 'chrome' && version < 29 && version > 20 || (browser === 'safari' || browser === 'ios_saf') && version < 9 && version > 6 || browser === 'opera' && (version == 15 || version == 16))) { - return { - display: css + value + (keepUnprefixed ? ';' + (0, _utilsCamelToDashCase2['default'])(property) + ':' + value : '') - }; - } -} - -module.exports = exports['default']; -},{"../utils/camelToDashCase":35}],28:[function(require,module,exports){ -'use strict'; - -Object.defineProperty(exports, '__esModule', { - value: true -}); -exports['default'] = flexboxIE; - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; } - -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } - -var _utilsCamelToDashCase = require('../utils/camelToDashCase'); - -var _utilsCamelToDashCase2 = _interopRequireDefault(_utilsCamelToDashCase); - -var alternativeValues = { - 'space-around': 'distribute', - 'space-between': 'justify', - 'flex-start': 'start', - 'flex-end': 'end', - flex: 'flexbox', - 'inline-flex': 'inline-flexbox' -}; -var alternativeProps = { - alignContent: 'msFlexLinePack', - alignSelf: 'msFlexItemAlign', - alignItems: 'msFlexAlign', - justifyContent: 'msFlexPack', - order: 'msFlexOrder', - flexGrow: 'msFlexPositive', - flexShrink: 'msFlexNegative', - flexBasis: 'msPreferredSize' -}; - -var properties = Object.keys(alternativeProps).reduce(function (result, prop) { - result[prop] = true; - return result; -}, {}); - -function flexboxIE(_ref2) { - var property = _ref2.property; - var value = _ref2.value; - var styles = _ref2.styles; - var _ref2$browserInfo = _ref2.browserInfo; - var browser = _ref2$browserInfo.browser; - var version = _ref2$browserInfo.version; - var css = _ref2.prefix.css; - var keepUnprefixed = _ref2.keepUnprefixed; - - if ((properties[property] || property === 'display' && typeof value === 'string' && value.indexOf('flex') > -1) && (browser === 'ie_mob' || browser === 'ie') && version == 10) { - if (!keepUnprefixed) { - delete styles[property]; - } - if (property === 'display' && alternativeValues[value]) { - return { - display: css + alternativeValues[value] + (keepUnprefixed ? ';' + (0, _utilsCamelToDashCase2['default'])(property) + ':' + value : '') - }; - } - if (alternativeProps[property]) { - return _defineProperty({}, alternativeProps[property], alternativeValues[value] || value); - } - } -} - -module.exports = exports['default']; -},{"../utils/camelToDashCase":35}],29:[function(require,module,exports){ -'use strict'; - -Object.defineProperty(exports, '__esModule', { - value: true -}); -exports['default'] = flexboxOld; - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; } - -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } - -var _utilsCamelToDashCase = require('../utils/camelToDashCase'); - -var _utilsCamelToDashCase2 = _interopRequireDefault(_utilsCamelToDashCase); - -var alternativeValues = { - 'space-around': 'justify', - 'space-between': 'justify', - 'flex-start': 'start', - 'flex-end': 'end', - 'wrap-reverse': 'multiple', - wrap: 'multiple', - flex: 'box', - 'inline-flex': 'inline-box' -}; - -var alternativeProps = { - alignItems: 'WebkitBoxAlign', - justifyContent: 'WebkitBoxPack', - flexWrap: 'WebkitBoxLines' -}; - -var otherProps = ['alignContent', 'alignSelf', 'order', 'flexGrow', 'flexShrink', 'flexBasis', 'flexDirection']; - -var properties = Object.keys(alternativeProps).concat(otherProps).reduce(function (result, prop) { - result[prop] = true; - return result; -}, {}); - -function flexboxOld(_ref2) { - var property = _ref2.property; - var value = _ref2.value; - var styles = _ref2.styles; - var _ref2$browserInfo = _ref2.browserInfo; - var browser = _ref2$browserInfo.browser; - var version = _ref2$browserInfo.version; - var css = _ref2.prefix.css; - var keepUnprefixed = _ref2.keepUnprefixed; - - if ((properties[property] || property === 'display' && typeof value === 'string' && value.indexOf('flex') > -1) && (browser === 'firefox' && version < 22 || browser === 'chrome' && version < 21 || (browser === 'safari' || browser === 'ios_saf') && version <= 6.1 || browser === 'android' && version < 4.4 || browser === 'and_uc')) { - if (!keepUnprefixed) { - delete styles[property]; - } - if (property === 'flexDirection') { - return { - WebkitBoxOrient: value.indexOf('column') > -1 ? 'vertical' : 'horizontal', - WebkitBoxDirection: value.indexOf('reverse') > -1 ? 'reverse' : 'normal' - }; - } - if (property === 'display' && alternativeValues[value]) { - return { - display: css + alternativeValues[value] + (keepUnprefixed ? ';' + (0, _utilsCamelToDashCase2['default'])(property) + ':' + value : '') - }; - } - if (alternativeProps[property]) { - return _defineProperty({}, alternativeProps[property], alternativeValues[value] || value); - } - } -} - -module.exports = exports['default']; -},{"../utils/camelToDashCase":35}],30:[function(require,module,exports){ -'use strict'; - -Object.defineProperty(exports, '__esModule', { - value: true -}); -exports['default'] = gradient; - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; } - -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } - -var _utilsCamelToDashCase = require('../utils/camelToDashCase'); - -var _utilsCamelToDashCase2 = _interopRequireDefault(_utilsCamelToDashCase); - -var values = /linear-gradient|radial-gradient|repeating-linear-gradient|repeating-radial-gradient/; - -function gradient(_ref2) { - var property = _ref2.property; - var value = _ref2.value; - var _ref2$browserInfo = _ref2.browserInfo; - var browser = _ref2$browserInfo.browser; - var version = _ref2$browserInfo.version; - var css = _ref2.prefix.css; - var keepUnprefixed = _ref2.keepUnprefixed; - - if (typeof value === 'string' && value.match(values) !== null && (browser === 'firefox' && version < 16 || browser === 'chrome' && version < 26 || (browser === 'safari' || browser === 'ios_saf') && version < 7 || (browser === 'opera' || browser === 'op_mini') && version < 12.1 || browser === 'android' && version < 4.4 || browser === 'and_uc')) { - return _defineProperty({}, property, css + value + (keepUnprefixed ? ';' + (0, _utilsCamelToDashCase2['default'])(property) + ':' + value : '')); - } -} - -module.exports = exports['default']; -},{"../utils/camelToDashCase":35}],31:[function(require,module,exports){ -'use strict'; - -Object.defineProperty(exports, '__esModule', { - value: true -}); -exports['default'] = sizing; - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; } - -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } - -var _utilsCamelToDashCase = require('../utils/camelToDashCase'); - -var _utilsCamelToDashCase2 = _interopRequireDefault(_utilsCamelToDashCase); - -var properties = { - maxHeight: true, - maxWidth: true, - width: true, - height: true, - columnWidth: true, - minWidth: true, - minHeight: true -}; -var values = { - 'min-content': true, - 'max-content': true, - 'fill-available': true, - 'fit-content': true, - 'contain-floats': true -}; - -function sizing(_ref2) { - var property = _ref2.property; - var value = _ref2.value; - var css = _ref2.prefix.css; - var keepUnprefixed = _ref2.keepUnprefixed; - - // This might change in the future - // Keep an eye on it - if (properties[property] && values[value]) { - return _defineProperty({}, property, css + value + (keepUnprefixed ? ';' + (0, _utilsCamelToDashCase2['default'])(property) + ':' + value : '')); - } -} - -module.exports = exports['default']; -},{"../utils/camelToDashCase":35}],32:[function(require,module,exports){ -'use strict'; - -Object.defineProperty(exports, '__esModule', { - value: true -}); -exports['default'] = transition; - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; } - -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } - -var _utilsCamelToDashCase = require('../utils/camelToDashCase'); - -var _utilsCamelToDashCase2 = _interopRequireDefault(_utilsCamelToDashCase); - -var _utilsCapitalizeString = require('../utils/capitalizeString'); - -var _utilsCapitalizeString2 = _interopRequireDefault(_utilsCapitalizeString); - -var _utilsUnprefixProperty = require('../utils/unprefixProperty'); - -var _utilsUnprefixProperty2 = _interopRequireDefault(_utilsUnprefixProperty); - -var properties = { transition: true, transitionProperty: true }; - -function transition(_ref2) { - var property = _ref2.property; - var value = _ref2.value; - var css = _ref2.prefix.css; - var requiresPrefix = _ref2.requiresPrefix; - var keepUnprefixed = _ref2.keepUnprefixed; - - // also check for already prefixed transitions - var unprefixedProperty = (0, _utilsUnprefixProperty2['default'])(property); - if (typeof value === 'string' && properties[unprefixedProperty]) { - var _ret = (function () { - var requiresPrefixDashCased = Object.keys(requiresPrefix).map(function (prop) { - return (0, _utilsCamelToDashCase2['default'])(prop); - }); - - // only split multi values, not cubic beziers - var multipleValues = value.split(/,(?![^()]*(?:\([^()]*\))?\))/g); - - requiresPrefixDashCased.forEach(function (property) { - multipleValues.forEach(function (val, index) { - if (val.indexOf(property) > -1) { - multipleValues[index] = val.replace(property, css + property) + (keepUnprefixed ? ',' + val : ''); - } - }); - }); - - return { - v: _defineProperty({}, property, multipleValues.join(',')) - }; - })(); - - if (typeof _ret === 'object') return _ret.v; - } -} - -module.exports = exports['default']; -},{"../utils/camelToDashCase":35,"../utils/capitalizeString":36,"../utils/unprefixProperty":39}],33:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports["default"] = { "chrome": { "transform": 35, "transformOrigin": 35, "transformOriginX": 35, "transformOriginY": 35, "backfaceVisibility": 35, "perspective": 35, "perspectiveOrigin": 35, "transformStyle": 35, "transformOriginZ": 35, "animation": 42, "animationDelay": 42, "animationDirection": 42, "animationFillMode": 42, "animationDuration": 42, "animationIterationCount": 42, "animationName": 42, "animationPlayState": 42, "animationTimingFunction": 42, "appearance": 52, "userSelect": 52, "fontKerning": 32, "textEmphasisPosition": 52, "textEmphasis": 52, "textEmphasisStyle": 52, "textEmphasisColor": 52, "boxDecorationBreak": 52, "clipPath": 52, "maskImage": 52, "maskMode": 52, "maskRepeat": 52, "maskPosition": 52, "maskClip": 52, "maskOrigin": 52, "maskSize": 52, "maskComposite": 52, "mask": 52, "maskBorderSource": 52, "maskBorderMode": 52, "maskBorderSlice": 52, "maskBorderWidth": 52, "maskBorderOutset": 52, "maskBorderRepeat": 52, "maskBorder": 52, "maskType": 52, "textDecorationStyle": 52, "textDecorationSkip": 52, "textDecorationLine": 52, "textDecorationColor": 52, "filter": 52, "fontFeatureSettings": 47, "breakAfter": 52, "breakBefore": 52, "breakInside": 52, "columnCount": 52, "columnFill": 52, "columnGap": 52, "columnRule": 52, "columnRuleColor": 52, "columnRuleStyle": 52, "columnRuleWidth": 52, "columns": 52, "columnSpan": 52, "columnWidth": 52 }, "safari": { "flex": 8, "flexBasis": 8, "flexDirection": 8, "flexGrow": 8, "flexFlow": 8, "flexShrink": 8, "flexWrap": 8, "alignContent": 8, "alignItems": 8, "alignSelf": 8, "justifyContent": 8, "order": 8, "transition": 6, "transitionDelay": 6, "transitionDuration": 6, "transitionProperty": 6, "transitionTimingFunction": 6, "transform": 8, "transformOrigin": 8, "transformOriginX": 8, "transformOriginY": 8, "backfaceVisibility": 8, "perspective": 8, "perspectiveOrigin": 8, "transformStyle": 8, "transformOriginZ": 8, "animation": 8, "animationDelay": 8, "animationDirection": 8, "animationFillMode": 8, "animationDuration": 8, "animationIterationCount": 8, "animationName": 8, "animationPlayState": 8, "animationTimingFunction": 8, "appearance": 9.1, "userSelect": 9.1, "backdropFilter": 9.1, "fontKerning": 9.1, "scrollSnapType": 9.1, "scrollSnapPointsX": 9.1, "scrollSnapPointsY": 9.1, "scrollSnapDestination": 9.1, "scrollSnapCoordinate": 9.1, "textEmphasisPosition": 7, "textEmphasis": 7, "textEmphasisStyle": 7, "textEmphasisColor": 7, "boxDecorationBreak": 9.1, "clipPath": 9.1, "maskImage": 9.1, "maskMode": 9.1, "maskRepeat": 9.1, "maskPosition": 9.1, "maskClip": 9.1, "maskOrigin": 9.1, "maskSize": 9.1, "maskComposite": 9.1, "mask": 9.1, "maskBorderSource": 9.1, "maskBorderMode": 9.1, "maskBorderSlice": 9.1, "maskBorderWidth": 9.1, "maskBorderOutset": 9.1, "maskBorderRepeat": 9.1, "maskBorder": 9.1, "maskType": 9.1, "textDecorationStyle": 9.1, "textDecorationSkip": 9.1, "textDecorationLine": 9.1, "textDecorationColor": 9.1, "shapeImageThreshold": 9.1, "shapeImageMargin": 9.1, "shapeImageOutside": 9.1, "filter": 9, "hyphens": 9.1, "flowInto": 9.1, "flowFrom": 9.1, "breakBefore": 8, "breakAfter": 8, "breakInside": 8, "regionFragment": 9.1, "columnCount": 8, "columnFill": 8, "columnGap": 8, "columnRule": 8, "columnRuleColor": 8, "columnRuleStyle": 8, "columnRuleWidth": 8, "columns": 8, "columnSpan": 8, "columnWidth": 8 }, "firefox": { "appearance": 47, "userSelect": 47, "boxSizing": 28, "textAlignLast": 47, "textDecorationStyle": 35, "textDecorationSkip": 35, "textDecorationLine": 35, "textDecorationColor": 35, "tabSize": 47, "hyphens": 42, "fontFeatureSettings": 33, "breakAfter": 47, "breakBefore": 47, "breakInside": 47, "columnCount": 47, "columnFill": 47, "columnGap": 47, "columnRule": 47, "columnRuleColor": 47, "columnRuleStyle": 47, "columnRuleWidth": 47, "columns": 47, "columnSpan": 47, "columnWidth": 47 }, "opera": { "flex": 16, "flexBasis": 16, "flexDirection": 16, "flexGrow": 16, "flexFlow": 16, "flexShrink": 16, "flexWrap": 16, "alignContent": 16, "alignItems": 16, "alignSelf": 16, "justifyContent": 16, "order": 16, "transform": 22, "transformOrigin": 22, "transformOriginX": 22, "transformOriginY": 22, "backfaceVisibility": 22, "perspective": 22, "perspectiveOrigin": 22, "transformStyle": 22, "transformOriginZ": 22, "animation": 29, "animationDelay": 29, "animationDirection": 29, "animationFillMode": 29, "animationDuration": 29, "animationIterationCount": 29, "animationName": 29, "animationPlayState": 29, "animationTimingFunction": 29, "appearance": 37, "userSelect": 37, "fontKerning": 19, "textEmphasisPosition": 37, "textEmphasis": 37, "textEmphasisStyle": 37, "textEmphasisColor": 37, "boxDecorationBreak": 37, "clipPath": 37, "maskImage": 37, "maskMode": 37, "maskRepeat": 37, "maskPosition": 37, "maskClip": 37, "maskOrigin": 37, "maskSize": 37, "maskComposite": 37, "mask": 37, "maskBorderSource": 37, "maskBorderMode": 37, "maskBorderSlice": 37, "maskBorderWidth": 37, "maskBorderOutset": 37, "maskBorderRepeat": 37, "maskBorder": 37, "maskType": 37, "filter": 37, "fontFeatureSettings": 37, "breakAfter": 37, "breakBefore": 37, "breakInside": 37, "columnCount": 37, "columnFill": 37, "columnGap": 37, "columnRule": 37, "columnRuleColor": 37, "columnRuleStyle": 37, "columnRuleWidth": 37, "columns": 37, "columnSpan": 37, "columnWidth": 37 }, "ie": { "gridTemplateRows": 11, "breakInside": 11, "transformOriginY": 9, "gridRowStart": 11, "gridColumn": 11, "regionFragment": 11, "breakBefore": 11, "userSelect": 11, "gridColumnEnd": 11, "gridRowEnd": 11, "gridTemplateColumns": 11, "gridColumnStart": 11, "gridArea": 11, "flexDirection": 10, "gridRowGap": 11, "gridTemplateAreas": 11, "gridAutoRows": 11, "gridRow": 11, "scrollSnapDestination": 11, "scrollSnapPointsY": 11, "touchAction": 10, "gridGap": 11, "gridColumnGap": 11, "wrapFlow": 11, "scrollSnapPointsX": 11, "flowFrom": 11, "transform": 9, "breakAfter": 11, "wrapMargin": 11, "scrollSnapCoordinate": 11, "flexWrap": 10, "scrollSnapType": 11, "flex": 10, "wrapThrough": 11, "gridAutoColumns": 11, "flexFlow": 10, "gridTemplate": 11, "hyphens": 11, "grid": 11, "transformOriginX": 9, "flowInto": 11, "transformOrigin": 9, "gridAutoFlow": 11, "textSizeAdjust": 11 }, "edge": { "userSelect": 14, "wrapFlow": 14, "wrapThrough": 14, "wrapMargin": 14, "scrollSnapType": 14, "scrollSnapPointsX": 14, "scrollSnapPointsY": 14, "scrollSnapDestination": 14, "scrollSnapCoordinate": 14, "hyphens": 14, "flowInto": 14, "flowFrom": 14, "breakBefore": 14, "breakAfter": 14, "breakInside": 14, "regionFragment": 14, "gridTemplateColumns": 14, "gridTemplateRows": 14, "gridTemplateAreas": 14, "gridTemplate": 14, "gridAutoColumns": 14, "gridAutoRows": 14, "gridAutoFlow": 14, "grid": 14, "gridRowStart": 14, "gridColumnStart": 14, "gridRowEnd": 14, "gridRow": 14, "gridColumn": 14, "gridColumnEnd": 14, "gridColumnGap": 14, "gridRowGap": 14, "gridArea": 14, "gridGap": 14 }, "ios_saf": { "flex": 8.1, "flexBasis": 8.1, "flexDirection": 8.1, "flexGrow": 8.1, "flexFlow": 8.1, "flexShrink": 8.1, "flexWrap": 8.1, "alignContent": 8.1, "alignItems": 8.1, "alignSelf": 8.1, "justifyContent": 8.1, "order": 8.1, "transition": 6, "transitionDelay": 6, "transitionDuration": 6, "transitionProperty": 6, "transitionTimingFunction": 6, "transform": 8.1, "transformOrigin": 8.1, "transformOriginX": 8.1, "transformOriginY": 8.1, "backfaceVisibility": 8.1, "perspective": 8.1, "perspectiveOrigin": 8.1, "transformStyle": 8.1, "transformOriginZ": 8.1, "animation": 8.1, "animationDelay": 8.1, "animationDirection": 8.1, "animationFillMode": 8.1, "animationDuration": 8.1, "animationIterationCount": 8.1, "animationName": 8.1, "animationPlayState": 8.1, "animationTimingFunction": 8.1, "appearance": 9.3, "userSelect": 9.3, "backdropFilter": 9.3, "fontKerning": 9.3, "scrollSnapType": 9.3, "scrollSnapPointsX": 9.3, "scrollSnapPointsY": 9.3, "scrollSnapDestination": 9.3, "scrollSnapCoordinate": 9.3, "boxDecorationBreak": 9.3, "clipPath": 9.3, "maskImage": 9.3, "maskMode": 9.3, "maskRepeat": 9.3, "maskPosition": 9.3, "maskClip": 9.3, "maskOrigin": 9.3, "maskSize": 9.3, "maskComposite": 9.3, "mask": 9.3, "maskBorderSource": 9.3, "maskBorderMode": 9.3, "maskBorderSlice": 9.3, "maskBorderWidth": 9.3, "maskBorderOutset": 9.3, "maskBorderRepeat": 9.3, "maskBorder": 9.3, "maskType": 9.3, "textSizeAdjust": 9.3, "textDecorationStyle": 9.3, "textDecorationSkip": 9.3, "textDecorationLine": 9.3, "textDecorationColor": 9.3, "shapeImageThreshold": 9.3, "shapeImageMargin": 9.3, "shapeImageOutside": 9.3, "filter": 9, "hyphens": 9.3, "flowInto": 9.3, "flowFrom": 9.3, "breakBefore": 8.1, "breakAfter": 8.1, "breakInside": 8.1, "regionFragment": 9.3, "columnCount": 8.1, "columnFill": 8.1, "columnGap": 8.1, "columnRule": 8.1, "columnRuleColor": 8.1, "columnRuleStyle": 8.1, "columnRuleWidth": 8.1, "columns": 8.1, "columnSpan": 8.1, "columnWidth": 8.1 }, "android": { "borderImage": 4.2, "borderImageOutset": 4.2, "borderImageRepeat": 4.2, "borderImageSlice": 4.2, "borderImageSource": 4.2, "borderImageWidth": 4.2, "flex": 4.2, "flexBasis": 4.2, "flexDirection": 4.2, "flexGrow": 4.2, "flexFlow": 4.2, "flexShrink": 4.2, "flexWrap": 4.2, "alignContent": 4.2, "alignItems": 4.2, "alignSelf": 4.2, "justifyContent": 4.2, "order": 4.2, "transition": 4.2, "transitionDelay": 4.2, "transitionDuration": 4.2, "transitionProperty": 4.2, "transitionTimingFunction": 4.2, "transform": 4.4, "transformOrigin": 4.4, "transformOriginX": 4.4, "transformOriginY": 4.4, "backfaceVisibility": 4.4, "perspective": 4.4, "perspectiveOrigin": 4.4, "transformStyle": 4.4, "transformOriginZ": 4.4, "animation": 4.4, "animationDelay": 4.4, "animationDirection": 4.4, "animationFillMode": 4.4, "animationDuration": 4.4, "animationIterationCount": 4.4, "animationName": 4.4, "animationPlayState": 4.4, "animationTimingFunction": 4.4, "appearance": 47, "userSelect": 47, "fontKerning": 4.4, "textEmphasisPosition": 47, "textEmphasis": 47, "textEmphasisStyle": 47, "textEmphasisColor": 47, "boxDecorationBreak": 47, "clipPath": 47, "maskImage": 47, "maskMode": 47, "maskRepeat": 47, "maskPosition": 47, "maskClip": 47, "maskOrigin": 47, "maskSize": 47, "maskComposite": 47, "mask": 47, "maskBorderSource": 47, "maskBorderMode": 47, "maskBorderSlice": 47, "maskBorderWidth": 47, "maskBorderOutset": 47, "maskBorderRepeat": 47, "maskBorder": 47, "maskType": 47, "filter": 47, "fontFeatureSettings": 47, "breakAfter": 47, "breakBefore": 47, "breakInside": 47, "columnCount": 47, "columnFill": 47, "columnGap": 47, "columnRule": 47, "columnRuleColor": 47, "columnRuleStyle": 47, "columnRuleWidth": 47, "columns": 47, "columnSpan": 47, "columnWidth": 47 }, "and_chr": { "appearance": 47, "userSelect": 47, "textEmphasisPosition": 47, "textEmphasis": 47, "textEmphasisStyle": 47, "textEmphasisColor": 47, "boxDecorationBreak": 47, "clipPath": 47, "maskImage": 47, "maskMode": 47, "maskRepeat": 47, "maskPosition": 47, "maskClip": 47, "maskOrigin": 47, "maskSize": 47, "maskComposite": 47, "mask": 47, "maskBorderSource": 47, "maskBorderMode": 47, "maskBorderSlice": 47, "maskBorderWidth": 47, "maskBorderOutset": 47, "maskBorderRepeat": 47, "maskBorder": 47, "maskType": 47, "textDecorationStyle": 47, "textDecorationSkip": 47, "textDecorationLine": 47, "textDecorationColor": 47, "filter": 47, "fontFeatureSettings": 47, "breakAfter": 47, "breakBefore": 47, "breakInside": 47, "columnCount": 47, "columnFill": 47, "columnGap": 47, "columnRule": 47, "columnRuleColor": 47, "columnRuleStyle": 47, "columnRuleWidth": 47, "columns": 47, "columnSpan": 47, "columnWidth": 47 }, "and_uc": { "flex": 9.9, "flexBasis": 9.9, "flexDirection": 9.9, "flexGrow": 9.9, "flexFlow": 9.9, "flexShrink": 9.9, "flexWrap": 9.9, "alignContent": 9.9, "alignItems": 9.9, "alignSelf": 9.9, "justifyContent": 9.9, "order": 9.9, "transition": 9.9, "transitionDelay": 9.9, "transitionDuration": 9.9, "transitionProperty": 9.9, "transitionTimingFunction": 9.9, "transform": 9.9, "transformOrigin": 9.9, "transformOriginX": 9.9, "transformOriginY": 9.9, "backfaceVisibility": 9.9, "perspective": 9.9, "perspectiveOrigin": 9.9, "transformStyle": 9.9, "transformOriginZ": 9.9, "animation": 9.9, "animationDelay": 9.9, "animationDirection": 9.9, "animationFillMode": 9.9, "animationDuration": 9.9, "animationIterationCount": 9.9, "animationName": 9.9, "animationPlayState": 9.9, "animationTimingFunction": 9.9, "appearance": 9.9, "userSelect": 9.9, "fontKerning": 9.9, "textEmphasisPosition": 9.9, "textEmphasis": 9.9, "textEmphasisStyle": 9.9, "textEmphasisColor": 9.9, "maskImage": 9.9, "maskMode": 9.9, "maskRepeat": 9.9, "maskPosition": 9.9, "maskClip": 9.9, "maskOrigin": 9.9, "maskSize": 9.9, "maskComposite": 9.9, "mask": 9.9, "maskBorderSource": 9.9, "maskBorderMode": 9.9, "maskBorderSlice": 9.9, "maskBorderWidth": 9.9, "maskBorderOutset": 9.9, "maskBorderRepeat": 9.9, "maskBorder": 9.9, "maskType": 9.9, "textSizeAdjust": 9.9, "filter": 9.9, "hyphens": 9.9, "flowInto": 9.9, "flowFrom": 9.9, "breakBefore": 9.9, "breakAfter": 9.9, "breakInside": 9.9, "regionFragment": 9.9, "fontFeatureSettings": 9.9, "columnCount": 9.9, "columnFill": 9.9, "columnGap": 9.9, "columnRule": 9.9, "columnRuleColor": 9.9, "columnRuleStyle": 9.9, "columnRuleWidth": 9.9, "columns": 9.9, "columnSpan": 9.9, "columnWidth": 9.9 }, "op_mini": { "borderImage": 5, "borderImageOutset": 5, "borderImageRepeat": 5, "borderImageSlice": 5, "borderImageSource": 5, "borderImageWidth": 5, "tabSize": 5, "objectFit": 5, "objectPosition": 5 } }; -module.exports = exports["default"]; -},{}],34:[function(require,module,exports){ -// leight polyfill for Object.assign -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -exports["default"] = function (base) { - var extend = arguments.length <= 1 || arguments[1] === undefined ? {} : arguments[1]; - - Object.keys(extend).forEach(function (key) { - return base[key] = extend[key]; - }); - return base; -}; - -module.exports = exports["default"]; -},{}],35:[function(require,module,exports){ -arguments[4][20][0].apply(exports,arguments) -},{"dup":20}],36:[function(require,module,exports){ -arguments[4][21][0].apply(exports,arguments) -},{"dup":21}],37:[function(require,module,exports){ -'use strict'; - -Object.defineProperty(exports, '__esModule', { - value: true -}); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; } - -var _bowser = require('bowser'); - -var _bowser2 = _interopRequireDefault(_bowser); - -var vendorPrefixes = { - Webkit: ['chrome', 'safari', 'ios', 'android', 'phantom', 'opera', 'webos', 'blackberry', 'bada', 'tizen'], - Moz: ['firefox', 'seamonkey', 'sailfish'], - ms: ['msie', 'msedge'] -}; - -var browsers = { - chrome: [['chrome']], - safari: [['safari']], - firefox: [['firefox']], - ie: [['msie']], - edge: [['msedge']], - opera: [['opera']], - ios_saf: [['ios', 'mobile'], ['ios', 'tablet']], - ie_mob: [['windowsphone', 'mobile', 'msie'], ['windowsphone', 'tablet', 'msie'], ['windowsphone', 'mobile', 'msedge'], ['windowsphone', 'tablet', 'msedge']], - op_mini: [['opera', 'mobile'], ['opera', 'tablet']], - and_uc: [['android', 'mobile'], ['android', 'tablet']], - android: [['android', 'mobile'], ['android', 'tablet']] -}; - -/** - * Uses bowser to get default browser information such as version and name - * Evaluates bowser info and adds vendorPrefix information - * @param {string} userAgent - userAgent that gets evaluated - */ - -exports['default'] = function (userAgent) { - if (!userAgent) { - return false; - } - - var info = _bowser2['default']._detect(userAgent); - - Object.keys(vendorPrefixes).forEach(function (prefix) { - vendorPrefixes[prefix].forEach(function (browser) { - if (info[browser]) { - info.prefix = { - inline: prefix, - css: '-' + prefix.toLowerCase() + '-' - }; - } - }); - }); - - var name = ''; - Object.keys(browsers).forEach(function (browser) { - browsers[browser].forEach(function (condition) { - var match = 0; - condition.forEach(function (single) { - if (info[single]) { - match += 1; - } - }); - if (condition.length === match) { - name = browser; - } - }); - }); - - info.browser = name; - // For cordova IOS 8 the version is missing, set truncated osversion to prevent NaN - info.version = info.version ? parseFloat(info.version) : parseInt(parseFloat(info.osversion), 10); - - // seperate native android chrome - // https://github.com/rofrischmann/inline-style-prefixer/issues/45 - if (info.browser === 'android' && info.chrome && info.version > 37) { - info.browser = 'and_chr'; - } - info.version = parseFloat(info.version); - info.osversion = parseFloat(info.osversion); - // For android < 4.4 we want to check the osversion - // not the chrome version, see issue #26 - // https://github.com/rofrischmann/inline-style-prefixer/issues/26 - if (info.browser === 'android' && info.osversion < 5) { - info.version = info.osversion; - } - - return info; -}; - -module.exports = exports['default']; -},{"bowser":1}],38:[function(require,module,exports){ -'use strict'; - -Object.defineProperty(exports, '__esModule', { - value: true -}); - -exports['default'] = function (_ref) { - var browser = _ref.browser; - var version = _ref.version; - var prefix = _ref.prefix; - - var prefixedKeyframes = 'keyframes'; - - if (browser === 'chrome' && version < 43 || (browser === 'safari' || browser === 'ios_saf') && version < 9 || browser === 'opera' && version < 30 || browser === 'android' && version <= 4.4 || browser === 'and_uc') { - prefixedKeyframes = prefix.css + prefixedKeyframes; - } - return prefixedKeyframes; -}; - -module.exports = exports['default']; -},{}],39:[function(require,module,exports){ -'use strict'; - -Object.defineProperty(exports, '__esModule', { - value: true -}); - -exports['default'] = function (property) { - var unprefixed = property.replace(/^(ms|Webkit|Moz|O)/, ''); - return unprefixed.charAt(0).toLowerCase() + unprefixed.slice(1); -}; - -module.exports = exports['default']; -},{}],40:[function(require,module,exports){ -'use strict'; -/* eslint-disable no-unused-vars */ -var hasOwnProperty = Object.prototype.hasOwnProperty; -var propIsEnumerable = Object.prototype.propertyIsEnumerable; - -function toObject(val) { - if (val === null || val === undefined) { - throw new TypeError('Object.assign cannot be called with null or undefined'); - } - - return Object(val); -} - -function shouldUseNative() { - try { - if (!Object.assign) { - return false; - } - - // Detect buggy property enumeration order in older V8 versions. - - // https://bugs.chromium.org/p/v8/issues/detail?id=4118 - var test1 = new String('abc'); // eslint-disable-line - test1[5] = 'de'; - if (Object.getOwnPropertyNames(test1)[0] === '5') { - return false; - } - - // https://bugs.chromium.org/p/v8/issues/detail?id=3056 - var test2 = {}; - for (var i = 0; i < 10; i++) { - test2['_' + String.fromCharCode(i)] = i; - } - var order2 = Object.getOwnPropertyNames(test2).map(function (n) { - return test2[n]; - }); - if (order2.join('') !== '0123456789') { - return false; - } - - // https://bugs.chromium.org/p/v8/issues/detail?id=3056 - var test3 = {}; - 'abcdefghijklmnopqrst'.split('').forEach(function (letter) { - test3[letter] = letter; - }); - if (Object.keys(Object.assign({}, test3)).join('') !== - 'abcdefghijklmnopqrst') { - return false; - } - - return true; - } catch (e) { - // We don't expect any of the above to throw, but better to be safe. - return false; - } -} - -module.exports = shouldUseNative() ? Object.assign : function (target, source) { - var from; - var to = toObject(target); - var symbols; - - for (var s = 1; s < arguments.length; s++) { - from = Object(arguments[s]); - - for (var key in from) { - if (hasOwnProperty.call(from, key)) { - to[key] = from[key]; - } - } - - if (Object.getOwnPropertySymbols) { - symbols = Object.getOwnPropertySymbols(from); - for (var i = 0; i < symbols.length; i++) { - if (propIsEnumerable.call(from, symbols[i])) { - to[symbols[i]] = from[symbols[i]]; - } - } - } - } - - return to; -}; - -},{}],41:[function(require,module,exports){ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = appendImportantToEachValue; - -var _appendPxIfNeeded = require('./append-px-if-needed'); - -var _appendPxIfNeeded2 = _interopRequireDefault(_appendPxIfNeeded); - -var _mapObject = require('./map-object'); - -var _mapObject2 = _interopRequireDefault(_mapObject); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function appendImportantToEachValue(style) { - return (0, _mapObject2.default)(style, function (result, key) { - return (0, _appendPxIfNeeded2.default)(key, style[key]) + ' !important'; - }); -} -module.exports = exports['default']; -},{"./append-px-if-needed":42,"./map-object":54}],42:[function(require,module,exports){ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = appendPxIfNeeded; - - -// Copied from https://github.com/facebook/react/blob/ -// 102cd291899f9942a76c40a0e78920a6fe544dc1/ -// src/renderers/dom/shared/CSSProperty.js -var isUnitlessNumber = { - animationIterationCount: true, - boxFlex: true, - boxFlexGroup: true, - boxOrdinalGroup: true, - columnCount: true, - flex: true, - flexGrow: true, - flexPositive: true, - flexShrink: true, - flexNegative: true, - flexOrder: true, - gridRow: true, - gridColumn: true, - fontWeight: true, - lineClamp: true, - lineHeight: true, - opacity: true, - order: true, - orphans: true, - tabSize: true, - widows: true, - zIndex: true, - zoom: true, - - // SVG-related properties - fillOpacity: true, - stopOpacity: true, - strokeDashoffset: true, - strokeOpacity: true, - strokeWidth: true -}; - -function appendPxIfNeeded(propertyName, value) { - var needsPxSuffix = !isUnitlessNumber[propertyName] && typeof value === 'number' && value !== 0; - return needsPxSuffix ? value + 'px' : value; -} -module.exports = exports['default']; -},{}],43:[function(require,module,exports){ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - - -var _camelCaseRegex = /([a-z])?([A-Z])/g; - -var _camelCaseReplacer = function _camelCaseReplacer(match, p1, p2) { - return (p1 || '') + '-' + p2.toLowerCase(); -}; - -var _camelCaseToDashCase = function _camelCaseToDashCase(s) { - return s.replace(_camelCaseRegex, _camelCaseReplacer); -}; - -var camelCasePropsToDashCase = function camelCasePropsToDashCase(prefixedStyle) { - // Since prefix is expected to work on inline style objects, we must - // translate the keys to dash case for rendering to CSS. - return Object.keys(prefixedStyle).reduce(function (result, key) { - var dashCaseKey = _camelCaseToDashCase(key); - - // Fix IE vendor prefix - if (/^ms-/.test(dashCaseKey)) { - dashCaseKey = '-' + dashCaseKey; - } - - result[dashCaseKey] = prefixedStyle[key]; - return result; - }, {}); -}; - -exports.default = camelCasePropsToDashCase; -module.exports = exports['default']; -},{}],44:[function(require,module,exports){ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _react = require('react'); - -var _react2 = _interopRequireDefault(_react); - -var _enhancer = require('../enhancer'); - -var _enhancer2 = _interopRequireDefault(_enhancer); - -var _styleKeeper = require('../style-keeper'); - -var _styleKeeper2 = _interopRequireDefault(_styleKeeper); - -var _styleSheet = require('./style-sheet'); - -var _styleSheet2 = _interopRequireDefault(_styleSheet); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; } - -function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } - -function _getStyleKeeper(instance) { - if (!instance._radiumStyleKeeper) { - var userAgent = instance.props.radiumConfig && instance.props.radiumConfig.userAgent || instance.context._radiumConfig && instance.context._radiumConfig.userAgent; - instance._radiumStyleKeeper = new _styleKeeper2.default(userAgent); - } - - return instance._radiumStyleKeeper; -} - -var StyleRoot = function (_Component) { - _inherits(StyleRoot, _Component); - - function StyleRoot() { - _classCallCheck(this, StyleRoot); - - var _this = _possibleConstructorReturn(this, _Component.apply(this, arguments)); - - _getStyleKeeper(_this); - return _this; - } - - StyleRoot.prototype.getChildContext = function getChildContext() { - return { _radiumStyleKeeper: _getStyleKeeper(this) }; - }; - - StyleRoot.prototype.render = function render() { - return _react2.default.createElement( - 'div', - this.props, - this.props.children, - _react2.default.createElement(_styleSheet2.default, null) - ); - }; - - return StyleRoot; -}(_react.Component); - -StyleRoot.contextTypes = { - _radiumConfig: _react.PropTypes.object, - _radiumStyleKeeper: _react.PropTypes.instanceOf(_styleKeeper2.default) -}; - -StyleRoot.childContextTypes = { - _radiumStyleKeeper: _react.PropTypes.instanceOf(_styleKeeper2.default) -}; - -StyleRoot = (0, _enhancer2.default)(StyleRoot); - -exports.default = StyleRoot; -module.exports = exports['default']; -},{"../enhancer":48,"../style-keeper":69,"./style-sheet":45,"react":94}],45:[function(require,module,exports){ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = undefined; - -var _class, _temp; - -var _react = require('react'); - -var _react2 = _interopRequireDefault(_react); - -var _styleKeeper = require('../style-keeper'); - -var _styleKeeper2 = _interopRequireDefault(_styleKeeper); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; } - -function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } - -var StyleSheet = (_temp = _class = function (_Component) { - _inherits(StyleSheet, _Component); - - function StyleSheet() { - _classCallCheck(this, StyleSheet); - - var _this = _possibleConstructorReturn(this, _Component.apply(this, arguments)); - - _this.state = _this._getCSSState(); - - _this._onChange = _this._onChange.bind(_this); - return _this; - } - - StyleSheet.prototype.componentDidMount = function componentDidMount() { - this._isMounted = true; - this._subscription = this.context._radiumStyleKeeper.subscribe(this._onChange); - this._onChange(); - }; - - StyleSheet.prototype.componentWillUnmount = function componentWillUnmount() { - this._isMounted = false; - if (this._subscription) { - this._subscription.remove(); - } - }; - - StyleSheet.prototype._getCSSState = function _getCSSState() { - return { css: this.context._radiumStyleKeeper.getCSS() }; - }; - - StyleSheet.prototype._onChange = function _onChange() { - var _this2 = this; - - setTimeout(function () { - _this2._isMounted && _this2.setState(_this2._getCSSState()); - }, 0); - }; - - StyleSheet.prototype.render = function render() { - return _react2.default.createElement('style', { dangerouslySetInnerHTML: { __html: this.state.css } }); - }; - - return StyleSheet; -}(_react.Component), _class.contextTypes = { - _radiumStyleKeeper: _react2.default.PropTypes.instanceOf(_styleKeeper2.default) -}, _temp); -exports.default = StyleSheet; -module.exports = exports['default']; -},{"../style-keeper":69,"react":94}],46:[function(require,module,exports){ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol ? "symbol" : typeof obj; }; - -var _cssRuleSetToString = require('../css-rule-set-to-string'); - -var _cssRuleSetToString2 = _interopRequireDefault(_cssRuleSetToString); - -var _react = require('react'); - -var _react2 = _interopRequireDefault(_react); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var Style = _react2.default.createClass({ - displayName: 'Style', - - propTypes: { - radiumConfig: _react.PropTypes.object, - rules: _react.PropTypes.object, - scopeSelector: _react.PropTypes.string - }, - - contextTypes: { - _radiumConfig: _react.PropTypes.object - }, - - getDefaultProps: function getDefaultProps() { - return { - scopeSelector: '' - }; - }, - _buildStyles: function _buildStyles(styles) { - var _this = this; - - var userAgent = this.props.radiumConfig && this.props.radiumConfig.userAgent || this.context && this.context._radiumConfig && this.context._radiumConfig.userAgent; - - var scopeSelector = this.props.scopeSelector; - - var rootRules = Object.keys(styles).reduce(function (accumulator, selector) { - if (_typeof(styles[selector]) !== 'object') { - accumulator[selector] = styles[selector]; - } - - return accumulator; - }, {}); - var rootStyles = Object.keys(rootRules).length ? (0, _cssRuleSetToString2.default)(scopeSelector || '', rootRules, userAgent) : ''; - - return rootStyles + Object.keys(styles).reduce(function (accumulator, selector) { - var rules = styles[selector]; - - if (selector === 'mediaQueries') { - accumulator += _this._buildMediaQueryString(rules); - } else if (_typeof(styles[selector]) === 'object') { - var completeSelector = scopeSelector ? selector.split(',').map(function (part) { - return scopeSelector + ' ' + part.trim(); - }).join(',') : selector; - - accumulator += (0, _cssRuleSetToString2.default)(completeSelector, rules, userAgent); - } - - return accumulator; - }, ''); - }, - _buildMediaQueryString: function _buildMediaQueryString(stylesByMediaQuery) { - var _this2 = this; - - var mediaQueryString = ''; - - Object.keys(stylesByMediaQuery).forEach(function (query) { - mediaQueryString += '@media ' + query + '{' + _this2._buildStyles(stylesByMediaQuery[query]) + '}'; - }); - - return mediaQueryString; - }, - render: function render() { - if (!this.props.rules) { - return null; - } - - var styles = this._buildStyles(this.props.rules); - - return _react2.default.createElement('style', { dangerouslySetInnerHTML: { __html: styles } }); - } -}); - -exports.default = Style; -module.exports = exports['default']; -},{"../css-rule-set-to-string":47,"react":94}],47:[function(require,module,exports){ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = cssRuleSetToString; - -var _appendPxIfNeeded = require('./append-px-if-needed'); - -var _appendPxIfNeeded2 = _interopRequireDefault(_appendPxIfNeeded); - -var _quoteValueIfNeeded = require('./quote-value-if-needed'); - -var _quoteValueIfNeeded2 = _interopRequireDefault(_quoteValueIfNeeded); - -var _camelCasePropsToDashCase = require('./camel-case-props-to-dash-case'); - -var _camelCasePropsToDashCase2 = _interopRequireDefault(_camelCasePropsToDashCase); - -var _mapObject = require('./map-object'); - -var _mapObject2 = _interopRequireDefault(_mapObject); - -var _prefixer = require('./prefixer'); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function createMarkupForStyles(style) { - return Object.keys(style).map(function (property) { - return property + ': ' + (0, _quoteValueIfNeeded2.default)(property, style[property]) + ';'; - }).join('\n'); -} - -function cssRuleSetToString(selector, rules, userAgent) { - if (!rules) { - return ''; - } - - var rulesWithPx = (0, _mapObject2.default)(rules, function (value, key) { - return (0, _appendPxIfNeeded2.default)(key, value); - }); - var prefixedRules = (0, _prefixer.getPrefixedStyle)(rulesWithPx, userAgent); - var cssPrefixedRules = (0, _camelCasePropsToDashCase2.default)(prefixedRules); - var serializedRules = createMarkupForStyles(cssPrefixedRules); - - return selector + '{' + serializedRules + '}'; -} -module.exports = exports['default']; -},{"./append-px-if-needed":42,"./camel-case-props-to-dash-case":43,"./map-object":54,"./prefixer":66,"./quote-value-if-needed":67}],48:[function(require,module,exports){ -(function (process){ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol ? "symbol" : typeof obj; }; - -var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; - -exports.default = enhanceWithRadium; - -var _react = require('react'); - -var _styleKeeper = require('./style-keeper.js'); - -var _styleKeeper2 = _interopRequireDefault(_styleKeeper); - -var _resolveStyles = require('./resolve-styles.js'); - -var _resolveStyles2 = _interopRequireDefault(_resolveStyles); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; } - -function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } - -var KEYS_TO_IGNORE_WHEN_COPYING_PROPERTIES = ['arguments', 'callee', 'caller', 'length', 'name', 'prototype', 'type']; - -function copyProperties(source, target) { - Object.getOwnPropertyNames(source).forEach(function (key) { - if (KEYS_TO_IGNORE_WHEN_COPYING_PROPERTIES.indexOf(key) < 0 && !target.hasOwnProperty(key)) { - var descriptor = Object.getOwnPropertyDescriptor(source, key); - Object.defineProperty(target, key, descriptor); - } - }); -} - -function isStateless(component) { - return !component.render && !(component.prototype && component.prototype.render); -} - -function enhanceWithRadium(configOrComposedComponent) { - var _class, _temp; - - var config = arguments.length <= 1 || arguments[1] === undefined ? {} : arguments[1]; - - if (typeof configOrComposedComponent !== 'function') { - var _ret = function () { - var newConfig = _extends({}, config, configOrComposedComponent); - return { - v: function v(configOrComponent) { - return enhanceWithRadium(configOrComponent, newConfig); - } - }; - }(); - - if ((typeof _ret === 'undefined' ? 'undefined' : _typeof(_ret)) === "object") return _ret.v; - } - - var component = configOrComposedComponent; - var ComposedComponent = component; - - // Handle stateless components - if (isStateless(ComposedComponent)) { - ComposedComponent = function (_Component) { - _inherits(ComposedComponent, _Component); - - function ComposedComponent() { - _classCallCheck(this, ComposedComponent); - - return _possibleConstructorReturn(this, _Component.apply(this, arguments)); - } - - ComposedComponent.prototype.render = function render() { - return component(this.props, this.context); - }; - - return ComposedComponent; - }(_react.Component); - ComposedComponent.displayName = component.displayName || component.name; - } - - var RadiumEnhancer = (_temp = _class = function (_ComposedComponent) { - _inherits(RadiumEnhancer, _ComposedComponent); - - function RadiumEnhancer() { - _classCallCheck(this, RadiumEnhancer); - - var _this2 = _possibleConstructorReturn(this, _ComposedComponent.apply(this, arguments)); - - _this2.state = _this2.state || {}; - _this2.state._radiumStyleState = {}; - _this2._radiumIsMounted = true; - return _this2; - } - - RadiumEnhancer.prototype.componentWillUnmount = function componentWillUnmount() { - if (_ComposedComponent.prototype.componentWillUnmount) { - _ComposedComponent.prototype.componentWillUnmount.call(this); - } - - this._radiumIsMounted = false; - - if (this._radiumMouseUpListener) { - this._radiumMouseUpListener.remove(); - } - - if (this._radiumMediaQueryListenersByQuery) { - Object.keys(this._radiumMediaQueryListenersByQuery).forEach(function (query) { - this._radiumMediaQueryListenersByQuery[query].remove(); - }, this); - } - }; - - RadiumEnhancer.prototype.getChildContext = function getChildContext() { - var superChildContext = _ComposedComponent.prototype.getChildContext ? _ComposedComponent.prototype.getChildContext.call(this) : {}; - - if (!this.props.radiumConfig) { - return superChildContext; - } - - var newContext = _extends({}, superChildContext); - - if (this.props.radiumConfig) { - newContext._radiumConfig = this.props.radiumConfig; - } - - return newContext; - }; - - RadiumEnhancer.prototype.render = function render() { - var renderedElement = _ComposedComponent.prototype.render.call(this); - var currentConfig = this.props.radiumConfig || this.context._radiumConfig || config; - - if (config && currentConfig !== config) { - currentConfig = _extends({}, config, currentConfig); - } - - return (0, _resolveStyles2.default)(this, renderedElement, currentConfig); - }; - - return RadiumEnhancer; - }(ComposedComponent), _class._isRadiumEnhanced = true, _temp); - - // Class inheritance uses Object.create and because of __proto__ issues - // with IE <10 any static properties of the superclass aren't inherited and - // so need to be manually populated. - // See http://babeljs.io/docs/advanced/caveats/#classes-10-and-below- - - copyProperties(component, RadiumEnhancer); - - if (process.env.NODE_ENV !== 'production') { - // This also fixes React Hot Loader by exposing the original components top - // level prototype methods on the Radium enhanced prototype as discussed in - // https://github.com/FormidableLabs/radium/issues/219. - copyProperties(ComposedComponent.prototype, RadiumEnhancer.prototype); - } - - if (RadiumEnhancer.propTypes && RadiumEnhancer.propTypes.style) { - RadiumEnhancer.propTypes = _extends({}, RadiumEnhancer.propTypes, { - style: _react.PropTypes.oneOfType([_react.PropTypes.array, _react.PropTypes.object]) - }); - } - - RadiumEnhancer.displayName = component.displayName || component.name || 'Component'; - - RadiumEnhancer.contextTypes = _extends({}, RadiumEnhancer.contextTypes, { - _radiumConfig: _react.PropTypes.object, - _radiumStyleKeeper: _react.PropTypes.instanceOf(_styleKeeper2.default) - }); - - RadiumEnhancer.childContextTypes = _extends({}, RadiumEnhancer.childContextTypes, { - _radiumConfig: _react.PropTypes.object, - _radiumStyleKeeper: _react.PropTypes.instanceOf(_styleKeeper2.default) - }); - - return RadiumEnhancer; -} -module.exports = exports['default']; -}).call(this,require('_process')) - -},{"./resolve-styles.js":68,"./style-keeper.js":69,"_process":122,"react":94}],49:[function(require,module,exports){ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - - -var getStateKey = function getStateKey(elementKey) { - return elementKey === null || elementKey === undefined ? 'main' : elementKey.toString(); -}; - -exports.default = getStateKey; -module.exports = exports['default']; -},{}],50:[function(require,module,exports){ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _getStateKey = require('./get-state-key'); - -var _getStateKey2 = _interopRequireDefault(_getStateKey); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var getState = function getState(state, elementKey, value) { - var key = (0, _getStateKey2.default)(elementKey); - - return !!state && !!state._radiumStyleState && !!state._radiumStyleState[key] && state._radiumStyleState[key][value]; -}; - -exports.default = getState; -module.exports = exports['default']; -},{"./get-state-key":49}],51:[function(require,module,exports){ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = hash; - - -// a simple djb2 hash based on hash-string: -// https://github.com/MatthewBarker/hash-string/blob/master/source/hash-string.js -// returns a hex-encoded hash -function hash(text) { - if (!text) { - return ''; - } - - var hashValue = 5381; - var index = text.length - 1; - - while (index) { - hashValue = hashValue * 33 ^ text.charCodeAt(index); - index -= 1; - } - - return (hashValue >>> 0).toString(16); -} -module.exports = exports['default']; -},{}],52:[function(require,module,exports){ -(function (process){ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _enhancer = require('./enhancer'); - -var _enhancer2 = _interopRequireDefault(_enhancer); - -var _plugins = require('./plugins'); - -var _plugins2 = _interopRequireDefault(_plugins); - -var _style = require('./components/style'); - -var _style2 = _interopRequireDefault(_style); - -var _styleRoot = require('./components/style-root'); - -var _styleRoot2 = _interopRequireDefault(_styleRoot); - -var _getState = require('./get-state'); - -var _getState2 = _interopRequireDefault(_getState); - -var _keyframes = require('./keyframes'); - -var _keyframes2 = _interopRequireDefault(_keyframes); - -var _resolveStyles = require('./resolve-styles'); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function Radium(ComposedComponent) { - return (0, _enhancer2.default)(ComposedComponent); -} - -Radium.Plugins = _plugins2.default; -Radium.Style = _style2.default; -Radium.StyleRoot = _styleRoot2.default; -Radium.getState = _getState2.default; -Radium.keyframes = _keyframes2.default; - -if (process.env.NODE_ENV !== 'production') { - Radium.TestMode = { - clearState: _resolveStyles.__clearStateForTests, - disable: _resolveStyles.__setTestMode.bind(null, false), - enable: _resolveStyles.__setTestMode.bind(null, true) - }; -} - -exports.default = Radium; -module.exports = exports['default']; -}).call(this,require('_process')) - -},{"./components/style":46,"./components/style-root":44,"./enhancer":48,"./get-state":50,"./keyframes":53,"./plugins":57,"./resolve-styles":68,"_process":122}],53:[function(require,module,exports){ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = keyframes; - -var _cssRuleSetToString = require('./css-rule-set-to-string'); - -var _cssRuleSetToString2 = _interopRequireDefault(_cssRuleSetToString); - -var _hash = require('./hash'); - -var _hash2 = _interopRequireDefault(_hash); - -var _prefixer = require('./prefixer'); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function keyframes(keyframeRules, name) { - return { - __radiumKeyframes: true, - __process: function __process(userAgent) { - var keyframesPrefixed = (0, _prefixer.getPrefixedKeyframes)(userAgent); - var rules = Object.keys(keyframeRules).map(function (percentage) { - return (0, _cssRuleSetToString2.default)(percentage, keyframeRules[percentage], userAgent); - }).join('\n'); - var animationName = (name ? name + '-' : '') + 'radium-animation-' + (0, _hash2.default)(rules); - var css = '@' + keyframesPrefixed + ' ' + animationName + ' {\n' + rules + '\n}\n'; - return { css: css, animationName: animationName }; - } - }; -} -module.exports = exports['default']; -},{"./css-rule-set-to-string":47,"./hash":51,"./prefixer":66}],54:[function(require,module,exports){ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = mapObject; -function mapObject(object, mapper) { - return Object.keys(object).reduce(function (result, key) { - result[key] = mapper(object[key], key); - return result; - }, {}); -} -module.exports = exports["default"]; -},{}],55:[function(require,module,exports){ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol ? "symbol" : typeof obj; }; - -exports.isNestedStyle = isNestedStyle; -exports.mergeStyles = mergeStyles; -function isNestedStyle(value) { - // Don't merge objects overriding toString, since they should be converted - // to string values. - return value && value.constructor === Object && value.toString === Object.prototype.toString; -} - -// Merge style objects. Deep merge plain object values. -function mergeStyles(styles) { - var result = {}; - - styles.forEach(function (style) { - if (!style || (typeof style === 'undefined' ? 'undefined' : _typeof(style)) !== 'object') { - return; - } - - if (Array.isArray(style)) { - style = mergeStyles(style); - } - - Object.keys(style).forEach(function (key) { - // Simple case, nothing nested - if (!isNestedStyle(style[key]) || !isNestedStyle(result[key])) { - result[key] = style[key]; - return; - } - - // If nested media, don't merge the nested styles, append a space to the - // end (benign when converted to CSS). This way we don't end up merging - // media queries that appear later in the chain with those that appear - // earlier. - if (key.indexOf('@media') === 0) { - var newKey = key; - while (true) { - // eslint-disable-line no-constant-condition - newKey += ' '; - if (!result[newKey]) { - result[newKey] = style[key]; - return; - } - } - } - - // Merge all other nested styles recursively - result[key] = mergeStyles([result[key], style[key]]); - }); - }); - - return result; -} -},{}],56:[function(require,module,exports){ -(function (process){ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; - -var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol ? "symbol" : typeof obj; }; - -var _checkProps = function checkProps() {}; - -if (process.env.NODE_ENV !== 'production') { - (function () { - // Warn if you use longhand and shorthand properties in the same style - // object. - // https://developer.mozilla.org/en-US/docs/Web/CSS/Shorthand_properties - - var shorthandPropertyExpansions = { - 'background': ['backgroundAttachment', 'backgroundBlendMode', 'backgroundClip', 'backgroundColor', 'backgroundImage', 'backgroundOrigin', 'backgroundPosition', 'backgroundPositionX', 'backgroundPositionY', 'backgroundRepeat', 'backgroundRepeatX', 'backgroundRepeatY', 'backgroundSize'], - 'border': ['borderBottom', 'borderBottomColor', 'borderBottomStyle', 'borderBottomWidth', 'borderColor', 'borderLeft', 'borderLeftColor', 'borderLeftStyle', 'borderLeftWidth', 'borderRight', 'borderRightColor', 'borderRightStyle', 'borderRightWidth', 'borderStyle', 'borderTop', 'borderTopColor', 'borderTopStyle', 'borderTopWidth', 'borderWidth'], - 'borderImage': ['borderImageOutset', 'borderImageRepeat', 'borderImageSlice', 'borderImageSource', 'borderImageWidth'], - 'borderRadius': ['borderBottomLeftRadius', 'borderBottomRightRadius', 'borderTopLeftRadius', 'borderTopRightRadius'], - 'font': ['fontFamily', 'fontKerning', 'fontSize', 'fontStretch', 'fontStyle', 'fontVariant', 'fontVariantLigatures', 'fontWeight', 'lineHeight'], - 'listStyle': ['listStyleImage', 'listStylePosition', 'listStyleType'], - 'margin': ['marginBottom', 'marginLeft', 'marginRight', 'marginTop'], - 'padding': ['paddingBottom', 'paddingLeft', 'paddingRight', 'paddingTop'], - 'transition': ['transitionDelay', 'transitionDuration', 'transitionProperty', 'transitionTimingFunction'] - }; - - _checkProps = function checkProps(config) { - var componentName = config.componentName; - var style = config.style; - - if ((typeof style === 'undefined' ? 'undefined' : _typeof(style)) !== 'object' || !style) { - return; - } - - var styleKeys = Object.keys(style); - styleKeys.forEach(function (styleKey) { - if (Array.isArray(shorthandPropertyExpansions[styleKey]) && shorthandPropertyExpansions[styleKey].some(function (sp) { - return styleKeys.indexOf(sp) !== -1; - })) { - if (process.env.NODE_ENV !== 'production') { - /* eslint-disable no-console */ - console.warn('Radium: property "' + styleKey + '" in style object', style, ': do not mix longhand and ' + 'shorthand properties in the same style object. Check the render ' + 'method of ' + componentName + '.', 'See https://github.com/FormidableLabs/radium/issues/95 for more ' + 'information.'); - /* eslint-enable no-console */ - } - } - }); - - styleKeys.forEach(function (k) { - return _checkProps(_extends({}, config, { style: style[k] })); - }); - return; - }; - })(); -} - -exports.default = _checkProps; -module.exports = exports['default']; -}).call(this,require('_process')) - -},{"_process":122}],57:[function(require,module,exports){ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _checkPropsPlugin = require('./check-props-plugin'); - -var _checkPropsPlugin2 = _interopRequireDefault(_checkPropsPlugin); - -var _keyframesPlugin = require('./keyframes-plugin'); - -var _keyframesPlugin2 = _interopRequireDefault(_keyframesPlugin); - -var _mergeStyleArrayPlugin = require('./merge-style-array-plugin'); - -var _mergeStyleArrayPlugin2 = _interopRequireDefault(_mergeStyleArrayPlugin); - -var _prefixPlugin = require('./prefix-plugin'); - -var _prefixPlugin2 = _interopRequireDefault(_prefixPlugin); - -var _removeNestedStylesPlugin = require('./remove-nested-styles-plugin'); - -var _removeNestedStylesPlugin2 = _interopRequireDefault(_removeNestedStylesPlugin); - -var _resolveInteractionStylesPlugin = require('./resolve-interaction-styles-plugin'); - -var _resolveInteractionStylesPlugin2 = _interopRequireDefault(_resolveInteractionStylesPlugin); - -var _resolveMediaQueriesPlugin = require('./resolve-media-queries-plugin'); - -var _resolveMediaQueriesPlugin2 = _interopRequireDefault(_resolveMediaQueriesPlugin); - -var _visitedPlugin = require('./visited-plugin'); - -var _visitedPlugin2 = _interopRequireDefault(_visitedPlugin); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -exports.default = { - checkProps: _checkPropsPlugin2.default, - keyframes: _keyframesPlugin2.default, - mergeStyleArray: _mergeStyleArrayPlugin2.default, - prefix: _prefixPlugin2.default, - removeNestedStyles: _removeNestedStylesPlugin2.default, - resolveInteractionStyles: _resolveInteractionStylesPlugin2.default, - resolveMediaQueries: _resolveMediaQueriesPlugin2.default, - visited: _visitedPlugin2.default -}; -/* eslint-disable block-scoped-const */ - -module.exports = exports['default']; -},{"./check-props-plugin":56,"./keyframes-plugin":58,"./merge-style-array-plugin":59,"./prefix-plugin":61,"./remove-nested-styles-plugin":62,"./resolve-interaction-styles-plugin":63,"./resolve-media-queries-plugin":64,"./visited-plugin":65}],58:[function(require,module,exports){ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = keyframesPlugin; -function keyframesPlugin(_ref // eslint-disable-line no-shadow -) { - var addCSS = _ref.addCSS; - var config = _ref.config; - var style = _ref.style; - - var newStyle = Object.keys(style).reduce(function (newStyleInProgress, key) { - var value = style[key]; - if (key === 'animationName' && value && value.__radiumKeyframes) { - var keyframesValue = value; - - var _keyframesValue$__pro = keyframesValue.__process(config.userAgent); - - var animationName = _keyframesValue$__pro.animationName; - var css = _keyframesValue$__pro.css; - - addCSS(css); - value = animationName; - } - - newStyleInProgress[key] = value; - return newStyleInProgress; - }, {}); - return { style: newStyle }; -} -module.exports = exports['default']; -},{}],59:[function(require,module,exports){ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - - -// Convenient syntax for multiple styles: `style={[style1, style2, etc]}` -// Ignores non-objects, so you can do `this.state.isCool && styles.cool`. -var mergeStyleArrayPlugin = function mergeStyleArrayPlugin(_ref) { - var style = _ref.style; - var mergeStyles = _ref.mergeStyles; - // eslint-disable-line no-shadow - var newStyle = Array.isArray(style) ? mergeStyles(style) : style; - return { style: newStyle }; -}; - -exports.default = mergeStyleArrayPlugin; -module.exports = exports['default']; -},{}],60:[function(require,module,exports){ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - - -var _callbacks = []; -var _mouseUpListenerIsActive = false; - -function _handleMouseUp() { - _callbacks.forEach(function (callback) { - callback(); - }); -} - -var subscribe = function subscribe(callback) { - if (_callbacks.indexOf(callback) === -1) { - _callbacks.push(callback); - } - - if (!_mouseUpListenerIsActive) { - window.addEventListener('mouseup', _handleMouseUp); - _mouseUpListenerIsActive = true; - } - - return { - remove: function remove() { - var index = _callbacks.indexOf(callback); - _callbacks.splice(index, 1); - - if (_callbacks.length === 0 && _mouseUpListenerIsActive) { - window.removeEventListener('mouseup', _handleMouseUp); - _mouseUpListenerIsActive = false; - } - } - }; -}; - -exports.default = { - subscribe: subscribe, - __triggerForTests: _handleMouseUp -}; -module.exports = exports['default']; -},{}],61:[function(require,module,exports){ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = prefixPlugin; - -var _prefixer = require('../prefixer'); - -function prefixPlugin(_ref // eslint-disable-line no-shadow -) { - var config = _ref.config; - var style = _ref.style; - - var newStyle = (0, _prefixer.getPrefixedStyle)(style, config.userAgent); - return { style: newStyle }; -} -module.exports = exports['default']; -},{"../prefixer":66}],62:[function(require,module,exports){ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = removeNestedStyles; -function removeNestedStyles(_ref) { - var isNestedStyle = _ref.isNestedStyle; - var style = _ref.style; - // eslint-disable-line no-shadow - var newStyle = Object.keys(style).reduce(function (newStyleInProgress, key) { - var value = style[key]; - if (!isNestedStyle(value)) { - newStyleInProgress[key] = value; - } - return newStyleInProgress; - }, {}); - - return { - style: newStyle - }; -} -module.exports = exports['default']; -},{}],63:[function(require,module,exports){ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _mouseUpListener = require('./mouse-up-listener'); - -var _mouseUpListener2 = _interopRequireDefault(_mouseUpListener); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var _isInteractiveStyleField = function _isInteractiveStyleField(styleFieldName) { - return styleFieldName === ':hover' || styleFieldName === ':active' || styleFieldName === ':focus'; -}; - -var resolveInteractionStyles = function resolveInteractionStyles(config) { - var ExecutionEnvironment = config.ExecutionEnvironment; - var getComponentField = config.getComponentField; - var getState = config.getState; - var mergeStyles = config.mergeStyles; - var props = config.props; - var setState = config.setState; - var style = config.style; - - - var newComponentFields = {}; - var newProps = {}; - - // Only add handlers if necessary - if (style[':hover']) { - (function () { - // Always call the existing handler if one is already defined. - // This code, and the very similar ones below, could be abstracted a bit - // more, but it hurts readability IMO. - var existingOnMouseEnter = props.onMouseEnter; - newProps.onMouseEnter = function (e) { - existingOnMouseEnter && existingOnMouseEnter(e); - setState(':hover', true); - }; - - var existingOnMouseLeave = props.onMouseLeave; - newProps.onMouseLeave = function (e) { - existingOnMouseLeave && existingOnMouseLeave(e); - setState(':hover', false); - }; - })(); - } - - if (style[':active']) { - (function () { - var existingOnMouseDown = props.onMouseDown; - newProps.onMouseDown = function (e) { - existingOnMouseDown && existingOnMouseDown(e); - newComponentFields._lastMouseDown = Date.now(); - setState(':active', 'viamousedown'); - }; - - var existingOnKeyDown = props.onKeyDown; - newProps.onKeyDown = function (e) { - existingOnKeyDown && existingOnKeyDown(e); - if (e.key === ' ' || e.key === 'Enter') { - setState(':active', 'viakeydown'); - } - }; - - var existingOnKeyUp = props.onKeyUp; - newProps.onKeyUp = function (e) { - existingOnKeyUp && existingOnKeyUp(e); - if (e.key === ' ' || e.key === 'Enter') { - setState(':active', false); - } - }; - })(); - } - - if (style[':focus']) { - (function () { - var existingOnFocus = props.onFocus; - newProps.onFocus = function (e) { - existingOnFocus && existingOnFocus(e); - setState(':focus', true); - }; - - var existingOnBlur = props.onBlur; - newProps.onBlur = function (e) { - existingOnBlur && existingOnBlur(e); - setState(':focus', false); - }; - })(); - } - - if (style[':active'] && !getComponentField('_radiumMouseUpListener') && ExecutionEnvironment.canUseEventListeners) { - newComponentFields._radiumMouseUpListener = _mouseUpListener2.default.subscribe(function () { - Object.keys(getComponentField('state')._radiumStyleState).forEach(function (key) { - if (getState(':active', key) === 'viamousedown') { - setState(':active', false, key); - } - }); - }); - } - - // Merge the styles in the order they were defined - var interactionStyles = props.disabled ? [style[':disabled']] : Object.keys(style).filter(function (name) { - return _isInteractiveStyleField(name) && getState(name); - }).map(function (name) { - return style[name]; - }); - - var newStyle = mergeStyles([style].concat(interactionStyles)); - - // Remove interactive styles - newStyle = Object.keys(newStyle).reduce(function (styleWithoutInteractions, name) { - if (!_isInteractiveStyleField(name) && name !== ':disabled') { - styleWithoutInteractions[name] = newStyle[name]; - } - return styleWithoutInteractions; - }, {}); - - return { - componentFields: newComponentFields, - props: newProps, - style: newStyle - }; -}; - -exports.default = resolveInteractionStyles; -module.exports = exports['default']; -},{"./mouse-up-listener":60}],64:[function(require,module,exports){ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; - -exports.default = resolveMediaQueries; - - -var _windowMatchMedia = void 0; -function _getWindowMatchMedia(ExecutionEnvironment) { - if (_windowMatchMedia === undefined) { - _windowMatchMedia = !!ExecutionEnvironment.canUseDOM && !!window && !!window.matchMedia && function (mediaQueryString) { - return window.matchMedia(mediaQueryString); - } || null; - } - return _windowMatchMedia; -} - -function _filterObject(obj, predicate) { - return Object.keys(obj).filter(function (key) { - return predicate(obj[key], key); - }).reduce(function (result, key) { - result[key] = obj[key]; - return result; - }, {}); -} - -function _removeMediaQueries(style) { - return Object.keys(style).reduce(function (styleWithoutMedia, key) { - if (key.indexOf('@media') !== 0) { - styleWithoutMedia[key] = style[key]; - } - return styleWithoutMedia; - }, {}); -} - -function _topLevelRulesToCSS(_ref) { - var addCSS = _ref.addCSS; - var appendImportantToEachValue = _ref.appendImportantToEachValue; - var cssRuleSetToString = _ref.cssRuleSetToString; - var hash = _ref.hash; - var isNestedStyle = _ref.isNestedStyle; - var style = _ref.style; - var userAgent = _ref.userAgent; - - var className = ''; - Object.keys(style).filter(function (name) { - return name.indexOf('@media') === 0; - }).map(function (query) { - var topLevelRules = appendImportantToEachValue(_filterObject(style[query], function (value) { - return !isNestedStyle(value); - })); - - if (!Object.keys(topLevelRules).length) { - return; - } - - var ruleCSS = cssRuleSetToString('', topLevelRules, userAgent); - - // CSS classes cannot start with a number - var mediaQueryClassName = 'rmq-' + hash(query + ruleCSS); - var css = query + '{ .' + mediaQueryClassName + ruleCSS + '}'; - - addCSS(css); - - className += (className ? ' ' : '') + mediaQueryClassName; - }); - return className; -} - -function _subscribeToMediaQuery(_ref2) { - var listener = _ref2.listener; - var listenersByQuery = _ref2.listenersByQuery; - var matchMedia = _ref2.matchMedia; - var mediaQueryListsByQuery = _ref2.mediaQueryListsByQuery; - var query = _ref2.query; - - query = query.replace('@media ', ''); - - var mql = mediaQueryListsByQuery[query]; - if (!mql && matchMedia) { - mediaQueryListsByQuery[query] = mql = matchMedia(query); - } - - if (!listenersByQuery || !listenersByQuery[query]) { - mql.addListener(listener); - - listenersByQuery[query] = { - remove: function remove() { - mql.removeListener(listener); - } - }; - } - return mql; -} - -function resolveMediaQueries(_ref3) { - var ExecutionEnvironment = _ref3.ExecutionEnvironment; - var addCSS = _ref3.addCSS; - var appendImportantToEachValue = _ref3.appendImportantToEachValue; - var config = _ref3.config; - var cssRuleSetToString = _ref3.cssRuleSetToString; - var getComponentField = _ref3.getComponentField; - var getGlobalState = _ref3.getGlobalState; - var hash = _ref3.hash; - var isNestedStyle = _ref3.isNestedStyle; - var mergeStyles = _ref3.mergeStyles; - var props = _ref3.props; - var setState = _ref3.setState; - var style = _ref3.style; - // eslint-disable-line no-shadow - var newStyle = _removeMediaQueries(style); - var mediaQueryClassNames = _topLevelRulesToCSS({ - addCSS: addCSS, - appendImportantToEachValue: appendImportantToEachValue, - cssRuleSetToString: cssRuleSetToString, - hash: hash, - isNestedStyle: isNestedStyle, - style: style, - userAgent: config.userAgent - }); - - var newProps = mediaQueryClassNames ? { - className: mediaQueryClassNames + (props.className ? ' ' + props.className : '') - } : null; - - var matchMedia = config.matchMedia || _getWindowMatchMedia(ExecutionEnvironment); - - if (!matchMedia) { - return { - props: newProps, - style: newStyle - }; - } - - var listenersByQuery = _extends({}, getComponentField('_radiumMediaQueryListenersByQuery')); - var mediaQueryListsByQuery = getGlobalState('mediaQueryListsByQuery') || {}; - - Object.keys(style).filter(function (name) { - return name.indexOf('@media') === 0; - }).map(function (query) { - var nestedRules = _filterObject(style[query], isNestedStyle); - - if (!Object.keys(nestedRules).length) { - return; - } - - var mql = _subscribeToMediaQuery({ - listener: function listener() { - return setState(query, mql.matches, '_all'); - }, - listenersByQuery: listenersByQuery, - matchMedia: matchMedia, - mediaQueryListsByQuery: mediaQueryListsByQuery, - query: query - }); - - // Apply media query states - if (mql.matches) { - newStyle = mergeStyles([newStyle, nestedRules]); - } - }); - - return { - componentFields: { - _radiumMediaQueryListenersByQuery: listenersByQuery - }, - globalState: { mediaQueryListsByQuery: mediaQueryListsByQuery }, - props: newProps, - style: newStyle - }; -} -module.exports = exports['default']; -},{}],65:[function(require,module,exports){ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = visited; -function visited(_ref) { - var addCSS = _ref.addCSS; - var appendImportantToEachValue = _ref.appendImportantToEachValue; - var config = _ref.config; - var cssRuleSetToString = _ref.cssRuleSetToString; - var hash = _ref.hash; - var props = _ref.props; - var style = _ref.style; - // eslint-disable-line no-shadow - var className = props.className; - - var newStyle = Object.keys(style).reduce(function (newStyleInProgress, key) { - var value = style[key]; - if (key === ':visited') { - value = appendImportantToEachValue(value); - var ruleCSS = cssRuleSetToString('', value, config.userAgent); - var visitedClassName = 'rad-' + hash(ruleCSS); - var css = '.' + visitedClassName + ':visited' + ruleCSS; - - addCSS(css); - className = (className ? className + ' ' : '') + visitedClassName; - } else { - newStyleInProgress[key] = value; - } - - return newStyleInProgress; - }, {}); - - return { - props: className === props.className ? null : { className: className }, - style: newStyle - }; -} -module.exports = exports['default']; -},{}],66:[function(require,module,exports){ -(function (process,global){ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol ? "symbol" : typeof obj; }; /** - * Based on https://github.com/jsstyles/css-vendor, but without having to - * convert between different cases all the time. - * - * - */ - -exports.getPrefixedKeyframes = getPrefixedKeyframes; -exports.getPrefixedStyle = getPrefixedStyle; - -var _inlineStylePrefixer = require('inline-style-prefixer'); - -var _inlineStylePrefixer2 = _interopRequireDefault(_inlineStylePrefixer); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function transformValues(style) { - return Object.keys(style).reduce(function (newStyle, key) { - var value = style[key]; - if (Array.isArray(value)) { - value = value.join(';' + key + ':'); - } else if (value && (typeof value === 'undefined' ? 'undefined' : _typeof(value)) === 'object' && typeof value.toString === 'function') { - value = value.toString(); - } - - newStyle[key] = value; - return newStyle; - }, {}); -} - -var _hasWarnedAboutUserAgent = false; -var _lastUserAgent = void 0; -var _cachedPrefixer = void 0; - -function getPrefixer(userAgent) { - var actualUserAgent = userAgent || global && global.navigator && global.navigator.userAgent; - - if (process.env.NODE_ENV !== 'production') { - if (!actualUserAgent && !_hasWarnedAboutUserAgent) { - /* eslint-disable no-console */ - console.warn('Radium: userAgent should be supplied for server-side rendering. See ' + 'https://github.com/FormidableLabs/radium/tree/master/docs/api#radium ' + 'for more information.'); - /* eslint-enable no-console */ - _hasWarnedAboutUserAgent = true; - } - } - - if (!_cachedPrefixer || actualUserAgent !== _lastUserAgent) { - if (actualUserAgent === 'all') { - _cachedPrefixer = { - prefix: _inlineStylePrefixer2.default.prefixAll, - prefixedKeyframes: 'keyframes' - }; - } else { - _cachedPrefixer = new _inlineStylePrefixer2.default({ userAgent: actualUserAgent }); - } - _lastUserAgent = actualUserAgent; - } - return _cachedPrefixer; -} - -function getPrefixedKeyframes(userAgent) { - return getPrefixer(userAgent).prefixedKeyframes; -} - -// Returns a new style object with vendor prefixes added to property names -// and values. -function getPrefixedStyle(style, userAgent) { - var styleWithFallbacks = transformValues(style); - var prefixer = getPrefixer(userAgent); - var prefixedStyle = prefixer.prefix(styleWithFallbacks); - return prefixedStyle; -} -}).call(this,require('_process'),typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {}) - -},{"_process":122,"inline-style-prefixer":24}],67:[function(require,module,exports){ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = quoteValueIfNeeded; - - -var quotedProperties = ['content']; - -function quoteValueIfNeeded(property, value) { - return quotedProperties.indexOf(property) >= 0 ? '"' + value + '"' : value; -} -module.exports = exports['default']; -},{}],68:[function(require,module,exports){ -(function (process){ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; - -var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol ? "symbol" : typeof obj; }; - -var _appendImportantToEachValue = require('./append-important-to-each-value'); - -var _appendImportantToEachValue2 = _interopRequireDefault(_appendImportantToEachValue); - -var _cssRuleSetToString = require('./css-rule-set-to-string'); - -var _cssRuleSetToString2 = _interopRequireDefault(_cssRuleSetToString); - -var _getState = require('./get-state'); - -var _getState2 = _interopRequireDefault(_getState); - -var _getStateKey = require('./get-state-key'); - -var _getStateKey2 = _interopRequireDefault(_getStateKey); - -var _hash = require('./hash'); - -var _hash2 = _interopRequireDefault(_hash); - -var _mergeStyles = require('./merge-styles'); - -var _plugins = require('./plugins/'); - -var _plugins2 = _interopRequireDefault(_plugins); - -var _exenv = require('exenv'); - -var _exenv2 = _interopRequireDefault(_exenv); - -var _react = require('react'); - -var _react2 = _interopRequireDefault(_react); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -var DEFAULT_CONFIG = { - plugins: [_plugins2.default.mergeStyleArray, _plugins2.default.checkProps, _plugins2.default.resolveMediaQueries, _plugins2.default.resolveInteractionStyles, _plugins2.default.keyframes, _plugins2.default.visited, _plugins2.default.removeNestedStyles, _plugins2.default.prefix, _plugins2.default.checkProps] -}; - -// Gross -var globalState = {}; - -// Declare early for recursive helpers. -var resolveStyles = null; - -var _shouldResolveStyles = function _shouldResolveStyles(component) { - return component.type && !component.type._isRadiumEnhanced; -}; - -var _resolveChildren = function _resolveChildren(_ref) { - var children = _ref.children; - var component = _ref.component; - var config = _ref.config; - var existingKeyMap = _ref.existingKeyMap; - - if (!children) { - return children; - } - - var childrenType = typeof children === 'undefined' ? 'undefined' : _typeof(children); - - if (childrenType === 'string' || childrenType === 'number') { - // Don't do anything with a single primitive child - return children; - } - - if (childrenType === 'function') { - // Wrap the function, resolving styles on the result - return function () { - var result = children.apply(this, arguments); - if (_react2.default.isValidElement(result)) { - return resolveStyles(component, result, config, existingKeyMap, true); - } - return result; - }; - } - - if (_react2.default.Children.count(children) === 1 && children.type) { - // If a React Element is an only child, don't wrap it in an array for - // React.Children.map() for React.Children.only() compatibility. - var onlyChild = _react2.default.Children.only(children); - return resolveStyles(component, onlyChild, config, existingKeyMap, true); - } - - return _react2.default.Children.map(children, function (child) { - if (_react2.default.isValidElement(child)) { - return resolveStyles(component, child, config, existingKeyMap, true); - } - - return child; - }); -}; - -// Recurse over props, just like children -var _resolveProps = function _resolveProps(_ref2) { - var component = _ref2.component; - var config = _ref2.config; - var existingKeyMap = _ref2.existingKeyMap; - var props = _ref2.props; - - var newProps = props; - - Object.keys(props).forEach(function (prop) { - // We already recurse over children above - if (prop === 'children') { - return; - } - - var propValue = props[prop]; - if (_react2.default.isValidElement(propValue)) { - newProps = _extends({}, newProps); - newProps[prop] = resolveStyles(component, propValue, config, existingKeyMap, true); - } - }); - - return newProps; -}; - -var _buildGetKey = function _buildGetKey(_ref3) { - var componentName = _ref3.componentName; - var existingKeyMap = _ref3.existingKeyMap; - var renderedElement = _ref3.renderedElement; - - // We need a unique key to correlate state changes due to user interaction - // with the rendered element, so we know to apply the proper interactive - // styles. - var originalKey = typeof renderedElement.ref === 'string' ? renderedElement.ref : renderedElement.key; - var key = (0, _getStateKey2.default)(originalKey); - - var alreadyGotKey = false; - var getKey = function getKey() { - if (alreadyGotKey) { - return key; - } - - alreadyGotKey = true; - - if (existingKeyMap[key]) { - var elementName = void 0; - if (typeof renderedElement.type === 'string') { - elementName = renderedElement.type; - } else if (renderedElement.type.constructor) { - elementName = renderedElement.type.constructor.displayName || renderedElement.type.constructor.name; - } - - throw new Error('Radium requires each element with interactive styles to have a unique ' + 'key, set using either the ref or key prop. ' + (originalKey ? 'Key "' + originalKey + '" is a duplicate.' : 'Multiple elements have no key specified.') + ' ' + 'Component: "' + componentName + '". ' + (elementName ? 'Element: "' + elementName + '".' : '')); - } - - existingKeyMap[key] = true; - - return key; - }; - - return getKey; -}; - -var _setStyleState = function _setStyleState(component, key, stateKey, value) { - if (!component._radiumIsMounted) { - return; - } - - var existing = component._lastRadiumState || component.state && component.state._radiumStyleState || {}; - - var state = { _radiumStyleState: _extends({}, existing) }; - state._radiumStyleState[key] = _extends({}, state._radiumStyleState[key]); - state._radiumStyleState[key][stateKey] = value; - - component._lastRadiumState = state._radiumStyleState; - component.setState(state); -}; - -var _runPlugins = function _runPlugins(_ref4) { - var component = _ref4.component; - var config = _ref4.config; - var existingKeyMap = _ref4.existingKeyMap; - var props = _ref4.props; - var renderedElement = _ref4.renderedElement; - - // Don't run plugins if renderedElement is not a simple ReactDOMElement or has - // no style. - if (!_react2.default.isValidElement(renderedElement) || typeof renderedElement.type !== 'string' || !props.style) { - return props; - } - - var newProps = props; - - var plugins = config.plugins || DEFAULT_CONFIG.plugins; - - var componentName = component.constructor.displayName || component.constructor.name; - var getKey = _buildGetKey({ renderedElement: renderedElement, existingKeyMap: existingKeyMap, componentName: componentName }); - var getComponentField = function getComponentField(key) { - return component[key]; - }; - var getGlobalState = function getGlobalState(key) { - return globalState[key]; - }; - var componentGetState = function componentGetState(stateKey, elementKey) { - return (0, _getState2.default)(component.state, elementKey || getKey(), stateKey); - }; - var setState = function setState(stateKey, value, elementKey) { - return _setStyleState(component, elementKey || getKey(), stateKey, value); - }; - - var addCSS = function addCSS(css) { - var styleKeeper = component._radiumStyleKeeper || component.context._radiumStyleKeeper; - if (!styleKeeper) { - if (__isTestModeEnabled) { - return { - remove: function remove() {} - }; - } - - throw new Error('To use plugins requiring `addCSS` (e.g. keyframes, media queries), ' + 'please wrap your application in the StyleRoot component. Component ' + 'name: `' + componentName + '`.'); - } - - return styleKeeper.addCSS(css); - }; - - var newStyle = props.style; - - plugins.forEach(function (plugin) { - var result = plugin({ - ExecutionEnvironment: _exenv2.default, - addCSS: addCSS, - appendImportantToEachValue: _appendImportantToEachValue2.default, - componentName: componentName, - config: config, - cssRuleSetToString: _cssRuleSetToString2.default, - getComponentField: getComponentField, - getGlobalState: getGlobalState, - getState: componentGetState, - hash: _hash2.default, - mergeStyles: _mergeStyles.mergeStyles, - props: newProps, - setState: setState, - isNestedStyle: _mergeStyles.isNestedStyle, - style: newStyle - }) || {}; - - newStyle = result.style || newStyle; - - newProps = result.props && Object.keys(result.props).length ? _extends({}, newProps, result.props) : newProps; - - var newComponentFields = result.componentFields || {}; - Object.keys(newComponentFields).forEach(function (fieldName) { - component[fieldName] = newComponentFields[fieldName]; - }); - - var newGlobalState = result.globalState || {}; - Object.keys(newGlobalState).forEach(function (key) { - globalState[key] = newGlobalState[key]; - }); - }); - - if (newStyle !== props.style) { - newProps = _extends({}, newProps, { style: newStyle }); - } - - return newProps; -}; - -// Wrapper around React.cloneElement. To avoid processing the same element -// twice, whenever we clone an element add a special prop to make sure we don't -// process this element again. -var _cloneElement = function _cloneElement(renderedElement, newProps, newChildren) { - // Only add flag if this is a normal DOM element - if (typeof renderedElement.type === 'string') { - newProps = _extends({}, newProps, { _radiumDidResolveStyles: true }); - } - - return _react2.default.cloneElement(renderedElement, newProps, newChildren); -}; - -// -// The nucleus of Radium. resolveStyles is called on the rendered elements -// before they are returned in render. It iterates over the elements and -// children, rewriting props to add event handlers required to capture user -// interactions (e.g. mouse over). It also replaces the style prop because it -// adds in the various interaction styles (e.g. :hover). -// -resolveStyles = function resolveStyles(component, // ReactComponent, flow+eslint complaining -renderedElement) { - var // ReactElement - config = arguments.length <= 2 || arguments[2] === undefined ? DEFAULT_CONFIG : arguments[2]; - var existingKeyMap = arguments[3]; - var shouldCheckBeforeResolve = arguments.length <= 4 || arguments[4] === undefined ? false : arguments[4]; - // ReactElement - existingKeyMap = existingKeyMap || {}; - if (!renderedElement || - // Bail if we've already processed this element. This ensures that only the - // owner of an element processes that element, since the owner's render - // function will be called first (which will always be the case, since you - // can't know what else to render until you render the parent component). - renderedElement.props && renderedElement.props._radiumDidResolveStyles || - - // Bail if this element is a radium enhanced element, because if it is, - // then it will take care of resolving its own styles. - shouldCheckBeforeResolve && !_shouldResolveStyles(renderedElement)) { - return renderedElement; - } - - var newChildren = _resolveChildren({ - children: renderedElement.props.children, - component: component, - config: config, - existingKeyMap: existingKeyMap - }); - - var newProps = _resolveProps({ - component: component, - config: config, - existingKeyMap: existingKeyMap, - props: renderedElement.props - }); - - newProps = _runPlugins({ - component: component, - config: config, - existingKeyMap: existingKeyMap, - props: newProps, - renderedElement: renderedElement - }); - - // If nothing changed, don't bother cloning the element. Might be a bit - // wasteful, as we add the sentinal to stop double-processing when we clone. - // Assume benign double-processing is better than unneeded cloning. - if (newChildren === renderedElement.props.children && newProps === renderedElement.props) { - return renderedElement; - } - - return _cloneElement(renderedElement, newProps !== renderedElement.props ? newProps : {}, newChildren); -}; - -// Only for use by tests -var __isTestModeEnabled = false; -if (process.env.NODE_ENV !== 'production') { - resolveStyles.__clearStateForTests = function () { - globalState = {}; - }; - resolveStyles.__setTestMode = function (isEnabled) { - __isTestModeEnabled = isEnabled; - }; -} - -exports.default = resolveStyles; -module.exports = exports['default']; -}).call(this,require('_process')) - -},{"./append-important-to-each-value":41,"./css-rule-set-to-string":47,"./get-state":50,"./get-state-key":49,"./hash":51,"./merge-styles":55,"./plugins/":57,"_process":122,"exenv":2,"react":94}],69:[function(require,module,exports){ -'use strict'; - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -var StyleKeeper = function () { - function StyleKeeper(userAgent) { - _classCallCheck(this, StyleKeeper); - - this._userAgent = userAgent; - this._listeners = []; - this._cssSet = {}; - } - - StyleKeeper.prototype.subscribe = function subscribe(listener) { - var _this = this; - - if (this._listeners.indexOf(listener) === -1) { - this._listeners.push(listener); - } - - return { - // Must be fat arrow to capture `this` - remove: function remove() { - var listenerIndex = _this._listeners.indexOf(listener); - if (listenerIndex > -1) { - _this._listeners.splice(listenerIndex, 1); - } - } - }; - }; - - StyleKeeper.prototype.addCSS = function addCSS(css) { - var _this2 = this; - - if (!this._cssSet[css]) { - this._cssSet[css] = true; - this._emitChange(); - } - - return { - // Must be fat arrow to capture `this` - remove: function remove() { - delete _this2._cssSet[css]; - _this2._emitChange(); - } - }; - }; - - StyleKeeper.prototype.getCSS = function getCSS() { - return Object.keys(this._cssSet).join('\n'); - }; - - StyleKeeper.prototype._emitChange = function _emitChange() { - this._listeners.forEach(function (listener) { - return listener(); - }); - }; - - return StyleKeeper; -}(); - -exports.default = StyleKeeper; -module.exports = exports['default']; -},{}],70:[function(require,module,exports){ -/** - * Copyright 2013-present, Facebook, Inc. - * All rights reserved. - * - * This source code is licensed under the BSD-style license found in the - * LICENSE file in the root directory of this source tree. An additional grant - * of patent rights can be found in the PATENTS file in the same directory. - * - * @providesModule KeyEscapeUtils - * - */ - -'use strict'; - -/** - * Escape and wrap key so it is safe to use as a reactid - * - * @param {string} key to be escaped. - * @return {string} the escaped key. - */ - -function escape(key) { - var escapeRegex = /[=:]/g; - var escaperLookup = { - '=': '=0', - ':': '=2' - }; - var escapedString = ('' + key).replace(escapeRegex, function (match) { - return escaperLookup[match]; - }); - - return '$' + escapedString; -} - -/** - * Unescape and unwrap key for human-readable display - * - * @param {string} key to unescape. - * @return {string} the unescaped key. - */ -function unescape(key) { - var unescapeRegex = /(=0|=2)/g; - var unescaperLookup = { - '=0': '=', - '=2': ':' - }; - var keySubstring = key[0] === '.' && key[1] === '$' ? key.substring(2) : key.substring(1); - - return ('' + keySubstring).replace(unescapeRegex, function (match) { - return unescaperLookup[match]; - }); -} - -var KeyEscapeUtils = { - escape: escape, - unescape: unescape -}; - -module.exports = KeyEscapeUtils; -},{}],71:[function(require,module,exports){ -(function (process){ -/** - * Copyright 2013-present, Facebook, Inc. - * All rights reserved. - * - * This source code is licensed under the BSD-style license found in the - * LICENSE file in the root directory of this source tree. An additional grant - * of patent rights can be found in the PATENTS file in the same directory. - * - * @providesModule PooledClass - */ - -'use strict'; - -var _prodInvariant = require('./reactProdInvariant'); - -var invariant = require('fbjs/lib/invariant'); - -/** - * Static poolers. Several custom versions for each potential number of - * arguments. A completely generic pooler is easy to implement, but would - * require accessing the `arguments` object. In each of these, `this` refers to - * the Class itself, not an instance. If any others are needed, simply add them - * here, or in their own files. - */ -var oneArgumentPooler = function (copyFieldsFrom) { - var Klass = this; - if (Klass.instancePool.length) { - var instance = Klass.instancePool.pop(); - Klass.call(instance, copyFieldsFrom); - return instance; - } else { - return new Klass(copyFieldsFrom); - } -}; - -var twoArgumentPooler = function (a1, a2) { - var Klass = this; - if (Klass.instancePool.length) { - var instance = Klass.instancePool.pop(); - Klass.call(instance, a1, a2); - return instance; - } else { - return new Klass(a1, a2); - } -}; - -var threeArgumentPooler = function (a1, a2, a3) { - var Klass = this; - if (Klass.instancePool.length) { - var instance = Klass.instancePool.pop(); - Klass.call(instance, a1, a2, a3); - return instance; - } else { - return new Klass(a1, a2, a3); - } -}; - -var fourArgumentPooler = function (a1, a2, a3, a4) { - var Klass = this; - if (Klass.instancePool.length) { - var instance = Klass.instancePool.pop(); - Klass.call(instance, a1, a2, a3, a4); - return instance; - } else { - return new Klass(a1, a2, a3, a4); - } -}; - -var fiveArgumentPooler = function (a1, a2, a3, a4, a5) { - var Klass = this; - if (Klass.instancePool.length) { - var instance = Klass.instancePool.pop(); - Klass.call(instance, a1, a2, a3, a4, a5); - return instance; - } else { - return new Klass(a1, a2, a3, a4, a5); - } -}; - -var standardReleaser = function (instance) { - var Klass = this; - !(instance instanceof Klass) ? process.env.NODE_ENV !== 'production' ? invariant(false, 'Trying to release an instance into a pool of a different type.') : _prodInvariant('25') : void 0; - instance.destructor(); - if (Klass.instancePool.length < Klass.poolSize) { - Klass.instancePool.push(instance); - } -}; - -var DEFAULT_POOL_SIZE = 10; -var DEFAULT_POOLER = oneArgumentPooler; - -/** - * Augments `CopyConstructor` to be a poolable class, augmenting only the class - * itself (statically) not adding any prototypical fields. Any CopyConstructor - * you give this may have a `poolSize` property, and will look for a - * prototypical `destructor` on instances. - * - * @param {Function} CopyConstructor Constructor that can be used to reset. - * @param {Function} pooler Customizable pooler. - */ -var addPoolingTo = function (CopyConstructor, pooler) { - var NewKlass = CopyConstructor; - NewKlass.instancePool = []; - NewKlass.getPooled = pooler || DEFAULT_POOLER; - if (!NewKlass.poolSize) { - NewKlass.poolSize = DEFAULT_POOL_SIZE; - } - NewKlass.release = standardReleaser; - return NewKlass; -}; - -var PooledClass = { - addPoolingTo: addPoolingTo, - oneArgumentPooler: oneArgumentPooler, - twoArgumentPooler: twoArgumentPooler, - threeArgumentPooler: threeArgumentPooler, - fourArgumentPooler: fourArgumentPooler, - fiveArgumentPooler: fiveArgumentPooler -}; - -module.exports = PooledClass; -}).call(this,require('_process')) - -},{"./reactProdInvariant":92,"_process":122,"fbjs/lib/invariant":5}],72:[function(require,module,exports){ -(function (process){ -/** - * Copyright 2013-present, Facebook, Inc. - * All rights reserved. - * - * This source code is licensed under the BSD-style license found in the - * LICENSE file in the root directory of this source tree. An additional grant - * of patent rights can be found in the PATENTS file in the same directory. - * - * @providesModule React - */ - -'use strict'; - -var _assign = require('object-assign'); - -var ReactChildren = require('./ReactChildren'); -var ReactComponent = require('./ReactComponent'); -var ReactPureComponent = require('./ReactPureComponent'); -var ReactClass = require('./ReactClass'); -var ReactDOMFactories = require('./ReactDOMFactories'); -var ReactElement = require('./ReactElement'); -var ReactPropTypes = require('./ReactPropTypes'); -var ReactVersion = require('./ReactVersion'); - -var onlyChild = require('./onlyChild'); -var warning = require('fbjs/lib/warning'); - -var createElement = ReactElement.createElement; -var createFactory = ReactElement.createFactory; -var cloneElement = ReactElement.cloneElement; - -if (process.env.NODE_ENV !== 'production') { - var ReactElementValidator = require('./ReactElementValidator'); - createElement = ReactElementValidator.createElement; - createFactory = ReactElementValidator.createFactory; - cloneElement = ReactElementValidator.cloneElement; -} - -var __spread = _assign; - -if (process.env.NODE_ENV !== 'production') { - var warned = false; - __spread = function () { - process.env.NODE_ENV !== 'production' ? warning(warned, 'React.__spread is deprecated and should not be used. Use ' + 'Object.assign directly or another helper function with similar ' + 'semantics. You may be seeing this warning due to your compiler. ' + 'See https://fb.me/react-spread-deprecation for more details.') : void 0; - warned = true; - return _assign.apply(null, arguments); - }; -} - -var React = { - - // Modern - - Children: { - map: ReactChildren.map, - forEach: ReactChildren.forEach, - count: ReactChildren.count, - toArray: ReactChildren.toArray, - only: onlyChild - }, - - Component: ReactComponent, - PureComponent: ReactPureComponent, - - createElement: createElement, - cloneElement: cloneElement, - isValidElement: ReactElement.isValidElement, - - // Classic - - PropTypes: ReactPropTypes, - createClass: ReactClass.createClass, - createFactory: createFactory, - createMixin: function (mixin) { - // Currently a noop. Will be used to validate and trace mixins. - return mixin; - }, - - // This looks DOM specific but these are actually isomorphic helpers - // since they are just generating DOM strings. - DOM: ReactDOMFactories, - - version: ReactVersion, - - // Deprecated hook for JSX spread, don't use this for anything. - __spread: __spread -}; - -module.exports = React; -}).call(this,require('_process')) - -},{"./ReactChildren":73,"./ReactClass":74,"./ReactComponent":75,"./ReactDOMFactories":78,"./ReactElement":79,"./ReactElementValidator":80,"./ReactPropTypes":84,"./ReactPureComponent":86,"./ReactVersion":87,"./onlyChild":91,"_process":122,"fbjs/lib/warning":8,"object-assign":40}],73:[function(require,module,exports){ -/** - * Copyright 2013-present, Facebook, Inc. - * All rights reserved. - * - * This source code is licensed under the BSD-style license found in the - * LICENSE file in the root directory of this source tree. An additional grant - * of patent rights can be found in the PATENTS file in the same directory. - * - * @providesModule ReactChildren - */ - -'use strict'; - -var PooledClass = require('./PooledClass'); -var ReactElement = require('./ReactElement'); - -var emptyFunction = require('fbjs/lib/emptyFunction'); -var traverseAllChildren = require('./traverseAllChildren'); - -var twoArgumentPooler = PooledClass.twoArgumentPooler; -var fourArgumentPooler = PooledClass.fourArgumentPooler; - -var userProvidedKeyEscapeRegex = /\/+/g; -function escapeUserProvidedKey(text) { - return ('' + text).replace(userProvidedKeyEscapeRegex, '$&/'); -} - -/** - * PooledClass representing the bookkeeping associated with performing a child - * traversal. Allows avoiding binding callbacks. - * - * @constructor ForEachBookKeeping - * @param {!function} forEachFunction Function to perform traversal with. - * @param {?*} forEachContext Context to perform context with. - */ -function ForEachBookKeeping(forEachFunction, forEachContext) { - this.func = forEachFunction; - this.context = forEachContext; - this.count = 0; -} -ForEachBookKeeping.prototype.destructor = function () { - this.func = null; - this.context = null; - this.count = 0; -}; -PooledClass.addPoolingTo(ForEachBookKeeping, twoArgumentPooler); - -function forEachSingleChild(bookKeeping, child, name) { - var func = bookKeeping.func; - var context = bookKeeping.context; - - func.call(context, child, bookKeeping.count++); -} - -/** - * Iterates through children that are typically specified as `props.children`. - * - * See https://facebook.github.io/react/docs/top-level-api.html#react.children.foreach - * - * The provided forEachFunc(child, index) will be called for each - * leaf child. - * - * @param {?*} children Children tree container. - * @param {function(*, int)} forEachFunc - * @param {*} forEachContext Context for forEachContext. - */ -function forEachChildren(children, forEachFunc, forEachContext) { - if (children == null) { - return children; - } - var traverseContext = ForEachBookKeeping.getPooled(forEachFunc, forEachContext); - traverseAllChildren(children, forEachSingleChild, traverseContext); - ForEachBookKeeping.release(traverseContext); -} - -/** - * PooledClass representing the bookkeeping associated with performing a child - * mapping. Allows avoiding binding callbacks. - * - * @constructor MapBookKeeping - * @param {!*} mapResult Object containing the ordered map of results. - * @param {!function} mapFunction Function to perform mapping with. - * @param {?*} mapContext Context to perform mapping with. - */ -function MapBookKeeping(mapResult, keyPrefix, mapFunction, mapContext) { - this.result = mapResult; - this.keyPrefix = keyPrefix; - this.func = mapFunction; - this.context = mapContext; - this.count = 0; -} -MapBookKeeping.prototype.destructor = function () { - this.result = null; - this.keyPrefix = null; - this.func = null; - this.context = null; - this.count = 0; -}; -PooledClass.addPoolingTo(MapBookKeeping, fourArgumentPooler); - -function mapSingleChildIntoContext(bookKeeping, child, childKey) { - var result = bookKeeping.result; - var keyPrefix = bookKeeping.keyPrefix; - var func = bookKeeping.func; - var context = bookKeeping.context; - - - var mappedChild = func.call(context, child, bookKeeping.count++); - if (Array.isArray(mappedChild)) { - mapIntoWithKeyPrefixInternal(mappedChild, result, childKey, emptyFunction.thatReturnsArgument); - } else if (mappedChild != null) { - if (ReactElement.isValidElement(mappedChild)) { - mappedChild = ReactElement.cloneAndReplaceKey(mappedChild, - // Keep both the (mapped) and old keys if they differ, just as - // traverseAllChildren used to do for objects as children - keyPrefix + (mappedChild.key && (!child || child.key !== mappedChild.key) ? escapeUserProvidedKey(mappedChild.key) + '/' : '') + childKey); - } - result.push(mappedChild); - } -} - -function mapIntoWithKeyPrefixInternal(children, array, prefix, func, context) { - var escapedPrefix = ''; - if (prefix != null) { - escapedPrefix = escapeUserProvidedKey(prefix) + '/'; - } - var traverseContext = MapBookKeeping.getPooled(array, escapedPrefix, func, context); - traverseAllChildren(children, mapSingleChildIntoContext, traverseContext); - MapBookKeeping.release(traverseContext); -} - -/** - * Maps children that are typically specified as `props.children`. - * - * See https://facebook.github.io/react/docs/top-level-api.html#react.children.map - * - * The provided mapFunction(child, key, index) will be called for each - * leaf child. - * - * @param {?*} children Children tree container. - * @param {function(*, int)} func The map function. - * @param {*} context Context for mapFunction. - * @return {object} Object containing the ordered map of results. - */ -function mapChildren(children, func, context) { - if (children == null) { - return children; - } - var result = []; - mapIntoWithKeyPrefixInternal(children, result, null, func, context); - return result; -} - -function forEachSingleChildDummy(traverseContext, child, name) { - return null; -} - -/** - * Count the number of children that are typically specified as - * `props.children`. - * - * See https://facebook.github.io/react/docs/top-level-api.html#react.children.count - * - * @param {?*} children Children tree container. - * @return {number} The number of children. - */ -function countChildren(children, context) { - return traverseAllChildren(children, forEachSingleChildDummy, null); -} - -/** - * Flatten a children object (typically specified as `props.children`) and - * return an array with appropriately re-keyed children. - * - * See https://facebook.github.io/react/docs/top-level-api.html#react.children.toarray - */ -function toArray(children) { - var result = []; - mapIntoWithKeyPrefixInternal(children, result, null, emptyFunction.thatReturnsArgument); - return result; -} - -var ReactChildren = { - forEach: forEachChildren, - map: mapChildren, - mapIntoWithKeyPrefixInternal: mapIntoWithKeyPrefixInternal, - count: countChildren, - toArray: toArray -}; - -module.exports = ReactChildren; -},{"./PooledClass":71,"./ReactElement":79,"./traverseAllChildren":93,"fbjs/lib/emptyFunction":3}],74:[function(require,module,exports){ -(function (process){ -/** - * Copyright 2013-present, Facebook, Inc. - * All rights reserved. - * - * This source code is licensed under the BSD-style license found in the - * LICENSE file in the root directory of this source tree. An additional grant - * of patent rights can be found in the PATENTS file in the same directory. - * - * @providesModule ReactClass - */ - -'use strict'; - -var _prodInvariant = require('./reactProdInvariant'), - _assign = require('object-assign'); - -var ReactComponent = require('./ReactComponent'); -var ReactElement = require('./ReactElement'); -var ReactPropTypeLocations = require('./ReactPropTypeLocations'); -var ReactPropTypeLocationNames = require('./ReactPropTypeLocationNames'); -var ReactNoopUpdateQueue = require('./ReactNoopUpdateQueue'); - -var emptyObject = require('fbjs/lib/emptyObject'); -var invariant = require('fbjs/lib/invariant'); -var keyMirror = require('fbjs/lib/keyMirror'); -var keyOf = require('fbjs/lib/keyOf'); -var warning = require('fbjs/lib/warning'); - -var MIXINS_KEY = keyOf({ mixins: null }); - -/** - * Policies that describe methods in `ReactClassInterface`. - */ -var SpecPolicy = keyMirror({ - /** - * These methods may be defined only once by the class specification or mixin. - */ - DEFINE_ONCE: null, - /** - * These methods may be defined by both the class specification and mixins. - * Subsequent definitions will be chained. These methods must return void. - */ - DEFINE_MANY: null, - /** - * These methods are overriding the base class. - */ - OVERRIDE_BASE: null, - /** - * These methods are similar to DEFINE_MANY, except we assume they return - * objects. We try to merge the keys of the return values of all the mixed in - * functions. If there is a key conflict we throw. - */ - DEFINE_MANY_MERGED: null -}); - -var injectedMixins = []; - -/** - * Composite components are higher-level components that compose other composite - * or host components. - * - * To create a new type of `ReactClass`, pass a specification of - * your new class to `React.createClass`. The only requirement of your class - * specification is that you implement a `render` method. - * - * var MyComponent = React.createClass({ - * render: function() { - * return
Hello World
; - * } - * }); - * - * The class specification supports a specific protocol of methods that have - * special meaning (e.g. `render`). See `ReactClassInterface` for - * more the comprehensive protocol. Any other properties and methods in the - * class specification will be available on the prototype. - * - * @interface ReactClassInterface - * @internal - */ -var ReactClassInterface = { - - /** - * An array of Mixin objects to include when defining your component. - * - * @type {array} - * @optional - */ - mixins: SpecPolicy.DEFINE_MANY, - - /** - * An object containing properties and methods that should be defined on - * the component's constructor instead of its prototype (static methods). - * - * @type {object} - * @optional - */ - statics: SpecPolicy.DEFINE_MANY, - - /** - * Definition of prop types for this component. - * - * @type {object} - * @optional - */ - propTypes: SpecPolicy.DEFINE_MANY, - - /** - * Definition of context types for this component. - * - * @type {object} - * @optional - */ - contextTypes: SpecPolicy.DEFINE_MANY, - - /** - * Definition of context types this component sets for its children. - * - * @type {object} - * @optional - */ - childContextTypes: SpecPolicy.DEFINE_MANY, - - // ==== Definition methods ==== - - /** - * Invoked when the component is mounted. Values in the mapping will be set on - * `this.props` if that prop is not specified (i.e. using an `in` check). - * - * This method is invoked before `getInitialState` and therefore cannot rely - * on `this.state` or use `this.setState`. - * - * @return {object} - * @optional - */ - getDefaultProps: SpecPolicy.DEFINE_MANY_MERGED, - - /** - * Invoked once before the component is mounted. The return value will be used - * as the initial value of `this.state`. - * - * getInitialState: function() { - * return { - * isOn: false, - * fooBaz: new BazFoo() - * } - * } - * - * @return {object} - * @optional - */ - getInitialState: SpecPolicy.DEFINE_MANY_MERGED, - - /** - * @return {object} - * @optional - */ - getChildContext: SpecPolicy.DEFINE_MANY_MERGED, - - /** - * Uses props from `this.props` and state from `this.state` to render the - * structure of the component. - * - * No guarantees are made about when or how often this method is invoked, so - * it must not have side effects. - * - * render: function() { - * var name = this.props.name; - * return
Hello, {name}!
; - * } - * - * @return {ReactComponent} - * @nosideeffects - * @required - */ - render: SpecPolicy.DEFINE_ONCE, - - // ==== Delegate methods ==== - - /** - * Invoked when the component is initially created and about to be mounted. - * This may have side effects, but any external subscriptions or data created - * by this method must be cleaned up in `componentWillUnmount`. - * - * @optional - */ - componentWillMount: SpecPolicy.DEFINE_MANY, - - /** - * Invoked when the component has been mounted and has a DOM representation. - * However, there is no guarantee that the DOM node is in the document. - * - * Use this as an opportunity to operate on the DOM when the component has - * been mounted (initialized and rendered) for the first time. - * - * @param {DOMElement} rootNode DOM element representing the component. - * @optional - */ - componentDidMount: SpecPolicy.DEFINE_MANY, - - /** - * Invoked before the component receives new props. - * - * Use this as an opportunity to react to a prop transition by updating the - * state using `this.setState`. Current props are accessed via `this.props`. - * - * componentWillReceiveProps: function(nextProps, nextContext) { - * this.setState({ - * likesIncreasing: nextProps.likeCount > this.props.likeCount - * }); - * } - * - * NOTE: There is no equivalent `componentWillReceiveState`. An incoming prop - * transition may cause a state change, but the opposite is not true. If you - * need it, you are probably looking for `componentWillUpdate`. - * - * @param {object} nextProps - * @optional - */ - componentWillReceiveProps: SpecPolicy.DEFINE_MANY, - - /** - * Invoked while deciding if the component should be updated as a result of - * receiving new props, state and/or context. - * - * Use this as an opportunity to `return false` when you're certain that the - * transition to the new props/state/context will not require a component - * update. - * - * shouldComponentUpdate: function(nextProps, nextState, nextContext) { - * return !equal(nextProps, this.props) || - * !equal(nextState, this.state) || - * !equal(nextContext, this.context); - * } - * - * @param {object} nextProps - * @param {?object} nextState - * @param {?object} nextContext - * @return {boolean} True if the component should update. - * @optional - */ - shouldComponentUpdate: SpecPolicy.DEFINE_ONCE, - - /** - * Invoked when the component is about to update due to a transition from - * `this.props`, `this.state` and `this.context` to `nextProps`, `nextState` - * and `nextContext`. - * - * Use this as an opportunity to perform preparation before an update occurs. - * - * NOTE: You **cannot** use `this.setState()` in this method. - * - * @param {object} nextProps - * @param {?object} nextState - * @param {?object} nextContext - * @param {ReactReconcileTransaction} transaction - * @optional - */ - componentWillUpdate: SpecPolicy.DEFINE_MANY, - - /** - * Invoked when the component's DOM representation has been updated. - * - * Use this as an opportunity to operate on the DOM when the component has - * been updated. - * - * @param {object} prevProps - * @param {?object} prevState - * @param {?object} prevContext - * @param {DOMElement} rootNode DOM element representing the component. - * @optional - */ - componentDidUpdate: SpecPolicy.DEFINE_MANY, - - /** - * Invoked when the component is about to be removed from its parent and have - * its DOM representation destroyed. - * - * Use this as an opportunity to deallocate any external resources. - * - * NOTE: There is no `componentDidUnmount` since your component will have been - * destroyed by that point. - * - * @optional - */ - componentWillUnmount: SpecPolicy.DEFINE_MANY, - - // ==== Advanced methods ==== - - /** - * Updates the component's currently mounted DOM representation. - * - * By default, this implements React's rendering and reconciliation algorithm. - * Sophisticated clients may wish to override this. - * - * @param {ReactReconcileTransaction} transaction - * @internal - * @overridable - */ - updateComponent: SpecPolicy.OVERRIDE_BASE - -}; - -/** - * Mapping from class specification keys to special processing functions. - * - * Although these are declared like instance properties in the specification - * when defining classes using `React.createClass`, they are actually static - * and are accessible on the constructor instead of the prototype. Despite - * being static, they must be defined outside of the "statics" key under - * which all other static methods are defined. - */ -var RESERVED_SPEC_KEYS = { - displayName: function (Constructor, displayName) { - Constructor.displayName = displayName; - }, - mixins: function (Constructor, mixins) { - if (mixins) { - for (var i = 0; i < mixins.length; i++) { - mixSpecIntoComponent(Constructor, mixins[i]); - } - } - }, - childContextTypes: function (Constructor, childContextTypes) { - if (process.env.NODE_ENV !== 'production') { - validateTypeDef(Constructor, childContextTypes, ReactPropTypeLocations.childContext); - } - Constructor.childContextTypes = _assign({}, Constructor.childContextTypes, childContextTypes); - }, - contextTypes: function (Constructor, contextTypes) { - if (process.env.NODE_ENV !== 'production') { - validateTypeDef(Constructor, contextTypes, ReactPropTypeLocations.context); - } - Constructor.contextTypes = _assign({}, Constructor.contextTypes, contextTypes); - }, - /** - * Special case getDefaultProps which should move into statics but requires - * automatic merging. - */ - getDefaultProps: function (Constructor, getDefaultProps) { - if (Constructor.getDefaultProps) { - Constructor.getDefaultProps = createMergedResultFunction(Constructor.getDefaultProps, getDefaultProps); - } else { - Constructor.getDefaultProps = getDefaultProps; - } - }, - propTypes: function (Constructor, propTypes) { - if (process.env.NODE_ENV !== 'production') { - validateTypeDef(Constructor, propTypes, ReactPropTypeLocations.prop); - } - Constructor.propTypes = _assign({}, Constructor.propTypes, propTypes); - }, - statics: function (Constructor, statics) { - mixStaticSpecIntoComponent(Constructor, statics); - }, - autobind: function () {} }; - -// noop -function validateTypeDef(Constructor, typeDef, location) { - for (var propName in typeDef) { - if (typeDef.hasOwnProperty(propName)) { - // use a warning instead of an invariant so components - // don't show up in prod but only in __DEV__ - process.env.NODE_ENV !== 'production' ? warning(typeof typeDef[propName] === 'function', '%s: %s type `%s` is invalid; it must be a function, usually from ' + 'React.PropTypes.', Constructor.displayName || 'ReactClass', ReactPropTypeLocationNames[location], propName) : void 0; - } - } -} - -function validateMethodOverride(isAlreadyDefined, name) { - var specPolicy = ReactClassInterface.hasOwnProperty(name) ? ReactClassInterface[name] : null; - - // Disallow overriding of base class methods unless explicitly allowed. - if (ReactClassMixin.hasOwnProperty(name)) { - !(specPolicy === SpecPolicy.OVERRIDE_BASE) ? process.env.NODE_ENV !== 'production' ? invariant(false, 'ReactClassInterface: You are attempting to override `%s` from your class specification. Ensure that your method names do not overlap with React methods.', name) : _prodInvariant('73', name) : void 0; - } - - // Disallow defining methods more than once unless explicitly allowed. - if (isAlreadyDefined) { - !(specPolicy === SpecPolicy.DEFINE_MANY || specPolicy === SpecPolicy.DEFINE_MANY_MERGED) ? process.env.NODE_ENV !== 'production' ? invariant(false, 'ReactClassInterface: You are attempting to define `%s` on your component more than once. This conflict may be due to a mixin.', name) : _prodInvariant('74', name) : void 0; - } -} - -/** - * Mixin helper which handles policy validation and reserved - * specification keys when building React classes. - */ -function mixSpecIntoComponent(Constructor, spec) { - if (!spec) { - if (process.env.NODE_ENV !== 'production') { - var typeofSpec = typeof spec; - var isMixinValid = typeofSpec === 'object' && spec !== null; - - process.env.NODE_ENV !== 'production' ? warning(isMixinValid, '%s: You\'re attempting to include a mixin that is either null ' + 'or not an object. Check the mixins included by the component, ' + 'as well as any mixins they include themselves. ' + 'Expected object but got %s.', Constructor.displayName || 'ReactClass', spec === null ? null : typeofSpec) : void 0; - } - - return; - } - - !(typeof spec !== 'function') ? process.env.NODE_ENV !== 'production' ? invariant(false, 'ReactClass: You\'re attempting to use a component class or function as a mixin. Instead, just use a regular object.') : _prodInvariant('75') : void 0; - !!ReactElement.isValidElement(spec) ? process.env.NODE_ENV !== 'production' ? invariant(false, 'ReactClass: You\'re attempting to use a component as a mixin. Instead, just use a regular object.') : _prodInvariant('76') : void 0; - - var proto = Constructor.prototype; - var autoBindPairs = proto.__reactAutoBindPairs; - - // By handling mixins before any other properties, we ensure the same - // chaining order is applied to methods with DEFINE_MANY policy, whether - // mixins are listed before or after these methods in the spec. - if (spec.hasOwnProperty(MIXINS_KEY)) { - RESERVED_SPEC_KEYS.mixins(Constructor, spec.mixins); - } - - for (var name in spec) { - if (!spec.hasOwnProperty(name)) { - continue; - } - - if (name === MIXINS_KEY) { - // We have already handled mixins in a special case above. - continue; - } - - var property = spec[name]; - var isAlreadyDefined = proto.hasOwnProperty(name); - validateMethodOverride(isAlreadyDefined, name); - - if (RESERVED_SPEC_KEYS.hasOwnProperty(name)) { - RESERVED_SPEC_KEYS[name](Constructor, property); - } else { - // Setup methods on prototype: - // The following member methods should not be automatically bound: - // 1. Expected ReactClass methods (in the "interface"). - // 2. Overridden methods (that were mixed in). - var isReactClassMethod = ReactClassInterface.hasOwnProperty(name); - var isFunction = typeof property === 'function'; - var shouldAutoBind = isFunction && !isReactClassMethod && !isAlreadyDefined && spec.autobind !== false; - - if (shouldAutoBind) { - autoBindPairs.push(name, property); - proto[name] = property; - } else { - if (isAlreadyDefined) { - var specPolicy = ReactClassInterface[name]; - - // These cases should already be caught by validateMethodOverride. - !(isReactClassMethod && (specPolicy === SpecPolicy.DEFINE_MANY_MERGED || specPolicy === SpecPolicy.DEFINE_MANY)) ? process.env.NODE_ENV !== 'production' ? invariant(false, 'ReactClass: Unexpected spec policy %s for key %s when mixing in component specs.', specPolicy, name) : _prodInvariant('77', specPolicy, name) : void 0; - - // For methods which are defined more than once, call the existing - // methods before calling the new property, merging if appropriate. - if (specPolicy === SpecPolicy.DEFINE_MANY_MERGED) { - proto[name] = createMergedResultFunction(proto[name], property); - } else if (specPolicy === SpecPolicy.DEFINE_MANY) { - proto[name] = createChainedFunction(proto[name], property); - } - } else { - proto[name] = property; - if (process.env.NODE_ENV !== 'production') { - // Add verbose displayName to the function, which helps when looking - // at profiling tools. - if (typeof property === 'function' && spec.displayName) { - proto[name].displayName = spec.displayName + '_' + name; - } - } - } - } - } - } -} - -function mixStaticSpecIntoComponent(Constructor, statics) { - if (!statics) { - return; - } - for (var name in statics) { - var property = statics[name]; - if (!statics.hasOwnProperty(name)) { - continue; - } - - var isReserved = name in RESERVED_SPEC_KEYS; - !!isReserved ? process.env.NODE_ENV !== 'production' ? invariant(false, 'ReactClass: You are attempting to define a reserved property, `%s`, that shouldn\'t be on the "statics" key. Define it as an instance property instead; it will still be accessible on the constructor.', name) : _prodInvariant('78', name) : void 0; - - var isInherited = name in Constructor; - !!isInherited ? process.env.NODE_ENV !== 'production' ? invariant(false, 'ReactClass: You are attempting to define `%s` on your component more than once. This conflict may be due to a mixin.', name) : _prodInvariant('79', name) : void 0; - Constructor[name] = property; - } -} - -/** - * Merge two objects, but throw if both contain the same key. - * - * @param {object} one The first object, which is mutated. - * @param {object} two The second object - * @return {object} one after it has been mutated to contain everything in two. - */ -function mergeIntoWithNoDuplicateKeys(one, two) { - !(one && two && typeof one === 'object' && typeof two === 'object') ? process.env.NODE_ENV !== 'production' ? invariant(false, 'mergeIntoWithNoDuplicateKeys(): Cannot merge non-objects.') : _prodInvariant('80') : void 0; - - for (var key in two) { - if (two.hasOwnProperty(key)) { - !(one[key] === undefined) ? process.env.NODE_ENV !== 'production' ? invariant(false, 'mergeIntoWithNoDuplicateKeys(): Tried to merge two objects with the same key: `%s`. This conflict may be due to a mixin; in particular, this may be caused by two getInitialState() or getDefaultProps() methods returning objects with clashing keys.', key) : _prodInvariant('81', key) : void 0; - one[key] = two[key]; - } - } - return one; -} - -/** - * Creates a function that invokes two functions and merges their return values. - * - * @param {function} one Function to invoke first. - * @param {function} two Function to invoke second. - * @return {function} Function that invokes the two argument functions. - * @private - */ -function createMergedResultFunction(one, two) { - return function mergedResult() { - var a = one.apply(this, arguments); - var b = two.apply(this, arguments); - if (a == null) { - return b; - } else if (b == null) { - return a; - } - var c = {}; - mergeIntoWithNoDuplicateKeys(c, a); - mergeIntoWithNoDuplicateKeys(c, b); - return c; - }; -} - -/** - * Creates a function that invokes two functions and ignores their return vales. - * - * @param {function} one Function to invoke first. - * @param {function} two Function to invoke second. - * @return {function} Function that invokes the two argument functions. - * @private - */ -function createChainedFunction(one, two) { - return function chainedFunction() { - one.apply(this, arguments); - two.apply(this, arguments); - }; -} - -/** - * Binds a method to the component. - * - * @param {object} component Component whose method is going to be bound. - * @param {function} method Method to be bound. - * @return {function} The bound method. - */ -function bindAutoBindMethod(component, method) { - var boundMethod = method.bind(component); - if (process.env.NODE_ENV !== 'production') { - boundMethod.__reactBoundContext = component; - boundMethod.__reactBoundMethod = method; - boundMethod.__reactBoundArguments = null; - var componentName = component.constructor.displayName; - var _bind = boundMethod.bind; - boundMethod.bind = function (newThis) { - for (var _len = arguments.length, args = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) { - args[_key - 1] = arguments[_key]; - } - - // User is trying to bind() an autobound method; we effectively will - // ignore the value of "this" that the user is trying to use, so - // let's warn. - if (newThis !== component && newThis !== null) { - process.env.NODE_ENV !== 'production' ? warning(false, 'bind(): React component methods may only be bound to the ' + 'component instance. See %s', componentName) : void 0; - } else if (!args.length) { - process.env.NODE_ENV !== 'production' ? warning(false, 'bind(): You are binding a component method to the component. ' + 'React does this for you automatically in a high-performance ' + 'way, so you can safely remove this call. See %s', componentName) : void 0; - return boundMethod; - } - var reboundMethod = _bind.apply(boundMethod, arguments); - reboundMethod.__reactBoundContext = component; - reboundMethod.__reactBoundMethod = method; - reboundMethod.__reactBoundArguments = args; - return reboundMethod; - }; - } - return boundMethod; -} - -/** - * Binds all auto-bound methods in a component. - * - * @param {object} component Component whose method is going to be bound. - */ -function bindAutoBindMethods(component) { - var pairs = component.__reactAutoBindPairs; - for (var i = 0; i < pairs.length; i += 2) { - var autoBindKey = pairs[i]; - var method = pairs[i + 1]; - component[autoBindKey] = bindAutoBindMethod(component, method); - } -} - -/** - * Add more to the ReactClass base class. These are all legacy features and - * therefore not already part of the modern ReactComponent. - */ -var ReactClassMixin = { - - /** - * TODO: This will be deprecated because state should always keep a consistent - * type signature and the only use case for this, is to avoid that. - */ - replaceState: function (newState, callback) { - this.updater.enqueueReplaceState(this, newState); - if (callback) { - this.updater.enqueueCallback(this, callback, 'replaceState'); - } - }, - - /** - * Checks whether or not this composite component is mounted. - * @return {boolean} True if mounted, false otherwise. - * @protected - * @final - */ - isMounted: function () { - return this.updater.isMounted(this); - } -}; - -var ReactClassComponent = function () {}; -_assign(ReactClassComponent.prototype, ReactComponent.prototype, ReactClassMixin); - -/** - * Module for creating composite components. - * - * @class ReactClass - */ -var ReactClass = { - - /** - * Creates a composite component class given a class specification. - * See https://facebook.github.io/react/docs/top-level-api.html#react.createclass - * - * @param {object} spec Class specification (which must define `render`). - * @return {function} Component constructor function. - * @public - */ - createClass: function (spec) { - var Constructor = function (props, context, updater) { - // This constructor gets overridden by mocks. The argument is used - // by mocks to assert on what gets mounted. - - if (process.env.NODE_ENV !== 'production') { - process.env.NODE_ENV !== 'production' ? warning(this instanceof Constructor, 'Something is calling a React component directly. Use a factory or ' + 'JSX instead. See: https://fb.me/react-legacyfactory') : void 0; - } - - // Wire up auto-binding - if (this.__reactAutoBindPairs.length) { - bindAutoBindMethods(this); - } - - this.props = props; - this.context = context; - this.refs = emptyObject; - this.updater = updater || ReactNoopUpdateQueue; - - this.state = null; - - // ReactClasses doesn't have constructors. Instead, they use the - // getInitialState and componentWillMount methods for initialization. - - var initialState = this.getInitialState ? this.getInitialState() : null; - if (process.env.NODE_ENV !== 'production') { - // We allow auto-mocks to proceed as if they're returning null. - if (initialState === undefined && this.getInitialState._isMockFunction) { - // This is probably bad practice. Consider warning here and - // deprecating this convenience. - initialState = null; - } - } - !(typeof initialState === 'object' && !Array.isArray(initialState)) ? process.env.NODE_ENV !== 'production' ? invariant(false, '%s.getInitialState(): must return an object or null', Constructor.displayName || 'ReactCompositeComponent') : _prodInvariant('82', Constructor.displayName || 'ReactCompositeComponent') : void 0; - - this.state = initialState; - }; - Constructor.prototype = new ReactClassComponent(); - Constructor.prototype.constructor = Constructor; - Constructor.prototype.__reactAutoBindPairs = []; - - injectedMixins.forEach(mixSpecIntoComponent.bind(null, Constructor)); - - mixSpecIntoComponent(Constructor, spec); - - // Initialize the defaultProps property after all mixins have been merged. - if (Constructor.getDefaultProps) { - Constructor.defaultProps = Constructor.getDefaultProps(); - } - - if (process.env.NODE_ENV !== 'production') { - // This is a tag to indicate that the use of these method names is ok, - // since it's used with createClass. If it's not, then it's likely a - // mistake so we'll warn you to use the static property, property - // initializer or constructor respectively. - if (Constructor.getDefaultProps) { - Constructor.getDefaultProps.isReactClassApproved = {}; - } - if (Constructor.prototype.getInitialState) { - Constructor.prototype.getInitialState.isReactClassApproved = {}; - } - } - - !Constructor.prototype.render ? process.env.NODE_ENV !== 'production' ? invariant(false, 'createClass(...): Class specification must implement a `render` method.') : _prodInvariant('83') : void 0; - - if (process.env.NODE_ENV !== 'production') { - process.env.NODE_ENV !== 'production' ? warning(!Constructor.prototype.componentShouldUpdate, '%s has a method called ' + 'componentShouldUpdate(). Did you mean shouldComponentUpdate()? ' + 'The name is phrased as a question because the function is ' + 'expected to return a value.', spec.displayName || 'A component') : void 0; - process.env.NODE_ENV !== 'production' ? warning(!Constructor.prototype.componentWillRecieveProps, '%s has a method called ' + 'componentWillRecieveProps(). Did you mean componentWillReceiveProps()?', spec.displayName || 'A component') : void 0; - } - - // Reduce time spent doing lookups by setting these on the prototype. - for (var methodName in ReactClassInterface) { - if (!Constructor.prototype[methodName]) { - Constructor.prototype[methodName] = null; - } - } - - return Constructor; - }, - - injection: { - injectMixin: function (mixin) { - injectedMixins.push(mixin); - } - } - -}; - -module.exports = ReactClass; -}).call(this,require('_process')) - -},{"./ReactComponent":75,"./ReactElement":79,"./ReactNoopUpdateQueue":81,"./ReactPropTypeLocationNames":82,"./ReactPropTypeLocations":83,"./reactProdInvariant":92,"_process":122,"fbjs/lib/emptyObject":4,"fbjs/lib/invariant":5,"fbjs/lib/keyMirror":6,"fbjs/lib/keyOf":7,"fbjs/lib/warning":8,"object-assign":40}],75:[function(require,module,exports){ -(function (process){ -/** - * Copyright 2013-present, Facebook, Inc. - * All rights reserved. - * - * This source code is licensed under the BSD-style license found in the - * LICENSE file in the root directory of this source tree. An additional grant - * of patent rights can be found in the PATENTS file in the same directory. - * - * @providesModule ReactComponent - */ - -'use strict'; - -var _prodInvariant = require('./reactProdInvariant'); - -var ReactNoopUpdateQueue = require('./ReactNoopUpdateQueue'); - -var canDefineProperty = require('./canDefineProperty'); -var emptyObject = require('fbjs/lib/emptyObject'); -var invariant = require('fbjs/lib/invariant'); -var warning = require('fbjs/lib/warning'); - -/** - * Base class helpers for the updating state of a component. - */ -function ReactComponent(props, context, updater) { - this.props = props; - this.context = context; - this.refs = emptyObject; - // We initialize the default updater but the real one gets injected by the - // renderer. - this.updater = updater || ReactNoopUpdateQueue; -} - -ReactComponent.prototype.isReactComponent = {}; - -/** - * Sets a subset of the state. Always use this to mutate - * state. You should treat `this.state` as immutable. - * - * There is no guarantee that `this.state` will be immediately updated, so - * accessing `this.state` after calling this method may return the old value. - * - * There is no guarantee that calls to `setState` will run synchronously, - * as they may eventually be batched together. You can provide an optional - * callback that will be executed when the call to setState is actually - * completed. - * - * When a function is provided to setState, it will be called at some point in - * the future (not synchronously). It will be called with the up to date - * component arguments (state, props, context). These values can be different - * from this.* because your function may be called after receiveProps but before - * shouldComponentUpdate, and this new state, props, and context will not yet be - * assigned to this. - * - * @param {object|function} partialState Next partial state or function to - * produce next partial state to be merged with current state. - * @param {?function} callback Called after state is updated. - * @final - * @protected - */ -ReactComponent.prototype.setState = function (partialState, callback) { - !(typeof partialState === 'object' || typeof partialState === 'function' || partialState == null) ? process.env.NODE_ENV !== 'production' ? invariant(false, 'setState(...): takes an object of state variables to update or a function which returns an object of state variables.') : _prodInvariant('85') : void 0; - this.updater.enqueueSetState(this, partialState); - if (callback) { - this.updater.enqueueCallback(this, callback, 'setState'); - } -}; - -/** - * Forces an update. This should only be invoked when it is known with - * certainty that we are **not** in a DOM transaction. - * - * You may want to call this when you know that some deeper aspect of the - * component's state has changed but `setState` was not called. - * - * This will not invoke `shouldComponentUpdate`, but it will invoke - * `componentWillUpdate` and `componentDidUpdate`. - * - * @param {?function} callback Called after update is complete. - * @final - * @protected - */ -ReactComponent.prototype.forceUpdate = function (callback) { - this.updater.enqueueForceUpdate(this); - if (callback) { - this.updater.enqueueCallback(this, callback, 'forceUpdate'); - } -}; - -/** - * Deprecated APIs. These APIs used to exist on classic React classes but since - * we would like to deprecate them, we're not going to move them over to this - * modern base class. Instead, we define a getter that warns if it's accessed. - */ -if (process.env.NODE_ENV !== 'production') { - var deprecatedAPIs = { - isMounted: ['isMounted', 'Instead, make sure to clean up subscriptions and pending requests in ' + 'componentWillUnmount to prevent memory leaks.'], - replaceState: ['replaceState', 'Refactor your code to use setState instead (see ' + 'https://github.com/facebook/react/issues/3236).'] - }; - var defineDeprecationWarning = function (methodName, info) { - if (canDefineProperty) { - Object.defineProperty(ReactComponent.prototype, methodName, { - get: function () { - process.env.NODE_ENV !== 'production' ? warning(false, '%s(...) is deprecated in plain JavaScript React classes. %s', info[0], info[1]) : void 0; - return undefined; - } - }); - } - }; - for (var fnName in deprecatedAPIs) { - if (deprecatedAPIs.hasOwnProperty(fnName)) { - defineDeprecationWarning(fnName, deprecatedAPIs[fnName]); - } - } -} - -module.exports = ReactComponent; -}).call(this,require('_process')) - -},{"./ReactNoopUpdateQueue":81,"./canDefineProperty":88,"./reactProdInvariant":92,"_process":122,"fbjs/lib/emptyObject":4,"fbjs/lib/invariant":5,"fbjs/lib/warning":8}],76:[function(require,module,exports){ -(function (process){ -/** - * Copyright 2016-present, Facebook, Inc. - * All rights reserved. - * - * This source code is licensed under the BSD-style license found in the - * LICENSE file in the root directory of this source tree. An additional grant - * of patent rights can be found in the PATENTS file in the same directory. - * - * @providesModule ReactComponentTreeHook - */ - -'use strict'; - -var _prodInvariant = require('./reactProdInvariant'); - -var ReactCurrentOwner = require('./ReactCurrentOwner'); - -var invariant = require('fbjs/lib/invariant'); -var warning = require('fbjs/lib/warning'); - -function isNative(fn) { - // Based on isNative() from Lodash - var funcToString = Function.prototype.toString; - var hasOwnProperty = Object.prototype.hasOwnProperty; - var reIsNative = RegExp('^' + funcToString - // Take an example native function source for comparison - .call(hasOwnProperty) - // Strip regex characters so we can use it for regex - .replace(/[\\^$.*+?()[\]{}|]/g, '\\$&') - // Remove hasOwnProperty from the template to make it generic - .replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, '$1.*?') + '$'); - try { - var source = funcToString.call(fn); - return reIsNative.test(source); - } catch (err) { - return false; - } -} - -var canUseCollections = -// Array.from -typeof Array.from === 'function' && -// Map -typeof Map === 'function' && isNative(Map) && -// Map.prototype.keys -Map.prototype != null && typeof Map.prototype.keys === 'function' && isNative(Map.prototype.keys) && -// Set -typeof Set === 'function' && isNative(Set) && -// Set.prototype.keys -Set.prototype != null && typeof Set.prototype.keys === 'function' && isNative(Set.prototype.keys); - -var itemMap; -var rootIDSet; - -var itemByKey; -var rootByKey; - -if (canUseCollections) { - itemMap = new Map(); - rootIDSet = new Set(); -} else { - itemByKey = {}; - rootByKey = {}; -} - -var unmountedIDs = []; - -// Use non-numeric keys to prevent V8 performance issues: -// https://github.com/facebook/react/pull/7232 -function getKeyFromID(id) { - return '.' + id; -} -function getIDFromKey(key) { - return parseInt(key.substr(1), 10); -} - -function get(id) { - if (canUseCollections) { - return itemMap.get(id); - } else { - var key = getKeyFromID(id); - return itemByKey[key]; - } -} - -function remove(id) { - if (canUseCollections) { - itemMap['delete'](id); - } else { - var key = getKeyFromID(id); - delete itemByKey[key]; - } -} - -function create(id, element, parentID) { - var item = { - element: element, - parentID: parentID, - text: null, - childIDs: [], - isMounted: false, - updateCount: 0 - }; - - if (canUseCollections) { - itemMap.set(id, item); - } else { - var key = getKeyFromID(id); - itemByKey[key] = item; - } -} - -function addRoot(id) { - if (canUseCollections) { - rootIDSet.add(id); - } else { - var key = getKeyFromID(id); - rootByKey[key] = true; - } -} - -function removeRoot(id) { - if (canUseCollections) { - rootIDSet['delete'](id); - } else { - var key = getKeyFromID(id); - delete rootByKey[key]; - } -} - -function getRegisteredIDs() { - if (canUseCollections) { - return Array.from(itemMap.keys()); - } else { - return Object.keys(itemByKey).map(getIDFromKey); - } -} - -function getRootIDs() { - if (canUseCollections) { - return Array.from(rootIDSet.keys()); - } else { - return Object.keys(rootByKey).map(getIDFromKey); - } -} - -function purgeDeep(id) { - var item = get(id); - if (item) { - var childIDs = item.childIDs; - - remove(id); - childIDs.forEach(purgeDeep); - } -} - -function describeComponentFrame(name, source, ownerName) { - return '\n in ' + name + (source ? ' (at ' + source.fileName.replace(/^.*[\\\/]/, '') + ':' + source.lineNumber + ')' : ownerName ? ' (created by ' + ownerName + ')' : ''); -} - -function getDisplayName(element) { - if (element == null) { - return '#empty'; - } else if (typeof element === 'string' || typeof element === 'number') { - return '#text'; - } else if (typeof element.type === 'string') { - return element.type; - } else { - return element.type.displayName || element.type.name || 'Unknown'; - } -} - -function describeID(id) { - var name = ReactComponentTreeHook.getDisplayName(id); - var element = ReactComponentTreeHook.getElement(id); - var ownerID = ReactComponentTreeHook.getOwnerID(id); - var ownerName; - if (ownerID) { - ownerName = ReactComponentTreeHook.getDisplayName(ownerID); - } - process.env.NODE_ENV !== 'production' ? warning(element, 'ReactComponentTreeHook: Missing React element for debugID %s when ' + 'building stack', id) : void 0; - return describeComponentFrame(name, element && element._source, ownerName); -} - -var ReactComponentTreeHook = { - onSetChildren: function (id, nextChildIDs) { - var item = get(id); - item.childIDs = nextChildIDs; - - for (var i = 0; i < nextChildIDs.length; i++) { - var nextChildID = nextChildIDs[i]; - var nextChild = get(nextChildID); - !nextChild ? process.env.NODE_ENV !== 'production' ? invariant(false, 'Expected hook events to fire for the child before its parent includes it in onSetChildren().') : _prodInvariant('140') : void 0; - !(nextChild.childIDs != null || typeof nextChild.element !== 'object' || nextChild.element == null) ? process.env.NODE_ENV !== 'production' ? invariant(false, 'Expected onSetChildren() to fire for a container child before its parent includes it in onSetChildren().') : _prodInvariant('141') : void 0; - !nextChild.isMounted ? process.env.NODE_ENV !== 'production' ? invariant(false, 'Expected onMountComponent() to fire for the child before its parent includes it in onSetChildren().') : _prodInvariant('71') : void 0; - if (nextChild.parentID == null) { - nextChild.parentID = id; - // TODO: This shouldn't be necessary but mounting a new root during in - // componentWillMount currently causes not-yet-mounted components to - // be purged from our tree data so their parent ID is missing. - } - !(nextChild.parentID === id) ? process.env.NODE_ENV !== 'production' ? invariant(false, 'Expected onBeforeMountComponent() parent and onSetChildren() to be consistent (%s has parents %s and %s).', nextChildID, nextChild.parentID, id) : _prodInvariant('142', nextChildID, nextChild.parentID, id) : void 0; - } - }, - onBeforeMountComponent: function (id, element, parentID) { - create(id, element, parentID); - }, - onBeforeUpdateComponent: function (id, element) { - var item = get(id); - if (!item || !item.isMounted) { - // We may end up here as a result of setState() in componentWillUnmount(). - // In this case, ignore the element. - return; - } - item.element = element; - }, - onMountComponent: function (id) { - var item = get(id); - item.isMounted = true; - var isRoot = item.parentID === 0; - if (isRoot) { - addRoot(id); - } - }, - onUpdateComponent: function (id) { - var item = get(id); - if (!item || !item.isMounted) { - // We may end up here as a result of setState() in componentWillUnmount(). - // In this case, ignore the element. - return; - } - item.updateCount++; - }, - onUnmountComponent: function (id) { - var item = get(id); - if (item) { - // We need to check if it exists. - // `item` might not exist if it is inside an error boundary, and a sibling - // error boundary child threw while mounting. Then this instance never - // got a chance to mount, but it still gets an unmounting event during - // the error boundary cleanup. - item.isMounted = false; - var isRoot = item.parentID === 0; - if (isRoot) { - removeRoot(id); - } - } - unmountedIDs.push(id); - }, - purgeUnmountedComponents: function () { - if (ReactComponentTreeHook._preventPurging) { - // Should only be used for testing. - return; - } - - for (var i = 0; i < unmountedIDs.length; i++) { - var id = unmountedIDs[i]; - purgeDeep(id); - } - unmountedIDs.length = 0; - }, - isMounted: function (id) { - var item = get(id); - return item ? item.isMounted : false; - }, - getCurrentStackAddendum: function (topElement) { - var info = ''; - if (topElement) { - var type = topElement.type; - var name = typeof type === 'function' ? type.displayName || type.name : type; - var owner = topElement._owner; - info += describeComponentFrame(name || 'Unknown', topElement._source, owner && owner.getName()); - } - - var currentOwner = ReactCurrentOwner.current; - var id = currentOwner && currentOwner._debugID; - - info += ReactComponentTreeHook.getStackAddendumByID(id); - return info; - }, - getStackAddendumByID: function (id) { - var info = ''; - while (id) { - info += describeID(id); - id = ReactComponentTreeHook.getParentID(id); - } - return info; - }, - getChildIDs: function (id) { - var item = get(id); - return item ? item.childIDs : []; - }, - getDisplayName: function (id) { - var element = ReactComponentTreeHook.getElement(id); - if (!element) { - return null; - } - return getDisplayName(element); - }, - getElement: function (id) { - var item = get(id); - return item ? item.element : null; - }, - getOwnerID: function (id) { - var element = ReactComponentTreeHook.getElement(id); - if (!element || !element._owner) { - return null; - } - return element._owner._debugID; - }, - getParentID: function (id) { - var item = get(id); - return item ? item.parentID : null; - }, - getSource: function (id) { - var item = get(id); - var element = item ? item.element : null; - var source = element != null ? element._source : null; - return source; - }, - getText: function (id) { - var element = ReactComponentTreeHook.getElement(id); - if (typeof element === 'string') { - return element; - } else if (typeof element === 'number') { - return '' + element; - } else { - return null; - } - }, - getUpdateCount: function (id) { - var item = get(id); - return item ? item.updateCount : 0; - }, - - - getRegisteredIDs: getRegisteredIDs, - - getRootIDs: getRootIDs -}; - -module.exports = ReactComponentTreeHook; -}).call(this,require('_process')) - -},{"./ReactCurrentOwner":77,"./reactProdInvariant":92,"_process":122,"fbjs/lib/invariant":5,"fbjs/lib/warning":8}],77:[function(require,module,exports){ -/** - * Copyright 2013-present, Facebook, Inc. - * All rights reserved. - * - * This source code is licensed under the BSD-style license found in the - * LICENSE file in the root directory of this source tree. An additional grant - * of patent rights can be found in the PATENTS file in the same directory. - * - * @providesModule ReactCurrentOwner - */ - -'use strict'; - -/** - * Keeps track of the current owner. - * - * The current owner is the component who should own any components that are - * currently being constructed. - */ - -var ReactCurrentOwner = { - - /** - * @internal - * @type {ReactComponent} - */ - current: null - -}; - -module.exports = ReactCurrentOwner; -},{}],78:[function(require,module,exports){ -(function (process){ -/** - * Copyright 2013-present, Facebook, Inc. - * All rights reserved. - * - * This source code is licensed under the BSD-style license found in the - * LICENSE file in the root directory of this source tree. An additional grant - * of patent rights can be found in the PATENTS file in the same directory. - * - * @providesModule ReactDOMFactories - */ - -'use strict'; - -var ReactElement = require('./ReactElement'); - -/** - * Create a factory that creates HTML tag elements. - * - * @private - */ -var createDOMFactory = ReactElement.createFactory; -if (process.env.NODE_ENV !== 'production') { - var ReactElementValidator = require('./ReactElementValidator'); - createDOMFactory = ReactElementValidator.createFactory; -} - -/** - * Creates a mapping from supported HTML tags to `ReactDOMComponent` classes. - * This is also accessible via `React.DOM`. - * - * @public - */ -var ReactDOMFactories = { - a: createDOMFactory('a'), - abbr: createDOMFactory('abbr'), - address: createDOMFactory('address'), - area: createDOMFactory('area'), - article: createDOMFactory('article'), - aside: createDOMFactory('aside'), - audio: createDOMFactory('audio'), - b: createDOMFactory('b'), - base: createDOMFactory('base'), - bdi: createDOMFactory('bdi'), - bdo: createDOMFactory('bdo'), - big: createDOMFactory('big'), - blockquote: createDOMFactory('blockquote'), - body: createDOMFactory('body'), - br: createDOMFactory('br'), - button: createDOMFactory('button'), - canvas: createDOMFactory('canvas'), - caption: createDOMFactory('caption'), - cite: createDOMFactory('cite'), - code: createDOMFactory('code'), - col: createDOMFactory('col'), - colgroup: createDOMFactory('colgroup'), - data: createDOMFactory('data'), - datalist: createDOMFactory('datalist'), - dd: createDOMFactory('dd'), - del: createDOMFactory('del'), - details: createDOMFactory('details'), - dfn: createDOMFactory('dfn'), - dialog: createDOMFactory('dialog'), - div: createDOMFactory('div'), - dl: createDOMFactory('dl'), - dt: createDOMFactory('dt'), - em: createDOMFactory('em'), - embed: createDOMFactory('embed'), - fieldset: createDOMFactory('fieldset'), - figcaption: createDOMFactory('figcaption'), - figure: createDOMFactory('figure'), - footer: createDOMFactory('footer'), - form: createDOMFactory('form'), - h1: createDOMFactory('h1'), - h2: createDOMFactory('h2'), - h3: createDOMFactory('h3'), - h4: createDOMFactory('h4'), - h5: createDOMFactory('h5'), - h6: createDOMFactory('h6'), - head: createDOMFactory('head'), - header: createDOMFactory('header'), - hgroup: createDOMFactory('hgroup'), - hr: createDOMFactory('hr'), - html: createDOMFactory('html'), - i: createDOMFactory('i'), - iframe: createDOMFactory('iframe'), - img: createDOMFactory('img'), - input: createDOMFactory('input'), - ins: createDOMFactory('ins'), - kbd: createDOMFactory('kbd'), - keygen: createDOMFactory('keygen'), - label: createDOMFactory('label'), - legend: createDOMFactory('legend'), - li: createDOMFactory('li'), - link: createDOMFactory('link'), - main: createDOMFactory('main'), - map: createDOMFactory('map'), - mark: createDOMFactory('mark'), - menu: createDOMFactory('menu'), - menuitem: createDOMFactory('menuitem'), - meta: createDOMFactory('meta'), - meter: createDOMFactory('meter'), - nav: createDOMFactory('nav'), - noscript: createDOMFactory('noscript'), - object: createDOMFactory('object'), - ol: createDOMFactory('ol'), - optgroup: createDOMFactory('optgroup'), - option: createDOMFactory('option'), - output: createDOMFactory('output'), - p: createDOMFactory('p'), - param: createDOMFactory('param'), - picture: createDOMFactory('picture'), - pre: createDOMFactory('pre'), - progress: createDOMFactory('progress'), - q: createDOMFactory('q'), - rp: createDOMFactory('rp'), - rt: createDOMFactory('rt'), - ruby: createDOMFactory('ruby'), - s: createDOMFactory('s'), - samp: createDOMFactory('samp'), - script: createDOMFactory('script'), - section: createDOMFactory('section'), - select: createDOMFactory('select'), - small: createDOMFactory('small'), - source: createDOMFactory('source'), - span: createDOMFactory('span'), - strong: createDOMFactory('strong'), - style: createDOMFactory('style'), - sub: createDOMFactory('sub'), - summary: createDOMFactory('summary'), - sup: createDOMFactory('sup'), - table: createDOMFactory('table'), - tbody: createDOMFactory('tbody'), - td: createDOMFactory('td'), - textarea: createDOMFactory('textarea'), - tfoot: createDOMFactory('tfoot'), - th: createDOMFactory('th'), - thead: createDOMFactory('thead'), - time: createDOMFactory('time'), - title: createDOMFactory('title'), - tr: createDOMFactory('tr'), - track: createDOMFactory('track'), - u: createDOMFactory('u'), - ul: createDOMFactory('ul'), - 'var': createDOMFactory('var'), - video: createDOMFactory('video'), - wbr: createDOMFactory('wbr'), - - // SVG - circle: createDOMFactory('circle'), - clipPath: createDOMFactory('clipPath'), - defs: createDOMFactory('defs'), - ellipse: createDOMFactory('ellipse'), - g: createDOMFactory('g'), - image: createDOMFactory('image'), - line: createDOMFactory('line'), - linearGradient: createDOMFactory('linearGradient'), - mask: createDOMFactory('mask'), - path: createDOMFactory('path'), - pattern: createDOMFactory('pattern'), - polygon: createDOMFactory('polygon'), - polyline: createDOMFactory('polyline'), - radialGradient: createDOMFactory('radialGradient'), - rect: createDOMFactory('rect'), - stop: createDOMFactory('stop'), - svg: createDOMFactory('svg'), - text: createDOMFactory('text'), - tspan: createDOMFactory('tspan') -}; - -module.exports = ReactDOMFactories; -}).call(this,require('_process')) - -},{"./ReactElement":79,"./ReactElementValidator":80,"_process":122}],79:[function(require,module,exports){ -(function (process){ -/** - * Copyright 2014-present, Facebook, Inc. - * All rights reserved. - * - * This source code is licensed under the BSD-style license found in the - * LICENSE file in the root directory of this source tree. An additional grant - * of patent rights can be found in the PATENTS file in the same directory. - * - * @providesModule ReactElement - */ - -'use strict'; - -var _assign = require('object-assign'); - -var ReactCurrentOwner = require('./ReactCurrentOwner'); - -var warning = require('fbjs/lib/warning'); -var canDefineProperty = require('./canDefineProperty'); -var hasOwnProperty = Object.prototype.hasOwnProperty; - -// The Symbol used to tag the ReactElement type. If there is no native Symbol -// nor polyfill, then a plain number is used for performance. -var REACT_ELEMENT_TYPE = typeof Symbol === 'function' && Symbol['for'] && Symbol['for']('react.element') || 0xeac7; - -var RESERVED_PROPS = { - key: true, - ref: true, - __self: true, - __source: true -}; - -var specialPropKeyWarningShown, specialPropRefWarningShown; - -function hasValidRef(config) { - if (process.env.NODE_ENV !== 'production') { - if (hasOwnProperty.call(config, 'ref')) { - var getter = Object.getOwnPropertyDescriptor(config, 'ref').get; - if (getter && getter.isReactWarning) { - return false; - } - } - } - return config.ref !== undefined; -} - -function hasValidKey(config) { - if (process.env.NODE_ENV !== 'production') { - if (hasOwnProperty.call(config, 'key')) { - var getter = Object.getOwnPropertyDescriptor(config, 'key').get; - if (getter && getter.isReactWarning) { - return false; - } - } - } - return config.key !== undefined; -} - -function defineKeyPropWarningGetter(props, displayName) { - var warnAboutAccessingKey = function () { - if (!specialPropKeyWarningShown) { - specialPropKeyWarningShown = true; - process.env.NODE_ENV !== 'production' ? warning(false, '%s: `key` is not a prop. Trying to access it will result ' + 'in `undefined` being returned. If you need to access the same ' + 'value within the child component, you should pass it as a different ' + 'prop. (https://fb.me/react-special-props)', displayName) : void 0; - } - }; - warnAboutAccessingKey.isReactWarning = true; - Object.defineProperty(props, 'key', { - get: warnAboutAccessingKey, - configurable: true - }); -} - -function defineRefPropWarningGetter(props, displayName) { - var warnAboutAccessingRef = function () { - if (!specialPropRefWarningShown) { - specialPropRefWarningShown = true; - process.env.NODE_ENV !== 'production' ? warning(false, '%s: `ref` is not a prop. Trying to access it will result ' + 'in `undefined` being returned. If you need to access the same ' + 'value within the child component, you should pass it as a different ' + 'prop. (https://fb.me/react-special-props)', displayName) : void 0; - } - }; - warnAboutAccessingRef.isReactWarning = true; - Object.defineProperty(props, 'ref', { - get: warnAboutAccessingRef, - configurable: true - }); -} - -/** - * Factory method to create a new React element. This no longer adheres to - * the class pattern, so do not use new to call it. Also, no instanceof check - * will work. Instead test $$typeof field against Symbol.for('react.element') to check - * if something is a React Element. - * - * @param {*} type - * @param {*} key - * @param {string|object} ref - * @param {*} self A *temporary* helper to detect places where `this` is - * different from the `owner` when React.createElement is called, so that we - * can warn. We want to get rid of owner and replace string `ref`s with arrow - * functions, and as long as `this` and owner are the same, there will be no - * change in behavior. - * @param {*} source An annotation object (added by a transpiler or otherwise) - * indicating filename, line number, and/or other information. - * @param {*} owner - * @param {*} props - * @internal - */ -var ReactElement = function (type, key, ref, self, source, owner, props) { - var element = { - // This tag allow us to uniquely identify this as a React Element - $$typeof: REACT_ELEMENT_TYPE, - - // Built-in properties that belong on the element - type: type, - key: key, - ref: ref, - props: props, - - // Record the component responsible for creating this element. - _owner: owner - }; - - if (process.env.NODE_ENV !== 'production') { - // The validation flag is currently mutative. We put it on - // an external backing store so that we can freeze the whole object. - // This can be replaced with a WeakMap once they are implemented in - // commonly used development environments. - element._store = {}; - var shadowChildren = Array.isArray(props.children) ? props.children.slice(0) : props.children; - - // To make comparing ReactElements easier for testing purposes, we make - // the validation flag non-enumerable (where possible, which should - // include every environment we run tests in), so the test framework - // ignores it. - if (canDefineProperty) { - Object.defineProperty(element._store, 'validated', { - configurable: false, - enumerable: false, - writable: true, - value: false - }); - // self and source are DEV only properties. - Object.defineProperty(element, '_self', { - configurable: false, - enumerable: false, - writable: false, - value: self - }); - Object.defineProperty(element, '_shadowChildren', { - configurable: false, - enumerable: false, - writable: false, - value: shadowChildren - }); - // Two elements created in two different places should be considered - // equal for testing purposes and therefore we hide it from enumeration. - Object.defineProperty(element, '_source', { - configurable: false, - enumerable: false, - writable: false, - value: source - }); - } else { - element._store.validated = false; - element._self = self; - element._shadowChildren = shadowChildren; - element._source = source; - } - if (Object.freeze) { - Object.freeze(element.props); - Object.freeze(element); - } - } - - return element; -}; - -/** - * Create and return a new ReactElement of the given type. - * See https://facebook.github.io/react/docs/top-level-api.html#react.createelement - */ -ReactElement.createElement = function (type, config, children) { - var propName; - - // Reserved names are extracted - var props = {}; - - var key = null; - var ref = null; - var self = null; - var source = null; - - if (config != null) { - if (hasValidRef(config)) { - ref = config.ref; - } - if (hasValidKey(config)) { - key = '' + config.key; - } - - self = config.__self === undefined ? null : config.__self; - source = config.__source === undefined ? null : config.__source; - // Remaining properties are added to a new props object - for (propName in config) { - if (hasOwnProperty.call(config, propName) && !RESERVED_PROPS.hasOwnProperty(propName)) { - props[propName] = config[propName]; - } - } - } - - // Children can be more than one argument, and those are transferred onto - // the newly allocated props object. - var childrenLength = arguments.length - 2; - if (childrenLength === 1) { - props.children = children; - } else if (childrenLength > 1) { - var childArray = Array(childrenLength); - for (var i = 0; i < childrenLength; i++) { - childArray[i] = arguments[i + 2]; - } - props.children = childArray; - } - - // Resolve default props - if (type && type.defaultProps) { - var defaultProps = type.defaultProps; - for (propName in defaultProps) { - if (props[propName] === undefined) { - props[propName] = defaultProps[propName]; - } - } - } - if (process.env.NODE_ENV !== 'production') { - if (key || ref) { - if (typeof props.$$typeof === 'undefined' || props.$$typeof !== REACT_ELEMENT_TYPE) { - var displayName = typeof type === 'function' ? type.displayName || type.name || 'Unknown' : type; - if (key) { - defineKeyPropWarningGetter(props, displayName); - } - if (ref) { - defineRefPropWarningGetter(props, displayName); - } - } - } - } - return ReactElement(type, key, ref, self, source, ReactCurrentOwner.current, props); -}; - -/** - * Return a function that produces ReactElements of a given type. - * See https://facebook.github.io/react/docs/top-level-api.html#react.createfactory - */ -ReactElement.createFactory = function (type) { - var factory = ReactElement.createElement.bind(null, type); - // Expose the type on the factory and the prototype so that it can be - // easily accessed on elements. E.g. `.type === Foo`. - // This should not be named `constructor` since this may not be the function - // that created the element, and it may not even be a constructor. - // Legacy hook TODO: Warn if this is accessed - factory.type = type; - return factory; -}; - -ReactElement.cloneAndReplaceKey = function (oldElement, newKey) { - var newElement = ReactElement(oldElement.type, newKey, oldElement.ref, oldElement._self, oldElement._source, oldElement._owner, oldElement.props); - - return newElement; -}; - -/** - * Clone and return a new ReactElement using element as the starting point. - * See https://facebook.github.io/react/docs/top-level-api.html#react.cloneelement - */ -ReactElement.cloneElement = function (element, config, children) { - var propName; - - // Original props are copied - var props = _assign({}, element.props); - - // Reserved names are extracted - var key = element.key; - var ref = element.ref; - // Self is preserved since the owner is preserved. - var self = element._self; - // Source is preserved since cloneElement is unlikely to be targeted by a - // transpiler, and the original source is probably a better indicator of the - // true owner. - var source = element._source; - - // Owner will be preserved, unless ref is overridden - var owner = element._owner; - - if (config != null) { - if (hasValidRef(config)) { - // Silently steal the ref from the parent. - ref = config.ref; - owner = ReactCurrentOwner.current; - } - if (hasValidKey(config)) { - key = '' + config.key; - } - - // Remaining properties override existing props - var defaultProps; - if (element.type && element.type.defaultProps) { - defaultProps = element.type.defaultProps; - } - for (propName in config) { - if (hasOwnProperty.call(config, propName) && !RESERVED_PROPS.hasOwnProperty(propName)) { - if (config[propName] === undefined && defaultProps !== undefined) { - // Resolve default props - props[propName] = defaultProps[propName]; - } else { - props[propName] = config[propName]; - } - } - } - } - - // Children can be more than one argument, and those are transferred onto - // the newly allocated props object. - var childrenLength = arguments.length - 2; - if (childrenLength === 1) { - props.children = children; - } else if (childrenLength > 1) { - var childArray = Array(childrenLength); - for (var i = 0; i < childrenLength; i++) { - childArray[i] = arguments[i + 2]; - } - props.children = childArray; - } - - return ReactElement(element.type, key, ref, self, source, owner, props); -}; - -/** - * Verifies the object is a ReactElement. - * See https://facebook.github.io/react/docs/top-level-api.html#react.isvalidelement - * @param {?object} object - * @return {boolean} True if `object` is a valid component. - * @final - */ -ReactElement.isValidElement = function (object) { - return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE; -}; - -ReactElement.REACT_ELEMENT_TYPE = REACT_ELEMENT_TYPE; - -module.exports = ReactElement; -}).call(this,require('_process')) - -},{"./ReactCurrentOwner":77,"./canDefineProperty":88,"_process":122,"fbjs/lib/warning":8,"object-assign":40}],80:[function(require,module,exports){ -(function (process){ -/** - * Copyright 2014-present, Facebook, Inc. - * All rights reserved. - * - * This source code is licensed under the BSD-style license found in the - * LICENSE file in the root directory of this source tree. An additional grant - * of patent rights can be found in the PATENTS file in the same directory. - * - * @providesModule ReactElementValidator - */ - -/** - * ReactElementValidator provides a wrapper around a element factory - * which validates the props passed to the element. This is intended to be - * used only in DEV and could be replaced by a static type checker for languages - * that support it. - */ - -'use strict'; - -var ReactCurrentOwner = require('./ReactCurrentOwner'); -var ReactComponentTreeHook = require('./ReactComponentTreeHook'); -var ReactElement = require('./ReactElement'); -var ReactPropTypeLocations = require('./ReactPropTypeLocations'); - -var checkReactTypeSpec = require('./checkReactTypeSpec'); - -var canDefineProperty = require('./canDefineProperty'); -var getIteratorFn = require('./getIteratorFn'); -var warning = require('fbjs/lib/warning'); - -function getDeclarationErrorAddendum() { - if (ReactCurrentOwner.current) { - var name = ReactCurrentOwner.current.getName(); - if (name) { - return ' Check the render method of `' + name + '`.'; - } - } - return ''; -} - -/** - * Warn if there's no key explicitly set on dynamic arrays of children or - * object keys are not valid. This allows us to keep track of children between - * updates. - */ -var ownerHasKeyUseWarning = {}; - -function getCurrentComponentErrorInfo(parentType) { - var info = getDeclarationErrorAddendum(); - - if (!info) { - var parentName = typeof parentType === 'string' ? parentType : parentType.displayName || parentType.name; - if (parentName) { - info = ' Check the top-level render call using <' + parentName + '>.'; - } - } - return info; -} - -/** - * Warn if the element doesn't have an explicit key assigned to it. - * This element is in an array. The array could grow and shrink or be - * reordered. All children that haven't already been validated are required to - * have a "key" property assigned to it. Error statuses are cached so a warning - * will only be shown once. - * - * @internal - * @param {ReactElement} element Element that requires a key. - * @param {*} parentType element's parent's type. - */ -function validateExplicitKey(element, parentType) { - if (!element._store || element._store.validated || element.key != null) { - return; - } - element._store.validated = true; - - var memoizer = ownerHasKeyUseWarning.uniqueKey || (ownerHasKeyUseWarning.uniqueKey = {}); - - var currentComponentErrorInfo = getCurrentComponentErrorInfo(parentType); - if (memoizer[currentComponentErrorInfo]) { - return; - } - memoizer[currentComponentErrorInfo] = true; - - // Usually the current owner is the offender, but if it accepts children as a - // property, it may be the creator of the child that's responsible for - // assigning it a key. - var childOwner = ''; - if (element && element._owner && element._owner !== ReactCurrentOwner.current) { - // Give the component that originally created this child. - childOwner = ' It was passed a child from ' + element._owner.getName() + '.'; - } - - process.env.NODE_ENV !== 'production' ? warning(false, 'Each child in an array or iterator should have a unique "key" prop.' + '%s%s See https://fb.me/react-warning-keys for more information.%s', currentComponentErrorInfo, childOwner, ReactComponentTreeHook.getCurrentStackAddendum(element)) : void 0; -} - -/** - * Ensure that every element either is passed in a static location, in an - * array with an explicit keys property defined, or in an object literal - * with valid key property. - * - * @internal - * @param {ReactNode} node Statically passed child of any type. - * @param {*} parentType node's parent's type. - */ -function validateChildKeys(node, parentType) { - if (typeof node !== 'object') { - return; - } - if (Array.isArray(node)) { - for (var i = 0; i < node.length; i++) { - var child = node[i]; - if (ReactElement.isValidElement(child)) { - validateExplicitKey(child, parentType); - } - } - } else if (ReactElement.isValidElement(node)) { - // This element was passed in a valid location. - if (node._store) { - node._store.validated = true; - } - } else if (node) { - var iteratorFn = getIteratorFn(node); - // Entry iterators provide implicit keys. - if (iteratorFn) { - if (iteratorFn !== node.entries) { - var iterator = iteratorFn.call(node); - var step; - while (!(step = iterator.next()).done) { - if (ReactElement.isValidElement(step.value)) { - validateExplicitKey(step.value, parentType); - } - } - } - } - } -} - -/** - * Given an element, validate that its props follow the propTypes definition, - * provided by the type. - * - * @param {ReactElement} element - */ -function validatePropTypes(element) { - var componentClass = element.type; - if (typeof componentClass !== 'function') { - return; - } - var name = componentClass.displayName || componentClass.name; - if (componentClass.propTypes) { - checkReactTypeSpec(componentClass.propTypes, element.props, ReactPropTypeLocations.prop, name, element, null); - } - if (typeof componentClass.getDefaultProps === 'function') { - process.env.NODE_ENV !== 'production' ? warning(componentClass.getDefaultProps.isReactClassApproved, 'getDefaultProps is only used on classic React.createClass ' + 'definitions. Use a static property named `defaultProps` instead.') : void 0; - } -} - -var ReactElementValidator = { - - createElement: function (type, props, children) { - var validType = typeof type === 'string' || typeof type === 'function'; - // We warn in this case but don't throw. We expect the element creation to - // succeed and there will likely be errors in render. - if (!validType) { - process.env.NODE_ENV !== 'production' ? warning(false, 'React.createElement: type should not be null, undefined, boolean, or ' + 'number. It should be a string (for DOM elements) or a ReactClass ' + '(for composite components).%s', getDeclarationErrorAddendum()) : void 0; - } - - var element = ReactElement.createElement.apply(this, arguments); - - // The result can be nullish if a mock or a custom function is used. - // TODO: Drop this when these are no longer allowed as the type argument. - if (element == null) { - return element; - } - - // Skip key warning if the type isn't valid since our key validation logic - // doesn't expect a non-string/function type and can throw confusing errors. - // We don't want exception behavior to differ between dev and prod. - // (Rendering will throw with a helpful message and as soon as the type is - // fixed, the key warnings will appear.) - if (validType) { - for (var i = 2; i < arguments.length; i++) { - validateChildKeys(arguments[i], type); - } - } - - validatePropTypes(element); - - return element; - }, - - createFactory: function (type) { - var validatedFactory = ReactElementValidator.createElement.bind(null, type); - // Legacy hook TODO: Warn if this is accessed - validatedFactory.type = type; - - if (process.env.NODE_ENV !== 'production') { - if (canDefineProperty) { - Object.defineProperty(validatedFactory, 'type', { - enumerable: false, - get: function () { - process.env.NODE_ENV !== 'production' ? warning(false, 'Factory.type is deprecated. Access the class directly ' + 'before passing it to createFactory.') : void 0; - Object.defineProperty(this, 'type', { - value: type - }); - return type; - } - }); - } - } - - return validatedFactory; - }, - - cloneElement: function (element, props, children) { - var newElement = ReactElement.cloneElement.apply(this, arguments); - for (var i = 2; i < arguments.length; i++) { - validateChildKeys(arguments[i], newElement.type); - } - validatePropTypes(newElement); - return newElement; - } - -}; - -module.exports = ReactElementValidator; -}).call(this,require('_process')) - -},{"./ReactComponentTreeHook":76,"./ReactCurrentOwner":77,"./ReactElement":79,"./ReactPropTypeLocations":83,"./canDefineProperty":88,"./checkReactTypeSpec":89,"./getIteratorFn":90,"_process":122,"fbjs/lib/warning":8}],81:[function(require,module,exports){ -(function (process){ -/** - * Copyright 2015-present, Facebook, Inc. - * All rights reserved. - * - * This source code is licensed under the BSD-style license found in the - * LICENSE file in the root directory of this source tree. An additional grant - * of patent rights can be found in the PATENTS file in the same directory. - * - * @providesModule ReactNoopUpdateQueue - */ - -'use strict'; - -var warning = require('fbjs/lib/warning'); - -function warnNoop(publicInstance, callerName) { - if (process.env.NODE_ENV !== 'production') { - var constructor = publicInstance.constructor; - process.env.NODE_ENV !== 'production' ? warning(false, '%s(...): Can only update a mounted or mounting component. ' + 'This usually means you called %s() on an unmounted component. ' + 'This is a no-op. Please check the code for the %s component.', callerName, callerName, constructor && (constructor.displayName || constructor.name) || 'ReactClass') : void 0; - } -} - -/** - * This is the abstract API for an update queue. - */ -var ReactNoopUpdateQueue = { - - /** - * Checks whether or not this composite component is mounted. - * @param {ReactClass} publicInstance The instance we want to test. - * @return {boolean} True if mounted, false otherwise. - * @protected - * @final - */ - isMounted: function (publicInstance) { - return false; - }, - - /** - * Enqueue a callback that will be executed after all the pending updates - * have processed. - * - * @param {ReactClass} publicInstance The instance to use as `this` context. - * @param {?function} callback Called after state is updated. - * @internal - */ - enqueueCallback: function (publicInstance, callback) {}, - - /** - * Forces an update. This should only be invoked when it is known with - * certainty that we are **not** in a DOM transaction. - * - * You may want to call this when you know that some deeper aspect of the - * component's state has changed but `setState` was not called. - * - * This will not invoke `shouldComponentUpdate`, but it will invoke - * `componentWillUpdate` and `componentDidUpdate`. - * - * @param {ReactClass} publicInstance The instance that should rerender. - * @internal - */ - enqueueForceUpdate: function (publicInstance) { - warnNoop(publicInstance, 'forceUpdate'); - }, - - /** - * Replaces all of the state. Always use this or `setState` to mutate state. - * You should treat `this.state` as immutable. - * - * There is no guarantee that `this.state` will be immediately updated, so - * accessing `this.state` after calling this method may return the old value. - * - * @param {ReactClass} publicInstance The instance that should rerender. - * @param {object} completeState Next state. - * @internal - */ - enqueueReplaceState: function (publicInstance, completeState) { - warnNoop(publicInstance, 'replaceState'); - }, - - /** - * Sets a subset of the state. This only exists because _pendingState is - * internal. This provides a merging strategy that is not available to deep - * properties which is confusing. TODO: Expose pendingState or don't use it - * during the merge. - * - * @param {ReactClass} publicInstance The instance that should rerender. - * @param {object} partialState Next partial state to be merged with state. - * @internal - */ - enqueueSetState: function (publicInstance, partialState) { - warnNoop(publicInstance, 'setState'); - } -}; - -module.exports = ReactNoopUpdateQueue; -}).call(this,require('_process')) - -},{"_process":122,"fbjs/lib/warning":8}],82:[function(require,module,exports){ -(function (process){ -/** - * Copyright 2013-present, Facebook, Inc. - * All rights reserved. - * - * This source code is licensed under the BSD-style license found in the - * LICENSE file in the root directory of this source tree. An additional grant - * of patent rights can be found in the PATENTS file in the same directory. - * - * @providesModule ReactPropTypeLocationNames - */ - -'use strict'; - -var ReactPropTypeLocationNames = {}; - -if (process.env.NODE_ENV !== 'production') { - ReactPropTypeLocationNames = { - prop: 'prop', - context: 'context', - childContext: 'child context' - }; -} - -module.exports = ReactPropTypeLocationNames; -}).call(this,require('_process')) - -},{"_process":122}],83:[function(require,module,exports){ -/** - * Copyright 2013-present, Facebook, Inc. - * All rights reserved. - * - * This source code is licensed under the BSD-style license found in the - * LICENSE file in the root directory of this source tree. An additional grant - * of patent rights can be found in the PATENTS file in the same directory. - * - * @providesModule ReactPropTypeLocations - */ - -'use strict'; - -var keyMirror = require('fbjs/lib/keyMirror'); - -var ReactPropTypeLocations = keyMirror({ - prop: null, - context: null, - childContext: null -}); - -module.exports = ReactPropTypeLocations; -},{"fbjs/lib/keyMirror":6}],84:[function(require,module,exports){ -(function (process){ -/** - * Copyright 2013-present, Facebook, Inc. - * All rights reserved. - * - * This source code is licensed under the BSD-style license found in the - * LICENSE file in the root directory of this source tree. An additional grant - * of patent rights can be found in the PATENTS file in the same directory. - * - * @providesModule ReactPropTypes - */ - -'use strict'; - -var ReactElement = require('./ReactElement'); -var ReactPropTypeLocationNames = require('./ReactPropTypeLocationNames'); -var ReactPropTypesSecret = require('./ReactPropTypesSecret'); - -var emptyFunction = require('fbjs/lib/emptyFunction'); -var getIteratorFn = require('./getIteratorFn'); -var warning = require('fbjs/lib/warning'); - -/** - * Collection of methods that allow declaration and validation of props that are - * supplied to React components. Example usage: - * - * var Props = require('ReactPropTypes'); - * var MyArticle = React.createClass({ - * propTypes: { - * // An optional string prop named "description". - * description: Props.string, - * - * // A required enum prop named "category". - * category: Props.oneOf(['News','Photos']).isRequired, - * - * // A prop named "dialog" that requires an instance of Dialog. - * dialog: Props.instanceOf(Dialog).isRequired - * }, - * render: function() { ... } - * }); - * - * A more formal specification of how these methods are used: - * - * type := array|bool|func|object|number|string|oneOf([...])|instanceOf(...) - * decl := ReactPropTypes.{type}(.isRequired)? - * - * Each and every declaration produces a function with the same signature. This - * allows the creation of custom validation functions. For example: - * - * var MyLink = React.createClass({ - * propTypes: { - * // An optional string or URI prop named "href". - * href: function(props, propName, componentName) { - * var propValue = props[propName]; - * if (propValue != null && typeof propValue !== 'string' && - * !(propValue instanceof URI)) { - * return new Error( - * 'Expected a string or an URI for ' + propName + ' in ' + - * componentName - * ); - * } - * } - * }, - * render: function() {...} - * }); - * - * @internal - */ - -var ANONYMOUS = '<>'; - -var ReactPropTypes = { - array: createPrimitiveTypeChecker('array'), - bool: createPrimitiveTypeChecker('boolean'), - func: createPrimitiveTypeChecker('function'), - number: createPrimitiveTypeChecker('number'), - object: createPrimitiveTypeChecker('object'), - string: createPrimitiveTypeChecker('string'), - symbol: createPrimitiveTypeChecker('symbol'), - - any: createAnyTypeChecker(), - arrayOf: createArrayOfTypeChecker, - element: createElementTypeChecker(), - instanceOf: createInstanceTypeChecker, - node: createNodeChecker(), - objectOf: createObjectOfTypeChecker, - oneOf: createEnumTypeChecker, - oneOfType: createUnionTypeChecker, - shape: createShapeTypeChecker -}; - -/** - * inlined Object.is polyfill to avoid requiring consumers ship their own - * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is - */ -/*eslint-disable no-self-compare*/ -function is(x, y) { - // SameValue algorithm - if (x === y) { - // Steps 1-5, 7-10 - // Steps 6.b-6.e: +0 != -0 - return x !== 0 || 1 / x === 1 / y; - } else { - // Step 6.a: NaN == NaN - return x !== x && y !== y; - } -} -/*eslint-enable no-self-compare*/ - -/** - * We use an Error-like object for backward compatibility as people may call - * PropTypes directly and inspect their output. However we don't use real - * Errors anymore. We don't inspect their stack anyway, and creating them - * is prohibitively expensive if they are created too often, such as what - * happens in oneOfType() for any type before the one that matched. - */ -function PropTypeError(message) { - this.message = message; - this.stack = ''; -} -// Make `instanceof Error` still work for returned errors. -PropTypeError.prototype = Error.prototype; - -function createChainableTypeChecker(validate) { - if (process.env.NODE_ENV !== 'production') { - var manualPropTypeCallCache = {}; - } - function checkType(isRequired, props, propName, componentName, location, propFullName, secret) { - componentName = componentName || ANONYMOUS; - propFullName = propFullName || propName; - if (process.env.NODE_ENV !== 'production') { - if (secret !== ReactPropTypesSecret && typeof console !== 'undefined') { - var cacheKey = componentName + ':' + propName; - if (!manualPropTypeCallCache[cacheKey]) { - process.env.NODE_ENV !== 'production' ? warning(false, 'You are manually calling a React.PropTypes validation ' + 'function for the `%s` prop on `%s`. This is deprecated ' + 'and will not work in the next major version. You may be ' + 'seeing this warning due to a third-party PropTypes library. ' + 'See https://fb.me/react-warning-dont-call-proptypes for details.', propFullName, componentName) : void 0; - manualPropTypeCallCache[cacheKey] = true; - } - } - } - if (props[propName] == null) { - var locationName = ReactPropTypeLocationNames[location]; - if (isRequired) { - return new PropTypeError('Required ' + locationName + ' `' + propFullName + '` was not specified in ' + ('`' + componentName + '`.')); - } - return null; - } else { - return validate(props, propName, componentName, location, propFullName); - } - } - - var chainedCheckType = checkType.bind(null, false); - chainedCheckType.isRequired = checkType.bind(null, true); - - return chainedCheckType; -} - -function createPrimitiveTypeChecker(expectedType) { - function validate(props, propName, componentName, location, propFullName, secret) { - var propValue = props[propName]; - var propType = getPropType(propValue); - if (propType !== expectedType) { - var locationName = ReactPropTypeLocationNames[location]; - // `propValue` being instance of, say, date/regexp, pass the 'object' - // check, but we can offer a more precise error message here rather than - // 'of type `object`'. - var preciseType = getPreciseType(propValue); - - return new PropTypeError('Invalid ' + locationName + ' `' + propFullName + '` of type ' + ('`' + preciseType + '` supplied to `' + componentName + '`, expected ') + ('`' + expectedType + '`.')); - } - return null; - } - return createChainableTypeChecker(validate); -} - -function createAnyTypeChecker() { - return createChainableTypeChecker(emptyFunction.thatReturns(null)); -} - -function createArrayOfTypeChecker(typeChecker) { - function validate(props, propName, componentName, location, propFullName) { - if (typeof typeChecker !== 'function') { - return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside arrayOf.'); - } - var propValue = props[propName]; - if (!Array.isArray(propValue)) { - var locationName = ReactPropTypeLocationNames[location]; - var propType = getPropType(propValue); - return new PropTypeError('Invalid ' + locationName + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an array.')); - } - for (var i = 0; i < propValue.length; i++) { - var error = typeChecker(propValue, i, componentName, location, propFullName + '[' + i + ']', ReactPropTypesSecret); - if (error instanceof Error) { - return error; - } - } - return null; - } - return createChainableTypeChecker(validate); -} - -function createElementTypeChecker() { - function validate(props, propName, componentName, location, propFullName) { - var propValue = props[propName]; - if (!ReactElement.isValidElement(propValue)) { - var locationName = ReactPropTypeLocationNames[location]; - var propType = getPropType(propValue); - return new PropTypeError('Invalid ' + locationName + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement.')); - } - return null; - } - return createChainableTypeChecker(validate); -} - -function createInstanceTypeChecker(expectedClass) { - function validate(props, propName, componentName, location, propFullName) { - if (!(props[propName] instanceof expectedClass)) { - var locationName = ReactPropTypeLocationNames[location]; - var expectedClassName = expectedClass.name || ANONYMOUS; - var actualClassName = getClassName(props[propName]); - return new PropTypeError('Invalid ' + locationName + ' `' + propFullName + '` of type ' + ('`' + actualClassName + '` supplied to `' + componentName + '`, expected ') + ('instance of `' + expectedClassName + '`.')); - } - return null; - } - return createChainableTypeChecker(validate); -} - -function createEnumTypeChecker(expectedValues) { - if (!Array.isArray(expectedValues)) { - process.env.NODE_ENV !== 'production' ? warning(false, 'Invalid argument supplied to oneOf, expected an instance of array.') : void 0; - return emptyFunction.thatReturnsNull; - } - - function validate(props, propName, componentName, location, propFullName) { - var propValue = props[propName]; - for (var i = 0; i < expectedValues.length; i++) { - if (is(propValue, expectedValues[i])) { - return null; - } - } - - var locationName = ReactPropTypeLocationNames[location]; - var valuesString = JSON.stringify(expectedValues); - return new PropTypeError('Invalid ' + locationName + ' `' + propFullName + '` of value `' + propValue + '` ' + ('supplied to `' + componentName + '`, expected one of ' + valuesString + '.')); - } - return createChainableTypeChecker(validate); -} - -function createObjectOfTypeChecker(typeChecker) { - function validate(props, propName, componentName, location, propFullName) { - if (typeof typeChecker !== 'function') { - return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside objectOf.'); - } - var propValue = props[propName]; - var propType = getPropType(propValue); - if (propType !== 'object') { - var locationName = ReactPropTypeLocationNames[location]; - return new PropTypeError('Invalid ' + locationName + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an object.')); - } - for (var key in propValue) { - if (propValue.hasOwnProperty(key)) { - var error = typeChecker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret); - if (error instanceof Error) { - return error; - } - } - } - return null; - } - return createChainableTypeChecker(validate); -} - -function createUnionTypeChecker(arrayOfTypeCheckers) { - if (!Array.isArray(arrayOfTypeCheckers)) { - process.env.NODE_ENV !== 'production' ? warning(false, 'Invalid argument supplied to oneOfType, expected an instance of array.') : void 0; - return emptyFunction.thatReturnsNull; - } - - function validate(props, propName, componentName, location, propFullName) { - for (var i = 0; i < arrayOfTypeCheckers.length; i++) { - var checker = arrayOfTypeCheckers[i]; - if (checker(props, propName, componentName, location, propFullName, ReactPropTypesSecret) == null) { - return null; - } - } - - var locationName = ReactPropTypeLocationNames[location]; - return new PropTypeError('Invalid ' + locationName + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`.')); - } - return createChainableTypeChecker(validate); -} - -function createNodeChecker() { - function validate(props, propName, componentName, location, propFullName) { - if (!isNode(props[propName])) { - var locationName = ReactPropTypeLocationNames[location]; - return new PropTypeError('Invalid ' + locationName + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`, expected a ReactNode.')); - } - return null; - } - return createChainableTypeChecker(validate); -} - -function createShapeTypeChecker(shapeTypes) { - function validate(props, propName, componentName, location, propFullName) { - var propValue = props[propName]; - var propType = getPropType(propValue); - if (propType !== 'object') { - var locationName = ReactPropTypeLocationNames[location]; - return new PropTypeError('Invalid ' + locationName + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.')); - } - for (var key in shapeTypes) { - var checker = shapeTypes[key]; - if (!checker) { - continue; - } - var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret); - if (error) { - return error; - } - } - return null; - } - return createChainableTypeChecker(validate); -} - -function isNode(propValue) { - switch (typeof propValue) { - case 'number': - case 'string': - case 'undefined': - return true; - case 'boolean': - return !propValue; - case 'object': - if (Array.isArray(propValue)) { - return propValue.every(isNode); - } - if (propValue === null || ReactElement.isValidElement(propValue)) { - return true; - } - - var iteratorFn = getIteratorFn(propValue); - if (iteratorFn) { - var iterator = iteratorFn.call(propValue); - var step; - if (iteratorFn !== propValue.entries) { - while (!(step = iterator.next()).done) { - if (!isNode(step.value)) { - return false; - } - } - } else { - // Iterator will provide entry [k,v] tuples rather than values. - while (!(step = iterator.next()).done) { - var entry = step.value; - if (entry) { - if (!isNode(entry[1])) { - return false; - } - } - } - } - } else { - return false; - } - - return true; - default: - return false; - } -} - -function isSymbol(propType, propValue) { - // Native Symbol. - if (propType === 'symbol') { - return true; - } - - // 19.4.3.5 Symbol.prototype[@@toStringTag] === 'Symbol' - if (propValue['@@toStringTag'] === 'Symbol') { - return true; - } - - // Fallback for non-spec compliant Symbols which are polyfilled. - if (typeof Symbol === 'function' && propValue instanceof Symbol) { - return true; - } - - return false; -} - -// Equivalent of `typeof` but with special handling for array and regexp. -function getPropType(propValue) { - var propType = typeof propValue; - if (Array.isArray(propValue)) { - return 'array'; - } - if (propValue instanceof RegExp) { - // Old webkits (at least until Android 4.0) return 'function' rather than - // 'object' for typeof a RegExp. We'll normalize this here so that /bla/ - // passes PropTypes.object. - return 'object'; - } - if (isSymbol(propType, propValue)) { - return 'symbol'; - } - return propType; -} - -// This handles more types than `getPropType`. Only used for error messages. -// See `createPrimitiveTypeChecker`. -function getPreciseType(propValue) { - var propType = getPropType(propValue); - if (propType === 'object') { - if (propValue instanceof Date) { - return 'date'; - } else if (propValue instanceof RegExp) { - return 'regexp'; - } - } - return propType; -} - -// Returns class name of the object, if any. -function getClassName(propValue) { - if (!propValue.constructor || !propValue.constructor.name) { - return ANONYMOUS; - } - return propValue.constructor.name; -} - -module.exports = ReactPropTypes; -}).call(this,require('_process')) - -},{"./ReactElement":79,"./ReactPropTypeLocationNames":82,"./ReactPropTypesSecret":85,"./getIteratorFn":90,"_process":122,"fbjs/lib/emptyFunction":3,"fbjs/lib/warning":8}],85:[function(require,module,exports){ -/** - * Copyright 2013-present, Facebook, Inc. - * All rights reserved. - * - * This source code is licensed under the BSD-style license found in the - * LICENSE file in the root directory of this source tree. An additional grant - * of patent rights can be found in the PATENTS file in the same directory. - * - * @providesModule ReactPropTypesSecret - */ - -'use strict'; - -var ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED'; - -module.exports = ReactPropTypesSecret; -},{}],86:[function(require,module,exports){ -/** - * Copyright 2013-present, Facebook, Inc. - * All rights reserved. - * - * This source code is licensed under the BSD-style license found in the - * LICENSE file in the root directory of this source tree. An additional grant - * of patent rights can be found in the PATENTS file in the same directory. - * - * @providesModule ReactPureComponent - */ - -'use strict'; - -var _assign = require('object-assign'); - -var ReactComponent = require('./ReactComponent'); -var ReactNoopUpdateQueue = require('./ReactNoopUpdateQueue'); - -var emptyObject = require('fbjs/lib/emptyObject'); - -/** - * Base class helpers for the updating state of a component. - */ -function ReactPureComponent(props, context, updater) { - // Duplicated from ReactComponent. - this.props = props; - this.context = context; - this.refs = emptyObject; - // We initialize the default updater but the real one gets injected by the - // renderer. - this.updater = updater || ReactNoopUpdateQueue; -} - -function ComponentDummy() {} -ComponentDummy.prototype = ReactComponent.prototype; -ReactPureComponent.prototype = new ComponentDummy(); -ReactPureComponent.prototype.constructor = ReactPureComponent; -// Avoid an extra prototype jump for these methods. -_assign(ReactPureComponent.prototype, ReactComponent.prototype); -ReactPureComponent.prototype.isPureReactComponent = true; - -module.exports = ReactPureComponent; -},{"./ReactComponent":75,"./ReactNoopUpdateQueue":81,"fbjs/lib/emptyObject":4,"object-assign":40}],87:[function(require,module,exports){ -/** - * Copyright 2013-present, Facebook, Inc. - * All rights reserved. - * - * This source code is licensed under the BSD-style license found in the - * LICENSE file in the root directory of this source tree. An additional grant - * of patent rights can be found in the PATENTS file in the same directory. - * - * @providesModule ReactVersion - */ - -'use strict'; - -module.exports = '15.3.2'; -},{}],88:[function(require,module,exports){ -(function (process){ -/** - * Copyright 2013-present, Facebook, Inc. - * All rights reserved. - * - * This source code is licensed under the BSD-style license found in the - * LICENSE file in the root directory of this source tree. An additional grant - * of patent rights can be found in the PATENTS file in the same directory. - * - * @providesModule canDefineProperty - */ - -'use strict'; - -var canDefineProperty = false; -if (process.env.NODE_ENV !== 'production') { - try { - Object.defineProperty({}, 'x', { get: function () {} }); - canDefineProperty = true; - } catch (x) { - // IE will fail on defineProperty - } -} - -module.exports = canDefineProperty; -}).call(this,require('_process')) - -},{"_process":122}],89:[function(require,module,exports){ -(function (process){ -/** - * Copyright 2013-present, Facebook, Inc. - * All rights reserved. - * - * This source code is licensed under the BSD-style license found in the - * LICENSE file in the root directory of this source tree. An additional grant - * of patent rights can be found in the PATENTS file in the same directory. - * - * @providesModule checkReactTypeSpec - */ - -'use strict'; - -var _prodInvariant = require('./reactProdInvariant'); - -var ReactPropTypeLocationNames = require('./ReactPropTypeLocationNames'); -var ReactPropTypesSecret = require('./ReactPropTypesSecret'); - -var invariant = require('fbjs/lib/invariant'); -var warning = require('fbjs/lib/warning'); - -var ReactComponentTreeHook; - -if (typeof process !== 'undefined' && process.env && process.env.NODE_ENV === 'test') { - // Temporary hack. - // Inline requires don't work well with Jest: - // https://github.com/facebook/react/issues/7240 - // Remove the inline requires when we don't need them anymore: - // https://github.com/facebook/react/pull/7178 - ReactComponentTreeHook = require('./ReactComponentTreeHook'); -} - -var loggedTypeFailures = {}; - -/** - * Assert that the values match with the type specs. - * Error messages are memorized and will only be shown once. - * - * @param {object} typeSpecs Map of name to a ReactPropType - * @param {object} values Runtime values that need to be type-checked - * @param {string} location e.g. "prop", "context", "child context" - * @param {string} componentName Name of the component for error messages. - * @param {?object} element The React element that is being type-checked - * @param {?number} debugID The React component instance that is being type-checked - * @private - */ -function checkReactTypeSpec(typeSpecs, values, location, componentName, element, debugID) { - for (var typeSpecName in typeSpecs) { - if (typeSpecs.hasOwnProperty(typeSpecName)) { - var error; - // Prop type validation may throw. In case they do, we don't want to - // fail the render phase where it didn't fail before. So we log it. - // After these have been cleaned up, we'll let them throw. - try { - // This is intentionally an invariant that gets caught. It's the same - // behavior as without this statement except with a better message. - !(typeof typeSpecs[typeSpecName] === 'function') ? process.env.NODE_ENV !== 'production' ? invariant(false, '%s: %s type `%s` is invalid; it must be a function, usually from React.PropTypes.', componentName || 'React class', ReactPropTypeLocationNames[location], typeSpecName) : _prodInvariant('84', componentName || 'React class', ReactPropTypeLocationNames[location], typeSpecName) : void 0; - error = typeSpecs[typeSpecName](values, typeSpecName, componentName, location, null, ReactPropTypesSecret); - } catch (ex) { - error = ex; - } - process.env.NODE_ENV !== 'production' ? warning(!error || error instanceof Error, '%s: type specification of %s `%s` is invalid; the type checker ' + 'function must return `null` or an `Error` but returned a %s. ' + 'You may have forgotten to pass an argument to the type checker ' + 'creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and ' + 'shape all require an argument).', componentName || 'React class', ReactPropTypeLocationNames[location], typeSpecName, typeof error) : void 0; - if (error instanceof Error && !(error.message in loggedTypeFailures)) { - // Only monitor this failure once because there tends to be a lot of the - // same error. - loggedTypeFailures[error.message] = true; - - var componentStackInfo = ''; - - if (process.env.NODE_ENV !== 'production') { - if (!ReactComponentTreeHook) { - ReactComponentTreeHook = require('./ReactComponentTreeHook'); - } - if (debugID !== null) { - componentStackInfo = ReactComponentTreeHook.getStackAddendumByID(debugID); - } else if (element !== null) { - componentStackInfo = ReactComponentTreeHook.getCurrentStackAddendum(element); - } - } - - process.env.NODE_ENV !== 'production' ? warning(false, 'Failed %s type: %s%s', location, error.message, componentStackInfo) : void 0; - } - } - } -} - -module.exports = checkReactTypeSpec; -}).call(this,require('_process')) - -},{"./ReactComponentTreeHook":76,"./ReactPropTypeLocationNames":82,"./ReactPropTypesSecret":85,"./reactProdInvariant":92,"_process":122,"fbjs/lib/invariant":5,"fbjs/lib/warning":8}],90:[function(require,module,exports){ -/** - * Copyright 2013-present, Facebook, Inc. - * All rights reserved. - * - * This source code is licensed under the BSD-style license found in the - * LICENSE file in the root directory of this source tree. An additional grant - * of patent rights can be found in the PATENTS file in the same directory. - * - * @providesModule getIteratorFn - * - */ - -'use strict'; - -/* global Symbol */ - -var ITERATOR_SYMBOL = typeof Symbol === 'function' && Symbol.iterator; -var FAUX_ITERATOR_SYMBOL = '@@iterator'; // Before Symbol spec. - -/** - * Returns the iterator method function contained on the iterable object. - * - * Be sure to invoke the function with the iterable as context: - * - * var iteratorFn = getIteratorFn(myIterable); - * if (iteratorFn) { - * var iterator = iteratorFn.call(myIterable); - * ... - * } - * - * @param {?object} maybeIterable - * @return {?function} - */ -function getIteratorFn(maybeIterable) { - var iteratorFn = maybeIterable && (ITERATOR_SYMBOL && maybeIterable[ITERATOR_SYMBOL] || maybeIterable[FAUX_ITERATOR_SYMBOL]); - if (typeof iteratorFn === 'function') { - return iteratorFn; - } -} - -module.exports = getIteratorFn; -},{}],91:[function(require,module,exports){ -(function (process){ -/** - * Copyright 2013-present, Facebook, Inc. - * All rights reserved. - * - * This source code is licensed under the BSD-style license found in the - * LICENSE file in the root directory of this source tree. An additional grant - * of patent rights can be found in the PATENTS file in the same directory. - * - * @providesModule onlyChild - */ -'use strict'; - -var _prodInvariant = require('./reactProdInvariant'); - -var ReactElement = require('./ReactElement'); - -var invariant = require('fbjs/lib/invariant'); - -/** - * Returns the first child in a collection of children and verifies that there - * is only one child in the collection. - * - * See https://facebook.github.io/react/docs/top-level-api.html#react.children.only - * - * The current implementation of this function assumes that a single child gets - * passed without a wrapper, but the purpose of this helper function is to - * abstract away the particular structure of children. - * - * @param {?object} children Child collection structure. - * @return {ReactElement} The first and only `ReactElement` contained in the - * structure. - */ -function onlyChild(children) { - !ReactElement.isValidElement(children) ? process.env.NODE_ENV !== 'production' ? invariant(false, 'React.Children.only expected to receive a single React element child.') : _prodInvariant('143') : void 0; - return children; -} - -module.exports = onlyChild; -}).call(this,require('_process')) - -},{"./ReactElement":79,"./reactProdInvariant":92,"_process":122,"fbjs/lib/invariant":5}],92:[function(require,module,exports){ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * All rights reserved. - * - * This source code is licensed under the BSD-style license found in the - * LICENSE file in the root directory of this source tree. An additional grant - * of patent rights can be found in the PATENTS file in the same directory. - * - * @providesModule reactProdInvariant - * - */ -'use strict'; - -/** - * WARNING: DO NOT manually require this module. - * This is a replacement for `invariant(...)` used by the error code system - * and will _only_ be required by the corresponding babel pass. - * It always throws. - */ - -function reactProdInvariant(code) { - var argCount = arguments.length - 1; - - var message = 'Minified React error #' + code + '; visit ' + 'http://facebook.github.io/react/docs/error-decoder.html?invariant=' + code; - - for (var argIdx = 0; argIdx < argCount; argIdx++) { - message += '&args[]=' + encodeURIComponent(arguments[argIdx + 1]); - } - - message += ' for the full message or use the non-minified dev environment' + ' for full errors and additional helpful warnings.'; - - var error = new Error(message); - error.name = 'Invariant Violation'; - error.framesToPop = 1; // we don't care about reactProdInvariant's own frame - - throw error; -} - -module.exports = reactProdInvariant; -},{}],93:[function(require,module,exports){ -(function (process){ -/** - * Copyright 2013-present, Facebook, Inc. - * All rights reserved. - * - * This source code is licensed under the BSD-style license found in the - * LICENSE file in the root directory of this source tree. An additional grant - * of patent rights can be found in the PATENTS file in the same directory. - * - * @providesModule traverseAllChildren - */ - -'use strict'; - -var _prodInvariant = require('./reactProdInvariant'); - -var ReactCurrentOwner = require('./ReactCurrentOwner'); -var ReactElement = require('./ReactElement'); - -var getIteratorFn = require('./getIteratorFn'); -var invariant = require('fbjs/lib/invariant'); -var KeyEscapeUtils = require('./KeyEscapeUtils'); -var warning = require('fbjs/lib/warning'); - -var SEPARATOR = '.'; -var SUBSEPARATOR = ':'; - -/** - * TODO: Test that a single child and an array with one item have the same key - * pattern. - */ - -var didWarnAboutMaps = false; - -/** - * Generate a key string that identifies a component within a set. - * - * @param {*} component A component that could contain a manual key. - * @param {number} index Index that is used if a manual key is not provided. - * @return {string} - */ -function getComponentKey(component, index) { - // Do some typechecking here since we call this blindly. We want to ensure - // that we don't block potential future ES APIs. - if (component && typeof component === 'object' && component.key != null) { - // Explicit key - return KeyEscapeUtils.escape(component.key); - } - // Implicit key determined by the index in the set - return index.toString(36); -} - -/** - * @param {?*} children Children tree container. - * @param {!string} nameSoFar Name of the key path so far. - * @param {!function} callback Callback to invoke with each child found. - * @param {?*} traverseContext Used to pass information throughout the traversal - * process. - * @return {!number} The number of children in this subtree. - */ -function traverseAllChildrenImpl(children, nameSoFar, callback, traverseContext) { - var type = typeof children; - - if (type === 'undefined' || type === 'boolean') { - // All of the above are perceived as null. - children = null; - } - - if (children === null || type === 'string' || type === 'number' || ReactElement.isValidElement(children)) { - callback(traverseContext, children, - // If it's the only child, treat the name as if it was wrapped in an array - // so that it's consistent if the number of children grows. - nameSoFar === '' ? SEPARATOR + getComponentKey(children, 0) : nameSoFar); - return 1; - } - - var child; - var nextName; - var subtreeCount = 0; // Count of children found in the current subtree. - var nextNamePrefix = nameSoFar === '' ? SEPARATOR : nameSoFar + SUBSEPARATOR; - - if (Array.isArray(children)) { - for (var i = 0; i < children.length; i++) { - child = children[i]; - nextName = nextNamePrefix + getComponentKey(child, i); - subtreeCount += traverseAllChildrenImpl(child, nextName, callback, traverseContext); - } - } else { - var iteratorFn = getIteratorFn(children); - if (iteratorFn) { - var iterator = iteratorFn.call(children); - var step; - if (iteratorFn !== children.entries) { - var ii = 0; - while (!(step = iterator.next()).done) { - child = step.value; - nextName = nextNamePrefix + getComponentKey(child, ii++); - subtreeCount += traverseAllChildrenImpl(child, nextName, callback, traverseContext); - } - } else { - if (process.env.NODE_ENV !== 'production') { - var mapsAsChildrenAddendum = ''; - if (ReactCurrentOwner.current) { - var mapsAsChildrenOwnerName = ReactCurrentOwner.current.getName(); - if (mapsAsChildrenOwnerName) { - mapsAsChildrenAddendum = ' Check the render method of `' + mapsAsChildrenOwnerName + '`.'; - } - } - process.env.NODE_ENV !== 'production' ? warning(didWarnAboutMaps, 'Using Maps as children is not yet fully supported. It is an ' + 'experimental feature that might be removed. Convert it to a ' + 'sequence / iterable of keyed ReactElements instead.%s', mapsAsChildrenAddendum) : void 0; - didWarnAboutMaps = true; - } - // Iterator will provide entry [k,v] tuples rather than values. - while (!(step = iterator.next()).done) { - var entry = step.value; - if (entry) { - child = entry[1]; - nextName = nextNamePrefix + KeyEscapeUtils.escape(entry[0]) + SUBSEPARATOR + getComponentKey(child, 0); - subtreeCount += traverseAllChildrenImpl(child, nextName, callback, traverseContext); - } - } - } - } else if (type === 'object') { - var addendum = ''; - if (process.env.NODE_ENV !== 'production') { - addendum = ' If you meant to render a collection of children, use an array ' + 'instead or wrap the object using createFragment(object) from the ' + 'React add-ons.'; - if (children._isReactElement) { - addendum = ' It looks like you\'re using an element created by a different ' + 'version of React. Make sure to use only one copy of React.'; - } - if (ReactCurrentOwner.current) { - var name = ReactCurrentOwner.current.getName(); - if (name) { - addendum += ' Check the render method of `' + name + '`.'; - } - } - } - var childrenString = String(children); - !false ? process.env.NODE_ENV !== 'production' ? invariant(false, 'Objects are not valid as a React child (found: %s).%s', childrenString === '[object Object]' ? 'object with keys {' + Object.keys(children).join(', ') + '}' : childrenString, addendum) : _prodInvariant('31', childrenString === '[object Object]' ? 'object with keys {' + Object.keys(children).join(', ') + '}' : childrenString, addendum) : void 0; - } - } - - return subtreeCount; -} - -/** - * Traverses children that are typically specified as `props.children`, but - * might also be specified through attributes: - * - * - `traverseAllChildren(this.props.children, ...)` - * - `traverseAllChildren(this.props.leftPanelChildren, ...)` - * - * The `traverseContext` is an optional argument that is passed through the - * entire traversal. It can be used to store accumulations or anything else that - * the callback might find relevant. - * - * @param {?*} children Children tree object. - * @param {!function} callback To invoke upon traversing each child. - * @param {?*} traverseContext Context for traversal. - * @return {!number} The number of children in this subtree. - */ -function traverseAllChildren(children, callback, traverseContext) { - if (children == null) { - return 0; - } - - return traverseAllChildrenImpl(children, '', callback, traverseContext); -} - -module.exports = traverseAllChildren; -}).call(this,require('_process')) - -},{"./KeyEscapeUtils":70,"./ReactCurrentOwner":77,"./ReactElement":79,"./getIteratorFn":90,"./reactProdInvariant":92,"_process":122,"fbjs/lib/invariant":5,"fbjs/lib/warning":8}],94:[function(require,module,exports){ -'use strict'; - -module.exports = require('./lib/React'); - -},{"./lib/React":72}],95:[function(require,module,exports){ 'use strict'; var _src = require('../src'); -var _react = require('react'); +var _react = require('../src/react'); var _react2 = _interopRequireDefault(_react); +var _react3 = require('react'); + +var _react4 = _interopRequireDefault(_react3); + var _reactDom = require('react-dom'); var _reactDom2 = _interopRequireDefault(_reactDom); @@ -7754,9 +39,9 @@ document.addEventListener("DOMContentLoaded", function () { // React -_reactDom2.default.render(_react2.default.createElement(_src.FunniesComponent, null), document.getElementById('react-1')); +_reactDom2.default.render(_react4.default.createElement(_react2.default, null), document.getElementById('react-1')); -var Wrapper = _react2.default.createClass({ +var Wrapper = _react4.default.createClass({ displayName: 'Wrapper', getInitialState: function getInitialState() { return { interval: 2000 }; @@ -7767,11 +52,11 @@ var Wrapper = _react2.default.createClass({ render: function render() { var _this = this; - return _react2.default.createElement( + return _react4.default.createElement( 'div', { className: 'funnies-wrapper' }, - _react2.default.createElement(_src.FunniesComponent, { key: this.state.interval, interval: this.state.interval }), - _react2.default.createElement('input', { + _react4.default.createElement(_react2.default, { key: this.state.interval, interval: this.state.interval }), + _react4.default.createElement('input', { type: 'range', min: 0, max: 8000, @@ -7781,29 +66,29 @@ var Wrapper = _react2.default.createClass({ return _this.updateInterval(e.target.value); } }), - _react2.default.createElement( + _react4.default.createElement( 'span', null, this.state.interval / 1000, ' seconds', this.state.interval === 0 ? " (doesn't periodically change)" : '' ), - _react2.default.createElement( + _react4.default.createElement( 'h4', null, 'Code:' ), - _react2.default.createElement( + _react4.default.createElement( 'pre', null, - '\nimport {FunniesComponent} from \'funnies\';\nconst Wrapper = React.createClass({\n getInitialState() {\n return {interval: 1000};\n },\n update(interval) {\n this.setState({interval: parseInt(interval)});\n },\n render() {\n return
\n \n this.update(e.target.value)}\n />\n
;\n }\n});\nReactDOM.render(, element);\n ' + '\nimport FunniesComponent from \'funnies/react\';\nconst Wrapper = React.createClass({\n getInitialState() {\n return {interval: 1000};\n },\n update(interval) {\n this.setState({interval: parseInt(interval)});\n },\n render() {\n return
\n \n this.update(e.target.value)}\n />\n
;\n }\n});\nReactDOM.render(, element);\n ' ) ); } }); -_reactDom2.default.render(_react2.default.createElement(Wrapper, null), document.getElementById('react-2')); +_reactDom2.default.render(_react4.default.createElement(Wrapper, null), document.getElementById('react-2')); -},{"../src":288,"react":286,"react-dom":124}],96:[function(require,module,exports){ +},{"../src":194,"../src/react":195,"react":192,"react-dom":30}],2:[function(require,module,exports){ (function (process){ 'use strict'; @@ -7928,7 +213,7 @@ var CSSCore = { module.exports = CSSCore; }).call(this,require('_process')) -},{"./invariant":112,"_process":122}],97:[function(require,module,exports){ +},{"./invariant":18,"_process":28}],3:[function(require,module,exports){ (function (process){ 'use strict'; @@ -8015,7 +300,7 @@ var EventListener = { module.exports = EventListener; }).call(this,require('_process')) -},{"./emptyFunction":104,"_process":122}],98:[function(require,module,exports){ +},{"./emptyFunction":10,"_process":28}],4:[function(require,module,exports){ /** * Copyright (c) 2013-present, Facebook, Inc. * All rights reserved. @@ -8051,7 +336,7 @@ var ExecutionEnvironment = { }; module.exports = ExecutionEnvironment; -},{}],99:[function(require,module,exports){ +},{}],5:[function(require,module,exports){ "use strict"; /** @@ -8083,7 +368,7 @@ function camelize(string) { } module.exports = camelize; -},{}],100:[function(require,module,exports){ +},{}],6:[function(require,module,exports){ /** * Copyright (c) 2013-present, Facebook, Inc. * All rights reserved. @@ -8123,7 +408,7 @@ function camelizeStyleName(string) { } module.exports = camelizeStyleName; -},{"./camelize":99}],101:[function(require,module,exports){ +},{"./camelize":5}],7:[function(require,module,exports){ 'use strict'; /** @@ -8163,7 +448,7 @@ function containsNode(outerNode, innerNode) { } module.exports = containsNode; -},{"./isTextNode":114}],102:[function(require,module,exports){ +},{"./isTextNode":20}],8:[function(require,module,exports){ (function (process){ 'use strict'; @@ -8293,7 +578,7 @@ function createArrayFromMixed(obj) { module.exports = createArrayFromMixed; }).call(this,require('_process')) -},{"./invariant":112,"_process":122}],103:[function(require,module,exports){ +},{"./invariant":18,"_process":28}],9:[function(require,module,exports){ (function (process){ 'use strict'; @@ -8380,9 +665,46 @@ function createNodesFromMarkup(markup, handleScript) { module.exports = createNodesFromMarkup; }).call(this,require('_process')) -},{"./ExecutionEnvironment":98,"./createArrayFromMixed":102,"./getMarkupWrap":108,"./invariant":112,"_process":122}],104:[function(require,module,exports){ -arguments[4][3][0].apply(exports,arguments) -},{"dup":3}],105:[function(require,module,exports){ +},{"./ExecutionEnvironment":4,"./createArrayFromMixed":8,"./getMarkupWrap":14,"./invariant":18,"_process":28}],10:[function(require,module,exports){ +"use strict"; + +/** + * Copyright (c) 2013-present, Facebook, Inc. + * All rights reserved. + * + * This source code is licensed under the BSD-style license found in the + * LICENSE file in the root directory of this source tree. An additional grant + * of patent rights can be found in the PATENTS file in the same directory. + * + * + */ + +function makeEmptyFunction(arg) { + return function () { + return arg; + }; +} + +/** + * This function accepts and discards inputs; it has no side effects. This is + * primarily useful idiomatically for overridable function endpoints which + * always need to be callable, since JS lacks a null-call idiom ala Cocoa. + */ +var emptyFunction = function emptyFunction() {}; + +emptyFunction.thatReturns = makeEmptyFunction; +emptyFunction.thatReturnsFalse = makeEmptyFunction(false); +emptyFunction.thatReturnsTrue = makeEmptyFunction(true); +emptyFunction.thatReturnsNull = makeEmptyFunction(null); +emptyFunction.thatReturnsThis = function () { + return this; +}; +emptyFunction.thatReturnsArgument = function (arg) { + return arg; +}; + +module.exports = emptyFunction; +},{}],11:[function(require,module,exports){ (function (process){ /** * Copyright (c) 2013-present, Facebook, Inc. @@ -8405,7 +727,7 @@ if (process.env.NODE_ENV !== 'production') { module.exports = emptyObject; }).call(this,require('_process')) -},{"_process":122}],106:[function(require,module,exports){ +},{"_process":28}],12:[function(require,module,exports){ /** * Copyright (c) 2013-present, Facebook, Inc. * All rights reserved. @@ -8432,7 +754,7 @@ function focusNode(node) { } module.exports = focusNode; -},{}],107:[function(require,module,exports){ +},{}],13:[function(require,module,exports){ 'use strict'; /** @@ -8467,7 +789,7 @@ function getActiveElement() /*?DOMElement*/{ } module.exports = getActiveElement; -},{}],108:[function(require,module,exports){ +},{}],14:[function(require,module,exports){ (function (process){ 'use strict'; @@ -8565,7 +887,7 @@ function getMarkupWrap(nodeName) { module.exports = getMarkupWrap; }).call(this,require('_process')) -},{"./ExecutionEnvironment":98,"./invariant":112,"_process":122}],109:[function(require,module,exports){ +},{"./ExecutionEnvironment":4,"./invariant":18,"_process":28}],15:[function(require,module,exports){ /** * Copyright (c) 2013-present, Facebook, Inc. * All rights reserved. @@ -8604,7 +926,7 @@ function getUnboundedScrollPosition(scrollable) { } module.exports = getUnboundedScrollPosition; -},{}],110:[function(require,module,exports){ +},{}],16:[function(require,module,exports){ 'use strict'; /** @@ -8637,7 +959,7 @@ function hyphenate(string) { } module.exports = hyphenate; -},{}],111:[function(require,module,exports){ +},{}],17:[function(require,module,exports){ /** * Copyright (c) 2013-present, Facebook, Inc. * All rights reserved. @@ -8676,7 +998,7 @@ function hyphenateStyleName(string) { } module.exports = hyphenateStyleName; -},{"./hyphenate":110}],112:[function(require,module,exports){ +},{"./hyphenate":16}],18:[function(require,module,exports){ (function (process){ /** * Copyright (c) 2013-present, Facebook, Inc. @@ -8729,7 +1051,7 @@ function invariant(condition, format, a, b, c, d, e, f) { module.exports = invariant; }).call(this,require('_process')) -},{"_process":122}],113:[function(require,module,exports){ +},{"_process":28}],19:[function(require,module,exports){ 'use strict'; /** @@ -8752,7 +1074,7 @@ function isNode(object) { } module.exports = isNode; -},{}],114:[function(require,module,exports){ +},{}],20:[function(require,module,exports){ 'use strict'; /** @@ -8777,7 +1099,7 @@ function isTextNode(object) { } module.exports = isTextNode; -},{"./isNode":113}],115:[function(require,module,exports){ +},{"./isNode":19}],21:[function(require,module,exports){ /** * Copyright (c) 2013-present, Facebook, Inc. * All rights reserved. @@ -8807,7 +1129,7 @@ function memoizeStringOnly(callback) { } module.exports = memoizeStringOnly; -},{}],116:[function(require,module,exports){ +},{}],22:[function(require,module,exports){ /** * Copyright (c) 2013-present, Facebook, Inc. * All rights reserved. @@ -8830,7 +1152,7 @@ if (ExecutionEnvironment.canUseDOM) { } module.exports = performance || {}; -},{"./ExecutionEnvironment":98}],117:[function(require,module,exports){ +},{"./ExecutionEnvironment":4}],23:[function(require,module,exports){ 'use strict'; /** @@ -8864,7 +1186,7 @@ if (performance.now) { } module.exports = performanceNow; -},{"./performance":116}],118:[function(require,module,exports){ +},{"./performance":22}],24:[function(require,module,exports){ /** * Copyright (c) 2013-present, Facebook, Inc. * All rights reserved. @@ -8932,7 +1254,7 @@ function shallowEqual(objA, objB) { } module.exports = shallowEqual; -},{}],119:[function(require,module,exports){ +},{}],25:[function(require,module,exports){ (function (process){ /** * Copyright 2014-2015, Facebook, Inc. @@ -9002,7 +1324,7 @@ if (process.env.NODE_ENV !== 'production') { module.exports = warning; }).call(this,require('_process')) -},{"./emptyFunction":104,"_process":122}],120:[function(require,module,exports){ +},{"./emptyFunction":10,"_process":28}],26:[function(require,module,exports){ (function (global){ /** * @license @@ -26072,9 +18394,92 @@ module.exports = warning; }).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {}) -},{}],121:[function(require,module,exports){ -arguments[4][40][0].apply(exports,arguments) -},{"dup":40}],122:[function(require,module,exports){ +},{}],27:[function(require,module,exports){ +'use strict'; +/* eslint-disable no-unused-vars */ +var hasOwnProperty = Object.prototype.hasOwnProperty; +var propIsEnumerable = Object.prototype.propertyIsEnumerable; + +function toObject(val) { + if (val === null || val === undefined) { + throw new TypeError('Object.assign cannot be called with null or undefined'); + } + + return Object(val); +} + +function shouldUseNative() { + try { + if (!Object.assign) { + return false; + } + + // Detect buggy property enumeration order in older V8 versions. + + // https://bugs.chromium.org/p/v8/issues/detail?id=4118 + var test1 = new String('abc'); // eslint-disable-line + test1[5] = 'de'; + if (Object.getOwnPropertyNames(test1)[0] === '5') { + return false; + } + + // https://bugs.chromium.org/p/v8/issues/detail?id=3056 + var test2 = {}; + for (var i = 0; i < 10; i++) { + test2['_' + String.fromCharCode(i)] = i; + } + var order2 = Object.getOwnPropertyNames(test2).map(function (n) { + return test2[n]; + }); + if (order2.join('') !== '0123456789') { + return false; + } + + // https://bugs.chromium.org/p/v8/issues/detail?id=3056 + var test3 = {}; + 'abcdefghijklmnopqrst'.split('').forEach(function (letter) { + test3[letter] = letter; + }); + if (Object.keys(Object.assign({}, test3)).join('') !== + 'abcdefghijklmnopqrst') { + return false; + } + + return true; + } catch (e) { + // We don't expect any of the above to throw, but better to be safe. + return false; + } +} + +module.exports = shouldUseNative() ? Object.assign : function (target, source) { + var from; + var to = toObject(target); + var symbols; + + for (var s = 1; s < arguments.length; s++) { + from = Object(arguments[s]); + + for (var key in from) { + if (hasOwnProperty.call(from, key)) { + to[key] = from[key]; + } + } + + if (Object.getOwnPropertySymbols) { + symbols = Object.getOwnPropertySymbols(from); + for (var i = 0; i < symbols.length; i++) { + if (propIsEnumerable.call(from, symbols[i])) { + to[symbols[i]] = from[symbols[i]]; + } + } + } + } + + return to; +}; + +},{}],28:[function(require,module,exports){ // shim for using process in browser var process = module.exports = {}; @@ -26256,14 +18661,14 @@ process.chdir = function (dir) { }; process.umask = function() { return 0; }; -},{}],123:[function(require,module,exports){ +},{}],29:[function(require,module,exports){ module.exports = require('react/lib/ReactCSSTransitionGroup'); -},{"react/lib/ReactCSSTransitionGroup":259}],124:[function(require,module,exports){ +},{"react/lib/ReactCSSTransitionGroup":165}],30:[function(require,module,exports){ 'use strict'; module.exports = require('./lib/ReactDOM'); -},{"./lib/ReactDOM":155}],125:[function(require,module,exports){ +},{"./lib/ReactDOM":61}],31:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -26337,7 +18742,7 @@ var ARIADOMPropertyConfig = { }; module.exports = ARIADOMPropertyConfig; -},{}],126:[function(require,module,exports){ +},{}],32:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -26361,7 +18766,7 @@ var AutoFocusUtils = { }; module.exports = AutoFocusUtils; -},{"./ReactDOMComponentTree":158,"fbjs/lib/focusNode":106}],127:[function(require,module,exports){ +},{"./ReactDOMComponentTree":64,"fbjs/lib/focusNode":12}],33:[function(require,module,exports){ /** * Copyright 2013-present Facebook, Inc. * All rights reserved. @@ -26746,7 +19151,7 @@ var BeforeInputEventPlugin = { }; module.exports = BeforeInputEventPlugin; -},{"./EventPropagators":144,"./FallbackCompositionState":145,"./SyntheticCompositionEvent":212,"./SyntheticInputEvent":216,"fbjs/lib/ExecutionEnvironment":98}],128:[function(require,module,exports){ +},{"./EventPropagators":50,"./FallbackCompositionState":51,"./SyntheticCompositionEvent":118,"./SyntheticInputEvent":122,"fbjs/lib/ExecutionEnvironment":4}],34:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -26894,7 +19299,7 @@ var CSSProperty = { }; module.exports = CSSProperty; -},{}],129:[function(require,module,exports){ +},{}],35:[function(require,module,exports){ (function (process){ /** * Copyright 2013-present, Facebook, Inc. @@ -27106,7 +19511,7 @@ var CSSPropertyOperations = { module.exports = CSSPropertyOperations; }).call(this,require('_process')) -},{"./CSSProperty":128,"./ReactInstrumentation":187,"./dangerousStyleValue":229,"_process":122,"fbjs/lib/ExecutionEnvironment":98,"fbjs/lib/camelizeStyleName":100,"fbjs/lib/hyphenateStyleName":111,"fbjs/lib/memoizeStringOnly":115,"fbjs/lib/warning":119}],130:[function(require,module,exports){ +},{"./CSSProperty":34,"./ReactInstrumentation":93,"./dangerousStyleValue":135,"_process":28,"fbjs/lib/ExecutionEnvironment":4,"fbjs/lib/camelizeStyleName":6,"fbjs/lib/hyphenateStyleName":17,"fbjs/lib/memoizeStringOnly":21,"fbjs/lib/warning":25}],36:[function(require,module,exports){ (function (process){ /** * Copyright 2013-present, Facebook, Inc. @@ -27228,7 +19633,7 @@ var CallbackQueue = function () { module.exports = PooledClass.addPoolingTo(CallbackQueue); }).call(this,require('_process')) -},{"./PooledClass":149,"./reactProdInvariant":248,"_process":122,"fbjs/lib/invariant":112}],131:[function(require,module,exports){ +},{"./PooledClass":55,"./reactProdInvariant":154,"_process":28,"fbjs/lib/invariant":18}],37:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -27549,7 +19954,7 @@ var ChangeEventPlugin = { }; module.exports = ChangeEventPlugin; -},{"./EventPluginHub":141,"./EventPropagators":144,"./ReactDOMComponentTree":158,"./ReactUpdates":205,"./SyntheticEvent":214,"./getEventTarget":237,"./isEventSupported":245,"./isTextInputElement":246,"fbjs/lib/ExecutionEnvironment":98}],132:[function(require,module,exports){ +},{"./EventPluginHub":47,"./EventPropagators":50,"./ReactDOMComponentTree":64,"./ReactUpdates":111,"./SyntheticEvent":120,"./getEventTarget":143,"./isEventSupported":151,"./isTextInputElement":152,"fbjs/lib/ExecutionEnvironment":4}],38:[function(require,module,exports){ (function (process){ /** * Copyright 2013-present, Facebook, Inc. @@ -27777,7 +20182,7 @@ var DOMChildrenOperations = { module.exports = DOMChildrenOperations; }).call(this,require('_process')) -},{"./DOMLazyTree":133,"./Danger":137,"./ReactDOMComponentTree":158,"./ReactInstrumentation":187,"./createMicrosoftUnsafeLocalFunction":228,"./setInnerHTML":250,"./setTextContent":251,"_process":122}],133:[function(require,module,exports){ +},{"./DOMLazyTree":39,"./Danger":43,"./ReactDOMComponentTree":64,"./ReactInstrumentation":93,"./createMicrosoftUnsafeLocalFunction":134,"./setInnerHTML":156,"./setTextContent":157,"_process":28}],39:[function(require,module,exports){ /** * Copyright 2015-present, Facebook, Inc. * All rights reserved. @@ -27895,7 +20300,7 @@ DOMLazyTree.queueHTML = queueHTML; DOMLazyTree.queueText = queueText; module.exports = DOMLazyTree; -},{"./DOMNamespaces":134,"./createMicrosoftUnsafeLocalFunction":228,"./setInnerHTML":250,"./setTextContent":251}],134:[function(require,module,exports){ +},{"./DOMNamespaces":40,"./createMicrosoftUnsafeLocalFunction":134,"./setInnerHTML":156,"./setTextContent":157}],40:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -27915,7 +20320,7 @@ var DOMNamespaces = { }; module.exports = DOMNamespaces; -},{}],135:[function(require,module,exports){ +},{}],41:[function(require,module,exports){ (function (process){ /** * Copyright 2013-present, Facebook, Inc. @@ -28128,7 +20533,7 @@ var DOMProperty = { module.exports = DOMProperty; }).call(this,require('_process')) -},{"./reactProdInvariant":248,"_process":122,"fbjs/lib/invariant":112}],136:[function(require,module,exports){ +},{"./reactProdInvariant":154,"_process":28,"fbjs/lib/invariant":18}],42:[function(require,module,exports){ (function (process){ /** * Copyright 2013-present, Facebook, Inc. @@ -28368,7 +20773,7 @@ var DOMPropertyOperations = { module.exports = DOMPropertyOperations; }).call(this,require('_process')) -},{"./DOMProperty":135,"./ReactDOMComponentTree":158,"./ReactInstrumentation":187,"./quoteAttributeValueForBrowser":247,"_process":122,"fbjs/lib/warning":119}],137:[function(require,module,exports){ +},{"./DOMProperty":41,"./ReactDOMComponentTree":64,"./ReactInstrumentation":93,"./quoteAttributeValueForBrowser":153,"_process":28,"fbjs/lib/warning":25}],43:[function(require,module,exports){ (function (process){ /** * Copyright 2013-present, Facebook, Inc. @@ -28419,7 +20824,7 @@ var Danger = { module.exports = Danger; }).call(this,require('_process')) -},{"./DOMLazyTree":133,"./reactProdInvariant":248,"_process":122,"fbjs/lib/ExecutionEnvironment":98,"fbjs/lib/createNodesFromMarkup":103,"fbjs/lib/emptyFunction":104,"fbjs/lib/invariant":112}],138:[function(require,module,exports){ +},{"./DOMLazyTree":39,"./reactProdInvariant":154,"_process":28,"fbjs/lib/ExecutionEnvironment":4,"fbjs/lib/createNodesFromMarkup":9,"fbjs/lib/emptyFunction":10,"fbjs/lib/invariant":18}],44:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -28445,7 +20850,7 @@ module.exports = Danger; var DefaultEventPluginOrder = ['ResponderEventPlugin', 'SimpleEventPlugin', 'TapEventPlugin', 'EnterLeaveEventPlugin', 'ChangeEventPlugin', 'SelectEventPlugin', 'BeforeInputEventPlugin']; module.exports = DefaultEventPluginOrder; -},{}],139:[function(require,module,exports){ +},{}],45:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -28545,7 +20950,7 @@ var EnterLeaveEventPlugin = { }; module.exports = EnterLeaveEventPlugin; -},{"./EventPropagators":144,"./ReactDOMComponentTree":158,"./SyntheticMouseEvent":218}],140:[function(require,module,exports){ +},{"./EventPropagators":50,"./ReactDOMComponentTree":64,"./SyntheticMouseEvent":124}],46:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -28637,7 +21042,7 @@ var EventConstants = { }; module.exports = EventConstants; -},{}],141:[function(require,module,exports){ +},{}],47:[function(require,module,exports){ (function (process){ /** * Copyright 2013-present, Facebook, Inc. @@ -28918,7 +21323,7 @@ var EventPluginHub = { module.exports = EventPluginHub; }).call(this,require('_process')) -},{"./EventPluginRegistry":142,"./EventPluginUtils":143,"./ReactErrorUtils":178,"./accumulateInto":225,"./forEachAccumulated":233,"./reactProdInvariant":248,"_process":122,"fbjs/lib/invariant":112}],142:[function(require,module,exports){ +},{"./EventPluginRegistry":48,"./EventPluginUtils":49,"./ReactErrorUtils":84,"./accumulateInto":131,"./forEachAccumulated":139,"./reactProdInvariant":154,"_process":28,"fbjs/lib/invariant":18}],48:[function(require,module,exports){ (function (process){ /** * Copyright 2013-present, Facebook, Inc. @@ -29176,7 +21581,7 @@ var EventPluginRegistry = { module.exports = EventPluginRegistry; }).call(this,require('_process')) -},{"./reactProdInvariant":248,"_process":122,"fbjs/lib/invariant":112}],143:[function(require,module,exports){ +},{"./reactProdInvariant":154,"_process":28,"fbjs/lib/invariant":18}],49:[function(require,module,exports){ (function (process){ /** * Copyright 2013-present, Facebook, Inc. @@ -29405,7 +21810,7 @@ var EventPluginUtils = { module.exports = EventPluginUtils; }).call(this,require('_process')) -},{"./ReactErrorUtils":178,"./reactProdInvariant":248,"_process":122,"fbjs/lib/invariant":112,"fbjs/lib/warning":119}],144:[function(require,module,exports){ +},{"./ReactErrorUtils":84,"./reactProdInvariant":154,"_process":28,"fbjs/lib/invariant":18,"fbjs/lib/warning":25}],50:[function(require,module,exports){ (function (process){ /** * Copyright 2013-present, Facebook, Inc. @@ -29542,7 +21947,7 @@ var EventPropagators = { module.exports = EventPropagators; }).call(this,require('_process')) -},{"./EventPluginHub":141,"./EventPluginUtils":143,"./accumulateInto":225,"./forEachAccumulated":233,"_process":122,"fbjs/lib/warning":119}],145:[function(require,module,exports){ +},{"./EventPluginHub":47,"./EventPluginUtils":49,"./accumulateInto":131,"./forEachAccumulated":139,"_process":28,"fbjs/lib/warning":25}],51:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -29637,7 +22042,7 @@ _assign(FallbackCompositionState.prototype, { PooledClass.addPoolingTo(FallbackCompositionState); module.exports = FallbackCompositionState; -},{"./PooledClass":149,"./getTextContentAccessor":242,"object-assign":121}],146:[function(require,module,exports){ +},{"./PooledClass":55,"./getTextContentAccessor":148,"object-assign":27}],52:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -29849,7 +22254,7 @@ var HTMLDOMPropertyConfig = { }; module.exports = HTMLDOMPropertyConfig; -},{"./DOMProperty":135}],147:[function(require,module,exports){ +},{"./DOMProperty":41}],53:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -29908,7 +22313,7 @@ var KeyEscapeUtils = { }; module.exports = KeyEscapeUtils; -},{}],148:[function(require,module,exports){ +},{}],54:[function(require,module,exports){ (function (process){ /** * Copyright 2013-present, Facebook, Inc. @@ -30046,7 +22451,7 @@ var LinkedValueUtils = { module.exports = LinkedValueUtils; }).call(this,require('_process')) -},{"./ReactPropTypesSecret":196,"./reactProdInvariant":248,"_process":122,"fbjs/lib/invariant":112,"fbjs/lib/warning":119,"react/lib/React":257}],149:[function(require,module,exports){ +},{"./ReactPropTypesSecret":102,"./reactProdInvariant":154,"_process":28,"fbjs/lib/invariant":18,"fbjs/lib/warning":25,"react/lib/React":163}],55:[function(require,module,exports){ (function (process){ /** * Copyright 2013-present, Facebook, Inc. @@ -30173,7 +22578,7 @@ var PooledClass = { module.exports = PooledClass; }).call(this,require('_process')) -},{"./reactProdInvariant":248,"_process":122,"fbjs/lib/invariant":112}],150:[function(require,module,exports){ +},{"./reactProdInvariant":154,"_process":28,"fbjs/lib/invariant":18}],56:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -30501,7 +22906,7 @@ var ReactBrowserEventEmitter = _assign({}, ReactEventEmitterMixin, { }); module.exports = ReactBrowserEventEmitter; -},{"./EventPluginRegistry":142,"./ReactEventEmitterMixin":179,"./ViewportMetrics":224,"./getVendorPrefixedEventName":243,"./isEventSupported":245,"object-assign":121}],151:[function(require,module,exports){ +},{"./EventPluginRegistry":48,"./ReactEventEmitterMixin":85,"./ViewportMetrics":130,"./getVendorPrefixedEventName":149,"./isEventSupported":151,"object-assign":27}],57:[function(require,module,exports){ (function (process){ /** * Copyright 2014-present, Facebook, Inc. @@ -30658,7 +23063,7 @@ var ReactChildReconciler = { module.exports = ReactChildReconciler; }).call(this,require('_process')) -},{"./KeyEscapeUtils":147,"./ReactReconciler":198,"./instantiateReactComponent":244,"./shouldUpdateReactComponent":252,"./traverseAllChildren":253,"_process":122,"fbjs/lib/warning":119,"react/lib/ReactComponentTreeHook":264}],152:[function(require,module,exports){ +},{"./KeyEscapeUtils":53,"./ReactReconciler":104,"./instantiateReactComponent":150,"./shouldUpdateReactComponent":158,"./traverseAllChildren":159,"_process":28,"fbjs/lib/warning":25,"react/lib/ReactComponentTreeHook":170}],58:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -30688,7 +23093,7 @@ var ReactComponentBrowserEnvironment = { }; module.exports = ReactComponentBrowserEnvironment; -},{"./DOMChildrenOperations":132,"./ReactDOMIDOperations":162}],153:[function(require,module,exports){ +},{"./DOMChildrenOperations":38,"./ReactDOMIDOperations":68}],59:[function(require,module,exports){ (function (process){ /** * Copyright 2014-present, Facebook, Inc. @@ -30737,7 +23142,7 @@ var ReactComponentEnvironment = { module.exports = ReactComponentEnvironment; }).call(this,require('_process')) -},{"./reactProdInvariant":248,"_process":122,"fbjs/lib/invariant":112}],154:[function(require,module,exports){ +},{"./reactProdInvariant":154,"_process":28,"fbjs/lib/invariant":18}],60:[function(require,module,exports){ (function (process){ /** * Copyright 2013-present, Facebook, Inc. @@ -31642,7 +24047,7 @@ var ReactCompositeComponent = { module.exports = ReactCompositeComponent; }).call(this,require('_process')) -},{"./ReactComponentEnvironment":153,"./ReactErrorUtils":178,"./ReactInstanceMap":186,"./ReactInstrumentation":187,"./ReactNodeTypes":192,"./ReactReconciler":198,"./checkReactTypeSpec":227,"./reactProdInvariant":248,"./shouldUpdateReactComponent":252,"_process":122,"fbjs/lib/emptyObject":105,"fbjs/lib/invariant":112,"fbjs/lib/shallowEqual":118,"fbjs/lib/warning":119,"object-assign":121,"react/lib/React":257,"react/lib/ReactCurrentOwner":265}],155:[function(require,module,exports){ +},{"./ReactComponentEnvironment":59,"./ReactErrorUtils":84,"./ReactInstanceMap":92,"./ReactInstrumentation":93,"./ReactNodeTypes":98,"./ReactReconciler":104,"./checkReactTypeSpec":133,"./reactProdInvariant":154,"./shouldUpdateReactComponent":158,"_process":28,"fbjs/lib/emptyObject":11,"fbjs/lib/invariant":18,"fbjs/lib/shallowEqual":24,"fbjs/lib/warning":25,"object-assign":27,"react/lib/React":163,"react/lib/ReactCurrentOwner":171}],61:[function(require,module,exports){ (function (process){ /** * Copyright 2013-present, Facebook, Inc. @@ -31756,7 +24161,7 @@ if (process.env.NODE_ENV !== 'production') { module.exports = ReactDOM; }).call(this,require('_process')) -},{"./ReactDOMComponentTree":158,"./ReactDOMInvalidARIAHook":164,"./ReactDOMNullInputValuePropHook":165,"./ReactDOMUnknownPropertyHook":172,"./ReactDefaultInjection":175,"./ReactInstrumentation":187,"./ReactMount":190,"./ReactReconciler":198,"./ReactUpdates":205,"./ReactVersion":206,"./findDOMNode":231,"./getHostComponentFromComposite":238,"./renderSubtreeIntoContainer":249,"_process":122,"fbjs/lib/ExecutionEnvironment":98,"fbjs/lib/warning":119}],156:[function(require,module,exports){ +},{"./ReactDOMComponentTree":64,"./ReactDOMInvalidARIAHook":70,"./ReactDOMNullInputValuePropHook":71,"./ReactDOMUnknownPropertyHook":78,"./ReactDefaultInjection":81,"./ReactInstrumentation":93,"./ReactMount":96,"./ReactReconciler":104,"./ReactUpdates":111,"./ReactVersion":112,"./findDOMNode":137,"./getHostComponentFromComposite":144,"./renderSubtreeIntoContainer":155,"_process":28,"fbjs/lib/ExecutionEnvironment":4,"fbjs/lib/warning":25}],62:[function(require,module,exports){ (function (process){ /** * Copyright 2013-present, Facebook, Inc. @@ -32754,7 +25159,7 @@ _assign(ReactDOMComponent.prototype, ReactDOMComponent.Mixin, ReactMultiChild.Mi module.exports = ReactDOMComponent; }).call(this,require('_process')) -},{"./AutoFocusUtils":126,"./CSSPropertyOperations":129,"./DOMLazyTree":133,"./DOMNamespaces":134,"./DOMProperty":135,"./DOMPropertyOperations":136,"./EventPluginHub":141,"./EventPluginRegistry":142,"./ReactBrowserEventEmitter":150,"./ReactDOMComponentFlags":157,"./ReactDOMComponentTree":158,"./ReactDOMInput":163,"./ReactDOMOption":166,"./ReactDOMSelect":167,"./ReactDOMTextarea":170,"./ReactInstrumentation":187,"./ReactMultiChild":191,"./ReactServerRenderingTransaction":200,"./escapeTextContentForBrowser":230,"./isEventSupported":245,"./reactProdInvariant":248,"./validateDOMNesting":254,"_process":122,"fbjs/lib/emptyFunction":104,"fbjs/lib/invariant":112,"fbjs/lib/shallowEqual":118,"fbjs/lib/warning":119,"object-assign":121}],157:[function(require,module,exports){ +},{"./AutoFocusUtils":32,"./CSSPropertyOperations":35,"./DOMLazyTree":39,"./DOMNamespaces":40,"./DOMProperty":41,"./DOMPropertyOperations":42,"./EventPluginHub":47,"./EventPluginRegistry":48,"./ReactBrowserEventEmitter":56,"./ReactDOMComponentFlags":63,"./ReactDOMComponentTree":64,"./ReactDOMInput":69,"./ReactDOMOption":72,"./ReactDOMSelect":73,"./ReactDOMTextarea":76,"./ReactInstrumentation":93,"./ReactMultiChild":97,"./ReactServerRenderingTransaction":106,"./escapeTextContentForBrowser":136,"./isEventSupported":151,"./reactProdInvariant":154,"./validateDOMNesting":160,"_process":28,"fbjs/lib/emptyFunction":10,"fbjs/lib/invariant":18,"fbjs/lib/shallowEqual":24,"fbjs/lib/warning":25,"object-assign":27}],63:[function(require,module,exports){ /** * Copyright 2015-present, Facebook, Inc. * All rights reserved. @@ -32772,7 +25177,7 @@ var ReactDOMComponentFlags = { }; module.exports = ReactDOMComponentFlags; -},{}],158:[function(require,module,exports){ +},{}],64:[function(require,module,exports){ (function (process){ /** * Copyright 2013-present, Facebook, Inc. @@ -32963,7 +25368,7 @@ var ReactDOMComponentTree = { module.exports = ReactDOMComponentTree; }).call(this,require('_process')) -},{"./DOMProperty":135,"./ReactDOMComponentFlags":157,"./reactProdInvariant":248,"_process":122,"fbjs/lib/invariant":112}],159:[function(require,module,exports){ +},{"./DOMProperty":41,"./ReactDOMComponentFlags":63,"./reactProdInvariant":154,"_process":28,"fbjs/lib/invariant":18}],65:[function(require,module,exports){ (function (process){ /** * Copyright 2013-present, Facebook, Inc. @@ -32999,7 +25404,7 @@ function ReactDOMContainerInfo(topLevelWrapper, node) { module.exports = ReactDOMContainerInfo; }).call(this,require('_process')) -},{"./validateDOMNesting":254,"_process":122}],160:[function(require,module,exports){ +},{"./validateDOMNesting":160,"_process":28}],66:[function(require,module,exports){ /** * Copyright 2014-present, Facebook, Inc. * All rights reserved. @@ -33059,7 +25464,7 @@ _assign(ReactDOMEmptyComponent.prototype, { }); module.exports = ReactDOMEmptyComponent; -},{"./DOMLazyTree":133,"./ReactDOMComponentTree":158,"object-assign":121}],161:[function(require,module,exports){ +},{"./DOMLazyTree":39,"./ReactDOMComponentTree":64,"object-assign":27}],67:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -33078,7 +25483,7 @@ var ReactDOMFeatureFlags = { }; module.exports = ReactDOMFeatureFlags; -},{}],162:[function(require,module,exports){ +},{}],68:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -33112,7 +25517,7 @@ var ReactDOMIDOperations = { }; module.exports = ReactDOMIDOperations; -},{"./DOMChildrenOperations":132,"./ReactDOMComponentTree":158}],163:[function(require,module,exports){ +},{"./DOMChildrenOperations":38,"./ReactDOMComponentTree":64}],69:[function(require,module,exports){ (function (process){ /** * Copyright 2013-present, Facebook, Inc. @@ -33383,7 +25788,7 @@ function _handleChange(event) { module.exports = ReactDOMInput; }).call(this,require('_process')) -},{"./DOMPropertyOperations":136,"./LinkedValueUtils":148,"./ReactDOMComponentTree":158,"./ReactUpdates":205,"./reactProdInvariant":248,"_process":122,"fbjs/lib/invariant":112,"fbjs/lib/warning":119,"object-assign":121}],164:[function(require,module,exports){ +},{"./DOMPropertyOperations":42,"./LinkedValueUtils":54,"./ReactDOMComponentTree":64,"./ReactUpdates":111,"./reactProdInvariant":154,"_process":28,"fbjs/lib/invariant":18,"fbjs/lib/warning":25,"object-assign":27}],70:[function(require,module,exports){ (function (process){ /** * Copyright 2013-present, Facebook, Inc. @@ -33479,7 +25884,7 @@ var ReactDOMInvalidARIAHook = { module.exports = ReactDOMInvalidARIAHook; }).call(this,require('_process')) -},{"./DOMProperty":135,"_process":122,"fbjs/lib/warning":119,"react/lib/ReactComponentTreeHook":264}],165:[function(require,module,exports){ +},{"./DOMProperty":41,"_process":28,"fbjs/lib/warning":25,"react/lib/ReactComponentTreeHook":170}],71:[function(require,module,exports){ (function (process){ /** * Copyright 2013-present, Facebook, Inc. @@ -33525,7 +25930,7 @@ var ReactDOMNullInputValuePropHook = { module.exports = ReactDOMNullInputValuePropHook; }).call(this,require('_process')) -},{"_process":122,"fbjs/lib/warning":119,"react/lib/ReactComponentTreeHook":264}],166:[function(require,module,exports){ +},{"_process":28,"fbjs/lib/warning":25,"react/lib/ReactComponentTreeHook":170}],72:[function(require,module,exports){ (function (process){ /** * Copyright 2013-present, Facebook, Inc. @@ -33651,7 +26056,7 @@ var ReactDOMOption = { module.exports = ReactDOMOption; }).call(this,require('_process')) -},{"./ReactDOMComponentTree":158,"./ReactDOMSelect":167,"_process":122,"fbjs/lib/warning":119,"object-assign":121,"react/lib/React":257}],167:[function(require,module,exports){ +},{"./ReactDOMComponentTree":64,"./ReactDOMSelect":73,"_process":28,"fbjs/lib/warning":25,"object-assign":27,"react/lib/React":163}],73:[function(require,module,exports){ (function (process){ /** * Copyright 2013-present, Facebook, Inc. @@ -33854,7 +26259,7 @@ function _handleChange(event) { module.exports = ReactDOMSelect; }).call(this,require('_process')) -},{"./LinkedValueUtils":148,"./ReactDOMComponentTree":158,"./ReactUpdates":205,"_process":122,"fbjs/lib/warning":119,"object-assign":121}],168:[function(require,module,exports){ +},{"./LinkedValueUtils":54,"./ReactDOMComponentTree":64,"./ReactUpdates":111,"_process":28,"fbjs/lib/warning":25,"object-assign":27}],74:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -34066,7 +26471,7 @@ var ReactDOMSelection = { }; module.exports = ReactDOMSelection; -},{"./getNodeForCharacterOffset":241,"./getTextContentAccessor":242,"fbjs/lib/ExecutionEnvironment":98}],169:[function(require,module,exports){ +},{"./getNodeForCharacterOffset":147,"./getTextContentAccessor":148,"fbjs/lib/ExecutionEnvironment":4}],75:[function(require,module,exports){ (function (process){ /** * Copyright 2013-present, Facebook, Inc. @@ -34233,7 +26638,7 @@ _assign(ReactDOMTextComponent.prototype, { module.exports = ReactDOMTextComponent; }).call(this,require('_process')) -},{"./DOMChildrenOperations":132,"./DOMLazyTree":133,"./ReactDOMComponentTree":158,"./escapeTextContentForBrowser":230,"./reactProdInvariant":248,"./validateDOMNesting":254,"_process":122,"fbjs/lib/invariant":112,"object-assign":121}],170:[function(require,module,exports){ +},{"./DOMChildrenOperations":38,"./DOMLazyTree":39,"./ReactDOMComponentTree":64,"./escapeTextContentForBrowser":136,"./reactProdInvariant":154,"./validateDOMNesting":160,"_process":28,"fbjs/lib/invariant":18,"object-assign":27}],76:[function(require,module,exports){ (function (process){ /** * Copyright 2013-present, Facebook, Inc. @@ -34390,7 +26795,7 @@ function _handleChange(event) { module.exports = ReactDOMTextarea; }).call(this,require('_process')) -},{"./LinkedValueUtils":148,"./ReactDOMComponentTree":158,"./ReactUpdates":205,"./reactProdInvariant":248,"_process":122,"fbjs/lib/invariant":112,"fbjs/lib/warning":119,"object-assign":121}],171:[function(require,module,exports){ +},{"./LinkedValueUtils":54,"./ReactDOMComponentTree":64,"./ReactUpdates":111,"./reactProdInvariant":154,"_process":28,"fbjs/lib/invariant":18,"fbjs/lib/warning":25,"object-assign":27}],77:[function(require,module,exports){ (function (process){ /** * Copyright 2015-present, Facebook, Inc. @@ -34529,7 +26934,7 @@ module.exports = { }; }).call(this,require('_process')) -},{"./reactProdInvariant":248,"_process":122,"fbjs/lib/invariant":112}],172:[function(require,module,exports){ +},{"./reactProdInvariant":154,"_process":28,"fbjs/lib/invariant":18}],78:[function(require,module,exports){ (function (process){ /** * Copyright 2013-present, Facebook, Inc. @@ -34644,7 +27049,7 @@ var ReactDOMUnknownPropertyHook = { module.exports = ReactDOMUnknownPropertyHook; }).call(this,require('_process')) -},{"./DOMProperty":135,"./EventPluginRegistry":142,"_process":122,"fbjs/lib/warning":119,"react/lib/ReactComponentTreeHook":264}],173:[function(require,module,exports){ +},{"./DOMProperty":41,"./EventPluginRegistry":48,"_process":28,"fbjs/lib/warning":25,"react/lib/ReactComponentTreeHook":170}],79:[function(require,module,exports){ (function (process){ /** * Copyright 2016-present, Facebook, Inc. @@ -35008,7 +27413,7 @@ if (/[?&]react_perf\b/.test(url)) { module.exports = ReactDebugTool; }).call(this,require('_process')) -},{"./ReactHostOperationHistoryHook":183,"./ReactInvalidSetStateWarningHook":188,"_process":122,"fbjs/lib/ExecutionEnvironment":98,"fbjs/lib/performanceNow":117,"fbjs/lib/warning":119,"react/lib/ReactComponentTreeHook":264}],174:[function(require,module,exports){ +},{"./ReactHostOperationHistoryHook":89,"./ReactInvalidSetStateWarningHook":94,"_process":28,"fbjs/lib/ExecutionEnvironment":4,"fbjs/lib/performanceNow":23,"fbjs/lib/warning":25,"react/lib/ReactComponentTreeHook":170}],80:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -35076,7 +27481,7 @@ var ReactDefaultBatchingStrategy = { }; module.exports = ReactDefaultBatchingStrategy; -},{"./ReactUpdates":205,"./Transaction":223,"fbjs/lib/emptyFunction":104,"object-assign":121}],175:[function(require,module,exports){ +},{"./ReactUpdates":111,"./Transaction":129,"fbjs/lib/emptyFunction":10,"object-assign":27}],81:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -35162,7 +27567,7 @@ function inject() { module.exports = { inject: inject }; -},{"./ARIADOMPropertyConfig":125,"./BeforeInputEventPlugin":127,"./ChangeEventPlugin":131,"./DefaultEventPluginOrder":138,"./EnterLeaveEventPlugin":139,"./HTMLDOMPropertyConfig":146,"./ReactComponentBrowserEnvironment":152,"./ReactDOMComponent":156,"./ReactDOMComponentTree":158,"./ReactDOMEmptyComponent":160,"./ReactDOMTextComponent":169,"./ReactDOMTreeTraversal":171,"./ReactDefaultBatchingStrategy":174,"./ReactEventListener":180,"./ReactInjection":184,"./ReactReconcileTransaction":197,"./SVGDOMPropertyConfig":207,"./SelectEventPlugin":208,"./SimpleEventPlugin":209}],176:[function(require,module,exports){ +},{"./ARIADOMPropertyConfig":31,"./BeforeInputEventPlugin":33,"./ChangeEventPlugin":37,"./DefaultEventPluginOrder":44,"./EnterLeaveEventPlugin":45,"./HTMLDOMPropertyConfig":52,"./ReactComponentBrowserEnvironment":58,"./ReactDOMComponent":62,"./ReactDOMComponentTree":64,"./ReactDOMEmptyComponent":66,"./ReactDOMTextComponent":75,"./ReactDOMTreeTraversal":77,"./ReactDefaultBatchingStrategy":80,"./ReactEventListener":86,"./ReactInjection":90,"./ReactReconcileTransaction":103,"./SVGDOMPropertyConfig":113,"./SelectEventPlugin":114,"./SimpleEventPlugin":115}],82:[function(require,module,exports){ /** * Copyright 2014-present, Facebook, Inc. * All rights reserved. @@ -35182,7 +27587,7 @@ module.exports = { var REACT_ELEMENT_TYPE = typeof Symbol === 'function' && Symbol['for'] && Symbol['for']('react.element') || 0xeac7; module.exports = REACT_ELEMENT_TYPE; -},{}],177:[function(require,module,exports){ +},{}],83:[function(require,module,exports){ /** * Copyright 2014-present, Facebook, Inc. * All rights reserved. @@ -35212,7 +27617,7 @@ var ReactEmptyComponent = { ReactEmptyComponent.injection = ReactEmptyComponentInjection; module.exports = ReactEmptyComponent; -},{}],178:[function(require,module,exports){ +},{}],84:[function(require,module,exports){ (function (process){ /** * Copyright 2013-present, Facebook, Inc. @@ -35292,7 +27697,7 @@ if (process.env.NODE_ENV !== 'production') { module.exports = ReactErrorUtils; }).call(this,require('_process')) -},{"_process":122}],179:[function(require,module,exports){ +},{"_process":28}],85:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -35325,7 +27730,7 @@ var ReactEventEmitterMixin = { }; module.exports = ReactEventEmitterMixin; -},{"./EventPluginHub":141}],180:[function(require,module,exports){ +},{"./EventPluginHub":47}],86:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -35480,7 +27885,7 @@ var ReactEventListener = { }; module.exports = ReactEventListener; -},{"./PooledClass":149,"./ReactDOMComponentTree":158,"./ReactUpdates":205,"./getEventTarget":237,"fbjs/lib/EventListener":97,"fbjs/lib/ExecutionEnvironment":98,"fbjs/lib/getUnboundedScrollPosition":109,"object-assign":121}],181:[function(require,module,exports){ +},{"./PooledClass":55,"./ReactDOMComponentTree":64,"./ReactUpdates":111,"./getEventTarget":143,"fbjs/lib/EventListener":3,"fbjs/lib/ExecutionEnvironment":4,"fbjs/lib/getUnboundedScrollPosition":15,"object-assign":27}],87:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -35502,7 +27907,7 @@ var ReactFeatureFlags = { }; module.exports = ReactFeatureFlags; -},{}],182:[function(require,module,exports){ +},{}],88:[function(require,module,exports){ (function (process){ /** * Copyright 2014-present, Facebook, Inc. @@ -35581,7 +27986,7 @@ var ReactHostComponent = { module.exports = ReactHostComponent; }).call(this,require('_process')) -},{"./reactProdInvariant":248,"_process":122,"fbjs/lib/invariant":112,"object-assign":121}],183:[function(require,module,exports){ +},{"./reactProdInvariant":154,"_process":28,"fbjs/lib/invariant":18,"object-assign":27}],89:[function(require,module,exports){ /** * Copyright 2016-present, Facebook, Inc. * All rights reserved. @@ -35615,7 +28020,7 @@ var ReactHostOperationHistoryHook = { }; module.exports = ReactHostOperationHistoryHook; -},{}],184:[function(require,module,exports){ +},{}],90:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -35649,7 +28054,7 @@ var ReactInjection = { }; module.exports = ReactInjection; -},{"./DOMProperty":135,"./EventPluginHub":141,"./EventPluginUtils":143,"./ReactBrowserEventEmitter":150,"./ReactComponentEnvironment":153,"./ReactEmptyComponent":177,"./ReactHostComponent":182,"./ReactUpdates":205}],185:[function(require,module,exports){ +},{"./DOMProperty":41,"./EventPluginHub":47,"./EventPluginUtils":49,"./ReactBrowserEventEmitter":56,"./ReactComponentEnvironment":59,"./ReactEmptyComponent":83,"./ReactHostComponent":88,"./ReactUpdates":111}],91:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -35773,7 +28178,7 @@ var ReactInputSelection = { }; module.exports = ReactInputSelection; -},{"./ReactDOMSelection":168,"fbjs/lib/containsNode":101,"fbjs/lib/focusNode":106,"fbjs/lib/getActiveElement":107}],186:[function(require,module,exports){ +},{"./ReactDOMSelection":74,"fbjs/lib/containsNode":7,"fbjs/lib/focusNode":12,"fbjs/lib/getActiveElement":13}],92:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -35821,7 +28226,7 @@ var ReactInstanceMap = { }; module.exports = ReactInstanceMap; -},{}],187:[function(require,module,exports){ +},{}],93:[function(require,module,exports){ (function (process){ /** * Copyright 2016-present, Facebook, Inc. @@ -35848,7 +28253,7 @@ if (process.env.NODE_ENV !== 'production') { module.exports = { debugTool: debugTool }; }).call(this,require('_process')) -},{"./ReactDebugTool":173,"_process":122}],188:[function(require,module,exports){ +},{"./ReactDebugTool":79,"_process":28}],94:[function(require,module,exports){ (function (process){ /** * Copyright 2016-present, Facebook, Inc. @@ -35888,7 +28293,7 @@ var ReactInvalidSetStateWarningHook = { module.exports = ReactInvalidSetStateWarningHook; }).call(this,require('_process')) -},{"_process":122,"fbjs/lib/warning":119}],189:[function(require,module,exports){ +},{"_process":28,"fbjs/lib/warning":25}],95:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -35938,7 +28343,7 @@ var ReactMarkupChecksum = { }; module.exports = ReactMarkupChecksum; -},{"./adler32":226}],190:[function(require,module,exports){ +},{"./adler32":132}],96:[function(require,module,exports){ (function (process){ /** * Copyright 2013-present, Facebook, Inc. @@ -36479,7 +28884,7 @@ var ReactMount = { module.exports = ReactMount; }).call(this,require('_process')) -},{"./DOMLazyTree":133,"./DOMProperty":135,"./ReactBrowserEventEmitter":150,"./ReactDOMComponentTree":158,"./ReactDOMContainerInfo":159,"./ReactDOMFeatureFlags":161,"./ReactFeatureFlags":181,"./ReactInstanceMap":186,"./ReactInstrumentation":187,"./ReactMarkupChecksum":189,"./ReactReconciler":198,"./ReactUpdateQueue":204,"./ReactUpdates":205,"./instantiateReactComponent":244,"./reactProdInvariant":248,"./setInnerHTML":250,"./shouldUpdateReactComponent":252,"_process":122,"fbjs/lib/emptyObject":105,"fbjs/lib/invariant":112,"fbjs/lib/warning":119,"react/lib/React":257,"react/lib/ReactCurrentOwner":265}],191:[function(require,module,exports){ +},{"./DOMLazyTree":39,"./DOMProperty":41,"./ReactBrowserEventEmitter":56,"./ReactDOMComponentTree":64,"./ReactDOMContainerInfo":65,"./ReactDOMFeatureFlags":67,"./ReactFeatureFlags":87,"./ReactInstanceMap":92,"./ReactInstrumentation":93,"./ReactMarkupChecksum":95,"./ReactReconciler":104,"./ReactUpdateQueue":110,"./ReactUpdates":111,"./instantiateReactComponent":150,"./reactProdInvariant":154,"./setInnerHTML":156,"./shouldUpdateReactComponent":158,"_process":28,"fbjs/lib/emptyObject":11,"fbjs/lib/invariant":18,"fbjs/lib/warning":25,"react/lib/React":163,"react/lib/ReactCurrentOwner":171}],97:[function(require,module,exports){ (function (process){ /** * Copyright 2013-present, Facebook, Inc. @@ -36932,7 +29337,7 @@ var ReactMultiChild = { module.exports = ReactMultiChild; }).call(this,require('_process')) -},{"./ReactChildReconciler":151,"./ReactComponentEnvironment":153,"./ReactInstanceMap":186,"./ReactInstrumentation":187,"./ReactReconciler":198,"./flattenChildren":232,"./reactProdInvariant":248,"_process":122,"fbjs/lib/emptyFunction":104,"fbjs/lib/invariant":112,"react/lib/ReactCurrentOwner":265}],192:[function(require,module,exports){ +},{"./ReactChildReconciler":57,"./ReactComponentEnvironment":59,"./ReactInstanceMap":92,"./ReactInstrumentation":93,"./ReactReconciler":104,"./flattenChildren":138,"./reactProdInvariant":154,"_process":28,"fbjs/lib/emptyFunction":10,"fbjs/lib/invariant":18,"react/lib/ReactCurrentOwner":171}],98:[function(require,module,exports){ (function (process){ /** * Copyright 2013-present, Facebook, Inc. @@ -36975,7 +29380,7 @@ var ReactNodeTypes = { module.exports = ReactNodeTypes; }).call(this,require('_process')) -},{"./reactProdInvariant":248,"_process":122,"fbjs/lib/invariant":112,"react/lib/React":257}],193:[function(require,module,exports){ +},{"./reactProdInvariant":154,"_process":28,"fbjs/lib/invariant":18,"react/lib/React":163}],99:[function(require,module,exports){ (function (process){ /** * Copyright 2013-present, Facebook, Inc. @@ -37072,7 +29477,7 @@ var ReactOwner = { module.exports = ReactOwner; }).call(this,require('_process')) -},{"./reactProdInvariant":248,"_process":122,"fbjs/lib/invariant":112}],194:[function(require,module,exports){ +},{"./reactProdInvariant":154,"_process":28,"fbjs/lib/invariant":18}],100:[function(require,module,exports){ (function (process){ /** * Copyright 2016-present, Facebook, Inc. @@ -37576,7 +29981,7 @@ var ReactPerfAnalysis = { module.exports = ReactPerfAnalysis; }).call(this,require('_process')) -},{"./ReactDebugTool":173,"_process":122,"fbjs/lib/warning":119,"object-assign":121}],195:[function(require,module,exports){ +},{"./ReactDebugTool":79,"_process":28,"fbjs/lib/warning":25,"object-assign":27}],101:[function(require,module,exports){ (function (process){ /** * Copyright 2013-present, Facebook, Inc. @@ -37604,7 +30009,7 @@ if (process.env.NODE_ENV !== 'production') { module.exports = ReactPropTypeLocationNames; }).call(this,require('_process')) -},{"_process":122}],196:[function(require,module,exports){ +},{"_process":28}],102:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -37621,7 +30026,7 @@ module.exports = ReactPropTypeLocationNames; var ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED'; module.exports = ReactPropTypesSecret; -},{}],197:[function(require,module,exports){ +},{}],103:[function(require,module,exports){ (function (process){ /** * Copyright 2013-present, Facebook, Inc. @@ -37802,7 +30207,7 @@ PooledClass.addPoolingTo(ReactReconcileTransaction); module.exports = ReactReconcileTransaction; }).call(this,require('_process')) -},{"./CallbackQueue":130,"./PooledClass":149,"./ReactBrowserEventEmitter":150,"./ReactInputSelection":185,"./ReactInstrumentation":187,"./ReactUpdateQueue":204,"./Transaction":223,"_process":122,"object-assign":121}],198:[function(require,module,exports){ +},{"./CallbackQueue":36,"./PooledClass":55,"./ReactBrowserEventEmitter":56,"./ReactInputSelection":91,"./ReactInstrumentation":93,"./ReactUpdateQueue":110,"./Transaction":129,"_process":28,"object-assign":27}],104:[function(require,module,exports){ (function (process){ /** * Copyright 2013-present, Facebook, Inc. @@ -37973,7 +30378,7 @@ var ReactReconciler = { module.exports = ReactReconciler; }).call(this,require('_process')) -},{"./ReactInstrumentation":187,"./ReactRef":199,"_process":122,"fbjs/lib/warning":119}],199:[function(require,module,exports){ +},{"./ReactInstrumentation":93,"./ReactRef":105,"_process":28,"fbjs/lib/warning":25}],105:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -38062,7 +30467,7 @@ ReactRef.detachRefs = function (instance, element) { }; module.exports = ReactRef; -},{"./ReactOwner":193}],200:[function(require,module,exports){ +},{"./ReactOwner":99}],106:[function(require,module,exports){ (function (process){ /** * Copyright 2014-present, Facebook, Inc. @@ -38155,7 +30560,7 @@ PooledClass.addPoolingTo(ReactServerRenderingTransaction); module.exports = ReactServerRenderingTransaction; }).call(this,require('_process')) -},{"./PooledClass":149,"./ReactInstrumentation":187,"./ReactServerUpdateQueue":201,"./Transaction":223,"_process":122,"object-assign":121}],201:[function(require,module,exports){ +},{"./PooledClass":55,"./ReactInstrumentation":93,"./ReactServerUpdateQueue":107,"./Transaction":129,"_process":28,"object-assign":27}],107:[function(require,module,exports){ (function (process){ /** * Copyright 2015-present, Facebook, Inc. @@ -38297,7 +30702,7 @@ var ReactServerUpdateQueue = function () { module.exports = ReactServerUpdateQueue; }).call(this,require('_process')) -},{"./ReactUpdateQueue":204,"_process":122,"fbjs/lib/warning":119}],202:[function(require,module,exports){ +},{"./ReactUpdateQueue":110,"_process":28,"fbjs/lib/warning":25}],108:[function(require,module,exports){ (function (process){ /** * Copyright 2013-present, Facebook, Inc. @@ -38435,7 +30840,7 @@ var ReactShallowRenderer = function () { module.exports = ReactShallowRenderer; }).call(this,require('_process')) -},{"./ReactCompositeComponent":154,"./ReactDefaultInjection":175,"./ReactReconciler":198,"./ReactUpdates":205,"./getNextDebugID":240,"./reactProdInvariant":248,"_process":122,"fbjs/lib/emptyObject":105,"fbjs/lib/invariant":112,"object-assign":121,"react/lib/React":257}],203:[function(require,module,exports){ +},{"./ReactCompositeComponent":60,"./ReactDefaultInjection":81,"./ReactReconciler":104,"./ReactUpdates":111,"./getNextDebugID":146,"./reactProdInvariant":154,"_process":28,"fbjs/lib/emptyObject":11,"fbjs/lib/invariant":18,"object-assign":27,"react/lib/React":163}],109:[function(require,module,exports){ (function (process){ /** * Copyright 2013-present, Facebook, Inc. @@ -38850,7 +31255,7 @@ Object.keys(topLevelTypes).forEach(function (eventType) { module.exports = ReactTestUtils; }).call(this,require('_process')) -},{"./EventConstants":140,"./EventPluginHub":141,"./EventPluginRegistry":142,"./EventPropagators":144,"./ReactBrowserEventEmitter":150,"./ReactDOM":155,"./ReactDOMComponentTree":158,"./ReactInstanceMap":186,"./ReactShallowRenderer":202,"./ReactUpdates":205,"./SyntheticEvent":214,"./findDOMNode":231,"./reactProdInvariant":248,"_process":122,"fbjs/lib/invariant":112,"object-assign":121,"react/lib/React":257}],204:[function(require,module,exports){ +},{"./EventConstants":46,"./EventPluginHub":47,"./EventPluginRegistry":48,"./EventPropagators":50,"./ReactBrowserEventEmitter":56,"./ReactDOM":61,"./ReactDOMComponentTree":64,"./ReactInstanceMap":92,"./ReactShallowRenderer":108,"./ReactUpdates":111,"./SyntheticEvent":120,"./findDOMNode":137,"./reactProdInvariant":154,"_process":28,"fbjs/lib/invariant":18,"object-assign":27,"react/lib/React":163}],110:[function(require,module,exports){ (function (process){ /** * Copyright 2015-present, Facebook, Inc. @@ -39079,7 +31484,7 @@ var ReactUpdateQueue = { module.exports = ReactUpdateQueue; }).call(this,require('_process')) -},{"./ReactInstanceMap":186,"./ReactInstrumentation":187,"./ReactUpdates":205,"./reactProdInvariant":248,"_process":122,"fbjs/lib/invariant":112,"fbjs/lib/warning":119,"react/lib/ReactCurrentOwner":265}],205:[function(require,module,exports){ +},{"./ReactInstanceMap":92,"./ReactInstrumentation":93,"./ReactUpdates":111,"./reactProdInvariant":154,"_process":28,"fbjs/lib/invariant":18,"fbjs/lib/warning":25,"react/lib/ReactCurrentOwner":171}],111:[function(require,module,exports){ (function (process){ /** * Copyright 2013-present, Facebook, Inc. @@ -39333,7 +31738,7 @@ var ReactUpdates = { module.exports = ReactUpdates; }).call(this,require('_process')) -},{"./CallbackQueue":130,"./PooledClass":149,"./ReactFeatureFlags":181,"./ReactReconciler":198,"./Transaction":223,"./reactProdInvariant":248,"_process":122,"fbjs/lib/invariant":112,"object-assign":121}],206:[function(require,module,exports){ +},{"./CallbackQueue":36,"./PooledClass":55,"./ReactFeatureFlags":87,"./ReactReconciler":104,"./Transaction":129,"./reactProdInvariant":154,"_process":28,"fbjs/lib/invariant":18,"object-assign":27}],112:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -39347,7 +31752,7 @@ module.exports = ReactUpdates; 'use strict'; module.exports = '15.4.1'; -},{}],207:[function(require,module,exports){ +},{}],113:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -39649,7 +32054,7 @@ Object.keys(ATTRS).forEach(function (key) { }); module.exports = SVGDOMPropertyConfig; -},{}],208:[function(require,module,exports){ +},{}],114:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -39840,7 +32245,7 @@ var SelectEventPlugin = { }; module.exports = SelectEventPlugin; -},{"./EventPropagators":144,"./ReactDOMComponentTree":158,"./ReactInputSelection":185,"./SyntheticEvent":214,"./isTextInputElement":246,"fbjs/lib/ExecutionEnvironment":98,"fbjs/lib/getActiveElement":107,"fbjs/lib/shallowEqual":118}],209:[function(require,module,exports){ +},{"./EventPropagators":50,"./ReactDOMComponentTree":64,"./ReactInputSelection":91,"./SyntheticEvent":120,"./isTextInputElement":152,"fbjs/lib/ExecutionEnvironment":4,"fbjs/lib/getActiveElement":13,"fbjs/lib/shallowEqual":24}],115:[function(require,module,exports){ (function (process){ /** * Copyright 2013-present, Facebook, Inc. @@ -40071,7 +32476,7 @@ var SimpleEventPlugin = { module.exports = SimpleEventPlugin; }).call(this,require('_process')) -},{"./EventPropagators":144,"./ReactDOMComponentTree":158,"./SyntheticAnimationEvent":210,"./SyntheticClipboardEvent":211,"./SyntheticDragEvent":213,"./SyntheticEvent":214,"./SyntheticFocusEvent":215,"./SyntheticKeyboardEvent":217,"./SyntheticMouseEvent":218,"./SyntheticTouchEvent":219,"./SyntheticTransitionEvent":220,"./SyntheticUIEvent":221,"./SyntheticWheelEvent":222,"./getEventCharCode":234,"./reactProdInvariant":248,"_process":122,"fbjs/lib/EventListener":97,"fbjs/lib/emptyFunction":104,"fbjs/lib/invariant":112}],210:[function(require,module,exports){ +},{"./EventPropagators":50,"./ReactDOMComponentTree":64,"./SyntheticAnimationEvent":116,"./SyntheticClipboardEvent":117,"./SyntheticDragEvent":119,"./SyntheticEvent":120,"./SyntheticFocusEvent":121,"./SyntheticKeyboardEvent":123,"./SyntheticMouseEvent":124,"./SyntheticTouchEvent":125,"./SyntheticTransitionEvent":126,"./SyntheticUIEvent":127,"./SyntheticWheelEvent":128,"./getEventCharCode":140,"./reactProdInvariant":154,"_process":28,"fbjs/lib/EventListener":3,"fbjs/lib/emptyFunction":10,"fbjs/lib/invariant":18}],116:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -40110,7 +32515,7 @@ function SyntheticAnimationEvent(dispatchConfig, dispatchMarker, nativeEvent, na SyntheticEvent.augmentClass(SyntheticAnimationEvent, AnimationEventInterface); module.exports = SyntheticAnimationEvent; -},{"./SyntheticEvent":214}],211:[function(require,module,exports){ +},{"./SyntheticEvent":120}],117:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -40148,7 +32553,7 @@ function SyntheticClipboardEvent(dispatchConfig, dispatchMarker, nativeEvent, na SyntheticEvent.augmentClass(SyntheticClipboardEvent, ClipboardEventInterface); module.exports = SyntheticClipboardEvent; -},{"./SyntheticEvent":214}],212:[function(require,module,exports){ +},{"./SyntheticEvent":120}],118:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -40184,7 +32589,7 @@ function SyntheticCompositionEvent(dispatchConfig, dispatchMarker, nativeEvent, SyntheticEvent.augmentClass(SyntheticCompositionEvent, CompositionEventInterface); module.exports = SyntheticCompositionEvent; -},{"./SyntheticEvent":214}],213:[function(require,module,exports){ +},{"./SyntheticEvent":120}],119:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -40220,7 +32625,7 @@ function SyntheticDragEvent(dispatchConfig, dispatchMarker, nativeEvent, nativeE SyntheticMouseEvent.augmentClass(SyntheticDragEvent, DragEventInterface); module.exports = SyntheticDragEvent; -},{"./SyntheticMouseEvent":218}],214:[function(require,module,exports){ +},{"./SyntheticMouseEvent":124}],120:[function(require,module,exports){ (function (process){ /** * Copyright 2013-present, Facebook, Inc. @@ -40491,7 +32896,7 @@ function getPooledWarningPropertyDefinition(propName, getVal) { } }).call(this,require('_process')) -},{"./PooledClass":149,"_process":122,"fbjs/lib/emptyFunction":104,"fbjs/lib/warning":119,"object-assign":121}],215:[function(require,module,exports){ +},{"./PooledClass":55,"_process":28,"fbjs/lib/emptyFunction":10,"fbjs/lib/warning":25,"object-assign":27}],121:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -40527,7 +32932,7 @@ function SyntheticFocusEvent(dispatchConfig, dispatchMarker, nativeEvent, native SyntheticUIEvent.augmentClass(SyntheticFocusEvent, FocusEventInterface); module.exports = SyntheticFocusEvent; -},{"./SyntheticUIEvent":221}],216:[function(require,module,exports){ +},{"./SyntheticUIEvent":127}],122:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -40564,7 +32969,7 @@ function SyntheticInputEvent(dispatchConfig, dispatchMarker, nativeEvent, native SyntheticEvent.augmentClass(SyntheticInputEvent, InputEventInterface); module.exports = SyntheticInputEvent; -},{"./SyntheticEvent":214}],217:[function(require,module,exports){ +},{"./SyntheticEvent":120}],123:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -40648,7 +33053,7 @@ function SyntheticKeyboardEvent(dispatchConfig, dispatchMarker, nativeEvent, nat SyntheticUIEvent.augmentClass(SyntheticKeyboardEvent, KeyboardEventInterface); module.exports = SyntheticKeyboardEvent; -},{"./SyntheticUIEvent":221,"./getEventCharCode":234,"./getEventKey":235,"./getEventModifierState":236}],218:[function(require,module,exports){ +},{"./SyntheticUIEvent":127,"./getEventCharCode":140,"./getEventKey":141,"./getEventModifierState":142}],124:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -40720,7 +33125,7 @@ function SyntheticMouseEvent(dispatchConfig, dispatchMarker, nativeEvent, native SyntheticUIEvent.augmentClass(SyntheticMouseEvent, MouseEventInterface); module.exports = SyntheticMouseEvent; -},{"./SyntheticUIEvent":221,"./ViewportMetrics":224,"./getEventModifierState":236}],219:[function(require,module,exports){ +},{"./SyntheticUIEvent":127,"./ViewportMetrics":130,"./getEventModifierState":142}],125:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -40765,7 +33170,7 @@ function SyntheticTouchEvent(dispatchConfig, dispatchMarker, nativeEvent, native SyntheticUIEvent.augmentClass(SyntheticTouchEvent, TouchEventInterface); module.exports = SyntheticTouchEvent; -},{"./SyntheticUIEvent":221,"./getEventModifierState":236}],220:[function(require,module,exports){ +},{"./SyntheticUIEvent":127,"./getEventModifierState":142}],126:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -40804,7 +33209,7 @@ function SyntheticTransitionEvent(dispatchConfig, dispatchMarker, nativeEvent, n SyntheticEvent.augmentClass(SyntheticTransitionEvent, TransitionEventInterface); module.exports = SyntheticTransitionEvent; -},{"./SyntheticEvent":214}],221:[function(require,module,exports){ +},{"./SyntheticEvent":120}],127:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -40863,7 +33268,7 @@ function SyntheticUIEvent(dispatchConfig, dispatchMarker, nativeEvent, nativeEve SyntheticEvent.augmentClass(SyntheticUIEvent, UIEventInterface); module.exports = SyntheticUIEvent; -},{"./SyntheticEvent":214,"./getEventTarget":237}],222:[function(require,module,exports){ +},{"./SyntheticEvent":120,"./getEventTarget":143}],128:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -40917,7 +33322,7 @@ function SyntheticWheelEvent(dispatchConfig, dispatchMarker, nativeEvent, native SyntheticMouseEvent.augmentClass(SyntheticWheelEvent, WheelEventInterface); module.exports = SyntheticWheelEvent; -},{"./SyntheticMouseEvent":218}],223:[function(require,module,exports){ +},{"./SyntheticMouseEvent":124}],129:[function(require,module,exports){ (function (process){ /** * Copyright 2013-present, Facebook, Inc. @@ -41145,7 +33550,7 @@ var TransactionImpl = { module.exports = TransactionImpl; }).call(this,require('_process')) -},{"./reactProdInvariant":248,"_process":122,"fbjs/lib/invariant":112}],224:[function(require,module,exports){ +},{"./reactProdInvariant":154,"_process":28,"fbjs/lib/invariant":18}],130:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -41172,7 +33577,7 @@ var ViewportMetrics = { }; module.exports = ViewportMetrics; -},{}],225:[function(require,module,exports){ +},{}],131:[function(require,module,exports){ (function (process){ /** * Copyright 2014-present, Facebook, Inc. @@ -41233,7 +33638,7 @@ function accumulateInto(current, next) { module.exports = accumulateInto; }).call(this,require('_process')) -},{"./reactProdInvariant":248,"_process":122,"fbjs/lib/invariant":112}],226:[function(require,module,exports){ +},{"./reactProdInvariant":154,"_process":28,"fbjs/lib/invariant":18}],132:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -41277,7 +33682,7 @@ function adler32(data) { } module.exports = adler32; -},{}],227:[function(require,module,exports){ +},{}],133:[function(require,module,exports){ (function (process){ /** * Copyright 2013-present, Facebook, Inc. @@ -41367,7 +33772,7 @@ function checkReactTypeSpec(typeSpecs, values, location, componentName, element, module.exports = checkReactTypeSpec; }).call(this,require('_process')) -},{"./ReactPropTypeLocationNames":195,"./ReactPropTypesSecret":196,"./reactProdInvariant":248,"_process":122,"fbjs/lib/invariant":112,"fbjs/lib/warning":119,"react/lib/ReactComponentTreeHook":264}],228:[function(require,module,exports){ +},{"./ReactPropTypeLocationNames":101,"./ReactPropTypesSecret":102,"./reactProdInvariant":154,"_process":28,"fbjs/lib/invariant":18,"fbjs/lib/warning":25,"react/lib/ReactComponentTreeHook":170}],134:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -41399,7 +33804,7 @@ var createMicrosoftUnsafeLocalFunction = function (func) { }; module.exports = createMicrosoftUnsafeLocalFunction; -},{}],229:[function(require,module,exports){ +},{}],135:[function(require,module,exports){ (function (process){ /** * Copyright 2013-present, Facebook, Inc. @@ -41481,7 +33886,7 @@ function dangerousStyleValue(name, value, component) { module.exports = dangerousStyleValue; }).call(this,require('_process')) -},{"./CSSProperty":128,"_process":122,"fbjs/lib/warning":119}],230:[function(require,module,exports){ +},{"./CSSProperty":34,"_process":28,"fbjs/lib/warning":25}],136:[function(require,module,exports){ /** * Copyright 2016-present, Facebook, Inc. * All rights reserved. @@ -41604,7 +34009,7 @@ function escapeTextContentForBrowser(text) { } module.exports = escapeTextContentForBrowser; -},{}],231:[function(require,module,exports){ +},{}],137:[function(require,module,exports){ (function (process){ /** * Copyright 2013-present, Facebook, Inc. @@ -41667,7 +34072,7 @@ function findDOMNode(componentOrElement) { module.exports = findDOMNode; }).call(this,require('_process')) -},{"./ReactDOMComponentTree":158,"./ReactInstanceMap":186,"./getHostComponentFromComposite":238,"./reactProdInvariant":248,"_process":122,"fbjs/lib/invariant":112,"fbjs/lib/warning":119,"react/lib/ReactCurrentOwner":265}],232:[function(require,module,exports){ +},{"./ReactDOMComponentTree":64,"./ReactInstanceMap":92,"./getHostComponentFromComposite":144,"./reactProdInvariant":154,"_process":28,"fbjs/lib/invariant":18,"fbjs/lib/warning":25,"react/lib/ReactCurrentOwner":171}],138:[function(require,module,exports){ (function (process){ /** * Copyright 2013-present, Facebook, Inc. @@ -41746,7 +34151,7 @@ function flattenChildren(children, selfDebugID) { module.exports = flattenChildren; }).call(this,require('_process')) -},{"./KeyEscapeUtils":147,"./traverseAllChildren":253,"_process":122,"fbjs/lib/warning":119,"react/lib/ReactComponentTreeHook":264}],233:[function(require,module,exports){ +},{"./KeyEscapeUtils":53,"./traverseAllChildren":159,"_process":28,"fbjs/lib/warning":25,"react/lib/ReactComponentTreeHook":170}],139:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -41777,7 +34182,7 @@ function forEachAccumulated(arr, cb, scope) { } module.exports = forEachAccumulated; -},{}],234:[function(require,module,exports){ +},{}],140:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -41827,7 +34232,7 @@ function getEventCharCode(nativeEvent) { } module.exports = getEventCharCode; -},{}],235:[function(require,module,exports){ +},{}],141:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -41929,7 +34334,7 @@ function getEventKey(nativeEvent) { } module.exports = getEventKey; -},{"./getEventCharCode":234}],236:[function(require,module,exports){ +},{"./getEventCharCode":140}],142:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -41972,7 +34377,7 @@ function getEventModifierState(nativeEvent) { } module.exports = getEventModifierState; -},{}],237:[function(require,module,exports){ +},{}],143:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -42007,7 +34412,7 @@ function getEventTarget(nativeEvent) { } module.exports = getEventTarget; -},{}],238:[function(require,module,exports){ +},{}],144:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -42037,7 +34442,7 @@ function getHostComponentFromComposite(inst) { } module.exports = getHostComponentFromComposite; -},{"./ReactNodeTypes":192}],239:[function(require,module,exports){ +},{"./ReactNodeTypes":98}],145:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -42078,7 +34483,7 @@ function getIteratorFn(maybeIterable) { } module.exports = getIteratorFn; -},{}],240:[function(require,module,exports){ +},{}],146:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -42099,7 +34504,7 @@ function getNextDebugID() { } module.exports = getNextDebugID; -},{}],241:[function(require,module,exports){ +},{}],147:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -42173,7 +34578,7 @@ function getNodeForCharacterOffset(root, offset) { } module.exports = getNodeForCharacterOffset; -},{}],242:[function(require,module,exports){ +},{}],148:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -42206,7 +34611,7 @@ function getTextContentAccessor() { } module.exports = getTextContentAccessor; -},{"fbjs/lib/ExecutionEnvironment":98}],243:[function(require,module,exports){ +},{"fbjs/lib/ExecutionEnvironment":4}],149:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -42307,7 +34712,7 @@ function getVendorPrefixedEventName(eventName) { } module.exports = getVendorPrefixedEventName; -},{"fbjs/lib/ExecutionEnvironment":98}],244:[function(require,module,exports){ +},{"fbjs/lib/ExecutionEnvironment":4}],150:[function(require,module,exports){ (function (process){ /** * Copyright 2013-present, Facebook, Inc. @@ -42428,7 +34833,7 @@ function instantiateReactComponent(node, shouldHaveDebugID) { module.exports = instantiateReactComponent; }).call(this,require('_process')) -},{"./ReactCompositeComponent":154,"./ReactEmptyComponent":177,"./ReactHostComponent":182,"./getNextDebugID":240,"./reactProdInvariant":248,"_process":122,"fbjs/lib/invariant":112,"fbjs/lib/warning":119,"object-assign":121}],245:[function(require,module,exports){ +},{"./ReactCompositeComponent":60,"./ReactEmptyComponent":83,"./ReactHostComponent":88,"./getNextDebugID":146,"./reactProdInvariant":154,"_process":28,"fbjs/lib/invariant":18,"fbjs/lib/warning":25,"object-assign":27}],151:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -42488,7 +34893,7 @@ function isEventSupported(eventNameSuffix, capture) { } module.exports = isEventSupported; -},{"fbjs/lib/ExecutionEnvironment":98}],246:[function(require,module,exports){ +},{"fbjs/lib/ExecutionEnvironment":4}],152:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -42539,7 +34944,7 @@ function isTextInputElement(elem) { } module.exports = isTextInputElement; -},{}],247:[function(require,module,exports){ +},{}],153:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -42565,7 +34970,7 @@ function quoteAttributeValueForBrowser(value) { } module.exports = quoteAttributeValueForBrowser; -},{"./escapeTextContentForBrowser":230}],248:[function(require,module,exports){ +},{"./escapeTextContentForBrowser":136}],154:[function(require,module,exports){ /** * Copyright (c) 2013-present, Facebook, Inc. * All rights reserved. @@ -42604,7 +35009,7 @@ function reactProdInvariant(code) { } module.exports = reactProdInvariant; -},{}],249:[function(require,module,exports){ +},{}],155:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -42620,7 +35025,7 @@ module.exports = reactProdInvariant; var ReactMount = require('./ReactMount'); module.exports = ReactMount.renderSubtreeIntoContainer; -},{"./ReactMount":190}],250:[function(require,module,exports){ +},{"./ReactMount":96}],156:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -42718,7 +35123,7 @@ if (ExecutionEnvironment.canUseDOM) { } module.exports = setInnerHTML; -},{"./DOMNamespaces":134,"./createMicrosoftUnsafeLocalFunction":228,"fbjs/lib/ExecutionEnvironment":98}],251:[function(require,module,exports){ +},{"./DOMNamespaces":40,"./createMicrosoftUnsafeLocalFunction":134,"fbjs/lib/ExecutionEnvironment":4}],157:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -42770,7 +35175,7 @@ if (ExecutionEnvironment.canUseDOM) { } module.exports = setTextContent; -},{"./escapeTextContentForBrowser":230,"./setInnerHTML":250,"fbjs/lib/ExecutionEnvironment":98}],252:[function(require,module,exports){ +},{"./escapeTextContentForBrowser":136,"./setInnerHTML":156,"fbjs/lib/ExecutionEnvironment":4}],158:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -42812,7 +35217,7 @@ function shouldUpdateReactComponent(prevElement, nextElement) { } module.exports = shouldUpdateReactComponent; -},{}],253:[function(require,module,exports){ +},{}],159:[function(require,module,exports){ (function (process){ /** * Copyright 2013-present, Facebook, Inc. @@ -42991,7 +35396,7 @@ function traverseAllChildren(children, callback, traverseContext) { module.exports = traverseAllChildren; }).call(this,require('_process')) -},{"./KeyEscapeUtils":147,"./ReactElementSymbol":176,"./getIteratorFn":239,"./reactProdInvariant":248,"_process":122,"fbjs/lib/invariant":112,"fbjs/lib/warning":119,"react/lib/ReactCurrentOwner":265}],254:[function(require,module,exports){ +},{"./KeyEscapeUtils":53,"./ReactElementSymbol":82,"./getIteratorFn":145,"./reactProdInvariant":154,"_process":28,"fbjs/lib/invariant":18,"fbjs/lib/warning":25,"react/lib/ReactCurrentOwner":171}],160:[function(require,module,exports){ (function (process){ /** * Copyright 2015-present, Facebook, Inc. @@ -43376,9 +35781,9 @@ if (process.env.NODE_ENV !== 'production') { module.exports = validateDOMNesting; }).call(this,require('_process')) -},{"_process":122,"fbjs/lib/emptyFunction":104,"fbjs/lib/warning":119,"object-assign":121}],255:[function(require,module,exports){ -arguments[4][147][0].apply(exports,arguments) -},{"dup":147}],256:[function(require,module,exports){ +},{"_process":28,"fbjs/lib/emptyFunction":10,"fbjs/lib/warning":25,"object-assign":27}],161:[function(require,module,exports){ +arguments[4][53][0].apply(exports,arguments) +},{"dup":53}],162:[function(require,module,exports){ (function (process){ /** * Copyright 2013-present, Facebook, Inc. @@ -43505,7 +35910,7 @@ var PooledClass = { module.exports = PooledClass; }).call(this,require('_process')) -},{"./reactProdInvariant":284,"_process":122,"fbjs/lib/invariant":112}],257:[function(require,module,exports){ +},{"./reactProdInvariant":190,"_process":28,"fbjs/lib/invariant":18}],163:[function(require,module,exports){ (function (process){ /** * Copyright 2013-present, Facebook, Inc. @@ -43597,7 +36002,7 @@ var React = { module.exports = React; }).call(this,require('_process')) -},{"./ReactChildren":261,"./ReactClass":262,"./ReactComponent":263,"./ReactDOMFactories":266,"./ReactElement":267,"./ReactElementValidator":269,"./ReactPropTypes":272,"./ReactPureComponent":274,"./ReactVersion":278,"./onlyChild":283,"_process":122,"fbjs/lib/warning":119,"object-assign":121}],258:[function(require,module,exports){ +},{"./ReactChildren":167,"./ReactClass":168,"./ReactComponent":169,"./ReactDOMFactories":172,"./ReactElement":173,"./ReactElementValidator":175,"./ReactPropTypes":178,"./ReactPureComponent":180,"./ReactVersion":184,"./onlyChild":189,"_process":28,"fbjs/lib/warning":25,"object-assign":27}],164:[function(require,module,exports){ (function (process){ /** * Copyright 2013-present, Facebook, Inc. @@ -43636,7 +36041,7 @@ if (process.env.NODE_ENV !== 'production') { } }).call(this,require('_process')) -},{"_process":122,"react-dom/lib/ReactDOM":155,"react-dom/lib/ReactInstanceMap":186,"react-dom/lib/ReactPerf":194,"react-dom/lib/ReactTestUtils":203}],259:[function(require,module,exports){ +},{"_process":28,"react-dom/lib/ReactDOM":61,"react-dom/lib/ReactInstanceMap":92,"react-dom/lib/ReactPerf":100,"react-dom/lib/ReactTestUtils":109}],165:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -43741,7 +36146,7 @@ ReactCSSTransitionGroup.defaultProps = { module.exports = ReactCSSTransitionGroup; -},{"./React":257,"./ReactCSSTransitionGroupChild":260,"./ReactTransitionGroup":277,"object-assign":121}],260:[function(require,module,exports){ +},{"./React":163,"./ReactCSSTransitionGroupChild":166,"./ReactTransitionGroup":183,"object-assign":27}],166:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -43908,7 +36313,7 @@ var ReactCSSTransitionGroupChild = React.createClass({ }); module.exports = ReactCSSTransitionGroupChild; -},{"./React":257,"./ReactAddonsDOMDependencies":258,"./ReactTransitionEvents":276,"./onlyChild":283,"fbjs/lib/CSSCore":96}],261:[function(require,module,exports){ +},{"./React":163,"./ReactAddonsDOMDependencies":164,"./ReactTransitionEvents":182,"./onlyChild":189,"fbjs/lib/CSSCore":2}],167:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -44099,7 +36504,7 @@ var ReactChildren = { }; module.exports = ReactChildren; -},{"./PooledClass":256,"./ReactElement":267,"./traverseAllChildren":285,"fbjs/lib/emptyFunction":104}],262:[function(require,module,exports){ +},{"./PooledClass":162,"./ReactElement":173,"./traverseAllChildren":191,"fbjs/lib/emptyFunction":10}],168:[function(require,module,exports){ (function (process){ /** * Copyright 2013-present, Facebook, Inc. @@ -44819,7 +37224,7 @@ var ReactClass = { module.exports = ReactClass; }).call(this,require('_process')) -},{"./ReactComponent":263,"./ReactElement":267,"./ReactNoopUpdateQueue":270,"./ReactPropTypeLocationNames":271,"./reactProdInvariant":284,"_process":122,"fbjs/lib/emptyObject":105,"fbjs/lib/invariant":112,"fbjs/lib/warning":119,"object-assign":121}],263:[function(require,module,exports){ +},{"./ReactComponent":169,"./ReactElement":173,"./ReactNoopUpdateQueue":176,"./ReactPropTypeLocationNames":177,"./reactProdInvariant":190,"_process":28,"fbjs/lib/emptyObject":11,"fbjs/lib/invariant":18,"fbjs/lib/warning":25,"object-assign":27}],169:[function(require,module,exports){ (function (process){ /** * Copyright 2013-present, Facebook, Inc. @@ -44940,7 +37345,7 @@ if (process.env.NODE_ENV !== 'production') { module.exports = ReactComponent; }).call(this,require('_process')) -},{"./ReactNoopUpdateQueue":270,"./canDefineProperty":279,"./reactProdInvariant":284,"_process":122,"fbjs/lib/emptyObject":105,"fbjs/lib/invariant":112,"fbjs/lib/warning":119}],264:[function(require,module,exports){ +},{"./ReactNoopUpdateQueue":176,"./canDefineProperty":185,"./reactProdInvariant":190,"_process":28,"fbjs/lib/emptyObject":11,"fbjs/lib/invariant":18,"fbjs/lib/warning":25}],170:[function(require,module,exports){ (function (process){ /** * Copyright 2016-present, Facebook, Inc. @@ -45277,7 +37682,7 @@ var ReactComponentTreeHook = { module.exports = ReactComponentTreeHook; }).call(this,require('_process')) -},{"./ReactCurrentOwner":265,"./reactProdInvariant":284,"_process":122,"fbjs/lib/invariant":112,"fbjs/lib/warning":119}],265:[function(require,module,exports){ +},{"./ReactCurrentOwner":171,"./reactProdInvariant":190,"_process":28,"fbjs/lib/invariant":18,"fbjs/lib/warning":25}],171:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -45308,7 +37713,7 @@ var ReactCurrentOwner = { }; module.exports = ReactCurrentOwner; -},{}],266:[function(require,module,exports){ +},{}],172:[function(require,module,exports){ (function (process){ /** * Copyright 2013-present, Facebook, Inc. @@ -45481,7 +37886,7 @@ var ReactDOMFactories = { module.exports = ReactDOMFactories; }).call(this,require('_process')) -},{"./ReactElement":267,"./ReactElementValidator":269,"_process":122}],267:[function(require,module,exports){ +},{"./ReactElement":173,"./ReactElementValidator":175,"_process":28}],173:[function(require,module,exports){ (function (process){ /** * Copyright 2014-present, Facebook, Inc. @@ -45825,9 +38230,9 @@ ReactElement.isValidElement = function (object) { module.exports = ReactElement; }).call(this,require('_process')) -},{"./ReactCurrentOwner":265,"./ReactElementSymbol":268,"./canDefineProperty":279,"_process":122,"fbjs/lib/warning":119,"object-assign":121}],268:[function(require,module,exports){ -arguments[4][176][0].apply(exports,arguments) -},{"dup":176}],269:[function(require,module,exports){ +},{"./ReactCurrentOwner":171,"./ReactElementSymbol":174,"./canDefineProperty":185,"_process":28,"fbjs/lib/warning":25,"object-assign":27}],174:[function(require,module,exports){ +arguments[4][82][0].apply(exports,arguments) +},{"dup":82}],175:[function(require,module,exports){ (function (process){ /** * Copyright 2014-present, Facebook, Inc. @@ -46057,7 +38462,7 @@ var ReactElementValidator = { module.exports = ReactElementValidator; }).call(this,require('_process')) -},{"./ReactComponentTreeHook":264,"./ReactCurrentOwner":265,"./ReactElement":267,"./canDefineProperty":279,"./checkReactTypeSpec":280,"./getIteratorFn":282,"_process":122,"fbjs/lib/warning":119}],270:[function(require,module,exports){ +},{"./ReactComponentTreeHook":170,"./ReactCurrentOwner":171,"./ReactElement":173,"./canDefineProperty":185,"./checkReactTypeSpec":186,"./getIteratorFn":188,"_process":28,"fbjs/lib/warning":25}],176:[function(require,module,exports){ (function (process){ /** * Copyright 2015-present, Facebook, Inc. @@ -46156,7 +38561,7 @@ var ReactNoopUpdateQueue = { module.exports = ReactNoopUpdateQueue; }).call(this,require('_process')) -},{"_process":122,"fbjs/lib/warning":119}],271:[function(require,module,exports){ +},{"_process":28,"fbjs/lib/warning":25}],177:[function(require,module,exports){ (function (process){ /** * Copyright 2013-present, Facebook, Inc. @@ -46184,7 +38589,7 @@ if (process.env.NODE_ENV !== 'production') { module.exports = ReactPropTypeLocationNames; }).call(this,require('_process')) -},{"_process":122}],272:[function(require,module,exports){ +},{"_process":28}],178:[function(require,module,exports){ (function (process){ /** * Copyright 2013-present, Facebook, Inc. @@ -46621,9 +39026,9 @@ function getClassName(propValue) { module.exports = ReactPropTypes; }).call(this,require('_process')) -},{"./ReactElement":267,"./ReactPropTypeLocationNames":271,"./ReactPropTypesSecret":273,"./getIteratorFn":282,"_process":122,"fbjs/lib/emptyFunction":104,"fbjs/lib/warning":119}],273:[function(require,module,exports){ -arguments[4][196][0].apply(exports,arguments) -},{"dup":196}],274:[function(require,module,exports){ +},{"./ReactElement":173,"./ReactPropTypeLocationNames":177,"./ReactPropTypesSecret":179,"./getIteratorFn":188,"_process":28,"fbjs/lib/emptyFunction":10,"fbjs/lib/warning":25}],179:[function(require,module,exports){ +arguments[4][102][0].apply(exports,arguments) +},{"dup":102}],180:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -46665,7 +39070,7 @@ _assign(ReactPureComponent.prototype, ReactComponent.prototype); ReactPureComponent.prototype.isPureReactComponent = true; module.exports = ReactPureComponent; -},{"./ReactComponent":263,"./ReactNoopUpdateQueue":270,"fbjs/lib/emptyObject":105,"object-assign":121}],275:[function(require,module,exports){ +},{"./ReactComponent":169,"./ReactNoopUpdateQueue":176,"fbjs/lib/emptyObject":11,"object-assign":27}],181:[function(require,module,exports){ (function (process){ /** * Copyright 2013-present, Facebook, Inc. @@ -46771,7 +39176,7 @@ var ReactTransitionChildMapping = { module.exports = ReactTransitionChildMapping; }).call(this,require('_process')) -},{"./flattenChildren":281,"_process":122}],276:[function(require,module,exports){ +},{"./flattenChildren":187,"_process":28}],182:[function(require,module,exports){ /** * Copyright 2013-present, Facebook, Inc. * All rights reserved. @@ -46844,7 +39249,7 @@ var ReactTransitionEvents = { }; module.exports = ReactTransitionEvents; -},{"fbjs/lib/ExecutionEnvironment":98,"react-dom/lib/getVendorPrefixedEventName":243}],277:[function(require,module,exports){ +},{"fbjs/lib/ExecutionEnvironment":4,"react-dom/lib/getVendorPrefixedEventName":149}],183:[function(require,module,exports){ (function (process){ /** * Copyright 2013-present, Facebook, Inc. @@ -47097,9 +39502,9 @@ ReactTransitionGroup.defaultProps = { module.exports = ReactTransitionGroup; }).call(this,require('_process')) -},{"./React":257,"./ReactAddonsDOMDependencies":258,"./ReactTransitionChildMapping":275,"_process":122,"fbjs/lib/emptyFunction":104,"object-assign":121}],278:[function(require,module,exports){ -arguments[4][206][0].apply(exports,arguments) -},{"dup":206}],279:[function(require,module,exports){ +},{"./React":163,"./ReactAddonsDOMDependencies":164,"./ReactTransitionChildMapping":181,"_process":28,"fbjs/lib/emptyFunction":10,"object-assign":27}],184:[function(require,module,exports){ +arguments[4][112][0].apply(exports,arguments) +},{"dup":112}],185:[function(require,module,exports){ (function (process){ /** * Copyright 2013-present, Facebook, Inc. @@ -47128,7 +39533,7 @@ if (process.env.NODE_ENV !== 'production') { module.exports = canDefineProperty; }).call(this,require('_process')) -},{"_process":122}],280:[function(require,module,exports){ +},{"_process":28}],186:[function(require,module,exports){ (function (process){ /** * Copyright 2013-present, Facebook, Inc. @@ -47218,7 +39623,7 @@ function checkReactTypeSpec(typeSpecs, values, location, componentName, element, module.exports = checkReactTypeSpec; }).call(this,require('_process')) -},{"./ReactComponentTreeHook":264,"./ReactPropTypeLocationNames":271,"./ReactPropTypesSecret":273,"./reactProdInvariant":284,"_process":122,"fbjs/lib/invariant":112,"fbjs/lib/warning":119}],281:[function(require,module,exports){ +},{"./ReactComponentTreeHook":170,"./ReactPropTypeLocationNames":177,"./ReactPropTypesSecret":179,"./reactProdInvariant":190,"_process":28,"fbjs/lib/invariant":18,"fbjs/lib/warning":25}],187:[function(require,module,exports){ (function (process){ /** * Copyright 2013-present, Facebook, Inc. @@ -47297,9 +39702,9 @@ function flattenChildren(children, selfDebugID) { module.exports = flattenChildren; }).call(this,require('_process')) -},{"./KeyEscapeUtils":255,"./ReactComponentTreeHook":264,"./traverseAllChildren":285,"_process":122,"fbjs/lib/warning":119}],282:[function(require,module,exports){ -arguments[4][239][0].apply(exports,arguments) -},{"dup":239}],283:[function(require,module,exports){ +},{"./KeyEscapeUtils":161,"./ReactComponentTreeHook":170,"./traverseAllChildren":191,"_process":28,"fbjs/lib/warning":25}],188:[function(require,module,exports){ +arguments[4][145][0].apply(exports,arguments) +},{"dup":145}],189:[function(require,module,exports){ (function (process){ /** * Copyright 2013-present, Facebook, Inc. @@ -47340,9 +39745,9 @@ function onlyChild(children) { module.exports = onlyChild; }).call(this,require('_process')) -},{"./ReactElement":267,"./reactProdInvariant":284,"_process":122,"fbjs/lib/invariant":112}],284:[function(require,module,exports){ -arguments[4][248][0].apply(exports,arguments) -},{"dup":248}],285:[function(require,module,exports){ +},{"./ReactElement":173,"./reactProdInvariant":190,"_process":28,"fbjs/lib/invariant":18}],190:[function(require,module,exports){ +arguments[4][154][0].apply(exports,arguments) +},{"dup":154}],191:[function(require,module,exports){ (function (process){ /** * Copyright 2013-present, Facebook, Inc. @@ -47521,23 +39926,26 @@ function traverseAllChildren(children, callback, traverseContext) { module.exports = traverseAllChildren; }).call(this,require('_process')) -},{"./KeyEscapeUtils":255,"./ReactCurrentOwner":265,"./ReactElementSymbol":268,"./getIteratorFn":282,"./reactProdInvariant":284,"_process":122,"fbjs/lib/invariant":112,"fbjs/lib/warning":119}],286:[function(require,module,exports){ -arguments[4][94][0].apply(exports,arguments) -},{"./lib/React":257,"dup":94}],287:[function(require,module,exports){ +},{"./KeyEscapeUtils":161,"./ReactCurrentOwner":171,"./ReactElementSymbol":174,"./getIteratorFn":188,"./reactProdInvariant":190,"_process":28,"fbjs/lib/invariant":18,"fbjs/lib/warning":25}],192:[function(require,module,exports){ +'use strict'; + +module.exports = require('./lib/React'); + +},{"./lib/React":163}],193:[function(require,module,exports){ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -exports.default = ["The Funnies", "Reticulating splines...", "Generating witty dialog...", "Swapping time and space...", "Spinning violently around the y-axis...", "Tokenizing real life...", "Bending the spoon...", "Filtering morale...", "Don't think of purple hippos...", "We need a new fuse...", "Have a good day.", "Upgrading Windows, your PC will restart several times. Sit back and relax.", "640K ought to be enough for anybody", "The architects are still drafting", "The bits are breeding", "We're building the buildings as fast as we can", "Would you prefer chicken, steak, or tofu?", "(Pay no attention to the man behind the curtain)", "...and enjoy the elevator music...", "Please wait while the little elves draw your map", "Don't worry - a few bits tried to escape, but we caught them", "Would you like fries with that?", "Checking the gravitational constant in your locale...", "Go ahead -- hold your breath!", "...at least you're not on hold...", "Hum something loud while others stare", "You're not in Kansas any more", "The server is powered by a lemon and two electrodes.", "Please wait while a larger software vendor in Seattle takes over the world", "We're testing your patience", "As if you had any other choice", "Follow the white rabbit", "Why don't you order a sandwich?", "While the satellite moves into position", "keep calm and npm install", "The bits are flowing slowly today", "Dig on the 'X' for buried treasure... ARRR!", "It's still faster than you could draw it", "The last time I tried this the monkey didn't survive. Let's hope it works better this time.", "I should have had a V8 this morning.", "My other loading screen is much faster.", "Testing on Timmy... We're going to need another Timmy.", "Reconfoobling energymotron...", "(Insert quarter)", "Are we there yet?", "Have you lost weight?", "Just count to 10", "Why so serious?", "It's not you. It's me.", "Counting backwards from Infinity", "Don't panic...", "Embiggening Prototypes", "Do not run! We are your friends!", "Do you come here often?", "Warning: Don't set yourself on fire.", "We're making you a cookie.", "Creating time-loop inversion field", "Spinning the wheel of fortune...", "Loading the enchanted bunny...", "Computing chance of success", "I'm sorry Dave, I can't do that.", "Looking for exact change", "All your web browser are belong to us", "All I really need is a kilobit.", "I feel like im supposed to be loading something. . .", "What do you call 8 Hobbits? A Hobbyte.", "Should have used a compiler language...", "Is this Windows?", "Adjusting flux capacitor...", "Please wait until the sloth starts moving.", "Don't break your screen yet!", "I swear it's almost done.", "Let's take a mindfulness minute...", "Unicorns are at the end of this road, I promise.", "Listening for the sound of one hand clapping...", "Keeping all the 1's and removing all the 0's...", "Putting the icing on the cake. The cake is not a lie...", "Cleaning off the cobwebs...", "Making sure all the i's have dots...", "Connecting Neurotoxin Storage Tank...", "Granting wishes...", "We are not liable for any broken screens as a result of waiting.", "Time flies when you’re having fun.", "Get some coffee and come back in ten minutes..", "Spinning the hamster…", "99 bottles of beer on the wall..", "Stay awhile and listen..", "Be careful not to step in the git-gui", "You shall not pass! yet..", "Load it and they will come", "Convincing AI not to turn evil..", "There is no spoon. Because we are not done loading it", "Your left thumb points to the right and your right thumb points to the left.", "How did you get here?", "Wait, do you smell something burning?", "Computing the secret to life, the universe, and everything.", "When nothing is going right, Go left!!...", "I love my job only when I'm on vacation...", "i'm not lazy, I'm just relaxed!!", "Never steal. The government hates competition....", "Why are they called apartments if they are all stuck together?", "Life is Short – Talk Fast!!!!", "Optimism – is a lack of information.....", "Save water and shower together", "Whenever I find the key to success, someone changes the lock.", "Sometimes I think war is God’s way of teaching us geography.", "I’ve got problem for your solution…..", "Where there’s a will, there’s a relative.", "User: the word computer professionals use when they mean !!idiot!!", "Adults are just kids with money.", "I think I am, therefore, I am. I think.", "A kiss is like a fight, with mouths.", "You don’t pay taxes—they take taxes.", "Coffee, Chocolate, Men. The richer the better!", "I am free of all prejudices. I hate everyone equally.", "git happens", "May the forks be with you", "A commit a day keeps the mobs away", "This is not a joke, it's a commit.", "Making America... great... again...", "Constructing additional pylons...", "Roping some seaturtles...", "Locating Jebediah Kerman...", "We are not liable for any broken screens as a result of waiting.", "Hello IT, have you tried turning it off and on again?", "If you type Google into Google you can break the internet", "Well, this is embarrassing.", "Didn't know paint dried so quickly.", "Hello, IT... Have you tried forcing an unexpected reboot?", "They just toss us away like yesterday's jam.", "They're fairly regular, the beatings, yes. I'd say we're on a bi-weekly beating.", "The Elders of the Internet would never stand for it.", "Space is invisible mind dust, and stars are but wishes.", "Didn't know paint dried so quickly.", "Everything sounds the same", "I'm going to walk the dog", "I didn't choose the engineering life. The engineering life chose me.", "Dividing by zero...", "Spawn more Overlord!", "If I’m not back in five minutes, just wait longer.", "Some days, you just can’t get rid of a bug!", "We’re going to need a bigger boat.", "Chuck Norris never git push. The repo pulls before.", "Web developers do it with