diff --git a/.eslintignore b/.eslintignore index c9866f87df26..80c5126056df 100644 --- a/.eslintignore +++ b/.eslintignore @@ -13,6 +13,6 @@ fixtures/ # Ignore built files. build/ coverage/ -scripts/bench/bench-*.js +scripts/bench/benchmarks/**/*.js vendor/* **/node_modules diff --git a/.flowconfig b/.flowconfig index c091f4a89c9f..e19555fb71cf 100644 --- a/.flowconfig +++ b/.flowconfig @@ -4,6 +4,8 @@ /build/.* /scripts/.* /.*/node_modules/y18n/.* +/node_modules/chrome-devtools-frontend/.* +/node_modules/devtools-timeline-model/.* /.*/__mocks__/.* /.*/__tests__/.* diff --git a/.gitignore b/.gitignore index 8864c101120a..72856879b246 100644 --- a/.gitignore +++ b/.gitignore @@ -7,6 +7,7 @@ static _SpecRunner.html __benchmarks__ build/ +remote-repo/ coverage/ .module-cache *.gem @@ -29,3 +30,4 @@ chrome-user-data .vscode *.swp *.swo +*react*min*.js \ No newline at end of file diff --git a/package.json b/package.json index 2540205c3723..b4b4ba610028 100644 --- a/package.json +++ b/package.json @@ -62,14 +62,19 @@ "glob-stream": "^6.1.0", "gzip-js": "~0.3.2", "gzip-size": "^3.0.0", + "http-server": "^0.9.0", + "http2": "^3.3.6", "jest": "^19.0.1", "jest-config": "^19.0.1", "jest-jasmine2": "^19.0.1", "jest-runtime": "^19.0.1", + "lighthouse": "^1.6.3", "loose-envify": "^1.1.0", "merge-stream": "^1.0.0", + "mime": "^1.3.4", "minimist": "^1.2.0", "ncp": "^2.0.0", + "nodegit": "^0.18.0", "object-assign": "^4.1.1", "platform": "^1.1.0", "prettier": "^1.2.2", @@ -84,6 +89,7 @@ "rollup-plugin-replace": "^1.1.1", "rollup-plugin-uglify": "^1.0.1", "run-sequence": "^1.1.4", + "stats-analysis": "^2.0.0", "through2": "^2.0.0", "tmp": "~0.0.28", "typescript": "~1.8.10", @@ -99,6 +105,7 @@ "version": 7 }, "scripts": { + "bench": "npm run version-check && node scripts/bench/runner.js", "build": "npm run version-check && node scripts/rollup/build.js", "linc": "git diff --name-only --diff-filter=ACMRTUB `git merge-base HEAD master` | grep '\\.js$' | xargs eslint --", "lint": "node ./scripts/tasks/eslint.js", @@ -112,7 +119,8 @@ "modulePathIgnorePatterns": [ "/.module-cache/", "/build/", - "/scripts/rollup/shims/" + "/scripts/rollup/shims/", + "/scripts/bench/" ], "rootDir": "", "transform": { diff --git a/scripts/bench/README.md b/scripts/bench/README.md index bfe049add053..b20dfde19be5 100644 --- a/scripts/bench/README.md +++ b/scripts/bench/README.md @@ -1,40 +1,41 @@ -Work-in-progress benchmarks. +# React Benchmarking -## Running the suite +## Commands -You'll need two folders to compare, each of them containing `react.min.js` and `react-dom-server.min.js`. You can run `npm run build` at the repo root to get a `build` folder with these files. +In most cases, the only two commands you might want to use are: -For example, if you want to compare a stable verion against master, you can create folders called `build-stable` and `build-master` and use the benchmark scripts like this: +- `yarn bench` +- `yarn build -- --type=UMD_PROD && yarn bench -- --skip-build` -``` -$ ./measure.py build-stable stable.txt build-master master.txt -$ ./analyze.py stable.txt master.txt -``` +The first command will run benchmarks with all the default settings. A local and remote build will occcur on all bundles, both local and remote repos will be run against all benchmarks. -The test measurements (second argument to `analyze`, `master.txt` in this example) will be compared to the control measurements (first argument to `analyze`, `stable.txt` in this example). +The second command will run all benchmarks but skip the build process. This is useful for when doing local performance tweaking and the remote repo has already had its bundles built. Bboth local and remote repos will be run against all benchmarks with this command too. -Changes with the `-` sign in the output mean `master` is faster than `stable`. +The other commands are as follows: -You can name folders any way you like, this was just an example. +```bash +# will compare local repo vs remote merge base repo +yarn bench -## Running one -One thing you can do with them is benchmark initial render time for a realistic hierarchy: +# will compare local repo vs remote merge base repo +# this can significantly improve bench times due to no build +yarn bench -- --skip-build -``` -$ which jsc -/System/Library/Frameworks/JavaScriptCore.framework/Versions/Current/Resources/jsc -$ jsc react-0.14.0.min.js bench-pe-es5.js -e 'var START=Date.now(); React.renderToString(React.createElement(Benchmark)); var END=Date.now(); print(END-START);' -45 -``` +# will only build and run local repo against benchmarks (no remote values will be shown) +yarn bench -- --local -Substitute `js` or `v8` for `jsc` to use SpiderMonkey or V8, respectively, if you've installed them. +# will only build and run remote merge base repo against benchmarks (no local values will be shown) +yarn bench -- --remote -## Creating one +# will only build and run remote master repo against benchmarks +yarn bench -- --remote=master -To create one, copy `extract-component.js` to your clipboard and paste it into the Chrome console on facebook.com, perhaps after changing the root ID if you don't want the tree with ID `.0`. +# same as "yarn bench" +yarn bench -- --remote --local -Then to convert it to ES5: +# runs benchmarks with Chrome in headless mode +yarn bench -- --headless -``` -babel --whitelist react,react.displayName --compact false bench-pe.js >bench-pe-es5.js -``` +# runs only specific string matching benchmarks +yarn bench -- --benchmark=hacker +``` \ No newline at end of file diff --git a/scripts/bench/analyze.py b/scripts/bench/analyze.py deleted file mode 100755 index 17ca428f165d..000000000000 --- a/scripts/bench/analyze.py +++ /dev/null @@ -1,111 +0,0 @@ -#!/usr/bin/env python -# 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. - -import math -import sys - -import numpy as np -import numpy.random as npr -import scipy.stats - - -def _bootstrap_mean_sem(samples): - """Return the estimated standard error for a distribution's mean.""" - samples = np.array(samples) - n = len(samples) - indices = npr.randint(0, n, (10000, n)) - samples = samples[indices] - means = np.sort(np.mean(samples, axis=1)) - return np.std(means, ddof=1) - - -def _read_measurements(f): - """Read measurements from a file. - - Returns {'a': [1.0, 2.0, 3.0], 'b': [5.0, 5.0, 5.0]} for a file containing - the six lines: ['a 1', 'a 2', 'a 3', 'b 5', 'b 5', 'b 5']. - """ - measurements = {} - for line in f: - label, value = line.split(None, 1) - measurements.setdefault(label, []).append(float(value)) - return measurements - - -def _compute_mean_and_sd_of_ratio_from_delta_method( - mean_test, - sem_test, - mean_control, - sem_control -): - mean = ( - ((mean_test - mean_control) / mean_control) - - (pow(sem_control, 2) * mean_test / pow(mean_control, 3)) - ) - var = ( - pow(sem_test / mean_control, 2) + - (pow(sem_control * mean_test, 2) / pow(mean_control, 4)) - ) - return (mean, math.sqrt(var)) - - -def _main(): - if len(sys.argv) != 3: - sys.stderr.write("usage: analyze.py control.txt test.txt\n") - return 1 - - ci_size = 0.99 - p_value = scipy.stats.norm.ppf(0.5 * (1 + ci_size)) - - control, test = sys.argv[1:] - with open(control) as f: - control_measurements = _read_measurements(f) - with open(test) as f: - test_measurements = _read_measurements(f) - keys = set() - keys.update(control_measurements.iterkeys()) - keys.update(test_measurements.iterkeys()) - - print "Comparing %s (control) vs %s (test)" % (control, test) - print "Significant differences marked by ***" - print "%% change from control to test, with %g%% CIs:" % (ci_size * 100,) - print - - any_sig = False - for key in sorted(keys): - print "* %s" % (key,) - control_nums = control_measurements.get(key, []) - test_nums = test_measurements.get(key, []) - if not control_nums or not test_nums: - print " skipping..." - continue - - mean_control = np.mean(control_nums) - mean_test = np.mean(test_nums) - sem_control = _bootstrap_mean_sem(control_nums) - sem_test = _bootstrap_mean_sem(test_nums) - - rat_mean, rat_sem = _compute_mean_and_sd_of_ratio_from_delta_method( - mean_test, sem_test, mean_control, sem_control - ) - rat_low = rat_mean - p_value * rat_sem - rat_high = rat_mean + p_value * rat_sem - - sig = rat_high < 0 or rat_low > 0 - any_sig = any_sig or sig - - print " %% change: %+6.2f%% [%+6.2f%%, %+6.2f%%]%s" % ( - 100 * rat_mean, - 100 * rat_low, - 100 * rat_high, - ' ***' if sig else '' - ) - print " means: %g (control), %g (test)" % (mean_control, mean_test) - -if __name__ == '__main__': - sys.exit(_main()) diff --git a/scripts/bench/bench-createclass.js b/scripts/bench/bench-createclass.js deleted file mode 100644 index 99d77594912c..000000000000 --- a/scripts/bench/bench-createclass.js +++ /dev/null @@ -1,243 +0,0 @@ -React.createClass({ - displayName: "UnimplementedView", - setNativeProps: function() {}, - render: function() {}, -}); -var mixin1 = { - measure: function() {}, - measureLayout: function() {}, - setNativeProps: function() {}, - focus: function() {}, - blur: function() {}, - componentWillMount: function() {}, - componentWillReceiveProps: function() {}, -}; -React.createClass({ - displayName: "View", - mixins: [mixin1], - viewConfig: {uiViewClassName: "RCTView", validAttributes: null}, - statics: {AccessibilityTraits: null, AccessibilityComponentType: null}, - propTypes: {accessible: function() {}, accessibilityLabel: function() {}, accessibilityComponentType: function() {}, accessibilityLiveRegion: function() {}, importantForAccessibility: function() {}, accessibilityTraits: function() {}, onAccessibilityTap: function() {}, onMagicTap: function() {}, testID: function() {}, onResponderGrant: function() {}, onResponderMove: function() {}, onResponderReject: function() {}, onResponderRelease: function() {}, onResponderTerminate: function() {}, onResponderTerminationRequest: function() {}, onStartShouldSetResponder: function() {}, onStartShouldSetResponderCapture: function() {}, onMoveShouldSetResponder: function() {}, onMoveShouldSetResponderCapture: function() {}, onLayout: function() {}, pointerEvents: function() {}, style: function() {}, removeClippedSubviews: function() {}, renderToHardwareTextureAndroid: function() {}, shouldRasterizeIOS: function() {}, collapsable: function() {}, needsOffscreenAlphaCompositing: function() {}}, - render: function() {}, -}); -var mixin2 = { - componentWillUnmount: function() {}, - setTimeout: function() {}, - clearTimeout: function() {}, - setInterval: function() {}, - clearInterval: function() {}, - setImmediate: function() {}, - clearImmediate: function() {}, - requestAnimationFrame: function() {}, - cancelAnimationFrame: function() {}, -}; -var mixin3 = { - componentWillUnmount: function() {}, - _interactionMixinHandles: {}, - createInteractionHandle: function() {}, - clearInteractionHandle: function() {}, - runAfterInteractions: function() {}, -}; -var mixin4 = { - componentWillMount: function() {}, - componentWillUnmount: function() {}, - addListenerOn: function() {}, -}; -React.createClass({ - displayName: "Navigator", - propTypes: {configureScene: function() {}, renderScene: function() {}, initialRoute: function() {}, initialRouteStack: function() {}, onWillFocus: function() {}, onDidFocus: function() {}, navigationBar: function() {}, navigator: function() {}, sceneStyle: function() {}}, - statics: {BreadcrumbNavigationBar: null, NavigationBar: null, SceneConfigs: null}, - mixins: [mixin2, mixin3, mixin4], - getDefaultProps: function() {}, - getInitialState: function() {}, - componentWillMount: function() {}, - componentDidMount: function() {}, - componentWillUnmount: function() {}, - immediatelyResetRouteStack: function() {}, - _transitionTo: function() {}, - _handleSpringUpdate: function() {}, - _completeTransition: function() {}, - _emitDidFocus: function() {}, - _emitWillFocus: function() {}, - _hideScenes: function() {}, - _disableScene: function() {}, - _enableScene: function() {}, - _onAnimationStart: function() {}, - _onAnimationEnd: function() {}, - _setRenderSceneToHardwareTextureAndroid: function() {}, - _handleTouchStart: function() {}, - _handleMoveShouldSetPanResponder: function() {}, - _doesGestureOverswipe: function() {}, - _deltaForGestureAction: function() {}, - _handlePanResponderRelease: function() {}, - _handlePanResponderTerminate: function() {}, - _attachGesture: function() {}, - _detachGesture: function() {}, - _handlePanResponderMove: function() {}, - _moveAttachedGesture: function() {}, - _matchGestureAction: function() {}, - _transitionSceneStyle: function() {}, - _transitionBetween: function() {}, - _handleResponderTerminationRequest: function() {}, - _getDestIndexWithinBounds: function() {}, - _jumpN: function() {}, - jumpTo: function() {}, - jumpForward: function() {}, - jumpBack: function() {}, - push: function() {}, - _popN: function() {}, - pop: function() {}, - replaceAtIndex: function() {}, - replace: function() {}, - replacePrevious: function() {}, - popToTop: function() {}, - popToRoute: function() {}, - replacePreviousAndPop: function() {}, - resetTo: function() {}, - getCurrentRoutes: function() {}, - _cleanScenesPastIndex: function() {}, - _renderScene: function() {}, - _renderNavigationBar: function() {}, - render: function() {}, - _getNavigationContext: function() {}, -}); -var mixin5 = { - mixins: [mixin4], - statics: {DecelerationRate: null}, - scrollResponderMixinGetInitialState: function() {}, - scrollResponderHandleScrollShouldSetResponder: function() {}, - scrollResponderHandleStartShouldSetResponder: function() {}, - scrollResponderHandleStartShouldSetResponderCapture: function() {}, - scrollResponderHandleResponderReject: function() {}, - scrollResponderHandleTerminationRequest: function() {}, - scrollResponderHandleTouchEnd: function() {}, - scrollResponderHandleResponderRelease: function() {}, - scrollResponderHandleScroll: function() {}, - scrollResponderHandleResponderGrant: function() {}, - scrollResponderHandleScrollBeginDrag: function() {}, - scrollResponderHandleScrollEndDrag: function() {}, - scrollResponderHandleMomentumScrollBegin: function() {}, - scrollResponderHandleMomentumScrollEnd: function() {}, - scrollResponderHandleTouchStart: function() {}, - scrollResponderHandleTouchMove: function() {}, - scrollResponderIsAnimating: function() {}, - scrollResponderScrollTo: function() {}, - scrollResponderScrollWithouthAnimationTo: function() {}, - scrollResponderZoomTo: function() {}, - scrollResponderScrollNativeHandleToKeyboard: function() {}, - scrollResponderInputMeasureAndScrollToKeyboard: function() {}, - scrollResponderTextInputFocusError: function() {}, - componentWillMount: function() {}, - scrollResponderKeyboardWillShow: function() {}, - scrollResponderKeyboardWillHide: function() {}, - scrollResponderKeyboardDidShow: function() {}, - scrollResponderKeyboardDidHide: function() {}, -}; -React.createClass({ - displayName: "ScrollView", - propTypes: {accessible: function() {}, accessibilityLabel: function() {}, accessibilityComponentType: function() {}, accessibilityLiveRegion: function() {}, importantForAccessibility: function() {}, accessibilityTraits: function() {}, onAccessibilityTap: function() {}, onMagicTap: function() {}, testID: function() {}, onResponderGrant: function() {}, onResponderMove: function() {}, onResponderReject: function() {}, onResponderRelease: function() {}, onResponderTerminate: function() {}, onResponderTerminationRequest: function() {}, onStartShouldSetResponder: function() {}, onStartShouldSetResponderCapture: function() {}, onMoveShouldSetResponder: function() {}, onMoveShouldSetResponderCapture: function() {}, onLayout: function() {}, pointerEvents: function() {}, style: function() {}, removeClippedSubviews: function() {}, renderToHardwareTextureAndroid: function() {}, shouldRasterizeIOS: function() {}, collapsable: function() {}, needsOffscreenAlphaCompositing: function() {}, automaticallyAdjustContentInsets: function() {}, contentInset: function() {}, contentOffset: function() {}, bounces: function() {}, bouncesZoom: function() {}, alwaysBounceHorizontal: function() {}, alwaysBounceVertical: function() {}, centerContent: function() {}, contentContainerStyle: function() {}, decelerationRate: function() {}, horizontal: function() {}, directionalLockEnabled: function() {}, canCancelContentTouches: function() {}, keyboardDismissMode: function() {}, keyboardShouldPersistTaps: function() {}, maximumZoomScale: function() {}, minimumZoomScale: function() {}, onScroll: function() {}, onScrollAnimationEnd: function() {}, onContentSizeChange: function() {}, pagingEnabled: function() {}, scrollEnabled: function() {}, scrollEventThrottle: function() {}, scrollIndicatorInsets: function() {}, scrollsToTop: function() {}, showsHorizontalScrollIndicator: function() {}, showsVerticalScrollIndicator: function() {}, stickyHeaderIndices: function() {}, snapToInterval: function() {}, snapToAlignment: function() {}, zoomScale: function() {}, onRefreshStart: function() {}}, - mixins: [mixin5], - getInitialState: function() {}, - setNativeProps: function() {}, - endRefreshing: function() {}, - getScrollResponder: function() {}, - getInnerViewNode: function() {}, - scrollTo: function() {}, - scrollWithoutAnimationTo: function() {}, - handleScroll: function() {}, - _handleContentOnLayout: function() {}, - render: function() {}, -}); -var mixin6 = { - componentWillUnmount: function() {}, - setTimeout: function() {}, - clearTimeout: function() {}, - setInterval: function() {}, - clearInterval: function() {}, - setImmediate: function() {}, - clearImmediate: function() {}, - requestAnimationFrame: function() {}, - cancelAnimationFrame: function() {}, -}; -React.createClass({ - displayName: "AdsManagerTabsModalView", - contextTypes: {navigation: function() {}}, - mixins: [mixin6, mixin4], - getDefaultProps: function() {}, - getInitialState: function() {}, - componentWillMount: function() {}, - componentDidMount: function() {}, - componentWillUnmount: function() {}, - onTabSelect: function() {}, - _handleConnectivityChange: function() {}, - _onTabTap: function() {}, - startCreateFlow: function() {}, - render: function() {}, - _renderTabs: function() {}, - _onAdCreated: function() {}, - _onRemoteNotification: function() {}, - _setAccountFromURL: function() {}, - _updateBadgeCount: function() {}, - _onRetry: function() {}, - _getUnseenNotifsCount: function() {}, - _pushNotifPermalink: function() {}, - _onMobileConfigsLoadDone: function() {}, - _getAccountRoute: function() {}, - _getNotifsRoute: function() {}, - _getSettingsRoute: function() {}, - _getCampaignsRoute: function() {}, - _getNavStack: function() {}, - _onAccountChanged: function() {}, - _onHelpCenterRequested: function() {}, - _onGlobalError: function() {}, - _onGlobalErrorToastDidClose: function() {}, - _onShowNUX: function() {}, - _closeToastAndPopover: function() {}, - _onTabLayout: function() {}, - _onRootNavigationWillChange: function() {}, - _handleOpenURL: function() {}, - _updateAccountIDFromInLink: function() {}, - _pushInLink: function() {}, - _pushExternalRoute: function() {}, - _canPushExernalRoute: function() {}, - _hasAccountTab: function() {}, - _hasCampaignsTab: function() {}, - _getTabForURL: function() {}, - _getTabForExternalRoute: function() {}, -}); -React.createClass({ - displayName: "ActionBarButton", - mixins: [mixin1, mixin6], - propTypes: {label: function() {}, iconOnly: function() {}, imageSource: function() {}, style: function() {}, onContentMeasured: function() {}, onPress: function() {}}, - componentDidMount: function() {}, - render: function() {}, -}); -React.createClass({ - displayName: "ListView", - mixins: [mixin5, mixin2], - statics: {DataSource: null}, - propTypes: {accessible: function() {}, accessibilityLabel: function() {}, accessibilityComponentType: function() {}, accessibilityLiveRegion: function() {}, importantForAccessibility: function() {}, accessibilityTraits: function() {}, onAccessibilityTap: function() {}, onMagicTap: function() {}, testID: function() {}, onResponderGrant: function() {}, onResponderMove: function() {}, onResponderReject: function() {}, onResponderRelease: function() {}, onResponderTerminate: function() {}, onResponderTerminationRequest: function() {}, onStartShouldSetResponder: function() {}, onStartShouldSetResponderCapture: function() {}, onMoveShouldSetResponder: function() {}, onMoveShouldSetResponderCapture: function() {}, onLayout: function() {}, pointerEvents: function() {}, style: function() {}, removeClippedSubviews: function() {}, renderToHardwareTextureAndroid: function() {}, shouldRasterizeIOS: function() {}, collapsable: function() {}, needsOffscreenAlphaCompositing: function() {}, automaticallyAdjustContentInsets: function() {}, contentInset: function() {}, contentOffset: function() {}, bounces: function() {}, bouncesZoom: function() {}, alwaysBounceHorizontal: function() {}, alwaysBounceVertical: function() {}, centerContent: function() {}, contentContainerStyle: function() {}, decelerationRate: function() {}, horizontal: function() {}, directionalLockEnabled: function() {}, canCancelContentTouches: function() {}, keyboardDismissMode: function() {}, keyboardShouldPersistTaps: function() {}, maximumZoomScale: function() {}, minimumZoomScale: function() {}, onScroll: function() {}, onScrollAnimationEnd: function() {}, onContentSizeChange: function() {}, pagingEnabled: function() {}, scrollEnabled: function() {}, scrollEventThrottle: function() {}, scrollIndicatorInsets: function() {}, scrollsToTop: function() {}, showsHorizontalScrollIndicator: function() {}, showsVerticalScrollIndicator: function() {}, stickyHeaderIndices: function() {}, snapToInterval: function() {}, snapToAlignment: function() {}, zoomScale: function() {}, onRefreshStart: function() {}, dataSource: function() {}, renderSeparator: function() {}, renderRow: function() {}, initialListSize: function() {}, onEndReached: function() {}, onEndReachedThreshold: function() {}, pageSize: function() {}, renderFooter: function() {}, renderHeader: function() {}, renderSectionHeader: function() {}, renderScrollComponent: function() {}, scrollRenderAheadDistance: function() {}, onChangeVisibleRows: function() {}}, - getMetrics: function() {}, - getScrollResponder: function() {}, - setNativeProps: function() {}, - getDefaultProps: function() {}, - getInitialState: function() {}, - getInnerViewNode: function() {}, - componentWillMount: function() {}, - componentDidMount: function() {}, - componentWillReceiveProps: function() {}, - componentDidUpdate: function() {}, - onRowHighlighted: function() {}, - render: function() {}, - _measureAndUpdateScrollProps: function() {}, - _onContentSizeChange: function() {}, - _onLayout: function() {}, - _setScrollVisibleLength: function() {}, - _updateChildFrames: function() {}, - _maybeCallOnEndReached: function() {}, - _renderMoreRowsIfNeeded: function() {}, - _pageInNewRows: function() {}, - _getDistanceFromEnd: function() {}, - _updateVisibleRows: function() {}, - _onScroll: function() {}, -}); diff --git a/scripts/bench/bench-pe-sfc.js b/scripts/bench/bench-pe-sfc.js deleted file mode 100644 index 583d524455c9..000000000000 --- a/scripts/bench/bench-pe-sfc.js +++ /dev/null @@ -1,3687 +0,0 @@ -(function() { - -var ReactImage0 = function(props) { - if (props.x === 0) { - return ; - } - if (props.x === 15) { - return ; - } - if (props.x === 22) { - return ; - } - if (props.x === 29) { - return ; - } - if (props.x === 42) { - return ( - - {"Warning"} - - ); - } - if (props.x === 67) { - return ; - } - if (props.x === 70) { - return ; - } - if (props.x === 76) { - return ; - } - if (props.x === 79) { - return ; - } - if (props.x === 88) { - return ; - } - if (props.x === 91) { - return ; - } - if (props.x === 94) { - return ; - } - if (props.x === 98) { - return ; - } - if (props.x === 108) { - return ; - } - if (props.x === 111) { - return ; - } - if (props.x === 126) { - return ; - } - if (props.x === 127) { - return ; - } - if (props.x === 134) { - return ; - } - if (props.x === 135) { - return ; - } - if (props.x === 148) { - return ; - } - if (props.x === 152) { - return ; - } - if (props.x === 153) { - return ; - } - if (props.x === 160) { - return ; - } - if (props.x === 177) { - return ; - } - if (props.x === 186) { - return ; - } - if (props.x === 195) { - return ; - } - if (props.x === 198) { - return ; - } - if (props.x === 237) { - return ; - } - if (props.x === 266) { - return ; - } - if (props.x === 314) { - return ; - } - if (props.x === 345) { - return ; - } - if (props.x === 351) { - return ; - } -}; - -var AbstractLink1 = function(props) { - if (props.x === 1) { - return ( - - {null} - - {null} - - {"Account:"} - {" "} - {"Dick Madanson (10149999073643408)"} - - - - - ); - } - if (props.x === 43) { - return ( - - {undefined} - {"Remove"} - {undefined} - - ); - } - if (props.x === 49) { - return ( - - - - ); - } - if (props.x === 128) { - return ( - - {null} - - - {"Search"} - - - - ); - } - if (props.x === 136) { - return ( - - {null} - - - {"Filters"} - - - - ); - } - if (props.x === 178) { - return ( - - {undefined} - {"Lifetime"} - - - ); - } - if (props.x === 207) { - return {"Create Ad Set"}; - } - if (props.x === 209) { - return {"View Ad Set"}; - } - if (props.x === 241) { - return {"Set a Limit"}; - } - if (props.x === 267) { - return ( - - {null} - - {null} - {"Links"} - - - - ); - } -}; - -var Link2 = function(props) { - if (props.x === 2) { - return ; - } - if (props.x === 44) { - return ; - } - if (props.x === 50) { - return ; - } - if (props.x === 129) { - return ; - } - if (props.x === 137) { - return ; - } - if (props.x === 179) { - return ; - } - if (props.x === 208) { - return ; - } - if (props.x === 210) { - return ; - } - if (props.x === 242) { - return ; - } - if (props.x === 268) { - return ; - } -}; - -var AbstractButton3 = function(props) { - if (props.x === 3) { - return ; - } - if (props.x === 20) { - return ( - - ); - } - if (props.x === 23) { - return ( - - ); - } - if (props.x === 45) { - return ; - } - if (props.x === 68) { - return ( - - ); - } - if (props.x === 71) { - return ( - - ); - } - if (props.x === 77) { - return ( - - ); - } - if (props.x === 80) { - return ( - - ); - } - if (props.x === 89) { - return ( - - ); - } - if (props.x === 92) { - return ( - - ); - } - if (props.x === 95) { - return ( - - ); - } - if (props.x === 99) { - return ( - - ); - } - if (props.x === 109) { - return ( - - ); - } - if (props.x === 112) { - return ( - - ); - } - if (props.x === 130) { - return ; - } - if (props.x === 138) { - return ; - } - if (props.x === 149) { - return ( - - ); - } - if (props.x === 156) { - return ( - - ); - } - if (props.x === 161) { - return ( - - ); - } - if (props.x === 180) { - return ; - } - if (props.x === 187) { - return ( - - ); - } - if (props.x === 269) { - return ; - } - if (props.x === 303) { - return ( - - ); - } - if (props.x === 305) { - return ( - - ); - } - if (props.x === 307) { - return ( - - ); - } -}; - -var XUIButton4 = function(props) { - if (props.x === 4) { - return ; - } - if (props.x === 21) { - return ; - } - if (props.x === 24) { - return ; - } - if (props.x === 69) { - return ; - } - if (props.x === 72) { - return ; - } - if (props.x === 78) { - return ; - } - if (props.x === 81) { - return ; - } - if (props.x === 90) { - return ; - } - if (props.x === 93) { - return ; - } - if (props.x === 96) { - return ; - } - if (props.x === 100) { - return ; - } - if (props.x === 110) { - return ; - } - if (props.x === 113) { - return ; - } - if (props.x === 131) { - return ; - } - if (props.x === 139) { - return ; - } - if (props.x === 157) { - return ; - } - if (props.x === 162) { - return ; - } - if (props.x === 188) { - return ; - } - if (props.x === 270) { - return ; - } - if (props.x === 304) { - return ; - } - if (props.x === 306) { - return ; - } - if (props.x === 308) { - return ; - } -}; - -var AbstractPopoverButton5 = function(props) { - if (props.x === 5) { - return ; - } - if (props.x === 132) { - return ; - } - if (props.x === 140) { - return ; - } - if (props.x === 271) { - return ; - } -}; - -var ReactXUIPopoverButton6 = function(props) { - if (props.x === 6) { - return ; - } - if (props.x === 133) { - return ; - } - if (props.x === 141) { - return ; - } - if (props.x === 272) { - return ; - } -}; - -var BIGAdAccountSelector7 = function(props) { - if (props.x === 7) { - return ( -
- - {null} -
- ); - } -}; - -var FluxContainer_AdsPEBIGAdAccountSelectorContainer_8 = function(props) { - if (props.x === 8) { - return ; - } -}; - -var ErrorBoundary9 = function(props) { - if (props.x === 9) { - return ; - } - if (props.x === 13) { - return ; - } - if (props.x === 27) { - return ; - } - if (props.x === 32) { - return ; - } - if (props.x === 38) { - return ; - } - if (props.x === 57) { - return ; - } - if (props.x === 60) { - return ; - } - if (props.x === 64) { - return ; - } - if (props.x === 124) { - return ; - } - if (props.x === 170) { - return ; - } - if (props.x === 175) { - return ; - } - if (props.x === 193) { - return ; - } - if (props.x === 301) { - return ; - } - if (props.x === 311) { - return ; - } - if (props.x === 471) { - return ; - } - if (props.x === 475) { - return ; - } -}; - -var AdsErrorBoundary10 = function(props) { - if (props.x === 10) { - return ; - } - if (props.x === 14) { - return ; - } - if (props.x === 28) { - return ; - } - if (props.x === 33) { - return ; - } - if (props.x === 39) { - return ; - } - if (props.x === 58) { - return ; - } - if (props.x === 61) { - return ; - } - if (props.x === 65) { - return ; - } - if (props.x === 125) { - return ; - } - if (props.x === 171) { - return ; - } - if (props.x === 176) { - return ; - } - if (props.x === 194) { - return ; - } - if (props.x === 302) { - return ; - } - if (props.x === 312) { - return ; - } - if (props.x === 472) { - return ; - } - if (props.x === 476) { - return ; - } -}; - -var AdsPENavigationBar11 = function(props) { - if (props.x === 11) { - return
; - } -}; - -var FluxContainer_AdsPENavigationBarContainer_12 = function(props) { - if (props.x === 12) { - return ; - } -}; - -var AdsPEDraftSyncStatus13 = function(props) { - if (props.x === 16) { - return ( -
- - - -
- ); - } -}; - -var FluxContainer_AdsPEDraftSyncStatusContainer_14 = function(props) { - if (props.x === 17) { - return ; - } -}; - -var AdsPEDraftErrorsStatus15 = function(props) { - if (props.x === 18) { - return null; - } -}; - -var FluxContainer_viewFn_16 = function(props) { - if (props.x === 19) { - return ; - } -}; - -var AdsPEPublishButton17 = function(props) { - if (props.x === 25) { - return ( -
- - - {null} - - -
- ); - } -}; - -var FluxContainer_AdsPEPublishButtonContainer_18 = function(props) { - if (props.x === 26) { - return ; - } -}; - -var InlineBlock19 = function(props) { - if (props.x === 30) { - return ( -
- -
- ); - } - if (props.x === 73) { - return ( -
- -
- ); - } - if (props.x === 82) { - return ( -
- -
- ); - } - if (props.x === 101) { - return ( -
- -
- ); - } - if (props.x === 273) { - return ( -
- -
- ); - } -}; - -var ReactPopoverMenu20 = function(props) { - if (props.x === 31) { - return ; - } - if (props.x === 74) { - return ; - } - if (props.x === 83) { - return ; - } - if (props.x === 102) { - return ; - } - if (props.x === 274) { - return ; - } -}; - -var LeftRight21 = function(props) { - if (props.x === 34) { - return ( -
-
-
-
- -
-
- -
-
-
-
-
-
- -
-
- -
-
-
-
- ); - } - if (props.x === 232) { - return ( -
-
- -
-
-
-
{"Clicks to Website"}
-
-
-
- ); - } - if (props.x === 235) { - return ( -
-
- -
-
-
-
{"Auction"}
-
-
-
- ); - } - if (props.x === 245) { - return ( -
-
- -
-
-
- -
-
-
- ); - } - if (props.x === 277) { - return ( -
-
- -
-
- -
-
- ); - } -}; - -var AdsUnifiedNavigationLocalNav22 = function(props) { - if (props.x === 35) { - return ( -
- -
- ); - } -}; - -var XUIDialog23 = function(props) { - if (props.x === 36) { - return null; - } -}; - -var AdsPEResetDialog24 = function(props) { - if (props.x === 37) { - return ( - - - - ); - } -}; - -var AdsPETopNav25 = function(props) { - if (props.x === 40) { - return ( -
- - -
- ); - } -}; - -var FluxContainer_AdsPETopNavContainer_26 = function(props) { - if (props.x === 41) { - return ; - } -}; - -var XUIAbstractGlyphButton27 = function(props) { - if (props.x === 46) { - return ; - } - if (props.x === 150) { - return ; - } -}; - -var XUICloseButton28 = function(props) { - if (props.x === 47) { - return ; - } - if (props.x === 151) { - return ; - } -}; - -var XUIText29 = function(props) { - if (props.x === 48) { - return {"Ads Manager"}; - } - if (props.x === 205) { - return {"Editing Campaign"}; - } - if (props.x === 206) { - return {"Test Campaign"}; - } -}; - -var XUINotice30 = function(props) { - if (props.x === 51) { - return ( -
- - -
- {"Please go to "} - - {" to set up a payment method for this ad account."} -
-
- ); - } -}; - -var ReactCSSTransitionGroupChild31 = function(props) { - if (props.x === 52) { - return ; - } -}; - -var ReactTransitionGroup32 = function(props) { - if (props.x === 53) { - return ( - - - - ); - } -}; - -var ReactCSSTransitionGroup33 = function(props) { - if (props.x === 54) { - return ; - } -}; - -var AdsPETopError34 = function(props) { - if (props.x === 55) { - return ( -
- -
- ); - } -}; - -var FluxContainer_AdsPETopErrorContainer_35 = function(props) { - if (props.x === 56) { - return ; - } -}; - -var FluxContainer_AdsGuidanceChannel_36 = function(props) { - if (props.x === 59) { - return null; - } -}; - -var ResponsiveBlock37 = function(props) { - if (props.x === 62) { - return ( -
- {[ - , - , - ]} -
- -
-
- ); - } - if (props.x === 469) { - return ( -
- -
- -
-
- ); - } -}; - -var FluxContainer_AdsBulkEditDialogContainer_38 = function(props) { - if (props.x === 63) { - return null; - } -}; - -var Column39 = function(props) { - if (props.x === 66) { - return ( -
-
- {null} - {null} -
- {null} -
-
- ); - } -}; - -var XUIButtonGroup40 = function(props) { - if (props.x === 75) { - return ( -
- - -
- ); - } - if (props.x === 84) { - return ( -
- - -
- ); - } - if (props.x === 97) { - return ( -
- - - -
- ); - } - if (props.x === 117) { - return ( -
- - - -
- ); - } -}; - -var AdsPEEditToolbarButton41 = function(props) { - if (props.x === 85) { - return ; - } -}; - -var FluxContainer_AdsPEEditCampaignGroupToolbarButtonContainer_42 = function(props) { - if (props.x === 86) { - return ; - } -}; - -var FluxContainer_AdsPEEditToolbarButtonContainer_43 = function(props) { - if (props.x === 87) { - return ; - } -}; - -var AdsPEExportImportMenu44 = function(props) { - if (props.x === 103) { - return ; - } -}; - -var FluxContainer_AdsPECustomizeExportContainer_45 = function(props) { - if (props.x === 104) { - return null; - } -}; - -var AdsPEExportAsTextDialog46 = function(props) { - if (props.x === 105) { - return null; - } -}; - -var FluxContainer_AdsPEExportAsTextDialogContainer_47 = function(props) { - if (props.x === 106) { - return ; - } -}; - -var AdsPEExportImportMenuContainer48 = function(props) { - if (props.x === 107) { - return ( - - - - - {null} - {null} - - ); - } -}; - -var Constructor49 = function(props) { - if (props.x === 114) { - return null; - } - if (props.x === 142) { - return null; - } - if (props.x === 143) { - return null; - } - if (props.x === 183) { - return null; - } -}; - -var TagSelectorPopover50 = function(props) { - if (props.x === 115) { - return ( - - - - - ); - } -}; - -var AdsPECampaignGroupTagContainer51 = function(props) { - if (props.x === 116) { - return ; - } -}; - -var AdsRuleToolbarMenu52 = function(props) { - if (props.x === 118) { - return null; - } -}; - -var FluxContainer_AdsPERuleToolbarMenuContainer_53 = function(props) { - if (props.x === 119) { - return ; - } -}; - -var FillColumn54 = function(props) { - if (props.x === 120) { - return ( -
- - - - - {null} - - - - - -
- ); - } -}; - -var Layout55 = function(props) { - if (props.x === 121) { - return ( -
- - -
- ); - } -}; - -var AdsPEMainPaneToolbar56 = function(props) { - if (props.x === 122) { - return ( -
- -
- ); - } -}; - -var AdsPECampaignGroupToolbarContainer57 = function(props) { - if (props.x === 123) { - return ; - } -}; - -var AdsPEFiltersPopover58 = function(props) { - if (props.x === 144) { - return ( - - - - {[ - , - , - ]} - - ); - } -}; - -var AbstractCheckboxInput59 = function(props) { - if (props.x === 145) { - return ( - - ); - } - if (props.x === 336) { - return ( - - ); - } -}; - -var XUICheckboxInput60 = function(props) { - if (props.x === 146) { - return ; - } - if (props.x === 337) { - return ; - } -}; - -var InputLabel61 = function(props) { - if (props.x === 147) { - return ( -
- - -
- ); - } -}; - -var AdsPopoverLink62 = function(props) { - if (props.x === 154) { - return ( - - - - - - {null} - - ); - } - if (props.x === 238) { - return ( - - - - - - {null} - - ); - } -}; - -var AdsHelpLink63 = function(props) { - if (props.x === 155) { - return ; - } - if (props.x === 239) { - return ; - } -}; - -var BUIFilterTokenInput64 = function(props) { - if (props.x === 158) { - return ( -
-
- -
- {"Campaigns: (1)"} - -
-
- -
- ); - } -}; - -var BUIFilterToken65 = function(props) { - if (props.x === 159) { - return ( -
-
-
- -
{"Campaigns:"}
-
{"(1)"}
-
- {null} - -
- -
- ); - } -}; - -var BUIFilterTokenCreateButton66 = function(props) { - if (props.x === 163) { - return ( -
- -
- ); - } -}; - -var BUIFilterTokenizer67 = function(props) { - if (props.x === 164) { - return ( -
- {undefined} - {[]} - - - {null} -
-
- ); - } -}; - -var XUIAmbientNUX68 = function(props) { - if (props.x === 165) { - return null; - } - if (props.x === 189) { - return null; - } - if (props.x === 200) { - return null; - } -}; - -var XUIAmbientNUX69 = function(props) { - if (props.x === 166) { - return ; - } - if (props.x === 190) { - return ; - } - if (props.x === 201) { - return ; - } -}; - -var AdsPEAmbientNUXMegaphone70 = function(props) { - if (props.x === 167) { - return ( - - - - - ); - } -}; - -var AdsPEFilters71 = function(props) { - if (props.x === 168) { - return ( -
- -
- -
- - {""} - -
- ); - } -}; - -var AdsPEFilterContainer72 = function(props) { - if (props.x === 169) { - return ; - } -}; - -var AdsPETablePager73 = function(props) { - if (props.x === 172) { - return null; - } -}; - -var AdsPECampaignGroupTablePagerContainer74 = function(props) { - if (props.x === 173) { - return ; - } -}; - -var AdsPETablePagerContainer75 = function(props) { - if (props.x === 174) { - return ; - } -}; - -var ReactXUIError76 = function(props) { - if (props.x === 181) { - return ; - } - if (props.x === 216) { - return ( -
- {null} - {null} -
-
-
- {null} - - {null} -
-
-
-
- {null} -
- ); - } - if (props.x === 221) { - return ; - } - if (props.x === 250) { - return ; - } - if (props.x === 280) { - return ; - } -}; - -var BUIPopoverButton77 = function(props) { - if (props.x === 182) { - return ; - } -}; - -var BUIDateRangePicker78 = function(props) { - if (props.x === 184) { - return ( - - - {[ - , - ]} - - ); - } -}; - -var AdsPEStatsRangePicker79 = function(props) { - if (props.x === 185) { - return ; - } -}; - -var AdsPEStatRange80 = function(props) { - if (props.x === 191) { - return ( -
- {"Stats:"} - - - - - {[ - , - ]} -
- ); - } -}; - -var AdsPEStatRangeContainer81 = function(props) { - if (props.x === 192) { - return ; - } -}; - -var AdsPESideTrayTabButton82 = function(props) { - if (props.x === 196) { - return ( -
- -
-
-
- ); - } - if (props.x === 199) { - return ( -
- -
-
-
- ); - } - if (props.x === 203) { - return null; - } -}; - -var AdsPEEditorTrayTabButton83 = function(props) { - if (props.x === 197) { - return ; - } -}; - -var AdsPEInsightsTrayTabButton84 = function(props) { - if (props.x === 202) { - return ( - - - - - ); - } -}; - -var AdsPENekoDebuggerTrayTabButton85 = function(props) { - if (props.x === 204) { - return ; - } -}; - -var AdsPEEditorChildLink86 = function(props) { - if (props.x === 211) { - return ( -
- - {"|"} - -
- ); - } -}; - -var AdsPEEditorChildLinkContainer87 = function(props) { - if (props.x === 212) { - return ; - } -}; - -var AdsPEHeaderSection88 = function(props) { - if (props.x === 213) { - return ( -
-
- -
-
- -
-
- -
- ); - } -}; - -var AdsPECampaignGroupHeaderSectionContainer89 = function(props) { - if (props.x === 214) { - return ; - } -}; - -var AdsEditorLoadingErrors90 = function(props) { - if (props.x === 215) { - return null; - } -}; - -var AdsTextInput91 = function(props) { - if (props.x === 217) { - return ; - } -}; - -var BUIFormElement92 = function(props) { - if (props.x === 218) { - return ( -
-
- -
-
-
- - - {null} - -
- {null} -
-
- ); - } -}; - -var BUIForm93 = function(props) { - if (props.x === 219) { - return ( -
- -
- ); - } -}; - -var XUICard94 = function(props) { - if (props.x === 220) { - return ( -
- -
- ); - } - if (props.x === 249) { - return ( -
- - -
- ); - } - if (props.x === 279) { - return ( -
- -
- ); - } -}; - -var AdsCard95 = function(props) { - if (props.x === 222) { - return ; - } - if (props.x === 251) { - return ; - } - if (props.x === 281) { - return ; - } -}; - -var AdsEditorNameSection96 = function(props) { - if (props.x === 223) { - return ; - } -}; - -var AdsCampaignGroupNameSectionContainer97 = function(props) { - if (props.x === 224) { - return ; - } -}; - -var _render98 = function(props) { - if (props.x === 225) { - return ; - } -}; - -var AdsPluginWrapper99 = function(props) { - if (props.x === 226) { - return <_render98 x={225} />; - } - if (props.x === 255) { - return <_render111 x={254} />; - } - if (props.x === 258) { - return <_render113 x={257} />; - } - if (props.x === 287) { - return <_render127 x={286} />; - } - if (props.x === 291) { - return <_render130 x={290} />; - } -}; - -var XUICardHeaderTitle100 = function(props) { - if (props.x === 227) { - return ( - - {"Campaign Details"} - {null} - - - ); - } - if (props.x === 265) { - return ( - - {[ - - {"Campaign ID"} - {": "} - {"98010048849317"} - , -
- -
, - ]} - {null} - -
- ); - } -}; - -var XUICardSection101 = function(props) { - if (props.x === 228) { - return ( -
- {[ - , - ]} - {undefined} - {undefined} -
-
- ); - } - if (props.x === 247) { - return ( -
-
- - - - {null} - {null} -
-
- ); - } -}; - -var XUICardHeader102 = function(props) { - if (props.x === 229) { - return ; - } -}; - -var AdsCardHeader103 = function(props) { - if (props.x === 230) { - return ; - } -}; - -var AdsLabeledField104 = function(props) { - if (props.x === 231) { - return ( -
- - {null} -
-
- ); - } - if (props.x === 234) { - return ( -
- - {null} -
-
- ); - } - if (props.x === 240) { - return ( -
- - -
-
- ); - } -}; - -var FlexibleBlock105 = function(props) { - if (props.x === 233) { - return ; - } - if (props.x === 236) { - return ; - } - if (props.x === 246) { - return ; - } -}; - -var AdsBulkCampaignSpendCapField106 = function(props) { - if (props.x === 243) { - return ( -
- {""} - - {" (optional)"} -
- ); - } -}; - -var FluxContainer_AdsCampaignGroupSpendCapContainer_107 = function(props) { - if (props.x === 244) { - return ; - } -}; - -var AdsCardSection108 = function(props) { - if (props.x === 248) { - return ; - } -}; - -var AdsEditorCampaignGroupDetailsSection109 = function(props) { - if (props.x === 252) { - return ; - } -}; - -var AdsEditorCampaignGroupDetailsSectionContainer110 = function(props) { - if (props.x === 253) { - return ; - } -}; - -var _render111 = function(props) { - if (props.x === 254) { - return ; - } -}; - -var FluxContainer_AdsEditorToplineDetailsSectionContainer_112 = function(props) { - if (props.x === 256) { - return null; - } -}; - -var _render113 = function(props) { - if (props.x === 257) { - return ; - } -}; - -var AdsStickyArea114 = function(props) { - if (props.x === 259) { - return ( -
-
-
- ); - } - if (props.x === 292) { - return ( -
-
- {[ -
- -
, - ]} -
-
- ); - } -}; - -var FluxContainer_AdsEditorColumnContainer_115 = function(props) { - if (props.x === 260) { - return ( -
- {[ -
- -
, -
- -
, -
- -
, - ]} - -
- ); - } - if (props.x === 293) { - return ( -
- {[ -
- -
, - ]} - -
- ); - } -}; - -var BUISwitch116 = function(props) { - if (props.x === 261) { - return ( -
-
-
-
- {null} -
- ); - } -}; - -var AdsStatusSwitchInternal117 = function(props) { - if (props.x === 262) { - return ; - } -}; - -var AdsStatusSwitch118 = function(props) { - if (props.x === 263) { - return ; - } -}; - -var FluxContainer_AdsCampaignGroupStatusSwitchContainer_119 = function(props) { - if (props.x === 264) { - return ; - } -}; - -var AdsLinksMenu120 = function(props) { - if (props.x === 275) { - return ; - } -}; - -var FluxContainer_AdsPluginizedLinksMenuContainer_121 = function(props) { - if (props.x === 276) { - return ( -
- {null} - -
- ); - } -}; - -var AdsCardLeftRightHeader122 = function(props) { - if (props.x === 278) { - return ; - } -}; - -var AdsPEIDSection123 = function(props) { - if (props.x === 282) { - return ; - } -}; - -var FluxContainer_AdsPECampaignGroupIDSectionContainer_124 = function(props) { - if (props.x === 283) { - return ; - } -}; - -var DeferredComponent125 = function(props) { - if (props.x === 284) { - return ; - } -}; - -var BootloadedComponent126 = function(props) { - if (props.x === 285) { - return ; - } -}; - -var _render127 = function(props) { - if (props.x === 286) { - return ; - } -}; - -var AdsEditorErrorsCard128 = function(props) { - if (props.x === 288) { - return null; - } -}; - -var FluxContainer_FunctionalContainer_129 = function(props) { - if (props.x === 289) { - return ; - } -}; - -var _render130 = function(props) { - if (props.x === 290) { - return ; - } -}; - -var AdsEditorMultiColumnLayout131 = function(props) { - if (props.x === 294) { - return ( -
-
-
- -
-
- -
-
- -
-
-
-
-
- ); - } -}; - -var AdsPECampaignGroupEditor132 = function(props) { - if (props.x === 295) { - return ( -
- - -
- ); - } -}; - -var AdsPECampaignGroupEditorContainer133 = function(props) { - if (props.x === 296) { - return ; - } -}; - -var AdsPESideTrayTabContent134 = function(props) { - if (props.x === 297) { - return ( -
- -
- ); - } -}; - -var AdsPEEditorTrayTabContentContainer135 = function(props) { - if (props.x === 298) { - return ; - } -}; - -var AdsPEMultiTabDrawer136 = function(props) { - if (props.x === 299) { - return ( -
-
- - - -
-
- - {null} -
-
- ); - } -}; - -var FluxContainer_AdsPEMultiTabDrawerContainer_137 = function(props) { - if (props.x === 300) { - return ; - } -}; - -var AdsPESimpleOrganizer138 = function(props) { - if (props.x === 309) { - return ( -
- - - -
- ); - } -}; - -var AdsPEOrganizerContainer139 = function(props) { - if (props.x === 310) { - return ( -
- -
- ); - } -}; - -var FixedDataTableColumnResizeHandle140 = function(props) { - if (props.x === 313) { - return ( -
-
-
- ); - } -}; - -var AdsPETableHeader141 = function(props) { - if (props.x === 315) { - return ( -
- - {"Campaigns"} -
- ); - } - if (props.x === 320) { - return ( -
- {null} - {"Performance"} -
- ); - } - if (props.x === 323) { - return ( -
- {null} - {"Overview"} -
- ); - } - if (props.x === 326) { - return ( -
- {null} - {"Toplines"} -
- ); - } - if (props.x === 329) { - return
; - } - if (props.x === 340) { - return ( -
- {null} - {"Campaign Name"} -
- ); - } - if (props.x === 346) { - return ( -
- - {null} -
- ); - } - if (props.x === 352) { - return ( -
- - {null} -
- ); - } - if (props.x === 357) { - return ( -
- {null} - {"Status"} -
- ); - } - if (props.x === 362) { - return ( -
- {null} - {"Delivery"} -
- ); - } - if (props.x === 369) { - return ( -
- {null} - {"Results"} -
- ); - } - if (props.x === 374) { - return ( -
- {null} - {"Cost"} -
- ); - } - if (props.x === 379) { - return ( -
- {null} - {"Reach"} -
- ); - } - if (props.x === 384) { - return ( -
- {null} - {"Impressions"} -
- ); - } - if (props.x === 389) { - return ( -
- {null} - {"Clicks"} -
- ); - } - if (props.x === 394) { - return ( -
- {null} - {"Avg. CPM"} -
- ); - } - if (props.x === 399) { - return ( -
- {null} - {"Avg. CPC"} -
- ); - } - if (props.x === 404) { - return ( -
- {null} - {"CTR %"} -
- ); - } - if (props.x === 409) { - return ( -
- {null} - {"Spent"} -
- ); - } - if (props.x === 414) { - return ( -
- {null} - {"Objective"} -
- ); - } - if (props.x === 419) { - return ( -
- {null} - {"Buying Type"} -
- ); - } - if (props.x === 424) { - return ( -
- {null} - {"Campaign ID"} -
- ); - } - if (props.x === 429) { - return ( -
- {null} - {"Start"} -
- ); - } - if (props.x === 434) { - return ( -
- {null} - {"End"} -
- ); - } - if (props.x === 439) { - return ( -
- {null} - {"Date created"} -
- ); - } - if (props.x === 444) { - return ( -
- {null} - {"Date last edited"} -
- ); - } - if (props.x === 449) { - return ( -
- {null} - {"Tags"} -
- ); - } - if (props.x === 452) { - return
; - } -}; - -var TransitionCell142 = function(props) { - if (props.x === 316) { - return ( -
-
-
- -
-
-
- ); - } - if (props.x === 321) { - return ( -
-
-
- -
-
-
- ); - } - if (props.x === 324) { - return ( -
-
-
- -
-
-
- ); - } - if (props.x === 327) { - return ( -
-
-
- -
-
-
- ); - } - if (props.x === 330) { - return ( -
-
-
- -
-
-
- ); - } - if (props.x === 338) { - return ( -
-
-
- -
-
-
- ); - } - if (props.x === 343) { - return ( -
-
-
- -
-
-
- ); - } - if (props.x === 349) { - return ( -
-
-
- -
-
-
- ); - } - if (props.x === 355) { - return ( -
-
-
- -
-
-
- ); - } - if (props.x === 360) { - return ( -
-
-
- -
-
-
- ); - } - if (props.x === 365) { - return ( -
-
-
- -
-
-
- ); - } - if (props.x === 372) { - return ( -
-
-
- -
-
-
- ); - } - if (props.x === 377) { - return ( -
-
-
- -
-
-
- ); - } - if (props.x === 382) { - return ( -
-
-
- -
-
-
- ); - } - if (props.x === 387) { - return ( -
-
-
- -
-
-
- ); - } - if (props.x === 392) { - return ( -
-
-
- -
-
-
- ); - } - if (props.x === 397) { - return ( -
-
-
- -
-
-
- ); - } - if (props.x === 402) { - return ( -
-
-
- -
-
-
- ); - } - if (props.x === 407) { - return ( -
-
-
- -
-
-
- ); - } - if (props.x === 412) { - return ( -
-
-
- -
-
-
- ); - } - if (props.x === 417) { - return ( -
-
-
- -
-
-
- ); - } - if (props.x === 422) { - return ( -
-
-
- -
-
-
- ); - } - if (props.x === 427) { - return ( -
-
-
- -
-
-
- ); - } - if (props.x === 432) { - return ( -
-
-
- -
-
-
- ); - } - if (props.x === 437) { - return ( -
-
-
- -
-
-
- ); - } - if (props.x === 442) { - return ( -
-
-
- -
-
-
- ); - } - if (props.x === 447) { - return ( -
-
-
- -
-
-
- ); - } - if (props.x === 450) { - return ( -
-
-
- -
-
-
- ); - } - if (props.x === 453) { - return ( -
-
-
- -
-
-
- ); - } -}; - -var FixedDataTableCell143 = function(props) { - if (props.x === 317) { - return ( -
- {undefined} - -
- ); - } - if (props.x === 322) { - return ( -
- {undefined} - -
- ); - } - if (props.x === 325) { - return ( -
- {undefined} - -
- ); - } - if (props.x === 328) { - return ( -
- {undefined} - -
- ); - } - if (props.x === 331) { - return ( -
- {undefined} - -
- ); - } - if (props.x === 339) { - return ( -
- {undefined} - -
- ); - } - if (props.x === 344) { - return ( -
-
-
-
- -
- ); - } - if (props.x === 350) { - return ( -
- {undefined} - -
- ); - } - if (props.x === 356) { - return ( -
- {undefined} - -
- ); - } - if (props.x === 361) { - return ( -
- {undefined} - -
- ); - } - if (props.x === 366) { - return ( -
-
-
-
- -
- ); - } - if (props.x === 373) { - return ( -
-
-
-
- -
- ); - } - if (props.x === 378) { - return ( -
-
-
-
- -
- ); - } - if (props.x === 383) { - return ( -
-
-
-
- -
- ); - } - if (props.x === 388) { - return ( -
-
-
-
- -
- ); - } - if (props.x === 393) { - return ( -
-
-
-
- -
- ); - } - if (props.x === 398) { - return ( -
-
-
-
- -
- ); - } - if (props.x === 403) { - return ( -
-
-
-
- -
- ); - } - if (props.x === 408) { - return ( -
-
-
-
- -
- ); - } - if (props.x === 413) { - return ( -
-
-
-
- -
- ); - } - if (props.x === 418) { - return ( -
-
-
-
- -
- ); - } - if (props.x === 423) { - return ( -
-
-
-
- -
- ); - } - if (props.x === 428) { - return ( -
-
-
-
- -
- ); - } - if (props.x === 433) { - return ( -
-
-
-
- -
- ); - } - if (props.x === 438) { - return ( -
-
-
-
- -
- ); - } - if (props.x === 443) { - return ( -
-
-
-
- -
- ); - } - if (props.x === 448) { - return ( -
-
-
-
- -
- ); - } - if (props.x === 451) { - return ( -
-
-
-
- -
- ); - } - if (props.x === 454) { - return ( -
- {undefined} - -
- ); - } -}; - -var FixedDataTableCellGroupImpl144 = function(props) { - if (props.x === 318) { - return ( -
- -
- ); - } - if (props.x === 332) { - return ( -
- - - - -
- ); - } - if (props.x === 367) { - return ( -
- - - - - - -
- ); - } - if (props.x === 455) { - return ( -
- - - - - - - - - - - - - - - - - - -
- ); - } -}; - -var FixedDataTableCellGroup145 = function(props) { - if (props.x === 319) { - return ( -
- -
- ); - } - if (props.x === 333) { - return ( -
- -
- ); - } - if (props.x === 368) { - return ( -
- -
- ); - } - if (props.x === 456) { - return ( -
- -
- ); - } -}; - -var FixedDataTableRowImpl146 = function(props) { - if (props.x === 334) { - return ( -
-
- - -
-
-
- ); - } - if (props.x === 457) { - return ( -
-
- - -
-
-
- ); - } -}; - -var FixedDataTableRow147 = function(props) { - if (props.x === 335) { - return ( -
- -
- ); - } - if (props.x === 458) { - return ( -
- -
- ); - } -}; - -var FixedDataTableAbstractSortableHeader148 = function(props) { - if (props.x === 341) { - return ( -
-
- {null} - -
-
- ); - } - if (props.x === 347) { - return ( -
-
- {null} - -
-
- ); - } - if (props.x === 353) { - return ( -
-
- {null} - -
-
- ); - } - if (props.x === 358) { - return ( -
-
- {null} - -
-
- ); - } - if (props.x === 363) { - return ( -
-
- {null} - -
-
- ); - } - if (props.x === 370) { - return ( -
-
- {null} - -
-
- ); - } - if (props.x === 375) { - return ( -
-
- {null} - -
-
- ); - } - if (props.x === 380) { - return ( -
-
- {null} - -
-
- ); - } - if (props.x === 385) { - return ( -
-
- {null} - -
-
- ); - } - if (props.x === 390) { - return ( -
-
- {null} - -
-
- ); - } - if (props.x === 395) { - return ( -
-
- {null} - -
-
- ); - } - if (props.x === 400) { - return ( -
-
- {null} - -
-
- ); - } - if (props.x === 405) { - return ( -
-
- {null} - -
-
- ); - } - if (props.x === 410) { - return ( -
-
- {null} - -
-
- ); - } - if (props.x === 415) { - return ( -
-
- {null} - -
-
- ); - } - if (props.x === 420) { - return ( -
-
- {null} - -
-
- ); - } - if (props.x === 425) { - return ( -
-
- {null} - -
-
- ); - } - if (props.x === 430) { - return ( -
-
- {null} - -
-
- ); - } - if (props.x === 435) { - return ( -
-
- {null} - -
-
- ); - } - if (props.x === 440) { - return ( -
-
- {null} - -
-
- ); - } - if (props.x === 445) { - return ( -
-
- {null} - -
-
- ); - } -}; - -var FixedDataTableSortableHeader149 = function(props) { - if (props.x === 342) { - return ; - } - if (props.x === 348) { - return ; - } - if (props.x === 354) { - return ; - } - if (props.x === 359) { - return ; - } - if (props.x === 364) { - return ; - } - if (props.x === 371) { - return ; - } - if (props.x === 376) { - return ; - } - if (props.x === 381) { - return ; - } - if (props.x === 386) { - return ; - } - if (props.x === 391) { - return ; - } - if (props.x === 396) { - return ; - } - if (props.x === 401) { - return ; - } - if (props.x === 406) { - return ; - } - if (props.x === 411) { - return ; - } - if (props.x === 416) { - return ; - } - if (props.x === 421) { - return ; - } - if (props.x === 426) { - return ; - } - if (props.x === 431) { - return ; - } - if (props.x === 436) { - return ; - } - if (props.x === 441) { - return ; - } - if (props.x === 446) { - return ; - } -}; - -var FixedDataTableBufferedRows150 = function(props) { - if (props.x === 459) { - return
; - } -}; - -var Scrollbar151 = function(props) { - if (props.x === 460) { - return null; - } - if (props.x === 461) { - return ( -
-
-
- ); - } -}; - -var HorizontalScrollbar152 = function(props) { - if (props.x === 462) { - return ( -
-
- -
-
- ); - } -}; - -var FixedDataTable153 = function(props) { - if (props.x === 463) { - return ( -
-
- - - - - {null} - {undefined} -
-
- - -
- ); - } -}; - -var TransitionTable154 = function(props) { - if (props.x === 464) { - return ; - } -}; - -var AdsSelectableFixedDataTable155 = function(props) { - if (props.x === 465) { - return ( -
- -
- ); - } -}; - -var AdsDataTableKeyboardSupportDecorator156 = function(props) { - if (props.x === 466) { - return ( -
- -
- ); - } -}; - -var AdsEditableDataTableDecorator157 = function(props) { - if (props.x === 467) { - return ( -
- -
- ); - } -}; - -var AdsPEDataTableContainer158 = function(props) { - if (props.x === 468) { - return ( -
- {null} - {null} - {null} - -
- ); - } -}; - -var AdsPECampaignGroupTableContainer159 = function(props) { - if (props.x === 470) { - return ; - } -}; - -var AdsPEManageAdsPaneContainer160 = function(props) { - if (props.x === 473) { - return ( -
- -
- -
-
- -
- - -
-
-
- -
- -
-
- -
-
-
- ); - } -}; - -var AdsPEContentContainer161 = function(props) { - if (props.x === 474) { - return ; - } -}; - -var FluxContainer_AdsPEWorkspaceContainer_162 = function(props) { - if (props.x === 477) { - return ( -
- - - {null} -
- ); - } -}; - -var FluxContainer_AdsSessionExpiredDialogContainer_163 = function(props) { - if (props.x === 478) { - return null; - } -}; - -var FluxContainer_AdsPEUploadDialogLazyContainer_164 = function(props) { - if (props.x === 479) { - return null; - } -}; - -var FluxContainer_DialogContainer_165 = function(props) { - if (props.x === 480) { - return null; - } -}; - -var AdsBugReportContainer166 = function(props) { - if (props.x === 481) { - return ; - } -}; - -var AdsPEAudienceSplittingDialog167 = function(props) { - if (props.x === 482) { - return null; - } -}; - -var AdsPEAudienceSplittingDialogContainer168 = function(props) { - if (props.x === 483) { - return ( -
- -
- ); - } -}; - -var FluxContainer_AdsRuleDialogBootloadContainer_169 = function(props) { - if (props.x === 484) { - return null; - } -}; - -var FluxContainer_AdsPECFTrayContainer_170 = function(props) { - if (props.x === 485) { - return null; - } -}; - -var FluxContainer_AdsPEDeleteDraftContainer_171 = function(props) { - if (props.x === 486) { - return null; - } -}; - -var FluxContainer_AdsPEInitialDraftPublishDialogContainer_172 = function(props) { - if (props.x === 487) { - return null; - } -}; - -var FluxContainer_AdsPEReachFrequencyStatusTransitionDialogBootloadContainer_173 = function(props) { - if (props.x === 488) { - return null; - } -}; - -var FluxContainer_AdsPEPurgeArchiveDialogContainer_174 = function(props) { - if (props.x === 489) { - return null; - } -}; - -var AdsPECreateDialogContainer175 = function(props) { - if (props.x === 490) { - return ; - } -}; - -var FluxContainer_AdsPEModalStatusContainer_176 = function(props) { - if (props.x === 491) { - return null; - } -}; - -var FluxContainer_AdsBrowserExtensionErrorDialogContainer_177 = function(props) { - if (props.x === 492) { - return null; - } -}; - -var FluxContainer_AdsPESortByErrorTipContainer_178 = function(props) { - if (props.x === 493) { - return null; - } -}; - -var LeadDownloadDialogSelector179 = function(props) { - if (props.x === 494) { - return null; - } -}; - -var FluxContainer_AdsPELeadDownloadDialogContainerClass_180 = function(props) { - if (props.x === 495) { - return ; - } -}; - -var AdsPEContainer181 = function(props) { - if (props.x === 496) { - return ( -
- - {null} - - - - - - - - - - - - - - - - - - - -
-
- ); - } -}; - -var Benchmark = function(props) { - if (props.x === undefined) { - return ; - } -}; - -this.Benchmark = Benchmark; - -})(this); - diff --git a/scripts/bench/bench-pe.js b/scripts/bench/bench-pe.js deleted file mode 100644 index 5518abefa5ac..000000000000 --- a/scripts/bench/bench-pe.js +++ /dev/null @@ -1,4235 +0,0 @@ -(function() { - -var ReactImage0 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 0) { - return ; - } - if (props.x === 15) { - return ; - } - if (props.x === 22) { - return ; - } - if (props.x === 29) { - return ; - } - if (props.x === 42) { - return ( - - {"Warning"} - - ); - } - if (props.x === 67) { - return ; - } - if (props.x === 70) { - return ; - } - if (props.x === 76) { - return ; - } - if (props.x === 79) { - return ; - } - if (props.x === 88) { - return ; - } - if (props.x === 91) { - return ; - } - if (props.x === 94) { - return ; - } - if (props.x === 98) { - return ; - } - if (props.x === 108) { - return ; - } - if (props.x === 111) { - return ; - } - if (props.x === 126) { - return ; - } - if (props.x === 127) { - return ; - } - if (props.x === 134) { - return ; - } - if (props.x === 135) { - return ; - } - if (props.x === 148) { - return ; - } - if (props.x === 152) { - return ; - } - if (props.x === 153) { - return ; - } - if (props.x === 160) { - return ; - } - if (props.x === 177) { - return ; - } - if (props.x === 186) { - return ; - } - if (props.x === 195) { - return ; - } - if (props.x === 198) { - return ; - } - if (props.x === 237) { - return ; - } - if (props.x === 266) { - return ; - } - if (props.x === 314) { - return ; - } - if (props.x === 345) { - return ; - } - if (props.x === 351) { - return ; - } - }, -}); - -var AbstractLink1 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 1) { - return ( - - {null} - - {null} - - {"Account:"} - {" "} - {"Dick Madanson (10149999073643408)"} - - - - - ); - } - if (props.x === 43) { - return ( - - {undefined} - {"Remove"} - {undefined} - - ); - } - if (props.x === 49) { - return ( - - - - ); - } - if (props.x === 128) { - return ( - - {null} - - - {"Search"} - - - - ); - } - if (props.x === 136) { - return ( - - {null} - - - {"Filters"} - - - - ); - } - if (props.x === 178) { - return ( - - {undefined} - {"Lifetime"} - - - ); - } - if (props.x === 207) { - return {"Create Ad Set"}; - } - if (props.x === 209) { - return {"View Ad Set"}; - } - if (props.x === 241) { - return {"Set a Limit"}; - } - if (props.x === 267) { - return ( - - {null} - - {null} - {"Links"} - - - - ); - } - }, -}); - -var Link2 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 2) { - return ; - } - if (props.x === 44) { - return ; - } - if (props.x === 50) { - return ; - } - if (props.x === 129) { - return ; - } - if (props.x === 137) { - return ; - } - if (props.x === 179) { - return ; - } - if (props.x === 208) { - return ; - } - if (props.x === 210) { - return ; - } - if (props.x === 242) { - return ; - } - if (props.x === 268) { - return ; - } - }, -}); - -var AbstractButton3 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 3) { - return ; - } - if (props.x === 20) { - return ( - - ); - } - if (props.x === 23) { - return ( - - ); - } - if (props.x === 45) { - return ; - } - if (props.x === 68) { - return ( - - ); - } - if (props.x === 71) { - return ( - - ); - } - if (props.x === 77) { - return ( - - ); - } - if (props.x === 80) { - return ( - - ); - } - if (props.x === 89) { - return ( - - ); - } - if (props.x === 92) { - return ( - - ); - } - if (props.x === 95) { - return ( - - ); - } - if (props.x === 99) { - return ( - - ); - } - if (props.x === 109) { - return ( - - ); - } - if (props.x === 112) { - return ( - - ); - } - if (props.x === 130) { - return ; - } - if (props.x === 138) { - return ; - } - if (props.x === 149) { - return ( - - ); - } - if (props.x === 156) { - return ( - - ); - } - if (props.x === 161) { - return ( - - ); - } - if (props.x === 180) { - return ; - } - if (props.x === 187) { - return ( - - ); - } - if (props.x === 269) { - return ; - } - if (props.x === 303) { - return ( - - ); - } - if (props.x === 305) { - return ( - - ); - } - if (props.x === 307) { - return ( - - ); - } - }, -}); - -var XUIButton4 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 4) { - return ; - } - if (props.x === 21) { - return ; - } - if (props.x === 24) { - return ; - } - if (props.x === 69) { - return ; - } - if (props.x === 72) { - return ; - } - if (props.x === 78) { - return ; - } - if (props.x === 81) { - return ; - } - if (props.x === 90) { - return ; - } - if (props.x === 93) { - return ; - } - if (props.x === 96) { - return ; - } - if (props.x === 100) { - return ; - } - if (props.x === 110) { - return ; - } - if (props.x === 113) { - return ; - } - if (props.x === 131) { - return ; - } - if (props.x === 139) { - return ; - } - if (props.x === 157) { - return ; - } - if (props.x === 162) { - return ; - } - if (props.x === 188) { - return ; - } - if (props.x === 270) { - return ; - } - if (props.x === 304) { - return ; - } - if (props.x === 306) { - return ; - } - if (props.x === 308) { - return ; - } - }, -}); - -var AbstractPopoverButton5 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 5) { - return ; - } - if (props.x === 132) { - return ; - } - if (props.x === 140) { - return ; - } - if (props.x === 271) { - return ; - } - }, -}); - -var ReactXUIPopoverButton6 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 6) { - return ; - } - if (props.x === 133) { - return ; - } - if (props.x === 141) { - return ; - } - if (props.x === 272) { - return ; - } - }, -}); - -var BIGAdAccountSelector7 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 7) { - return ( -
- - {null} -
- ); - } - }, -}); - -var FluxContainer_AdsPEBIGAdAccountSelectorContainer_8 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 8) { - return ; - } - }, -}); - -var ErrorBoundary9 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 9) { - return ; - } - if (props.x === 13) { - return ; - } - if (props.x === 27) { - return ; - } - if (props.x === 32) { - return ; - } - if (props.x === 38) { - return ; - } - if (props.x === 57) { - return ; - } - if (props.x === 60) { - return ; - } - if (props.x === 64) { - return ; - } - if (props.x === 124) { - return ; - } - if (props.x === 170) { - return ; - } - if (props.x === 175) { - return ; - } - if (props.x === 193) { - return ; - } - if (props.x === 301) { - return ; - } - if (props.x === 311) { - return ; - } - if (props.x === 471) { - return ; - } - if (props.x === 475) { - return ; - } - }, -}); - -var AdsErrorBoundary10 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 10) { - return ; - } - if (props.x === 14) { - return ; - } - if (props.x === 28) { - return ; - } - if (props.x === 33) { - return ; - } - if (props.x === 39) { - return ; - } - if (props.x === 58) { - return ; - } - if (props.x === 61) { - return ; - } - if (props.x === 65) { - return ; - } - if (props.x === 125) { - return ; - } - if (props.x === 171) { - return ; - } - if (props.x === 176) { - return ; - } - if (props.x === 194) { - return ; - } - if (props.x === 302) { - return ; - } - if (props.x === 312) { - return ; - } - if (props.x === 472) { - return ; - } - if (props.x === 476) { - return ; - } - }, -}); - -var AdsPENavigationBar11 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 11) { - return
; - } - }, -}); - -var FluxContainer_AdsPENavigationBarContainer_12 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 12) { - return ; - } - }, -}); - -var AdsPEDraftSyncStatus13 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 16) { - return ( -
- - - -
- ); - } - }, -}); - -var FluxContainer_AdsPEDraftSyncStatusContainer_14 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 17) { - return ; - } - }, -}); - -var AdsPEDraftErrorsStatus15 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 18) { - return null; - } - }, -}); - -var FluxContainer_viewFn_16 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 19) { - return ; - } - }, -}); - -var AdsPEPublishButton17 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 25) { - return ( -
- - - {null} - - -
- ); - } - }, -}); - -var FluxContainer_AdsPEPublishButtonContainer_18 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 26) { - return ; - } - }, -}); - -var InlineBlock19 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 30) { - return ( -
- -
- ); - } - if (props.x === 73) { - return ( -
- -
- ); - } - if (props.x === 82) { - return ( -
- -
- ); - } - if (props.x === 101) { - return ( -
- -
- ); - } - if (props.x === 273) { - return ( -
- -
- ); - } - }, -}); - -var ReactPopoverMenu20 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 31) { - return ; - } - if (props.x === 74) { - return ; - } - if (props.x === 83) { - return ; - } - if (props.x === 102) { - return ; - } - if (props.x === 274) { - return ; - } - }, -}); - -var LeftRight21 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 34) { - return ( -
-
-
-
- -
-
- -
-
-
-
-
-
- -
-
- -
-
-
-
- ); - } - if (props.x === 232) { - return ( -
-
- -
-
-
-
{"Clicks to Website"}
-
-
-
- ); - } - if (props.x === 235) { - return ( -
-
- -
-
-
-
{"Auction"}
-
-
-
- ); - } - if (props.x === 245) { - return ( -
-
- -
-
-
- -
-
-
- ); - } - if (props.x === 277) { - return ( -
-
- -
-
- -
-
- ); - } - }, -}); - -var AdsUnifiedNavigationLocalNav22 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 35) { - return ( -
- -
- ); - } - }, -}); - -var XUIDialog23 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 36) { - return null; - } - }, -}); - -var AdsPEResetDialog24 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 37) { - return ( - - - - ); - } - }, -}); - -var AdsPETopNav25 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 40) { - return ( -
- - -
- ); - } - }, -}); - -var FluxContainer_AdsPETopNavContainer_26 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 41) { - return ; - } - }, -}); - -var XUIAbstractGlyphButton27 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 46) { - return ; - } - if (props.x === 150) { - return ; - } - }, -}); - -var XUICloseButton28 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 47) { - return ; - } - if (props.x === 151) { - return ; - } - }, -}); - -var XUIText29 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 48) { - return {"Ads Manager"}; - } - if (props.x === 205) { - return {"Editing Campaign"}; - } - if (props.x === 206) { - return {"Test Campaign"}; - } - }, -}); - -var XUINotice30 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 51) { - return ( -
- - -
- {"Please go to "} - - {" to set up a payment method for this ad account."} -
-
- ); - } - }, -}); - -var ReactCSSTransitionGroupChild31 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 52) { - return ; - } - }, -}); - -var ReactTransitionGroup32 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 53) { - return ( - - - - ); - } - }, -}); - -var ReactCSSTransitionGroup33 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 54) { - return ; - } - }, -}); - -var AdsPETopError34 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 55) { - return ( -
- -
- ); - } - }, -}); - -var FluxContainer_AdsPETopErrorContainer_35 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 56) { - return ; - } - }, -}); - -var FluxContainer_AdsGuidanceChannel_36 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 59) { - return null; - } - }, -}); - -var ResponsiveBlock37 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 62) { - return ( -
- {[ - , - , - ]} -
- -
-
- ); - } - if (props.x === 469) { - return ( -
- -
- -
-
- ); - } - }, -}); - -var FluxContainer_AdsBulkEditDialogContainer_38 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 63) { - return null; - } - }, -}); - -var Column39 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 66) { - return ( -
-
- {null} - {null} -
- {null} -
-
- ); - } - }, -}); - -var XUIButtonGroup40 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 75) { - return ( -
- - -
- ); - } - if (props.x === 84) { - return ( -
- - -
- ); - } - if (props.x === 97) { - return ( -
- - - -
- ); - } - if (props.x === 117) { - return ( -
- - - -
- ); - } - }, -}); - -var AdsPEEditToolbarButton41 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 85) { - return ; - } - }, -}); - -var FluxContainer_AdsPEEditCampaignGroupToolbarButtonContainer_42 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 86) { - return ; - } - }, -}); - -var FluxContainer_AdsPEEditToolbarButtonContainer_43 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 87) { - return ; - } - }, -}); - -var AdsPEExportImportMenu44 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 103) { - return ; - } - }, -}); - -var FluxContainer_AdsPECustomizeExportContainer_45 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 104) { - return null; - } - }, -}); - -var AdsPEExportAsTextDialog46 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 105) { - return null; - } - }, -}); - -var FluxContainer_AdsPEExportAsTextDialogContainer_47 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 106) { - return ; - } - }, -}); - -var AdsPEExportImportMenuContainer48 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 107) { - return ( - - - - - {null} - {null} - - ); - } - }, -}); - -var Constructor49 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 114) { - return null; - } - if (props.x === 142) { - return null; - } - if (props.x === 143) { - return null; - } - if (props.x === 183) { - return null; - } - }, -}); - -var TagSelectorPopover50 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 115) { - return ( - - - - - ); - } - }, -}); - -var AdsPECampaignGroupTagContainer51 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 116) { - return ; - } - }, -}); - -var AdsRuleToolbarMenu52 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 118) { - return null; - } - }, -}); - -var FluxContainer_AdsPERuleToolbarMenuContainer_53 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 119) { - return ; - } - }, -}); - -var FillColumn54 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 120) { - return ( -
- - - - - {null} - - - - - -
- ); - } - }, -}); - -var Layout55 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 121) { - return ( -
- - -
- ); - } - }, -}); - -var AdsPEMainPaneToolbar56 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 122) { - return ( -
- -
- ); - } - }, -}); - -var AdsPECampaignGroupToolbarContainer57 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 123) { - return ; - } - }, -}); - -var AdsPEFiltersPopover58 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 144) { - return ( - - - - {[ - , - , - ]} - - ); - } - }, -}); - -var AbstractCheckboxInput59 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 145) { - return ( - - ); - } - if (props.x === 336) { - return ( - - ); - } - }, -}); - -var XUICheckboxInput60 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 146) { - return ; - } - if (props.x === 337) { - return ; - } - }, -}); - -var InputLabel61 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 147) { - return ( -
- - -
- ); - } - }, -}); - -var AdsPopoverLink62 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 154) { - return ( - - - - - - {null} - - ); - } - if (props.x === 238) { - return ( - - - - - - {null} - - ); - } - }, -}); - -var AdsHelpLink63 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 155) { - return ; - } - if (props.x === 239) { - return ; - } - }, -}); - -var BUIFilterTokenInput64 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 158) { - return ( -
-
- -
- {"Campaigns: (1)"} - -
-
- -
- ); - } - }, -}); - -var BUIFilterToken65 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 159) { - return ( -
-
-
- -
{"Campaigns:"}
-
{"(1)"}
-
- {null} - -
- -
- ); - } - }, -}); - -var BUIFilterTokenCreateButton66 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 163) { - return ( -
- -
- ); - } - }, -}); - -var BUIFilterTokenizer67 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 164) { - return ( -
- {undefined} - {[]} - - - {null} -
-
- ); - } - }, -}); - -var XUIAmbientNUX68 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 165) { - return null; - } - if (props.x === 189) { - return null; - } - if (props.x === 200) { - return null; - } - }, -}); - -var XUIAmbientNUX69 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 166) { - return ; - } - if (props.x === 190) { - return ; - } - if (props.x === 201) { - return ; - } - }, -}); - -var AdsPEAmbientNUXMegaphone70 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 167) { - return ( - - - - - ); - } - }, -}); - -var AdsPEFilters71 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 168) { - return ( -
- -
- -
- - {""} - -
- ); - } - }, -}); - -var AdsPEFilterContainer72 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 169) { - return ; - } - }, -}); - -var AdsPETablePager73 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 172) { - return null; - } - }, -}); - -var AdsPECampaignGroupTablePagerContainer74 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 173) { - return ; - } - }, -}); - -var AdsPETablePagerContainer75 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 174) { - return ; - } - }, -}); - -var ReactXUIError76 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 181) { - return ; - } - if (props.x === 216) { - return ( -
- {null} - {null} -
-
-
- {null} - - {null} -
-
-
-
- {null} -
- ); - } - if (props.x === 221) { - return ; - } - if (props.x === 250) { - return ; - } - if (props.x === 280) { - return ; - } - }, -}); - -var BUIPopoverButton77 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 182) { - return ; - } - }, -}); - -var BUIDateRangePicker78 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 184) { - return ( - - - {[ - , - ]} - - ); - } - }, -}); - -var AdsPEStatsRangePicker79 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 185) { - return ; - } - }, -}); - -var AdsPEStatRange80 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 191) { - return ( -
- {"Stats:"} - - - - - {[ - , - ]} -
- ); - } - }, -}); - -var AdsPEStatRangeContainer81 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 192) { - return ; - } - }, -}); - -var AdsPESideTrayTabButton82 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 196) { - return ( -
- -
-
-
- ); - } - if (props.x === 199) { - return ( -
- -
-
-
- ); - } - if (props.x === 203) { - return null; - } - }, -}); - -var AdsPEEditorTrayTabButton83 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 197) { - return ; - } - }, -}); - -var AdsPEInsightsTrayTabButton84 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 202) { - return ( - - - - - ); - } - }, -}); - -var AdsPENekoDebuggerTrayTabButton85 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 204) { - return ; - } - }, -}); - -var AdsPEEditorChildLink86 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 211) { - return ( -
- - {"|"} - -
- ); - } - }, -}); - -var AdsPEEditorChildLinkContainer87 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 212) { - return ; - } - }, -}); - -var AdsPEHeaderSection88 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 213) { - return ( -
-
- -
-
- -
-
- -
- ); - } - }, -}); - -var AdsPECampaignGroupHeaderSectionContainer89 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 214) { - return ; - } - }, -}); - -var AdsEditorLoadingErrors90 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 215) { - return null; - } - }, -}); - -var AdsTextInput91 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 217) { - return ; - } - }, -}); - -var BUIFormElement92 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 218) { - return ( -
-
- -
-
-
- - - {null} - -
- {null} -
-
- ); - } - }, -}); - -var BUIForm93 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 219) { - return ( -
- -
- ); - } - }, -}); - -var XUICard94 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 220) { - return ( -
- -
- ); - } - if (props.x === 249) { - return ( -
- - -
- ); - } - if (props.x === 279) { - return ( -
- -
- ); - } - }, -}); - -var AdsCard95 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 222) { - return ; - } - if (props.x === 251) { - return ; - } - if (props.x === 281) { - return ; - } - }, -}); - -var AdsEditorNameSection96 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 223) { - return ; - } - }, -}); - -var AdsCampaignGroupNameSectionContainer97 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 224) { - return ; - } - }, -}); - -var _render98 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 225) { - return ; - } - }, -}); - -var AdsPluginWrapper99 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 226) { - return <_render98 x={225} />; - } - if (props.x === 255) { - return <_render111 x={254} />; - } - if (props.x === 258) { - return <_render113 x={257} />; - } - if (props.x === 287) { - return <_render127 x={286} />; - } - if (props.x === 291) { - return <_render130 x={290} />; - } - }, -}); - -var XUICardHeaderTitle100 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 227) { - return ( - - {"Campaign Details"} - {null} - - - ); - } - if (props.x === 265) { - return ( - - {[ - - {"Campaign ID"} - {": "} - {"98010048849317"} - , -
- -
, - ]} - {null} - -
- ); - } - }, -}); - -var XUICardSection101 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 228) { - return ( -
- {[ - , - ]} - {undefined} - {undefined} -
-
- ); - } - if (props.x === 247) { - return ( -
-
- - - - {null} - {null} -
-
- ); - } - }, -}); - -var XUICardHeader102 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 229) { - return ; - } - }, -}); - -var AdsCardHeader103 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 230) { - return ; - } - }, -}); - -var AdsLabeledField104 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 231) { - return ( -
- - {null} -
-
- ); - } - if (props.x === 234) { - return ( -
- - {null} -
-
- ); - } - if (props.x === 240) { - return ( -
- - -
-
- ); - } - }, -}); - -var FlexibleBlock105 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 233) { - return ; - } - if (props.x === 236) { - return ; - } - if (props.x === 246) { - return ; - } - }, -}); - -var AdsBulkCampaignSpendCapField106 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 243) { - return ( -
- {""} - - {" (optional)"} -
- ); - } - }, -}); - -var FluxContainer_AdsCampaignGroupSpendCapContainer_107 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 244) { - return ; - } - }, -}); - -var AdsCardSection108 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 248) { - return ; - } - }, -}); - -var AdsEditorCampaignGroupDetailsSection109 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 252) { - return ; - } - }, -}); - -var AdsEditorCampaignGroupDetailsSectionContainer110 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 253) { - return ; - } - }, -}); - -var _render111 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 254) { - return ; - } - }, -}); - -var FluxContainer_AdsEditorToplineDetailsSectionContainer_112 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 256) { - return null; - } - }, -}); - -var _render113 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 257) { - return ; - } - }, -}); - -var AdsStickyArea114 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 259) { - return ( -
-
-
- ); - } - if (props.x === 292) { - return ( -
-
- {[ -
- -
, - ]} -
-
- ); - } - }, -}); - -var FluxContainer_AdsEditorColumnContainer_115 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 260) { - return ( -
- {[ -
- -
, -
- -
, -
- -
, - ]} - -
- ); - } - if (props.x === 293) { - return ( -
- {[ -
- -
, - ]} - -
- ); - } - }, -}); - -var BUISwitch116 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 261) { - return ( -
-
-
-
- {null} -
- ); - } - }, -}); - -var AdsStatusSwitchInternal117 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 262) { - return ; - } - }, -}); - -var AdsStatusSwitch118 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 263) { - return ; - } - }, -}); - -var FluxContainer_AdsCampaignGroupStatusSwitchContainer_119 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 264) { - return ; - } - }, -}); - -var AdsLinksMenu120 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 275) { - return ; - } - }, -}); - -var FluxContainer_AdsPluginizedLinksMenuContainer_121 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 276) { - return ( -
- {null} - -
- ); - } - }, -}); - -var AdsCardLeftRightHeader122 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 278) { - return ; - } - }, -}); - -var AdsPEIDSection123 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 282) { - return ; - } - }, -}); - -var FluxContainer_AdsPECampaignGroupIDSectionContainer_124 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 283) { - return ; - } - }, -}); - -var DeferredComponent125 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 284) { - return ; - } - }, -}); - -var BootloadedComponent126 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 285) { - return ; - } - }, -}); - -var _render127 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 286) { - return ; - } - }, -}); - -var AdsEditorErrorsCard128 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 288) { - return null; - } - }, -}); - -var FluxContainer_FunctionalContainer_129 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 289) { - return ; - } - }, -}); - -var _render130 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 290) { - return ; - } - }, -}); - -var AdsEditorMultiColumnLayout131 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 294) { - return ( -
-
-
- -
-
- -
-
- -
-
-
-
-
- ); - } - }, -}); - -var AdsPECampaignGroupEditor132 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 295) { - return ( -
- - -
- ); - } - }, -}); - -var AdsPECampaignGroupEditorContainer133 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 296) { - return ; - } - }, -}); - -var AdsPESideTrayTabContent134 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 297) { - return ( -
- -
- ); - } - }, -}); - -var AdsPEEditorTrayTabContentContainer135 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 298) { - return ; - } - }, -}); - -var AdsPEMultiTabDrawer136 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 299) { - return ( -
-
- - - -
-
- - {null} -
-
- ); - } - }, -}); - -var FluxContainer_AdsPEMultiTabDrawerContainer_137 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 300) { - return ; - } - }, -}); - -var AdsPESimpleOrganizer138 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 309) { - return ( -
- - - -
- ); - } - }, -}); - -var AdsPEOrganizerContainer139 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 310) { - return ( -
- -
- ); - } - }, -}); - -var FixedDataTableColumnResizeHandle140 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 313) { - return ( -
-
-
- ); - } - }, -}); - -var AdsPETableHeader141 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 315) { - return ( -
- - {"Campaigns"} -
- ); - } - if (props.x === 320) { - return ( -
- {null} - {"Performance"} -
- ); - } - if (props.x === 323) { - return ( -
- {null} - {"Overview"} -
- ); - } - if (props.x === 326) { - return ( -
- {null} - {"Toplines"} -
- ); - } - if (props.x === 329) { - return
; - } - if (props.x === 340) { - return ( -
- {null} - {"Campaign Name"} -
- ); - } - if (props.x === 346) { - return ( -
- - {null} -
- ); - } - if (props.x === 352) { - return ( -
- - {null} -
- ); - } - if (props.x === 357) { - return ( -
- {null} - {"Status"} -
- ); - } - if (props.x === 362) { - return ( -
- {null} - {"Delivery"} -
- ); - } - if (props.x === 369) { - return ( -
- {null} - {"Results"} -
- ); - } - if (props.x === 374) { - return ( -
- {null} - {"Cost"} -
- ); - } - if (props.x === 379) { - return ( -
- {null} - {"Reach"} -
- ); - } - if (props.x === 384) { - return ( -
- {null} - {"Impressions"} -
- ); - } - if (props.x === 389) { - return ( -
- {null} - {"Clicks"} -
- ); - } - if (props.x === 394) { - return ( -
- {null} - {"Avg. CPM"} -
- ); - } - if (props.x === 399) { - return ( -
- {null} - {"Avg. CPC"} -
- ); - } - if (props.x === 404) { - return ( -
- {null} - {"CTR %"} -
- ); - } - if (props.x === 409) { - return ( -
- {null} - {"Spent"} -
- ); - } - if (props.x === 414) { - return ( -
- {null} - {"Objective"} -
- ); - } - if (props.x === 419) { - return ( -
- {null} - {"Buying Type"} -
- ); - } - if (props.x === 424) { - return ( -
- {null} - {"Campaign ID"} -
- ); - } - if (props.x === 429) { - return ( -
- {null} - {"Start"} -
- ); - } - if (props.x === 434) { - return ( -
- {null} - {"End"} -
- ); - } - if (props.x === 439) { - return ( -
- {null} - {"Date created"} -
- ); - } - if (props.x === 444) { - return ( -
- {null} - {"Date last edited"} -
- ); - } - if (props.x === 449) { - return ( -
- {null} - {"Tags"} -
- ); - } - if (props.x === 452) { - return
; - } - }, -}); - -var TransitionCell142 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 316) { - return ( -
-
-
- -
-
-
- ); - } - if (props.x === 321) { - return ( -
-
-
- -
-
-
- ); - } - if (props.x === 324) { - return ( -
-
-
- -
-
-
- ); - } - if (props.x === 327) { - return ( -
-
-
- -
-
-
- ); - } - if (props.x === 330) { - return ( -
-
-
- -
-
-
- ); - } - if (props.x === 338) { - return ( -
-
-
- -
-
-
- ); - } - if (props.x === 343) { - return ( -
-
-
- -
-
-
- ); - } - if (props.x === 349) { - return ( -
-
-
- -
-
-
- ); - } - if (props.x === 355) { - return ( -
-
-
- -
-
-
- ); - } - if (props.x === 360) { - return ( -
-
-
- -
-
-
- ); - } - if (props.x === 365) { - return ( -
-
-
- -
-
-
- ); - } - if (props.x === 372) { - return ( -
-
-
- -
-
-
- ); - } - if (props.x === 377) { - return ( -
-
-
- -
-
-
- ); - } - if (props.x === 382) { - return ( -
-
-
- -
-
-
- ); - } - if (props.x === 387) { - return ( -
-
-
- -
-
-
- ); - } - if (props.x === 392) { - return ( -
-
-
- -
-
-
- ); - } - if (props.x === 397) { - return ( -
-
-
- -
-
-
- ); - } - if (props.x === 402) { - return ( -
-
-
- -
-
-
- ); - } - if (props.x === 407) { - return ( -
-
-
- -
-
-
- ); - } - if (props.x === 412) { - return ( -
-
-
- -
-
-
- ); - } - if (props.x === 417) { - return ( -
-
-
- -
-
-
- ); - } - if (props.x === 422) { - return ( -
-
-
- -
-
-
- ); - } - if (props.x === 427) { - return ( -
-
-
- -
-
-
- ); - } - if (props.x === 432) { - return ( -
-
-
- -
-
-
- ); - } - if (props.x === 437) { - return ( -
-
-
- -
-
-
- ); - } - if (props.x === 442) { - return ( -
-
-
- -
-
-
- ); - } - if (props.x === 447) { - return ( -
-
-
- -
-
-
- ); - } - if (props.x === 450) { - return ( -
-
-
- -
-
-
- ); - } - if (props.x === 453) { - return ( -
-
-
- -
-
-
- ); - } - }, -}); - -var FixedDataTableCell143 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 317) { - return ( -
- {undefined} - -
- ); - } - if (props.x === 322) { - return ( -
- {undefined} - -
- ); - } - if (props.x === 325) { - return ( -
- {undefined} - -
- ); - } - if (props.x === 328) { - return ( -
- {undefined} - -
- ); - } - if (props.x === 331) { - return ( -
- {undefined} - -
- ); - } - if (props.x === 339) { - return ( -
- {undefined} - -
- ); - } - if (props.x === 344) { - return ( -
-
-
-
- -
- ); - } - if (props.x === 350) { - return ( -
- {undefined} - -
- ); - } - if (props.x === 356) { - return ( -
- {undefined} - -
- ); - } - if (props.x === 361) { - return ( -
- {undefined} - -
- ); - } - if (props.x === 366) { - return ( -
-
-
-
- -
- ); - } - if (props.x === 373) { - return ( -
-
-
-
- -
- ); - } - if (props.x === 378) { - return ( -
-
-
-
- -
- ); - } - if (props.x === 383) { - return ( -
-
-
-
- -
- ); - } - if (props.x === 388) { - return ( -
-
-
-
- -
- ); - } - if (props.x === 393) { - return ( -
-
-
-
- -
- ); - } - if (props.x === 398) { - return ( -
-
-
-
- -
- ); - } - if (props.x === 403) { - return ( -
-
-
-
- -
- ); - } - if (props.x === 408) { - return ( -
-
-
-
- -
- ); - } - if (props.x === 413) { - return ( -
-
-
-
- -
- ); - } - if (props.x === 418) { - return ( -
-
-
-
- -
- ); - } - if (props.x === 423) { - return ( -
-
-
-
- -
- ); - } - if (props.x === 428) { - return ( -
-
-
-
- -
- ); - } - if (props.x === 433) { - return ( -
-
-
-
- -
- ); - } - if (props.x === 438) { - return ( -
-
-
-
- -
- ); - } - if (props.x === 443) { - return ( -
-
-
-
- -
- ); - } - if (props.x === 448) { - return ( -
-
-
-
- -
- ); - } - if (props.x === 451) { - return ( -
-
-
-
- -
- ); - } - if (props.x === 454) { - return ( -
- {undefined} - -
- ); - } - }, -}); - -var FixedDataTableCellGroupImpl144 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 318) { - return ( -
- -
- ); - } - if (props.x === 332) { - return ( -
- - - - -
- ); - } - if (props.x === 367) { - return ( -
- - - - - - -
- ); - } - if (props.x === 455) { - return ( -
- - - - - - - - - - - - - - - - - - -
- ); - } - }, -}); - -var FixedDataTableCellGroup145 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 319) { - return ( -
- -
- ); - } - if (props.x === 333) { - return ( -
- -
- ); - } - if (props.x === 368) { - return ( -
- -
- ); - } - if (props.x === 456) { - return ( -
- -
- ); - } - }, -}); - -var FixedDataTableRowImpl146 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 334) { - return ( -
-
- - -
-
-
- ); - } - if (props.x === 457) { - return ( -
-
- - -
-
-
- ); - } - }, -}); - -var FixedDataTableRow147 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 335) { - return ( -
- -
- ); - } - if (props.x === 458) { - return ( -
- -
- ); - } - }, -}); - -var FixedDataTableAbstractSortableHeader148 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 341) { - return ( -
-
- {null} - -
-
- ); - } - if (props.x === 347) { - return ( -
-
- {null} - -
-
- ); - } - if (props.x === 353) { - return ( -
-
- {null} - -
-
- ); - } - if (props.x === 358) { - return ( -
-
- {null} - -
-
- ); - } - if (props.x === 363) { - return ( -
-
- {null} - -
-
- ); - } - if (props.x === 370) { - return ( -
-
- {null} - -
-
- ); - } - if (props.x === 375) { - return ( -
-
- {null} - -
-
- ); - } - if (props.x === 380) { - return ( -
-
- {null} - -
-
- ); - } - if (props.x === 385) { - return ( -
-
- {null} - -
-
- ); - } - if (props.x === 390) { - return ( -
-
- {null} - -
-
- ); - } - if (props.x === 395) { - return ( -
-
- {null} - -
-
- ); - } - if (props.x === 400) { - return ( -
-
- {null} - -
-
- ); - } - if (props.x === 405) { - return ( -
-
- {null} - -
-
- ); - } - if (props.x === 410) { - return ( -
-
- {null} - -
-
- ); - } - if (props.x === 415) { - return ( -
-
- {null} - -
-
- ); - } - if (props.x === 420) { - return ( -
-
- {null} - -
-
- ); - } - if (props.x === 425) { - return ( -
-
- {null} - -
-
- ); - } - if (props.x === 430) { - return ( -
-
- {null} - -
-
- ); - } - if (props.x === 435) { - return ( -
-
- {null} - -
-
- ); - } - if (props.x === 440) { - return ( -
-
- {null} - -
-
- ); - } - if (props.x === 445) { - return ( -
-
- {null} - -
-
- ); - } - }, -}); - -var FixedDataTableSortableHeader149 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 342) { - return ; - } - if (props.x === 348) { - return ; - } - if (props.x === 354) { - return ; - } - if (props.x === 359) { - return ; - } - if (props.x === 364) { - return ; - } - if (props.x === 371) { - return ; - } - if (props.x === 376) { - return ; - } - if (props.x === 381) { - return ; - } - if (props.x === 386) { - return ; - } - if (props.x === 391) { - return ; - } - if (props.x === 396) { - return ; - } - if (props.x === 401) { - return ; - } - if (props.x === 406) { - return ; - } - if (props.x === 411) { - return ; - } - if (props.x === 416) { - return ; - } - if (props.x === 421) { - return ; - } - if (props.x === 426) { - return ; - } - if (props.x === 431) { - return ; - } - if (props.x === 436) { - return ; - } - if (props.x === 441) { - return ; - } - if (props.x === 446) { - return ; - } - }, -}); - -var FixedDataTableBufferedRows150 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 459) { - return
; - } - }, -}); - -var Scrollbar151 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 460) { - return null; - } - if (props.x === 461) { - return ( -
-
-
- ); - } - }, -}); - -var HorizontalScrollbar152 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 462) { - return ( -
-
- -
-
- ); - } - }, -}); - -var FixedDataTable153 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 463) { - return ( -
-
- - - - - {null} - {undefined} -
-
- - -
- ); - } - }, -}); - -var TransitionTable154 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 464) { - return ; - } - }, -}); - -var AdsSelectableFixedDataTable155 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 465) { - return ( -
- -
- ); - } - }, -}); - -var AdsDataTableKeyboardSupportDecorator156 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 466) { - return ( -
- -
- ); - } - }, -}); - -var AdsEditableDataTableDecorator157 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 467) { - return ( -
- -
- ); - } - }, -}); - -var AdsPEDataTableContainer158 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 468) { - return ( -
- {null} - {null} - {null} - -
- ); - } - }, -}); - -var AdsPECampaignGroupTableContainer159 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 470) { - return ; - } - }, -}); - -var AdsPEManageAdsPaneContainer160 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 473) { - return ( -
- -
- -
-
- -
- - -
-
-
- -
- -
-
- -
-
-
- ); - } - }, -}); - -var AdsPEContentContainer161 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 474) { - return ; - } - }, -}); - -var FluxContainer_AdsPEWorkspaceContainer_162 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 477) { - return ( -
- - - {null} -
- ); - } - }, -}); - -var FluxContainer_AdsSessionExpiredDialogContainer_163 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 478) { - return null; - } - }, -}); - -var FluxContainer_AdsPEUploadDialogLazyContainer_164 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 479) { - return null; - } - }, -}); - -var FluxContainer_DialogContainer_165 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 480) { - return null; - } - }, -}); - -var AdsBugReportContainer166 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 481) { - return ; - } - }, -}); - -var AdsPEAudienceSplittingDialog167 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 482) { - return null; - } - }, -}); - -var AdsPEAudienceSplittingDialogContainer168 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 483) { - return ( -
- -
- ); - } - }, -}); - -var FluxContainer_AdsRuleDialogBootloadContainer_169 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 484) { - return null; - } - }, -}); - -var FluxContainer_AdsPECFTrayContainer_170 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 485) { - return null; - } - }, -}); - -var FluxContainer_AdsPEDeleteDraftContainer_171 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 486) { - return null; - } - }, -}); - -var FluxContainer_AdsPEInitialDraftPublishDialogContainer_172 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 487) { - return null; - } - }, -}); - -var FluxContainer_AdsPEReachFrequencyStatusTransitionDialogBootloadContainer_173 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 488) { - return null; - } - }, -}); - -var FluxContainer_AdsPEPurgeArchiveDialogContainer_174 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 489) { - return null; - } - }, -}); - -var AdsPECreateDialogContainer175 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 490) { - return ; - } - }, -}); - -var FluxContainer_AdsPEModalStatusContainer_176 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 491) { - return null; - } - }, -}); - -var FluxContainer_AdsBrowserExtensionErrorDialogContainer_177 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 492) { - return null; - } - }, -}); - -var FluxContainer_AdsPESortByErrorTipContainer_178 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 493) { - return null; - } - }, -}); - -var LeadDownloadDialogSelector179 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 494) { - return null; - } - }, -}); - -var FluxContainer_AdsPELeadDownloadDialogContainerClass_180 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 495) { - return ; - } - }, -}); - -var AdsPEContainer181 = React.createClass({ - render: function() { - var props = this.props; - if (props.x === 496) { - return ( -
- - {null} - - - - - - - - - - - - - - - - - - - -
-
- ); - } - }, -}); - -var Benchmark = React.createClass({ - render: function() { - var props = this.props; - if (props.x === undefined) { - return ; - } - }, -}); - -this.Benchmark = Benchmark; - -})(this); diff --git a/scripts/bench/benchmark.js b/scripts/bench/benchmark.js new file mode 100644 index 000000000000..27af0ac43cd5 --- /dev/null +++ b/scripts/bench/benchmark.js @@ -0,0 +1,131 @@ +'use strict'; + +const Lighthouse = require('lighthouse'); +const ChromeLauncher = require('lighthouse/lighthouse-cli/chrome-launcher.js').ChromeLauncher; +const stats = require('stats-analysis'); +const config = require('lighthouse/lighthouse-core/config/perf.json'); +const spawn = require('child_process').spawn; +const os = require('os'); + +const timesToRun = 10; + +function wait(val) { + return new Promise(resolve => setTimeout(resolve, val)); +} + +async function runScenario(benchmark, launcher) { + const results = await Lighthouse(`http://localhost:8080/${benchmark}/`, { + output: 'json', + disableCpuThrottling: false, + disableNetworkThrottling: false, + }, config); + const perfMarkings = results.audits['user-timings'].extendedInfo.value; + const entries = perfMarkings + .filter(marker => !marker.isMark) + .map(({ duration, name }) => ({ + entry: name, + time: duration, + })); + entries.push({ + entry: 'First Meaningful Paint', + time: results.audits['first-meaningful-paint'].rawValue, + }); + return entries; +} + +function bootstrap(data) { + const len = data.length; + const arr = Array(len); + for (let j = 0; j < len; j++) { + arr[j] = data[(Math.random() * len) | 0]; + } + return arr; +} + +function calculateStandardErrorOfMean(data) { + const means = []; + for (let i = 0; i < 10000; i++) { + means.push(stats.mean(bootstrap(data))); + } + return stats.stdev(means); +} + +function calculateAverages(runs) { + const data = []; + const averages = []; + + runs.forEach((entries, x) => { + entries.forEach(({ entry, time }, i) => { + if (i >= averages.length) { + data.push([time]); + averages.push({ + entry, + mean: 0, + sem: 0, + }); + } else { + data[i].push(time); + if (x === runs.length - 1) { + const dataWithoutOutliers = stats.filterMADoutliers(data[i]); + averages[i].mean = stats.mean(dataWithoutOutliers); + averages[i].sem = calculateStandardErrorOfMean(data[i]); + } + } + }); + }); + + return averages; +} + +async function initChrome() { + const platform = os.platform(); + + if (platform === 'linux') { + process.env.XVFBARGS = '-screen 0, 1024x768x16'; + process.env.LIGHTHOUSE_CHROMIUM_PATH = 'chromium-browser'; + const child = spawn('xvfb start', [{ detached: true, stdio: ['ignore'] }]); + child.unref(); + // wait for chrome to load then continue + await wait(3000); + return child; + } +} + +async function launchChrome(headless) { + let launcher; + try { + launcher = new ChromeLauncher({ + additionalFlags: [headless ? '--headless' : ''], + }); + await launcher.isDebuggerReady(); + } catch (e) { + return launcher.run(); + } + return launcher; +} + +async function runBenchmark(benchmark, headless) { + const results = { + runs: [], + averages: [], + }; + + await initChrome(); + + for (let i = 0; i < timesToRun; i++) { + let launcher = await launchChrome(headless); + + results.runs.push(await runScenario(benchmark, launcher)); + // add a delay or sometimes it confuses lighthouse and it hangs + await wait(500); + try { + await launcher.kill(); + } catch (e) {} + } + + results.averages = calculateAverages(results.runs); + return results; +} + +module.exports = runBenchmark; + diff --git a/scripts/bench/benchmarks/hacker-news/benchmark.js b/scripts/bench/benchmarks/hacker-news/benchmark.js new file mode 100644 index 000000000000..c83f90b57d5c --- /dev/null +++ b/scripts/bench/benchmarks/hacker-news/benchmark.js @@ -0,0 +1,229 @@ +(function() { + 'use strict'; + + const e = React.createElement; + + function timeAge(time) { + const now = new Date().getTime() / 1000; + const minutes = (now - time) / 60; + + if (minutes < 60) { + return Math.round(minutes) + ' minutes ago'; + } + return Math.round(minutes / 60) + ' hours ago'; + } + + function getHostUrl(url) { + return (url + '') + .replace('https://', '') + .replace('http://', '') + .split('/')[0] + } + + function HeaderBar() { + return e('tr', { + style: { + backgroundColor: '#222', + }, + }, e('table', { + style: { + padding: 4, + }, + width: '100%', + cellSpacing: 0, + cellPadding: 0, + }, e('tbody', null, + e('tr', null, + e('td', { + style: { + width: 18, + paddingRight: 4, + }, + }, + e('a', { + href: '#', + }, + e('img', { + src: 'logo.png', + width: 16, + height: 16, + style: { + border: '1px solid #00d8ff', + }, + }) + ) + ), + e('td', { + style: { + lineHeight: '12pt', + }, + height: 10, + }, + e('span', { + className: 'pagetop', + }, + e('b', { className: 'hnname' }, 'React HN Benchmark'), + e('a', { href: '#' }, 'new'), + ' | ', + e('a', { href: '#' }, 'comments'), + ' | ', + e('a', { href: '#' }, 'show'), + ' | ', + e('a', { href: '#' }, 'ask'), + ' | ', + e('a', { href: '#' }, 'jobs'), + ' | ', + e('a', { href: '#' }, 'submit') + ) + ) + ) + ) + )); + } + + function Story({ story, rank }) { + return [ + e('tr', { + className: 'athing', + }, + e('td', { + style: { + verticalAlign: 'top', + textAlign: 'right', + }, + className: 'title', + }, + e('span', { + className: 'rank', + }, `${rank}.`) + ), + e('td', { + className: 'votelinks', + style: { + verticalAlign: 'top', + }, + }, + e('center', null, + e('a', { + href: '#', + }, + e('div', { + className: 'votearrow', + title: 'upvote', + }) + ) + ) + ), + e('td', { + className: 'title', + }, + e('a', { + href: '#', + className: 'storylink', + }, + story.title + ), + story.url ? ( + e('span', { + className: 'sitebit comhead', + }, + ' (', + e('a', { + href: '#', + }, + getHostUrl(story.url) + ), + ')' + ) + ) : null + ) + ), + e('tr', null, + e('td', { + colSpan: 2, + }), + e('td', { + className: 'subtext', + }, + e('span', { + className: 'score', + }, `${story.score} points`), + ' by ', + e('a', { + href: '#', + className: 'hnuser', + }, story.by), + ' ', + e('span', { + className: 'age', + }, + e('a', { + href: '#', + }, timeAge(story.time)) + ), + ' | ', + e('a', { + href: '#', + }, 'hide'), + ' | ', + e('a', { + href: '#', + }, `${ story.descendants || 0 } comments`) + ) + ), + e('tr', { + style: { + height: 5, + }, + className: 'spacer', + }) + ]; + } + + function StoryList({ stories }) { + return e('tr', null, + e('td', null, + e('table', { + cellPadding: 0, + cellSpacing: 0, + classList: 'itemlist', + }, + e('tbody', null, + stories.map((story, i) => + e(Story, { story, rank: ++i, key: story.id }) + ) + ) + ) + ) + ); + } + + function App({ stories }) { + return e('center', null, + e('table', { + id: 'hnmain', + border: 0, + cellPadding: 0, + cellSpacing: 0, + width: '85%', + style: { + 'background-color': '#f6f6ef', + }, + }, e('tbody', null, + e(HeaderBar, null), + e('tr', { height: 10 }), + e(StoryList, { + stories, + }) + )) + ); + } + + const app = document.getElementById('app'); + + window.render = function render() { + ReactDOM.render(React.createElement(App, { + stories: window.stories + }), app); + } +})(); \ No newline at end of file diff --git a/scripts/bench/benchmarks/hacker-news/build.js b/scripts/bench/benchmarks/hacker-news/build.js new file mode 100644 index 000000000000..1a8e253bef83 --- /dev/null +++ b/scripts/bench/benchmarks/hacker-news/build.js @@ -0,0 +1,19 @@ +'use strict'; + +const { + join, +} = require('path'); + +async function build(reactPath, asyncCopyTo) { + // copy the UMD bundles + await asyncCopyTo( + join(reactPath, 'build', 'dist', 'react.production.min.js'), + join(__dirname, 'react.production.min.js') + ); + await asyncCopyTo( + join(reactPath, 'build', 'dist', 'react-dom.production.min.js'), + join(__dirname, 'react-dom.production.min.js') + ); +} + +module.exports = build; diff --git a/scripts/bench/benchmarks/hacker-news/generate.js b/scripts/bench/benchmarks/hacker-news/generate.js new file mode 100644 index 000000000000..b4f260ebaec4 --- /dev/null +++ b/scripts/bench/benchmarks/hacker-news/generate.js @@ -0,0 +1,26 @@ +'use strict'; + +const fetch = require('node-fetch'); +const { writeFileSync } = require('fs'); +const stories = 50; + +async function getStory(id) { + const storyRes = await fetch(`https://hacker-news.firebaseio.com/v0/item/${id}.json`); + return await storyRes.json(); +} + +async function getTopStories() { + const topStoriesRes = await fetch('https://hacker-news.firebaseio.com/v0/topstories.js'); + const topStoriesIds = await topStoriesRes.json(); + + const topStories = []; + for (let i = 0; i < stories; i++) { + const topStoriesId = topStoriesIds[i]; + + topStories.push(await getStory(topStoriesId)); + } + + writeFileSync('top-stories.json', `window.stories = ${JSON.stringify(topStories)}`); +} + +getTopStories(); \ No newline at end of file diff --git a/scripts/bench/benchmarks/hacker-news/grayarrow.gif b/scripts/bench/benchmarks/hacker-news/grayarrow.gif new file mode 100644 index 000000000000..888485fa5b02 Binary files /dev/null and b/scripts/bench/benchmarks/hacker-news/grayarrow.gif differ diff --git a/scripts/bench/benchmarks/hacker-news/index.html b/scripts/bench/benchmarks/hacker-news/index.html new file mode 100644 index 000000000000..deddb9262030 --- /dev/null +++ b/scripts/bench/benchmarks/hacker-news/index.html @@ -0,0 +1,37 @@ + + + React Hacker News Benchmark + + + +
+ + + + + + + + + + + \ No newline at end of file diff --git a/scripts/bench/benchmarks/hacker-news/logo.png b/scripts/bench/benchmarks/hacker-news/logo.png new file mode 100644 index 000000000000..01b0f34e5539 Binary files /dev/null and b/scripts/bench/benchmarks/hacker-news/logo.png differ diff --git a/scripts/bench/benchmarks/hacker-news/style.css b/scripts/bench/benchmarks/hacker-news/style.css new file mode 100644 index 000000000000..588bd99ae997 --- /dev/null +++ b/scripts/bench/benchmarks/hacker-news/style.css @@ -0,0 +1,57 @@ +body { + font-family: Verdana, Geneva, sans-serif +} + +.pagetop { + font-family: Verdana, Geneva, sans-serif; + font-size: 10pt; + color: #00d8ff; +} + +.hnname { + margin-right: 10px; + color: #fff; +} + +.pagetop a, .pagetop a:visited { + color: #00d8ff; + text-decoration: none; +} + +.title { + font-family: Verdana, Geneva, sans-serif; + font-size: 10pt; + color: #828282; +} + +.subtext { + font-family: Verdana, Geneva, sans-serif; + font-size: 7pt; + color: #828282; +} + +.comhead a:link, .subtext a, .subtext a:visited { + color: #828282; + text-decoration: none; +} + +.votearrow { + width: 10px; + height: 10px; + border: 0px; + margin: 3px 2px 6px; + background: url(grayarrow.gif) no-repeat; +} + +.title, .title a { + font-family: Verdana, Geneva, sans-serif; + font-size: 10pt; + color: #000; + text-decoration: none; +} + +.comhead, .comhead a { + font-family: Verdana, Geneva, sans-serif; + font-size: 8pt; + color: #828282; +} \ No newline at end of file diff --git a/scripts/bench/benchmarks/hacker-news/top-stories.js b/scripts/bench/benchmarks/hacker-news/top-stories.js new file mode 100644 index 000000000000..5682e5aff3ef --- /dev/null +++ b/scripts/bench/benchmarks/hacker-news/top-stories.js @@ -0,0 +1 @@ +window.stories = [{"by":"rendx","descendants":49,"id":14201562,"kids":[14201704,14202297,14202233,14201771,14201765,14201897,14201750,14201913,14201854,14201667,14201759,14202073],"score":186,"time":1493197629,"title":"Postal: Open source mail delivery platform, alternative to Mailgun or Sendgrid","type":"story","url":"https://github.com/atech/postal"},{"by":"rabyss","descendants":4,"id":14202124,"kids":[14202293,14202249],"score":16,"time":1493205989,"title":"Show HN: BreakLock – A hybrid of Mastermind and the Android pattern lock","type":"story","url":"https://maxwellito.github.io/breaklock/"},{"by":"morid1n","descendants":137,"id":14200563,"kids":[14201274,14200711,14201147,14201365,14201499,14200618,14201169,14200911,14200734,14201083,14200706,14200785,14201032],"score":178,"time":1493183234,"title":"My Hackintosh Hardware Spec – clean, based on a 2013 iMac","type":"story","url":"https://infinitediaries.net/my-exact-hackintosh-spec/"},{"by":"robertwiblin","descendants":203,"id":14196731,"kids":[14201298,14201838,14201381,14197574,14201398,14199764,14198491,14197000,14198224,14200614,14201983,14200697,14199252,14201214,14198923,14200224,14197509,14200859,14200064,14200114,14197256,14197220,14200653,14197186,14199258,14197155,14197344,14198361,14197969,14199813,14197259,14197503],"score":562,"time":1493145853,"title":"Evidence-based advice we've found on how to be successful in a job","type":"story","url":"https://80000hours.org/career-guide/how-to-be-successful/"},{"by":"ryan_j_naughton","descendants":565,"id":14196812,"kids":[14198306,14197339,14200899,14198165,14198750,14202199,14201432,14197619,14197471,14201113,14202214,14202043,14197313,14197751,14197332,14198050,14201616,14197404,14199730,14198007,14197358,14197283,14200959,14197891,14198203,14197312,14200796,14201528,14197249,14198271,14197989,14198842,14197205,14199148,14197458,14200457,14197330,14199993,14197855,14200102,14197378,14199315,14198240,14198397,14199326,14200159,14198798,14201296,14198173,14197323,14197383,14197459,14197275,14198305,14198005,14198015,14199380,14199079,14198413,14197334,14197327,14197234],"score":385,"time":1493146342,"title":"Is Every Speed Limit Too Low?","type":"story","url":"https://priceonomics.com/is-every-speed-limit-too-low/"},{"by":"monort","descendants":63,"id":14196322,"kids":[14197628,14200026,14197457,14197486,14202126,14201266,14197227,14199404,14199338,14196382,14200598,14197377,14199689,14198538,14196905,14200404,14198781,14197278,14197888,14197742,14197764],"score":316,"time":1493143464,"title":"Experimental Nighttime Photography with Nexus and Pixel","type":"story","url":"https://research.googleblog.com/2017/04/experimental-nighttime-photography-with.html"},{"by":"networked","descendants":9,"id":14199028,"kids":[14201588,14200361,14200314,14200338],"score":121,"time":1493161601,"title":"JPEG Huffman Coding Tutorial","type":"story","url":"http://www.impulseadventure.com/photo/jpeg-huffman-coding.html"},{"by":"jasontan","id":14202227,"score":1,"time":1493207865,"title":"Are you adept at understanding concurrency problems? Sift Science is hiring","type":"job","url":"https://boards.greenhouse.io/siftscience/jobs/550699#.WPUZhlMrLfY"},{"by":"pouwerkerk","descendants":80,"id":14196077,"kids":[14199434,14196279,14196604,14197440,14201734,14200922,14200452,14197115,14199837,14199894,14196596,14198243,14196565,14197400,14197049,14197686,14198545,14198475],"score":717,"time":1493142008,"title":"Painting with Code: Introducing our new open source library React Sketch.app","type":"story","url":"http://airbnb.design/painting-with-code/"},{"by":"mromnia","descendants":16,"id":14201670,"kids":[14201835,14202115,14202176,14201890,14202325,14201859,14202158,14201763,14201902],"score":62,"time":1493198949,"title":"How to mod a Porsche 911 to run Doom [video]","type":"story","url":"https://www.youtube.com/watch?v=NRMpNA86e8Q"},{"by":"rbanffy","descendants":16,"id":14192383,"kids":[14197494,14201805,14197484],"score":194,"time":1493118160,"title":"Go programming language secure coding practices guide","type":"story","url":"https://github.com/Checkmarx/Go-SCP"},{"by":"intous","descendants":0,"id":14200446,"score":39,"time":1493181245,"title":"Building Functional Chatbot for Messenger with Ruby on Rails","type":"story","url":"https://tutorials.botsfloor.com/chatbot-development-tutorial-how-to-build-a-fully-functional-weather-bot-on-facebook-messenger-c94ac7c59185"},{"by":"nanospeck","descendants":23,"id":14201207,"kids":[14202252,14201646,14201620,14202076,14201511,14201324,14201940,14201425,14201505,14201304,14201435,14201287,14201739,14202031,14202018],"score":57,"text":"This question was asked on both 2015 & 2016 in HN. I would like to ask it again today to know what are the newest options for this.

Q: What would you recommend as a reasonably priced (sub 150$) quad-copter/drone, that has a camera, the ability to be programmed (so that I can process video/write my own stability algorithms for it), good range, and reasonable flying time?\nIn the event nothing fits that price point, any pointers on what the state of the art is?

Thanks!","time":1493192641,"title":"Ask HN (again): What is the best affordable programmable drone?","type":"story"},{"by":"geuis","descendants":57,"id":14196708,"kids":[14197480,14198523,14198705,14200969,14200079,14197605,14198979,14202203,14197679,14198461,14200389,14198065,14197883,14197908],"score":123,"time":1493145655,"title":"Hackpad shutting down","type":"story","url":"https://hackpad.com/"},{"by":"jfoutz","descendants":55,"id":14195956,"kids":[14199594,14196972,14202101,14198197,14196771,14197326,14196956,14200842,14201529,14198581,14196777,14200177,14200422,14198571],"score":167,"time":1493141367,"title":"Linkerd 1.0","type":"story","url":"https://blog.buoyant.io/2017/04/25/announcing-linkerd-1.0/index.html"},{"by":"DavidBuchanan","descendants":19,"id":14199364,"kids":[14199735,14200889,14202245,14200205,14200104,14201697,14200061,14199996,14199867],"score":66,"time":1493164755,"title":"Show HN: TARDIS – Warp a process's perspective of time by hooking syscalls","type":"story","url":"https://github.com/DavidBuchanan314/TARDIS"},{"by":"rchen8","descendants":121,"id":14195664,"kids":[14196654,14196206,14196677,14197035,14196041,14196399,14196200,14196140,14196216,14196421,14196370,14196146,14197601,14197107,14196866,14196691,14197704,14196772,14200089,14198588,14196937,14198530,14197119,14197247,14198632,14196137,14200323,14196346],"score":486,"time":1493139957,"title":"How to Become Well-Connected","type":"story","url":"http://firstround.com/review/how-to-become-insanely-well-connected/"},{"by":"dbrgn","descendants":89,"id":14191186,"kids":[14200855,14200035,14200110,14201408,14202159,14197876,14200348,14198720,14198183,14199824,14198281,14201643,14201591,14199541,14198423,14201738,14200037,14201349,14200028,14201206,14197995,14197830,14199603],"score":135,"time":1493100791,"title":"How to Say (Almost) Everything in a Hundred-Word Language (2015)","type":"story","url":"https://www.theatlantic.com/technology/archive/2015/07/toki-pona-smallest-language/398363/?single_page=true"},{"by":"runesoerensen","descendants":62,"id":14198866,"kids":[14199494,14199495,14200288,14201118,14199599],"score":155,"time":1493160263,"title":"Nginx 1.13 released with TLS 1.3 support","type":"story","url":"http://mailman.nginx.org/pipermail/nginx-announce/2017/000195.html"},{"by":"bcherny","descendants":20,"id":14199299,"kids":[14200694,14201832,14200517,14201760,14200966,14200558,14201815,14201231,14201073,14201124],"score":54,"time":1493163960,"title":"Show HN: JSONSchema to TypeScript compiler","type":"story","url":"https://github.com/bcherny/json-schema-to-typescript"},{"by":"tormeh","descendants":37,"id":14198557,"kids":[14201027,14199082,14201023,14201160,14200367,14200647],"score":70,"time":1493158034,"title":"A practitioner’s guide to hedonism (2007)","type":"story","url":"https://www.1843magazine.com/story/a-practitioners-guide-to-hedonism"},{"by":"nickreiner","descendants":33,"id":14199125,"kids":[14202332,14201634,14201200,14201215,14201157,14201898,14201969,14201125],"score":52,"time":1493162517,"title":"Best Linux Distros for Gaming in 2017","type":"story","url":"https://thishosting.rocks/best-linux-distros-for-gaming/"},{"by":"BinaryIdiot","descendants":170,"id":14200486,"kids":[14200680,14200677,14201515,14200793,14200534,14200908,14200649,14200633,14200701,14202295,14200578,14200709,14200580,14201107,14201779,14200773,14200804,14200720,14202060,14200948,14200903,14200748,14200875,14200750,14200821,14200756,14201707,14201689,14200669,14200997,14200818,14201586,14200603,14201054,14201457,14200616,14201095,14200915,14200878,14200629,14201523,14200620,14202099],"score":316,"time":1493181945,"title":"Suicide of an Uber engineer: Widow blames job stress","type":"story","url":"http://www.sfchronicle.com/business/article/Suicide-of-an-Uber-engineer-widow-blames-job-11095807.php?t=7e40d1f554&cmpid=fb-premium&cmpid=twitter-premium"},{"by":"catc","descendants":34,"id":14195522,"kids":[14202316,14202278,14197167,14199152,14202077,14197239,14197721,14197632,14197219,14198296,14197245,14197201,14197403,14198051,14196747],"score":87,"time":1493139414,"title":"Show HN: React Timekeeper – Time picker based on the style of Google Keep","type":"story","url":"https://catc.github.io/react-timekeeper/"},{"by":"Integer","descendants":152,"id":14192353,"kids":[14197671,14197754,14199091,14198533,14201249,14198626,14198263,14198009,14195130,14199551,14197663,14198285,14199611,14199835,14197482,14198924,14198943],"score":273,"time":1493117771,"title":"Windows Is Bloated, Thanks to Adobe’s Extensible Metadata Platform","type":"story","url":"https://www.thurrott.com/windows/109962/windows-bloated-thanks-adobes-extensible-metadata-platform"},{"by":"craigcannon","descendants":23,"id":14197852,"kids":[14200024,14199986,14202106,14198011,14199228,14202138,14198917,14198607],"score":58,"time":1493153342,"title":"New England Lost Ski Areas Project","type":"story","url":"http://www.nelsap.org/"},{"by":"golfer","descendants":105,"id":14198229,"kids":[14200202,14198948,14199770,14198634,14200263,14198797,14198919,14200447,14198645,14199267,14199124,14198833,14199059],"score":282,"time":1493155745,"title":"Uber must turn over information about its acquisition of Otto to Waymo","type":"story","url":"https://techcrunch.com/2017/04/25/uber-must-turn-over-information-about-its-acquisition-of-otto-to-waymo-court-rules/"},{"by":"JoshTriplett","descendants":116,"id":14198403,"kids":[14199771,14199980,14198664,14198764,14201086,14200307,14199294,14198860,14198817],"score":139,"time":1493156882,"title":"Shutting down public FTP services","type":"story","url":"https://lists.debian.org/debian-announce/2017/msg00001.html"},{"by":"mabynogy","descendants":50,"id":14191577,"kids":[14194021,14195402,14193886,14193792,14194355,14197136,14200386,14194151,14193989,14193798,14194042,14197100,14198984,14193925,14194170],"score":365,"time":1493107104,"title":"A Primer on Bézier Curves","type":"story","url":"https://pomax.github.io/bezierinfo#preface"},{"by":"robertothais","descendants":29,"id":14192946,"kids":[14202311,14202299,14201900,14200029,14198260,14198605,14201850,14199858,14198223,14198610],"score":61,"time":1493124627,"title":"Consciousness as a State of Matter (2014)","type":"story","url":"https://arxiv.org/abs/1401.1219"},{"by":"leephillips","descendants":2,"id":14202078,"kids":[14202122],"score":5,"time":1493205152,"title":"The Republican Lawmaker Who Secretly Created Reddit’s Women-Hating ‘Red Pill’","type":"story","url":"http://www.thedailybeast.com/articles/2017/04/25/the-republican-lawmaker-who-secretly-created-reddit-s-women-hating-red-pill.html"},{"by":"anguswithgusto","descendants":55,"id":14196325,"kids":[14197131,14196789,14197299,14197466,14196737,14199929,14197550,14197511,14196888,14200109,14197101],"score":80,"time":1493143475,"title":"Gett in advanced talks to buy Juno for $250M as Uber rivals consolidate","type":"story","url":"https://techcrunch.com/2017/04/25/gett-in-advanced-talks-to-buy-juno-for-250m-as-uber-rivals-consolidate/"},{"by":"fabuzaid","descendants":2,"id":14196339,"kids":[14201557,14201170],"score":46,"time":1493143560,"title":"Implementing a Fast Research Compiler in Rust","type":"story","url":"http://dawn.cs.stanford.edu/blog/weld.html"},{"by":"bluesilver07","descendants":61,"id":14196154,"kids":[14197614,14196853,14197074,14197050,14200090,14197731,14196352,14197442],"score":72,"time":1493142448,"title":"Xenko Game Engine 2.0 released","type":"story","url":"http://xenko.com/blog/release-xenko-2-0-0/"},{"by":"molecule","descendants":254,"id":14189392,"kids":[14190198,14190800,14193591,14190274,14189796,14190118,14190405,14190006,14189430,14190244,14189877,14190064,14190211,14189918,14190071,14191312,14195969,14190542,14194775,14189900,14190032,14189847,14192128,14191737,14191047,14190992,14192759,14191405,14190815,14194136,14190737,14190552,14191385,14189816,14191316,14193780,14193979,14190768,14192973,14191217,14190879,14190780,14189914,14190925,14192906,14190528,14189893,14190007,14189929,14190049,14191859,14191304,14190177,14193355,14193352,14190324,14190846,14189803],"score":630,"time":1493076480,"title":"Robert M. Pirsig has died","type":"story","url":"http://www.npr.org/sections/thetwo-way/2017/04/24/525443040/-zen-and-the-art-of-motorcycle-maintenance-author-robert-m-pirsig-dies-at-88"},{"by":"artsandsci","descendants":67,"id":14194422,"kids":[14199418,14196266,14197226,14196647,14196324,14201761,14196265,14195599,14199054,14196057],"score":127,"time":1493134376,"title":"An extra-uterine system to physiologically support the extreme premature lamb","type":"story","url":"https://www.nature.com/articles/ncomms15112"},{"by":"miobrien","descendants":9,"id":14198261,"kids":[14199610,14199447,14199862,14201753,14199068],"score":30,"time":1493155969,"title":"Prior Indigenous Technological Species","type":"story","url":"https://arxiv.org/abs/1704.07263"},{"by":"zdw","descendants":2,"id":14199197,"kids":[14200610],"score":12,"time":1493163087,"title":"Should Curve25519 keys be validated?","type":"story","url":"https://research.kudelskisecurity.com/2017/04/25/should-ecdh-keys-be-validated/"},{"by":"spearo77","descendants":213,"id":14189688,"kids":[14191654,14192373,14190683,14192095,14191856,14190771,14190570,14190599,14190721,14192049,14189694,14191430,14193610,14190543,14190372,14191818,14192171,14192177,14192135,14191483,14190560,14190341,14190362,14190452,14192563,14190458,14195245,14190809,14192706,14192959,14190636,14190634,14190368,14191163,14191379,14190668,14191673,14190884,14192565,14190480,14190442],"score":447,"time":1493079289,"title":"WikiTribune – Evidence-based journalism","type":"story","url":"https://www.wikitribune.com"},{"by":"adbrebs","descendants":294,"id":14182262,"kids":[14183335,14183715,14182725,14183897,14185812,14184510,14182468,14183231,14182580,14183996,14182449,14185671,14182428,14182666,14186599,14182519,14185571,14185159,14182636,14185864,14188340,14183433,14183146,14184034,14184363,14183368,14183098,14182495,14182753,14184720,14188085,14187692,14183633,14188137,14182606,14186796,14196166,14185084,14185899,14188219,14186885,14183406,14185561,14183388,14191457,14183281,14183399,14183674,14183236,14183990,14183760,14183248,14184114,14183318,14183457,14186509,14186900,14186695,14188405,14184636,14184630,14188301,14184144,14183023,14184555,14185946,14184611,14184490,14183653,14183881,14182715,14184440,14182573,14183251,14184962,14187249,14182545,14192314],"score":1356,"time":1493014335,"title":"Lyrebird – An API to copy the voice of anyone","type":"story","url":"https://lyrebird.ai/demo"},{"by":"mathgenius","descendants":6,"id":14192442,"kids":[14197265,14195645],"score":43,"time":1493118936,"title":"Quantum – Open journal for quantum science","type":"story","url":"http://quantum-journal.org/papers/"},{"by":"tjalfi","descendants":5,"id":14190937,"kids":[14199744,14197114,14190946],"score":107,"time":1493097061,"title":"A Seven Dimensional Analysis of Hashing Methods [pdf]","type":"story","url":"http://www.vldb.org/pvldb/vol9/p96-richter.pdf"},{"by":"mxstbr","descendants":0,"id":14196935,"score":24,"time":1493147015,"title":"One GraphQL Client for JavaScript, iOS, and Android","type":"story","url":"https://dev-blog.apollodata.com/one-graphql-client-for-javascript-ios-and-android-64993c1b7991"},{"by":"uptown","descendants":166,"id":14192817,"kids":[14197690,14195597,14196750,14195237,14196320,14195150,14198816,14194916,14197746,14196332,14194695,14196726,14194947,14199715,14195059,14195778,14196204,14200435,14194780,14195030,14198452,14199023,14194852,14197577,14197778,14195361,14196368,14194948,14199024,14195060,14199498],"score":226,"time":1493123621,"title":"How Yahoo Killed Flickr (2012)","type":"story","url":"https://gizmodo.com/5910223/how-yahoo-killed-flickr-and-lost-the-internet"},{"by":"mattklein123","descendants":42,"id":14194026,"kids":[14194573,14195577,14194430,14195407,14194569,14195298,14200054,14194456,14198329,14199198],"score":167,"time":1493131921,"title":"Envoy: 7 months later","type":"story","url":"https://eng.lyft.com/envoy-7-months-later-41986c2fd443"},{"by":"misnamed","descendants":2,"id":14191333,"kids":[14197296],"score":29,"time":1493103250,"title":"Modern Hieroglyphs: Binary Logic Behind the Universal “Power Symbol”","type":"story","url":"http://99percentinvisible.org/article/modern-hieroglyphics-binary-logic-behind-universal-power-symbol/"},{"by":"LaFolle","descendants":92,"id":14191681,"kids":[14192477,14194490,14192316,14193364,14192065,14193499,14194324,14192622,14192020,14195866,14192496,14196391,14192138,14192714,14195151,14195094,14192110,14192155],"score":138,"time":1493108371,"title":"Feynman Algorithm (2014)","type":"story","url":"http://wiki.c2.com/?FeynmanAlgorithm"},{"by":"Thevet","descendants":18,"id":14190736,"kids":[14197744,14195753,14197880,14197735,14195874,14197023,14196660],"score":81,"time":1493093860,"title":"The legend of the Legion","type":"story","url":"https://aeon.co/essays/why-young-men-queue-up-to-die-in-the-french-foreign-legion"},{"by":"bufordsharkley","descendants":92,"id":14197013,"kids":[14197983,14197168,14197701,14198239,14197514,14198064,14197476,14198489,14197761,14197080,14198905,14198068,14198579],"score":69,"time":1493147532,"title":"Cracking the Mystery of Labor's Falling Share of GDP","type":"story","url":"https://www.bloomberg.com/view/articles/2017-04-24/cracking-the-mystery-of-labor-s-falling-share-of-gdp"},{"by":"rbanffy","descendants":27,"id":14198470,"kids":[14199443,14201987,14199461,14199729,14201519,14198762,14199524],"score":52,"time":1493157378,"title":"How the Internet Gave Mail-Order Brides the Power","type":"story","url":"https://backchannel.com/how-the-internet-gave-mail-order-brides-the-power-1af8c8a40562"}] \ No newline at end of file diff --git a/scripts/bench/bench-pe-es5.js b/scripts/bench/benchmarks/pe-class-components/benchmark.js similarity index 62% rename from scripts/bench/bench-pe-es5.js rename to scripts/bench/benchmarks/pe-class-components/benchmark.js index 9abd28ce8a03..26db466c59e2 100644 --- a/scripts/bench/bench-pe-es5.js +++ b/scripts/bench/benchmarks/pe-class-components/benchmark.js @@ -1,23 +1,21 @@ (function () { + 'use strict'; - var ReactImage0 = React.createClass({ - displayName: "ReactImage0", - - render: function () { - var props = this.props; - if (props.x === 0) { + class ReactImage0 extends React.Component { + render() { + if (this.props.x === 0) { return React.createElement("i", { alt: "", className: "_3-99 img sp_i534r85sjIn sx_538591", src: null }); } - if (props.x === 15) { + if (this.props.x === 15) { return React.createElement("i", { className: "_3ut_ img sp_i534r85sjIn sx_e8ac93", src: null, alt: "" }); } - if (props.x === 22) { + if (this.props.x === 22) { return React.createElement("i", { alt: "", className: "_3-8_ img sp_i534r85sjIn sx_7b15bc", src: null }); } - if (props.x === 29) { + if (this.props.x === 29) { return React.createElement("i", { className: "_1m1s _4540 _p img sp_i534r85sjIn sx_f40b1c", src: null, alt: "" }); } - if (props.x === 42) { + if (this.props.x === 42) { return React.createElement( "i", { alt: "Warning", className: "_585p img sp_i534r85sjIn sx_20273d", src: null }, @@ -28,99 +26,96 @@ ) ); } - if (props.x === 67) { + if (this.props.x === 67) { return React.createElement("i", { alt: "", className: "_3-8_ img sp_i534r85sjIn sx_b5d079", src: null }); } - if (props.x === 70) { + if (this.props.x === 70) { return React.createElement("i", { src: null, alt: "", className: "img sp_i534r85sjIn sx_29f8c9" }); } - if (props.x === 76) { + if (this.props.x === 76) { return React.createElement("i", { alt: "", className: "_3-8_ img sp_i534r85sjIn sx_ef6a9c", src: null }); } - if (props.x === 79) { + if (this.props.x === 79) { return React.createElement("i", { src: null, alt: "", className: "img sp_i534r85sjIn sx_6f8c43" }); } - if (props.x === 88) { + if (this.props.x === 88) { return React.createElement("i", { src: null, alt: "", className: "img sp_i534r85sjIn sx_e94a2d" }); } - if (props.x === 91) { + if (this.props.x === 91) { return React.createElement("i", { src: null, alt: "", className: "img sp_i534r85sjIn sx_7ed7d4" }); } - if (props.x === 94) { + if (this.props.x === 94) { return React.createElement("i", { src: null, alt: "", className: "img sp_i534r85sjIn sx_930440" }); } - if (props.x === 98) { + if (this.props.x === 98) { return React.createElement("i", { src: null, alt: "", className: "img sp_i534r85sjIn sx_750c83" }); } - if (props.x === 108) { + if (this.props.x === 108) { return React.createElement("i", { src: null, alt: "", className: "img sp_i534r85sjIn sx_73c1bb" }); } - if (props.x === 111) { + if (this.props.x === 111) { return React.createElement("i", { src: null, alt: "", className: "img sp_i534r85sjIn sx_29f28d" }); } - if (props.x === 126) { + if (this.props.x === 126) { return React.createElement("i", { src: null, alt: "", className: "_3-8_ img sp_i534r85sjIn sx_91c59e" }); } - if (props.x === 127) { + if (this.props.x === 127) { return React.createElement("i", { alt: "", className: "_3-99 img sp_i534r85sjIn sx_538591", src: null }); } - if (props.x === 134) { + if (this.props.x === 134) { return React.createElement("i", { src: null, alt: "", className: "_3-8_ img sp_i534r85sjIn sx_c8eb75" }); } - if (props.x === 135) { + if (this.props.x === 135) { return React.createElement("i", { alt: "", className: "_3-99 img sp_i534r85sjIn sx_538591", src: null }); } - if (props.x === 148) { + if (this.props.x === 148) { return React.createElement("i", { className: "_3yz6 _5whs img sp_i534r85sjIn sx_896996", src: null, alt: "" }); } - if (props.x === 152) { + if (this.props.x === 152) { return React.createElement("i", { className: "_5b5p _4gem img sp_i534r85sjIn sx_896996", src: null, alt: "" }); } - if (props.x === 153) { + if (this.props.x === 153) { return React.createElement("i", { className: "_541d img sp_i534r85sjIn sx_2f396a", src: null, alt: "" }); } - if (props.x === 160) { + if (this.props.x === 160) { return React.createElement("i", { src: null, alt: "", className: "img sp_i534r85sjIn sx_31d9b0" }); } - if (props.x === 177) { + if (this.props.x === 177) { return React.createElement("i", { alt: "", className: "_3-99 img sp_i534r85sjIn sx_2c18b7", src: null }); } - if (props.x === 186) { + if (this.props.x === 186) { return React.createElement("i", { src: null, alt: "", className: "img sp_i534r85sjIn sx_0a681f" }); } - if (props.x === 195) { + if (this.props.x === 195) { return React.createElement("i", { className: "_1-lx img sp_OkER5ktbEyg sx_b369b4", src: null, alt: "" }); } - if (props.x === 198) { + if (this.props.x === 198) { return React.createElement("i", { className: "_1-lx img sp_i534r85sjIn sx_96948e", src: null, alt: "" }); } - if (props.x === 237) { + if (this.props.x === 237) { return React.createElement("i", { className: "_541d img sp_i534r85sjIn sx_2f396a", src: null, alt: "" }); } - if (props.x === 266) { + if (this.props.x === 266) { return React.createElement("i", { alt: "", className: "_3-99 img sp_i534r85sjIn sx_538591", src: null }); } - if (props.x === 314) { + if (this.props.x === 314) { return React.createElement("i", { className: "_1cie _1cif img sp_i534r85sjIn sx_6e6820", src: null, alt: "" }); } - if (props.x === 345) { + if (this.props.x === 345) { return React.createElement("i", { className: "_1cie img sp_i534r85sjIn sx_e896cf", src: null, alt: "" }); } - if (props.x === 351) { + if (this.props.x === 351) { return React.createElement("i", { className: "_1cie img sp_i534r85sjIn sx_38fed8", src: null, alt: "" }); } } - }); - - var AbstractLink1 = React.createClass({ - displayName: "AbstractLink1", + } - render: function () { - var props = this.props; - if (props.x === 1) { + class AbstractLink1 extends React.Component { + render() { + if (this.props.x === 1) { return React.createElement( "a", - { className: "_387r _55pi _2agf _4jy0 _4jy4 _517h _51sy _42ft", style: { "width": 250, "maxWidth": "250px" }, disabled: null, label: null, href: "#", rel: undefined, onClick: function () {} }, + { className: "_387r _55pi _2agf _4jy0 _4jy4 _517h _51sy _42ft", style: { "width": 250, "maxWidth": "250px" }, disabled: null, label: null, href: "#", rel: undefined, onClick: function () { } }, null, React.createElement( "span", @@ -141,26 +136,26 @@ React.createElement(ReactImage0, { x: 0 }) ); } - if (props.x === 43) { + if (this.props.x === 43) { return React.createElement( "a", - { className: "_585q _50zy _50-0 _50z- _5upp _42ft", size: "medium", shade: "dark", type: null, title: "Remove", "data-hover": undefined, "data-tooltip-alignh": undefined, "data-tooltip-content": undefined, disabled: null, label: null, href: "#", rel: undefined, onClick: function () {} }, + { className: "_585q _50zy _50-0 _50z- _5upp _42ft", size: "medium", type: null, title: "Remove", "data-hover": undefined, "data-tooltip-alignh": undefined, "data-tooltip-content": undefined, disabled: null, label: null, href: "#", rel: undefined, onClick: function () { } }, undefined, "Remove", undefined ); } - if (props.x === 49) { + if (this.props.x === 49) { return React.createElement( "a", - { target: "_blank", href: "/ads/manage/billing.php?act=10149999073643408", rel: undefined, onClick: function () {} }, + { target: "_blank", href: "/ads/manage/billing.php?act=10149999073643408", rel: undefined, onClick: function () { } }, React.createElement(XUIText29, { x: 48 }) ); } - if (props.x === 128) { + if (this.props.x === 128) { return React.createElement( "a", - { className: " _5bbf _55pi _2agf _4jy0 _4jy4 _517h _51sy _42ft", style: { "maxWidth": "200px" }, disabled: null, label: null, href: "#", rel: undefined, onClick: function () {} }, + { className: " _5bbf _55pi _2agf _4jy0 _4jy4 _517h _51sy _42ft", style: { "maxWidth": "200px" }, disabled: null, label: null, href: "#", rel: undefined, onClick: function () { } }, null, React.createElement( "span", @@ -171,10 +166,10 @@ React.createElement(ReactImage0, { x: 127 }) ); } - if (props.x === 136) { + if (this.props.x === 136) { return React.createElement( "a", - { className: " _5bbf _55pi _2agf _4jy0 _4jy4 _517h _51sy _42ft", style: { "maxWidth": "200px" }, disabled: null, label: null, href: "#", rel: undefined, onClick: function () {} }, + { className: " _5bbf _55pi _2agf _4jy0 _4jy4 _517h _51sy _42ft", style: { "maxWidth": "200px" }, disabled: null, label: null, href: "#", rel: undefined, onClick: function () { } }, null, React.createElement( "span", @@ -185,40 +180,40 @@ React.createElement(ReactImage0, { x: 135 }) ); } - if (props.x === 178) { + if (this.props.x === 178) { return React.createElement( "a", - { className: "_1_-t _1_-v _42ft", disabled: null, height: "medium", role: "button", label: null, href: "#", rel: undefined, onClick: function () {} }, + { className: "_1_-t _1_-v _42ft", disabled: null, height: "medium", role: "button", label: null, href: "#", rel: undefined, onClick: function () { } }, undefined, "Lifetime", React.createElement(ReactImage0, { x: 177 }) ); } - if (props.x === 207) { + if (this.props.x === 207) { return React.createElement( "a", - { href: "#", rel: undefined, onClick: function () {} }, + { href: "#", rel: undefined, onClick: function () { } }, "Create Ad Set" ); } - if (props.x === 209) { + if (this.props.x === 209) { return React.createElement( "a", - { href: "#", rel: undefined, onClick: function () {} }, + { href: "#", rel: undefined, onClick: function () { } }, "View Ad Set" ); } - if (props.x === 241) { + if (this.props.x === 241) { return React.createElement( "a", - { href: "#", rel: undefined, onClick: function () {} }, + { href: "#", rel: undefined, onClick: function () { } }, "Set a Limit" ); } - if (props.x === 267) { + if (this.props.x === 267) { return React.createElement( "a", - { className: "_p _55pi _2agf _4jy0 _4jy3 _517h _51sy _42ft", style: { "maxWidth": "200px" }, disabled: null, label: null, href: "#", rel: undefined, onClick: function () {} }, + { className: "_p _55pi _2agf _4jy0 _4jy3 _517h _51sy _42ft", style: { "maxWidth": "200px" }, disabled: null, label: null, href: "#", rel: undefined, onClick: function () { } }, null, React.createElement( "span", @@ -230,85 +225,79 @@ ); } } - }); - - var Link2 = React.createClass({ - displayName: "Link2", + } - render: function () { - var props = this.props; - if (props.x === 2) { + class Link2 extends React.Component { + render() { + if (this.props.x === 2) { return React.createElement(AbstractLink1, { x: 1 }); } - if (props.x === 44) { + if (this.props.x === 44) { return React.createElement(AbstractLink1, { x: 43 }); } - if (props.x === 50) { + if (this.props.x === 50) { return React.createElement(AbstractLink1, { x: 49 }); } - if (props.x === 129) { + if (this.props.x === 129) { return React.createElement(AbstractLink1, { x: 128 }); } - if (props.x === 137) { + if (this.props.x === 137) { return React.createElement(AbstractLink1, { x: 136 }); } - if (props.x === 179) { + if (this.props.x === 179) { return React.createElement(AbstractLink1, { x: 178 }); } - if (props.x === 208) { + if (this.props.x === 208) { return React.createElement(AbstractLink1, { x: 207 }); } - if (props.x === 210) { + if (this.props.x === 210) { return React.createElement(AbstractLink1, { x: 209 }); } - if (props.x === 242) { + if (this.props.x === 242) { return React.createElement(AbstractLink1, { x: 241 }); } - if (props.x === 268) { + if (this.props.x === 268) { return React.createElement(AbstractLink1, { x: 267 }); } } - }); + } - var AbstractButton3 = React.createClass({ - displayName: "AbstractButton3", - - render: function () { - var props = this.props; - if (props.x === 3) { + class AbstractButton3 extends React.Component { + render() { + if (this.props.x === 3) { return React.createElement(Link2, { x: 2 }); } - if (props.x === 20) { + if (this.props.x === 20) { return React.createElement( "button", - { className: "_5n7z _4jy0 _4jy4 _517h _51sy _42ft", onClick: function () {}, label: null, type: "submit", value: "1" }, + { className: "_5n7z _4jy0 _4jy4 _517h _51sy _42ft", onClick: function () { }, label: null, type: "submit", value: "1" }, undefined, "Discard Changes", undefined ); } - if (props.x === 23) { + if (this.props.x === 23) { return React.createElement( "button", - { className: "_5n7z _2yak _4lj- _4jy0 _4jy4 _517h _51sy _42ft _42fr", disabled: true, onClick: function () {}, "data-tooltip-content": "You have no changes to publish", "data-hover": "tooltip", label: null, type: "submit", value: "1" }, + { className: "_5n7z _2yak _4lj- _4jy0 _4jy4 _517h _51sy _42ft _42fr", disabled: true, onClick: function () { }, "data-tooltip-content": "You have no changes to publish", "data-hover": "tooltip", label: null, type: "submit", value: "1" }, React.createElement(ReactImage0, { x: 22 }), "Review Changes", undefined ); } - if (props.x === 45) { + if (this.props.x === 45) { return React.createElement(Link2, { x: 44 }); } - if (props.x === 68) { + if (this.props.x === 68) { return React.createElement( "button", - { className: "_u_k _4jy0 _4jy4 _517h _51sy _42ft", onClick: function () {}, label: null, type: "submit", value: "1" }, + { className: "_u_k _4jy0 _4jy4 _517h _51sy _42ft", onClick: function () { }, label: null, type: "submit", value: "1" }, React.createElement(ReactImage0, { x: 67 }), "Create Campaign", undefined ); } - if (props.x === 71) { + if (this.props.x === 71) { return React.createElement( "button", { className: "_u_k _3qx6 _p _4jy0 _4jy4 _517h _51sy _42ft", label: null, type: "submit", value: "1" }, @@ -317,16 +306,16 @@ undefined ); } - if (props.x === 77) { + if (this.props.x === 77) { return React.createElement( "button", - { "aria-label": "Edit", "data-tooltip-content": "Edit Campaigns (Ctrl+U)", "data-hover": "tooltip", className: "_d2_ _u_k noMargin _4jy0 _4jy4 _517h _51sy _42ft", disabled: false, onClick: function () {}, label: null, type: "submit", value: "1" }, + { "aria-label": "Edit", "data-tooltip-content": "Edit Campaigns (Ctrl+U)", "data-hover": "tooltip", className: "_d2_ _u_k noMargin _4jy0 _4jy4 _517h _51sy _42ft", disabled: false, onClick: function () { }, label: null, type: "submit", value: "1" }, React.createElement(ReactImage0, { x: 76 }), "Edit", undefined ); } - if (props.x === 80) { + if (this.props.x === 80) { return React.createElement( "button", { className: "_u_k _3qx6 _p _4jy0 _4jy4 _517h _51sy _42ft", disabled: false, label: null, type: "submit", value: "1" }, @@ -335,112 +324,112 @@ undefined ); } - if (props.x === 89) { + if (this.props.x === 89) { return React.createElement( "button", - { "aria-label": "Revert", className: "_u_k _4jy0 _4jy4 _517h _51sy _42ft _42fr", "data-hover": "tooltip", "data-tooltip-content": "Revert", disabled: true, onClick: function () {}, label: null, type: "submit", value: "1" }, + { "aria-label": "Revert", className: "_u_k _4jy0 _4jy4 _517h _51sy _42ft _42fr", "data-hover": "tooltip", "data-tooltip-content": "Revert", disabled: true, onClick: function () { }, label: null, type: "submit", value: "1" }, React.createElement(ReactImage0, { x: 88 }), undefined, undefined ); } - if (props.x === 92) { + if (this.props.x === 92) { return React.createElement( "button", - { "aria-label": "Delete", className: "_u_k _4jy0 _4jy4 _517h _51sy _42ft", "data-hover": "tooltip", "data-tooltip-content": "Delete", disabled: false, onClick: function () {}, label: null, type: "submit", value: "1" }, + { "aria-label": "Delete", className: "_u_k _4jy0 _4jy4 _517h _51sy _42ft", "data-hover": "tooltip", "data-tooltip-content": "Delete", disabled: false, onClick: function () { }, label: null, type: "submit", value: "1" }, React.createElement(ReactImage0, { x: 91 }), undefined, undefined ); } - if (props.x === 95) { + if (this.props.x === 95) { return React.createElement( "button", - { "aria-label": "Duplicate", className: "_u_k _4jy0 _4jy4 _517h _51sy _42ft", "data-hover": "tooltip", "data-tooltip-content": "Duplicate", disabled: false, onClick: function () {}, label: null, type: "submit", value: "1" }, + { "aria-label": "Duplicate", className: "_u_k _4jy0 _4jy4 _517h _51sy _42ft", "data-hover": "tooltip", "data-tooltip-content": "Duplicate", disabled: false, onClick: function () { }, label: null, type: "submit", value: "1" }, React.createElement(ReactImage0, { x: 94 }), undefined, undefined ); } - if (props.x === 99) { + if (this.props.x === 99) { return React.createElement( "button", - { "aria-label": "Export & Import", className: "_u_k noMargin _p _4jy0 _4jy4 _517h _51sy _42ft", "data-hover": "tooltip", "data-tooltip-content": "Export & Import", onClick: function () {}, label: null, type: "submit", value: "1" }, + { "aria-label": "Export & Import", className: "_u_k noMargin _p _4jy0 _4jy4 _517h _51sy _42ft", "data-hover": "tooltip", "data-tooltip-content": "Export & Import", onClick: function () { }, label: null, type: "submit", value: "1" }, React.createElement(ReactImage0, { x: 98 }), undefined, undefined ); } - if (props.x === 109) { + if (this.props.x === 109) { return React.createElement( "button", - { "aria-label": "Create Report", className: "_u_k _5n7z _4jy0 _4jy4 _517h _51sy _42ft", "data-hover": "tooltip", "data-tooltip-content": "Create Report", disabled: false, style: { "boxSizing": "border-box", "height": "28px", "width": "48px" }, onClick: function () {}, label: null, type: "submit", value: "1" }, + { "aria-label": "Create Report", className: "_u_k _5n7z _4jy0 _4jy4 _517h _51sy _42ft", "data-hover": "tooltip", "data-tooltip-content": "Create Report", disabled: false, style: { "boxSizing": "border-box", "height": "28px", "width": "48px" }, onClick: function () { }, label: null, type: "submit", value: "1" }, React.createElement(ReactImage0, { x: 108 }), undefined, undefined ); } - if (props.x === 112) { + if (this.props.x === 112) { return React.createElement( "button", - { "aria-label": "Campaign Tags", className: " _5uy7 _4jy0 _4jy4 _517h _51sy _42ft", "data-hover": "tooltip", "data-tooltip-content": "Campaign Tags", disabled: false, haschevron: false, onClick: function () {}, label: null, type: "submit", value: "1" }, + { "aria-label": "Campaign Tags", className: " _5uy7 _4jy0 _4jy4 _517h _51sy _42ft", "data-hover": "tooltip", "data-tooltip-content": "Campaign Tags", disabled: false, onClick: function () { }, label: null, type: "submit", value: "1" }, React.createElement(ReactImage0, { x: 111 }), undefined, undefined ); } - if (props.x === 130) { + if (this.props.x === 130) { return React.createElement(Link2, { x: 129 }); } - if (props.x === 138) { + if (this.props.x === 138) { return React.createElement(Link2, { x: 137 }); } - if (props.x === 149) { + if (this.props.x === 149) { return React.createElement( "button", - { className: "_3yz9 _1t-2 _50z- _50zy _50zz _50z- _5upp _42ft", size: "small", onClick: function () {}, shade: "dark", type: "button", title: "Remove", "data-hover": undefined, "data-tooltip-alignh": undefined, "data-tooltip-content": undefined, label: null }, + { className: "_3yz9 _1t-2 _50z- _50zy _50zz _50z- _5upp _42ft", size: "small", onClick: function () { }, type: "button", title: "Remove", "data-hover": undefined, "data-tooltip-alignh": undefined, "data-tooltip-content": undefined, label: null }, undefined, "Remove", undefined ); } - if (props.x === 156) { + if (this.props.x === 156) { return React.createElement( "button", - { className: "_5b5u _5b5v _4jy0 _4jy3 _517h _51sy _42ft", onClick: function () {}, label: null, type: "submit", value: "1" }, + { className: "_5b5u _5b5v _4jy0 _4jy3 _517h _51sy _42ft", onClick: function () { }, label: null, type: "submit", value: "1" }, undefined, "Apply", undefined ); } - if (props.x === 161) { + if (this.props.x === 161) { return React.createElement( "button", - { className: "_1wdf _4jy0 _517i _517h _51sy _42ft", onClick: function () {}, label: null, type: "submit", value: "1" }, + { className: "_1wdf _4jy0 _517i _517h _51sy _42ft", onClick: function () { }, label: null, type: "submit", value: "1" }, React.createElement(ReactImage0, { x: 160 }), undefined, undefined ); } - if (props.x === 180) { + if (this.props.x === 180) { return React.createElement(Link2, { x: 179 }); } - if (props.x === 187) { + if (this.props.x === 187) { return React.createElement( "button", - { "aria-label": "List Settings", className: "_u_k _3c5o _1-r0 _4jy0 _4jy4 _517h _51sy _42ft", "data-hover": "tooltip", "data-tooltip-content": "List Settings", onClick: function () {}, label: null, type: "submit", value: "1" }, + { "aria-label": "List Settings", className: "_u_k _3c5o _1-r0 _4jy0 _4jy4 _517h _51sy _42ft", "data-hover": "tooltip", "data-tooltip-content": "List Settings", onClick: function () { }, label: null, type: "submit", value: "1" }, React.createElement(ReactImage0, { x: 186 }), undefined, undefined ); } - if (props.x === 269) { + if (this.props.x === 269) { return React.createElement(Link2, { x: 268 }); } - if (props.x === 303) { + if (this.props.x === 303) { return React.createElement( "button", - { className: "_tm3 _tm6 _tm7 _4jy0 _4jy6 _517h _51sy _42ft", "data-tooltip-position": "right", "data-tooltip-content": "Campaigns", "data-hover": "tooltip", onClick: function () {}, label: null, type: "submit", value: "1" }, + { className: "_tm3 _tm6 _tm7 _4jy0 _4jy6 _517h _51sy _42ft", "data-tooltip-position": "right", "data-tooltip-content": "Campaigns", "data-hover": "tooltip", onClick: function () { }, label: null, type: "submit", value: "1" }, undefined, React.createElement( "div", @@ -456,10 +445,10 @@ undefined ); } - if (props.x === 305) { + if (this.props.x === 305) { return React.createElement( "button", - { className: "_tm4 _tm6 _4jy0 _4jy6 _517h _51sy _42ft", "data-tooltip-position": "right", "data-tooltip-content": "Ad Sets", "data-hover": "tooltip", onClick: function () {}, label: null, type: "submit", value: "1" }, + { className: "_tm4 _tm6 _4jy0 _4jy6 _517h _51sy _42ft", "data-tooltip-position": "right", "data-tooltip-content": "Ad Sets", "data-hover": "tooltip", onClick: function () { }, label: null, type: "submit", value: "1" }, undefined, React.createElement( "div", @@ -475,10 +464,10 @@ undefined ); } - if (props.x === 307) { + if (this.props.x === 307) { return React.createElement( "button", - { className: "_tm5 _tm6 _4jy0 _4jy6 _517h _51sy _42ft", "data-tooltip-position": "right", "data-tooltip-content": "Ads", "data-hover": "tooltip", onClick: function () {}, label: null, type: "submit", value: "1" }, + { className: "_tm5 _tm6 _4jy0 _4jy6 _517h _51sy _42ft", "data-tooltip-position": "right", "data-tooltip-content": "Ads", "data-hover": "tooltip", onClick: function () { }, label: null, type: "submit", value: "1" }, undefined, React.createElement( "div", @@ -495,292 +484,262 @@ ); } } - }); - - var XUIButton4 = React.createClass({ - displayName: "XUIButton4", + } - render: function () { - var props = this.props; - if (props.x === 4) { + class XUIButton4 extends React.Component { + render() { + if (this.props.x === 4) { return React.createElement(AbstractButton3, { x: 3 }); } - if (props.x === 21) { + if (this.props.x === 21) { return React.createElement(AbstractButton3, { x: 20 }); } - if (props.x === 24) { + if (this.props.x === 24) { return React.createElement(AbstractButton3, { x: 23 }); } - if (props.x === 69) { + if (this.props.x === 69) { return React.createElement(AbstractButton3, { x: 68 }); } - if (props.x === 72) { + if (this.props.x === 72) { return React.createElement(AbstractButton3, { x: 71 }); } - if (props.x === 78) { + if (this.props.x === 78) { return React.createElement(AbstractButton3, { x: 77 }); } - if (props.x === 81) { + if (this.props.x === 81) { return React.createElement(AbstractButton3, { x: 80 }); } - if (props.x === 90) { + if (this.props.x === 90) { return React.createElement(AbstractButton3, { x: 89 }); } - if (props.x === 93) { + if (this.props.x === 93) { return React.createElement(AbstractButton3, { x: 92 }); } - if (props.x === 96) { + if (this.props.x === 96) { return React.createElement(AbstractButton3, { x: 95 }); } - if (props.x === 100) { + if (this.props.x === 100) { return React.createElement(AbstractButton3, { x: 99 }); } - if (props.x === 110) { + if (this.props.x === 110) { return React.createElement(AbstractButton3, { x: 109 }); } - if (props.x === 113) { + if (this.props.x === 113) { return React.createElement(AbstractButton3, { x: 112 }); } - if (props.x === 131) { + if (this.props.x === 131) { return React.createElement(AbstractButton3, { x: 130 }); } - if (props.x === 139) { + if (this.props.x === 139) { return React.createElement(AbstractButton3, { x: 138 }); } - if (props.x === 157) { + if (this.props.x === 157) { return React.createElement(AbstractButton3, { x: 156 }); } - if (props.x === 162) { + if (this.props.x === 162) { return React.createElement(AbstractButton3, { x: 161 }); } - if (props.x === 188) { + if (this.props.x === 188) { return React.createElement(AbstractButton3, { x: 187 }); } - if (props.x === 270) { + if (this.props.x === 270) { return React.createElement(AbstractButton3, { x: 269 }); } - if (props.x === 304) { + if (this.props.x === 304) { return React.createElement(AbstractButton3, { x: 303 }); } - if (props.x === 306) { + if (this.props.x === 306) { return React.createElement(AbstractButton3, { x: 305 }); } - if (props.x === 308) { + if (this.props.x === 308) { return React.createElement(AbstractButton3, { x: 307 }); } } - }); - - var AbstractPopoverButton5 = React.createClass({ - displayName: "AbstractPopoverButton5", + } - render: function () { - var props = this.props; - if (props.x === 5) { + class AbstractPopoverButton5 extends React.Component { + render() { + if (this.props.x === 5) { return React.createElement(XUIButton4, { x: 4 }); } - if (props.x === 132) { + if (this.props.x === 132) { return React.createElement(XUIButton4, { x: 131 }); } - if (props.x === 140) { + if (this.props.x === 140) { return React.createElement(XUIButton4, { x: 139 }); } - if (props.x === 271) { + if (this.props.x === 271) { return React.createElement(XUIButton4, { x: 270 }); } } - }); + } - var ReactXUIPopoverButton6 = React.createClass({ - displayName: "ReactXUIPopoverButton6", - - render: function () { - var props = this.props; - if (props.x === 6) { + class ReactXUIPopoverButton6 extends React.Component { + render() { + if (this.props.x === 6) { return React.createElement(AbstractPopoverButton5, { x: 5 }); } - if (props.x === 133) { + if (this.props.x === 133) { return React.createElement(AbstractPopoverButton5, { x: 132 }); } - if (props.x === 141) { + if (this.props.x === 141) { return React.createElement(AbstractPopoverButton5, { x: 140 }); } - if (props.x === 272) { + if (this.props.x === 272) { return React.createElement(AbstractPopoverButton5, { x: 271 }); } } - }); - - var BIGAdAccountSelector7 = React.createClass({ - displayName: "BIGAdAccountSelector7", + } - render: function () { - var props = this.props; - if (props.x === 7) { + class BIGAdAccountSelector7 extends React.Component { + render() { + if (this.props.x === 7) { return React.createElement( "div", null, - React.createElement(ReactXUIPopoverButton6, { x: 6, ref: "openMenuButton" }), + React.createElement(ReactXUIPopoverButton6, { x: 6 }), null ); } } - }); - - var FluxContainer_AdsPEBIGAdAccountSelectorContainer_8 = React.createClass({ - displayName: "FluxContainer_AdsPEBIGAdAccountSelectorContainer_8", + } - render: function () { - var props = this.props; - if (props.x === 8) { + class FluxContainer_AdsPEBIGAdAccountSelectorContainer_8 extends React.Component { + render() { + if (this.props.x === 8) { return React.createElement(BIGAdAccountSelector7, { x: 7 }); } } - }); + } - var ErrorBoundary9 = React.createClass({ - displayName: "ErrorBoundary9", - - render: function () { - var props = this.props; - if (props.x === 9) { + class ErrorBoundary9 extends React.Component { + render() { + if (this.props.x === 9) { return React.createElement(FluxContainer_AdsPEBIGAdAccountSelectorContainer_8, { x: 8 }); } - if (props.x === 13) { + if (this.props.x === 13) { return React.createElement(FluxContainer_AdsPENavigationBarContainer_12, { x: 12 }); } - if (props.x === 27) { + if (this.props.x === 27) { return React.createElement(FluxContainer_AdsPEPublishButtonContainer_18, { x: 26 }); } - if (props.x === 32) { + if (this.props.x === 32) { return React.createElement(ReactPopoverMenu20, { x: 31 }); } - if (props.x === 38) { + if (this.props.x === 38) { return React.createElement(AdsPEResetDialog24, { x: 37 }); } - if (props.x === 57) { + if (this.props.x === 57) { return React.createElement(FluxContainer_AdsPETopErrorContainer_35, { x: 56 }); } - if (props.x === 60) { + if (this.props.x === 60) { return React.createElement(FluxContainer_AdsGuidanceChannel_36, { x: 59 }); } - if (props.x === 64) { + if (this.props.x === 64) { return React.createElement(FluxContainer_AdsBulkEditDialogContainer_38, { x: 63 }); } - if (props.x === 124) { + if (this.props.x === 124) { return React.createElement(AdsPECampaignGroupToolbarContainer57, { x: 123 }); } - if (props.x === 170) { + if (this.props.x === 170) { return React.createElement(AdsPEFilterContainer72, { x: 169 }); } - if (props.x === 175) { + if (this.props.x === 175) { return React.createElement(AdsPETablePagerContainer75, { x: 174 }); } - if (props.x === 193) { + if (this.props.x === 193) { return React.createElement(AdsPEStatRangeContainer81, { x: 192 }); } - if (props.x === 301) { + if (this.props.x === 301) { return React.createElement(FluxContainer_AdsPEMultiTabDrawerContainer_137, { x: 300 }); } - if (props.x === 311) { + if (this.props.x === 311) { return React.createElement(AdsPEOrganizerContainer139, { x: 310 }); } - if (props.x === 471) { + if (this.props.x === 471) { return React.createElement(AdsPECampaignGroupTableContainer159, { x: 470 }); } - if (props.x === 475) { + if (this.props.x === 475) { return React.createElement(AdsPEContentContainer161, { x: 474 }); } } - }); - - var AdsErrorBoundary10 = React.createClass({ - displayName: "AdsErrorBoundary10", + } - render: function () { - var props = this.props; - if (props.x === 10) { + class AdsErrorBoundary10 extends React.Component { + render() { + if (this.props.x === 10) { return React.createElement(ErrorBoundary9, { x: 9 }); } - if (props.x === 14) { + if (this.props.x === 14) { return React.createElement(ErrorBoundary9, { x: 13 }); } - if (props.x === 28) { + if (this.props.x === 28) { return React.createElement(ErrorBoundary9, { x: 27 }); } - if (props.x === 33) { + if (this.props.x === 33) { return React.createElement(ErrorBoundary9, { x: 32 }); } - if (props.x === 39) { + if (this.props.x === 39) { return React.createElement(ErrorBoundary9, { x: 38 }); } - if (props.x === 58) { + if (this.props.x === 58) { return React.createElement(ErrorBoundary9, { x: 57 }); } - if (props.x === 61) { + if (this.props.x === 61) { return React.createElement(ErrorBoundary9, { x: 60 }); } - if (props.x === 65) { + if (this.props.x === 65) { return React.createElement(ErrorBoundary9, { x: 64 }); } - if (props.x === 125) { + if (this.props.x === 125) { return React.createElement(ErrorBoundary9, { x: 124 }); } - if (props.x === 171) { + if (this.props.x === 171) { return React.createElement(ErrorBoundary9, { x: 170 }); } - if (props.x === 176) { + if (this.props.x === 176) { return React.createElement(ErrorBoundary9, { x: 175 }); } - if (props.x === 194) { + if (this.props.x === 194) { return React.createElement(ErrorBoundary9, { x: 193 }); } - if (props.x === 302) { + if (this.props.x === 302) { return React.createElement(ErrorBoundary9, { x: 301 }); } - if (props.x === 312) { + if (this.props.x === 312) { return React.createElement(ErrorBoundary9, { x: 311 }); } - if (props.x === 472) { + if (this.props.x === 472) { return React.createElement(ErrorBoundary9, { x: 471 }); } - if (props.x === 476) { + if (this.props.x === 476) { return React.createElement(ErrorBoundary9, { x: 475 }); } } - }); - - var AdsPENavigationBar11 = React.createClass({ - displayName: "AdsPENavigationBar11", + } - render: function () { - var props = this.props; - if (props.x === 11) { + class AdsPENavigationBar11 extends React.Component { + render() { + if (this.props.x === 11) { return React.createElement("div", { className: "_4t_9" }); } } - }); + } - var FluxContainer_AdsPENavigationBarContainer_12 = React.createClass({ - displayName: "FluxContainer_AdsPENavigationBarContainer_12", - - render: function () { - var props = this.props; - if (props.x === 12) { + class FluxContainer_AdsPENavigationBarContainer_12 extends React.Component { + render() { + if (this.props.x === 12) { return React.createElement(AdsPENavigationBar11, { x: 11 }); } } - }); - - var AdsPEDraftSyncStatus13 = React.createClass({ - displayName: "AdsPEDraftSyncStatus13", + } - render: function () { - var props = this.props; - if (props.x === 16) { + class AdsPEDraftSyncStatus13 extends React.Component { + render() { + if (this.props.x === 16) { return React.createElement( "div", - { className: "_3ut-", onClick: function () {} }, + { className: "_3ut-", onClick: function () { } }, React.createElement( "span", { className: "_3uu0" }, @@ -789,47 +748,35 @@ ); } } - }); - - var FluxContainer_AdsPEDraftSyncStatusContainer_14 = React.createClass({ - displayName: "FluxContainer_AdsPEDraftSyncStatusContainer_14", + } - render: function () { - var props = this.props; - if (props.x === 17) { + class FluxContainer_AdsPEDraftSyncStatusContainer_14 extends React.Component { + render() { + if (this.props.x === 17) { return React.createElement(AdsPEDraftSyncStatus13, { x: 16 }); } } - }); + } - var AdsPEDraftErrorsStatus15 = React.createClass({ - displayName: "AdsPEDraftErrorsStatus15", - - render: function () { - var props = this.props; - if (props.x === 18) { + class AdsPEDraftErrorsStatus15 extends React.Component { + render() { + if (this.props.x === 18) { return null; } } - }); - - var FluxContainer_viewFn_16 = React.createClass({ - displayName: "FluxContainer_viewFn_16", + } - render: function () { - var props = this.props; - if (props.x === 19) { + class FluxContainer_viewFn_16 extends React.Component { + render() { + if (this.props.x === 19) { return React.createElement(AdsPEDraftErrorsStatus15, { x: 18 }); } } - }); - - var AdsPEPublishButton17 = React.createClass({ - displayName: "AdsPEPublishButton17", + } - render: function () { - var props = this.props; - if (props.x === 25) { + class AdsPEPublishButton17 extends React.Component { + render() { + if (this.props.x === 25) { return React.createElement( "div", { className: "_5533" }, @@ -837,57 +784,51 @@ React.createElement(FluxContainer_viewFn_16, { x: 19 }), null, React.createElement(XUIButton4, { x: 21, key: "discard" }), - React.createElement(XUIButton4, { x: 24, ref: "reviewChangesButton" }) + React.createElement(XUIButton4, { x: 24 }) ); } } - }); + } - var FluxContainer_AdsPEPublishButtonContainer_18 = React.createClass({ - displayName: "FluxContainer_AdsPEPublishButtonContainer_18", - - render: function () { - var props = this.props; - if (props.x === 26) { + class FluxContainer_AdsPEPublishButtonContainer_18 extends React.Component { + render() { + if (this.props.x === 26) { return React.createElement(AdsPEPublishButton17, { x: 25 }); } } - }); - - var InlineBlock19 = React.createClass({ - displayName: "InlineBlock19", + } - render: function () { - var props = this.props; - if (props.x === 30) { + class InlineBlock19 extends React.Component { + render() { + if (this.props.x === 30) { return React.createElement( "div", { className: "uiPopover _6a _6b", disabled: null }, React.createElement(ReactImage0, { x: 29, key: ".0" }) ); } - if (props.x === 73) { + if (this.props.x === 73) { return React.createElement( "div", { className: "uiPopover _6a _6b", disabled: null }, React.createElement(XUIButton4, { x: 72, key: ".0" }) ); } - if (props.x === 82) { + if (this.props.x === 82) { return React.createElement( "div", { className: "_1nwm uiPopover _6a _6b", disabled: null }, React.createElement(XUIButton4, { x: 81, key: ".0" }) ); } - if (props.x === 101) { + if (this.props.x === 101) { return React.createElement( "div", { size: "large", className: "uiPopover _6a _6b", disabled: null }, React.createElement(XUIButton4, { x: 100, key: ".0" }) ); } - if (props.x === 273) { + if (this.props.x === 273) { return React.createElement( "div", { className: "_3-90 uiPopover _6a _6b", style: { "marginTop": 2 }, disabled: null }, @@ -895,37 +836,31 @@ ); } } - }); - - var ReactPopoverMenu20 = React.createClass({ - displayName: "ReactPopoverMenu20", + } - render: function () { - var props = this.props; - if (props.x === 31) { - return React.createElement(InlineBlock19, { x: 30, ref: "root" }); + class ReactPopoverMenu20 extends React.Component { + render() { + if (this.props.x === 31) { + return React.createElement(InlineBlock19, { x: 30 }); } - if (props.x === 74) { - return React.createElement(InlineBlock19, { x: 73, ref: "root" }); + if (this.props.x === 74) { + return React.createElement(InlineBlock19, { x: 73 }); } - if (props.x === 83) { - return React.createElement(InlineBlock19, { x: 82, ref: "root" }); + if (this.props.x === 83) { + return React.createElement(InlineBlock19, { x: 82 }); } - if (props.x === 102) { - return React.createElement(InlineBlock19, { x: 101, ref: "root" }); + if (this.props.x === 102) { + return React.createElement(InlineBlock19, { x: 101 }); } - if (props.x === 274) { - return React.createElement(InlineBlock19, { x: 273, ref: "root" }); + if (this.props.x === 274) { + return React.createElement(InlineBlock19, { x: 273 }); } } - }); + } - var LeftRight21 = React.createClass({ - displayName: "LeftRight21", - - render: function () { - var props = this.props; - if (props.x === 34) { + class LeftRight21 extends React.Component { + render() { + if (this.props.x === 34) { return React.createElement( "div", { className: "clearfix" }, @@ -967,10 +902,10 @@ ) ); } - if (props.x === 232) { + if (this.props.x === 232) { return React.createElement( "div", - { flex: "right", direction: "left", className: "clearfix" }, + { direction: "left", className: "clearfix" }, React.createElement( "div", { key: "left", className: "_ohe lfloat" }, @@ -991,10 +926,10 @@ ) ); } - if (props.x === 235) { + if (this.props.x === 235) { return React.createElement( "div", - { className: "_3-8x clearfix", flex: "right", direction: "left" }, + { className: "_3-8x clearfix", direction: "left" }, React.createElement( "div", { key: "left", className: "_ohe lfloat" }, @@ -1015,10 +950,10 @@ ) ); } - if (props.x === 245) { + if (this.props.x === 245) { return React.createElement( "div", - { className: "_3-8y clearfix", flex: "right", direction: "left" }, + { className: "_3-8y clearfix", direction: "left" }, React.createElement( "div", { key: "left", className: "_ohe lfloat" }, @@ -1035,7 +970,7 @@ ) ); } - if (props.x === 277) { + if (this.props.x === 277) { return React.createElement( "div", { className: "_5dw9 _5dwa clearfix" }, @@ -1052,14 +987,11 @@ ); } } - }); - - var AdsUnifiedNavigationLocalNav22 = React.createClass({ - displayName: "AdsUnifiedNavigationLocalNav22", + } - render: function () { - var props = this.props; - if (props.x === 35) { + class AdsUnifiedNavigationLocalNav22 extends React.Component { + render() { + if (this.props.x === 35) { return React.createElement( "div", { className: "_34_i" }, @@ -1067,25 +999,19 @@ ); } } - }); - - var XUIDialog23 = React.createClass({ - displayName: "XUIDialog23", + } - render: function () { - var props = this.props; - if (props.x === 36) { + class XUIDialog23 extends React.Component { + render() { + if (this.props.x === 36) { return null; } } - }); + } - var AdsPEResetDialog24 = React.createClass({ - displayName: "AdsPEResetDialog24", - - render: function () { - var props = this.props; - if (props.x === 37) { + class AdsPEResetDialog24 extends React.Component { + render() { + if (this.props.x === 37) { return React.createElement( "span", null, @@ -1093,14 +1019,11 @@ ); } } - }); - - var AdsPETopNav25 = React.createClass({ - displayName: "AdsPETopNav25", + } - render: function () { - var props = this.props; - if (props.x === 40) { + class AdsPETopNav25 extends React.Component { + render() { + if (this.props.x === 40) { return React.createElement( "div", { style: { "width": 1306 } }, @@ -1109,67 +1032,55 @@ ); } } - }); - - var FluxContainer_AdsPETopNavContainer_26 = React.createClass({ - displayName: "FluxContainer_AdsPETopNavContainer_26", + } - render: function () { - var props = this.props; - if (props.x === 41) { + class FluxContainer_AdsPETopNavContainer_26 extends React.Component { + render() { + if (this.props.x === 41) { return React.createElement(AdsPETopNav25, { x: 40 }); } } - }); + } - var XUIAbstractGlyphButton27 = React.createClass({ - displayName: "XUIAbstractGlyphButton27", - - render: function () { - var props = this.props; - if (props.x === 46) { + class XUIAbstractGlyphButton27 extends React.Component { + render() { + if (this.props.x === 46) { return React.createElement(AbstractButton3, { x: 45 }); } - if (props.x === 150) { + if (this.props.x === 150) { return React.createElement(AbstractButton3, { x: 149 }); } } - }); - - var XUICloseButton28 = React.createClass({ - displayName: "XUICloseButton28", + } - render: function () { - var props = this.props; - if (props.x === 47) { + class XUICloseButton28 extends React.Component { + render() { + if (this.props.x === 47) { return React.createElement(XUIAbstractGlyphButton27, { x: 46 }); } - if (props.x === 151) { + if (this.props.x === 151) { return React.createElement(XUIAbstractGlyphButton27, { x: 150 }); } } - }); - - var XUIText29 = React.createClass({ - displayName: "XUIText29", + } - render: function () { - var props = this.props; - if (props.x === 48) { + class XUIText29 extends React.Component { + render() { + if (this.props.x === 48) { return React.createElement( "span", { display: "inline", className: " _50f7" }, "Ads Manager" ); } - if (props.x === 205) { + if (this.props.x === 205) { return React.createElement( "span", { className: "_2x9f _50f5 _50f7", display: "inline" }, "Editing Campaign" ); } - if (props.x === 206) { + if (this.props.x === 206) { return React.createElement( "span", { display: "inline", className: " _50f5 _50f7" }, @@ -1177,14 +1088,11 @@ ); } } - }); + } - var XUINotice30 = React.createClass({ - displayName: "XUINotice30", - - render: function () { - var props = this.props; - if (props.x === 51) { + class XUINotice30 extends React.Component { + render() { + if (this.props.x === 51) { return React.createElement( "div", { size: "medium", className: "_585n _585o _2wdd" }, @@ -1200,51 +1108,39 @@ ); } } - }); - - var ReactCSSTransitionGroupChild31 = React.createClass({ - displayName: "ReactCSSTransitionGroupChild31", + } - render: function () { - var props = this.props; - if (props.x === 52) { + class ReactCSSTransitionGroupChild31 extends React.Component { + render() { + if (this.props.x === 52) { return React.createElement(XUINotice30, { x: 51 }); } } - }); - - var ReactTransitionGroup32 = React.createClass({ - displayName: "ReactTransitionGroup32", + } - render: function () { - var props = this.props; - if (props.x === 53) { + class ReactTransitionGroup32 extends React.Component { + render() { + if (this.props.x === 53) { return React.createElement( "span", null, - React.createElement(ReactCSSTransitionGroupChild31, { x: 52, key: ".0", ref: ".0" }) + React.createElement(ReactCSSTransitionGroupChild31, { x: 52, key: ".0" }) ); } } - }); + } - var ReactCSSTransitionGroup33 = React.createClass({ - displayName: "ReactCSSTransitionGroup33", - - render: function () { - var props = this.props; - if (props.x === 54) { + class ReactCSSTransitionGroup33 extends React.Component { + render() { + if (this.props.x === 54) { return React.createElement(ReactTransitionGroup32, { x: 53 }); } } - }); - - var AdsPETopError34 = React.createClass({ - displayName: "AdsPETopError34", + } - render: function () { - var props = this.props; - if (props.x === 55) { + class AdsPETopError34 extends React.Component { + render() { + if (this.props.x === 55) { return React.createElement( "div", { className: "_2wdc" }, @@ -1252,79 +1148,64 @@ ); } } - }); - - var FluxContainer_AdsPETopErrorContainer_35 = React.createClass({ - displayName: "FluxContainer_AdsPETopErrorContainer_35", + } - render: function () { - var props = this.props; - if (props.x === 56) { + class FluxContainer_AdsPETopErrorContainer_35 extends React.Component { + render() { + if (this.props.x === 56) { return React.createElement(AdsPETopError34, { x: 55 }); } } - }); + } - var FluxContainer_AdsGuidanceChannel_36 = React.createClass({ - displayName: "FluxContainer_AdsGuidanceChannel_36", - - render: function () { - var props = this.props; - if (props.x === 59) { + class FluxContainer_AdsGuidanceChannel_36 extends React.Component { + render() { + if (this.props.x === 59) { return null; } } - }); - - var ResponsiveBlock37 = React.createClass({ - displayName: "ResponsiveBlock37", + } - render: function () { - var props = this.props; - if (props.x === 62) { + class ResponsiveBlock37 extends React.Component { + render() { + if (this.props.x === 62) { return React.createElement( "div", - { onResize: function () {}, className: "_4u-c" }, - [React.createElement(AdsErrorBoundary10, { x: 58 }), React.createElement(AdsErrorBoundary10, { x: 61 })], + { className: "_4u-c" }, + [React.createElement(AdsErrorBoundary10, { x: 58, key: 1 }), React.createElement(AdsErrorBoundary10, { x: 61, key: 2 })], React.createElement( "div", { key: "sensor", className: "_4u-f" }, - React.createElement("iframe", { ref: "sensorNode", "aria-hidden": "true", className: "_1_xb", tabIndex: "-1" }) + React.createElement("iframe", { "aria-hidden": "true", className: "_1_xb", tabIndex: "-1" }) ) ); } - if (props.x === 469) { + if (this.props.x === 469) { return React.createElement( "div", - { onResize: function () {}, className: "_4u-c" }, + { className: "_4u-c" }, React.createElement(AdsPEDataTableContainer158, { x: 468 }), React.createElement( "div", { key: "sensor", className: "_4u-f" }, - React.createElement("iframe", { ref: "sensorNode", "aria-hidden": "true", className: "_1_xb", tabIndex: "-1" }) + React.createElement("iframe", { "aria-hidden": "true", className: "_1_xb", tabIndex: "-1" }) ) ); } } - }); - - var FluxContainer_AdsBulkEditDialogContainer_38 = React.createClass({ - displayName: "FluxContainer_AdsBulkEditDialogContainer_38", + } - render: function () { - var props = this.props; - if (props.x === 63) { + class FluxContainer_AdsBulkEditDialogContainer_38 extends React.Component { + render() { + if (this.props.x === 63) { return null; } } - }); + } - var Column39 = React.createClass({ - displayName: "Column39", - - render: function () { - var props = this.props; - if (props.x === 66) { + class Column39 extends React.Component { + render() { + if (this.props.x === 66) { return React.createElement( "div", { className: "_4bl8 _4bl7" }, @@ -1339,14 +1220,11 @@ ); } } - }); - - var XUIButtonGroup40 = React.createClass({ - displayName: "XUIButtonGroup40", + } - render: function () { - var props = this.props; - if (props.x === 75) { + class XUIButtonGroup40 extends React.Component { + render() { + if (this.props.x === 75) { return React.createElement( "div", { className: "_5n7z _51xa" }, @@ -1354,7 +1232,7 @@ React.createElement(ReactPopoverMenu20, { x: 74 }) ); } - if (props.x === 84) { + if (this.props.x === 84) { return React.createElement( "div", { className: "_5n7z _51xa" }, @@ -1362,7 +1240,7 @@ React.createElement(ReactPopoverMenu20, { x: 83, key: "editMenu" }) ); } - if (props.x === 97) { + if (this.props.x === 97) { return React.createElement( "div", { className: "_5n7z _51xa" }, @@ -1371,101 +1249,77 @@ React.createElement(XUIButton4, { x: 96, key: "duplicate" }) ); } - if (props.x === 117) { + if (this.props.x === 117) { return React.createElement( "div", { className: "_5n7z _51xa" }, React.createElement(AdsPEExportImportMenuContainer48, { x: 107 }), - React.createElement(XUIButton4, { x: 110, key: "createReport", ref: "ads_create_report_button" }), + React.createElement(XUIButton4, { x: 110, key: "createReport" }), React.createElement(AdsPECampaignGroupTagContainer51, { x: 116, key: "tags" }) ); } } - }); - - var AdsPEEditToolbarButton41 = React.createClass({ - displayName: "AdsPEEditToolbarButton41", + } - render: function () { - var props = this.props; - if (props.x === 85) { + class AdsPEEditToolbarButton41 extends React.Component { + render() { + if (this.props.x === 85) { return React.createElement(XUIButtonGroup40, { x: 84 }); } } - }); + } - var FluxContainer_AdsPEEditCampaignGroupToolbarButtonContainer_42 = React.createClass({ - displayName: "FluxContainer_AdsPEEditCampaignGroupToolbarButtonContainer_42", - - render: function () { - var props = this.props; - if (props.x === 86) { + class FluxContainer_AdsPEEditCampaignGroupToolbarButtonContainer_42 extends React.Component { + render() { + if (this.props.x === 86) { return React.createElement(AdsPEEditToolbarButton41, { x: 85 }); } } - }); - - var FluxContainer_AdsPEEditToolbarButtonContainer_43 = React.createClass({ - displayName: "FluxContainer_AdsPEEditToolbarButtonContainer_43", + } - render: function () { - var props = this.props; - if (props.x === 87) { + class FluxContainer_AdsPEEditToolbarButtonContainer_43 extends React.Component { + render() { + if (this.props.x === 87) { return React.createElement(FluxContainer_AdsPEEditCampaignGroupToolbarButtonContainer_42, { x: 86 }); } } - }); - - var AdsPEExportImportMenu44 = React.createClass({ - displayName: "AdsPEExportImportMenu44", + } - render: function () { - var props = this.props; - if (props.x === 103) { + class AdsPEExportImportMenu44 extends React.Component { + render() { + if (this.props.x === 103) { return React.createElement(ReactPopoverMenu20, { x: 102, key: "export" }); } } - }); + } - var FluxContainer_AdsPECustomizeExportContainer_45 = React.createClass({ - displayName: "FluxContainer_AdsPECustomizeExportContainer_45", - - render: function () { - var props = this.props; - if (props.x === 104) { + class FluxContainer_AdsPECustomizeExportContainer_45 extends React.Component { + render() { + if (this.props.x === 104) { return null; } } - }); - - var AdsPEExportAsTextDialog46 = React.createClass({ - displayName: "AdsPEExportAsTextDialog46", + } - render: function () { - var props = this.props; - if (props.x === 105) { + class AdsPEExportAsTextDialog46 extends React.Component { + render() { + if (this.props.x === 105) { return null; } } - }); + } - var FluxContainer_AdsPEExportAsTextDialogContainer_47 = React.createClass({ - displayName: "FluxContainer_AdsPEExportAsTextDialogContainer_47", - - render: function () { - var props = this.props; - if (props.x === 106) { + class FluxContainer_AdsPEExportAsTextDialogContainer_47 extends React.Component { + render() { + if (this.props.x === 106) { return React.createElement(AdsPEExportAsTextDialog46, { x: 105 }); } } - }); - - var AdsPEExportImportMenuContainer48 = React.createClass({ - displayName: "AdsPEExportImportMenuContainer48", + } - render: function () { - var props = this.props; - if (props.x === 107) { + class AdsPEExportImportMenuContainer48 extends React.Component { + render() { + if (this.props.x === 107) { return React.createElement( "span", null, @@ -1477,83 +1331,65 @@ ); } } - }); - - var Constructor49 = React.createClass({ - displayName: "Constructor49", + } - render: function () { - var props = this.props; - if (props.x === 114) { + class Constructor49 extends React.Component { + render() { + if (this.props.x === 114) { return null; } - if (props.x === 142) { + if (this.props.x === 142) { return null; } - if (props.x === 143) { + if (this.props.x === 143) { return null; } - if (props.x === 183) { + if (this.props.x === 183) { return null; } } - }); + } - var TagSelectorPopover50 = React.createClass({ - displayName: "TagSelectorPopover50", - - render: function () { - var props = this.props; - if (props.x === 115) { + class TagSelectorPopover50 extends React.Component { + render() { + if (this.props.x === 115) { return React.createElement( "span", { className: " _3d6e" }, - React.createElement(XUIButton4, { x: 113, ref: "button" }), - React.createElement(Constructor49, { x: 114, key: "layer", ref: "layer" }) + React.createElement(XUIButton4, { x: 113 }), + React.createElement(Constructor49, { x: 114, key: "layer" }) ); } } - }); - - var AdsPECampaignGroupTagContainer51 = React.createClass({ - displayName: "AdsPECampaignGroupTagContainer51", + } - render: function () { - var props = this.props; - if (props.x === 116) { + class AdsPECampaignGroupTagContainer51 extends React.Component { + render() { + if (this.props.x === 116) { return React.createElement(TagSelectorPopover50, { x: 115, key: "98010048849317" }); } } - }); - - var AdsRuleToolbarMenu52 = React.createClass({ - displayName: "AdsRuleToolbarMenu52", + } - render: function () { - var props = this.props; - if (props.x === 118) { + class AdsRuleToolbarMenu52 extends React.Component { + render() { + if (this.props.x === 118) { return null; } } - }); + } - var FluxContainer_AdsPERuleToolbarMenuContainer_53 = React.createClass({ - displayName: "FluxContainer_AdsPERuleToolbarMenuContainer_53", - - render: function () { - var props = this.props; - if (props.x === 119) { + class FluxContainer_AdsPERuleToolbarMenuContainer_53 extends React.Component { + render() { + if (this.props.x === 119) { return React.createElement(AdsRuleToolbarMenu52, { x: 118 }); } } - }); - - var FillColumn54 = React.createClass({ - displayName: "FillColumn54", + } - render: function () { - var props = this.props; - if (props.x === 120) { + class FillColumn54 extends React.Component { + render() { + if (this.props.x === 120) { return React.createElement( "div", { className: "_4bl9" }, @@ -1574,14 +1410,11 @@ ); } } - }); - - var Layout55 = React.createClass({ - displayName: "Layout55", + } - render: function () { - var props = this.props; - if (props.x === 121) { + class Layout55 extends React.Component { + render() { + if (this.props.x === 121) { return React.createElement( "div", { className: "clearfix" }, @@ -1590,14 +1423,11 @@ ); } } - }); + } - var AdsPEMainPaneToolbar56 = React.createClass({ - displayName: "AdsPEMainPaneToolbar56", - - render: function () { - var props = this.props; - if (props.x === 122) { + class AdsPEMainPaneToolbar56 extends React.Component { + render() { + if (this.props.x === 122) { return React.createElement( "div", { className: "_3c5b clearfix" }, @@ -1605,80 +1435,65 @@ ); } } - }); - - var AdsPECampaignGroupToolbarContainer57 = React.createClass({ - displayName: "AdsPECampaignGroupToolbarContainer57", + } - render: function () { - var props = this.props; - if (props.x === 123) { + class AdsPECampaignGroupToolbarContainer57 extends React.Component { + render() { + if (this.props.x === 123) { return React.createElement(AdsPEMainPaneToolbar56, { x: 122 }); } } - }); - - var AdsPEFiltersPopover58 = React.createClass({ - displayName: "AdsPEFiltersPopover58", + } - render: function () { - var props = this.props; - if (props.x === 144) { + class AdsPEFiltersPopover58 extends React.Component { + render() { + if (this.props.x === 144) { return React.createElement( "span", { className: "_5b-l _5bbe" }, - React.createElement(ReactXUIPopoverButton6, { x: 133, ref: "searchButton" }), - React.createElement(ReactXUIPopoverButton6, { x: 141, ref: "filterButton" }), + React.createElement(ReactXUIPopoverButton6, { x: 133 }), + React.createElement(ReactXUIPopoverButton6, { x: 141 }), [React.createElement(Constructor49, { x: 142, key: "filterMenu/.0" }), React.createElement(Constructor49, { x: 143, key: "searchMenu/.0" })] ); } } - }); + } - var AbstractCheckboxInput59 = React.createClass({ - displayName: "AbstractCheckboxInput59", - - render: function () { - var props = this.props; - if (props.x === 145) { + class AbstractCheckboxInput59 extends React.Component { + render() { + if (this.props.x === 145) { return React.createElement( "label", { className: "uiInputLabelInput _55sg _kv1" }, - React.createElement("input", { checked: true, disabled: true, name: "filterUnpublished", value: "on", onClick: function () {}, className: null, id: "js_input_label_21", type: "checkbox" }), + React.createElement("input", { checked: true, disabled: true, name: "filterUnpublished", value: "on", onClick: function () { }, className: null, id: "js_input_label_21", type: "checkbox" }), React.createElement("span", { "data-hover": null, "data-tooltip-content": undefined }) ); } - if (props.x === 336) { + if (this.props.x === 336) { return React.createElement( "label", { className: "_4h2r _55sg _kv1" }, - React.createElement("input", { checked: undefined, onChange: function () {}, className: null, type: "checkbox" }), + React.createElement("input", { checked: undefined, onChange: function () { }, className: null, type: "checkbox" }), React.createElement("span", { "data-hover": null, "data-tooltip-content": undefined }) ); } } - }); - - var XUICheckboxInput60 = React.createClass({ - displayName: "XUICheckboxInput60", + } - render: function () { - var props = this.props; - if (props.x === 146) { + class XUICheckboxInput60 extends React.Component { + render() { + if (this.props.x === 146) { return React.createElement(AbstractCheckboxInput59, { x: 145 }); } - if (props.x === 337) { + if (this.props.x === 337) { return React.createElement(AbstractCheckboxInput59, { x: 336 }); } } - }); - - var InputLabel61 = React.createClass({ - displayName: "InputLabel61", + } - render: function () { - var props = this.props; - if (props.x === 147) { + class InputLabel61 extends React.Component { + render() { + if (this.props.x === 147) { return React.createElement( "div", { display: "block", className: "uiInputLabel clearfix" }, @@ -1691,33 +1506,30 @@ ); } } - }); + } - var AdsPopoverLink62 = React.createClass({ - displayName: "AdsPopoverLink62", - - render: function () { - var props = this.props; - if (props.x === 154) { + class AdsPopoverLink62 extends React.Component { + render() { + if (this.props.x === 154) { return React.createElement( "span", null, React.createElement( "span", - { ref: "tipIcon", onMouseEnter: function () {}, onMouseLeave: function () {}, onMouseUp: undefined }, + { onMouseEnter: function () { }, onMouseLeave: function () { }, onMouseUp: undefined }, React.createElement("span", { className: "_3o_j" }), React.createElement(ReactImage0, { x: 153 }) ), null ); } - if (props.x === 238) { + if (this.props.x === 238) { return React.createElement( "span", null, React.createElement( "span", - { ref: "tipIcon", onMouseEnter: function () {}, onMouseLeave: function () {}, onMouseUp: undefined }, + { onMouseEnter: function () { }, onMouseLeave: function () { }, onMouseUp: undefined }, React.createElement("span", { className: "_3o_j" }), React.createElement(ReactImage0, { x: 237 }) ), @@ -1725,28 +1537,22 @@ ); } } - }); - - var AdsHelpLink63 = React.createClass({ - displayName: "AdsHelpLink63", + } - render: function () { - var props = this.props; - if (props.x === 155) { + class AdsHelpLink63 extends React.Component { + render() { + if (this.props.x === 155) { return React.createElement(AdsPopoverLink62, { x: 154 }); } - if (props.x === 239) { + if (this.props.x === 239) { return React.createElement(AdsPopoverLink62, { x: 238 }); } } - }); - - var BUIFilterTokenInput64 = React.createClass({ - displayName: "BUIFilterTokenInput64", + } - render: function () { - var props = this.props; - if (props.x === 158) { + class BUIFilterTokenInput64 extends React.Component { + render() { + if (this.props.x === 158) { return React.createElement( "div", { className: "_5b5o _3yz3 _4cld" }, @@ -1765,23 +1571,20 @@ ); } } - }); + } - var BUIFilterToken65 = React.createClass({ - displayName: "BUIFilterToken65", - - render: function () { - var props = this.props; - if (props.x === 159) { + class BUIFilterToken65 extends React.Component { + render() { + if (this.props.x === 159) { return React.createElement( "div", { className: "_3yz1 _3yz2 _3dad" }, React.createElement( "div", - { ref: "filterToken", className: "_3yz4", "aria-hidden": false }, + { className: "_3yz4", "aria-hidden": false }, React.createElement( "div", - { onClick: function () {}, className: "_3yz5" }, + { onClick: function () { }, className: "_3yz5" }, React.createElement(ReactImage0, { x: 148 }), React.createElement( "div", @@ -1797,18 +1600,15 @@ null, React.createElement(XUICloseButton28, { x: 151 }) ), - React.createElement(BUIFilterTokenInput64, { x: 158, ref: "filterTokenInput" }) + React.createElement(BUIFilterTokenInput64, { x: 158 }) ); } } - }); - - var BUIFilterTokenCreateButton66 = React.createClass({ - displayName: "BUIFilterTokenCreateButton66", + } - render: function () { - var props = this.props; - if (props.x === 163) { + class BUIFilterTokenCreateButton66 extends React.Component { + render() { + if (this.props.x === 163) { return React.createElement( "div", { className: "_1tc" }, @@ -1816,14 +1616,11 @@ ); } } - }); - - var BUIFilterTokenizer67 = React.createClass({ - displayName: "BUIFilterTokenizer67", + } - render: function () { - var props = this.props; - if (props.x === 164) { + class BUIFilterTokenizer67 extends React.Component { + render() { + if (this.props.x === 164) { return React.createElement( "div", { className: "_5b-m clearfix" }, @@ -1836,64 +1633,52 @@ ); } } - }); + } - var XUIAmbientNUX68 = React.createClass({ - displayName: "XUIAmbientNUX68", - - render: function () { - var props = this.props; - if (props.x === 165) { + class XUIAmbientNUX68 extends React.Component { + render() { + if (this.props.x === 165) { return null; } - if (props.x === 189) { + if (this.props.x === 189) { return null; } - if (props.x === 200) { + if (this.props.x === 200) { return null; } } - }); - - var XUIAmbientNUX69 = React.createClass({ - displayName: "XUIAmbientNUX69", + } - render: function () { - var props = this.props; - if (props.x === 166) { + class XUIAmbientNUX69 extends React.Component { + render() { + if (this.props.x === 166) { return React.createElement(XUIAmbientNUX68, { x: 165 }); } - if (props.x === 190) { + if (this.props.x === 190) { return React.createElement(XUIAmbientNUX68, { x: 189 }); } - if (props.x === 201) { + if (this.props.x === 201) { return React.createElement(XUIAmbientNUX68, { x: 200 }); } } - }); + } - var AdsPEAmbientNUXMegaphone70 = React.createClass({ - displayName: "AdsPEAmbientNUXMegaphone70", - - render: function () { - var props = this.props; - if (props.x === 167) { + class AdsPEAmbientNUXMegaphone70 extends React.Component { + render() { + if (this.props.x === 167) { return React.createElement( "span", null, - React.createElement("span", { ref: "mainChild" }), + React.createElement("span", {}), React.createElement(XUIAmbientNUX69, { x: 166, key: "nux" }) ); } } - }); - - var AdsPEFilters71 = React.createClass({ - displayName: "AdsPEFilters71", + } - render: function () { - var props = this.props; - if (props.x === 168) { + class AdsPEFilters71 extends React.Component { + render() { + if (this.props.x === 168) { return React.createElement( "div", { className: "_4rw_" }, @@ -1909,61 +1694,46 @@ ); } } - }); - - var AdsPEFilterContainer72 = React.createClass({ - displayName: "AdsPEFilterContainer72", + } - render: function () { - var props = this.props; - if (props.x === 169) { + class AdsPEFilterContainer72 extends React.Component { + render() { + if (this.props.x === 169) { return React.createElement(AdsPEFilters71, { x: 168 }); } } - }); + } - var AdsPETablePager73 = React.createClass({ - displayName: "AdsPETablePager73", - - render: function () { - var props = this.props; - if (props.x === 172) { + class AdsPETablePager73 extends React.Component { + render() { + if (this.props.x === 172) { return null; } } - }); - - var AdsPECampaignGroupTablePagerContainer74 = React.createClass({ - displayName: "AdsPECampaignGroupTablePagerContainer74", + } - render: function () { - var props = this.props; - if (props.x === 173) { + class AdsPECampaignGroupTablePagerContainer74 extends React.Component { + render() { + if (this.props.x === 173) { return React.createElement(AdsPETablePager73, { x: 172 }); } } - }); - - var AdsPETablePagerContainer75 = React.createClass({ - displayName: "AdsPETablePagerContainer75", + } - render: function () { - var props = this.props; - if (props.x === 174) { + class AdsPETablePagerContainer75 extends React.Component { + render() { + if (this.props.x === 174) { return React.createElement(AdsPECampaignGroupTablePagerContainer74, { x: 173 }); } } - }); + } - var ReactXUIError76 = React.createClass({ - displayName: "ReactXUIError76", - - render: function () { - var props = this.props; - if (props.x === 181) { + class ReactXUIError76 extends React.Component { + render() { + if (this.props.x === 181) { return React.createElement(AbstractButton3, { x: 180 }); } - if (props.x === 216) { + if (this.props.x === 216) { return React.createElement( "div", { className: "_40bf _2vl4 _1h18" }, @@ -1979,71 +1749,59 @@ "div", null, null, - React.createElement("textarea", { ref: "input", className: "_2vli _2vlj _1h26 _1h27", dir: "auto", disabled: undefined, id: undefined, maxLength: null, value: "Test Campaign", onBlur: function () {}, onChange: function () {}, onFocus: function () {}, onKeyDown: function () {} }), + React.createElement("textarea", { className: "_2vli _2vlj _1h26 _1h27", dir: "auto", disabled: undefined, id: undefined, maxLength: null, value: "Test Campaign", onBlur: function () { }, onChange: function () { }, onFocus: function () { }, onKeyDown: function () { } }), null ), - React.createElement("div", { ref: "shadowText", "aria-hidden": "true", className: "_2vlk" }) + React.createElement("div", { "aria-hidden": "true", className: "_2vlk" }) ) ), null ); } - if (props.x === 221) { + if (this.props.x === 221) { return React.createElement(XUICard94, { x: 220 }); } - if (props.x === 250) { + if (this.props.x === 250) { return React.createElement(XUICard94, { x: 249 }); } - if (props.x === 280) { + if (this.props.x === 280) { return React.createElement(XUICard94, { x: 279 }); } } - }); - - var BUIPopoverButton77 = React.createClass({ - displayName: "BUIPopoverButton77", + } - render: function () { - var props = this.props; - if (props.x === 182) { + class BUIPopoverButton77 extends React.Component { + render() { + if (this.props.x === 182) { return React.createElement(ReactXUIError76, { x: 181 }); } } - }); - - var BUIDateRangePicker78 = React.createClass({ - displayName: "BUIDateRangePicker78", + } - render: function () { - var props = this.props; - if (props.x === 184) { + class BUIDateRangePicker78 extends React.Component { + render() { + if (this.props.x === 184) { return React.createElement( "span", null, - React.createElement(BUIPopoverButton77, { x: 182, ref: function () {} }), + React.createElement(BUIPopoverButton77, { x: 182 }), [React.createElement(Constructor49, { x: 183, key: "layer/.0" })] ); } } - }); + } - var AdsPEStatsRangePicker79 = React.createClass({ - displayName: "AdsPEStatsRangePicker79", - - render: function () { - var props = this.props; - if (props.x === 185) { + class AdsPEStatsRangePicker79 extends React.Component { + render() { + if (this.props.x === 185) { return React.createElement(BUIDateRangePicker78, { x: 184 }); } } - }); - - var AdsPEStatRange80 = React.createClass({ - displayName: "AdsPEStatRange80", + } - render: function () { - var props = this.props; - if (props.x === 191) { + class AdsPEStatRange80 extends React.Component { + render() { + if (this.props.x === 191) { return React.createElement( "div", { className: "_3c5k" }, @@ -2056,98 +1814,80 @@ "span", { className: "_3c5l" }, React.createElement(AdsPEStatsRangePicker79, { x: 185 }), - React.createElement(XUIButton4, { x: 188, key: "settings", ref: "PE_TABLE_LIST_SETTING" }) + React.createElement(XUIButton4, { x: 188, key: "settings" }) ), [React.createElement(XUIAmbientNUX69, { x: 190, key: "roasNUX/.0" })] ); } } - }); - - var AdsPEStatRangeContainer81 = React.createClass({ - displayName: "AdsPEStatRangeContainer81", + } - render: function () { - var props = this.props; - if (props.x === 192) { + class AdsPEStatRangeContainer81 extends React.Component { + render() { + if (this.props.x === 192) { return React.createElement(AdsPEStatRange80, { x: 191 }); } } - }); + } - var AdsPESideTrayTabButton82 = React.createClass({ - displayName: "AdsPESideTrayTabButton82", - - render: function () { - var props = this.props; - if (props.x === 196) { + class AdsPESideTrayTabButton82 extends React.Component { + render() { + if (this.props.x === 196) { return React.createElement( "div", - { className: "_1-ly _59j9 _d9a", onClick: function () {} }, + { className: "_1-ly _59j9 _d9a", onClick: function () { } }, React.createElement(ReactImage0, { x: 195 }), React.createElement("div", { className: "_vf7" }), React.createElement("div", { className: "_vf8" }) ); } - if (props.x === 199) { + if (this.props.x === 199) { return React.createElement( "div", - { className: " _1-lz _d9a", onClick: function () {} }, + { className: " _1-lz _d9a", onClick: function () { } }, React.createElement(ReactImage0, { x: 198 }), React.createElement("div", { className: "_vf7" }), React.createElement("div", { className: "_vf8" }) ); } - if (props.x === 203) { + if (this.props.x === 203) { return null; } } - }); - - var AdsPEEditorTrayTabButton83 = React.createClass({ - displayName: "AdsPEEditorTrayTabButton83", + } - render: function () { - var props = this.props; - if (props.x === 197) { + class AdsPEEditorTrayTabButton83 extends React.Component { + render() { + if (this.props.x === 197) { return React.createElement(AdsPESideTrayTabButton82, { x: 196 }); } } - }); - - var AdsPEInsightsTrayTabButton84 = React.createClass({ - displayName: "AdsPEInsightsTrayTabButton84", + } - render: function () { - var props = this.props; - if (props.x === 202) { + class AdsPEInsightsTrayTabButton84 extends React.Component { + render() { + if (this.props.x === 202) { return React.createElement( "span", null, - React.createElement(AdsPESideTrayTabButton82, { x: 199, ref: "PE_INSIGHTS_TAB_ICON" }), + React.createElement(AdsPESideTrayTabButton82, { x: 199 }), React.createElement(XUIAmbientNUX69, { x: 201, key: "roasNUX" }) ); } } - }); + } - var AdsPENekoDebuggerTrayTabButton85 = React.createClass({ - displayName: "AdsPENekoDebuggerTrayTabButton85", - - render: function () { - var props = this.props; - if (props.x === 204) { + class AdsPENekoDebuggerTrayTabButton85 extends React.Component { + render() { + if (this.props.x === 204) { return React.createElement(AdsPESideTrayTabButton82, { x: 203 }); } } - }); - - var AdsPEEditorChildLink86 = React.createClass({ - displayName: "AdsPEEditorChildLink86", + } - render: function () { - var props = this.props; - if (props.x === 211) { + class AdsPEEditorChildLink86 extends React.Component { + render() { + if (this.props.x === 211) { return React.createElement( "div", { className: "_3ywr" }, @@ -2161,25 +1901,19 @@ ); } } - }); - - var AdsPEEditorChildLinkContainer87 = React.createClass({ - displayName: "AdsPEEditorChildLinkContainer87", + } - render: function () { - var props = this.props; - if (props.x === 212) { + class AdsPEEditorChildLinkContainer87 extends React.Component { + render() { + if (this.props.x === 212) { return React.createElement(AdsPEEditorChildLink86, { x: 211 }); } } - }); + } - var AdsPEHeaderSection88 = React.createClass({ - displayName: "AdsPEHeaderSection88", - - render: function () { - var props = this.props; - if (props.x === 213) { + class AdsPEHeaderSection88 extends React.Component { + render() { + if (this.props.x === 213) { return React.createElement( "div", { className: "_yke" }, @@ -2198,47 +1932,35 @@ ); } } - }); - - var AdsPECampaignGroupHeaderSectionContainer89 = React.createClass({ - displayName: "AdsPECampaignGroupHeaderSectionContainer89", + } - render: function () { - var props = this.props; - if (props.x === 214) { + class AdsPECampaignGroupHeaderSectionContainer89 extends React.Component { + render() { + if (this.props.x === 214) { return React.createElement(AdsPEHeaderSection88, { x: 213 }); } } - }); - - var AdsEditorLoadingErrors90 = React.createClass({ - displayName: "AdsEditorLoadingErrors90", + } - render: function () { - var props = this.props; - if (props.x === 215) { + class AdsEditorLoadingErrors90 extends React.Component { + render() { + if (this.props.x === 215) { return null; } } - }); + } - var AdsTextInput91 = React.createClass({ - displayName: "AdsTextInput91", - - render: function () { - var props = this.props; - if (props.x === 217) { + class AdsTextInput91 extends React.Component { + render() { + if (this.props.x === 217) { return React.createElement(ReactXUIError76, { x: 216 }); } } - }); - - var BUIFormElement92 = React.createClass({ - displayName: "BUIFormElement92", + } - render: function () { - var props = this.props; - if (props.x === 218) { + class BUIFormElement92 extends React.Component { + render() { + if (this.props.x === 218) { return React.createElement( "div", { className: "_5521 clearfix" }, @@ -2260,8 +1982,8 @@ { className: "_5528" }, React.createElement( "span", - { key: ".0", className: "_40bg", density: "snug", labelPosition: "left", id: "1467872040612:1961945894" }, - React.createElement(AdsTextInput91, { x: 217, key: "nameEditor98010048849317", ref: "nameTextInput" }), + { key: ".0", className: "_40bg", id: "1467872040612:1961945894" }, + React.createElement(AdsTextInput91, { x: 217, key: "nameEditor98010048849317" }), null ) ), @@ -2270,14 +1992,11 @@ ); } } - }); + } - var BUIForm93 = React.createClass({ - displayName: "BUIForm93", - - render: function () { - var props = this.props; - if (props.x === 219) { + class BUIForm93 extends React.Component { + render() { + if (this.props.x === 219) { return React.createElement( "div", { className: "_5ks1 _550r _550t _550y _3w5n" }, @@ -2285,138 +2004,117 @@ ); } } - }); - - var XUICard94 = React.createClass({ - displayName: "XUICard94", + } - render: function () { - var props = this.props; - if (props.x === 220) { + class XUICard94 extends React.Component { + render() { + if (this.props.x === 220) { return React.createElement( "div", - { className: "_40bc _12k2 _4-u2 _4-u8", xuiErrorPosition: "above", background: "white" }, + { className: "_40bc _12k2 _4-u2 _4-u8" }, React.createElement(BUIForm93, { x: 219 }) ); } - if (props.x === 249) { + if (this.props.x === 249) { return React.createElement( "div", - { xuiErrorPosition: "above", className: "_12k2 _4-u2 _4-u8", background: "white" }, + { className: "_12k2 _4-u2 _4-u8" }, React.createElement(AdsCardHeader103, { x: 230 }), React.createElement(AdsCardSection108, { x: 248 }) ); } - if (props.x === 279) { + if (this.props.x === 279) { return React.createElement( "div", - { xuiErrorPosition: "above", className: "_12k2 _4-u2 _4-u8", background: "white" }, + { className: "_12k2 _4-u2 _4-u8" }, React.createElement(AdsCardLeftRightHeader122, { x: 278 }) ); } } - }); - - var AdsCard95 = React.createClass({ - displayName: "AdsCard95", + } - render: function () { - var props = this.props; - if (props.x === 222) { + class AdsCard95 extends React.Component { + render() { + if (this.props.x === 222) { return React.createElement(ReactXUIError76, { x: 221 }); } - if (props.x === 251) { + if (this.props.x === 251) { return React.createElement(ReactXUIError76, { x: 250 }); } - if (props.x === 281) { + if (this.props.x === 281) { return React.createElement(ReactXUIError76, { x: 280 }); } } - }); + } - var AdsEditorNameSection96 = React.createClass({ - displayName: "AdsEditorNameSection96", - - render: function () { - var props = this.props; - if (props.x === 223) { + class AdsEditorNameSection96 extends React.Component { + render() { + if (this.props.x === 223) { return React.createElement(AdsCard95, { x: 222 }); } } - }); - - var AdsCampaignGroupNameSectionContainer97 = React.createClass({ - displayName: "AdsCampaignGroupNameSectionContainer97", + } - render: function () { - var props = this.props; - if (props.x === 224) { + class AdsCampaignGroupNameSectionContainer97 extends React.Component { + render() { + if (this.props.x === 224) { return React.createElement(AdsEditorNameSection96, { x: 223, key: "nameSection98010048849317" }); } } - }); - - var _render98 = React.createClass({ - displayName: "_render98", + } - render: function () { - var props = this.props; - if (props.x === 225) { + class _render98 extends React.Component { + render() { + if (this.props.x === 225) { return React.createElement(AdsCampaignGroupNameSectionContainer97, { x: 224 }); } } - }); + } - var AdsPluginWrapper99 = React.createClass({ - displayName: "AdsPluginWrapper99", - - render: function () { - var props = this.props; - if (props.x === 226) { + class AdsPluginWrapper99 extends React.Component { + render() { + if (this.props.x === 226) { return React.createElement(_render98, { x: 225 }); } - if (props.x === 255) { + if (this.props.x === 255) { return React.createElement(_render111, { x: 254 }); } - if (props.x === 258) { + if (this.props.x === 258) { return React.createElement(_render113, { x: 257 }); } - if (props.x === 287) { + if (this.props.x === 287) { return React.createElement(_render127, { x: 286 }); } - if (props.x === 291) { + if (this.props.x === 291) { return React.createElement(_render130, { x: 290 }); } } - }); - - var XUICardHeaderTitle100 = React.createClass({ - displayName: "XUICardHeaderTitle100", + } - render: function () { - var props = this.props; - if (props.x === 227) { + class XUICardHeaderTitle100 extends React.Component { + render() { + if (this.props.x === 227) { return React.createElement( "span", - { itemComponent: "span", className: "_38my" }, + { className: "_38my" }, "Campaign Details", null, React.createElement("span", { className: "_c1c" }) ); } - if (props.x === 265) { + if (this.props.x === 265) { return React.createElement( "span", - { itemComponent: "span", className: "_38my" }, + { className: "_38my" }, [React.createElement( "span", - null, + { key: 1 }, "Campaign ID", ": ", "98010048849317" ), React.createElement( "div", - { className: "_5lh9" }, + { className: "_5lh9", key: 2 }, React.createElement(FluxContainer_AdsCampaignGroupStatusSwitchContainer_119, { x: 264 }) )], null, @@ -2424,27 +2122,24 @@ ); } } - }); + } - var XUICardSection101 = React.createClass({ - displayName: "XUICardSection101", - - render: function () { - var props = this.props; - if (props.x === 228) { + class XUICardSection101 extends React.Component { + render() { + if (this.props.x === 228) { return React.createElement( "div", - { className: "_5dw9 _5dwa _4-u3", background: "transparent" }, + { className: "_5dw9 _5dwa _4-u3" }, [React.createElement(XUICardHeaderTitle100, { x: 227, key: ".0" })], undefined, undefined, React.createElement("div", { className: "_3s3-" }) ); } - if (props.x === 247) { + if (this.props.x === 247) { return React.createElement( "div", - { className: "_12jy _4-u3", background: "transparent" }, + { className: "_12jy _4-u3" }, React.createElement( "div", { className: "_3-8j" }, @@ -2457,39 +2152,30 @@ ); } } - }); - - var XUICardHeader102 = React.createClass({ - displayName: "XUICardHeader102", + } - render: function () { - var props = this.props; - if (props.x === 229) { + class XUICardHeader102 extends React.Component { + render() { + if (this.props.x === 229) { return React.createElement(XUICardSection101, { x: 228 }); } } - }); - - var AdsCardHeader103 = React.createClass({ - displayName: "AdsCardHeader103", + } - render: function () { - var props = this.props; - if (props.x === 230) { + class AdsCardHeader103 extends React.Component { + render() { + if (this.props.x === 230) { return React.createElement(XUICardHeader102, { x: 229 }); } } - }); + } - var AdsLabeledField104 = React.createClass({ - displayName: "AdsLabeledField104", - - render: function () { - var props = this.props; - if (props.x === 231) { + class AdsLabeledField104 extends React.Component { + render() { + if (this.props.x === 231) { return React.createElement( "div", - { className: "_2oc6 _3bvz", label: "Objective", labelSize: "small", optionalText: "(optional)" }, + { className: "_2oc6 _3bvz", label: "Objective" }, React.createElement( "label", { className: "_4el4 _3qwj _3hy-", htmlFor: undefined }, @@ -2499,10 +2185,10 @@ React.createElement("div", { className: "_3bv-" }) ); } - if (props.x === 234) { + if (this.props.x === 234) { return React.createElement( "div", - { className: "_2oc6 _3bvz", label: "Buying Type", labelSize: "small", optionalText: "(optional)" }, + { className: "_2oc6 _3bvz", label: "Buying Type" }, React.createElement( "label", { className: "_4el4 _3qwj _3hy-", htmlFor: undefined }, @@ -2512,10 +2198,10 @@ React.createElement("div", { className: "_3bv-" }) ); } - if (props.x === 240) { + if (this.props.x === 240) { return React.createElement( "div", - { className: "_2oc6 _3bvz", helpText: "Set an overall spending limit for your ad campaign. This means your ad sets in the campaign will stop once you've reached your spending limit.", label: "Campaign Spending Limit", labelSize: "small", optionalText: "(optional)" }, + { className: "_2oc6 _3bvz" }, React.createElement( "label", { className: "_4el4 _3qwj _3hy-", htmlFor: undefined }, @@ -2526,31 +2212,25 @@ ); } } - }); - - var FlexibleBlock105 = React.createClass({ - displayName: "FlexibleBlock105", + } - render: function () { - var props = this.props; - if (props.x === 233) { + class FlexibleBlock105 extends React.Component { + render() { + if (this.props.x === 233) { return React.createElement(LeftRight21, { x: 232 }); } - if (props.x === 236) { + if (this.props.x === 236) { return React.createElement(LeftRight21, { x: 235 }); } - if (props.x === 246) { + if (this.props.x === 246) { return React.createElement(LeftRight21, { x: 245 }); } } - }); - - var AdsBulkCampaignSpendCapField106 = React.createClass({ - displayName: "AdsBulkCampaignSpendCapField106", + } - render: function () { - var props = this.props; - if (props.x === 243) { + class AdsBulkCampaignSpendCapField106 extends React.Component { + render() { + if (this.props.x === 243) { return React.createElement( "div", { className: "_33dv" }, @@ -2560,104 +2240,80 @@ ); } } - }); + } - var FluxContainer_AdsCampaignGroupSpendCapContainer_107 = React.createClass({ - displayName: "FluxContainer_AdsCampaignGroupSpendCapContainer_107", - - render: function () { - var props = this.props; - if (props.x === 244) { + class FluxContainer_AdsCampaignGroupSpendCapContainer_107 extends React.Component { + render() { + if (this.props.x === 244) { return React.createElement(AdsBulkCampaignSpendCapField106, { x: 243 }); } } - }); - - var AdsCardSection108 = React.createClass({ - displayName: "AdsCardSection108", + } - render: function () { - var props = this.props; - if (props.x === 248) { + class AdsCardSection108 extends React.Component { + render() { + if (this.props.x === 248) { return React.createElement(XUICardSection101, { x: 247 }); } } - }); - - var AdsEditorCampaignGroupDetailsSection109 = React.createClass({ - displayName: "AdsEditorCampaignGroupDetailsSection109", + } - render: function () { - var props = this.props; - if (props.x === 252) { + class AdsEditorCampaignGroupDetailsSection109 extends React.Component { + render() { + if (this.props.x === 252) { return React.createElement(AdsCard95, { x: 251 }); } } - }); + } - var AdsEditorCampaignGroupDetailsSectionContainer110 = React.createClass({ - displayName: "AdsEditorCampaignGroupDetailsSectionContainer110", - - render: function () { - var props = this.props; - if (props.x === 253) { + class AdsEditorCampaignGroupDetailsSectionContainer110 extends React.Component { + render() { + if (this.props.x === 253) { return React.createElement(AdsEditorCampaignGroupDetailsSection109, { x: 252, key: "campaignGroupDetailsSection98010048849317" }); } } - }); - - var _render111 = React.createClass({ - displayName: "_render111", + } - render: function () { - var props = this.props; - if (props.x === 254) { + class _render111 extends React.Component { + render() { + if (this.props.x === 254) { return React.createElement(AdsEditorCampaignGroupDetailsSectionContainer110, { x: 253 }); } } - }); - - var FluxContainer_AdsEditorToplineDetailsSectionContainer_112 = React.createClass({ - displayName: "FluxContainer_AdsEditorToplineDetailsSectionContainer_112", + } - render: function () { - var props = this.props; - if (props.x === 256) { + class FluxContainer_AdsEditorToplineDetailsSectionContainer_112 extends React.Component { + render() { + if (this.props.x === 256) { return null; } } - }); + } - var _render113 = React.createClass({ - displayName: "_render113", - - render: function () { - var props = this.props; - if (props.x === 257) { + class _render113 extends React.Component { + render() { + if (this.props.x === 257) { return React.createElement(FluxContainer_AdsEditorToplineDetailsSectionContainer_112, { x: 256 }); } } - }); - - var AdsStickyArea114 = React.createClass({ - displayName: "AdsStickyArea114", + } - render: function () { - var props = this.props; - if (props.x === 259) { + class AdsStickyArea114 extends React.Component { + render() { + if (this.props.x === 259) { return React.createElement( "div", - { inContainingBlock: true }, - React.createElement("div", { ref: "sticky", onWheel: function () {} }) + {}, + React.createElement("div", { onWheel: function () { } }) ); } - if (props.x === 292) { + if (this.props.x === 292) { return React.createElement( "div", - { inContainingBlock: true }, + {}, React.createElement( "div", - { ref: "sticky", onWheel: function () {} }, + { onWheel: function () { } }, [React.createElement( "div", { key: "campaign_group_errors_section98010048849317" }, @@ -2667,14 +2323,11 @@ ); } } - }); + } - var FluxContainer_AdsEditorColumnContainer_115 = React.createClass({ - displayName: "FluxContainer_AdsEditorColumnContainer_115", - - render: function () { - var props = this.props; - if (props.x === 260) { + class FluxContainer_AdsEditorColumnContainer_115 extends React.Component { + render() { + if (this.props.x === 260) { return React.createElement( "div", null, @@ -2694,7 +2347,7 @@ React.createElement(AdsStickyArea114, { x: 259 }) ); } - if (props.x === 293) { + if (this.props.x === 293) { return React.createElement( "div", null, @@ -2707,78 +2360,60 @@ ); } } - }); - - var BUISwitch116 = React.createClass({ - displayName: "BUISwitch116", + } - render: function () { - var props = this.props; - if (props.x === 261) { + class BUISwitch116 extends React.Component { + render() { + if (this.props.x === 261) { return React.createElement( "div", - { "data-hover": "tooltip", "data-tooltip-content": "Currently active. Click this switch to deactivate it.", "data-tooltip-position": "below", disabled: false, value: true, onToggle: function () {}, animate: true, className: "_128j _128k _128n", role: "checkbox", "aria-checked": "true" }, + { "data-hover": "tooltip", "data-tooltip-content": "Currently active. Click this switch to deactivate it.", "data-tooltip-position": "below", disabled: false, value: true, onToggle: function () { }, className: "_128j _128k _128n", role: "checkbox", "aria-checked": "true" }, React.createElement( "div", - { className: "_128o", onClick: function () {}, onKeyDown: function () {}, onMouseDown: function () {}, tabIndex: "0" }, + { className: "_128o", onClick: function () { }, onKeyDown: function () { }, onMouseDown: function () { }, tabIndex: "0" }, React.createElement("div", { className: "_128p" }) ), null ); } } - }); - - var AdsStatusSwitchInternal117 = React.createClass({ - displayName: "AdsStatusSwitchInternal117", + } - render: function () { - var props = this.props; - if (props.x === 262) { + class AdsStatusSwitchInternal117 extends React.Component { + render() { + if (this.props.x === 262) { return React.createElement(BUISwitch116, { x: 261 }); } } - }); + } - var AdsStatusSwitch118 = React.createClass({ - displayName: "AdsStatusSwitch118", - - render: function () { - var props = this.props; - if (props.x === 263) { + class AdsStatusSwitch118 extends React.Component { + render() { + if (this.props.x === 263) { return React.createElement(AdsStatusSwitchInternal117, { x: 262 }); } } - }); - - var FluxContainer_AdsCampaignGroupStatusSwitchContainer_119 = React.createClass({ - displayName: "FluxContainer_AdsCampaignGroupStatusSwitchContainer_119", + } - render: function () { - var props = this.props; - if (props.x === 264) { + class FluxContainer_AdsCampaignGroupStatusSwitchContainer_119 extends React.Component { + render() { + if (this.props.x === 264) { return React.createElement(AdsStatusSwitch118, { x: 263, key: "status98010048849317" }); } } - }); - - var AdsLinksMenu120 = React.createClass({ - displayName: "AdsLinksMenu120", + } - render: function () { - var props = this.props; - if (props.x === 275) { + class AdsLinksMenu120 extends React.Component { + render() { + if (this.props.x === 275) { return React.createElement(ReactPopoverMenu20, { x: 274 }); } } - }); + } - var FluxContainer_AdsPluginizedLinksMenuContainer_121 = React.createClass({ - displayName: "FluxContainer_AdsPluginizedLinksMenuContainer_121", - - render: function () { - var props = this.props; - if (props.x === 276) { + class FluxContainer_AdsPluginizedLinksMenuContainer_121 extends React.Component { + render() { + if (this.props.x === 276) { return React.createElement( "div", null, @@ -2787,113 +2422,83 @@ ); } } - }); - - var AdsCardLeftRightHeader122 = React.createClass({ - displayName: "AdsCardLeftRightHeader122", + } - render: function () { - var props = this.props; - if (props.x === 278) { + class AdsCardLeftRightHeader122 extends React.Component { + render() { + if (this.props.x === 278) { return React.createElement(LeftRight21, { x: 277 }); } } - }); - - var AdsPEIDSection123 = React.createClass({ - displayName: "AdsPEIDSection123", + } - render: function () { - var props = this.props; - if (props.x === 282) { + class AdsPEIDSection123 extends React.Component { + render() { + if (this.props.x === 282) { return React.createElement(AdsCard95, { x: 281 }); } } - }); + } - var FluxContainer_AdsPECampaignGroupIDSectionContainer_124 = React.createClass({ - displayName: "FluxContainer_AdsPECampaignGroupIDSectionContainer_124", - - render: function () { - var props = this.props; - if (props.x === 283) { + class FluxContainer_AdsPECampaignGroupIDSectionContainer_124 extends React.Component { + render() { + if (this.props.x === 283) { return React.createElement(AdsPEIDSection123, { x: 282 }); } } - }); - - var DeferredComponent125 = React.createClass({ - displayName: "DeferredComponent125", + } - render: function () { - var props = this.props; - if (props.x === 284) { + class DeferredComponent125 extends React.Component { + render() { + if (this.props.x === 284) { return React.createElement(FluxContainer_AdsPECampaignGroupIDSectionContainer_124, { x: 283 }); } } - }); - - var BootloadedComponent126 = React.createClass({ - displayName: "BootloadedComponent126", + } - render: function () { - var props = this.props; - if (props.x === 285) { + class BootloadedComponent126 extends React.Component { + render() { + if (this.props.x === 285) { return React.createElement(DeferredComponent125, { x: 284 }); } } - }); + } - var _render127 = React.createClass({ - displayName: "_render127", - - render: function () { - var props = this.props; - if (props.x === 286) { + class _render127 extends React.Component { + render() { + if (this.props.x === 286) { return React.createElement(BootloadedComponent126, { x: 285 }); } } - }); - - var AdsEditorErrorsCard128 = React.createClass({ - displayName: "AdsEditorErrorsCard128", + } - render: function () { - var props = this.props; - if (props.x === 288) { + class AdsEditorErrorsCard128 extends React.Component { + render() { + if (this.props.x === 288) { return null; } } - }); - - var FluxContainer_FunctionalContainer_129 = React.createClass({ - displayName: "FluxContainer_FunctionalContainer_129", + } - render: function () { - var props = this.props; - if (props.x === 289) { + class FluxContainer_FunctionalContainer_129 extends React.Component { + render() { + if (this.props.x === 289) { return React.createElement(AdsEditorErrorsCard128, { x: 288 }); } } - }); + } - var _render130 = React.createClass({ - displayName: "_render130", - - render: function () { - var props = this.props; - if (props.x === 290) { + class _render130 extends React.Component { + render() { + if (this.props.x === 290) { return React.createElement(FluxContainer_FunctionalContainer_129, { x: 289 }); } } - }); - - var AdsEditorMultiColumnLayout131 = React.createClass({ - displayName: "AdsEditorMultiColumnLayout131", + } - render: function () { - var props = this.props; - if (props.x === 294) { + class AdsEditorMultiColumnLayout131 extends React.Component { + render() { + if (this.props.x === 294) { return React.createElement( "div", { className: "_psh" }, @@ -2923,14 +2528,11 @@ ); } } - }); - - var AdsPECampaignGroupEditor132 = React.createClass({ - displayName: "AdsPECampaignGroupEditor132", + } - render: function () { - var props = this.props; - if (props.x === 295) { + class AdsPECampaignGroupEditor132 extends React.Component { + render() { + if (this.props.x === 295) { return React.createElement( "div", null, @@ -2939,25 +2541,19 @@ ); } } - }); + } - var AdsPECampaignGroupEditorContainer133 = React.createClass({ - displayName: "AdsPECampaignGroupEditorContainer133", - - render: function () { - var props = this.props; - if (props.x === 296) { + class AdsPECampaignGroupEditorContainer133 extends React.Component { + render() { + if (this.props.x === 296) { return React.createElement(AdsPECampaignGroupEditor132, { x: 295 }); } } - }); - - var AdsPESideTrayTabContent134 = React.createClass({ - displayName: "AdsPESideTrayTabContent134", + } - render: function () { - var props = this.props; - if (props.x === 297) { + class AdsPESideTrayTabContent134 extends React.Component { + render() { + if (this.props.x === 297) { return React.createElement( "div", { className: "_1o_8 _44ra _5cyn" }, @@ -2965,25 +2561,19 @@ ); } } - }); - - var AdsPEEditorTrayTabContentContainer135 = React.createClass({ - displayName: "AdsPEEditorTrayTabContentContainer135", + } - render: function () { - var props = this.props; - if (props.x === 298) { + class AdsPEEditorTrayTabContentContainer135 extends React.Component { + render() { + if (this.props.x === 298) { return React.createElement(AdsPESideTrayTabContent134, { x: 297 }); } } - }); + } - var AdsPEMultiTabDrawer136 = React.createClass({ - displayName: "AdsPEMultiTabDrawer136", - - render: function () { - var props = this.props; - if (props.x === 299) { + class AdsPEMultiTabDrawer136 extends React.Component { + render() { + if (this.props.x === 299) { return React.createElement( "div", { className: "_2kev _2kex" }, @@ -3003,25 +2593,19 @@ ); } } - }); - - var FluxContainer_AdsPEMultiTabDrawerContainer_137 = React.createClass({ - displayName: "FluxContainer_AdsPEMultiTabDrawerContainer_137", + } - render: function () { - var props = this.props; - if (props.x === 300) { + class FluxContainer_AdsPEMultiTabDrawerContainer_137 extends React.Component { + render() { + if (this.props.x === 300) { return React.createElement(AdsPEMultiTabDrawer136, { x: 299 }); } } - }); + } - var AdsPESimpleOrganizer138 = React.createClass({ - displayName: "AdsPESimpleOrganizer138", - - render: function () { - var props = this.props; - if (props.x === 309) { + class AdsPESimpleOrganizer138 extends React.Component { + render() { + if (this.props.x === 309) { return React.createElement( "div", { className: "_tm2" }, @@ -3031,14 +2615,11 @@ ); } } - }); - - var AdsPEOrganizerContainer139 = React.createClass({ - displayName: "AdsPEOrganizerContainer139", + } - render: function () { - var props = this.props; - if (props.x === 310) { + class AdsPEOrganizerContainer139 extends React.Component { + render() { + if (this.props.x === 310) { return React.createElement( "div", null, @@ -3046,14 +2627,11 @@ ); } } - }); - - var FixedDataTableColumnResizeHandle140 = React.createClass({ - displayName: "FixedDataTableColumnResizeHandle140", + } - render: function () { - var props = this.props; - if (props.x === 313) { + class FixedDataTableColumnResizeHandle140 extends React.Component { + render() { + if (this.props.x === 313) { return React.createElement( "div", { className: "_3487 _3488 _3489", style: { "width": 0, "height": 25, "left": 0 } }, @@ -3061,14 +2639,11 @@ ); } } - }); + } - var AdsPETableHeader141 = React.createClass({ - displayName: "AdsPETableHeader141", - - render: function () { - var props = this.props; - if (props.x === 315) { + class AdsPETableHeader141 extends React.Component { + render() { + if (this.props.x === 315) { return React.createElement( "div", { className: "_1cig _1ksv _1vd7 _4h2r", id: undefined }, @@ -3080,7 +2655,7 @@ ) ); } - if (props.x === 320) { + if (this.props.x === 320) { return React.createElement( "div", { className: "_1cig _1vd7 _4h2r", id: undefined }, @@ -3092,7 +2667,7 @@ ) ); } - if (props.x === 323) { + if (this.props.x === 323) { return React.createElement( "div", { className: "_1cig _1vd7 _4h2r", id: undefined }, @@ -3104,7 +2679,7 @@ ) ); } - if (props.x === 326) { + if (this.props.x === 326) { return React.createElement( "div", { className: "_1cig _1vd7 _4h2r", id: undefined }, @@ -3116,10 +2691,10 @@ ) ); } - if (props.x === 329) { + if (this.props.x === 329) { return React.createElement("div", { className: "_1cig _1vd7 _4h2r", id: undefined }); } - if (props.x === 340) { + if (this.props.x === 340) { return React.createElement( "div", { className: "_1cig _25fg", id: undefined }, @@ -3131,7 +2706,7 @@ ) ); } - if (props.x === 346) { + if (this.props.x === 346) { return React.createElement( "div", { className: "_1cig _25fg", id: undefined, "data-tooltip-content": "Changed", "data-hover": "tooltip" }, @@ -3139,7 +2714,7 @@ null ); } - if (props.x === 352) { + if (this.props.x === 352) { return React.createElement( "div", { className: "_1cig _25fg", id: "ads_pe_table_error_header", "data-tooltip-content": "Errors", "data-hover": "tooltip" }, @@ -3147,7 +2722,7 @@ null ); } - if (props.x === 357) { + if (this.props.x === 357) { return React.createElement( "div", { className: "_1cig _25fg", id: undefined }, @@ -3159,7 +2734,7 @@ ) ); } - if (props.x === 362) { + if (this.props.x === 362) { return React.createElement( "div", { className: "_1cig _25fg", id: undefined }, @@ -3171,7 +2746,7 @@ ) ); } - if (props.x === 369) { + if (this.props.x === 369) { return React.createElement( "div", { className: "_1cig _25fg", id: undefined }, @@ -3183,7 +2758,7 @@ ) ); } - if (props.x === 374) { + if (this.props.x === 374) { return React.createElement( "div", { className: "_1cig _25fg", id: undefined }, @@ -3195,7 +2770,7 @@ ) ); } - if (props.x === 379) { + if (this.props.x === 379) { return React.createElement( "div", { className: "_1cig _25fg", id: undefined }, @@ -3207,7 +2782,7 @@ ) ); } - if (props.x === 384) { + if (this.props.x === 384) { return React.createElement( "div", { className: "_1cig _25fg", id: undefined }, @@ -3219,7 +2794,7 @@ ) ); } - if (props.x === 389) { + if (this.props.x === 389) { return React.createElement( "div", { className: "_1cig _25fg", id: undefined }, @@ -3231,7 +2806,7 @@ ) ); } - if (props.x === 394) { + if (this.props.x === 394) { return React.createElement( "div", { className: "_1cig _25fg", id: undefined }, @@ -3243,7 +2818,7 @@ ) ); } - if (props.x === 399) { + if (this.props.x === 399) { return React.createElement( "div", { className: "_1cig _25fg", id: undefined }, @@ -3255,7 +2830,7 @@ ) ); } - if (props.x === 404) { + if (this.props.x === 404) { return React.createElement( "div", { className: "_1cig _25fg", id: undefined }, @@ -3267,7 +2842,7 @@ ) ); } - if (props.x === 409) { + if (this.props.x === 409) { return React.createElement( "div", { className: "_1cig _25fg", id: undefined }, @@ -3279,7 +2854,7 @@ ) ); } - if (props.x === 414) { + if (this.props.x === 414) { return React.createElement( "div", { className: "_1cig _25fg", id: undefined }, @@ -3291,7 +2866,7 @@ ) ); } - if (props.x === 419) { + if (this.props.x === 419) { return React.createElement( "div", { className: "_1cig _25fg", id: undefined }, @@ -3303,7 +2878,7 @@ ) ); } - if (props.x === 424) { + if (this.props.x === 424) { return React.createElement( "div", { className: "_1cig _25fg", id: undefined }, @@ -3315,7 +2890,7 @@ ) ); } - if (props.x === 429) { + if (this.props.x === 429) { return React.createElement( "div", { className: "_1cig _25fg", id: undefined }, @@ -3327,7 +2902,7 @@ ) ); } - if (props.x === 434) { + if (this.props.x === 434) { return React.createElement( "div", { className: "_1cig _25fg", id: undefined }, @@ -3339,7 +2914,7 @@ ) ); } - if (props.x === 439) { + if (this.props.x === 439) { return React.createElement( "div", { className: "_1cig _25fg", id: undefined }, @@ -3351,7 +2926,7 @@ ) ); } - if (props.x === 444) { + if (this.props.x === 444) { return React.createElement( "div", { className: "_1cig _25fg", id: undefined }, @@ -3363,7 +2938,7 @@ ) ); } - if (props.x === 449) { + if (this.props.x === 449) { return React.createElement( "div", { className: "_1cig _25fg _4h2r", id: undefined }, @@ -3375,21 +2950,18 @@ ) ); } - if (props.x === 452) { + if (this.props.x === 452) { return React.createElement("div", { className: "_1cig _25fg _4h2r", id: undefined }); } } - }); - - var TransitionCell142 = React.createClass({ - displayName: "TransitionCell142", + } - render: function () { - var props = this.props; - if (props.x === 316) { + class TransitionCell142 extends React.Component { + render() { + if (this.props.x === 316) { return React.createElement( "div", - { isHeaderCell: true, label: "Campaigns", dataKey: 0, groupHeaderRenderer: function () {}, groupHeaderLabels: {}, groupHeaderData: {}, columnKey: undefined, height: 40, width: 721, rowIndex: 0, className: "_4lgc _4h2u", style: { "height": 40, "width": 721 } }, + { label: "Campaigns", height: 40, width: 721, className: "_4lgc _4h2u", style: { "height": 40, "width": 721 } }, React.createElement( "div", { className: "_4lgd _4h2w" }, @@ -3401,10 +2973,10 @@ ) ); } - if (props.x === 321) { + if (this.props.x === 321) { return React.createElement( "div", - { isHeaderCell: true, label: "Performance", dataKey: 1, groupHeaderRenderer: function () {}, groupHeaderLabels: {}, groupHeaderData: {}, columnKey: undefined, height: 40, width: 798, rowIndex: 0, className: "_4lgc _4h2u", style: { "height": 40, "width": 798 } }, + { label: "Performance", height: 40, width: 798, className: "_4lgc _4h2u", style: { "height": 40, "width": 798 } }, React.createElement( "div", { className: "_4lgd _4h2w" }, @@ -3416,10 +2988,10 @@ ) ); } - if (props.x === 324) { + if (this.props.x === 324) { return React.createElement( "div", - { isHeaderCell: true, label: "Overview", dataKey: 2, groupHeaderRenderer: function () {}, groupHeaderLabels: {}, groupHeaderData: {}, columnKey: undefined, height: 40, width: 1022, rowIndex: 0, className: "_4lgc _4h2u", style: { "height": 40, "width": 1022 } }, + { label: "Overview", height: 40, width: 1022, className: "_4lgc _4h2u", style: { "height": 40, "width": 1022 } }, React.createElement( "div", { className: "_4lgd _4h2w" }, @@ -3431,10 +3003,10 @@ ) ); } - if (props.x === 327) { + if (this.props.x === 327) { return React.createElement( "div", - { isHeaderCell: true, label: "Toplines", dataKey: 3, groupHeaderRenderer: function () {}, groupHeaderLabels: {}, groupHeaderData: {}, columnKey: undefined, height: 40, width: 0, rowIndex: 0, className: "_4lgc _4h2u", style: { "height": 40, "width": 0 } }, + { label: "Toplines", height: 40, width: 0, className: "_4lgc _4h2u", style: { "height": 40, "width": 0 } }, React.createElement( "div", { className: "_4lgd _4h2w" }, @@ -3446,10 +3018,10 @@ ) ); } - if (props.x === 330) { + if (this.props.x === 330) { return React.createElement( "div", - { isHeaderCell: true, label: "", dataKey: 4, groupHeaderRenderer: function () {}, groupHeaderLabels: {}, groupHeaderData: {}, columnKey: undefined, height: 40, width: 25, rowIndex: 0, className: "_4lgc _4h2u", style: { "height": 40, "width": 25 } }, + { label: "", height: 40, width: 25, className: "_4lgc _4h2u", style: { "height": 40, "width": 25 } }, React.createElement( "div", { className: "_4lgd _4h2w" }, @@ -3461,10 +3033,10 @@ ) ); } - if (props.x === 338) { + if (this.props.x === 338) { return React.createElement( "div", - { isHeaderCell: true, label: undefined, width: 42, dataKey: "common.id", className: "_4lgc _4h2u", columnData: {}, cellRenderer: function () {}, headerDataGetter: function () {}, columnKey: "common.id", height: 25, style: { "height": 25, "width": 42 } }, + { label: undefined, width: 42, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 42 } }, React.createElement( "div", { className: "_4lgd _4h2w" }, @@ -3476,10 +3048,10 @@ ) ); } - if (props.x === 343) { + if (this.props.x === 343) { return React.createElement( "div", - { isHeaderCell: true, label: "Campaign Name", width: 400, dataKey: "campaignGroup.name", className: "_4lgc _4h2u", columnData: {}, cellRenderer: function () {}, headerDataGetter: function () {}, columnKey: "campaignGroup.name", height: 25, style: { "height": 25, "width": 400 } }, + { label: "Campaign Name", width: 400, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 400 } }, React.createElement( "div", { className: "_4lgd _4h2w" }, @@ -3491,10 +3063,10 @@ ) ); } - if (props.x === 349) { + if (this.props.x === 349) { return React.createElement( "div", - { isHeaderCell: true, label: undefined, width: 33, dataKey: "edit_status", className: "_4lgc _4h2u", columnData: {}, cellRenderer: function () {}, headerDataGetter: function () {}, columnKey: "edit_status", height: 25, style: { "height": 25, "width": 33 } }, + { label: undefined, width: 33, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 33 } }, React.createElement( "div", { className: "_4lgd _4h2w" }, @@ -3506,10 +3078,10 @@ ) ); } - if (props.x === 355) { + if (this.props.x === 355) { return React.createElement( "div", - { isHeaderCell: true, label: undefined, width: 36, dataKey: "errors", className: "_4lgc _4h2u", columnData: {}, cellRenderer: function () {}, headerDataGetter: function () {}, columnKey: "errors", height: 25, style: { "height": 25, "width": 36 } }, + { label: undefined, width: 36, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 36 } }, React.createElement( "div", { className: "_4lgd _4h2w" }, @@ -3521,10 +3093,10 @@ ) ); } - if (props.x === 360) { + if (this.props.x === 360) { return React.createElement( "div", - { isHeaderCell: true, label: "Status", width: 60, dataKey: "campaignGroup.status", className: "_4lgc _4h2u", columnData: {}, cellRenderer: function () {}, headerDataGetter: function () {}, columnKey: "campaignGroup.status", height: 25, style: { "height": 25, "width": 60 } }, + { label: "Status", width: 60, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 60 } }, React.createElement( "div", { className: "_4lgd _4h2w" }, @@ -3536,10 +3108,10 @@ ) ); } - if (props.x === 365) { + if (this.props.x === 365) { return React.createElement( "div", - { isHeaderCell: true, label: "Delivery", width: 150, dataKey: "derivedCampaignGroup.activity_status", className: "_4lgc _4h2u", columnData: {}, cellRenderer: function () {}, headerDataGetter: function () {}, columnKey: "derivedCampaignGroup.activity_status", height: 25, style: { "height": 25, "width": 150 } }, + { label: "Delivery", width: 150, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 150 } }, React.createElement( "div", { className: "_4lgd _4h2w" }, @@ -3551,10 +3123,10 @@ ) ); } - if (props.x === 372) { + if (this.props.x === 372) { return React.createElement( "div", - { isHeaderCell: true, label: "Results", width: 140, dataKey: "stats.actions", className: "_4lgc _4h2u", columnData: {}, cellRenderer: function () {}, headerDataGetter: function () {}, columnKey: "stats.actions", height: 25, style: { "height": 25, "width": 140 } }, + { label: "Results", width: 140, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 140 } }, React.createElement( "div", { className: "_4lgd _4h2w" }, @@ -3566,10 +3138,10 @@ ) ); } - if (props.x === 377) { + if (this.props.x === 377) { return React.createElement( "div", - { isHeaderCell: true, label: "Cost", width: 140, dataKey: "stats.cpa", className: "_4lgc _4h2u", columnData: {}, cellRenderer: function () {}, headerDataGetter: function () {}, columnKey: "stats.cpa", height: 25, style: { "height": 25, "width": 140 } }, + { label: "Cost", width: 140, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 140 } }, React.createElement( "div", { className: "_4lgd _4h2w" }, @@ -3581,10 +3153,10 @@ ) ); } - if (props.x === 382) { + if (this.props.x === 382) { return React.createElement( "div", - { isHeaderCell: true, label: "Reach", width: 80, dataKey: "stats.unique_impressions", className: "_4lgc _4h2u", columnData: {}, cellRenderer: function () {}, headerDataGetter: function () {}, columnKey: "stats.unique_impressions", height: 25, style: { "height": 25, "width": 80 } }, + { label: "Reach", width: 80, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 80 } }, React.createElement( "div", { className: "_4lgd _4h2w" }, @@ -3596,10 +3168,10 @@ ) ); } - if (props.x === 387) { + if (this.props.x === 387) { return React.createElement( "div", - { isHeaderCell: true, label: "Impressions", width: 80, dataKey: "stats.impressions", className: "_4lgc _4h2u", columnData: {}, cellRenderer: function () {}, headerDataGetter: function () {}, columnKey: "stats.impressions", height: 25, style: { "height": 25, "width": 80 } }, + { label: "Impressions", width: 80, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 80 } }, React.createElement( "div", { className: "_4lgd _4h2w" }, @@ -3611,10 +3183,10 @@ ) ); } - if (props.x === 392) { + if (this.props.x === 392) { return React.createElement( "div", - { isHeaderCell: true, label: "Clicks", width: 60, dataKey: "stats.clicks", className: "_4lgc _4h2u", columnData: {}, cellRenderer: function () {}, headerDataGetter: function () {}, columnKey: "stats.clicks", height: 25, style: { "height": 25, "width": 60 } }, + { label: "Clicks", width: 60, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 60 } }, React.createElement( "div", { className: "_4lgd _4h2w" }, @@ -3626,10 +3198,10 @@ ) ); } - if (props.x === 397) { + if (this.props.x === 397) { return React.createElement( "div", - { isHeaderCell: true, label: "Avg. CPM", width: 80, dataKey: "stats.avg_cpm", className: "_4lgc _4h2u", columnData: {}, cellRenderer: function () {}, headerDataGetter: function () {}, columnKey: "stats.avg_cpm", height: 25, style: { "height": 25, "width": 80 } }, + { label: "Avg. CPM", width: 80, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 80 } }, React.createElement( "div", { className: "_4lgd _4h2w" }, @@ -3641,10 +3213,10 @@ ) ); } - if (props.x === 402) { + if (this.props.x === 402) { return React.createElement( "div", - { isHeaderCell: true, label: "Avg. CPC", width: 78, dataKey: "stats.avg_cpc", className: "_4lgc _4h2u", columnData: {}, cellRenderer: function () {}, headerDataGetter: function () {}, columnKey: "stats.avg_cpc", height: 25, style: { "height": 25, "width": 78 } }, + { label: "Avg. CPC", width: 78, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 78 } }, React.createElement( "div", { className: "_4lgd _4h2w" }, @@ -3656,10 +3228,10 @@ ) ); } - if (props.x === 407) { + if (this.props.x === 407) { return React.createElement( "div", - { isHeaderCell: true, label: "CTR %", width: 70, dataKey: "stats.ctr", className: "_4lgc _4h2u", columnData: {}, cellRenderer: function () {}, headerDataGetter: function () {}, columnKey: "stats.ctr", height: 25, style: { "height": 25, "width": 70 } }, + { label: "CTR %", width: 70, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 70 } }, React.createElement( "div", { className: "_4lgd _4h2w" }, @@ -3671,10 +3243,10 @@ ) ); } - if (props.x === 412) { + if (this.props.x === 412) { return React.createElement( "div", - { isHeaderCell: true, label: "Spent", width: 70, dataKey: "stats.spent_100", className: "_4lgc _4h2u", columnData: {}, cellRenderer: function () {}, headerDataGetter: function () {}, columnKey: "stats.spent_100", height: 25, style: { "height": 25, "width": 70 } }, + { label: "Spent", width: 70, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 70 } }, React.createElement( "div", { className: "_4lgd _4h2w" }, @@ -3686,10 +3258,10 @@ ) ); } - if (props.x === 417) { + if (this.props.x === 417) { return React.createElement( "div", - { isHeaderCell: true, label: "Objective", width: 200, dataKey: "campaignGroup.objective", className: "_4lgc _4h2u", columnData: {}, cellRenderer: function () {}, headerDataGetter: function () {}, columnKey: "campaignGroup.objective", height: 25, style: { "height": 25, "width": 200 } }, + { label: "Objective", width: 200, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 200 } }, React.createElement( "div", { className: "_4lgd _4h2w" }, @@ -3701,10 +3273,10 @@ ) ); } - if (props.x === 422) { + if (this.props.x === 422) { return React.createElement( "div", - { isHeaderCell: true, label: "Buying Type", width: 100, dataKey: "campaignGroup.buying_type", className: "_4lgc _4h2u", columnData: {}, cellRenderer: function () {}, headerDataGetter: function () {}, columnKey: "campaignGroup.buying_type", height: 25, style: { "height": 25, "width": 100 } }, + { label: "Buying Type", width: 100, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 100 } }, React.createElement( "div", { className: "_4lgd _4h2w" }, @@ -3716,10 +3288,10 @@ ) ); } - if (props.x === 427) { + if (this.props.x === 427) { return React.createElement( "div", - { isHeaderCell: true, label: "Campaign ID", width: 120, dataKey: "campaignGroup.id", className: "_4lgc _4h2u", columnData: {}, cellRenderer: function () {}, headerDataGetter: function () {}, columnKey: "campaignGroup.id", height: 25, style: { "height": 25, "width": 120 } }, + { label: "Campaign ID", width: 120, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 120 } }, React.createElement( "div", { className: "_4lgd _4h2w" }, @@ -3731,10 +3303,10 @@ ) ); } - if (props.x === 432) { + if (this.props.x === 432) { return React.createElement( "div", - { isHeaderCell: true, label: "Start", width: 113, dataKey: "derivedCampaignGroup.startDate", className: "_4lgc _4h2u", columnData: {}, cellRenderer: function () {}, headerDataGetter: function () {}, columnKey: "derivedCampaignGroup.startDate", height: 25, style: { "height": 25, "width": 113 } }, + { label: "Start", width: 113, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 113 } }, React.createElement( "div", { className: "_4lgd _4h2w" }, @@ -3746,10 +3318,10 @@ ) ); } - if (props.x === 437) { + if (this.props.x === 437) { return React.createElement( "div", - { isHeaderCell: true, label: "End", width: 113, dataKey: "derivedCampaignGroup.stopDate", className: "_4lgc _4h2u", columnData: {}, cellRenderer: function () {}, headerDataGetter: function () {}, columnKey: "derivedCampaignGroup.stopDate", height: 25, style: { "height": 25, "width": 113 } }, + { label: "End", width: 113, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 113 } }, React.createElement( "div", { className: "_4lgd _4h2w" }, @@ -3761,10 +3333,10 @@ ) ); } - if (props.x === 442) { + if (this.props.x === 442) { return React.createElement( "div", - { isHeaderCell: true, label: "Date created", width: 113, dataKey: "derivedCampaignGroup.createdDate", className: "_4lgc _4h2u", columnData: {}, cellRenderer: function () {}, headerDataGetter: function () {}, columnKey: "derivedCampaignGroup.createdDate", height: 25, style: { "height": 25, "width": 113 } }, + { label: "Date created", width: 113, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 113 } }, React.createElement( "div", { className: "_4lgd _4h2w" }, @@ -3776,10 +3348,10 @@ ) ); } - if (props.x === 447) { + if (this.props.x === 447) { return React.createElement( "div", - { isHeaderCell: true, label: "Date last edited", width: 113, dataKey: "derivedCampaignGroup.updatedDate", className: "_4lgc _4h2u", columnData: {}, cellRenderer: function () {}, headerDataGetter: function () {}, columnKey: "derivedCampaignGroup.updatedDate", height: 25, style: { "height": 25, "width": 113 } }, + { label: "Date last edited", width: 113, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 113 } }, React.createElement( "div", { className: "_4lgd _4h2w" }, @@ -3791,10 +3363,10 @@ ) ); } - if (props.x === 450) { + if (this.props.x === 450) { return React.createElement( "div", - { isHeaderCell: true, label: "Tags", width: 150, dataKey: "labels", className: "_4lgc _4h2u", columnData: {}, cellRenderer: function () {}, headerDataGetter: function () {}, columnKey: "labels", height: 25, style: { "height": 25, "width": 150 } }, + { label: "Tags", width: 150, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 150 } }, React.createElement( "div", { className: "_4lgd _4h2w" }, @@ -3806,10 +3378,10 @@ ) ); } - if (props.x === 453) { + if (this.props.x === 453) { return React.createElement( "div", - { isHeaderCell: true, label: "", width: 25, dataKey: "scrollbar_spacer", className: "_4lgc _4h2u", columnData: {}, cellRenderer: function () {}, headerDataGetter: function () {}, columnKey: "scrollbar_spacer", height: 25, style: { "height": 25, "width": 25 } }, + { label: "", width: 25, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 25 } }, React.createElement( "div", { className: "_4lgd _4h2w" }, @@ -3822,14 +3394,11 @@ ); } } - }); - - var FixedDataTableCell143 = React.createClass({ - displayName: "FixedDataTableCell143", + } - render: function () { - var props = this.props; - if (props.x === 317) { + class FixedDataTableCell143 extends React.Component { + render() { + if (this.props.x === 317) { return React.createElement( "div", { className: "_4lg0 _4h2m", style: { "height": 40, "width": 721, "left": 0 } }, @@ -3837,7 +3406,7 @@ React.createElement(TransitionCell142, { x: 316 }) ); } - if (props.x === 322) { + if (this.props.x === 322) { return React.createElement( "div", { className: "_4lg0 _4h2m", style: { "height": 40, "width": 798, "left": 0 } }, @@ -3845,7 +3414,7 @@ React.createElement(TransitionCell142, { x: 321 }) ); } - if (props.x === 325) { + if (this.props.x === 325) { return React.createElement( "div", { className: "_4lg0 _4h2m", style: { "height": 40, "width": 1022, "left": 798 } }, @@ -3853,7 +3422,7 @@ React.createElement(TransitionCell142, { x: 324 }) ); } - if (props.x === 328) { + if (this.props.x === 328) { return React.createElement( "div", { className: "_4lg0 _4h2m", style: { "height": 40, "width": 0, "left": 1820 } }, @@ -3861,7 +3430,7 @@ React.createElement(TransitionCell142, { x: 327 }) ); } - if (props.x === 331) { + if (this.props.x === 331) { return React.createElement( "div", { className: "_4lg0 _4h2m", style: { "height": 40, "width": 25, "left": 1820 } }, @@ -3869,7 +3438,7 @@ React.createElement(TransitionCell142, { x: 330 }) ); } - if (props.x === 339) { + if (this.props.x === 339) { return React.createElement( "div", { className: "_4lg0 _4lg6 _4h2m", style: { "height": 25, "width": 42, "left": 0 } }, @@ -3877,19 +3446,19 @@ React.createElement(TransitionCell142, { x: 338 }) ); } - if (props.x === 344) { + if (this.props.x === 344) { return React.createElement( "div", { className: "_4lg0 _4h2m", style: { "height": 25, "width": 400, "left": 42 } }, React.createElement( "div", - { className: "_4lg9", style: { "height": 25 }, onMouseDown: function () {} }, + { className: "_4lg9", style: { "height": 25 }, onMouseDown: function () { } }, React.createElement("div", { className: "_4lga _4lgb", style: { "height": 25 } }) ), React.createElement(TransitionCell142, { x: 343 }) ); } - if (props.x === 350) { + if (this.props.x === 350) { return React.createElement( "div", { className: "_4lg0 _4h2m", style: { "height": 25, "width": 33, "left": 442 } }, @@ -3897,7 +3466,7 @@ React.createElement(TransitionCell142, { x: 349 }) ); } - if (props.x === 356) { + if (this.props.x === 356) { return React.createElement( "div", { className: "_4lg0 _4h2m", style: { "height": 25, "width": 36, "left": 475 } }, @@ -3905,7 +3474,7 @@ React.createElement(TransitionCell142, { x: 355 }) ); } - if (props.x === 361) { + if (this.props.x === 361) { return React.createElement( "div", { className: "_4lg0 _4h2m", style: { "height": 25, "width": 60, "left": 511 } }, @@ -3913,223 +3482,223 @@ React.createElement(TransitionCell142, { x: 360 }) ); } - if (props.x === 366) { + if (this.props.x === 366) { return React.createElement( "div", { className: "_4lg0 _4h2m", style: { "height": 25, "width": 150, "left": 571 } }, React.createElement( "div", - { className: "_4lg9", style: { "height": 25 }, onMouseDown: function () {} }, + { className: "_4lg9", style: { "height": 25 }, onMouseDown: function () { } }, React.createElement("div", { className: "_4lga _4lgb", style: { "height": 25 } }) ), React.createElement(TransitionCell142, { x: 365 }) ); } - if (props.x === 373) { + if (this.props.x === 373) { return React.createElement( "div", { className: "_4lg0 _4lg5 _4h2p _4h2m", style: { "height": 25, "width": 140, "left": 0 } }, React.createElement( "div", - { className: "_4lg9", style: { "height": 25 }, onMouseDown: function () {} }, + { className: "_4lg9", style: { "height": 25 }, onMouseDown: function () { } }, React.createElement("div", { className: "_4lga _4lgb", style: { "height": 25 } }) ), React.createElement(TransitionCell142, { x: 372 }) ); } - if (props.x === 378) { + if (this.props.x === 378) { return React.createElement( "div", { className: "_4lg0 _4lg5 _4h2p _4h2m", style: { "height": 25, "width": 140, "left": 140 } }, React.createElement( "div", - { className: "_4lg9", style: { "height": 25 }, onMouseDown: function () {} }, + { className: "_4lg9", style: { "height": 25 }, onMouseDown: function () { } }, React.createElement("div", { className: "_4lga _4lgb", style: { "height": 25 } }) ), React.createElement(TransitionCell142, { x: 377 }) ); } - if (props.x === 383) { + if (this.props.x === 383) { return React.createElement( "div", { className: "_4lg0 _4lg5 _4h2p _4h2m", style: { "height": 25, "width": 80, "left": 280 } }, React.createElement( "div", - { className: "_4lg9", style: { "height": 25 }, onMouseDown: function () {} }, + { className: "_4lg9", style: { "height": 25 }, onMouseDown: function () { } }, React.createElement("div", { className: "_4lga _4lgb", style: { "height": 25 } }) ), React.createElement(TransitionCell142, { x: 382 }) ); } - if (props.x === 388) { + if (this.props.x === 388) { return React.createElement( "div", { className: "_4lg0 _4lg5 _4h2p _4h2m", style: { "height": 25, "width": 80, "left": 360 } }, React.createElement( "div", - { className: "_4lg9", style: { "height": 25 }, onMouseDown: function () {} }, + { className: "_4lg9", style: { "height": 25 }, onMouseDown: function () { } }, React.createElement("div", { className: "_4lga _4lgb", style: { "height": 25 } }) ), React.createElement(TransitionCell142, { x: 387 }) ); } - if (props.x === 393) { + if (this.props.x === 393) { return React.createElement( "div", { className: "_4lg0 _4lg5 _4h2p _4h2m", style: { "height": 25, "width": 60, "left": 440 } }, React.createElement( "div", - { className: "_4lg9", style: { "height": 25 }, onMouseDown: function () {} }, + { className: "_4lg9", style: { "height": 25 }, onMouseDown: function () { } }, React.createElement("div", { className: "_4lga _4lgb", style: { "height": 25 } }) ), React.createElement(TransitionCell142, { x: 392 }) ); } - if (props.x === 398) { + if (this.props.x === 398) { return React.createElement( "div", { className: "_4lg0 _4lg5 _4h2p _4h2m", style: { "height": 25, "width": 80, "left": 500 } }, React.createElement( "div", - { className: "_4lg9", style: { "height": 25 }, onMouseDown: function () {} }, + { className: "_4lg9", style: { "height": 25 }, onMouseDown: function () { } }, React.createElement("div", { className: "_4lga _4lgb", style: { "height": 25 } }) ), React.createElement(TransitionCell142, { x: 397 }) ); } - if (props.x === 403) { + if (this.props.x === 403) { return React.createElement( "div", { className: "_4lg0 _4lg5 _4h2p _4h2m", style: { "height": 25, "width": 78, "left": 580 } }, React.createElement( "div", - { className: "_4lg9", style: { "height": 25 }, onMouseDown: function () {} }, + { className: "_4lg9", style: { "height": 25 }, onMouseDown: function () { } }, React.createElement("div", { className: "_4lga _4lgb", style: { "height": 25 } }) ), React.createElement(TransitionCell142, { x: 402 }) ); } - if (props.x === 408) { + if (this.props.x === 408) { return React.createElement( "div", { className: "_4lg0 _4lg5 _4h2p _4h2m", style: { "height": 25, "width": 70, "left": 658 } }, React.createElement( "div", - { className: "_4lg9", style: { "height": 25 }, onMouseDown: function () {} }, + { className: "_4lg9", style: { "height": 25 }, onMouseDown: function () { } }, React.createElement("div", { className: "_4lga _4lgb", style: { "height": 25 } }) ), React.createElement(TransitionCell142, { x: 407 }) ); } - if (props.x === 413) { + if (this.props.x === 413) { return React.createElement( "div", { className: "_4lg0 _4lg5 _4h2p _4h2m", style: { "height": 25, "width": 70, "left": 728 } }, React.createElement( "div", - { className: "_4lg9", style: { "height": 25 }, onMouseDown: function () {} }, + { className: "_4lg9", style: { "height": 25 }, onMouseDown: function () { } }, React.createElement("div", { className: "_4lga _4lgb", style: { "height": 25 } }) ), React.createElement(TransitionCell142, { x: 412 }) ); } - if (props.x === 418) { + if (this.props.x === 418) { return React.createElement( "div", { className: "_4lg0 _4h2m", style: { "height": 25, "width": 200, "left": 798 } }, React.createElement( "div", - { className: "_4lg9", style: { "height": 25 }, onMouseDown: function () {} }, + { className: "_4lg9", style: { "height": 25 }, onMouseDown: function () { } }, React.createElement("div", { className: "_4lga _4lgb", style: { "height": 25 } }) ), React.createElement(TransitionCell142, { x: 417 }) ); } - if (props.x === 423) { + if (this.props.x === 423) { return React.createElement( "div", { className: "_4lg0 _4h2m", style: { "height": 25, "width": 100, "left": 998 } }, React.createElement( "div", - { className: "_4lg9", style: { "height": 25 }, onMouseDown: function () {} }, + { className: "_4lg9", style: { "height": 25 }, onMouseDown: function () { } }, React.createElement("div", { className: "_4lga _4lgb", style: { "height": 25 } }) ), React.createElement(TransitionCell142, { x: 422 }) ); } - if (props.x === 428) { + if (this.props.x === 428) { return React.createElement( "div", { className: "_4lg0 _4h2m", style: { "height": 25, "width": 120, "left": 1098 } }, React.createElement( "div", - { className: "_4lg9", style: { "height": 25 }, onMouseDown: function () {} }, + { className: "_4lg9", style: { "height": 25 }, onMouseDown: function () { } }, React.createElement("div", { className: "_4lga _4lgb", style: { "height": 25 } }) ), React.createElement(TransitionCell142, { x: 427 }) ); } - if (props.x === 433) { + if (this.props.x === 433) { return React.createElement( "div", { className: "_4lg0 _4h2m", style: { "height": 25, "width": 113, "left": 1218 } }, React.createElement( "div", - { className: "_4lg9", style: { "height": 25 }, onMouseDown: function () {} }, + { className: "_4lg9", style: { "height": 25 }, onMouseDown: function () { } }, React.createElement("div", { className: "_4lga _4lgb", style: { "height": 25 } }) ), React.createElement(TransitionCell142, { x: 432 }) ); } - if (props.x === 438) { + if (this.props.x === 438) { return React.createElement( "div", { className: "_4lg0 _4h2m", style: { "height": 25, "width": 113, "left": 1331 } }, React.createElement( "div", - { className: "_4lg9", style: { "height": 25 }, onMouseDown: function () {} }, + { className: "_4lg9", style: { "height": 25 }, onMouseDown: function () { } }, React.createElement("div", { className: "_4lga _4lgb", style: { "height": 25 } }) ), React.createElement(TransitionCell142, { x: 437 }) ); } - if (props.x === 443) { + if (this.props.x === 443) { return React.createElement( "div", { className: "_4lg0 _4h2m", style: { "height": 25, "width": 113, "left": 1444 } }, React.createElement( "div", - { className: "_4lg9", style: { "height": 25 }, onMouseDown: function () {} }, + { className: "_4lg9", style: { "height": 25 }, onMouseDown: function () { } }, React.createElement("div", { className: "_4lga _4lgb", style: { "height": 25 } }) ), React.createElement(TransitionCell142, { x: 442 }) ); } - if (props.x === 448) { + if (this.props.x === 448) { return React.createElement( "div", { className: "_4lg0 _4h2m", style: { "height": 25, "width": 113, "left": 1557 } }, React.createElement( "div", - { className: "_4lg9", style: { "height": 25 }, onMouseDown: function () {} }, + { className: "_4lg9", style: { "height": 25 }, onMouseDown: function () { } }, React.createElement("div", { className: "_4lga _4lgb", style: { "height": 25 } }) ), React.createElement(TransitionCell142, { x: 447 }) ); } - if (props.x === 451) { + if (this.props.x === 451) { return React.createElement( "div", { className: "_4lg0 _4h2m", style: { "height": 25, "width": 150, "left": 1670 } }, React.createElement( "div", - { className: "_4lg9", style: { "height": 25 }, onMouseDown: function () {} }, + { className: "_4lg9", style: { "height": 25 }, onMouseDown: function () { } }, React.createElement("div", { className: "_4lga _4lgb", style: { "height": 25 } }) ), React.createElement(TransitionCell142, { x: 450 }) ); } - if (props.x === 454) { + if (this.props.x === 454) { return React.createElement( "div", { className: "_4lg0 _4h2m", style: { "height": 25, "width": 25, "left": 1820 } }, @@ -4138,21 +3707,18 @@ ); } } - }); + } - var FixedDataTableCellGroupImpl144 = React.createClass({ - displayName: "FixedDataTableCellGroupImpl144", - - render: function () { - var props = this.props; - if (props.x === 318) { + class FixedDataTableCellGroupImpl144 extends React.Component { + render() { + if (this.props.x === 318) { return React.createElement( "div", { className: "_3pzj", style: { "height": 40, "position": "absolute", "width": 721, "zIndex": 2, "transform": "translate3d(0px,0px,0)", "backfaceVisibility": "hidden" } }, React.createElement(FixedDataTableCell143, { x: 317, key: "cell_0" }) ); } - if (props.x === 332) { + if (this.props.x === 332) { return React.createElement( "div", { className: "_3pzj", style: { "height": 40, "position": "absolute", "width": 1845, "zIndex": 0, "transform": "translate3d(0px,0px,0)", "backfaceVisibility": "hidden" } }, @@ -4162,7 +3728,7 @@ React.createElement(FixedDataTableCell143, { x: 331, key: "cell_3" }) ); } - if (props.x === 367) { + if (this.props.x === 367) { return React.createElement( "div", { className: "_3pzj", style: { "height": 25, "position": "absolute", "width": 721, "zIndex": 2, "transform": "translate3d(0px,0px,0)", "backfaceVisibility": "hidden" } }, @@ -4174,7 +3740,7 @@ React.createElement(FixedDataTableCell143, { x: 366, key: "cell_5" }) ); } - if (props.x === 455) { + if (this.props.x === 455) { return React.createElement( "div", { className: "_3pzj", style: { "height": 25, "position": "absolute", "width": 1845, "zIndex": 0, "transform": "translate3d(0px,0px,0)", "backfaceVisibility": "hidden" } }, @@ -4199,35 +3765,32 @@ ); } } - }); - - var FixedDataTableCellGroup145 = React.createClass({ - displayName: "FixedDataTableCellGroup145", + } - render: function () { - var props = this.props; - if (props.x === 319) { + class FixedDataTableCellGroup145 extends React.Component { + render() { + if (this.props.x === 319) { return React.createElement( "div", { style: { "height": 40, "left": 0 }, className: "_3pzk" }, React.createElement(FixedDataTableCellGroupImpl144, { x: 318 }) ); } - if (props.x === 333) { + if (this.props.x === 333) { return React.createElement( "div", { style: { "height": 40, "left": 721 }, className: "_3pzk" }, React.createElement(FixedDataTableCellGroupImpl144, { x: 332 }) ); } - if (props.x === 368) { + if (this.props.x === 368) { return React.createElement( "div", { style: { "height": 25, "left": 0 }, className: "_3pzk" }, React.createElement(FixedDataTableCellGroupImpl144, { x: 367 }) ); } - if (props.x === 456) { + if (this.props.x === 456) { return React.createElement( "div", { style: { "height": 25, "left": 721 }, className: "_3pzk" }, @@ -4235,14 +3798,11 @@ ); } } - }); - - var FixedDataTableRowImpl146 = React.createClass({ - displayName: "FixedDataTableRowImpl146", + } - render: function () { - var props = this.props; - if (props.x === 334) { + class FixedDataTableRowImpl146 extends React.Component { + render() { + if (this.props.x === 334) { return React.createElement( "div", { className: "_1gd4 _4li _52no _3h1a _1mib", onClick: null, onDoubleClick: null, onMouseDown: null, onMouseEnter: null, onMouseLeave: null, style: { "width": 1209, "height": 40 } }, @@ -4255,7 +3815,7 @@ ) ); } - if (props.x === 457) { + if (this.props.x === 457) { return React.createElement( "div", { className: "_1gd4 _4li _3h1a _1mib", onClick: null, onDoubleClick: null, onMouseDown: null, onMouseEnter: null, onMouseLeave: null, style: { "width": 1209, "height": 25 } }, @@ -4269,21 +3829,18 @@ ); } } - }); + } - var FixedDataTableRow147 = React.createClass({ - displayName: "FixedDataTableRow147", - - render: function () { - var props = this.props; - if (props.x === 335) { + class FixedDataTableRow147 extends React.Component { + render() { + if (this.props.x === 335) { return React.createElement( "div", { style: { "width": 1209, "height": 40, "zIndex": 1, "transform": "translate3d(0px,0px,0)", "backfaceVisibility": "hidden" }, className: "_1gda" }, React.createElement(FixedDataTableRowImpl146, { x: 334 }) ); } - if (props.x === 458) { + if (this.props.x === 458) { return React.createElement( "div", { style: { "width": 1209, "height": 25, "zIndex": 1, "transform": "translate3d(0px,40px,0)", "backfaceVisibility": "hidden" }, className: "_1gda" }, @@ -4291,17 +3848,14 @@ ); } } - }); - - var FixedDataTableAbstractSortableHeader148 = React.createClass({ - displayName: "FixedDataTableAbstractSortableHeader148", + } - render: function () { - var props = this.props; - if (props.x === 341) { + class FixedDataTableAbstractSortableHeader148 extends React.Component { + render() { + if (this.props.x === 341) { return React.createElement( "div", - { onClick: function () {}, className: "_54_8 _4h2r _2wzx" }, + { onClick: function () { }, className: "_54_8 _4h2r _2wzx" }, React.createElement( "div", { className: "_2eq6" }, @@ -4310,10 +3864,10 @@ ) ); } - if (props.x === 347) { + if (this.props.x === 347) { return React.createElement( "div", - { onClick: function () {}, className: "_54_8 _1kst _4h2r _2wzx" }, + { onClick: function () { }, className: "_54_8 _1kst _4h2r _2wzx" }, React.createElement( "div", { className: "_2eq6" }, @@ -4322,10 +3876,10 @@ ) ); } - if (props.x === 353) { + if (this.props.x === 353) { return React.createElement( "div", - { onClick: function () {}, className: "_54_8 _1kst _4h2r _2wzx" }, + { onClick: function () { }, className: "_54_8 _1kst _4h2r _2wzx" }, React.createElement( "div", { className: "_2eq6" }, @@ -4334,10 +3888,10 @@ ) ); } - if (props.x === 358) { + if (this.props.x === 358) { return React.createElement( "div", - { onClick: function () {}, className: "_54_8 _4h2r _2wzx" }, + { onClick: function () { }, className: "_54_8 _4h2r _2wzx" }, React.createElement( "div", { className: "_2eq6" }, @@ -4346,10 +3900,10 @@ ) ); } - if (props.x === 363) { + if (this.props.x === 363) { return React.createElement( "div", - { onClick: function () {}, className: "_54_8 _54_9 _4h2r _2wzx" }, + { onClick: function () { }, className: "_54_8 _54_9 _4h2r _2wzx" }, React.createElement( "div", { className: "_2eq6" }, @@ -4358,10 +3912,10 @@ ) ); } - if (props.x === 370) { + if (this.props.x === 370) { return React.createElement( "div", - { onClick: function () {}, className: "_54_8 _4h2r _2wzx" }, + { onClick: function () { }, className: "_54_8 _4h2r _2wzx" }, React.createElement( "div", { className: "_2eq6" }, @@ -4370,10 +3924,10 @@ ) ); } - if (props.x === 375) { + if (this.props.x === 375) { return React.createElement( "div", - { onClick: function () {}, className: "_54_8 _4h2r _2wzx" }, + { onClick: function () { }, className: "_54_8 _4h2r _2wzx" }, React.createElement( "div", { className: "_2eq6" }, @@ -4382,10 +3936,10 @@ ) ); } - if (props.x === 380) { + if (this.props.x === 380) { return React.createElement( "div", - { onClick: function () {}, className: "_54_8 _4h2r _2wzx" }, + { onClick: function () { }, className: "_54_8 _4h2r _2wzx" }, React.createElement( "div", { className: "_2eq6" }, @@ -4394,10 +3948,10 @@ ) ); } - if (props.x === 385) { + if (this.props.x === 385) { return React.createElement( "div", - { onClick: function () {}, className: "_54_8 _4h2r _2wzx" }, + { onClick: function () { }, className: "_54_8 _4h2r _2wzx" }, React.createElement( "div", { className: "_2eq6" }, @@ -4406,10 +3960,10 @@ ) ); } - if (props.x === 390) { + if (this.props.x === 390) { return React.createElement( "div", - { onClick: function () {}, className: "_54_8 _4h2r _2wzx" }, + { onClick: function () { }, className: "_54_8 _4h2r _2wzx" }, React.createElement( "div", { className: "_2eq6" }, @@ -4418,10 +3972,10 @@ ) ); } - if (props.x === 395) { + if (this.props.x === 395) { return React.createElement( "div", - { onClick: function () {}, className: "_54_8 _4h2r _2wzx" }, + { onClick: function () { }, className: "_54_8 _4h2r _2wzx" }, React.createElement( "div", { className: "_2eq6" }, @@ -4430,10 +3984,10 @@ ) ); } - if (props.x === 400) { + if (this.props.x === 400) { return React.createElement( "div", - { onClick: function () {}, className: "_54_8 _4h2r _2wzx" }, + { onClick: function () { }, className: "_54_8 _4h2r _2wzx" }, React.createElement( "div", { className: "_2eq6" }, @@ -4442,10 +3996,10 @@ ) ); } - if (props.x === 405) { + if (this.props.x === 405) { return React.createElement( "div", - { onClick: function () {}, className: "_54_8 _4h2r _2wzx" }, + { onClick: function () { }, className: "_54_8 _4h2r _2wzx" }, React.createElement( "div", { className: "_2eq6" }, @@ -4454,10 +4008,10 @@ ) ); } - if (props.x === 410) { + if (this.props.x === 410) { return React.createElement( "div", - { onClick: function () {}, className: "_54_8 _4h2r _2wzx" }, + { onClick: function () { }, className: "_54_8 _4h2r _2wzx" }, React.createElement( "div", { className: "_2eq6" }, @@ -4466,10 +4020,10 @@ ) ); } - if (props.x === 415) { + if (this.props.x === 415) { return React.createElement( "div", - { onClick: function () {}, className: "_54_8 _4h2r _2wzx" }, + { onClick: function () { }, className: "_54_8 _4h2r _2wzx" }, React.createElement( "div", { className: "_2eq6" }, @@ -4478,10 +4032,10 @@ ) ); } - if (props.x === 420) { + if (this.props.x === 420) { return React.createElement( "div", - { onClick: function () {}, className: "_54_8 _4h2r _2wzx" }, + { onClick: function () { }, className: "_54_8 _4h2r _2wzx" }, React.createElement( "div", { className: "_2eq6" }, @@ -4490,10 +4044,10 @@ ) ); } - if (props.x === 425) { + if (this.props.x === 425) { return React.createElement( "div", - { onClick: function () {}, className: "_54_8 _4h2r _2wzx" }, + { onClick: function () { }, className: "_54_8 _4h2r _2wzx" }, React.createElement( "div", { className: "_2eq6" }, @@ -4502,10 +4056,10 @@ ) ); } - if (props.x === 430) { + if (this.props.x === 430) { return React.createElement( "div", - { onClick: function () {}, className: "_54_8 _4h2r _2wzx" }, + { onClick: function () { }, className: "_54_8 _4h2r _2wzx" }, React.createElement( "div", { className: "_2eq6" }, @@ -4514,10 +4068,10 @@ ) ); } - if (props.x === 435) { + if (this.props.x === 435) { return React.createElement( "div", - { onClick: function () {}, className: "_54_8 _4h2r _2wzx" }, + { onClick: function () { }, className: "_54_8 _4h2r _2wzx" }, React.createElement( "div", { className: "_2eq6" }, @@ -4526,10 +4080,10 @@ ) ); } - if (props.x === 440) { + if (this.props.x === 440) { return React.createElement( "div", - { onClick: function () {}, className: "_54_8 _4h2r _2wzx" }, + { onClick: function () { }, className: "_54_8 _4h2r _2wzx" }, React.createElement( "div", { className: "_2eq6" }, @@ -4538,10 +4092,10 @@ ) ); } - if (props.x === 445) { + if (this.props.x === 445) { return React.createElement( "div", - { onClick: function () {}, className: "_54_8 _4h2r _2wzx" }, + { onClick: function () { }, className: "_54_8 _4h2r _2wzx" }, React.createElement( "div", { className: "_2eq6" }, @@ -4551,114 +4105,102 @@ ); } } - }); - - var FixedDataTableSortableHeader149 = React.createClass({ - displayName: "FixedDataTableSortableHeader149", + } - render: function () { - var props = this.props; - if (props.x === 342) { + class FixedDataTableSortableHeader149 extends React.Component { + render() { + if (this.props.x === 342) { return React.createElement(FixedDataTableAbstractSortableHeader148, { x: 341 }); } - if (props.x === 348) { + if (this.props.x === 348) { return React.createElement(FixedDataTableAbstractSortableHeader148, { x: 347 }); } - if (props.x === 354) { + if (this.props.x === 354) { return React.createElement(FixedDataTableAbstractSortableHeader148, { x: 353 }); } - if (props.x === 359) { + if (this.props.x === 359) { return React.createElement(FixedDataTableAbstractSortableHeader148, { x: 358 }); } - if (props.x === 364) { + if (this.props.x === 364) { return React.createElement(FixedDataTableAbstractSortableHeader148, { x: 363 }); } - if (props.x === 371) { + if (this.props.x === 371) { return React.createElement(FixedDataTableAbstractSortableHeader148, { x: 370 }); } - if (props.x === 376) { + if (this.props.x === 376) { return React.createElement(FixedDataTableAbstractSortableHeader148, { x: 375 }); } - if (props.x === 381) { + if (this.props.x === 381) { return React.createElement(FixedDataTableAbstractSortableHeader148, { x: 380 }); } - if (props.x === 386) { + if (this.props.x === 386) { return React.createElement(FixedDataTableAbstractSortableHeader148, { x: 385 }); } - if (props.x === 391) { + if (this.props.x === 391) { return React.createElement(FixedDataTableAbstractSortableHeader148, { x: 390 }); } - if (props.x === 396) { + if (this.props.x === 396) { return React.createElement(FixedDataTableAbstractSortableHeader148, { x: 395 }); } - if (props.x === 401) { + if (this.props.x === 401) { return React.createElement(FixedDataTableAbstractSortableHeader148, { x: 400 }); } - if (props.x === 406) { + if (this.props.x === 406) { return React.createElement(FixedDataTableAbstractSortableHeader148, { x: 405 }); } - if (props.x === 411) { + if (this.props.x === 411) { return React.createElement(FixedDataTableAbstractSortableHeader148, { x: 410 }); } - if (props.x === 416) { + if (this.props.x === 416) { return React.createElement(FixedDataTableAbstractSortableHeader148, { x: 415 }); } - if (props.x === 421) { + if (this.props.x === 421) { return React.createElement(FixedDataTableAbstractSortableHeader148, { x: 420 }); } - if (props.x === 426) { + if (this.props.x === 426) { return React.createElement(FixedDataTableAbstractSortableHeader148, { x: 425 }); } - if (props.x === 431) { + if (this.props.x === 431) { return React.createElement(FixedDataTableAbstractSortableHeader148, { x: 430 }); } - if (props.x === 436) { + if (this.props.x === 436) { return React.createElement(FixedDataTableAbstractSortableHeader148, { x: 435 }); } - if (props.x === 441) { + if (this.props.x === 441) { return React.createElement(FixedDataTableAbstractSortableHeader148, { x: 440 }); } - if (props.x === 446) { + if (this.props.x === 446) { return React.createElement(FixedDataTableAbstractSortableHeader148, { x: 445 }); } } - }); + } - var FixedDataTableBufferedRows150 = React.createClass({ - displayName: "FixedDataTableBufferedRows150", - - render: function () { - var props = this.props; - if (props.x === 459) { + class FixedDataTableBufferedRows150 extends React.Component { + render() { + if (this.props.x === 459) { return React.createElement("div", { style: { "position": "absolute", "pointerEvents": "auto", "transform": "translate3d(0px,65px,0)", "backfaceVisibility": "hidden" } }); } } - }); - - var Scrollbar151 = React.createClass({ - displayName: "Scrollbar151", + } - render: function () { - var props = this.props; - if (props.x === 460) { + class Scrollbar151 extends React.Component { + render() { + if (this.props.x === 460) { return null; } - if (props.x === 461) { + if (this.props.x === 461) { return React.createElement( "div", - { onFocus: function () {}, onBlur: function () {}, onKeyDown: function () {}, onMouseDown: function () {}, onWheel: function () {}, className: "_1t0r _1t0t _4jdr _1t0u", style: { "width": 1209, "zIndex": 99 }, tabIndex: 0 }, - React.createElement("div", { ref: "face", className: "_1t0w _1t0y _1t0_", style: { "width": 561.6340607950117, "transform": "translate3d(4px,0px,0)", "backfaceVisibility": "hidden" } }) + { onFocus: function () { }, onBlur: function () { }, onKeyDown: function () { }, onMouseDown: function () { }, onWheel: function () { }, className: "_1t0r _1t0t _4jdr _1t0u", style: { "width": 1209, "zIndex": 99 }, tabIndex: 0 }, + React.createElement("div", { className: "_1t0w _1t0y _1t0_", style: { "width": 561.6340607950117, "transform": "translate3d(4px,0px,0)", "backfaceVisibility": "hidden" } }) ); } } - }); - - var HorizontalScrollbar152 = React.createClass({ - displayName: "HorizontalScrollbar152", + } - render: function () { - var props = this.props; - if (props.x === 462) { + class HorizontalScrollbar152 extends React.Component { + render() { + if (this.props.x === 462) { return React.createElement( "div", { className: "_3h1k _3h1m", style: { "height": 15, "width": 1209 } }, @@ -4670,17 +4212,14 @@ ); } } - }); + } - var FixedDataTable153 = React.createClass({ - displayName: "FixedDataTable153", - - render: function () { - var props = this.props; - if (props.x === 463) { + class FixedDataTable153 extends React.Component { + render() { + if (this.props.x === 463) { return React.createElement( "div", - { className: "_3h1i _1mie", onWheel: function () {}, style: { "height": 25, "width": 1209 } }, + { className: "_3h1i _1mie", onWheel: function () { }, style: { "height": 25, "width": 1209 } }, React.createElement( "div", { className: "_3h1j", style: { "height": 8, "width": 1209 } }, @@ -4697,25 +4236,19 @@ ); } } - }); - - var TransitionTable154 = React.createClass({ - displayName: "TransitionTable154", + } - render: function () { - var props = this.props; - if (props.x === 464) { - return React.createElement(FixedDataTable153, { x: 463, ref: "fixedDataTable" }); + class TransitionTable154 extends React.Component { + render() { + if (this.props.x === 464) { + return React.createElement(FixedDataTable153, { x: 463 }); } } - }); - - var AdsSelectableFixedDataTable155 = React.createClass({ - displayName: "AdsSelectableFixedDataTable155", + } - render: function () { - var props = this.props; - if (props.x === 465) { + class AdsSelectableFixedDataTable155 extends React.Component { + render() { + if (this.props.x === 465) { return React.createElement( "div", { className: "_5hht" }, @@ -4723,44 +4256,35 @@ ); } } - }); + } - var AdsDataTableKeyboardSupportDecorator156 = React.createClass({ - displayName: "AdsDataTableKeyboardSupportDecorator156", - - render: function () { - var props = this.props; - if (props.x === 466) { + class AdsDataTableKeyboardSupportDecorator156 extends React.Component { + render() { + if (this.props.x === 466) { return React.createElement( "div", - { ref: "tableContainer", className: "_5d6f", tabIndex: "0", onKeyDown: function () {} }, + { className: "_5d6f", tabIndex: "0", onKeyDown: function () { } }, React.createElement(AdsSelectableFixedDataTable155, { x: 465 }) ); } } - }); - - var AdsEditableDataTableDecorator157 = React.createClass({ - displayName: "AdsEditableDataTableDecorator157", + } - render: function () { - var props = this.props; - if (props.x === 467) { + class AdsEditableDataTableDecorator157 extends React.Component { + render() { + if (this.props.x === 467) { return React.createElement( "div", - { onCopy: function () {} }, - React.createElement(AdsDataTableKeyboardSupportDecorator156, { x: 466, ref: "decoratedTable" }) + { onCopy: function () { } }, + React.createElement(AdsDataTableKeyboardSupportDecorator156, { x: 466 }) ); } } - }); - - var AdsPEDataTableContainer158 = React.createClass({ - displayName: "AdsPEDataTableContainer158", + } - render: function () { - var props = this.props; - if (props.x === 468) { + class AdsPEDataTableContainer158 extends React.Component { + render() { + if (this.props.x === 468) { return React.createElement( "div", { className: "_35l_ _1hr clearfix" }, @@ -4771,25 +4295,19 @@ ); } } - }); + } - var AdsPECampaignGroupTableContainer159 = React.createClass({ - displayName: "AdsPECampaignGroupTableContainer159", - - render: function () { - var props = this.props; - if (props.x === 470) { + class AdsPECampaignGroupTableContainer159 extends React.Component { + render() { + if (this.props.x === 470) { return React.createElement(ResponsiveBlock37, { x: 469 }); } } - }); - - var AdsPEManageAdsPaneContainer160 = React.createClass({ - displayName: "AdsPEManageAdsPaneContainer160", + } - render: function () { - var props = this.props; - if (props.x === 473) { + class AdsPEManageAdsPaneContainer160 extends React.Component { + render() { + if (this.props.x === 473) { return React.createElement( "div", null, @@ -4828,97 +4346,73 @@ ); } } - }); + } - var AdsPEContentContainer161 = React.createClass({ - displayName: "AdsPEContentContainer161", - - render: function () { - var props = this.props; - if (props.x === 474) { + class AdsPEContentContainer161 extends React.Component { + render() { + if (this.props.x === 474) { return React.createElement(AdsPEManageAdsPaneContainer160, { x: 473 }); } } - }); - - var FluxContainer_AdsPEWorkspaceContainer_162 = React.createClass({ - displayName: "FluxContainer_AdsPEWorkspaceContainer_162", + } - render: function () { - var props = this.props; - if (props.x === 477) { + class FluxContainer_AdsPEWorkspaceContainer_162 extends React.Component { + render() { + if (this.props.x === 477) { return React.createElement( "div", { className: "_49wu", style: { "height": 177, "top": 43, "width": 1306 } }, - React.createElement(ResponsiveBlock37, { x: 62 }), - React.createElement(AdsErrorBoundary10, { x: 476 }), + React.createElement(ResponsiveBlock37, { x: 62, key: '0' }), + React.createElement(AdsErrorBoundary10, { x: 476, key: '1' }), null ); } } - }); - - var FluxContainer_AdsSessionExpiredDialogContainer_163 = React.createClass({ - displayName: "FluxContainer_AdsSessionExpiredDialogContainer_163", + } - render: function () { - var props = this.props; - if (props.x === 478) { + class FluxContainer_AdsSessionExpiredDialogContainer_163 extends React.Component { + render() { + if (this.props.x === 478) { return null; } } - }); + } - var FluxContainer_AdsPEUploadDialogLazyContainer_164 = React.createClass({ - displayName: "FluxContainer_AdsPEUploadDialogLazyContainer_164", - - render: function () { - var props = this.props; - if (props.x === 479) { + class FluxContainer_AdsPEUploadDialogLazyContainer_164 extends React.Component { + render() { + if (this.props.x === 479) { return null; } } - }); - - var FluxContainer_DialogContainer_165 = React.createClass({ - displayName: "FluxContainer_DialogContainer_165", + } - render: function () { - var props = this.props; - if (props.x === 480) { + class FluxContainer_DialogContainer_165 extends React.Component { + render() { + if (this.props.x === 480) { return null; } } - }); - - var AdsBugReportContainer166 = React.createClass({ - displayName: "AdsBugReportContainer166", + } - render: function () { - var props = this.props; - if (props.x === 481) { + class AdsBugReportContainer166 extends React.Component { + render() { + if (this.props.x === 481) { return React.createElement("span", null); } } - }); + } - var AdsPEAudienceSplittingDialog167 = React.createClass({ - displayName: "AdsPEAudienceSplittingDialog167", - - render: function () { - var props = this.props; - if (props.x === 482) { + class AdsPEAudienceSplittingDialog167 extends React.Component { + render() { + if (this.props.x === 482) { return null; } } - }); - - var AdsPEAudienceSplittingDialogContainer168 = React.createClass({ - displayName: "AdsPEAudienceSplittingDialogContainer168", + } - render: function () { - var props = this.props; - if (props.x === 483) { + class AdsPEAudienceSplittingDialogContainer168 extends React.Component { + render() { + if (this.props.x === 483) { return React.createElement( "div", null, @@ -4926,146 +4420,107 @@ ); } } - }); - - var FluxContainer_AdsRuleDialogBootloadContainer_169 = React.createClass({ - displayName: "FluxContainer_AdsRuleDialogBootloadContainer_169", + } - render: function () { - var props = this.props; - if (props.x === 484) { + class FluxContainer_AdsRuleDialogBootloadContainer_169 extends React.Component { + render() { + if (this.props.x === 484) { return null; } } - }); + } - var FluxContainer_AdsPECFTrayContainer_170 = React.createClass({ - displayName: "FluxContainer_AdsPECFTrayContainer_170", - - render: function () { - var props = this.props; - if (props.x === 485) { + class FluxContainer_AdsPECFTrayContainer_170 extends React.Component { + render() { + if (this.props.x === 485) { return null; } } - }); - - var FluxContainer_AdsPEDeleteDraftContainer_171 = React.createClass({ - displayName: "FluxContainer_AdsPEDeleteDraftContainer_171", + } - render: function () { - var props = this.props; - if (props.x === 486) { + class FluxContainer_AdsPEDeleteDraftContainer_171 extends React.Component { + render() { + if (this.props.x === 486) { return null; } } - }); - - var FluxContainer_AdsPEInitialDraftPublishDialogContainer_172 = React.createClass({ - displayName: "FluxContainer_AdsPEInitialDraftPublishDialogContainer_172", + } - render: function () { - var props = this.props; - if (props.x === 487) { + class FluxContainer_AdsPEInitialDraftPublishDialogContainer_172 extends React.Component { + render() { + if (this.props.x === 487) { return null; } } - }); + } - var FluxContainer_AdsPEReachFrequencyStatusTransitionDialogBootloadContainer_173 = React.createClass({ - displayName: "FluxContainer_AdsPEReachFrequencyStatusTransitionDialogBootloadContainer_173", - - render: function () { - var props = this.props; - if (props.x === 488) { + class FluxContainer_AdsPEReachFrequencyStatusTransitionDialogBootloadContainer_173 extends React.Component { + render() { + if (this.props.x === 488) { return null; } } - }); - - var FluxContainer_AdsPEPurgeArchiveDialogContainer_174 = React.createClass({ - displayName: "FluxContainer_AdsPEPurgeArchiveDialogContainer_174", + } - render: function () { - var props = this.props; - if (props.x === 489) { + class FluxContainer_AdsPEPurgeArchiveDialogContainer_174 extends React.Component { + render() { + if (this.props.x === 489) { return null; } } - }); - - var AdsPECreateDialogContainer175 = React.createClass({ - displayName: "AdsPECreateDialogContainer175", + } - render: function () { - var props = this.props; - if (props.x === 490) { + class AdsPECreateDialogContainer175 extends React.Component { + render() { + if (this.props.x === 490) { return React.createElement("span", null); } } - }); + } - var FluxContainer_AdsPEModalStatusContainer_176 = React.createClass({ - displayName: "FluxContainer_AdsPEModalStatusContainer_176", - - render: function () { - var props = this.props; - if (props.x === 491) { + class FluxContainer_AdsPEModalStatusContainer_176 extends React.Component { + render() { + if (this.props.x === 491) { return null; } } - }); - - var FluxContainer_AdsBrowserExtensionErrorDialogContainer_177 = React.createClass({ - displayName: "FluxContainer_AdsBrowserExtensionErrorDialogContainer_177", + } - render: function () { - var props = this.props; - if (props.x === 492) { + class FluxContainer_AdsBrowserExtensionErrorDialogContainer_177 extends React.Component { + render() { + if (this.props.x === 492) { return null; } } - }); - - var FluxContainer_AdsPESortByErrorTipContainer_178 = React.createClass({ - displayName: "FluxContainer_AdsPESortByErrorTipContainer_178", + } - render: function () { - var props = this.props; - if (props.x === 493) { + class FluxContainer_AdsPESortByErrorTipContainer_178 extends React.Component { + render() { + if (this.props.x === 493) { return null; } } - }); + } - var LeadDownloadDialogSelector179 = React.createClass({ - displayName: "LeadDownloadDialogSelector179", - - render: function () { - var props = this.props; - if (props.x === 494) { + class LeadDownloadDialogSelector179 extends React.Component { + render() { + if (this.props.x === 494) { return null; } } - }); - - var FluxContainer_AdsPELeadDownloadDialogContainerClass_180 = React.createClass({ - displayName: "FluxContainer_AdsPELeadDownloadDialogContainerClass_180", + } - render: function () { - var props = this.props; - if (props.x === 495) { + class FluxContainer_AdsPELeadDownloadDialogContainerClass_180 extends React.Component { + render() { + if (this.props.x === 495) { return React.createElement(LeadDownloadDialogSelector179, { x: 494 }); } } - }); - - var AdsPEContainer181 = React.createClass({ - displayName: "AdsPEContainer181", + } - render: function () { - var props = this.props; - if (props.x === 496) { + class AdsPEContainer181 extends React.Component { + render() { + if (this.props.x === 496) { return React.createElement( "div", { id: "ads_pe_container" }, @@ -5096,18 +4551,19 @@ ); } } - }); + } - var Benchmark = React.createClass({ - displayName: "Benchmark", - - render: function () { - var props = this.props; - if (props.x === undefined) { + class Benchmark extends React.Component { + render() { + if (this.props.x === undefined) { return React.createElement(AdsPEContainer181, { x: 496 }); } } - }); + } + + var app = document.getElementById('app'); - this.Benchmark = Benchmark; -})(this); + window.render = function render() { + ReactDOM.render(React.createElement(Benchmark, null), app); + } +})(); diff --git a/scripts/bench/benchmarks/pe-class-components/build.js b/scripts/bench/benchmarks/pe-class-components/build.js new file mode 100644 index 000000000000..1a8e253bef83 --- /dev/null +++ b/scripts/bench/benchmarks/pe-class-components/build.js @@ -0,0 +1,19 @@ +'use strict'; + +const { + join, +} = require('path'); + +async function build(reactPath, asyncCopyTo) { + // copy the UMD bundles + await asyncCopyTo( + join(reactPath, 'build', 'dist', 'react.production.min.js'), + join(__dirname, 'react.production.min.js') + ); + await asyncCopyTo( + join(reactPath, 'build', 'dist', 'react-dom.production.min.js'), + join(__dirname, 'react-dom.production.min.js') + ); +} + +module.exports = build; diff --git a/scripts/bench/benchmarks/pe-class-components/index.html b/scripts/bench/benchmarks/pe-class-components/index.html new file mode 100644 index 000000000000..ff55b65c9989 --- /dev/null +++ b/scripts/bench/benchmarks/pe-class-components/index.html @@ -0,0 +1,32 @@ + + +

+ + + + + + + + + + \ No newline at end of file diff --git a/scripts/bench/bench-pe-sfc-es5.js b/scripts/bench/benchmarks/pe-functional-components/benchmark.js similarity index 90% rename from scripts/bench/bench-pe-sfc-es5.js rename to scripts/bench/benchmarks/pe-functional-components/benchmark.js index 787c0f21d97e..c0b7e2d22c47 100644 --- a/scripts/bench/bench-pe-sfc-es5.js +++ b/scripts/bench/benchmarks/pe-functional-components/benchmark.js @@ -1,4 +1,5 @@ (function () { + 'use strict'; var ReactImage0 = function (props) { if (props.x === 0) { @@ -135,7 +136,7 @@ if (props.x === 43) { return React.createElement( "a", - { className: "_585q _50zy _50-0 _50z- _5upp _42ft", size: "medium", shade: "dark", type: null, title: "Remove", "data-hover": undefined, "data-tooltip-alignh": undefined, "data-tooltip-content": undefined, disabled: null, label: null, href: "#", rel: undefined, onClick: function () {} }, + { className: "_585q _50zy _50-0 _50z- _5upp _42ft", size: "medium", type: null, title: "Remove", "data-hover": undefined, "data-tooltip-alignh": undefined, "data-tooltip-content": undefined, disabled: null, label: null, href: "#", rel: undefined, onClick: function () {} }, undefined, "Remove", undefined @@ -364,7 +365,7 @@ if (props.x === 112) { return React.createElement( "button", - { "aria-label": "Campaign Tags", className: " _5uy7 _4jy0 _4jy4 _517h _51sy _42ft", "data-hover": "tooltip", "data-tooltip-content": "Campaign Tags", disabled: false, haschevron: false, onClick: function () {}, label: null, type: "submit", value: "1" }, + { "aria-label": "Campaign Tags", className: " _5uy7 _4jy0 _4jy4 _517h _51sy _42ft", "data-hover": "tooltip", "data-tooltip-content": "Campaign Tags", disabled: false, onClick: function () {}, label: null, type: "submit", value: "1" }, React.createElement(ReactImage0, { x: 111 }), undefined, undefined @@ -379,7 +380,7 @@ if (props.x === 149) { return React.createElement( "button", - { className: "_3yz9 _1t-2 _50z- _50zy _50zz _50z- _5upp _42ft", size: "small", onClick: function () {}, shade: "dark", type: "button", title: "Remove", "data-hover": undefined, "data-tooltip-alignh": undefined, "data-tooltip-content": undefined, label: null }, + { className: "_3yz9 _1t-2 _50z- _50zy _50zz _50z- _5upp _42ft", size: "small", onClick: function () {}, type: "button", title: "Remove", "data-hover": undefined, "data-tooltip-alignh": undefined, "data-tooltip-content": undefined, label: null }, undefined, "Remove", undefined @@ -581,7 +582,7 @@ return React.createElement( "div", null, - React.createElement(ReactXUIPopoverButton6, { x: 6, ref: "openMenuButton" }), + React.createElement(ReactXUIPopoverButton6, { x: 6 }), null ); } @@ -748,7 +749,7 @@ React.createElement(FluxContainer_viewFn_16, { x: 19 }), null, React.createElement(XUIButton4, { x: 21, key: "discard" }), - React.createElement(XUIButton4, { x: 24, ref: "reviewChangesButton" }) + React.createElement(XUIButton4, { x: 24 }) ); } }; @@ -799,19 +800,19 @@ var ReactPopoverMenu20 = function (props) { if (props.x === 31) { - return React.createElement(InlineBlock19, { x: 30, ref: "root" }); + return React.createElement(InlineBlock19, { x: 30 }); } if (props.x === 74) { - return React.createElement(InlineBlock19, { x: 73, ref: "root" }); + return React.createElement(InlineBlock19, { x: 73 }); } if (props.x === 83) { - return React.createElement(InlineBlock19, { x: 82, ref: "root" }); + return React.createElement(InlineBlock19, { x: 82 }); } if (props.x === 102) { - return React.createElement(InlineBlock19, { x: 101, ref: "root" }); + return React.createElement(InlineBlock19, { x: 101 }); } if (props.x === 274) { - return React.createElement(InlineBlock19, { x: 273, ref: "root" }); + return React.createElement(InlineBlock19, { x: 273 }); } }; @@ -861,7 +862,7 @@ if (props.x === 232) { return React.createElement( "div", - { flex: "right", direction: "left", className: "clearfix" }, + { direction: "left", className: "clearfix" }, React.createElement( "div", { key: "left", className: "_ohe lfloat" }, @@ -885,7 +886,7 @@ if (props.x === 235) { return React.createElement( "div", - { className: "_3-8x clearfix", flex: "right", direction: "left" }, + { className: "_3-8x clearfix", direction: "left" }, React.createElement( "div", { key: "left", className: "_ohe lfloat" }, @@ -909,7 +910,7 @@ if (props.x === 245) { return React.createElement( "div", - { className: "_3-8y clearfix", flex: "right", direction: "left" }, + { className: "_3-8y clearfix", direction: "left" }, React.createElement( "div", { key: "left", className: "_ohe lfloat" }, @@ -1058,7 +1059,7 @@ return React.createElement( "span", null, - React.createElement(ReactCSSTransitionGroupChild31, { x: 52, key: ".0", ref: ".0" }) + React.createElement(ReactCSSTransitionGroupChild31, { x: 52, key: ".0" }) ); } }; @@ -1095,24 +1096,24 @@ if (props.x === 62) { return React.createElement( "div", - { onResize: function () {}, className: "_4u-c" }, - [React.createElement(AdsErrorBoundary10, { x: 58 }), React.createElement(AdsErrorBoundary10, { x: 61 })], + { className: "_4u-c" }, + [React.createElement(AdsErrorBoundary10, { x: 58, key: 1 }), React.createElement(AdsErrorBoundary10, { x: 61, key: 2 })], React.createElement( "div", { key: "sensor", className: "_4u-f" }, - React.createElement("iframe", { ref: "sensorNode", "aria-hidden": "true", className: "_1_xb", tabIndex: "-1" }) + React.createElement("iframe", { "aria-hidden": "true", className: "_1_xb", tabIndex: "-1" }) ) ); } if (props.x === 469) { return React.createElement( "div", - { onResize: function () {}, className: "_4u-c" }, + { className: "_4u-c" }, React.createElement(AdsPEDataTableContainer158, { x: 468 }), React.createElement( "div", { key: "sensor", className: "_4u-f" }, - React.createElement("iframe", { ref: "sensorNode", "aria-hidden": "true", className: "_1_xb", tabIndex: "-1" }) + React.createElement("iframe", { "aria-hidden": "true", className: "_1_xb", tabIndex: "-1" }) ) ); } @@ -1172,7 +1173,7 @@ "div", { className: "_5n7z _51xa" }, React.createElement(AdsPEExportImportMenuContainer48, { x: 107 }), - React.createElement(XUIButton4, { x: 110, key: "createReport", ref: "ads_create_report_button" }), + React.createElement(XUIButton4, { x: 110, key: "createReport" }), React.createElement(AdsPECampaignGroupTagContainer51, { x: 116, key: "tags" }) ); } @@ -1254,8 +1255,8 @@ return React.createElement( "span", { className: " _3d6e" }, - React.createElement(XUIButton4, { x: 113, ref: "button" }), - React.createElement(Constructor49, { x: 114, key: "layer", ref: "layer" }) + React.createElement(XUIButton4, { x: 113 }), + React.createElement(Constructor49, { x: 114, key: "layer" }) ); } }; @@ -1333,8 +1334,8 @@ return React.createElement( "span", { className: "_5b-l _5bbe" }, - React.createElement(ReactXUIPopoverButton6, { x: 133, ref: "searchButton" }), - React.createElement(ReactXUIPopoverButton6, { x: 141, ref: "filterButton" }), + React.createElement(ReactXUIPopoverButton6, { x: 133 }), + React.createElement(ReactXUIPopoverButton6, { x: 141 }), [React.createElement(Constructor49, { x: 142, key: "filterMenu/.0" }), React.createElement(Constructor49, { x: 143, key: "searchMenu/.0" })] ); } @@ -1390,7 +1391,7 @@ null, React.createElement( "span", - { ref: "tipIcon", onMouseEnter: function () {}, onMouseLeave: function () {}, onMouseUp: undefined }, + { onMouseEnter: function () {}, onMouseLeave: function () {}, onMouseUp: undefined }, React.createElement("span", { className: "_3o_j" }), React.createElement(ReactImage0, { x: 153 }) ), @@ -1403,7 +1404,7 @@ null, React.createElement( "span", - { ref: "tipIcon", onMouseEnter: function () {}, onMouseLeave: function () {}, onMouseUp: undefined }, + { onMouseEnter: function () {}, onMouseLeave: function () {}, onMouseUp: undefined }, React.createElement("span", { className: "_3o_j" }), React.createElement(ReactImage0, { x: 237 }) ), @@ -1449,7 +1450,7 @@ { className: "_3yz1 _3yz2 _3dad" }, React.createElement( "div", - { ref: "filterToken", className: "_3yz4", "aria-hidden": false }, + { className: "_3yz4", "aria-hidden": false }, React.createElement( "div", { onClick: function () {}, className: "_3yz5" }, @@ -1468,7 +1469,7 @@ null, React.createElement(XUICloseButton28, { x: 151 }) ), - React.createElement(BUIFilterTokenInput64, { x: 158, ref: "filterTokenInput" }) + React.createElement(BUIFilterTokenInput64, { x: 158 }) ); } }; @@ -1527,7 +1528,7 @@ return React.createElement( "span", null, - React.createElement("span", { ref: "mainChild" }), + React.createElement("span", { }), React.createElement(XUIAmbientNUX69, { x: 166, key: "nux" }) ); } @@ -1595,10 +1596,10 @@ "div", null, null, - React.createElement("textarea", { ref: "input", className: "_2vli _2vlj _1h26 _1h27", dir: "auto", disabled: undefined, id: undefined, maxLength: null, value: "Test Campaign", onBlur: function () {}, onChange: function () {}, onFocus: function () {}, onKeyDown: function () {} }), + React.createElement("textarea", { className: "_2vli _2vlj _1h26 _1h27", dir: "auto", disabled: undefined, id: undefined, maxLength: null, value: "Test Campaign", onBlur: function () {}, onChange: function () {}, onFocus: function () {}, onKeyDown: function () {} }), null ), - React.createElement("div", { ref: "shadowText", "aria-hidden": "true", className: "_2vlk" }) + React.createElement("div", { "aria-hidden": "true", className: "_2vlk" }) ) ), null @@ -1626,7 +1627,7 @@ return React.createElement( "span", null, - React.createElement(BUIPopoverButton77, { x: 182, ref: function () {} }), + React.createElement(BUIPopoverButton77, { x: 182 }), [React.createElement(Constructor49, { x: 183, key: "layer/.0" })] ); } @@ -1652,7 +1653,7 @@ "span", { className: "_3c5l" }, React.createElement(AdsPEStatsRangePicker79, { x: 185 }), - React.createElement(XUIButton4, { x: 188, key: "settings", ref: "PE_TABLE_LIST_SETTING" }) + React.createElement(XUIButton4, { x: 188, key: "settings" }) ), [React.createElement(XUIAmbientNUX69, { x: 190, key: "roasNUX/.0" })] ); @@ -1700,7 +1701,7 @@ return React.createElement( "span", null, - React.createElement(AdsPESideTrayTabButton82, { x: 199, ref: "PE_INSIGHTS_TAB_ICON" }), + React.createElement(AdsPESideTrayTabButton82, { x: 199 }), React.createElement(XUIAmbientNUX69, { x: 201, key: "roasNUX" }) ); } @@ -1796,8 +1797,8 @@ { className: "_5528" }, React.createElement( "span", - { key: ".0", className: "_40bg", density: "snug", labelPosition: "left", id: "1467872040612:1961945894" }, - React.createElement(AdsTextInput91, { x: 217, key: "nameEditor98010048849317", ref: "nameTextInput" }), + { key: ".0", className: "_40bg", id: "1467872040612:1961945894" }, + React.createElement(AdsTextInput91, { x: 217, key: "nameEditor98010048849317" }), null ) ), @@ -1821,14 +1822,14 @@ if (props.x === 220) { return React.createElement( "div", - { className: "_40bc _12k2 _4-u2 _4-u8", xuiErrorPosition: "above", background: "white" }, + { className: "_40bc _12k2 _4-u2 _4-u8" }, React.createElement(BUIForm93, { x: 219 }) ); } if (props.x === 249) { return React.createElement( "div", - { xuiErrorPosition: "above", className: "_12k2 _4-u2 _4-u8", background: "white" }, + { className: "_12k2 _4-u2 _4-u8" }, React.createElement(AdsCardHeader103, { x: 230 }), React.createElement(AdsCardSection108, { x: 248 }) ); @@ -1836,7 +1837,7 @@ if (props.x === 279) { return React.createElement( "div", - { xuiErrorPosition: "above", className: "_12k2 _4-u2 _4-u8", background: "white" }, + { className: "_12k2 _4-u2 _4-u8" }, React.createElement(AdsCardLeftRightHeader122, { x: 278 }) ); } @@ -1894,7 +1895,7 @@ if (props.x === 227) { return React.createElement( "span", - { itemComponent: "span", className: "_38my" }, + { className: "_38my" }, "Campaign Details", null, React.createElement("span", { className: "_c1c" }) @@ -1903,16 +1904,16 @@ if (props.x === 265) { return React.createElement( "span", - { itemComponent: "span", className: "_38my" }, + { className: "_38my" }, [React.createElement( "span", - null, + { key: 1 }, "Campaign ID", ": ", "98010048849317" ), React.createElement( "div", - { className: "_5lh9" }, + { className: "_5lh9", key: 2 }, React.createElement(FluxContainer_AdsCampaignGroupStatusSwitchContainer_119, { x: 264 }) )], null, @@ -1925,7 +1926,7 @@ if (props.x === 228) { return React.createElement( "div", - { className: "_5dw9 _5dwa _4-u3", background: "transparent" }, + { className: "_5dw9 _5dwa _4-u3" }, [React.createElement(XUICardHeaderTitle100, { x: 227, key: ".0" })], undefined, undefined, @@ -1935,7 +1936,7 @@ if (props.x === 247) { return React.createElement( "div", - { className: "_12jy _4-u3", background: "transparent" }, + { className: "_12jy _4-u3" }, React.createElement( "div", { className: "_3-8j" }, @@ -1965,7 +1966,7 @@ if (props.x === 231) { return React.createElement( "div", - { className: "_2oc6 _3bvz", label: "Objective", labelSize: "small", optionalText: "(optional)" }, + { className: "_2oc6 _3bvz", label: "Objective" }, React.createElement( "label", { className: "_4el4 _3qwj _3hy-", htmlFor: undefined }, @@ -1978,7 +1979,7 @@ if (props.x === 234) { return React.createElement( "div", - { className: "_2oc6 _3bvz", label: "Buying Type", labelSize: "small", optionalText: "(optional)" }, + { className: "_2oc6 _3bvz", label: "Buying Type" }, React.createElement( "label", { className: "_4el4 _3qwj _3hy-", htmlFor: undefined }, @@ -1991,7 +1992,7 @@ if (props.x === 240) { return React.createElement( "div", - { className: "_2oc6 _3bvz", helpText: "Set an overall spending limit for your ad campaign. This means your ad sets in the campaign will stop once you've reached your spending limit.", label: "Campaign Spending Limit", labelSize: "small", optionalText: "(optional)" }, + { className: "_2oc6 _3bvz" }, React.createElement( "label", { className: "_4el4 _3qwj _3hy-", htmlFor: undefined }, @@ -2073,17 +2074,17 @@ if (props.x === 259) { return React.createElement( "div", - { inContainingBlock: true }, - React.createElement("div", { ref: "sticky", onWheel: function () {} }) + { }, + React.createElement("div", { onWheel: function () {} }) ); } if (props.x === 292) { return React.createElement( "div", - { inContainingBlock: true }, + { }, React.createElement( "div", - { ref: "sticky", onWheel: function () {} }, + { onWheel: function () {} }, [React.createElement( "div", { key: "campaign_group_errors_section98010048849317" }, @@ -2133,7 +2134,7 @@ if (props.x === 261) { return React.createElement( "div", - { "data-hover": "tooltip", "data-tooltip-content": "Currently active. Click this switch to deactivate it.", "data-tooltip-position": "below", disabled: false, value: true, onToggle: function () {}, animate: true, className: "_128j _128k _128n", role: "checkbox", "aria-checked": "true" }, + { "data-hover": "tooltip", "data-tooltip-content": "Currently active. Click this switch to deactivate it.", "data-tooltip-position": "below", disabled: false, value: true, onToggle: function () {}, className: "_128j _128k _128n", role: "checkbox", "aria-checked": "true" }, React.createElement( "div", { className: "_128o", onClick: function () {}, onKeyDown: function () {}, onMouseDown: function () {}, tabIndex: "0" }, @@ -2675,7 +2676,7 @@ if (props.x === 316) { return React.createElement( "div", - { isHeaderCell: true, label: "Campaigns", dataKey: 0, groupHeaderRenderer: function () {}, groupHeaderLabels: {}, groupHeaderData: {}, columnKey: undefined, height: 40, width: 721, rowIndex: 0, className: "_4lgc _4h2u", style: { "height": 40, "width": 721 } }, + { label: "Campaigns", height: 40, width: 721, className: "_4lgc _4h2u", style: { "height": 40, "width": 721 } }, React.createElement( "div", { className: "_4lgd _4h2w" }, @@ -2690,7 +2691,7 @@ if (props.x === 321) { return React.createElement( "div", - { isHeaderCell: true, label: "Performance", dataKey: 1, groupHeaderRenderer: function () {}, groupHeaderLabels: {}, groupHeaderData: {}, columnKey: undefined, height: 40, width: 798, rowIndex: 0, className: "_4lgc _4h2u", style: { "height": 40, "width": 798 } }, + { label: "Performance", height: 40, width: 798, className: "_4lgc _4h2u", style: { "height": 40, "width": 798 } }, React.createElement( "div", { className: "_4lgd _4h2w" }, @@ -2705,7 +2706,7 @@ if (props.x === 324) { return React.createElement( "div", - { isHeaderCell: true, label: "Overview", dataKey: 2, groupHeaderRenderer: function () {}, groupHeaderLabels: {}, groupHeaderData: {}, columnKey: undefined, height: 40, width: 1022, rowIndex: 0, className: "_4lgc _4h2u", style: { "height": 40, "width": 1022 } }, + { label: "Overview", height: 40, width: 1022, className: "_4lgc _4h2u", style: { "height": 40, "width": 1022 } }, React.createElement( "div", { className: "_4lgd _4h2w" }, @@ -2720,7 +2721,7 @@ if (props.x === 327) { return React.createElement( "div", - { isHeaderCell: true, label: "Toplines", dataKey: 3, groupHeaderRenderer: function () {}, groupHeaderLabels: {}, groupHeaderData: {}, columnKey: undefined, height: 40, width: 0, rowIndex: 0, className: "_4lgc _4h2u", style: { "height": 40, "width": 0 } }, + { label: "Toplines", height: 40, width: 0, className: "_4lgc _4h2u", style: { "height": 40, "width": 0 } }, React.createElement( "div", { className: "_4lgd _4h2w" }, @@ -2735,7 +2736,7 @@ if (props.x === 330) { return React.createElement( "div", - { isHeaderCell: true, label: "", dataKey: 4, groupHeaderRenderer: function () {}, groupHeaderLabels: {}, groupHeaderData: {}, columnKey: undefined, height: 40, width: 25, rowIndex: 0, className: "_4lgc _4h2u", style: { "height": 40, "width": 25 } }, + { label: "", height: 40, width: 25, className: "_4lgc _4h2u", style: { "height": 40, "width": 25 } }, React.createElement( "div", { className: "_4lgd _4h2w" }, @@ -2750,7 +2751,7 @@ if (props.x === 338) { return React.createElement( "div", - { isHeaderCell: true, label: undefined, width: 42, dataKey: "common.id", className: "_4lgc _4h2u", columnData: {}, cellRenderer: function () {}, headerDataGetter: function () {}, columnKey: "common.id", height: 25, style: { "height": 25, "width": 42 } }, + { label: undefined, width: 42, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 42 } }, React.createElement( "div", { className: "_4lgd _4h2w" }, @@ -2765,7 +2766,7 @@ if (props.x === 343) { return React.createElement( "div", - { isHeaderCell: true, label: "Campaign Name", width: 400, dataKey: "campaignGroup.name", className: "_4lgc _4h2u", columnData: {}, cellRenderer: function () {}, headerDataGetter: function () {}, columnKey: "campaignGroup.name", height: 25, style: { "height": 25, "width": 400 } }, + { label: "Campaign Name", width: 400, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 400 } }, React.createElement( "div", { className: "_4lgd _4h2w" }, @@ -2780,7 +2781,7 @@ if (props.x === 349) { return React.createElement( "div", - { isHeaderCell: true, label: undefined, width: 33, dataKey: "edit_status", className: "_4lgc _4h2u", columnData: {}, cellRenderer: function () {}, headerDataGetter: function () {}, columnKey: "edit_status", height: 25, style: { "height": 25, "width": 33 } }, + { label: undefined, width: 33, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 33 } }, React.createElement( "div", { className: "_4lgd _4h2w" }, @@ -2795,7 +2796,7 @@ if (props.x === 355) { return React.createElement( "div", - { isHeaderCell: true, label: undefined, width: 36, dataKey: "errors", className: "_4lgc _4h2u", columnData: {}, cellRenderer: function () {}, headerDataGetter: function () {}, columnKey: "errors", height: 25, style: { "height": 25, "width": 36 } }, + { label: undefined, width: 36, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 36 } }, React.createElement( "div", { className: "_4lgd _4h2w" }, @@ -2810,7 +2811,7 @@ if (props.x === 360) { return React.createElement( "div", - { isHeaderCell: true, label: "Status", width: 60, dataKey: "campaignGroup.status", className: "_4lgc _4h2u", columnData: {}, cellRenderer: function () {}, headerDataGetter: function () {}, columnKey: "campaignGroup.status", height: 25, style: { "height": 25, "width": 60 } }, + { label: "Status", width: 60, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 60 } }, React.createElement( "div", { className: "_4lgd _4h2w" }, @@ -2825,7 +2826,7 @@ if (props.x === 365) { return React.createElement( "div", - { isHeaderCell: true, label: "Delivery", width: 150, dataKey: "derivedCampaignGroup.activity_status", className: "_4lgc _4h2u", columnData: {}, cellRenderer: function () {}, headerDataGetter: function () {}, columnKey: "derivedCampaignGroup.activity_status", height: 25, style: { "height": 25, "width": 150 } }, + { label: "Delivery", width: 150, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 150 } }, React.createElement( "div", { className: "_4lgd _4h2w" }, @@ -2840,7 +2841,7 @@ if (props.x === 372) { return React.createElement( "div", - { isHeaderCell: true, label: "Results", width: 140, dataKey: "stats.actions", className: "_4lgc _4h2u", columnData: {}, cellRenderer: function () {}, headerDataGetter: function () {}, columnKey: "stats.actions", height: 25, style: { "height": 25, "width": 140 } }, + { label: "Results", width: 140, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 140 } }, React.createElement( "div", { className: "_4lgd _4h2w" }, @@ -2855,7 +2856,7 @@ if (props.x === 377) { return React.createElement( "div", - { isHeaderCell: true, label: "Cost", width: 140, dataKey: "stats.cpa", className: "_4lgc _4h2u", columnData: {}, cellRenderer: function () {}, headerDataGetter: function () {}, columnKey: "stats.cpa", height: 25, style: { "height": 25, "width": 140 } }, + { label: "Cost", width: 140, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 140 } }, React.createElement( "div", { className: "_4lgd _4h2w" }, @@ -2870,7 +2871,7 @@ if (props.x === 382) { return React.createElement( "div", - { isHeaderCell: true, label: "Reach", width: 80, dataKey: "stats.unique_impressions", className: "_4lgc _4h2u", columnData: {}, cellRenderer: function () {}, headerDataGetter: function () {}, columnKey: "stats.unique_impressions", height: 25, style: { "height": 25, "width": 80 } }, + { label: "Reach", width: 80, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 80 } }, React.createElement( "div", { className: "_4lgd _4h2w" }, @@ -2885,7 +2886,7 @@ if (props.x === 387) { return React.createElement( "div", - { isHeaderCell: true, label: "Impressions", width: 80, dataKey: "stats.impressions", className: "_4lgc _4h2u", columnData: {}, cellRenderer: function () {}, headerDataGetter: function () {}, columnKey: "stats.impressions", height: 25, style: { "height": 25, "width": 80 } }, + { label: "Impressions", width: 80, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 80 } }, React.createElement( "div", { className: "_4lgd _4h2w" }, @@ -2900,7 +2901,7 @@ if (props.x === 392) { return React.createElement( "div", - { isHeaderCell: true, label: "Clicks", width: 60, dataKey: "stats.clicks", className: "_4lgc _4h2u", columnData: {}, cellRenderer: function () {}, headerDataGetter: function () {}, columnKey: "stats.clicks", height: 25, style: { "height": 25, "width": 60 } }, + { label: "Clicks", width: 60, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 60 } }, React.createElement( "div", { className: "_4lgd _4h2w" }, @@ -2915,7 +2916,7 @@ if (props.x === 397) { return React.createElement( "div", - { isHeaderCell: true, label: "Avg. CPM", width: 80, dataKey: "stats.avg_cpm", className: "_4lgc _4h2u", columnData: {}, cellRenderer: function () {}, headerDataGetter: function () {}, columnKey: "stats.avg_cpm", height: 25, style: { "height": 25, "width": 80 } }, + { label: "Avg. CPM", width: 80, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 80 } }, React.createElement( "div", { className: "_4lgd _4h2w" }, @@ -2930,7 +2931,7 @@ if (props.x === 402) { return React.createElement( "div", - { isHeaderCell: true, label: "Avg. CPC", width: 78, dataKey: "stats.avg_cpc", className: "_4lgc _4h2u", columnData: {}, cellRenderer: function () {}, headerDataGetter: function () {}, columnKey: "stats.avg_cpc", height: 25, style: { "height": 25, "width": 78 } }, + { label: "Avg. CPC", width: 78, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 78 } }, React.createElement( "div", { className: "_4lgd _4h2w" }, @@ -2945,7 +2946,7 @@ if (props.x === 407) { return React.createElement( "div", - { isHeaderCell: true, label: "CTR %", width: 70, dataKey: "stats.ctr", className: "_4lgc _4h2u", columnData: {}, cellRenderer: function () {}, headerDataGetter: function () {}, columnKey: "stats.ctr", height: 25, style: { "height": 25, "width": 70 } }, + { label: "CTR %", width: 70, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 70 } }, React.createElement( "div", { className: "_4lgd _4h2w" }, @@ -2960,7 +2961,7 @@ if (props.x === 412) { return React.createElement( "div", - { isHeaderCell: true, label: "Spent", width: 70, dataKey: "stats.spent_100", className: "_4lgc _4h2u", columnData: {}, cellRenderer: function () {}, headerDataGetter: function () {}, columnKey: "stats.spent_100", height: 25, style: { "height": 25, "width": 70 } }, + { label: "Spent", width: 70, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 70 } }, React.createElement( "div", { className: "_4lgd _4h2w" }, @@ -2975,7 +2976,7 @@ if (props.x === 417) { return React.createElement( "div", - { isHeaderCell: true, label: "Objective", width: 200, dataKey: "campaignGroup.objective", className: "_4lgc _4h2u", columnData: {}, cellRenderer: function () {}, headerDataGetter: function () {}, columnKey: "campaignGroup.objective", height: 25, style: { "height": 25, "width": 200 } }, + { label: "Objective", width: 200, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 200 } }, React.createElement( "div", { className: "_4lgd _4h2w" }, @@ -2990,7 +2991,7 @@ if (props.x === 422) { return React.createElement( "div", - { isHeaderCell: true, label: "Buying Type", width: 100, dataKey: "campaignGroup.buying_type", className: "_4lgc _4h2u", columnData: {}, cellRenderer: function () {}, headerDataGetter: function () {}, columnKey: "campaignGroup.buying_type", height: 25, style: { "height": 25, "width": 100 } }, + { label: "Buying Type", width: 100, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 100 } }, React.createElement( "div", { className: "_4lgd _4h2w" }, @@ -3005,7 +3006,7 @@ if (props.x === 427) { return React.createElement( "div", - { isHeaderCell: true, label: "Campaign ID", width: 120, dataKey: "campaignGroup.id", className: "_4lgc _4h2u", columnData: {}, cellRenderer: function () {}, headerDataGetter: function () {}, columnKey: "campaignGroup.id", height: 25, style: { "height": 25, "width": 120 } }, + { label: "Campaign ID", width: 120, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 120 } }, React.createElement( "div", { className: "_4lgd _4h2w" }, @@ -3020,7 +3021,7 @@ if (props.x === 432) { return React.createElement( "div", - { isHeaderCell: true, label: "Start", width: 113, dataKey: "derivedCampaignGroup.startDate", className: "_4lgc _4h2u", columnData: {}, cellRenderer: function () {}, headerDataGetter: function () {}, columnKey: "derivedCampaignGroup.startDate", height: 25, style: { "height": 25, "width": 113 } }, + { label: "Start", width: 113, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 113 } }, React.createElement( "div", { className: "_4lgd _4h2w" }, @@ -3035,7 +3036,7 @@ if (props.x === 437) { return React.createElement( "div", - { isHeaderCell: true, label: "End", width: 113, dataKey: "derivedCampaignGroup.stopDate", className: "_4lgc _4h2u", columnData: {}, cellRenderer: function () {}, headerDataGetter: function () {}, columnKey: "derivedCampaignGroup.stopDate", height: 25, style: { "height": 25, "width": 113 } }, + { label: "End", width: 113, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 113 } }, React.createElement( "div", { className: "_4lgd _4h2w" }, @@ -3050,7 +3051,7 @@ if (props.x === 442) { return React.createElement( "div", - { isHeaderCell: true, label: "Date created", width: 113, dataKey: "derivedCampaignGroup.createdDate", className: "_4lgc _4h2u", columnData: {}, cellRenderer: function () {}, headerDataGetter: function () {}, columnKey: "derivedCampaignGroup.createdDate", height: 25, style: { "height": 25, "width": 113 } }, + { label: "Date created", width: 113, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 113 } }, React.createElement( "div", { className: "_4lgd _4h2w" }, @@ -3065,7 +3066,7 @@ if (props.x === 447) { return React.createElement( "div", - { isHeaderCell: true, label: "Date last edited", width: 113, dataKey: "derivedCampaignGroup.updatedDate", className: "_4lgc _4h2u", columnData: {}, cellRenderer: function () {}, headerDataGetter: function () {}, columnKey: "derivedCampaignGroup.updatedDate", height: 25, style: { "height": 25, "width": 113 } }, + { label: "Date last edited", width: 113, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 113 } }, React.createElement( "div", { className: "_4lgd _4h2w" }, @@ -3080,7 +3081,7 @@ if (props.x === 450) { return React.createElement( "div", - { isHeaderCell: true, label: "Tags", width: 150, dataKey: "labels", className: "_4lgc _4h2u", columnData: {}, cellRenderer: function () {}, headerDataGetter: function () {}, columnKey: "labels", height: 25, style: { "height": 25, "width": 150 } }, + { label: "Tags", width: 150, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 150 } }, React.createElement( "div", { className: "_4lgd _4h2w" }, @@ -3095,7 +3096,7 @@ if (props.x === 453) { return React.createElement( "div", - { isHeaderCell: true, label: "", width: 25, dataKey: "scrollbar_spacer", className: "_4lgc _4h2u", columnData: {}, cellRenderer: function () {}, headerDataGetter: function () {}, columnKey: "scrollbar_spacer", height: 25, style: { "height": 25, "width": 25 } }, + { label: "", width: 25, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 25 } }, React.createElement( "div", { className: "_4lgd _4h2w" }, @@ -3888,7 +3889,7 @@ return React.createElement( "div", { onFocus: function () {}, onBlur: function () {}, onKeyDown: function () {}, onMouseDown: function () {}, onWheel: function () {}, className: "_1t0r _1t0t _4jdr _1t0u", style: { "width": 1209, "zIndex": 99 }, tabIndex: 0 }, - React.createElement("div", { ref: "face", className: "_1t0w _1t0y _1t0_", style: { "width": 561.6340607950117, "transform": "translate3d(4px,0px,0)", "backfaceVisibility": "hidden" } }) + React.createElement("div", { className: "_1t0w _1t0y _1t0_", style: { "width": 561.6340607950117, "transform": "translate3d(4px,0px,0)", "backfaceVisibility": "hidden" } }) ); } }; @@ -3931,7 +3932,7 @@ var TransitionTable154 = function (props) { if (props.x === 464) { - return React.createElement(FixedDataTable153, { x: 463, ref: "fixedDataTable" }); + return React.createElement(FixedDataTable153, { x: 463 }); } }; @@ -3949,7 +3950,7 @@ if (props.x === 466) { return React.createElement( "div", - { ref: "tableContainer", className: "_5d6f", tabIndex: "0", onKeyDown: function () {} }, + { className: "_5d6f", tabIndex: "0", onKeyDown: function () {} }, React.createElement(AdsSelectableFixedDataTable155, { x: 465 }) ); } @@ -3960,7 +3961,7 @@ return React.createElement( "div", { onCopy: function () {} }, - React.createElement(AdsDataTableKeyboardSupportDecorator156, { x: 466, ref: "decoratedTable" }) + React.createElement(AdsDataTableKeyboardSupportDecorator156, { x: 466 }) ); } }; @@ -4036,8 +4037,8 @@ return React.createElement( "div", { className: "_49wu", style: { "height": 177, "top": 43, "width": 1306 } }, - React.createElement(ResponsiveBlock37, { x: 62 }), - React.createElement(AdsErrorBoundary10, { x: 476 }), + React.createElement(ResponsiveBlock37, { x: 62, key: '0' }), + React.createElement(AdsErrorBoundary10, { x: 476, key: '1' }), null ); } @@ -4194,5 +4195,9 @@ } }; - this.Benchmark = Benchmark; -})(this); + var app = document.getElementById('app'); + + window.render = function render() { + ReactDOM.render(React.createElement(Benchmark, null), app); + } +})(); diff --git a/scripts/bench/benchmarks/pe-functional-components/build.js b/scripts/bench/benchmarks/pe-functional-components/build.js new file mode 100644 index 000000000000..1a8e253bef83 --- /dev/null +++ b/scripts/bench/benchmarks/pe-functional-components/build.js @@ -0,0 +1,19 @@ +'use strict'; + +const { + join, +} = require('path'); + +async function build(reactPath, asyncCopyTo) { + // copy the UMD bundles + await asyncCopyTo( + join(reactPath, 'build', 'dist', 'react.production.min.js'), + join(__dirname, 'react.production.min.js') + ); + await asyncCopyTo( + join(reactPath, 'build', 'dist', 'react-dom.production.min.js'), + join(__dirname, 'react-dom.production.min.js') + ); +} + +module.exports = build; diff --git a/scripts/bench/benchmarks/pe-functional-components/index.html b/scripts/bench/benchmarks/pe-functional-components/index.html new file mode 100644 index 000000000000..ff55b65c9989 --- /dev/null +++ b/scripts/bench/benchmarks/pe-functional-components/index.html @@ -0,0 +1,32 @@ + + +
+ + + + + + + + + + \ No newline at end of file diff --git a/scripts/bench/benchmarks/pe-no-components/benchmark.js b/scripts/bench/benchmarks/pe-no-components/benchmark.js new file mode 100644 index 000000000000..12fda1f4f82a --- /dev/null +++ b/scripts/bench/benchmarks/pe-no-components/benchmark.js @@ -0,0 +1,4206 @@ +(function () { + 'use strict'; + + var ReactImage0 = function (x) { + if (x === 0) { + return React.createElement("i", { alt: "", className: "_3-99 img sp_i534r85sjIn sx_538591", src: null }); + } + if (x === 15) { + return React.createElement("i", { className: "_3ut_ img sp_i534r85sjIn sx_e8ac93", src: null, alt: "" }); + } + if (x === 22) { + return React.createElement("i", { alt: "", className: "_3-8_ img sp_i534r85sjIn sx_7b15bc", src: null }); + } + if (x === 29) { + return React.createElement("i", { className: "_1m1s _4540 _p img sp_i534r85sjIn sx_f40b1c", src: null, alt: "" }); + } + if (x === 42) { + return React.createElement( + "i", + { alt: "Warning", className: "_585p img sp_i534r85sjIn sx_20273d", src: null }, + React.createElement( + "u", + null, + "Warning" + ) + ); + } + if (x === 67) { + return React.createElement("i", { alt: "", className: "_3-8_ img sp_i534r85sjIn sx_b5d079", src: null }); + } + if (x === 70) { + return React.createElement("i", { src: null, alt: "", className: "img sp_i534r85sjIn sx_29f8c9" }); + } + if (x === 76) { + return React.createElement("i", { alt: "", className: "_3-8_ img sp_i534r85sjIn sx_ef6a9c", src: null }); + } + if (x === 79) { + return React.createElement("i", { src: null, alt: "", className: "img sp_i534r85sjIn sx_6f8c43" }); + } + if (x === 88) { + return React.createElement("i", { src: null, alt: "", className: "img sp_i534r85sjIn sx_e94a2d" }); + } + if (x === 91) { + return React.createElement("i", { src: null, alt: "", className: "img sp_i534r85sjIn sx_7ed7d4" }); + } + if (x === 94) { + return React.createElement("i", { src: null, alt: "", className: "img sp_i534r85sjIn sx_930440" }); + } + if (x === 98) { + return React.createElement("i", { src: null, alt: "", className: "img sp_i534r85sjIn sx_750c83" }); + } + if (x === 108) { + return React.createElement("i", { src: null, alt: "", className: "img sp_i534r85sjIn sx_73c1bb" }); + } + if (x === 111) { + return React.createElement("i", { src: null, alt: "", className: "img sp_i534r85sjIn sx_29f28d" }); + } + if (x === 126) { + return React.createElement("i", { src: null, alt: "", className: "_3-8_ img sp_i534r85sjIn sx_91c59e" }); + } + if (x === 127) { + return React.createElement("i", { alt: "", className: "_3-99 img sp_i534r85sjIn sx_538591", src: null }); + } + if (x === 134) { + return React.createElement("i", { src: null, alt: "", className: "_3-8_ img sp_i534r85sjIn sx_c8eb75" }); + } + if (x === 135) { + return React.createElement("i", { alt: "", className: "_3-99 img sp_i534r85sjIn sx_538591", src: null }); + } + if (x === 148) { + return React.createElement("i", { className: "_3yz6 _5whs img sp_i534r85sjIn sx_896996", src: null, alt: "" }); + } + if (x === 152) { + return React.createElement("i", { className: "_5b5p _4gem img sp_i534r85sjIn sx_896996", src: null, alt: "" }); + } + if (x === 153) { + return React.createElement("i", { className: "_541d img sp_i534r85sjIn sx_2f396a", src: null, alt: "" }); + } + if (x === 160) { + return React.createElement("i", { src: null, alt: "", className: "img sp_i534r85sjIn sx_31d9b0" }); + } + if (x === 177) { + return React.createElement("i", { alt: "", className: "_3-99 img sp_i534r85sjIn sx_2c18b7", src: null }); + } + if (x === 186) { + return React.createElement("i", { src: null, alt: "", className: "img sp_i534r85sjIn sx_0a681f" }); + } + if (x === 195) { + return React.createElement("i", { className: "_1-lx img sp_OkER5ktbEyg sx_b369b4", src: null, alt: "" }); + } + if (x === 198) { + return React.createElement("i", { className: "_1-lx img sp_i534r85sjIn sx_96948e", src: null, alt: "" }); + } + if (x === 237) { + return React.createElement("i", { className: "_541d img sp_i534r85sjIn sx_2f396a", src: null, alt: "" }); + } + if (x === 266) { + return React.createElement("i", { alt: "", className: "_3-99 img sp_i534r85sjIn sx_538591", src: null }); + } + if (x === 314) { + return React.createElement("i", { className: "_1cie _1cif img sp_i534r85sjIn sx_6e6820", src: null, alt: "" }); + } + if (x === 345) { + return React.createElement("i", { className: "_1cie img sp_i534r85sjIn sx_e896cf", src: null, alt: "" }); + } + if (x === 351) { + return React.createElement("i", { className: "_1cie img sp_i534r85sjIn sx_38fed8", src: null, alt: "" }); + } + }; + + var AbstractLink1 = function (x) { + if (x === 1) { + return React.createElement( + "a", + { className: "_387r _55pi _2agf _4jy0 _4jy4 _517h _51sy _42ft", style: { "width": 250, "maxWidth": "250px" }, disabled: null, label: null, href: "#", rel: undefined, onClick: function () {} }, + null, + React.createElement( + "span", + { className: "_55pe", style: { "maxWidth": "236px" } }, + null, + React.createElement( + "span", + null, + React.createElement( + "span", + { className: "_48u-" }, + "Account:" + ), + " ", + "Dick Madanson (10149999073643408)" + ) + ), + ReactImage0(0) + ); + } + if (x === 43) { + return React.createElement( + "a", + { className: "_585q _50zy _50-0 _50z- _5upp _42ft", size: "medium", type: null, title: "Remove", "data-hover": undefined, "data-tooltip-alignh": undefined, "data-tooltip-content": undefined, disabled: null, label: null, href: "#", rel: undefined, onClick: function () {} }, + undefined, + "Remove", + undefined + ); + } + if (x === 49) { + return React.createElement( + "a", + { target: "_blank", href: "/ads/manage/billing.php?act=10149999073643408", rel: undefined, onClick: function () {} }, + XUIText29(48) + ); + } + if (x === 128) { + return React.createElement( + "a", + { className: " _5bbf _55pi _2agf _4jy0 _4jy4 _517h _51sy _42ft", style: { "maxWidth": "200px" }, disabled: null, label: null, href: "#", rel: undefined, onClick: function () {} }, + null, + React.createElement( + "span", + { className: "_55pe", style: { "maxWidth": "186px" } }, + ReactImage0(126), + "Search" + ), + ReactImage0(127) + ); + } + if (x === 136) { + return React.createElement( + "a", + { className: " _5bbf _55pi _2agf _4jy0 _4jy4 _517h _51sy _42ft", style: { "maxWidth": "200px" }, disabled: null, label: null, href: "#", rel: undefined, onClick: function () {} }, + null, + React.createElement( + "span", + { className: "_55pe", style: { "maxWidth": "186px" } }, + ReactImage0(134), + "Filters" + ), + ReactImage0(135) + ); + } + if (x === 178) { + return React.createElement( + "a", + { className: "_1_-t _1_-v _42ft", disabled: null, height: "medium", role: "button", label: null, href: "#", rel: undefined, onClick: function () {} }, + undefined, + "Lifetime", + ReactImage0(177) + ); + } + if (x === 207) { + return React.createElement( + "a", + { href: "#", rel: undefined, onClick: function () {} }, + "Create Ad Set" + ); + } + if (x === 209) { + return React.createElement( + "a", + { href: "#", rel: undefined, onClick: function () {} }, + "View Ad Set" + ); + } + if (x === 241) { + return React.createElement( + "a", + { href: "#", rel: undefined, onClick: function () {} }, + "Set a Limit" + ); + } + if (x === 267) { + return React.createElement( + "a", + { className: "_p _55pi _2agf _4jy0 _4jy3 _517h _51sy _42ft", style: { "maxWidth": "200px" }, disabled: null, label: null, href: "#", rel: undefined, onClick: function () {} }, + null, + React.createElement( + "span", + { className: "_55pe", style: { "maxWidth": "186px" } }, + null, + "Links" + ), + ReactImage0(266) + ); + } + }; + + var Link2 = function (x) { + if (x === 2) { + return AbstractLink1(1); + } + if (x === 44) { + return AbstractLink1(43); + } + if (x === 50) { + return AbstractLink1(49); + } + if (x === 129) { + return AbstractLink1(128); + } + if (x === 137) { + return AbstractLink1(136); + } + if (x === 179) { + return AbstractLink1(178); + } + if (x === 208) { + return AbstractLink1(107); + } + if (x === 210) { + return AbstractLink1(209); + } + if (x === 242) { + return AbstractLink1(241); + } + if (x === 268) { + return AbstractLink1(267); + } + }; + + var AbstractButton3 = function (x) { + if (x === 3) { + return Link2(2); + } + if (x === 20) { + return React.createElement( + "button", + { className: "_5n7z _4jy0 _4jy4 _517h _51sy _42ft", onClick: function () {}, label: null, type: "submit", value: "1" }, + undefined, + "Discard Changes", + undefined + ); + } + if (x === 23) { + return React.createElement( + "button", + { className: "_5n7z _2yak _4lj- _4jy0 _4jy4 _517h _51sy _42ft _42fr", disabled: true, onClick: function () {}, "data-tooltip-content": "You have no changes to publish", "data-hover": "tooltip", label: null, type: "submit", value: "1" }, + ReactImage0(22), + "Review Changes", + undefined + ); + } + if (x === 45) { + return Link2(44); + } + if (x === 68) { + return React.createElement( + "button", + { className: "_u_k _4jy0 _4jy4 _517h _51sy _42ft", onClick: function () {}, label: null, type: "submit", value: "1" }, + ReactImage0(67), + "Create Campaign", + undefined + ); + } + if (x === 71) { + return React.createElement( + "button", + { className: "_u_k _3qx6 _p _4jy0 _4jy4 _517h _51sy _42ft", label: null, type: "submit", value: "1" }, + ReactImage0(70), + undefined, + undefined + ); + } + if (x === 77) { + return React.createElement( + "button", + { "aria-label": "Edit", "data-tooltip-content": "Edit Campaigns (Ctrl+U)", "data-hover": "tooltip", className: "_d2_ _u_k noMargin _4jy0 _4jy4 _517h _51sy _42ft", disabled: false, onClick: function () {}, label: null, type: "submit", value: "1" }, + ReactImage0(76), + "Edit", + undefined + ); + } + if (x === 80) { + return React.createElement( + "button", + { className: "_u_k _3qx6 _p _4jy0 _4jy4 _517h _51sy _42ft", disabled: false, label: null, type: "submit", value: "1" }, + ReactImage0(79), + undefined, + undefined + ); + } + if (x === 89) { + return React.createElement( + "button", + { "aria-label": "Revert", className: "_u_k _4jy0 _4jy4 _517h _51sy _42ft _42fr", "data-hover": "tooltip", "data-tooltip-content": "Revert", disabled: true, onClick: function () {}, label: null, type: "submit", value: "1" }, + ReactImage0(88), + undefined, + undefined + ); + } + if (x === 92) { + return React.createElement( + "button", + { "aria-label": "Delete", className: "_u_k _4jy0 _4jy4 _517h _51sy _42ft", "data-hover": "tooltip", "data-tooltip-content": "Delete", disabled: false, onClick: function () {}, label: null, type: "submit", value: "1" }, + ReactImage0(91), + undefined, + undefined + ); + } + if (x === 95) { + return React.createElement( + "button", + { "aria-label": "Duplicate", className: "_u_k _4jy0 _4jy4 _517h _51sy _42ft", "data-hover": "tooltip", "data-tooltip-content": "Duplicate", disabled: false, onClick: function () {}, label: null, type: "submit", value: "1" }, + ReactImage0(94), + undefined, + undefined + ); + } + if (x === 99) { + return React.createElement( + "button", + { "aria-label": "Export & Import", className: "_u_k noMargin _p _4jy0 _4jy4 _517h _51sy _42ft", "data-hover": "tooltip", "data-tooltip-content": "Export & Import", onClick: function () {}, label: null, type: "submit", value: "1" }, + ReactImage0(98), + undefined, + undefined + ); + } + if (x === 109) { + return React.createElement( + "button", + { "aria-label": "Create Report", className: "_u_k _5n7z _4jy0 _4jy4 _517h _51sy _42ft", "data-hover": "tooltip", "data-tooltip-content": "Create Report", disabled: false, style: { "boxSizing": "border-box", "height": "28px", "width": "48px" }, onClick: function () {}, label: null, type: "submit", value: "1" }, + ReactImage0(108), + undefined, + undefined + ); + } + if (x === 112) { + return React.createElement( + "button", + { "aria-label": "Campaign Tags", className: " _5uy7 _4jy0 _4jy4 _517h _51sy _42ft", "data-hover": "tooltip", "data-tooltip-content": "Campaign Tags", disabled: false, onClick: function () {}, label: null, type: "submit", value: "1" }, + ReactImage0(111), + undefined, + undefined + ); + } + if (x === 130) { + return Link2(129); + } + if (x === 138) { + return Link2(137); + } + if (x === 149) { + return React.createElement( + "button", + { className: "_3yz9 _1t-2 _50z- _50zy _50zz _50z- _5upp _42ft", size: "small", onClick: function () {}, type: "button", title: "Remove", "data-hover": undefined, "data-tooltip-alignh": undefined, "data-tooltip-content": undefined, label: null }, + undefined, + "Remove", + undefined + ); + } + if (x === 156) { + return React.createElement( + "button", + { className: "_5b5u _5b5v _4jy0 _4jy3 _517h _51sy _42ft", onClick: function () {}, label: null, type: "submit", value: "1" }, + undefined, + "Apply", + undefined + ); + } + if (x === 161) { + return React.createElement( + "button", + { className: "_1wdf _4jy0 _517i _517h _51sy _42ft", onClick: function () {}, label: null, type: "submit", value: "1" }, + ReactImage0(160), + undefined, + undefined + ); + } + if (x === 180) { + return Link2(179); + } + if (x === 187) { + return React.createElement( + "button", + { "aria-label": "List Settings", className: "_u_k _3c5o _1-r0 _4jy0 _4jy4 _517h _51sy _42ft", "data-hover": "tooltip", "data-tooltip-content": "List Settings", onClick: function () {}, label: null, type: "submit", value: "1" }, + ReactImage0(186), + undefined, + undefined + ); + } + if (x === 269) { + return Link2(268); + } + if (x === 303) { + return React.createElement( + "button", + { className: "_tm3 _tm6 _tm7 _4jy0 _4jy6 _517h _51sy _42ft", "data-tooltip-position": "right", "data-tooltip-content": "Campaigns", "data-hover": "tooltip", onClick: function () {}, label: null, type: "submit", value: "1" }, + undefined, + React.createElement( + "div", + null, + React.createElement("div", { className: "_tma" }), + React.createElement("div", { className: "_tm8" }), + React.createElement( + "div", + { className: "_tm9" }, + 1 + ) + ), + undefined + ); + } + if (x === 305) { + return React.createElement( + "button", + { className: "_tm4 _tm6 _4jy0 _4jy6 _517h _51sy _42ft", "data-tooltip-position": "right", "data-tooltip-content": "Ad Sets", "data-hover": "tooltip", onClick: function () {}, label: null, type: "submit", value: "1" }, + undefined, + React.createElement( + "div", + null, + React.createElement("div", { className: "_tma" }), + React.createElement("div", { className: "_tm8" }), + React.createElement( + "div", + { className: "_tm9" }, + 1 + ) + ), + undefined + ); + } + if (x === 307) { + return React.createElement( + "button", + { className: "_tm5 _tm6 _4jy0 _4jy6 _517h _51sy _42ft", "data-tooltip-position": "right", "data-tooltip-content": "Ads", "data-hover": "tooltip", onClick: function () {}, label: null, type: "submit", value: "1" }, + undefined, + React.createElement( + "div", + null, + React.createElement("div", { className: "_tma" }), + React.createElement("div", { className: "_tm8" }), + React.createElement( + "div", + { className: "_tm9" }, + 1 + ) + ), + undefined + ); + } + }; + + var XUIButton4 = function (x) { + if (x === 4) { + return AbstractButton3(3); + } + if (x === 21) { + return AbstractButton3(20); + } + if (x === 24) { + return AbstractButton3(23); + } + if (x === 69) { + return AbstractButton3(68); + } + if (x === 72) { + return AbstractButton3(71); + } + if (x === 78) { + return AbstractButton3(77); + } + if (x === 81) { + return AbstractButton3(80); + } + if (x === 90) { + return AbstractButton3(89); + } + if (x === 93) { + return AbstractButton3(92); + } + if (x === 96) { + return AbstractButton3(95); + } + if (x === 100) { + return AbstractButton3(99); + } + if (x === 110) { + return AbstractButton3(109); + } + if (x === 113) { + return AbstractButton3(112); + } + if (x === 131) { + return AbstractButton3(130); + } + if (x === 139) { + return AbstractButton3(138); + } + if (x === 157) { + return AbstractButton3(156); + } + if (x === 162) { + return AbstractButton3(161); + } + if (x === 188) { + return AbstractButton3(187); + } + if (x === 270) { + return AbstractButton3(269); + } + if (x === 304) { + return AbstractButton3(303); + } + if (x === 306) { + return AbstractButton3(305); + } + if (x === 308) { + return AbstractButton3(307); + } + }; + + var AbstractPopoverButton5 = function (x) { + if (x === 5) { + return XUIButton4(4); + } + if (x === 132) { + return XUIButton4(131); + } + if (x === 140) { + return XUIButton4(139); + } + if (x === 271) { + return XUIButton4(270); + } + }; + + var ReactXUIPopoverButton6 = function (x) { + if (x === 6) { + return AbstractPopoverButton5(5); + } + if (x === 133) { + return AbstractPopoverButton5(132); + } + if (x === 141) { + return AbstractPopoverButton5(140); + } + if (x === 272) { + return AbstractPopoverButton5(271); + } + }; + + var BIGAdAccountSelector7 = function (x) { + if (x === 7) { + return React.createElement( + "div", + null, + ReactXUIPopoverButton6(6), + null + ); + } + }; + + var FluxContainer_AdsPEBIGAdAccountSelectorContainer_8 = function (x) { + if (x === 8) { + return BIGAdAccountSelector7(7); + } + }; + + var ErrorBoundary9 = function (x) { + if (x === 9) { + return FluxContainer_AdsPEBIGAdAccountSelectorContainer_8(8); + } + if (x === 13) { + return FluxContainer_AdsPENavigationBarContainer_12(12); + } + if (x === 27) { + return FluxContainer_AdsPEPublishButtonContainer_18(26); + } + if (x === 32) { + return ReactPopoverMenu20(31); + } + if (x === 38) { + return AdsPEResetDialog24(37); + } + if (x === 57) { + return FluxContainer_AdsPETopErrorContainer_35(56); + } + if (x === 60) { + return FluxContainer_AdsGuidanceChannel_36(59); + } + if (x === 64) { + return FluxContainer_AdsBulkEditDialogContainer_38(63); + } + if (x === 124) { + return AdsPECampaignGroupToolbarContainer57(123); + } + if (x === 170) { + return AdsPEFilterContainer72(169); + } + if (x === 175) { + return AdsPETablePagerContainer75(174); + } + if (x === 193) { + return AdsPEStatRangeContainer81(192); + } + if (x === 301) { + return FluxContainer_AdsPEMultiTabDrawerContainer_137(300); + } + if (x === 311) { + return AdsPEOrganizerContainer139(310); + } + if (x === 471) { + return AdsPECampaignGroupTableContainer159(470); + } + if (x === 475) { + return AdsPEContentContainer161(474); + } + }; + + var AdsErrorBoundary10 = function (x) { + if (x === 10) { + return ErrorBoundary9(9); + } + if (x === 14) { + return ErrorBoundary9(13); + } + if (x === 28) { + return ErrorBoundary9(27); + } + if (x === 33) { + return ErrorBoundary9(32); + } + if (x === 39) { + return ErrorBoundary9(38); + } + if (x === 58) { + return ErrorBoundary9(57); + } + if (x === 61) { + return ErrorBoundary9(60); + } + if (x === 65) { + return ErrorBoundary9(64); + } + if (x === 125) { + return ErrorBoundary9(124); + } + if (x === 171) { + return ErrorBoundary9(170); + } + if (x === 176) { + return ErrorBoundary9(175); + } + if (x === 194) { + return ErrorBoundary9(193); + } + if (x === 302) { + return ErrorBoundary9(301); + } + if (x === 312) { + return ErrorBoundary9(311); + } + if (x === 472) { + return ErrorBoundary9(471); + } + if (x === 476) { + return ErrorBoundary9(475); + } + }; + + var AdsPENavigationBar11 = function (x) { + if (x === 11) { + return React.createElement("div", { className: "_4t_9" }); + } + }; + + var FluxContainer_AdsPENavigationBarContainer_12 = function (x) { + if (x === 12) { + return AdsPENavigationBar11(11); + } + }; + + var AdsPEDraftSyncStatus13 = function (x) { + if (x === 16) { + return React.createElement( + "div", + { className: "_3ut-", onClick: function () {} }, + React.createElement( + "span", + { className: "_3uu0" }, + ReactImage0(15) + ) + ); + } + }; + + var FluxContainer_AdsPEDraftSyncStatusContainer_14 = function (x) { + if (x === 17) { + return AdsPEDraftSyncStatus13(16); + } + }; + + var AdsPEDraftErrorsStatus15 = function (x) { + if (x === 18) { + return null; + } + }; + + var FluxContainer_viewFn_16 = function (x) { + if (x === 19) { + return AdsPEDraftErrorsStatus15(18); + } + }; + + var AdsPEPublishButton17 = function (x) { + if (x === 25) { + return React.createElement( + "div", + { className: "_5533" }, + FluxContainer_AdsPEDraftSyncStatusContainer_14(17), + FluxContainer_viewFn_16(19), + null, + XUIButton4(21, "discard"), + XUIButton4(24) + ); + } + }; + + var FluxContainer_AdsPEPublishButtonContainer_18 = function (x) { + if (x === 26) { + return AdsPEPublishButton17(25); + } + }; + + var InlineBlock19 = function (x) { + if (x === 30) { + return React.createElement( + "div", + { className: "uiPopover _6a _6b", disabled: null }, + ReactImage0(29) + ); + } + if (x === 73) { + return React.createElement( + "div", + { className: "uiPopover _6a _6b", disabled: null }, + XUIButton4(72) + ); + } + if (x === 82) { + return React.createElement( + "div", + { className: "_1nwm uiPopover _6a _6b", disabled: null }, + XUIButton4(81) + ); + } + if (x === 101) { + return React.createElement( + "div", + { size: "large", className: "uiPopover _6a _6b", disabled: null }, + XUIButton4(100) + ); + } + if (x === 273) { + return React.createElement( + "div", + { className: "_3-90 uiPopover _6a _6b", style: { "marginTop": 2 }, disabled: null }, + ReactXUIPopoverButton6(272) + ); + } + }; + + var ReactPopoverMenu20 = function (x) { + if (x === 31) { + return InlineBlock19(30); + } + if (x === 74) { + return InlineBlock19(73); + } + if (x === 83) { + return InlineBlock19(82); + } + if (x === 102) { + return InlineBlock19(101); + } + if (x === 274) { + return InlineBlock19(273); + } + }; + + var LeftRight21 = function (x) { + if (x === 34) { + return React.createElement( + "div", + { className: "clearfix" }, + React.createElement( + "div", + { key: "left", className: "_ohe lfloat" }, + React.createElement( + "div", + { className: "_34_j" }, + React.createElement( + "div", + { className: "_34_k" }, + AdsErrorBoundary10(10) + ), + React.createElement( + "div", + { className: "_2u-6" }, + AdsErrorBoundary10(14) + ) + ) + ), + React.createElement( + "div", + { key: "right", className: "_ohf rfloat" }, + React.createElement( + "div", + { className: "_34_m" }, + React.createElement( + "div", + { key: "0", className: "_5ju2" }, + AdsErrorBoundary10(28) + ), + React.createElement( + "div", + { key: "1", className: "_5ju2" }, + AdsErrorBoundary10(33) + ) + ) + ) + ); + } + if (x === 232) { + return React.createElement( + "div", + { direction: "left", className: "clearfix" }, + React.createElement( + "div", + { key: "left", className: "_ohe lfloat" }, + AdsLabeledField104(231) + ), + React.createElement( + "div", + { key: "right", className: "" }, + React.createElement( + "div", + { className: "_42ef" }, + React.createElement( + "div", + { className: "_2oc7" }, + "Clicks to Website" + ) + ) + ) + ); + } + if (x === 235) { + return React.createElement( + "div", + { className: "_3-8x clearfix", direction: "left" }, + React.createElement( + "div", + { key: "left", className: "_ohe lfloat" }, + AdsLabeledField104(234) + ), + React.createElement( + "div", + { key: "right", className: "" }, + React.createElement( + "div", + { className: "_42ef" }, + React.createElement( + "div", + { className: "_2oc7" }, + "Auction" + ) + ) + ) + ); + } + if (x === 245) { + return React.createElement( + "div", + { className: "_3-8y clearfix", direction: "left" }, + React.createElement( + "div", + { key: "left", className: "_ohe lfloat" }, + AdsLabeledField104(240) + ), + React.createElement( + "div", + { key: "right", className: "" }, + React.createElement( + "div", + { className: "_42ef" }, + FluxContainer_AdsCampaignGroupSpendCapContainer_107(244) + ) + ) + ); + } + if (x === 277) { + return React.createElement( + "div", + { className: "_5dw9 _5dwa clearfix" }, + React.createElement( + "div", + { key: "left", className: "_ohe lfloat" }, + XUICardHeaderTitle100(265) + ), + React.createElement( + "div", + { key: "right", className: "_ohf rfloat" }, + FluxContainer_AdsPluginizedLinksMenuContainer_121(276) + ) + ); + } + }; + + var AdsUnifiedNavigationLocalNav22 = function (x) { + if (x === 35) { + return React.createElement( + "div", + { className: "_34_i" }, + LeftRight21(34) + ); + } + }; + + var XUIDialog23 = function (x) { + if (x === 36) { + return null; + } + }; + + var AdsPEResetDialog24 = function (x) { + if (x === 37) { + return React.createElement( + "span", + null, + XUIDialog23(36) + ); + } + }; + + var AdsPETopNav25 = function (x) { + if (x === 40) { + return React.createElement( + "div", + { style: { "width": 1306 } }, + AdsUnifiedNavigationLocalNav22(35), + AdsErrorBoundary10(39) + ); + } + }; + + var FluxContainer_AdsPETopNavContainer_26 = function (x) { + if (x === 41) { + return AdsPETopNav25(40); + } + }; + + var XUIAbstractGlyphButton27 = function (x) { + if (x === 46) { + return AbstractButton3(45); + } + if (x === 150) { + return AbstractButton3(149); + } + }; + + var XUICloseButton28 = function (x) { + if (x === 47) { + return XUIAbstractGlyphButton27(46); + } + if (x === 151) { + return XUIAbstractGlyphButton27(150); + } + }; + + var XUIText29 = function (x) { + if (x === 48) { + return React.createElement( + "span", + { display: "inline", className: " _50f7" }, + "Ads Manager" + ); + } + if (x === 205) { + return React.createElement( + "span", + { className: "_2x9f _50f5 _50f7", display: "inline" }, + "Editing Campaign" + ); + } + if (x === 206) { + return React.createElement( + "span", + { display: "inline", className: " _50f5 _50f7" }, + "Test Campaign" + ); + } + }; + + var XUINotice30 = function (x) { + if (x === 51) { + return React.createElement( + "div", + { size: "medium", className: "_585n _585o _2wdd" }, + ReactImage0(42), + XUICloseButton28(47), + React.createElement( + "div", + { className: "_585r _2i-a _50f4" }, + "Please go to ", + Link2(50), + " to set up a payment method for this ad account." + ) + ); + } + }; + + var ReactCSSTransitionGroupChild31 = function (x) { + if (x === 52) { + return XUINotice30(51); + } + }; + + var ReactTransitionGroup32 = function (x) { + if (x === 53) { + return React.createElement( + "span", + null, + ReactCSSTransitionGroupChild31(52) + ); + } + }; + + var ReactCSSTransitionGroup33 = function (x) { + if (x === 54) { + return ReactTransitionGroup32(53); + } + }; + + var AdsPETopError34 = function (x) { + if (x === 55) { + return React.createElement( + "div", + { className: "_2wdc" }, + ReactCSSTransitionGroup33(54) + ); + } + }; + + var FluxContainer_AdsPETopErrorContainer_35 = function (x) { + if (x === 56) { + return AdsPETopError34(55); + } + }; + + var FluxContainer_AdsGuidanceChannel_36 = function (x) { + if (x === 59) { + return null; + } + }; + + var ResponsiveBlock37 = function (x) { + if (x === 62) { + return React.createElement( + "div", + { className: "_4u-c" }, + [ + AdsErrorBoundary10(58), + AdsErrorBoundary10(61) + ], + React.createElement( + "div", + { key: "sensor", className: "_4u-f" }, + React.createElement("iframe", { "aria-hidden": "true", className: "_1_xb", tabIndex: "-1" }) + ) + ); + } + if (x === 469) { + return React.createElement( + "div", + { className: "_4u-c" }, + AdsPEDataTableContainer158(468), + React.createElement( + "div", + { key: "sensor", className: "_4u-f" }, + React.createElement("iframe", { "aria-hidden": "true", className: "_1_xb", tabIndex: "-1" }) + ) + ); + } + }; + + var FluxContainer_AdsBulkEditDialogContainer_38 = function (x) { + if (x === 63) { + return null; + } + }; + + var Column39 = function (x) { + if (x === 66) { + return React.createElement( + "div", + { className: "_4bl8 _4bl7" }, + React.createElement( + "div", + { className: "_3c5f" }, + null, + null, + React.createElement("div", { className: "_3c5i" }), + null + ) + ); + } + }; + + var XUIButtonGroup40 = function (x) { + if (x === 75) { + return React.createElement( + "div", + { className: "_5n7z _51xa" }, + XUIButton4(69), + ReactPopoverMenu20(74) + ); + } + if (x === 84) { + return React.createElement( + "div", + { className: "_5n7z _51xa" }, + XUIButton4(78), + ReactPopoverMenu20(83) + ); + } + if (x === 97) { + return React.createElement( + "div", + { className: "_5n7z _51xa" }, + XUIButton4(90), + XUIButton4(93), + XUIButton4(96) + ); + } + if (x === 117) { + return React.createElement( + "div", + { className: "_5n7z _51xa" }, + AdsPEExportImportMenuContainer48(107), + XUIButton4(110), + AdsPECampaignGroupTagContainer51(116) + ); + } + }; + + var AdsPEEditToolbarButton41 = function (x) { + if (x === 85) { + return XUIButtonGroup40(84); + } + }; + + var FluxContainer_AdsPEEditCampaignGroupToolbarButtonContainer_42 = function (x) { + if (x === 86) { + return AdsPEEditToolbarButton41(85); + } + }; + + var FluxContainer_AdsPEEditToolbarButtonContainer_43 = function (x) { + if (x === 87) { + return FluxContainer_AdsPEEditCampaignGroupToolbarButtonContainer_42(86); + } + }; + + var AdsPEExportImportMenu44 = function (x) { + if (x === 103) { + return ReactPopoverMenu20(102); + } + }; + + var FluxContainer_AdsPECustomizeExportContainer_45 = function (x) { + if (x === 104) { + return null; + } + }; + + var AdsPEExportAsTextDialog46 = function (x) { + if (x === 105) { + return null; + } + }; + + var FluxContainer_AdsPEExportAsTextDialogContainer_47 = function (x) { + if (x === 106) { + return AdsPEExportAsTextDialog46(105); + } + }; + + var AdsPEExportImportMenuContainer48 = function (x) { + if (x === 107) { + return React.createElement( + "span", + null, + AdsPEExportImportMenu44(103), + FluxContainer_AdsPECustomizeExportContainer_45(104), + FluxContainer_AdsPEExportAsTextDialogContainer_47(106), + null, + null + ); + } + }; + + var Constructor49 = function (x) { + if (x === 114) { + return null; + } + if (x === 142) { + return null; + } + if (x === 143) { + return null; + } + if (x === 183) { + return null; + } + }; + + var TagSelectorPopover50 = function (x) { + if (x === 115) { + return React.createElement( + "span", + { className: " _3d6e" }, + XUIButton4(113), + Constructor49(114) + ); + } + }; + + var AdsPECampaignGroupTagContainer51 = function (x) { + if (x === 116) { + return TagSelectorPopover50(115); + } + }; + + var AdsRuleToolbarMenu52 = function (x) { + if (x === 118) { + return null; + } + }; + + var FluxContainer_AdsPERuleToolbarMenuContainer_53 = function (x) { + if (x === 119) { + return AdsRuleToolbarMenu52(118); + } + }; + + var FillColumn54 = function (x) { + if (x === 120) { + return React.createElement( + "div", + { className: "_4bl9" }, + React.createElement( + "span", + { className: "_3c5e" }, + React.createElement( + "span", + null, + XUIButtonGroup40(75), + FluxContainer_AdsPEEditToolbarButtonContainer_43(87), + null, + XUIButtonGroup40(97) + ), + XUIButtonGroup40(117), + FluxContainer_AdsPERuleToolbarMenuContainer_53(119) + ) + ); + } + }; + + var Layout55 = function (x) { + if (x === 121) { + return React.createElement( + "div", + { className: "clearfix" }, + Column39(66), + FillColumn54(120) + ); + } + }; + + var AdsPEMainPaneToolbar56 = function (x) { + if (x === 122) { + return React.createElement( + "div", + { className: "_3c5b clearfix" }, + Layout55(121) + ); + } + }; + + var AdsPECampaignGroupToolbarContainer57 = function (x) { + if (x === 123) { + return AdsPEMainPaneToolbar56(122); + } + }; + + var AdsPEFiltersPopover58 = function (x) { + if (x === 144) { + return React.createElement( + "span", + { className: "_5b-l _5bbe" }, + ReactXUIPopoverButton6(133), + ReactXUIPopoverButton6(141), + [Constructor49(142), Constructor49(143)] + ); + } + }; + + var AbstractCheckboxInput59 = function (x) { + if (x === 145) { + return React.createElement( + "label", + { className: "uiInputLabelInput _55sg _kv1" }, + React.createElement("input", { checked: true, disabled: true, name: "filterUnpublished", value: "on", onClick: function () {}, className: null, id: "js_input_label_21", type: "checkbox" }), + React.createElement("span", { "data-hover": null, "data-tooltip-content": undefined }) + ); + } + if (x === 336) { + return React.createElement( + "label", + { className: "_4h2r _55sg _kv1" }, + React.createElement("input", { checked: undefined, onChange: function () {}, className: null, type: "checkbox" }), + React.createElement("span", { "data-hover": null, "data-tooltip-content": undefined }) + ); + } + }; + + var XUICheckboxInput60 = function (x) { + if (x === 146) { + return AbstractCheckboxInput59(145); + } + if (x === 337) { + return AbstractCheckboxInput59(336); + } + }; + + var InputLabel61 = function (x) { + if (x === 147) { + return React.createElement( + "div", + { display: "block", className: "uiInputLabel clearfix" }, + XUICheckboxInput60(146), + React.createElement( + "label", + { className: "uiInputLabelLabel", htmlFor: "js_input_label_21" }, + "Always show new items" + ) + ); + } + }; + + var AdsPopoverLink62 = function (x) { + if (x === 154) { + return React.createElement( + "span", + null, + React.createElement( + "span", + { onMouseEnter: function () {}, onMouseLeave: function () {}, onMouseUp: undefined }, + React.createElement("span", { className: "_3o_j" }), + ReactImage0(153) + ), + null + ); + } + if (x === 238) { + return React.createElement( + "span", + null, + React.createElement( + "span", + { onMouseEnter: function () {}, onMouseLeave: function () {}, onMouseUp: undefined }, + React.createElement("span", { className: "_3o_j" }), + ReactImage0(237) + ), + null + ); + } + }; + + var AdsHelpLink63 = function (x) { + if (x === 155) { + return AdsPopoverLink62(154); + } + if (x === 239) { + return AdsPopoverLink62(238); + } + }; + + var BUIFilterTokenInput64 = function (x) { + if (x === 158) { + return React.createElement( + "div", + { className: "_5b5o _3yz3 _4cld" }, + React.createElement( + "div", + { className: "_5b5t _2d2k" }, + ReactImage0(152), + React.createElement( + "div", + { className: "_5b5r" }, + "Campaigns: (1)", + AdsHelpLink63(155) + ) + ), + XUIButton4(157) + ); + } + }; + + var BUIFilterToken65 = function (x) { + if (x === 159) { + return React.createElement( + "div", + { className: "_3yz1 _3yz2 _3dad" }, + React.createElement( + "div", + { className: "_3yz4", "aria-hidden": false }, + React.createElement( + "div", + { onClick: function () {}, className: "_3yz5" }, + ReactImage0(148), + React.createElement( + "div", + { className: "_3yz7" }, + "Campaigns:" + ), + React.createElement( + "div", + { className: "ellipsis _3yz8", "data-hover": "tooltip", "data-tooltip-display": "overflow" }, + "(1)" + ) + ), + null, + XUICloseButton28(151) + ), + BUIFilterTokenInput64(158) + ); + } + }; + + var BUIFilterTokenCreateButton66 = function (x) { + if (x === 163) { + return React.createElement( + "div", + { className: "_1tc" }, + XUIButton4(162) + ); + } + }; + + var BUIFilterTokenizer67 = function (x) { + if (x === 164) { + return React.createElement( + "div", + { className: "_5b-m clearfix" }, + undefined, + [], + BUIFilterToken65(159), + BUIFilterTokenCreateButton66(163), + null, + React.createElement("div", { className: "_49u3" }) + ); + } + }; + + var XUIAmbientNUX68 = function (x) { + if (x === 165) { + return null; + } + if (x === 189) { + return null; + } + if (x === 200) { + return null; + } + }; + + var XUIAmbientNUX69 = function (x) { + if (x === 166) { + return XUIAmbientNUX68(165); + } + if (x === 190) { + return XUIAmbientNUX68(189); + } + if (x === 201) { + return XUIAmbientNUX68(200); + } + }; + + var AdsPEAmbientNUXMegaphone70 = function (x) { + if (x === 167) { + return React.createElement( + "span", + null, + React.createElement("span", { }), + XUIAmbientNUX69(166) + ); + } + }; + + var AdsPEFilters71 = function (x) { + if (x === 168) { + return React.createElement( + "div", + { className: "_4rw_" }, + AdsPEFiltersPopover58(144), + React.createElement( + "div", + { className: "_1eo" }, + InputLabel61(147) + ), + BUIFilterTokenizer67(164), + "", + AdsPEAmbientNUXMegaphone70(167) + ); + } + }; + + var AdsPEFilterContainer72 = function (x) { + if (x === 169) { + return AdsPEFilters71(168); + } + }; + + var AdsPETablePager73 = function (x) { + if (x === 172) { + return null; + } + }; + + var AdsPECampaignGroupTablePagerContainer74 = function (x) { + if (x === 173) { + return AdsPETablePager73(172); + } + }; + + var AdsPETablePagerContainer75 = function (x) { + if (x === 174) { + return AdsPECampaignGroupTablePagerContainer74(173); + } + }; + + var ReactXUIError76 = function (x) { + if (x === 181) { + return AbstractButton3(180); + } + if (x === 216) { + return React.createElement( + "div", + { className: "_40bf _2vl4 _1h18" }, + null, + null, + React.createElement( + "div", + { className: "_2vl9 _1h1f", style: { "backgroundColor": "#fff" } }, + React.createElement( + "div", + { className: "_2vla _1h1g" }, + React.createElement( + "div", + null, + null, + React.createElement("textarea", { className: "_2vli _2vlj _1h26 _1h27", dir: "auto", disabled: undefined, id: undefined, maxLength: null, value: "Test Campaign", onBlur: function () {}, onChange: function () {}, onFocus: function () {}, onKeyDown: function () {} }), + null + ), + React.createElement("div", { "aria-hidden": "true", className: "_2vlk" }) + ) + ), + null + ); + } + if (x === 221) { + return XUICard94(220); + } + if (x === 250) { + return XUICard94(249); + } + if (x === 280) { + return XUICard94(279); + } + }; + + var BUIPopoverButton77 = function (x) { + if (x === 182) { + return ReactXUIError76(181); + } + }; + + var BUIDateRangePicker78 = function (x) { + if (x === 184) { + return React.createElement( + "span", + null, + BUIPopoverButton77(182), + [Constructor49(183)] + ); + } + }; + + var AdsPEStatsRangePicker79 = function (x) { + if (x === 185) { + return BUIDateRangePicker78(184); + } + }; + + var AdsPEStatRange80 = function (x) { + if (x === 191) { + return React.createElement( + "div", + { className: "_3c5k" }, + React.createElement( + "span", + { className: "_3c5j" }, + "Stats:" + ), + React.createElement( + "span", + { className: "_3c5l" }, + AdsPEStatsRangePicker79(185), + XUIButton4(188) + ), + [XUIAmbientNUX69(190)] + ); + } + }; + + var AdsPEStatRangeContainer81 = function (x) { + if (x === 192) { + return AdsPEStatRange80(191); + } + }; + + var AdsPESideTrayTabButton82 = function (x) { + if (x === 196) { + return React.createElement( + "div", + { className: "_1-ly _59j9 _d9a", onClick: function () {} }, + ReactImage0(195), + React.createElement("div", { className: "_vf7" }), + React.createElement("div", { className: "_vf8" }) + ); + } + if (x === 199) { + return React.createElement( + "div", + { className: " _1-lz _d9a", onClick: function () {} }, + ReactImage0(198), + React.createElement("div", { className: "_vf7" }), + React.createElement("div", { className: "_vf8" }) + ); + } + if (x === 203) { + return null; + } + }; + + var AdsPEEditorTrayTabButton83 = function (x) { + if (x === 197) { + return AdsPESideTrayTabButton82(196); + } + }; + + var AdsPEInsightsTrayTabButton84 = function (x) { + if (x === 202) { + return React.createElement( + "span", + null, + AdsPESideTrayTabButton82(199), + XUIAmbientNUX69(201) + ); + } + }; + + var AdsPENekoDebuggerTrayTabButton85 = function (x) { + if (x === 204) { + return AdsPESideTrayTabButton82(203); + } + }; + + var AdsPEEditorChildLink86 = function (x) { + if (x === 211) { + return React.createElement( + "div", + { className: "_3ywr" }, + Link2(208), + React.createElement( + "span", + { className: "_3ywq" }, + "|" + ), + Link2(210) + ); + } + }; + + var AdsPEEditorChildLinkContainer87 = function (x) { + if (x === 212) { + return AdsPEEditorChildLink86(211); + } + }; + + var AdsPEHeaderSection88 = function (x) { + if (x === 213) { + return React.createElement( + "div", + { className: "_yke" }, + React.createElement("div", { className: "_2x9d _pr-" }), + XUIText29(205), + React.createElement( + "div", + { className: "_3a-a" }, + React.createElement( + "div", + { className: "_3a-b" }, + XUIText29(206) + ) + ), + AdsPEEditorChildLinkContainer87(212) + ); + } + }; + + var AdsPECampaignGroupHeaderSectionContainer89 = function (x) { + if (x === 214) { + return AdsPEHeaderSection88(213); + } + }; + + var AdsEditorLoadingErrors90 = function (x) { + if (x === 215) { + return null; + } + }; + + var AdsTextInput91 = function (x) { + if (x === 217) { + return ReactXUIError76(216); + } + }; + + var BUIFormElement92 = function (x) { + if (x === 218) { + return React.createElement( + "div", + { className: "_5521 clearfix" }, + React.createElement( + "div", + { className: "_5522 _3w5q" }, + React.createElement( + "label", + { onClick: undefined, htmlFor: "1467872040612:1961945894", className: "_5523 _3w5r" }, + "Campaign Name", + null + ) + ), + React.createElement( + "div", + { className: "_5527" }, + React.createElement( + "div", + { className: "_5528" }, + React.createElement( + "span", + { key: ".0", className: "_40bg", id: "1467872040612:1961945894" }, + AdsTextInput91(217), + null + ) + ), + null + ) + ); + } + }; + + var BUIForm93 = function (x) { + if (x === 219) { + return React.createElement( + "div", + { className: "_5ks1 _550r _550t _550y _3w5n" }, + BUIFormElement92(218) + ); + } + }; + + var XUICard94 = function (x) { + if (x === 220) { + return React.createElement( + "div", + { className: "_40bc _12k2 _4-u2 _4-u8" }, + BUIForm93(219) + ); + } + if (x === 249) { + return React.createElement( + "div", + { className: "_12k2 _4-u2 _4-u8" }, + AdsCardHeader103(230), + AdsCardSection108(248) + ); + } + if (x === 279) { + return React.createElement( + "div", + { className: "_12k2 _4-u2 _4-u8" }, + AdsCardLeftRightHeader122(278) + ); + } + }; + + var AdsCard95 = function (x) { + if (x === 222) { + return ReactXUIError76(221); + } + if (x === 251) { + return ReactXUIError76(250); + } + if (x === 281) { + return ReactXUIError76(280); + } + }; + + var AdsEditorNameSection96 = function (x) { + if (x === 223) { + return AdsCard95(222); + } + }; + + var AdsCampaignGroupNameSectionContainer97 = function (x) { + if (x === 224) { + return AdsEditorNameSection96(223); + } + }; + + var _render98 = function (x) { + if (x === 225) { + return AdsCampaignGroupNameSectionContainer97(224); + } + }; + + var AdsPluginWrapper99 = function (x) { + if (x === 226) { + return _render98(225); + } + if (x === 255) { + return _render111(254); + } + if (x === 258) { + return _render113(257); + } + if (x === 287) { + return _render127(286); + } + if (x === 291) { + return _render130(290); + } + }; + + var XUICardHeaderTitle100 = function (x) { + if (x === 227) { + return React.createElement( + "span", + { className: "_38my" }, + "Campaign Details", + null, + React.createElement("span", { className: "_c1c" }) + ); + } + if (x === 265) { + return React.createElement( + "span", + { className: "_38my" }, + [React.createElement( + "span", + { key: 1 }, + "Campaign ID", + ": ", + "98010048849317" + ), React.createElement( + "div", + { className: "_5lh9", key: 2 }, + FluxContainer_AdsCampaignGroupStatusSwitchContainer_119(264) + )], + null, + React.createElement("span", { className: "_c1c" }) + ); + } + }; + + var XUICardSection101 = function (x) { + if (x === 228) { + return React.createElement( + "div", + { className: "_5dw9 _5dwa _4-u3" }, + [XUICardHeaderTitle100(227)], + undefined, + undefined, + React.createElement("div", { className: "_3s3-" }) + ); + } + if (x === 247) { + return React.createElement( + "div", + { className: "_12jy _4-u3" }, + React.createElement( + "div", + { className: "_3-8j" }, + FlexibleBlock105(233), + FlexibleBlock105(236), + FlexibleBlock105(246), + null, + null + ) + ); + } + }; + + var XUICardHeader102 = function (x) { + if (x === 229) { + return XUICardSection101(228); + } + }; + + var AdsCardHeader103 = function (x) { + if (x === 230) { + return XUICardHeader102(229); + } + }; + + var AdsLabeledField104 = function (x) { + if (x === 231) { + return React.createElement( + "div", + { className: "_2oc6 _3bvz", label: "Objective" }, + React.createElement( + "label", + { className: "_4el4 _3qwj _3hy-", htmlFor: undefined }, + "Objective " + ), + null, + React.createElement("div", { className: "_3bv-" }) + ); + } + if (x === 234) { + return React.createElement( + "div", + { className: "_2oc6 _3bvz", label: "Buying Type" }, + React.createElement( + "label", + { className: "_4el4 _3qwj _3hy-", htmlFor: undefined }, + "Buying Type " + ), + null, + React.createElement("div", { className: "_3bv-" }) + ); + } + if (x === 240) { + return React.createElement( + "div", + { className: "_2oc6 _3bvz" }, + React.createElement( + "label", + { className: "_4el4 _3qwj _3hy-", htmlFor: undefined }, + "Campaign Spending Limit " + ), + AdsHelpLink63(239), + React.createElement("div", { className: "_3bv-" }) + ); + } + }; + + var FlexibleBlock105 = function (x) { + if (x === 233) { + return LeftRight21(232); + } + if (x === 236) { + return LeftRight21(235); + } + if (x === 246) { + return LeftRight21(245); + } + }; + + var AdsBulkCampaignSpendCapField106 = function (x) { + if (x === 243) { + return React.createElement( + "div", + { className: "_33dv" }, + "", + Link2(242), + " (optional)" + ); + } + }; + + var FluxContainer_AdsCampaignGroupSpendCapContainer_107 = function (x) { + if (x === 244) { + return AdsBulkCampaignSpendCapField106(243); + } + }; + + var AdsCardSection108 = function (x) { + if (x === 248) { + return XUICardSection101(247); + } + }; + + var AdsEditorCampaignGroupDetailsSection109 = function (x) { + if (x === 252) { + return AdsCard95(251); + } + }; + + var AdsEditorCampaignGroupDetailsSectionContainer110 = function (x) { + if (x === 253) { + return AdsEditorCampaignGroupDetailsSection109(252); + } + }; + + var _render111 = function (x) { + if (x === 254) { + return AdsEditorCampaignGroupDetailsSectionContainer110(253); + } + }; + + var FluxContainer_AdsEditorToplineDetailsSectionContainer_112 = function (x) { + if (x === 256) { + return null; + } + }; + + var _render113 = function (x) { + if (x === 257) { + return FluxContainer_AdsEditorToplineDetailsSectionContainer_112(256); + } + }; + + var AdsStickyArea114 = function (x) { + if (x === 259) { + return React.createElement( + "div", + { }, + React.createElement("div", { onWheel: function () {} }) + ); + } + if (x === 292) { + return React.createElement( + "div", + { }, + React.createElement( + "div", + { onWheel: function () {} }, + [React.createElement( + "div", + { key: "campaign_group_errors_section98010048849317" }, + AdsPluginWrapper99(291) + )] + ) + ); + } + }; + + var FluxContainer_AdsEditorColumnContainer_115 = function (x) { + if (x === 260) { + return React.createElement( + "div", + null, + [React.createElement( + "div", + { key: "campaign_group_name_section98010048849317" }, + AdsPluginWrapper99(226) + ), React.createElement( + "div", + { key: "campaign_group_basic_section98010048849317" }, + AdsPluginWrapper99(255) + ), React.createElement( + "div", + { key: "campaign_group_topline_section98010048849317" }, + AdsPluginWrapper99(258) + )], + AdsStickyArea114(259) + ); + } + if (x === 293) { + return React.createElement( + "div", + null, + [React.createElement( + "div", + { key: "campaign_group_navigation_section98010048849317" }, + AdsPluginWrapper99(287) + )], + AdsStickyArea114(292) + ); + } + }; + + var BUISwitch116 = function (x) { + if (x === 261) { + return React.createElement( + "div", + { "data-hover": "tooltip", "data-tooltip-content": "Currently active. Click this switch to deactivate it.", "data-tooltip-position": "below", disabled: false, value: true, onToggle: function () {}, className: "_128j _128k _128n", role: "checkbox", "aria-checked": "true" }, + React.createElement( + "div", + { className: "_128o", onClick: function () {}, onKeyDown: function () {}, onMouseDown: function () {}, tabIndex: "0" }, + React.createElement("div", { className: "_128p" }) + ), + null + ); + } + }; + + var AdsStatusSwitchInternal117 = function (x) { + if (x === 262) { + return BUISwitch116(261); + } + }; + + var AdsStatusSwitch118 = function (x) { + if (x === 263) { + return AdsStatusSwitchInternal117(262); + } + }; + + var FluxContainer_AdsCampaignGroupStatusSwitchContainer_119 = function (x) { + if (x === 264) { + return AdsStatusSwitch118(263); + } + }; + + var AdsLinksMenu120 = function (x) { + if (x === 275) { + return ReactPopoverMenu20(274); + } + }; + + var FluxContainer_AdsPluginizedLinksMenuContainer_121 = function (x) { + if (x === 276) { + return React.createElement( + "div", + null, + null, + AdsLinksMenu120(275) + ); + } + }; + + var AdsCardLeftRightHeader122 = function (x) { + if (x === 278) { + return LeftRight21(277); + } + }; + + var AdsPEIDSection123 = function (x) { + if (x === 282) { + return AdsCard95(281); + } + }; + + var FluxContainer_AdsPECampaignGroupIDSectionContainer_124 = function (x) { + if (x === 283) { + return AdsPEIDSection123(282); + } + }; + + var DeferredComponent125 = function (x) { + if (x === 284) { + return FluxContainer_AdsPECampaignGroupIDSectionContainer_124(283); + } + }; + + var BootloadedComponent126 = function (x) { + if (x === 285) { + return DeferredComponent125(284); + } + }; + + var _render127 = function (x) { + if (x === 286) { + return BootloadedComponent126(285); + } + }; + + var AdsEditorErrorsCard128 = function (x) { + if (x === 288) { + return null; + } + }; + + var FluxContainer_FunctionalContainer_129 = function (x) { + if (x === 289) { + return AdsEditorErrorsCard128(288); + } + }; + + var _render130 = function (x) { + if (x === 290) { + return FluxContainer_FunctionalContainer_129(289); + } + }; + + var AdsEditorMultiColumnLayout131 = function (x) { + if (x === 294) { + return React.createElement( + "div", + { className: "_psh" }, + React.createElement( + "div", + { className: "_3cc0" }, + React.createElement( + "div", + null, + AdsEditorLoadingErrors90(215), + React.createElement( + "div", + { className: "_3ms3" }, + React.createElement( + "div", + { className: "_3ms4" }, + FluxContainer_AdsEditorColumnContainer_115(260) + ), + React.createElement( + "div", + { className: "_3pvg" }, + FluxContainer_AdsEditorColumnContainer_115(293) + ) + ) + ) + ) + ); + } + }; + + var AdsPECampaignGroupEditor132 = function (x) { + if (x === 295) { + return React.createElement( + "div", + null, + AdsPECampaignGroupHeaderSectionContainer89(214), + AdsEditorMultiColumnLayout131(294) + ); + } + }; + + var AdsPECampaignGroupEditorContainer133 = function (x) { + if (x === 296) { + return AdsPECampaignGroupEditor132(295); + } + }; + + var AdsPESideTrayTabContent134 = function (x) { + if (x === 297) { + return React.createElement( + "div", + { className: "_1o_8 _44ra _5cyn" }, + AdsPECampaignGroupEditorContainer133(296) + ); + } + }; + + var AdsPEEditorTrayTabContentContainer135 = function (x) { + if (x === 298) { + return AdsPESideTrayTabContent134(297); + } + }; + + var AdsPEMultiTabDrawer136 = function (x) { + if (x === 299) { + return React.createElement( + "div", + { className: "_2kev _2kex" }, + React.createElement( + "div", + { className: "_5yno" }, + AdsPEEditorTrayTabButton83(197), + AdsPEInsightsTrayTabButton84(202), + AdsPENekoDebuggerTrayTabButton85(204) + ), + React.createElement( + "div", + { className: "_5ynn" }, + AdsPEEditorTrayTabContentContainer135(298), + null + ) + ); + } + }; + + var FluxContainer_AdsPEMultiTabDrawerContainer_137 = function (x) { + if (x === 300) { + return AdsPEMultiTabDrawer136(299); + } + }; + + var AdsPESimpleOrganizer138 = function (x) { + if (x === 309) { + return React.createElement( + "div", + { className: "_tm2" }, + XUIButton4(304), + XUIButton4(306), + XUIButton4(308) + ); + } + }; + + var AdsPEOrganizerContainer139 = function (x) { + if (x === 310) { + return React.createElement( + "div", + null, + AdsPESimpleOrganizer138(309) + ); + } + }; + + var FixedDataTableColumnResizeHandle140 = function (x) { + if (x === 313) { + return React.createElement( + "div", + { className: "_3487 _3488 _3489", style: { "width": 0, "height": 25, "left": 0 } }, + React.createElement("div", { className: "_348a", style: { "height": 25 } }) + ); + } + }; + + var AdsPETableHeader141 = function (x) { + if (x === 315) { + return React.createElement( + "div", + { className: "_1cig _1ksv _1vd7 _4h2r", id: undefined }, + ReactImage0(314), + React.createElement( + "span", + { className: "_1cid" }, + "Campaigns" + ) + ); + } + if (x === 320) { + return React.createElement( + "div", + { className: "_1cig _1vd7 _4h2r", id: undefined }, + null, + React.createElement( + "span", + { className: "_1cid" }, + "Performance" + ) + ); + } + if (x === 323) { + return React.createElement( + "div", + { className: "_1cig _1vd7 _4h2r", id: undefined }, + null, + React.createElement( + "span", + { className: "_1cid" }, + "Overview" + ) + ); + } + if (x === 326) { + return React.createElement( + "div", + { className: "_1cig _1vd7 _4h2r", id: undefined }, + null, + React.createElement( + "span", + { className: "_1cid" }, + "Toplines" + ) + ); + } + if (x === 329) { + return React.createElement("div", { className: "_1cig _1vd7 _4h2r", id: undefined }); + } + if (x === 340) { + return React.createElement( + "div", + { className: "_1cig _25fg", id: undefined }, + null, + React.createElement( + "span", + { className: "_1cid" }, + "Campaign Name" + ) + ); + } + if (x === 346) { + return React.createElement( + "div", + { className: "_1cig _25fg", id: undefined, "data-tooltip-content": "Changed", "data-hover": "tooltip" }, + ReactImage0(345), + null + ); + } + if (x === 352) { + return React.createElement( + "div", + { className: "_1cig _25fg", id: "ads_pe_table_error_header", "data-tooltip-content": "Errors", "data-hover": "tooltip" }, + ReactImage0(351), + null + ); + } + if (x === 357) { + return React.createElement( + "div", + { className: "_1cig _25fg", id: undefined }, + null, + React.createElement( + "span", + { className: "_1cid" }, + "Status" + ) + ); + } + if (x === 362) { + return React.createElement( + "div", + { className: "_1cig _25fg", id: undefined }, + null, + React.createElement( + "span", + { className: "_1cid" }, + "Delivery" + ) + ); + } + if (x === 369) { + return React.createElement( + "div", + { className: "_1cig _25fg", id: undefined }, + null, + React.createElement( + "span", + { className: "_1cid" }, + "Results" + ) + ); + } + if (x === 374) { + return React.createElement( + "div", + { className: "_1cig _25fg", id: undefined }, + null, + React.createElement( + "span", + { className: "_1cid" }, + "Cost" + ) + ); + } + if (x === 379) { + return React.createElement( + "div", + { className: "_1cig _25fg", id: undefined }, + null, + React.createElement( + "span", + { className: "_1cid" }, + "Reach" + ) + ); + } + if (x === 384) { + return React.createElement( + "div", + { className: "_1cig _25fg", id: undefined }, + null, + React.createElement( + "span", + { className: "_1cid" }, + "Impressions" + ) + ); + } + if (x === 389) { + return React.createElement( + "div", + { className: "_1cig _25fg", id: undefined }, + null, + React.createElement( + "span", + { className: "_1cid" }, + "Clicks" + ) + ); + } + if (x === 394) { + return React.createElement( + "div", + { className: "_1cig _25fg", id: undefined }, + null, + React.createElement( + "span", + { className: "_1cid" }, + "Avg. CPM" + ) + ); + } + if (x === 399) { + return React.createElement( + "div", + { className: "_1cig _25fg", id: undefined }, + null, + React.createElement( + "span", + { className: "_1cid" }, + "Avg. CPC" + ) + ); + } + if (x === 404) { + return React.createElement( + "div", + { className: "_1cig _25fg", id: undefined }, + null, + React.createElement( + "span", + { className: "_1cid" }, + "CTR %" + ) + ); + } + if (x === 409) { + return React.createElement( + "div", + { className: "_1cig _25fg", id: undefined }, + null, + React.createElement( + "span", + { className: "_1cid" }, + "Spent" + ) + ); + } + if (x === 414) { + return React.createElement( + "div", + { className: "_1cig _25fg", id: undefined }, + null, + React.createElement( + "span", + { className: "_1cid" }, + "Objective" + ) + ); + } + if (x === 419) { + return React.createElement( + "div", + { className: "_1cig _25fg", id: undefined }, + null, + React.createElement( + "span", + { className: "_1cid" }, + "Buying Type" + ) + ); + } + if (x === 424) { + return React.createElement( + "div", + { className: "_1cig _25fg", id: undefined }, + null, + React.createElement( + "span", + { className: "_1cid" }, + "Campaign ID" + ) + ); + } + if (x === 429) { + return React.createElement( + "div", + { className: "_1cig _25fg", id: undefined }, + null, + React.createElement( + "span", + { className: "_1cid" }, + "Start" + ) + ); + } + if (x === 434) { + return React.createElement( + "div", + { className: "_1cig _25fg", id: undefined }, + null, + React.createElement( + "span", + { className: "_1cid" }, + "End" + ) + ); + } + if (x === 439) { + return React.createElement( + "div", + { className: "_1cig _25fg", id: undefined }, + null, + React.createElement( + "span", + { className: "_1cid" }, + "Date created" + ) + ); + } + if (x === 444) { + return React.createElement( + "div", + { className: "_1cig _25fg", id: undefined }, + null, + React.createElement( + "span", + { className: "_1cid" }, + "Date last edited" + ) + ); + } + if (x === 449) { + return React.createElement( + "div", + { className: "_1cig _25fg _4h2r", id: undefined }, + null, + React.createElement( + "span", + { className: "_1cid" }, + "Tags" + ) + ); + } + if (x === 452) { + return React.createElement("div", { className: "_1cig _25fg _4h2r", id: undefined }); + } + }; + + var TransitionCell142 = function (x) { + if (x === 316) { + return React.createElement( + "div", + { label: "Campaigns", height: 40, width: 721, className: "_4lgc _4h2u", style: { "height": 40, "width": 721 } }, + React.createElement( + "div", + { className: "_4lgd _4h2w" }, + React.createElement( + "div", + { className: "_4lge _4h2x" }, + AdsPETableHeader141(315) + ) + ) + ); + } + if (x === 321) { + return React.createElement( + "div", + { label: "Performance", height: 40, width: 798, className: "_4lgc _4h2u", style: { "height": 40, "width": 798 } }, + React.createElement( + "div", + { className: "_4lgd _4h2w" }, + React.createElement( + "div", + { className: "_4lge _4h2x" }, + AdsPETableHeader141(320) + ) + ) + ); + } + if (x === 324) { + return React.createElement( + "div", + { label: "Overview", height: 40, width: 1022, className: "_4lgc _4h2u", style: { "height": 40, "width": 1022 } }, + React.createElement( + "div", + { className: "_4lgd _4h2w" }, + React.createElement( + "div", + { className: "_4lge _4h2x" }, + AdsPETableHeader141(323) + ) + ) + ); + } + if (x === 327) { + return React.createElement( + "div", + { label: "Toplines", height: 40, width: 0, className: "_4lgc _4h2u", style: { "height": 40, "width": 0 } }, + React.createElement( + "div", + { className: "_4lgd _4h2w" }, + React.createElement( + "div", + { className: "_4lge _4h2x" }, + AdsPETableHeader141(326) + ) + ) + ); + } + if (x === 330) { + return React.createElement( + "div", + { label: "", height: 40, width: 25, className: "_4lgc _4h2u", style: { "height": 40, "width": 25 } }, + React.createElement( + "div", + { className: "_4lgd _4h2w" }, + React.createElement( + "div", + { className: "_4lge _4h2x" }, + AdsPETableHeader141(329) + ) + ) + ); + } + if (x === 338) { + return React.createElement( + "div", + { label: undefined, width: 42, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 42 } }, + React.createElement( + "div", + { className: "_4lgd _4h2w" }, + React.createElement( + "div", + { className: "_4lge _4h2x" }, + XUICheckboxInput60(337) + ) + ) + ); + } + if (x === 343) { + return React.createElement( + "div", + { label: "Campaign Name", width: 400, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 400 } }, + React.createElement( + "div", + { className: "_4lgd _4h2w" }, + React.createElement( + "div", + { className: "_4lge _4h2x" }, + FixedDataTableSortableHeader149(342) + ) + ) + ); + } + if (x === 349) { + return React.createElement( + "div", + { label: undefined, width: 33, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 33 } }, + React.createElement( + "div", + { className: "_4lgd _4h2w" }, + React.createElement( + "div", + { className: "_4lge _4h2x" }, + FixedDataTableSortableHeader149(348) + ) + ) + ); + } + if (x === 355) { + return React.createElement( + "div", + { label: undefined, width: 36, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 36 } }, + React.createElement( + "div", + { className: "_4lgd _4h2w" }, + React.createElement( + "div", + { className: "_4lge _4h2x" }, + FixedDataTableSortableHeader149(354) + ) + ) + ); + } + if (x === 360) { + return React.createElement( + "div", + { label: "Status", width: 60, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 60 } }, + React.createElement( + "div", + { className: "_4lgd _4h2w" }, + React.createElement( + "div", + { className: "_4lge _4h2x" }, + FixedDataTableSortableHeader149(359) + ) + ) + ); + } + if (x === 365) { + return React.createElement( + "div", + { label: "Delivery", width: 150, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 150 } }, + React.createElement( + "div", + { className: "_4lgd _4h2w" }, + React.createElement( + "div", + { className: "_4lge _4h2x" }, + FixedDataTableSortableHeader149(364) + ) + ) + ); + } + if (x === 372) { + return React.createElement( + "div", + { label: "Results", width: 140, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 140 } }, + React.createElement( + "div", + { className: "_4lgd _4h2w" }, + React.createElement( + "div", + { className: "_4lge _4h2x" }, + FixedDataTableSortableHeader149(371) + ) + ) + ); + } + if (x === 377) { + return React.createElement( + "div", + { label: "Cost", width: 140, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 140 } }, + React.createElement( + "div", + { className: "_4lgd _4h2w" }, + React.createElement( + "div", + { className: "_4lge _4h2x" }, + FixedDataTableSortableHeader149(376) + ) + ) + ); + } + if (x === 382) { + return React.createElement( + "div", + { label: "Reach", width: 80, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 80 } }, + React.createElement( + "div", + { className: "_4lgd _4h2w" }, + React.createElement( + "div", + { className: "_4lge _4h2x" }, + FixedDataTableSortableHeader149(381) + ) + ) + ); + } + if (x === 387) { + return React.createElement( + "div", + { label: "Impressions", width: 80, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 80 } }, + React.createElement( + "div", + { className: "_4lgd _4h2w" }, + React.createElement( + "div", + { className: "_4lge _4h2x" }, + FixedDataTableSortableHeader149(386) + ) + ) + ); + } + if (x === 392) { + return React.createElement( + "div", + { label: "Clicks", width: 60, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 60 } }, + React.createElement( + "div", + { className: "_4lgd _4h2w" }, + React.createElement( + "div", + { className: "_4lge _4h2x" }, + FixedDataTableSortableHeader149(391) + ) + ) + ); + } + if (x === 397) { + return React.createElement( + "div", + { label: "Avg. CPM", width: 80, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 80 } }, + React.createElement( + "div", + { className: "_4lgd _4h2w" }, + React.createElement( + "div", + { className: "_4lge _4h2x" }, + FixedDataTableSortableHeader149(396) + ) + ) + ); + } + if (x === 402) { + return React.createElement( + "div", + { label: "Avg. CPC", width: 78, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 78 } }, + React.createElement( + "div", + { className: "_4lgd _4h2w" }, + React.createElement( + "div", + { className: "_4lge _4h2x" }, + FixedDataTableSortableHeader149(401) + ) + ) + ); + } + if (x === 407) { + return React.createElement( + "div", + { label: "CTR %", width: 70, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 70 } }, + React.createElement( + "div", + { className: "_4lgd _4h2w" }, + React.createElement( + "div", + { className: "_4lge _4h2x" }, + FixedDataTableSortableHeader149(406) + ) + ) + ); + } + if (x === 412) { + return React.createElement( + "div", + { label: "Spent", width: 70, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 70 } }, + React.createElement( + "div", + { className: "_4lgd _4h2w" }, + React.createElement( + "div", + { className: "_4lge _4h2x" }, + FixedDataTableSortableHeader149(411) + ) + ) + ); + } + if (x === 417) { + return React.createElement( + "div", + { label: "Objective", width: 200, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 200 } }, + React.createElement( + "div", + { className: "_4lgd _4h2w" }, + React.createElement( + "div", + { className: "_4lge _4h2x" }, + FixedDataTableSortableHeader149(416) + ) + ) + ); + } + if (x === 422) { + return React.createElement( + "div", + { label: "Buying Type", width: 100, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 100 } }, + React.createElement( + "div", + { className: "_4lgd _4h2w" }, + React.createElement( + "div", + { className: "_4lge _4h2x" }, + FixedDataTableSortableHeader149(421) + ) + ) + ); + } + if (x === 427) { + return React.createElement( + "div", + { label: "Campaign ID", width: 120, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 120 } }, + React.createElement( + "div", + { className: "_4lgd _4h2w" }, + React.createElement( + "div", + { className: "_4lge _4h2x" }, + FixedDataTableSortableHeader149(426) + ) + ) + ); + } + if (x === 432) { + return React.createElement( + "div", + { label: "Start", width: 113, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 113 } }, + React.createElement( + "div", + { className: "_4lgd _4h2w" }, + React.createElement( + "div", + { className: "_4lge _4h2x" }, + FixedDataTableSortableHeader149(431) + ) + ) + ); + } + if (x === 437) { + return React.createElement( + "div", + { label: "End", width: 113, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 113 } }, + React.createElement( + "div", + { className: "_4lgd _4h2w" }, + React.createElement( + "div", + { className: "_4lge _4h2x" }, + FixedDataTableSortableHeader149(436) + ) + ) + ); + } + if (x === 442) { + return React.createElement( + "div", + { label: "Date created", width: 113, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 113 } }, + React.createElement( + "div", + { className: "_4lgd _4h2w" }, + React.createElement( + "div", + { className: "_4lge _4h2x" }, + FixedDataTableSortableHeader149(441) + ) + ) + ); + } + if (x === 447) { + return React.createElement( + "div", + { label: "Date last edited", width: 113, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 113 } }, + React.createElement( + "div", + { className: "_4lgd _4h2w" }, + React.createElement( + "div", + { className: "_4lge _4h2x" }, + FixedDataTableSortableHeader149(446) + ) + ) + ); + } + if (x === 450) { + return React.createElement( + "div", + { label: "Tags", width: 150, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 150 } }, + React.createElement( + "div", + { className: "_4lgd _4h2w" }, + React.createElement( + "div", + { className: "_4lge _4h2x" }, + AdsPETableHeader141(449) + ) + ) + ); + } + if (x === 453) { + return React.createElement( + "div", + { label: "", width: 25, className: "_4lgc _4h2u", height: 25, style: { "height": 25, "width": 25 } }, + React.createElement( + "div", + { className: "_4lgd _4h2w" }, + React.createElement( + "div", + { className: "_4lge _4h2x" }, + AdsPETableHeader141(452) + ) + ) + ); + } + }; + + var FixedDataTableCell143 = function (x) { + if (x === 317) { + return React.createElement( + "div", + { className: "_4lg0 _4h2m", style: { "height": 40, "width": 721, "left": 0 } }, + undefined, + TransitionCell142(316) + ); + } + if (x === 322) { + return React.createElement( + "div", + { className: "_4lg0 _4h2m", style: { "height": 40, "width": 798, "left": 0 } }, + undefined, + TransitionCell142(321) + ); + } + if (x === 325) { + return React.createElement( + "div", + { className: "_4lg0 _4h2m", style: { "height": 40, "width": 1022, "left": 798 } }, + undefined, + TransitionCell142(324) + ); + } + if (x === 328) { + return React.createElement( + "div", + { className: "_4lg0 _4h2m", style: { "height": 40, "width": 0, "left": 1820 } }, + undefined, + TransitionCell142(327) + ); + } + if (x === 331) { + return React.createElement( + "div", + { className: "_4lg0 _4h2m", style: { "height": 40, "width": 25, "left": 1820 } }, + undefined, + TransitionCell142(330) + ); + } + if (x === 339) { + return React.createElement( + "div", + { className: "_4lg0 _4lg6 _4h2m", style: { "height": 25, "width": 42, "left": 0 } }, + undefined, + TransitionCell142(338) + ); + } + if (x === 344) { + return React.createElement( + "div", + { className: "_4lg0 _4h2m", style: { "height": 25, "width": 400, "left": 42 } }, + React.createElement( + "div", + { className: "_4lg9", style: { "height": 25 }, onMouseDown: function () {} }, + React.createElement("div", { className: "_4lga _4lgb", style: { "height": 25 } }) + ), + TransitionCell142(343) + ); + } + if (x === 350) { + return React.createElement( + "div", + { className: "_4lg0 _4h2m", style: { "height": 25, "width": 33, "left": 442 } }, + undefined, + TransitionCell142(349) + ); + } + if (x === 356) { + return React.createElement( + "div", + { className: "_4lg0 _4h2m", style: { "height": 25, "width": 36, "left": 475 } }, + undefined, + TransitionCell142(355) + ); + } + if (x === 361) { + return React.createElement( + "div", + { className: "_4lg0 _4h2m", style: { "height": 25, "width": 60, "left": 511 } }, + undefined, + TransitionCell142(360) + ); + } + if (x === 366) { + return React.createElement( + "div", + { className: "_4lg0 _4h2m", style: { "height": 25, "width": 150, "left": 571 } }, + React.createElement( + "div", + { className: "_4lg9", style: { "height": 25 }, onMouseDown: function () {} }, + React.createElement("div", { className: "_4lga _4lgb", style: { "height": 25 } }) + ), + TransitionCell142(365) + ); + } + if (x === 373) { + return React.createElement( + "div", + { className: "_4lg0 _4lg5 _4h2p _4h2m", style: { "height": 25, "width": 140, "left": 0 } }, + React.createElement( + "div", + { className: "_4lg9", style: { "height": 25 }, onMouseDown: function () {} }, + React.createElement("div", { className: "_4lga _4lgb", style: { "height": 25 } }) + ), + TransitionCell142(372) + ); + } + if (x === 378) { + return React.createElement( + "div", + { className: "_4lg0 _4lg5 _4h2p _4h2m", style: { "height": 25, "width": 140, "left": 140 } }, + React.createElement( + "div", + { className: "_4lg9", style: { "height": 25 }, onMouseDown: function () {} }, + React.createElement("div", { className: "_4lga _4lgb", style: { "height": 25 } }) + ), + TransitionCell142(377) + ); + } + if (x === 383) { + return React.createElement( + "div", + { className: "_4lg0 _4lg5 _4h2p _4h2m", style: { "height": 25, "width": 80, "left": 280 } }, + React.createElement( + "div", + { className: "_4lg9", style: { "height": 25 }, onMouseDown: function () {} }, + React.createElement("div", { className: "_4lga _4lgb", style: { "height": 25 } }) + ), + TransitionCell142(382) + ); + } + if (x === 388) { + return React.createElement( + "div", + { className: "_4lg0 _4lg5 _4h2p _4h2m", style: { "height": 25, "width": 80, "left": 360 } }, + React.createElement( + "div", + { className: "_4lg9", style: { "height": 25 }, onMouseDown: function () {} }, + React.createElement("div", { className: "_4lga _4lgb", style: { "height": 25 } }) + ), + TransitionCell142(387) + ); + } + if (x === 393) { + return React.createElement( + "div", + { className: "_4lg0 _4lg5 _4h2p _4h2m", style: { "height": 25, "width": 60, "left": 440 } }, + React.createElement( + "div", + { className: "_4lg9", style: { "height": 25 }, onMouseDown: function () {} }, + React.createElement("div", { className: "_4lga _4lgb", style: { "height": 25 } }) + ), + TransitionCell142(392) + ); + } + if (x === 398) { + return React.createElement( + "div", + { className: "_4lg0 _4lg5 _4h2p _4h2m", style: { "height": 25, "width": 80, "left": 500 } }, + React.createElement( + "div", + { className: "_4lg9", style: { "height": 25 }, onMouseDown: function () {} }, + React.createElement("div", { className: "_4lga _4lgb", style: { "height": 25 } }) + ), + TransitionCell142(397) + ); + } + if (x === 403) { + return React.createElement( + "div", + { className: "_4lg0 _4lg5 _4h2p _4h2m", style: { "height": 25, "width": 78, "left": 580 } }, + React.createElement( + "div", + { className: "_4lg9", style: { "height": 25 }, onMouseDown: function () {} }, + React.createElement("div", { className: "_4lga _4lgb", style: { "height": 25 } }) + ), + TransitionCell142(402) + ); + } + if (x === 408) { + return React.createElement( + "div", + { className: "_4lg0 _4lg5 _4h2p _4h2m", style: { "height": 25, "width": 70, "left": 658 } }, + React.createElement( + "div", + { className: "_4lg9", style: { "height": 25 }, onMouseDown: function () {} }, + React.createElement("div", { className: "_4lga _4lgb", style: { "height": 25 } }) + ), + TransitionCell142(407) + ); + } + if (x === 413) { + return React.createElement( + "div", + { className: "_4lg0 _4lg5 _4h2p _4h2m", style: { "height": 25, "width": 70, "left": 728 } }, + React.createElement( + "div", + { className: "_4lg9", style: { "height": 25 }, onMouseDown: function () {} }, + React.createElement("div", { className: "_4lga _4lgb", style: { "height": 25 } }) + ), + TransitionCell142(412) + ); + } + if (x === 418) { + return React.createElement( + "div", + { className: "_4lg0 _4h2m", style: { "height": 25, "width": 200, "left": 798 } }, + React.createElement( + "div", + { className: "_4lg9", style: { "height": 25 }, onMouseDown: function () {} }, + React.createElement("div", { className: "_4lga _4lgb", style: { "height": 25 } }) + ), + TransitionCell142(417) + ); + } + if (x === 423) { + return React.createElement( + "div", + { className: "_4lg0 _4h2m", style: { "height": 25, "width": 100, "left": 998 } }, + React.createElement( + "div", + { className: "_4lg9", style: { "height": 25 }, onMouseDown: function () {} }, + React.createElement("div", { className: "_4lga _4lgb", style: { "height": 25 } }) + ), + TransitionCell142(422) + ); + } + if (x === 428) { + return React.createElement( + "div", + { className: "_4lg0 _4h2m", style: { "height": 25, "width": 120, "left": 1098 } }, + React.createElement( + "div", + { className: "_4lg9", style: { "height": 25 }, onMouseDown: function () {} }, + React.createElement("div", { className: "_4lga _4lgb", style: { "height": 25 } }) + ), + TransitionCell142(427) + ); + } + if (x === 433) { + return React.createElement( + "div", + { className: "_4lg0 _4h2m", style: { "height": 25, "width": 113, "left": 1218 } }, + React.createElement( + "div", + { className: "_4lg9", style: { "height": 25 }, onMouseDown: function () {} }, + React.createElement("div", { className: "_4lga _4lgb", style: { "height": 25 } }) + ), + TransitionCell142(432) + ); + } + if (x === 438) { + return React.createElement( + "div", + { className: "_4lg0 _4h2m", style: { "height": 25, "width": 113, "left": 1331 } }, + React.createElement( + "div", + { className: "_4lg9", style: { "height": 25 }, onMouseDown: function () {} }, + React.createElement("div", { className: "_4lga _4lgb", style: { "height": 25 } }) + ), + TransitionCell142(437) + ); + } + if (x === 443) { + return React.createElement( + "div", + { className: "_4lg0 _4h2m", style: { "height": 25, "width": 113, "left": 1444 } }, + React.createElement( + "div", + { className: "_4lg9", style: { "height": 25 }, onMouseDown: function () {} }, + React.createElement("div", { className: "_4lga _4lgb", style: { "height": 25 } }) + ), + TransitionCell142(442) + ); + } + if (x === 448) { + return React.createElement( + "div", + { className: "_4lg0 _4h2m", style: { "height": 25, "width": 113, "left": 1557 } }, + React.createElement( + "div", + { className: "_4lg9", style: { "height": 25 }, onMouseDown: function () {} }, + React.createElement("div", { className: "_4lga _4lgb", style: { "height": 25 } }) + ), + TransitionCell142(447) + ); + } + if (x === 451) { + return React.createElement( + "div", + { className: "_4lg0 _4h2m", style: { "height": 25, "width": 150, "left": 1670 } }, + React.createElement( + "div", + { className: "_4lg9", style: { "height": 25 }, onMouseDown: function () {} }, + React.createElement("div", { className: "_4lga _4lgb", style: { "height": 25 } }) + ), + TransitionCell142(450) + ); + } + if (x === 454) { + return React.createElement( + "div", + { className: "_4lg0 _4h2m", style: { "height": 25, "width": 25, "left": 1820 } }, + undefined, + TransitionCell142(453) + ); + } + }; + + var FixedDataTableCellGroupImpl144 = function (x) { + if (x === 318) { + return React.createElement( + "div", + { className: "_3pzj", style: { "height": 40, "position": "absolute", "width": 721, "zIndex": 2, "transform": "translate3d(0px,0px,0)", "backfaceVisibility": "hidden" } }, + FixedDataTableCell143(317) + ); + } + if (x === 332) { + return React.createElement( + "div", + { className: "_3pzj", style: { "height": 40, "position": "absolute", "width": 1845, "zIndex": 0, "transform": "translate3d(0px,0px,0)", "backfaceVisibility": "hidden" } }, + FixedDataTableCell143(322), + FixedDataTableCell143(325), + FixedDataTableCell143(328), + FixedDataTableCell143(331) + ); + } + if (x === 367) { + return React.createElement( + "div", + { className: "_3pzj", style: { "height": 25, "position": "absolute", "width": 721, "zIndex": 2, "transform": "translate3d(0px,0px,0)", "backfaceVisibility": "hidden" } }, + FixedDataTableCell143(339), + FixedDataTableCell143(344), + FixedDataTableCell143(350), + FixedDataTableCell143(356), + FixedDataTableCell143(361), + FixedDataTableCell143(366) + ); + } + if (x === 455) { + return React.createElement( + "div", + { className: "_3pzj", style: { "height": 25, "position": "absolute", "width": 1845, "zIndex": 0, "transform": "translate3d(0px,0px,0)", "backfaceVisibility": "hidden" } }, + FixedDataTableCell143(373), + FixedDataTableCell143(378), + FixedDataTableCell143(383), + FixedDataTableCell143(388), + FixedDataTableCell143(393), + FixedDataTableCell143(398), + FixedDataTableCell143(403), + FixedDataTableCell143(408), + FixedDataTableCell143(413), + FixedDataTableCell143(418), + FixedDataTableCell143(423), + FixedDataTableCell143(428), + FixedDataTableCell143(433), + FixedDataTableCell143(438), + FixedDataTableCell143(443), + FixedDataTableCell143(448), + FixedDataTableCell143(451), + FixedDataTableCell143(454) + ); + } + }; + + var FixedDataTableCellGroup145 = function (x) { + if (x === 319) { + return React.createElement( + "div", + { style: { "height": 40, "left": 0 }, className: "_3pzk" }, + FixedDataTableCellGroupImpl144(318) + ); + } + if (x === 333) { + return React.createElement( + "div", + { style: { "height": 40, "left": 721 }, className: "_3pzk" }, + FixedDataTableCellGroupImpl144(332) + ); + } + if (x === 368) { + return React.createElement( + "div", + { style: { "height": 25, "left": 0 }, className: "_3pzk" }, + FixedDataTableCellGroupImpl144(367) + ); + } + if (x === 456) { + return React.createElement( + "div", + { style: { "height": 25, "left": 721 }, className: "_3pzk" }, + FixedDataTableCellGroupImpl144(455) + ); + } + }; + + var FixedDataTableRowImpl146 = function (x) { + if (x === 334) { + return React.createElement( + "div", + { className: "_1gd4 _4li _52no _3h1a _1mib", onClick: null, onDoubleClick: null, onMouseDown: null, onMouseEnter: null, onMouseLeave: null, style: { "width": 1209, "height": 40 } }, + React.createElement( + "div", + { className: "_1gd5" }, + FixedDataTableCellGroup145(319), + FixedDataTableCellGroup145(333), + React.createElement("div", { className: "_1gd6 _1gd8", style: { "left": 721, "height": 40 } }) + ) + ); + } + if (x === 457) { + return React.createElement( + "div", + { className: "_1gd4 _4li _3h1a _1mib", onClick: null, onDoubleClick: null, onMouseDown: null, onMouseEnter: null, onMouseLeave: null, style: { "width": 1209, "height": 25 } }, + React.createElement( + "div", + { className: "_1gd5" }, + FixedDataTableCellGroup145(368), + FixedDataTableCellGroup145(456), + React.createElement("div", { className: "_1gd6 _1gd8", style: { "left": 721, "height": 25 } }) + ) + ); + } + }; + + var FixedDataTableRow147 = function (x) { + if (x === 335) { + return React.createElement( + "div", + { style: { "width": 1209, "height": 40, "zIndex": 1, "transform": "translate3d(0px,0px,0)", "backfaceVisibility": "hidden" }, className: "_1gda" }, + FixedDataTableRowImpl146(334) + ); + } + if (x === 458) { + return React.createElement( + "div", + { style: { "width": 1209, "height": 25, "zIndex": 1, "transform": "translate3d(0px,40px,0)", "backfaceVisibility": "hidden" }, className: "_1gda" }, + FixedDataTableRowImpl146(457) + ); + } + }; + + var FixedDataTableAbstractSortableHeader148 = function (x) { + if (x === 341) { + return React.createElement( + "div", + { onClick: function () {}, className: "_54_8 _4h2r _2wzx" }, + React.createElement( + "div", + { className: "_2eq6" }, + null, + AdsPETableHeader141(340) + ) + ); + } + if (x === 347) { + return React.createElement( + "div", + { onClick: function () {}, className: "_54_8 _1kst _4h2r _2wzx" }, + React.createElement( + "div", + { className: "_2eq6" }, + null, + AdsPETableHeader141(346) + ) + ); + } + if (x === 353) { + return React.createElement( + "div", + { onClick: function () {}, className: "_54_8 _1kst _4h2r _2wzx" }, + React.createElement( + "div", + { className: "_2eq6" }, + null, + AdsPETableHeader141(352) + ) + ); + } + if (x === 358) { + return React.createElement( + "div", + { onClick: function () {}, className: "_54_8 _4h2r _2wzx" }, + React.createElement( + "div", + { className: "_2eq6" }, + null, + AdsPETableHeader141(357) + ) + ); + } + if (x === 363) { + return React.createElement( + "div", + { onClick: function () {}, className: "_54_8 _54_9 _4h2r _2wzx" }, + React.createElement( + "div", + { className: "_2eq6" }, + null, + AdsPETableHeader141(362) + ) + ); + } + if (x === 370) { + return React.createElement( + "div", + { onClick: function () {}, className: "_54_8 _4h2r _2wzx" }, + React.createElement( + "div", + { className: "_2eq6" }, + null, + AdsPETableHeader141(369) + ) + ); + } + if (x === 375) { + return React.createElement( + "div", + { onClick: function () {}, className: "_54_8 _4h2r _2wzx" }, + React.createElement( + "div", + { className: "_2eq6" }, + null, + AdsPETableHeader141(374) + ) + ); + } + if (x === 380) { + return React.createElement( + "div", + { onClick: function () {}, className: "_54_8 _4h2r _2wzx" }, + React.createElement( + "div", + { className: "_2eq6" }, + null, + AdsPETableHeader141(379) + ) + ); + } + if (x === 385) { + return React.createElement( + "div", + { onClick: function () {}, className: "_54_8 _4h2r _2wzx" }, + React.createElement( + "div", + { className: "_2eq6" }, + null, + AdsPETableHeader141(384) + ) + ); + } + if (x === 390) { + return React.createElement( + "div", + { onClick: function () {}, className: "_54_8 _4h2r _2wzx" }, + React.createElement( + "div", + { className: "_2eq6" }, + null, + AdsPETableHeader141(389) + ) + ); + } + if (x === 395) { + return React.createElement( + "div", + { onClick: function () {}, className: "_54_8 _4h2r _2wzx" }, + React.createElement( + "div", + { className: "_2eq6" }, + null, + AdsPETableHeader141(394) + ) + ); + } + if (x === 400) { + return React.createElement( + "div", + { onClick: function () {}, className: "_54_8 _4h2r _2wzx" }, + React.createElement( + "div", + { className: "_2eq6" }, + null, + AdsPETableHeader141(399) + ) + ); + } + if (x === 405) { + return React.createElement( + "div", + { onClick: function () {}, className: "_54_8 _4h2r _2wzx" }, + React.createElement( + "div", + { className: "_2eq6" }, + null, + AdsPETableHeader141(404) + ) + ); + } + if (x === 410) { + return React.createElement( + "div", + { onClick: function () {}, className: "_54_8 _4h2r _2wzx" }, + React.createElement( + "div", + { className: "_2eq6" }, + null, + AdsPETableHeader141(409) + ) + ); + } + if (x === 415) { + return React.createElement( + "div", + { onClick: function () {}, className: "_54_8 _4h2r _2wzx" }, + React.createElement( + "div", + { className: "_2eq6" }, + null, + AdsPETableHeader141(414) + ) + ); + } + if (x === 420) { + return React.createElement( + "div", + { onClick: function () {}, className: "_54_8 _4h2r _2wzx" }, + React.createElement( + "div", + { className: "_2eq6" }, + null, + AdsPETableHeader141(419) + ) + ); + } + if (x === 425) { + return React.createElement( + "div", + { onClick: function () {}, className: "_54_8 _4h2r _2wzx" }, + React.createElement( + "div", + { className: "_2eq6" }, + null, + AdsPETableHeader141(424) + ) + ); + } + if (x === 430) { + return React.createElement( + "div", + { onClick: function () {}, className: "_54_8 _4h2r _2wzx" }, + React.createElement( + "div", + { className: "_2eq6" }, + null, + AdsPETableHeader141(429) + ) + ); + } + if (x === 435) { + return React.createElement( + "div", + { onClick: function () {}, className: "_54_8 _4h2r _2wzx" }, + React.createElement( + "div", + { className: "_2eq6" }, + null, + AdsPETableHeader141(434) + ) + ); + } + if (x === 440) { + return React.createElement( + "div", + { onClick: function () {}, className: "_54_8 _4h2r _2wzx" }, + React.createElement( + "div", + { className: "_2eq6" }, + null, + AdsPETableHeader141(439) + ) + ); + } + if (x === 445) { + return React.createElement( + "div", + { onClick: function () {}, className: "_54_8 _4h2r _2wzx" }, + React.createElement( + "div", + { className: "_2eq6" }, + null, + AdsPETableHeader141(444) + ) + ); + } + }; + + var FixedDataTableSortableHeader149 = function (x) { + if (x === 342) { + return FixedDataTableAbstractSortableHeader148(341); + } + if (x === 348) { + return FixedDataTableAbstractSortableHeader148(347); + } + if (x === 354) { + return FixedDataTableAbstractSortableHeader148(353); + } + if (x === 359) { + return FixedDataTableAbstractSortableHeader148(358); + } + if (x === 364) { + return FixedDataTableAbstractSortableHeader148(363); + } + if (x === 371) { + return FixedDataTableAbstractSortableHeader148(370); + } + if (x === 376) { + return FixedDataTableAbstractSortableHeader148(375); + } + if (x === 381) { + return FixedDataTableAbstractSortableHeader148(380); + } + if (x === 386) { + return FixedDataTableAbstractSortableHeader148(385); + } + if (x === 391) { + return FixedDataTableAbstractSortableHeader148(390); + } + if (x === 396) { + return FixedDataTableAbstractSortableHeader148(395); + } + if (x === 401) { + return FixedDataTableAbstractSortableHeader148(400); + } + if (x === 406) { + return FixedDataTableAbstractSortableHeader148(405); + } + if (x === 411) { + return FixedDataTableAbstractSortableHeader148(410); + } + if (x === 416) { + return FixedDataTableAbstractSortableHeader148(415); + } + if (x === 421) { + return FixedDataTableAbstractSortableHeader148(420); + } + if (x === 426) { + return FixedDataTableAbstractSortableHeader148(425); + } + if (x === 431) { + return FixedDataTableAbstractSortableHeader148(430); + } + if (x === 436) { + return FixedDataTableAbstractSortableHeader148(435); + } + if (x === 441) { + return FixedDataTableAbstractSortableHeader148(440); + } + if (x === 446) { + return FixedDataTableAbstractSortableHeader148(445); + } + }; + + var FixedDataTableBufferedRows150 = function (x) { + if (x === 459) { + return React.createElement("div", { style: { "position": "absolute", "pointerEvents": "auto", "transform": "translate3d(0px,65px,0)", "backfaceVisibility": "hidden" } }); + } + }; + + var Scrollbar151 = function (x) { + if (x === 460) { + return null; + } + if (x === 461) { + return React.createElement( + "div", + { onFocus: function () {}, onBlur: function () {}, onKeyDown: function () {}, onMouseDown: function () {}, onWheel: function () {}, className: "_1t0r _1t0t _4jdr _1t0u", style: { "width": 1209, "zIndex": 99 }, tabIndex: 0 }, + React.createElement("div", { className: "_1t0w _1t0y _1t0_", style: { "width": 561.6340607950117, "transform": "translate3d(4px,0px,0)", "backfaceVisibility": "hidden" } }) + ); + } + }; + + var HorizontalScrollbar152 = function (x) { + if (x === 462) { + return React.createElement( + "div", + { className: "_3h1k _3h1m", style: { "height": 15, "width": 1209 } }, + React.createElement( + "div", + { style: { "height": 15, "position": "absolute", "overflow": "hidden", "width": 1209, "transform": "translate3d(0px,0px,0)", "backfaceVisibility": "hidden" } }, + Scrollbar151(461) + ) + ); + } + }; + + var FixedDataTable153 = function (x) { + if (x === 463) { + return React.createElement( + "div", + { className: "_3h1i _1mie", onWheel: function () {}, style: { "height": 25, "width": 1209 } }, + React.createElement( + "div", + { className: "_3h1j", style: { "height": 8, "width": 1209 } }, + FixedDataTableColumnResizeHandle140(313), + FixedDataTableRow147(335), + FixedDataTableRow147(458), + FixedDataTableBufferedRows150(459), + null, + undefined, + React.createElement("div", { className: "_3h1e _3h1h", style: { "top": 8 } }) + ), + Scrollbar151(460), + HorizontalScrollbar152(462) + ); + } + }; + + var TransitionTable154 = function (x) { + if (x === 464) { + return FixedDataTable153(463); + } + }; + + var AdsSelectableFixedDataTable155 = function (x) { + if (x === 465) { + return React.createElement( + "div", + { className: "_5hht" }, + TransitionTable154(464) + ); + } + }; + + var AdsDataTableKeyboardSupportDecorator156 = function (x) { + if (x === 466) { + return React.createElement( + "div", + { className: "_5d6f", tabIndex: "0", onKeyDown: function () {} }, + AdsSelectableFixedDataTable155(465) + ); + } + }; + + var AdsEditableDataTableDecorator157 = function (x) { + if (x === 467) { + return React.createElement( + "div", + { onCopy: function () {} }, + AdsDataTableKeyboardSupportDecorator156(466) + ); + } + }; + + var AdsPEDataTableContainer158 = function (x) { + if (x === 468) { + return React.createElement( + "div", + { className: "_35l_ _1hr clearfix" }, + null, + null, + null, + AdsEditableDataTableDecorator157(467) + ); + } + }; + + var AdsPECampaignGroupTableContainer159 = function (x) { + if (x === 470) { + return ResponsiveBlock37(469); + } + }; + + var AdsPEManageAdsPaneContainer160 = function (x) { + if (x === 473) { + return React.createElement( + "div", + null, + AdsErrorBoundary10(65), + React.createElement( + "div", + { className: "_2uty" }, + AdsErrorBoundary10(125) + ), + React.createElement( + "div", + { className: "_2utx _21oc" }, + AdsErrorBoundary10(171), + React.createElement( + "div", + { className: "_41tu" }, + AdsErrorBoundary10(176), + AdsErrorBoundary10(194) + ) + ), + React.createElement( + "div", + { className: "_2utz", style: { "height": 25 } }, + AdsErrorBoundary10(302), + React.createElement( + "div", + { className: "_2ut-" }, + AdsErrorBoundary10(312) + ), + React.createElement( + "div", + { className: "_2ut_" }, + AdsErrorBoundary10(472) + ) + ) + ); + } + }; + + var AdsPEContentContainer161 = function (x) { + if (x === 474) { + return AdsPEManageAdsPaneContainer160(473); + } + }; + + var FluxContainer_AdsPEWorkspaceContainer_162 = function (x) { + if (x === 477) { + return React.createElement( + "div", + { className: "_49wu", style: { "height": 177, "top": 43, "width": 1306 } }, + ResponsiveBlock37(62, '0'), + AdsErrorBoundary10(476, '1'), + null + ); + } + }; + + var FluxContainer_AdsSessionExpiredDialogContainer_163 = function (x) { + if (x === 478) { + return null; + } + }; + + var FluxContainer_AdsPEUploadDialogLazyContainer_164 = function (x) { + if (x === 479) { + return null; + } + }; + + var FluxContainer_DialogContainer_165 = function (x) { + if (x === 480) { + return null; + } + }; + + var AdsBugReportContainer166 = function (x) { + if (x === 481) { + return React.createElement("span", null); + } + }; + + var AdsPEAudienceSplittingDialog167 = function (x) { + if (x === 482) { + return null; + } + }; + + var AdsPEAudienceSplittingDialogContainer168 = function (x) { + if (x === 483) { + return React.createElement( + "div", + null, + AdsPEAudienceSplittingDialog167(482) + ); + } + }; + + var FluxContainer_AdsRuleDialogBootloadContainer_169 = function (x) { + if (x === 484) { + return null; + } + }; + + var FluxContainer_AdsPECFTrayContainer_170 = function (x) { + if (x === 485) { + return null; + } + }; + + var FluxContainer_AdsPEDeleteDraftContainer_171 = function (x) { + if (x === 486) { + return null; + } + }; + + var FluxContainer_AdsPEInitialDraftPublishDialogContainer_172 = function (x) { + if (x === 487) { + return null; + } + }; + + var FluxContainer_AdsPEReachFrequencyStatusTransitionDialogBootloadContainer_173 = function (x) { + if (x === 488) { + return null; + } + }; + + var FluxContainer_AdsPEPurgeArchiveDialogContainer_174 = function (x) { + if (x === 489) { + return null; + } + }; + + var AdsPECreateDialogContainer175 = function (x) { + if (x === 490) { + return React.createElement("span", null); + } + }; + + var FluxContainer_AdsPEModalStatusContainer_176 = function (x) { + if (x === 491) { + return null; + } + }; + + var FluxContainer_AdsBrowserExtensionErrorDialogContainer_177 = function (x) { + if (x === 492) { + return null; + } + }; + + var FluxContainer_AdsPESortByErrorTipContainer_178 = function (x) { + if (x === 493) { + return null; + } + }; + + var LeadDownloadDialogSelector179 = function (x) { + if (x === 494) { + return null; + } + }; + + var FluxContainer_AdsPELeadDownloadDialogContainerClass_180 = function (x) { + if (x === 495) { + return LeadDownloadDialogSelector179(494); + } + }; + + var AdsPEContainer181 = function (x) { + if (x === 496) { + return React.createElement( + "div", + { id: "ads_pe_container" }, + FluxContainer_AdsPETopNavContainer_26(41), + null, + FluxContainer_AdsPEWorkspaceContainer_162(477), + FluxContainer_AdsSessionExpiredDialogContainer_163(478), + FluxContainer_AdsPEUploadDialogLazyContainer_164(479), + FluxContainer_DialogContainer_165(480), + AdsBugReportContainer166(481), + AdsPEAudienceSplittingDialogContainer168(483), + FluxContainer_AdsRuleDialogBootloadContainer_169(484), + FluxContainer_AdsPECFTrayContainer_170(485), + React.createElement( + "span", + null, + FluxContainer_AdsPEDeleteDraftContainer_171(486), + FluxContainer_AdsPEInitialDraftPublishDialogContainer_172(487), + FluxContainer_AdsPEReachFrequencyStatusTransitionDialogBootloadContainer_173(488) + ), + FluxContainer_AdsPEPurgeArchiveDialogContainer_174(489), + AdsPECreateDialogContainer175(490), + FluxContainer_AdsPEModalStatusContainer_176(491), + FluxContainer_AdsBrowserExtensionErrorDialogContainer_177(492), + FluxContainer_AdsPESortByErrorTipContainer_178(493), + FluxContainer_AdsPELeadDownloadDialogContainerClass_180(495), + React.createElement("div", { id: "web_ads_guidance_tips" }) + ); + } + }; + + var Benchmark = function (x) { + if (x === undefined) { + return AdsPEContainer181(496); + } + }; + + var app = document.getElementById('app'); + + window.render = function render() { + ReactDOM.render(Benchmark(), app); + } +})(); diff --git a/scripts/bench/benchmarks/pe-no-components/build.js b/scripts/bench/benchmarks/pe-no-components/build.js new file mode 100644 index 000000000000..1a8e253bef83 --- /dev/null +++ b/scripts/bench/benchmarks/pe-no-components/build.js @@ -0,0 +1,19 @@ +'use strict'; + +const { + join, +} = require('path'); + +async function build(reactPath, asyncCopyTo) { + // copy the UMD bundles + await asyncCopyTo( + join(reactPath, 'build', 'dist', 'react.production.min.js'), + join(__dirname, 'react.production.min.js') + ); + await asyncCopyTo( + join(reactPath, 'build', 'dist', 'react-dom.production.min.js'), + join(__dirname, 'react-dom.production.min.js') + ); +} + +module.exports = build; diff --git a/scripts/bench/benchmarks/pe-no-components/index.html b/scripts/bench/benchmarks/pe-no-components/index.html new file mode 100644 index 000000000000..ff55b65c9989 --- /dev/null +++ b/scripts/bench/benchmarks/pe-no-components/index.html @@ -0,0 +1,32 @@ + + +
+ + + + + + + + + + \ No newline at end of file diff --git a/scripts/bench/build.js b/scripts/bench/build.js new file mode 100644 index 000000000000..81ec0255913e --- /dev/null +++ b/scripts/bench/build.js @@ -0,0 +1,128 @@ +'use strict'; + +const Git = require('nodegit'); +const rimraf = require('rimraf'); +const ncp = require('ncp').ncp; +const { + existsSync, +} = require('fs'); +const exec = require('child_process').exec; +const { + join, +} = require('path'); + +const reactUrl = 'https://github.com/facebook/react.git'; + +function cleanDir() { + return new Promise(_resolve => rimraf('remote-repo', _resolve)); +} + +function executeCommand(command) { + return new Promise(_resolve => exec(command, (error) => { + if (!error) { + _resolve(); + } else { + console.error(error); + process.exit(1); + } + })); +} + +function asyncCopyTo(from, to) { + return new Promise(_resolve => { + ncp(from, to, error => { + if (error) { + console.error(error); + process.exit(1); + } + _resolve(); + }); + }); +} + +function getDefaultReactPath() { + return join(__dirname, 'remote-repo'); +} + +async function buldAllBundles(reactPath = getDefaultReactPath()) { + // build the react FB bundles in the build + await executeCommand(`cd ${reactPath} && yarn && yarn build`); +} + +async function buildBenchmark(reactPath = getDefaultReactPath(), benchmark) { + // get the build.js from the benchmark directory and execute it + await require( + join(__dirname, 'benchmarks', benchmark, 'build.js') + )(reactPath, asyncCopyTo); +} + +function getBundleResults(reactPath = getDefaultReactPath()) { + return require(join(reactPath, 'scripts', 'rollup', 'results.json')); +} + +async function getMergeBaseFromLocalGitRepo(localRepo) { + const repo = await Git.Repository.open(localRepo); + return await Git.Merge.base( + repo, + await repo.getHeadCommit(), + await repo.getBranchCommit('master') + ); +} + +async function buildBenchmarkBundlesFromGitRepo(commitId, skipBuild, url = reactUrl, clean) { + let repo; + const remoteRepoDir = getDefaultReactPath(); + + if (!skipBuild) { + if (clean) { + //clear remote-repo folder + await cleanDir(remoteRepoDir); + } + // check if remote-repo diretory already exists + if (existsSync(join(__dirname, 'remote-repo'))) { + repo = await Git.Repository.open(remoteRepoDir); + // fetch all the latest remote changes + await repo.fetchAll(); + } else { + // if not, clone the repo to remote-repo folder + repo = await Git.Clone(url, remoteRepoDir); + } + let commit = await repo.getBranchCommit('master'); + // reset hard to this remote head + await Git.Reset.reset(repo, commit, Git.Reset.TYPE.HARD); + // then we checkout the latest master head + await repo.checkoutBranch('master'); + // make sure we pull in the latest changes + await repo.mergeBranches('master', 'origin/master'); + // then we check if we need to move the HEAD to the merge base + if (commitId && commitId !== 'master') { + // as the commitId probably came from our local repo + // we use it to lookup the right commit in our remote repo + commit = await Git.Commit.lookup(repo, commitId); + // then we checkout the merge base + await Git.Checkout.tree(repo, commit); + } + await buildAllBundles(); + } + return getBundleResults(); +} + +async function buildAllBundles(reactPath, skipBuild) { + if (!skipBuild) { + // build all bundles so we can get all stats and use bundles for benchmarks + await buldAllBundles(reactPath); + } + return getBundleResults(reactPath); +} + +// if run directly via CLI +if (require.main === module) { + buildBenchmarkBundlesFromGitRepo(); +} + +module.exports = { + buildAllBundles, + buildBenchmark, + buildBenchmarkBundlesFromGitRepo, + getMergeBaseFromLocalGitRepo, +}; diff --git a/scripts/bench/extract-component.js b/scripts/bench/extract-component.js deleted file mode 100644 index 9cfab989cccb..000000000000 --- a/scripts/bench/extract-component.js +++ /dev/null @@ -1,207 +0,0 @@ -/*global copy */ -/*eslint-disable no-debugger */ - -// Copy and paste this file into your (Chrome) browser console after changing -// the React root ID. Works on facebook.com as of 7/6/16 (use a test user). -// Then run this to convert the JSX: -// -// ../../node_modules/.bin/babel \ -// --presets ../../node_modules/babel-preset-react \ -// --no-babelrc --compact=false \ -// bench-foo.js -o bench-foo-es5.js - -'use strict'; - -var rootID = 5; -var outputStatelessFunctional = false; - -var React = require('React'); -var ReactMount = require('ReactMount'); -copy(print(ReactMount._instancesByReactRootID[rootID]._renderedComponent)); - -function elementMeta(element) { - var meta = ''; - var key = element.key; - if (key) { - meta += ' key={' + JSON.stringify(key) + '}'; - } - var ref = element.ref; - if (typeof ref === 'string') { - meta += ' ref={' + JSON.stringify(ref) + '}'; - } else if (typeof ref === 'function') { - meta += ' ref={function() {}}'; - } - return meta; -} - -function print(outerComponent) { - var typeCounter = 0; - var elementCounter = 0; - var composites = new Map(); - - function addComposite(type, child) { - var info = composites.get(type); - if (!info) { - var name = (type.displayName || type.name || 'Component').replace(/(?:^[^a-z]|\W)+/gi, '_') + typeCounter++; - if (!/^[A-Z]/.test(name)) { - name = '_' + name; - } - info = {name: name, values: new Map()}; - composites.set(type, info); - } - var c = elementCounter++; - info.values.set(c, child); - return '<' + info.name + ' x={' + c + '} />'; - } - - function printComposite(info) { - if (outputStatelessFunctional) { - output += 'var ' + info.name + ' = function(props) {\n'; - } else { - output += 'var ' + info.name + ' = React.createClass({\n'; - output += ' render: function() {\n'; - output += ' var props = this.props;\n'; - } - for (var [c, child] of info.values) { - output += ' if (props.x === ' + c + ') {\n'; - if (child.indexOf('\n') !== -1) { - output += ' return (\n'; - output += child.replace(/^|\n/g, '$& ') + '\n'; - output += ' );\n'; - } else { - output += ' return ' + child + ';\n'; - } - output += ' }\n'; - } - if (outputStatelessFunctional) { - output += '};\n'; - } else { - output += ' },\n'; - output += '});\n'; - } - output += '\n'; - } - - function printImpl(component) { - var element = component._currentElement; - - // Empty component - if (element === null || element === false) { - return '' + element; - } - - // Text component - if (typeof element === 'string' || typeof element === 'number') { - return JSON.stringify(element); - } - - // Composite component - if (typeof element.type === 'function') { - var rendered = printImpl(component._renderedComponent); - return addComposite(component._currentElement.type, rendered) - .replace(/(?= \/>$)/, elementMeta(component._currentElement)); - } - - // Native component - if (typeof element.type === 'string') { - var markup = '<' + element.type; - markup += elementMeta(component._currentElement); - for (var propKey in element.props) { - var value = element.props[propKey]; - var valueString = null; - if (propKey === 'style' || propKey === 'dangerouslySetInnerHTML') { - valueString = JSON.stringify(value); - } else if (propKey === 'children') { - } else { - if (typeof value === 'function') { - valueString = 'function() {}'; - } else if (typeof value === 'string' || typeof value === 'number') { - valueString = JSON.stringify(value); - } else if (value == null || typeof value === 'boolean') { - valueString = '' + value; - } else if (typeof value === 'object') { - valueString = '{}'; - console.log('smooshing', element.type, propKey, value); - } else { - debugger; - throw new Error('huh? ' + typeof value + ' ' + value); - } - } - if (valueString) { - markup += ' ' + propKey + '={' + valueString + '}'; - } - } - markup += '>'; - - if ( - typeof element.props.children === 'string' || - typeof element.props.children === 'number' - ) { - markup += '{' + JSON.stringify(element.props.children) + '}'; - } else if (component._renderedChildren) { - var renderedChildren = component._renderedChildren; - var keys = Object.keys(renderedChildren); - var values = keys.map((childKey) => renderedChildren[childKey]); - - if (keys.length) { - var dump = function(children) { - if (typeof children === 'boolean' || children == null) { - return '' + children; - } - if (typeof children === 'object' && !Array.isArray(children) && children[Symbol.iterator]) { - // TODO: Not quite right. - children = Array.from(children); - } - if (Array.isArray(children)) { - return children.length ? ( - '[\n' + - children.map(function(ch) { - return ' ' + dump(ch).replace(/\n/g, '$& ') + ',\n'; - }).join('') + - ']' - ) : '[]'; - } else if (React.isValidElement(children) || typeof children === 'string' || typeof children === 'number') { - return printImpl(values.shift()); - } else { - debugger; - throw new Error('hmm'); - } - }; - - markup += '\n'; - var children = element.props.children; - children = Array.isArray(children) ? children : [children]; - children.forEach(function(child) { - var dumped = dump(child).replace(/\n/g, '$& '); - if (dumped.charAt(0) === '<') { - markup += ' ' + dumped + '\n'; - } else { - markup += ' {' + dumped + '}\n'; - } - }); - if (values.length !== 0) { - debugger; - throw new Error('not all children processed'); - } - } - } - - markup += ''; - return markup; - } - - debugger; - throw new Error('hmm'); - } - - var output = '(function() {\n\n'; - - var tail = printImpl(outerComponent); - for (var info of composites.values()) { - printComposite(info); - } - printComposite({name: 'Benchmark', values: new Map([[undefined, tail]])}); - output += 'this.Benchmark = Benchmark;\n'; - output += '\n})(this);\n'; - return output; -} diff --git a/scripts/bench/measure.py b/scripts/bench/measure.py deleted file mode 100755 index 613cb98e4e11..000000000000 --- a/scripts/bench/measure.py +++ /dev/null @@ -1,175 +0,0 @@ -#!/usr/bin/env python -# 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. - -import functools -import json -import os -import random -import subprocess -import sys - - -def _run_js_in_jsc(jit, js, env): - return subprocess.check_output( - ['jsc', '-e', """ - function now() { - return preciseTime() * 1000; - } - function globalEval(code) { - (0, eval)(code); - } - function report(label, time) { - print(label + '_' + %(engine)s, time); - } - - this.ENV = %(env)s; - %(js)s - """ % { - 'env': json.dumps(env), - 'js': js, - 'engine': json.dumps('jsc_' + ('jit' if jit else 'nojit')), - }], - env=dict(os.environ, JSC_useJIT='yes' if jit else 'no'), - ) - -_run_js_in_jsc_jit = functools.partial(_run_js_in_jsc, True) -_run_js_in_jsc_nojit = functools.partial(_run_js_in_jsc, False) - - -def _run_js_in_node(js, env): - return subprocess.check_output( - ['node', '-e', """ - function now() { - var hrTime = process.hrtime(); - return hrTime[0] * 1e3 + hrTime[1] * 1e-6; - } - function globalEval(code) { - var vm = require('vm'); - // Hide "module" so UMD wrappers use the global - vm.runInThisContext('(function(module){' + code + '\\n})()'); - } - function readFile(filename) { - var fs = require('fs'); - return fs.readFileSync(filename); - } - function report(label, time) { - console.log(label + '_node', time); - } - - global.ENV = %(env)s; - %(js)s - """ % { - 'env': json.dumps(env), - 'js': js - }] - ) - - -def _measure_ssr_ms(engine, react_path, bench_name, bench_path, measure_warm): - return engine( - """ - var reactCode = readFile(ENV.react_path + '/react.min.js'); - var reactDOMServerCode = readFile(ENV.react_path + '/react-dom-server.min.js'); - var START = now(); - globalEval(reactCode); - globalEval(reactDOMServerCode); - var END = now(); - if (typeof React !== 'object') throw new Error('React not loaded'); - if (typeof ReactDOMServer !== 'object') throw new Error('ReactDOMServer not loaded'); - report('factory_ms', END - START); - - globalEval(readFile(ENV.bench_path)); - if (typeof Benchmark !== 'function') { - throw new Error('benchmark not loaded'); - } - var START = now(); - var html = ReactDOMServer.renderToString(React.createElement(Benchmark)); - html.charCodeAt(0); // flatten ropes - var END = now(); - report('ssr_' + ENV.bench_name + '_cold_ms', END - START); - - var warmup = ENV.measure_warm ? 80 : 0; - var trials = ENV.measure_warm ? 40 : 0; - - for (var i = 0; i < warmup; i++) { - ReactDOMServer.renderToString(React.createElement(Benchmark)); - } - - for (var i = 0; i < trials; i++) { - var START = now(); - var html = ReactDOMServer.renderToString(React.createElement(Benchmark)); - html.charCodeAt(0); // flatten ropes - var END = now(); - report('ssr_' + ENV.bench_name + '_warm_ms', END - START); - } - """, - { - 'bench_name': bench_name, - 'bench_path': bench_path, - 'measure_warm': measure_warm, - 'react_path': react_path, - }, - ) - - -def _main(): - if len(sys.argv) < 2 or len(sys.argv) % 2 == 0: - sys.stderr.write("usage: measure.py build-folder-a a.txt build-folder-b b.txt\n") - return 1 - # [(react_path, out_path)] - react_paths = sys.argv[1::2] - files = [open(out_path, 'w') for out_path in sys.argv[2::2]] - - trials = 30 - sys.stderr.write("Measuring SSR for PE benchmark (%d trials)\n" % trials) - sys.stderr.write("_" * trials + "\n") - for i in range(trials): - for engine in [ - _run_js_in_jsc_jit, - _run_js_in_jsc_nojit, - _run_js_in_node - ]: - engines = range(len(react_paths)) - random.shuffle(engines) - for i in engines: - out = _measure_ssr_ms(engine, react_paths[i], 'pe', 'bench-pe-es5.js', False) - files[i].write(out) - sys.stderr.write(".") - sys.stderr.flush() - sys.stderr.write("\n") - sys.stderr.flush() - - # You can set this to a number of trials you want to do with warm JIT. - # They are disabled by default because they are slower. - trials = 0 - - sys.stderr.write("Measuring SSR for PE with warm JIT (%d slow trials)\n" % trials) - sys.stderr.write("_" * trials + "\n") - for i in range(trials): - for engine in [ - _run_js_in_jsc_jit, - _run_js_in_jsc_nojit, - _run_js_in_node - ]: - engines = range(len(react_paths)) - random.shuffle(engines) - for i in engines: - out = _measure_ssr_ms(engine, react_paths[i], 'pe', 'bench-pe-es5.js', True) - files[i].write(out) - sys.stderr.write(".") - sys.stderr.flush() - sys.stderr.write("\n") - sys.stderr.flush() - - for f in files: - f.close() - - -if __name__ == '__main__': - sys.exit(_main()) - diff --git a/scripts/bench/runner.js b/scripts/bench/runner.js new file mode 100644 index 000000000000..02e3b685bcc7 --- /dev/null +++ b/scripts/bench/runner.js @@ -0,0 +1,140 @@ +'use strict'; + +const { + readdirSync, + statSync, +} = require('fs'); +const { join } = require('path'); +const runBenchmark = require('./benchmark'); +const { + buildAllBundles, + buildBenchmark, + buildBenchmarkBundlesFromGitRepo, + getMergeBaseFromLocalGitRepo, +} = require('./build'); +const argv = require('minimist')(process.argv.slice(2)); +const chalk = require('chalk'); +const printResults = require('./stats'); +const serveBenchmark = require('./server'); + +function getBenchmarkNames() { + return readdirSync(join(__dirname, 'benchmarks')).filter( + file => statSync(join(__dirname, 'benchmarks', file)).isDirectory() + ); +} + +function wait(val) { + return new Promise(resolve => setTimeout(resolve, val)); +} + +const runRemote = argv.remote; +const runLocal = argv.local; +const benchmarkFilter = argv.benchmark; +const headless = argv.headless; +const skipBuild = argv['skip-build']; + +async function runBenchmarks(reactPath) { + const benchmarkNames = getBenchmarkNames(); + const results = {}; + const server = serveBenchmark(); + await wait(1000); + + for (let i = 0; i < benchmarkNames.length; i++) { + const benchmarkName = benchmarkNames[i]; + + if ( + !benchmarkFilter + || + (benchmarkFilter && benchmarkName.indexOf(benchmarkFilter) !== -1) + ) { + console.log(chalk.gray(`- Building benchmark "${chalk.white(benchmarkName)}"...`)); + await buildBenchmark(reactPath, benchmarkName); + console.log(chalk.gray(`- Running benchmark "${chalk.white(benchmarkName)}"...`)); + results[benchmarkName] = await runBenchmark(benchmarkName, headless); + } + } + + server.close(); + // http-server.close() is async but they don't provide a callback.. + await wait(500); + return results; +} + +// get the performance benchmark results +// from remote master (default React repo) +async function benchmarkRemoteMaster() { + console.log(chalk.gray(`- Building React bundles...`)); + let commit = argv.remote; + + if (!commit || typeof commit !== 'string') { + commit = await getMergeBaseFromLocalGitRepo(join(__dirname, '..', '..')); + console.log(chalk.gray(`- Merge base commit ${chalk.white(commit.tostrS())}`)); + } + return { + // we build the bundles from the React repo + bundles: await buildBenchmarkBundlesFromGitRepo( + commit, + skipBuild + ), + // we use these bundles to run the benchmarks + benchmarks: await runBenchmarks(), + }; +} + +// get the performance benchmark results +// of the local react repo +async function benchmarkLocal(reactPath) { + console.log(chalk.gray(`- Building React bundles...`)); + return { + // we build the bundles from the React repo + bundles: await buildAllBundles(reactPath, skipBuild), + // we use these bundles to run the benchmarks + benchmarks: await runBenchmarks(reactPath), + }; +} + +async function runLocalBenchmarks(showResults) { + console.log( + chalk.white.bold('Running benchmarks for ') + + chalk.green.bold('Local (Current Branch)') + ); + const localResults = await benchmarkLocal(join(__dirname, '..', '..')); + + if (showResults) { + printResults(localResults, null); + } + return localResults; +} + +async function runRemoteBenchmarks(showResults) { + console.log( + chalk.white.bold('Running benchmarks for ') + + chalk.yellow.bold('Remote (Merge Base)') + ); + const remoteMasterResults = await benchmarkRemoteMaster(); + + if (showResults) { + printResults(null, remoteMasterResults); + } + return remoteMasterResults; +} + +async function compareLocalToMaster() { + console.log( + chalk.white.bold('Comparing ') + + chalk.green.bold('Local (Current Branch)') + + chalk.white.bold(' to ') + + chalk.yellow.bold('Remote (Merge Base)') + ); + const localResults = await runLocalBenchmarks(false); + const remoteMasterResults = await runRemoteBenchmarks(false); + printResults(localResults, remoteMasterResults); +} + +if ((runLocal && runRemote) || (!runLocal && !runRemote)) { + compareLocalToMaster().then(() => process.exit(0)); +} else if (runLocal) { + runLocalBenchmarks(true).then(() => process.exit(0)); +} else if (runRemote) { + runRemoteBenchmarks(true).then(() => process.exit(0)); +} diff --git a/scripts/bench/server.js b/scripts/bench/server.js new file mode 100644 index 000000000000..8ea59713d321 --- /dev/null +++ b/scripts/bench/server.js @@ -0,0 +1,77 @@ +'use strict'; + +const http2Server = require('http2'); +const httpServer = require('http-server'); +const { + existsSync, + statSync, + createReadStream, +} = require('fs'); +const { join } = require('path'); +const argv = require('minimist')(process.argv.slice(2)); +const mime = require('mime'); + +function sendFile(filename, response) { + response.setHeader('Content-Type', mime.lookup(filename)); + response.writeHead(200); + const fileStream = createReadStream(filename); + fileStream.pipe(response); + fileStream.on('finish', response.end); +} + +function createHTTP2Server(benchmark) { + const server = http2Server.createServer({}, (request, response) => { + const filename = join(__dirname, 'benchmarks', benchmark, request.url).replace(/\?.*/g, ''); + + if (existsSync(filename) && statSync(filename).isFile()) { + sendFile(filename, response); + } else { + const indexHtmlPath = join(filename, 'index.html'); + + if (existsSync(indexHtmlPath)) { + sendFile(indexHtmlPath, response); + } else { + response.writeHead(404); + response.end(); + } + } + }); + server.listen(8080); + return server; +} + +function createHTTPServer() { + const server = httpServer.createServer({ + root: join(__dirname, 'benchmarks'), + robots: true, + cache: 'no-store', + headers: { + 'Access-Control-Allow-Origin': '*', + 'Access-Control-Allow-Credentials': 'true', + }, + }); + server.listen(8080); + return server; +} + +function serveBenchmark(benchmark, http2) { + if (http2) { + return createHTTP2Server(benchmark); + } else { + return createHTTPServer(); + } +} + +// if run directly via CLI +if (require.main === module) { + const benchmarkInput = argv._[0]; + + if (benchmarkInput) { + serveBenchmark(benchmarkInput); + } else { + console.error('Please specifiy a benchmark directory to serve!'); + process.exit(1); + } +} + +module.exports = serveBenchmark; diff --git a/scripts/bench/stats.js b/scripts/bench/stats.js new file mode 100644 index 000000000000..7e58b719b86d --- /dev/null +++ b/scripts/bench/stats.js @@ -0,0 +1,163 @@ +'use strict'; + +const chalk = require('chalk'); +const Table = require('cli-table'); + +function percentChange(prev, current, prevSem, currentSem) { + const [mean, sd] = calculateMeanAndSdOfRatioFromDeltaMethod( + prev, + current, + prevSem, + currentSem + ); + const pctChange = +(mean * 100).toFixed(1); + const ci95 = +(100 * 1.96 * sd).toFixed(1); + + const ciInfo = ci95 > 0 ? ` +- ${ci95} %` : ''; + const text = `${pctChange > 0 ? '+' : ''}${pctChange} %${ciInfo}`; + if (pctChange + ci95 < 0) { + return chalk.green(text); + } else if (pctChange - ci95 > 0) { + return chalk.red(text); + } else { + // Statistically insignificant. + return text; + } +} + +function calculateMeanAndSdOfRatioFromDeltaMethod( + meanControl, + meanTest, + semControl, + semTest +) { + const mean = ( + ((meanTest - meanControl) / meanControl) - + (Math.pow(semControl, 2) * meanTest / Math.pow(meanControl, 3)) + ); + const variance = ( + Math.pow(semTest / meanControl, 2) + + (Math.pow(semControl * meanTest, 2) / Math.pow(meanControl, 4)) + ); + return [mean, Math.sqrt(variance)]; +} + +function addBenchmarkResults(table, localResults, remoteMasterResults) { + const benchmarks = Object.keys( + (localResults && localResults.benchmarks) || (remoteMasterResults && remoteMasterResults.benchmarks) + ); + benchmarks.forEach(benchmark => { + const rowHeader = [chalk.white.bold(benchmark)]; + if (remoteMasterResults) { + rowHeader.push(chalk.white.bold('Time')); + } + if (localResults) { + rowHeader.push(chalk.white.bold('Time')); + } + if (localResults && remoteMasterResults) { + rowHeader.push(chalk.white.bold('Diff')); + } + table.push(rowHeader); + + const measurements = ( + (localResults && localResults.benchmarks[benchmark].averages) + || + (remoteMasterResults && remoteMasterResults.benchmarks[benchmark].averages) + ); + measurements.forEach((measurement, i) => { + const row = [ + chalk.gray(measurement.entry), + ]; + let remoteMean; + let remoteSem; + if (remoteMasterResults) { + remoteMean = remoteMasterResults.benchmarks[benchmark].averages[i].mean; + remoteSem = remoteMasterResults.benchmarks[benchmark].averages[i].sem; + // https://en.wikipedia.org/wiki/1.96 gives a 99% confidence interval. + const ci95 = remoteSem * 1.96; + row.push(chalk.white(+remoteMean.toFixed(2) + ' ms +- ' + ci95.toFixed(2))); + } + let localMean; + let localSem; + if (localResults) { + localMean = localResults.benchmarks[benchmark].averages[i].mean; + localSem = localResults.benchmarks[benchmark].averages[i].sem; + const ci95 = localSem * 1.96; + row.push(chalk.white(+localMean.toFixed(2) + ' ms +- ' + ci95.toFixed(2))); + } + if (localResults && remoteMasterResults) { + row.push(percentChange(remoteMean, localMean, remoteSem, localSem)); + } + table.push(row); + }); + }); +} + +function addBundleSizeComparions(table, localResults, remoteMasterResults) { + const bundlesRowHeader = [chalk.white.bold('Bundles')]; + if (remoteMasterResults) { + bundlesRowHeader.push(chalk.white.bold('Size')); + } + if (localResults) { + bundlesRowHeader.push(chalk.white.bold('Size')); + } + if (localResults && remoteMasterResults) { + bundlesRowHeader.push(chalk.white.bold('Diff')); + } + table.push(bundlesRowHeader); + + const bundles = Object.keys( + (localResults && localResults.bundles.bundleSizes) + || + (remoteMasterResults && remoteMasterResults.bundles.bundleSizes) + ); + bundles.forEach(bundle => { + const row = [ + chalk.gray(bundle), + ]; + let remoteSize = 0; + if (remoteMasterResults) { + const remoteBundle = remoteSize = remoteMasterResults.bundles.bundleSizes[bundle]; + + if (remoteBundle) { + remoteSize = remoteSize.size; + } + row.push(chalk.white(remoteSize + ' kb')); + } + let localSize = 0; + if (localResults) { + const localBundle = localResults.bundles.bundleSizes[bundle]; + + if (localBundle) { + localSize = localBundle.size; + } + localSize = localResults.bundles.bundleSizes[bundle].size; + row.push(chalk.white(localSize + ' kb')); + } + if (localResults && remoteMasterResults) { + row.push(percentChange(remoteSize, localSize, 0, 0)); + } + table.push(row); + }); +} + +function printResults(localResults, remoteMasterResults) { + const head = ['']; + if (remoteMasterResults) { + head.push(chalk.yellow.bold('Remote (Merge Base)')); + } + if (localResults) { + head.push(chalk.green.bold('Local (Current Branch)')); + } + if (localResults && remoteMasterResults) { + head.push(''); + } + const table = new Table({ head }); + + addBundleSizeComparions(table, localResults, remoteMasterResults); + addBenchmarkResults(table, localResults, remoteMasterResults); + + console.log(table.toString()); +} + +module.exports = printResults; diff --git a/scripts/circleci/bench.sh b/scripts/circleci/bench.sh new file mode 100755 index 000000000000..bbb049667a20 --- /dev/null +++ b/scripts/circleci/bench.sh @@ -0,0 +1,5 @@ +#!/bin/bash + +set -e + +npm run bench \ No newline at end of file diff --git a/scripts/circleci/test_entry_point.sh b/scripts/circleci/test_entry_point.sh index 85a26c37612d..4f18910dc855 100755 --- a/scripts/circleci/test_entry_point.sh +++ b/scripts/circleci/test_entry_point.sh @@ -4,14 +4,6 @@ set -e COMMANDS_TO_RUN=() -# We split these to be approximately equal chunks of four. As of this writing, -# times were around: -# - 3:30 test_coverage.sh -# - 2:00 test_fiber.sh -# - 1:15 test_html_generation.sh -# - 1:15 grunt build -# with everything else < 0:30. - if [ $((1 % CIRCLE_NODE_TOTAL)) -eq "$CIRCLE_NODE_INDEX" ]; then COMMANDS_TO_RUN+=('./scripts/circleci/test_coverage.sh') fi @@ -33,6 +25,7 @@ if [ $((0 % CIRCLE_NODE_TOTAL)) -eq "$CIRCLE_NODE_INDEX" ]; then COMMANDS_TO_RUN+=('./scripts/circleci/build.sh') COMMANDS_TO_RUN+=('./scripts/circleci/test_print_warnings.sh') COMMANDS_TO_RUN+=('./scripts/circleci/track_stats.sh') + # COMMANDS_TO_RUN+=('./scripts/circleci/bench.sh') fi RETURN_CODES=() diff --git a/scripts/rollup/results.json b/scripts/rollup/results.json index fc3f3386db1a..f2fc8d6c74f5 100644 --- a/scripts/rollup/results.json +++ b/scripts/rollup/results.json @@ -1,5 +1,4 @@ { - "branch": "master", "bundleSizes": { "react.development.js (UMD_DEV)": { "size": 123496, @@ -10,20 +9,20 @@ "gzip": 5824 }, "react-dom.development.js (UMD_DEV)": { - "size": 591951, - "gzip": 136503 + "size": 591916, + "gzip": 136500 }, "react-dom.production.min.js (UMD_PROD)": { - "size": 122170, - "gzip": 38552 + "size": 122172, + "gzip": 38559 }, "react-dom-server.development.js (UMD_DEV)": { - "size": 499109, - "gzip": 120706 + "size": 499074, + "gzip": 120705 }, "react-dom-server.production.min.js (UMD_PROD)": { - "size": 107574, - "gzip": 33508 + "size": 107593, + "gzip": 33517 }, "react-art.development.js (UMD_DEV)": { "size": 348302, @@ -46,56 +45,56 @@ "gzip": 18181 }, "React-prod.js (FB_PROD)": { - "size": 36483, - "gzip": 9222 + "size": 36456, + "gzip": 9216 }, "ReactDOMStack-dev.js (FB_DEV)": { - "size": 494745, - "gzip": 117995 + "size": 494710, + "gzip": 117992 }, "ReactDOMStack-prod.js (FB_PROD)": { - "size": 353177, + "size": 353169, "gzip": 84692 }, "react-dom.development.js (NODE_DEV)": { - "size": 549527, - "gzip": 126729 + "size": 549492, + "gzip": 126720 }, "react-dom.production.min.js (NODE_PROD)": { - "size": 118379, - "gzip": 37197 + "size": 118381, + "gzip": 37204 }, "ReactDOMFiber-dev.js (FB_DEV)": { - "size": 550449, - "gzip": 127235 + "size": 550414, + "gzip": 127232 }, "ReactDOMFiber-prod.js (FB_PROD)": { - "size": 410322, - "gzip": 94075 + "size": 410323, + "gzip": 94077 }, "react-dom-server.development.js (NODE_DEV)": { - "size": 447720, - "gzip": 108154 + "size": 447685, + "gzip": 108152 }, "react-dom-server.production.min.js (NODE_PROD)": { - "size": 101947, - "gzip": 31462 + "size": 101966, + "gzip": 31470 }, "ReactDOMServerStack-dev.js (FB_DEV)": { - "size": 446406, - "gzip": 108005 + "size": 446371, + "gzip": 108003 }, "ReactDOMServerStack-prod.js (FB_PROD)": { - "size": 334132, - "gzip": 80393 + "size": 334124, + "gzip": 80394 }, "ReactARTStack-dev.js (FB_DEV)": { "size": 143166, "gzip": 32816 }, "ReactARTStack-prod.js (FB_PROD)": { - "size": 101209, - "gzip": 23045 + "size": 101182, + "gzip": 23039 }, "react-art.development.js (NODE_DEV)": { "size": 269626, diff --git a/scripts/rollup/stats.js b/scripts/rollup/stats.js index b862e7452e0e..6a0ae3e6c8cc 100644 --- a/scripts/rollup/stats.js +++ b/scripts/rollup/stats.js @@ -2,14 +2,12 @@ const Table = require('cli-table'); const filesize = require('filesize'); -const branch = require('git-branch'); const chalk = require('chalk'); const join = require('path').join; const fs = require('fs'); const prevBuildResults = require('./results.json'); const currentBuildResults = { - branch: branch.sync(), // Mutated during the build. bundleSizes: Object.assign({}, prevBuildResults.bundleSizes), }; @@ -65,10 +63,7 @@ function printResults() { percentChange(prevGzip, gzip), ]); }); - return ( - table.toString() + - `\n\nThe difference was compared to the last build on "${chalk.green.bold(prevBuildResults.branch)}" branch.\n` - ); + return table.toString(); } module.exports = { diff --git a/yarn.lock b/yarn.lock index f5cf6aeec004..eeaca8f61bf9 100644 --- a/yarn.lock +++ b/yarn.lock @@ -80,6 +80,12 @@ amdefine@>=0.0.4: version "1.0.1" resolved "https://registry.yarnpkg.com/amdefine/-/amdefine-1.0.1.tgz#4a5282ac164729e93619bcfd3ad151f817ce91f5" +ansi-align@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/ansi-align/-/ansi-align-1.1.0.tgz#2f0c1658829739add5ebb15e6b0c6e3423f016ba" + dependencies: + string-width "^1.0.1" + ansi-escapes@^1.1.0, ansi-escapes@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-1.4.0.tgz#d3a8a83b319aa67793662b13e761c7911422306e" @@ -150,6 +156,10 @@ array-filter@~0.0.0: version "0.0.1" resolved "https://registry.yarnpkg.com/array-filter/-/array-filter-0.0.1.tgz#7da8cf2e26628ed732803581fd21f67cacd2eeec" +array-find-index@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/array-find-index/-/array-find-index-1.0.2.tgz#df010aa1287e164bbda6f9723b0a96a1ec4187a1" + array-map@~0.0.0: version "0.0.0" resolved "https://registry.yarnpkg.com/array-map/-/array-map-0.0.0.tgz#88a2bab73d1cf7bcd5c1b118a003f66f665fa662" @@ -243,6 +253,10 @@ async-each@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.1.tgz#19d386a1d9edc6e7c1c85d388aedbcc56d33602d" +async@0.9.0: + version "0.9.0" + resolved "https://registry.yarnpkg.com/async/-/async-0.9.0.tgz#ac3613b1da9bed1b47510bb4651b8931e47146c7" + async@^1.4.0, async@^1.5.0: version "1.5.2" resolved "https://registry.yarnpkg.com/async/-/async-1.5.2.tgz#ec6a61ae56480c0c3cb241c95618e20892f9672a" @@ -265,6 +279,16 @@ aws4@^1.2.1: version "1.6.0" resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.6.0.tgz#83ef5ca860b2b32e4a0deedee8c771b9db57471e" +axe-core@2.1.7: + version "2.1.7" + resolved "https://registry.yarnpkg.com/axe-core/-/axe-core-2.1.7.tgz#4f66f2b3ee3b58ec2d3db4339dd124c5b33b79c3" + +babar@0.0.3: + version "0.0.3" + resolved "https://registry.yarnpkg.com/babar/-/babar-0.0.3.tgz#2f394d4a5918f7e1ae9e5408e9a96f3f935ee1e2" + dependencies: + colors "~0.6.2" + babel-cli@^6.6.5: version "6.24.1" resolved "https://registry.yarnpkg.com/babel-cli/-/babel-cli-6.24.1.tgz#207cd705bba61489b2ea41b5312341cf6aca2283" @@ -945,6 +969,18 @@ boom@2.x.x: dependencies: hoek "2.x.x" +boxen@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/boxen/-/boxen-1.0.0.tgz#b2694baf1f605f708ff0177c12193b22f29aaaab" + dependencies: + ansi-align "^1.1.0" + camelcase "^4.0.0" + chalk "^1.1.1" + cli-boxes "^1.0.0" + string-width "^2.0.0" + term-size "^0.1.0" + widest-line "^1.0.0" + brace-expansion@^1.0.0: version "1.1.7" resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.7.tgz#3effc3c50e000531fb720eaff80f0ae8ef23cf59" @@ -1178,14 +1214,33 @@ callsites@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/callsites/-/callsites-2.0.0.tgz#06eb84f00eea413da86affefacbffb36093b3c50" +camelcase-keys@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-2.1.0.tgz#308beeaffdf28119051efa1d932213c91b8f92e7" + dependencies: + camelcase "^2.0.0" + map-obj "^1.0.0" + camelcase@^1.0.2, camelcase@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-1.2.1.tgz#9bb5304d2e0b56698b2c758b08a3eaa9daa58a39" +camelcase@^2.0.0, camelcase@^2.0.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-2.1.1.tgz#7c1d16d679a1bbe59ca02cacecfb011e201f5a1f" + camelcase@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-3.0.0.tgz#32fc4b9fcdaf845fcdf7e73bb97cac2261f0ab0a" +camelcase@^4.0.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-4.1.0.tgz#d545635be1e33c542649c69173e5de6acfae34dd" + +capture-stack-trace@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/capture-stack-trace/-/capture-stack-trace-1.0.0.tgz#4a6fa07399c26bba47f0b2496b4d0fb408c5550d" + caseless@~0.11.0: version "0.11.0" resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.11.0.tgz#715b96ea9841593cc33067923f5ec60ebda4f7d7" @@ -1226,6 +1281,14 @@ chokidar@^1.0.0, chokidar@^1.6.1: optionalDependencies: fsevents "^1.0.0" +chrome-devtools-frontend@1.0.401423: + version "1.0.401423" + resolved "https://registry.yarnpkg.com/chrome-devtools-frontend/-/chrome-devtools-frontend-1.0.401423.tgz#32a89b8d04e378a494be3c8d63271703be1c04ea" + +chrome-devtools-frontend@1.0.422034: + version "1.0.422034" + resolved "https://registry.yarnpkg.com/chrome-devtools-frontend/-/chrome-devtools-frontend-1.0.422034.tgz#071c8ce14466b7653032fcd1ad1a4a68d5e3cbd9" + ci-info@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-1.0.0.tgz#dc5285f2b4e251821683681c381c3388f46ec534" @@ -1240,6 +1303,10 @@ circular-json@^0.3.1: version "0.3.1" resolved "https://registry.yarnpkg.com/circular-json/-/circular-json-0.3.1.tgz#be8b36aefccde8b3ca7aa2d6afc07a37242c0d2d" +cli-boxes@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/cli-boxes/-/cli-boxes-1.0.0.tgz#4fa917c3e59c94a004cd61f8ee509da651687143" + cli-cursor@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-1.0.2.tgz#64da3f7d56a54412e59794bd62dc35295e8f2987" @@ -1264,7 +1331,7 @@ cliui@^2.1.0: right-align "^0.1.1" wordwrap "0.0.2" -cliui@^3.2.0: +cliui@^3.0.3, cliui@^3.2.0: version "3.2.0" resolved "https://registry.yarnpkg.com/cliui/-/cliui-3.2.0.tgz#120601537a916d29940f934da3b48d585a39213d" dependencies: @@ -1306,6 +1373,10 @@ colors@1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/colors/-/colors-1.0.3.tgz#0433f44d809680fdeb60ed260f1b0c262e82a40b" +colors@~0.6.2: + version "0.6.2" + resolved "https://registry.yarnpkg.com/colors/-/colors-0.6.2.tgz#2423fe6678ac0c5dae8852e5d0e5be08c997abcc" + combine-source-map@~0.6.1: version "0.6.1" resolved "https://registry.yarnpkg.com/combine-source-map/-/combine-source-map-0.6.1.tgz#9b4a09c316033d768e0f11e029fa2730e079ad96" @@ -1362,6 +1433,17 @@ concat-stream@^1.4.6, concat-stream@^1.4.7, concat-stream@^1.5.0, concat-stream@ readable-stream "~2.0.0" typedarray "~0.0.5" +configstore@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/configstore/-/configstore-3.0.0.tgz#e1b8669c1803ccc50b545e92f8e6e79aa80e0196" + dependencies: + dot-prop "^4.1.0" + graceful-fs "^4.1.2" + mkdirp "^0.5.0" + unique-string "^1.0.0" + write-file-atomic "^1.1.2" + xdg-basedir "^3.0.0" + console-browserify@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/console-browserify/-/console-browserify-1.1.0.tgz#f0241c45730a9fc6323b206dbf38edc741d0bb10" @@ -1400,9 +1482,13 @@ core-util-is@~1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" +corser@~2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/corser/-/corser-2.0.1.tgz#8eda252ecaab5840dcd975ceb90d9370c819ff87" + coveralls@^2.11.6: - version "2.13.0" - resolved "https://registry.yarnpkg.com/coveralls/-/coveralls-2.13.0.tgz#df933876e8c6f478efb04f4d3ab70dc96b7e5a8e" + version "2.13.1" + resolved "https://registry.yarnpkg.com/coveralls/-/coveralls-2.13.1.tgz#d70bb9acc1835ec4f063ff9dac5423c17b11f178" dependencies: js-yaml "3.6.1" lcov-parse "0.0.10" @@ -1421,6 +1507,12 @@ create-ecdh@^4.0.0: bn.js "^4.1.0" elliptic "^6.0.0" +create-error-class@^3.0.0: + version "3.0.2" + resolved "https://registry.yarnpkg.com/create-error-class/-/create-error-class-3.0.2.tgz#06be7abef947a3f14a30fd610671d401bca8b7b6" + dependencies: + capture-stack-trace "^1.0.0" + create-hash@^1.1.0, create-hash@^1.1.1: version "1.1.2" resolved "https://registry.yarnpkg.com/create-hash/-/create-hash-1.1.2.tgz#51210062d7bb7479f6c65bb41a92208b1d61abad" @@ -1444,7 +1536,7 @@ create-react-class@^15.5.2: fbjs "^0.8.9" object-assign "^4.1.1" -cross-spawn-async@^2.2.2: +cross-spawn-async@^2.1.1, cross-spawn-async@^2.2.2: version "2.2.5" resolved "https://registry.yarnpkg.com/cross-spawn-async/-/cross-spawn-async-2.2.5.tgz#845ff0c0834a3ded9d160daca6d390906bb288cc" dependencies: @@ -1479,6 +1571,10 @@ crypto-browserify@^3.0.0: public-encrypt "^4.0.0" randombytes "^2.0.0" +crypto-random-string@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/crypto-random-string/-/crypto-random-string-1.0.0.tgz#a230f64f568310e1498009940790ec99545bca7e" + cssom@0.3.x, "cssom@>= 0.3.2 < 0.4.0": version "0.3.2" resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.3.2.tgz#b8036170c79f07a90ff2f16e22284027a243848b" @@ -1489,6 +1585,12 @@ cssom@0.3.x, "cssom@>= 0.3.2 < 0.4.0": dependencies: cssom "0.3.x" +currently-unhandled@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/currently-unhandled/-/currently-unhandled-0.4.1.tgz#988df33feab191ef799a61369dd76c17adf957ea" + dependencies: + array-find-index "^1.0.1" + d@1: version "1.0.0" resolved "https://registry.yarnpkg.com/d/-/d-1.0.0.tgz#754bb5bfe55451da69a58b94d45f4c5b0462d58f" @@ -1509,13 +1611,19 @@ dateformat@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-2.0.0.tgz#2743e3abb5c3fc2462e527dca445e04e9f4dee17" +debug@2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/debug/-/debug-2.2.0.tgz#f87057e995b1a1f6ae6a4960664137bc56f039da" + dependencies: + ms "0.7.1" + debug@^2.1.1, debug@^2.2.0: - version "2.6.4" - resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.4.tgz#7586a9b3c39741c0282ae33445c4e8ac74734fe0" + version "2.6.6" + resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.6.tgz#a9fa6fbe9ca43cf1e79f73b75c0189cbb7d6db5a" dependencies: ms "0.7.3" -decamelize@^1.0.0, decamelize@^1.1.1: +decamelize@^1.0.0, decamelize@^1.1.1, decamelize@^1.1.2: version "1.2.0" resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" @@ -1630,6 +1738,13 @@ detective@^4.0.0, detective@^4.3.1: acorn "^4.0.3" defined "^1.0.0" +devtools-timeline-model@1.1.6: + version "1.1.6" + resolved "https://registry.yarnpkg.com/devtools-timeline-model/-/devtools-timeline-model-1.1.6.tgz#7be51a73b55d727b597bb30dd1ed2e8e210639a5" + dependencies: + chrome-devtools-frontend "1.0.401423" + resolve "1.1.7" + diff@^3.0.0: version "3.2.0" resolved "https://registry.yarnpkg.com/diff/-/diff-3.2.0.tgz#c9ce393a4b7cbd0b058a725c93df299027868ff9" @@ -1660,6 +1775,12 @@ domain-browser@~1.1.0: version "1.1.7" resolved "https://registry.yarnpkg.com/domain-browser/-/domain-browser-1.1.7.tgz#867aa4b093faa05f1de08c06f4d7b21fdf8698bc" +dot-prop@^4.1.0: + version "4.1.1" + resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-4.1.1.tgz#a8493f0b7b5eeec82525b5c7587fa7de7ca859c1" + dependencies: + is-obj "^1.0.0" + duplexer2@0.0.2: version "0.0.2" resolved "https://registry.yarnpkg.com/duplexer2/-/duplexer2-0.0.2.tgz#c614dcf67e2fb14995a91711e5a617e8a60a31db" @@ -1672,6 +1793,10 @@ duplexer2@^0.1.2, duplexer2@~0.1.0, duplexer2@~0.1.2: dependencies: readable-stream "^2.0.2" +duplexer3@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/duplexer3/-/duplexer3-0.1.4.tgz#ee01dd1cac0ed3cbc7fdbea37dc0a8f1ce002ce2" + duplexer@^0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/duplexer/-/duplexer-0.1.1.tgz#ace6ff808c1ce66b57d1ebf97977acb02334cfc1" @@ -1691,6 +1816,15 @@ ecc-jsbn@~0.1.1: dependencies: jsbn "~0.1.0" +ecstatic@^1.4.0: + version "1.4.1" + resolved "https://registry.yarnpkg.com/ecstatic/-/ecstatic-1.4.1.tgz#32cb7b6fa2e290d58668674d115e8f0c3d567d6a" + dependencies: + he "^0.5.0" + mime "^1.2.11" + minimist "^1.1.0" + url-join "^1.0.0" + elliptic@^6.0.0: version "6.4.0" resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.4.0.tgz#cac9af8762c85836187003c8dfe193e5e2eae5df" @@ -1956,6 +2090,10 @@ event-emitter@~0.3.5: d "1" es5-ext "~0.10.14" +eventemitter3@1.x.x: + version "1.2.0" + resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-1.2.0.tgz#1c86991d816ad1e504750e73874224ecf3bec508" + events@~1.1.0: version "1.1.1" resolved "https://registry.yarnpkg.com/events/-/events-1.1.1.tgz#9ebdb7635ad099c70dcc4c2a1f5004288e8bd924" @@ -1972,6 +2110,17 @@ exec-sh@^0.2.0: dependencies: merge "^1.1.3" +execa@^0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/execa/-/execa-0.4.0.tgz#4eb6467a36a095fabb2970ff9d5e3fb7bce6ebc3" + dependencies: + cross-spawn-async "^2.1.1" + is-stream "^1.1.0" + npm-run-path "^1.0.0" + object-assign "^4.0.1" + path-key "^1.0.0" + strip-eof "^1.0.0" + exit-hook@^1.0.0: version "1.1.1" resolved "https://registry.yarnpkg.com/exit-hook/-/exit-hook-1.1.1.tgz#f05ca233b48c05d54fff07765df8507e95c02ff8" @@ -1999,8 +2148,8 @@ extend@^1.2.1: resolved "https://registry.yarnpkg.com/extend/-/extend-1.3.0.tgz#d1516fb0ff5624d2ebf9123ea1dac5a1994004f8" extend@^3.0.0, extend@~3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.0.tgz#5a474353b9f3353ddd8176dfd37b91c83a46f1d4" + version "3.0.1" + resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.1.tgz#a755ea7bc1adfcc5a31ce7e762dbaadc5e636444" extglob@^0.3.1: version "0.3.2" @@ -2172,6 +2321,16 @@ form-data@~2.1.1: combined-stream "^1.0.5" mime-types "^2.1.12" +fs-extra@~0.26.2: + version "0.26.7" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-0.26.7.tgz#9ae1fdd94897798edab76d0918cf42d0c3184fa9" + dependencies: + graceful-fs "^4.1.2" + jsonfile "^2.1.0" + klaw "^1.0.0" + path-is-absolute "^1.0.0" + rimraf "^2.2.8" + fs-readdir-recursive@^0.1.0: version "0.1.2" resolved "https://registry.yarnpkg.com/fs-readdir-recursive/-/fs-readdir-recursive-0.1.2.tgz#315b4fb8c1ca5b8c47defef319d073dad3568059" @@ -2247,6 +2406,10 @@ get-stdin@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-4.0.1.tgz#b968c6b0a04384324902e8bf1a5df32579a450fe" +get-stream@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-3.0.0.tgz#8e943d1358dc37555054ecbe2edb05aa174ede14" + getpass@^0.1.1: version "0.1.7" resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa" @@ -2257,6 +2420,10 @@ git-branch@^0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/git-branch/-/git-branch-0.3.0.tgz#cae53f599054d2bd4773e164550f54cc5fe53d2c" +gl-matrix@2.3.2: + version "2.3.2" + resolved "https://registry.yarnpkg.com/gl-matrix/-/gl-matrix-2.3.2.tgz#aac808c74af7d5db05fe04cb60ca1a0fcb174d74" + glob-base@^0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/glob-base/-/glob-base-0.3.0.tgz#dbb164f6221b1c0b1ccf82aea328b497df0ea3c4" @@ -2348,7 +2515,23 @@ glogg@^1.0.0: dependencies: sparkles "^1.0.0" -graceful-fs@^4.1.2, graceful-fs@^4.1.4, graceful-fs@^4.1.6: +got@^6.7.1: + version "6.7.1" + resolved "https://registry.yarnpkg.com/got/-/got-6.7.1.tgz#240cd05785a9a18e561dc1b44b41c763ef1e8db0" + dependencies: + create-error-class "^3.0.0" + duplexer3 "^0.1.4" + get-stream "^3.0.0" + is-redirect "^1.0.0" + is-retry-allowed "^1.0.0" + is-stream "^1.0.0" + lowercase-keys "^1.0.0" + safe-buffer "^5.0.1" + timed-out "^4.0.0" + unzip-response "^2.0.1" + url-parse-lax "^1.0.0" + +graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.4, graceful-fs@^4.1.6, graceful-fs@^4.1.9: version "4.1.11" resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.11.tgz#0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658" @@ -2402,9 +2585,9 @@ gzip-size@^3.0.0: dependencies: duplexer "^0.1.1" -handlebars@^4.0.3: - version "4.0.6" - resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.0.6.tgz#2ce4484850537f9c97a8026d5399b935c4ed4ed7" +handlebars@4.0.5, handlebars@^4.0.3: + version "4.0.5" + resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.0.5.tgz#92c6ed6bb164110c50d4d8d0fbddc70806c6f8e7" dependencies: async "^1.4.0" optimist "^0.6.1" @@ -2473,6 +2656,10 @@ hawk@~3.1.3: hoek "2.x.x" sntp "1.x.x" +he@^0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/he/-/he-0.5.0.tgz#2c05ffaef90b68e860f3fd2b54ef580989277ee2" + hmac-drbg@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1" @@ -2513,6 +2700,26 @@ htmlescape@^1.1.0: version "1.1.1" resolved "https://registry.yarnpkg.com/htmlescape/-/htmlescape-1.1.1.tgz#3a03edc2214bca3b66424a3e7959349509cb0351" +http-proxy@^1.8.1: + version "1.16.2" + resolved "https://registry.yarnpkg.com/http-proxy/-/http-proxy-1.16.2.tgz#06dff292952bf64dbe8471fa9df73066d4f37742" + dependencies: + eventemitter3 "1.x.x" + requires-port "1.x.x" + +http-server@^0.9.0: + version "0.9.0" + resolved "https://registry.yarnpkg.com/http-server/-/http-server-0.9.0.tgz#8f1b06bdc733618d4dc42831c7ba1aff4e06001a" + dependencies: + colors "1.0.3" + corser "~2.0.0" + ecstatic "^1.4.0" + http-proxy "^1.8.1" + opener "~1.4.0" + optimist "0.6.x" + portfinder "0.4.x" + union "~0.4.3" + http-signature@~1.1.0: version "1.1.1" resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.1.1.tgz#df72e267066cd0ac67fb76adf8e134a8fbcf91bf" @@ -2521,6 +2728,10 @@ http-signature@~1.1.0: jsprim "^1.2.2" sshpk "^1.7.0" +http2@^3.3.6: + version "3.3.6" + resolved "https://registry.yarnpkg.com/http2/-/http2-3.3.6.tgz#7df06227e02b5b5a5841deea08239b3198d04bec" + https-browserify@~0.0.0: version "0.0.1" resolved "https://registry.yarnpkg.com/https-browserify/-/https-browserify-0.0.1.tgz#3f91365cabe60b77ed0ebba24b454e3e09d95a82" @@ -2541,10 +2752,20 @@ ignore@^3.2.0: version "3.2.7" resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.2.7.tgz#4810ca5f1d8eca5595213a34b94f2eb4ed926bbd" +image-ssim@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/image-ssim/-/image-ssim-0.2.0.tgz#83b42c7a2e6e4b85505477fe6917f5dbc56420e5" + imurmurhash@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" +indent-string@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-2.1.0.tgz#8e2d48348742121b4a8218b7a137e9a52049dc80" + dependencies: + repeating "^2.0.0" + indexof@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/indexof/-/indexof-0.0.1.tgz#82dc336d232b9062179d05ab3293a66059fd435d" @@ -2735,12 +2956,20 @@ is-negated-glob@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-negated-glob/-/is-negated-glob-1.0.0.tgz#6910bca5da8c95e784b5751b976cf5a10fee36d2" +is-npm@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-npm/-/is-npm-1.0.0.tgz#f2fb63a65e4905b406c86072765a1a4dc793b9f4" + is-number@^2.0.2, is-number@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/is-number/-/is-number-2.1.0.tgz#01fcbbb393463a548f2f466cce16dece49db908f" dependencies: kind-of "^3.0.2" +is-obj@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-1.0.1.tgz#3e4729ac1f5fde025cd7d83a896dab9f4f67db0f" + is-path-cwd@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-path-cwd/-/is-path-cwd-1.0.0.tgz#d225ec23132e89edd38fda767472e62e65f1106d" @@ -2769,6 +2998,10 @@ is-property@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/is-property/-/is-property-1.0.2.tgz#57fe1c4e48474edd65b09911f26b1cd4095dda84" +is-redirect@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-redirect/-/is-redirect-1.0.0.tgz#1d03dded53bd8db0f30c26e4f95d36fc7c87dc24" + is-regex@^1.0.3: version "1.0.4" resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.0.4.tgz#5517489b547091b0930e095654ced25ee97e9491" @@ -2787,7 +3020,11 @@ is-resolvable@^1.0.0: dependencies: tryit "^1.0.1" -is-stream@^1.0.1: +is-retry-allowed@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-retry-allowed/-/is-retry-allowed-1.1.0.tgz#11a060568b67339444033d0125a61a20d564fb34" + +is-stream@^1.0.0, is-stream@^1.0.1, is-stream@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" @@ -2941,8 +3178,8 @@ jest-cli@^19.0.2: yargs "^6.3.0" jest-config@^19.0.1, jest-config@^19.0.2: - version "19.0.2" - resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-19.0.2.tgz#1b9bd2db0ddd16df61c2b10a54009e1768da6411" + version "19.0.4" + resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-19.0.4.tgz#42980211d46417e91ca7abffd086c270234f73fd" dependencies: chalk "^1.1.1" jest-environment-jsdom "^19.0.2" @@ -2982,8 +3219,8 @@ jest-file-exists@^19.0.0: resolved "https://registry.yarnpkg.com/jest-file-exists/-/jest-file-exists-19.0.0.tgz#cca2e587a11ec92e24cfeab3f8a94d657f3fceb8" jest-haste-map@^19.0.0: - version "19.0.1" - resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-19.0.1.tgz#7616222491275050c7af39dbeab0a57c32ef9652" + version "19.0.2" + resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-19.0.2.tgz#286484c3a16e86da7872b0877c35dce30c3d6f07" dependencies: fb-watchman "^2.0.0" graceful-fs "^4.1.6" @@ -3047,8 +3284,8 @@ jest-resolve@^19.0.2: resolve "^1.2.0" jest-runtime@^19.0.1, jest-runtime@^19.0.2: - version "19.0.2" - resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-19.0.2.tgz#d9a43e72de416d27d196fd9c7940d98fe6685407" + version "19.0.3" + resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-19.0.3.tgz#a163354ace46910ee33f0282b6bff6b0b87d4330" dependencies: babel-core "^6.0.0" babel-jest "^19.0.0" @@ -3121,6 +3358,10 @@ jodid25519@^1.0.0: dependencies: jsbn "~0.1.0" +jpeg-js@^0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/jpeg-js/-/jpeg-js-0.1.2.tgz#135b992c0575c985cfa0f494a3227ed238583ece" + js-tokens@1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-1.0.1.tgz#cc435a5c8b94ad15acb7983140fc80182c89aeae" @@ -3195,7 +3436,7 @@ json-stable-stringify@~0.0.0: dependencies: jsonify "~0.0.0" -json-stringify-safe@~5.0.1: +json-stringify-safe@5.0.1, json-stringify-safe@~5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" @@ -3207,6 +3448,12 @@ json5@^0.5.0: version "0.5.1" resolved "https://registry.yarnpkg.com/json5/-/json5-0.5.1.tgz#1eade7acc012034ad84e2396767ead9fa5495821" +jsonfile@^2.1.0: + version "2.4.0" + resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-2.4.0.tgz#3736a2b428b87bbda0cc83b53fa3d633a35c2ae8" + optionalDependencies: + graceful-fs "^4.1.6" + jsonify@~0.0.0: version "0.0.0" resolved "https://registry.yarnpkg.com/jsonify/-/jsonify-0.0.0.tgz#2c74b6ee41d93ca51b7b5aaee8f503631d252a73" @@ -3238,6 +3485,12 @@ kind-of@^3.0.2: dependencies: is-buffer "^1.1.5" +klaw@^1.0.0: + version "1.3.1" + resolved "https://registry.yarnpkg.com/klaw/-/klaw-1.3.1.tgz#4088433b46b3b1ba259d78785d8e96f73ba02439" + optionalDependencies: + graceful-fs "^4.1.9" + labeled-stream-splicer@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/labeled-stream-splicer/-/labeled-stream-splicer-2.0.0.tgz#a52e1d138024c00b86b1c0c91f677918b8ae0a59" @@ -3246,10 +3499,20 @@ labeled-stream-splicer@^2.0.0: isarray "~0.0.1" stream-splicer "^2.0.0" +latest-version@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/latest-version/-/latest-version-3.1.0.tgz#a205383fea322b33b5ae3b18abee0dc2f356ee15" + dependencies: + package-json "^4.0.0" + lazy-cache@^1.0.3: version "1.0.4" resolved "https://registry.yarnpkg.com/lazy-cache/-/lazy-cache-1.0.4.tgz#a1d78fc3a50474cb80845d3b3b6e1da49a446e8e" +lazy-req@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/lazy-req/-/lazy-req-2.0.0.tgz#c9450a363ecdda2e6f0c70132ad4f37f8f06f2b4" + lcid@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/lcid/-/lcid-1.0.0.tgz#308accafa0bc483a3867b4b6f2b9506251d1b835" @@ -3281,6 +3544,29 @@ lexical-scope@^1.2.0: dependencies: astw "^2.0.0" +lighthouse@^1.6.3: + version "1.6.5" + resolved "https://registry.yarnpkg.com/lighthouse/-/lighthouse-1.6.5.tgz#7e06a7025c8be298b6f912dbc2f15def1d4b6531" + dependencies: + axe-core "2.1.7" + chrome-devtools-frontend "1.0.422034" + debug "2.2.0" + devtools-timeline-model "1.1.6" + gl-matrix "2.3.2" + handlebars "4.0.5" + json-stringify-safe "5.0.1" + marked "0.3.6" + metaviewport-parser "0.0.1" + mkdirp "0.5.1" + opn "4.0.2" + rimraf "2.2.8" + semver "5.3.0" + speedline "1.0.3" + update-notifier "^2.1.0" + whatwg-url "4.0.0" + ws "1.1.1" + yargs "3.32.0" + load-json-file@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-1.1.0.tgz#956905708d58b4bab4c2261b04f59f31c99374c0" @@ -3389,7 +3675,7 @@ lodash@^3.10.0, lodash@^3.2.0, lodash@^3.9.3: version "3.10.1" resolved "https://registry.yarnpkg.com/lodash/-/lodash-3.10.1.tgz#5bf45e8e49ba4189e17d482789dfd15bd140b7b6" -lodash@^4.0.0, lodash@^4.14.0, lodash@^4.15.0, lodash@^4.2.0, lodash@^4.3.0: +lodash@^4.0.0, lodash@^4.13.1, lodash@^4.14.0, lodash@^4.15.0, lodash@^4.2.0, lodash@^4.3.0: version "4.17.4" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.4.tgz#78203a4d1c328ae1d86dca6460e369b57f4055ae" @@ -3407,6 +3693,17 @@ loose-envify@^1.0.0, loose-envify@^1.1.0: dependencies: js-tokens "^3.0.0" +loud-rejection@^1.0.0, loud-rejection@^1.3.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/loud-rejection/-/loud-rejection-1.6.0.tgz#5b46f80147edee578870f086d04821cf998e551f" + dependencies: + currently-unhandled "^0.4.1" + signal-exit "^3.0.0" + +lowercase-keys@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-1.0.0.tgz#4e3366b39e7f5457e35f1324bdf6f88d0bfc7306" + lru-cache@^4.0.0: version "4.0.2" resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.0.2.tgz#1d17679c069cda5d040991a09dbc2c0db377e55e" @@ -3438,6 +3735,29 @@ makeerror@1.0.x: dependencies: tmpl "1.0.x" +map-obj@^1.0.0, map-obj@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d" + +marked@0.3.6: + version "0.3.6" + resolved "https://registry.yarnpkg.com/marked/-/marked-0.3.6.tgz#b2c6c618fccece4ef86c4fc6cb8a7cbf5aeda8d7" + +meow@^3.7.0: + version "3.7.0" + resolved "https://registry.yarnpkg.com/meow/-/meow-3.7.0.tgz#72cb668b425228290abbfa856892587308a801fb" + dependencies: + camelcase-keys "^2.0.0" + decamelize "^1.1.2" + loud-rejection "^1.0.0" + map-obj "^1.0.1" + minimist "^1.1.3" + normalize-package-data "^2.3.4" + object-assign "^4.0.1" + read-pkg-up "^1.0.1" + redent "^1.0.0" + trim-newlines "^1.0.0" + merge-stream@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-1.0.1.tgz#4041202d508a342ba00174008df0c251b8c135e1" @@ -3448,6 +3768,10 @@ merge@^1.1.3: version "1.2.0" resolved "https://registry.yarnpkg.com/merge/-/merge-1.2.0.tgz#7531e39d4949c281a66b8c5a6e0265e8b05894da" +metaviewport-parser@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/metaviewport-parser/-/metaviewport-parser-0.0.1.tgz#9b28179659b76ff9d21de84ae25583257909b206" + micromatch@^2.1.5, micromatch@^2.3.11: version "2.3.11" resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-2.3.11.tgz#86677c97d1720b363431d04d0d15293bd38c1565" @@ -3483,6 +3807,10 @@ mime-types@^2.1.12, mime-types@~2.1.7: dependencies: mime-db "~1.27.0" +mime@^1.2.11, mime@^1.3.4: + version "1.3.4" + resolved "https://registry.yarnpkg.com/mime/-/mime-1.3.4.tgz#115f9e3b6b3daf2959983cb38f149a2d40eb5d53" + minimalistic-assert@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.0.tgz#702be2dda6b37f4836bcb3f5db56641b64a1d3d3" @@ -3507,11 +3835,11 @@ minimist@0.0.8, minimist@~0.0.1: version "0.0.8" resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" -minimist@1.2.0, minimist@^1.1.0, minimist@^1.1.1, minimist@^1.2.0: +minimist@1.2.0, minimist@^1.1.0, minimist@^1.1.1, minimist@^1.1.3, minimist@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" -"mkdirp@>=0.5 0", mkdirp@^0.5.0, mkdirp@^0.5.1: +mkdirp@0.5.1, mkdirp@0.5.x, "mkdirp@>=0.5 0", mkdirp@^0.5.0, mkdirp@^0.5.1: version "0.5.1" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" dependencies: @@ -3537,6 +3865,10 @@ module-deps@^4.0.8: through2 "^2.0.0" xtend "^4.0.0" +ms@0.7.1: + version "0.7.1" + resolved "https://registry.yarnpkg.com/ms/-/ms-0.7.1.tgz#9cd13c03adbff25b65effde7ce864ee952017098" + ms@0.7.3: version "0.7.3" resolved "https://registry.yarnpkg.com/ms/-/ms-0.7.3.tgz#708155a5e44e33f5fd0fc53e81d0d40a91be1fff" @@ -3551,7 +3883,7 @@ mute-stream@0.0.5: version "0.0.5" resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.5.tgz#8fbfabb0a98a253d3184331f9e8deb7372fac6c0" -nan@^2.3.0: +nan@^2.2.0, nan@^2.3.0: version "2.6.2" resolved "https://registry.yarnpkg.com/nan/-/nan-2.6.2.tgz#e4ff34e6c95fdfb5aecc08de6596f43605a7db45" @@ -3570,6 +3902,24 @@ node-fetch@^1.0.1: encoding "^0.1.11" is-stream "^1.0.1" +node-gyp@^3.5.0: + version "3.6.0" + resolved "https://registry.yarnpkg.com/node-gyp/-/node-gyp-3.6.0.tgz#7474f63a3a0501161dda0b6341f022f14c423fa6" + dependencies: + fstream "^1.0.0" + glob "^7.0.3" + graceful-fs "^4.1.2" + minimatch "^3.0.2" + mkdirp "^0.5.0" + nopt "2 || 3" + npmlog "0 || 1 || 2 || 3 || 4" + osenv "0" + request "2" + rimraf "2" + semver "~5.3.0" + tar "^2.0.0" + which "1" + node-int64@^0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b" @@ -3583,7 +3933,7 @@ node-notifier@^5.0.1: shellwords "^0.1.0" which "^1.2.12" -node-pre-gyp@^0.6.29: +node-pre-gyp@^0.6.29, node-pre-gyp@~0.6.32: version "0.6.34" resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.6.34.tgz#94ad1c798a11d7fc67381b50d47f8cc18d9799f7" dependencies: @@ -3597,6 +3947,29 @@ node-pre-gyp@^0.6.29: tar "^2.2.1" tar-pack "^3.4.0" +nodegit-promise@~4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/nodegit-promise/-/nodegit-promise-4.0.0.tgz#5722b184f2df7327161064a791d2e842c9167b34" + dependencies: + asap "~2.0.3" + +nodegit@^0.18.0: + version "0.18.3" + resolved "https://registry.yarnpkg.com/nodegit/-/nodegit-0.18.3.tgz#305b6a305ea485fe5f1679fe37e6224a669ae9fc" + dependencies: + fs-extra "~0.26.2" + lodash "^4.13.1" + nan "^2.2.0" + node-gyp "^3.5.0" + node-pre-gyp "~0.6.32" + promisify-node "~0.3.0" + +"nopt@2 || 3": + version "3.0.6" + resolved "https://registry.yarnpkg.com/nopt/-/nopt-3.0.6.tgz#c6465dbf08abcd4db359317f79ac68a646b28ff9" + dependencies: + abbrev "1" + nopt@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.1.tgz#d0d4685afd5415193c8c7505602d0d17cd64474d" @@ -3604,7 +3977,7 @@ nopt@^4.0.1: abbrev "1" osenv "^0.1.4" -normalize-package-data@^2.3.2: +normalize-package-data@^2.3.2, normalize-package-data@^2.3.4: version "2.3.8" resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.3.8.tgz#d819eda2a9dedbd1ffa563ea4071d936782295bb" dependencies: @@ -3619,7 +3992,13 @@ normalize-path@^2.0.1: dependencies: remove-trailing-separator "^1.0.1" -npmlog@^4.0.2: +npm-run-path@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-1.0.0.tgz#f5c32bf595fe81ae927daec52e82f8b000ac3c8f" + dependencies: + path-key "^1.0.0" + +"npmlog@0 || 1 || 2 || 3 || 4", npmlog@^4.0.2: version "4.0.2" resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.0.2.tgz#d03950e0e78ce1527ba26d2a7592e9348ac3e75f" dependencies: @@ -3683,7 +4062,18 @@ onetime@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/onetime/-/onetime-1.1.0.tgz#a1f7838f8314c516f05ecefcbc4ccfe04b4ed789" -optimist@^0.6.1: +opener@~1.4.0: + version "1.4.3" + resolved "https://registry.yarnpkg.com/opener/-/opener-1.4.3.tgz#5c6da2c5d7e5831e8ffa3964950f8d6674ac90b8" + +opn@4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/opn/-/opn-4.0.2.tgz#7abc22e644dff63b0a96d5ab7f2790c0f01abc95" + dependencies: + object-assign "^4.0.1" + pinkie-promise "^2.0.0" + +optimist@0.6.x, optimist@^0.6.1: version "0.6.1" resolved "https://registry.yarnpkg.com/optimist/-/optimist-0.6.1.tgz#da3ea74686fa21a19a111c326e90eb15a0196686" dependencies: @@ -3701,6 +4091,10 @@ optionator@^0.8.1, optionator@^0.8.2: type-check "~0.3.2" wordwrap "~1.0.0" +options@>=0.0.5: + version "0.0.6" + resolved "https://registry.yarnpkg.com/options/-/options-0.0.6.tgz#ec22d312806bb53e731773e7cdaefcf1c643128f" + ordered-read-streams@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/ordered-read-streams/-/ordered-read-streams-1.0.0.tgz#d674a86ffcedf83d0ae06afa2918855e96d4033a" @@ -3730,7 +4124,7 @@ os-tmpdir@^1.0.0, os-tmpdir@^1.0.1, os-tmpdir@~1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" -osenv@^0.1.4: +osenv@0, osenv@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.4.tgz#42fe6d5953df06c8064be6f176c3d05aaaa34644" dependencies: @@ -3755,6 +4149,15 @@ p-locate@^2.0.0: dependencies: p-limit "^1.1.0" +package-json@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/package-json/-/package-json-4.0.1.tgz#8869a0401253661c4c4ca3da6c2121ed555f5eed" + dependencies: + got "^6.7.1" + registry-auth-token "^3.0.1" + registry-url "^3.0.3" + semver "^5.1.0" + pako@~0.2.0: version "0.2.9" resolved "https://registry.yarnpkg.com/pako/-/pako-0.2.9.tgz#f3f7522f4ef782348da8161bad9ecfd51bf83a75" @@ -3824,6 +4227,10 @@ path-is-inside@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53" +path-key@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/path-key/-/path-key-1.0.0.tgz#5d53d578019646c0d68800db4e146e6bdc2ac7af" + path-parse@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.5.tgz#3c1adf871ea9cd6c9431b6ea2bd74a0ff055c4c1" @@ -3872,10 +4279,21 @@ pluralize@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/pluralize/-/pluralize-1.2.1.tgz#d1a21483fd22bb41e58a12fa3421823140897c45" +portfinder@0.4.x: + version "0.4.0" + resolved "https://registry.yarnpkg.com/portfinder/-/portfinder-0.4.0.tgz#a3ffadffafe4fb98e0601a85eda27c27ce84ca1e" + dependencies: + async "0.9.0" + mkdirp "0.5.x" + prelude-ls@~1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" +prepend-http@^1.0.1: + version "1.0.4" + resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-1.0.4.tgz#d4f4562b0ce3696e41ac52d0e002e57a635dc6dc" + preserve@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/preserve/-/preserve-0.2.0.tgz#815ed1f6ebc65926f865b310c0713bcb3315ce4b" @@ -3910,8 +4328,8 @@ process-nextick-args@~1.0.6: resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-1.0.7.tgz#150e20b756590ad3f91093f25a4f2ad8bff30ba3" process@~0.11.0: - version "0.11.9" - resolved "https://registry.yarnpkg.com/process/-/process-0.11.9.tgz#7bd5ad21aa6253e7da8682264f1e11d11c0318c1" + version "0.11.10" + resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182" progress@^1.1.8: version "1.1.8" @@ -3923,6 +4341,12 @@ promise@^7.1.1: dependencies: asap "~2.0.3" +promisify-node@~0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/promisify-node/-/promisify-node-0.3.0.tgz#b4b55acf90faa7d2b8b90ca396899086c03060cf" + dependencies: + nodegit-promise "~4.0.0" + prop-types@^15.5.8: version "15.5.8" resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.5.8.tgz#6b7b2e141083be38c8595aa51fc55775c7199394" @@ -3974,6 +4398,10 @@ q@^1.1.2: version "1.5.0" resolved "https://registry.yarnpkg.com/q/-/q-1.5.0.tgz#dd01bac9d06d30e6f219aecb8253ee9ebdc308f1" +qs@~2.3.3: + version "2.3.3" + resolved "https://registry.yarnpkg.com/qs/-/qs-2.3.3.tgz#e9e85adbe75da0bbe4c8e0476a086290f863b404" + qs@~6.3.0: version "6.3.2" resolved "https://registry.yarnpkg.com/qs/-/qs-6.3.2.tgz#e75bd5f6e268122a2a0e0bda630b2550c166502c" @@ -4001,7 +4429,7 @@ randombytes@^2.0.0, randombytes@^2.0.1: version "2.0.3" resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.0.3.tgz#674c99760901c3c4112771a31e521dc349cc09ec" -rc@^1.1.7: +rc@^1.0.1, rc@^1.1.6, rc@^1.1.7: version "1.2.1" resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.1.tgz#2e03e8e42ee450b8cb3dce65be1bf8974e1dfd95" dependencies: @@ -4104,13 +4532,20 @@ rechoir@^0.6.2: dependencies: resolve "^1.1.6" +redent@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/redent/-/redent-1.0.0.tgz#cf916ab1fd5f1f16dfb20822dd6ec7f730c2afde" + dependencies: + indent-string "^2.1.0" + strip-indent "^1.0.1" + regenerate@^1.2.1: version "1.3.2" resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.3.2.tgz#d1941c67bad437e1be76433add5b385f95b19260" regenerator-runtime@^0.10.0: - version "0.10.3" - resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.10.3.tgz#8c4367a904b51ea62a908ac310bf99ff90a82a3e" + version "0.10.4" + resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.10.4.tgz#74cb6598d3ba2eb18694e968a40e2b3b4df9cf93" regenerator@0.8.40: version "0.8.40" @@ -4140,6 +4575,19 @@ regexpu@^1.3.0: regjsgen "^0.2.0" regjsparser "^0.1.4" +registry-auth-token@^3.0.1: + version "3.3.0" + resolved "https://registry.yarnpkg.com/registry-auth-token/-/registry-auth-token-3.3.0.tgz#57ae67347e73d96345ed1bc01294c7237c02aa63" + dependencies: + rc "^1.1.6" + safe-buffer "^5.0.1" + +registry-url@^3.0.3: + version "3.1.0" + resolved "https://registry.yarnpkg.com/registry-url/-/registry-url-3.1.0.tgz#3d4ef870f73dde1d77f0cf9a381432444e174942" + dependencies: + rc "^1.0.1" + regjsgen@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.2.0.tgz#6c016adeac554f75823fe37ac05b92d5a4edb1f7" @@ -4178,7 +4626,7 @@ replace-ext@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/replace-ext/-/replace-ext-0.0.1.tgz#29bbd92078a739f0bcce2b4ee41e837953522924" -request@2.79.0, request@^2.79.0: +request@2, request@2.79.0: version "2.79.0" resolved "https://registry.yarnpkg.com/request/-/request-2.79.0.tgz#4dfe5bf6be8b8cdc37fcf93e04b65577722710de" dependencies: @@ -4203,7 +4651,7 @@ request@2.79.0, request@^2.79.0: tunnel-agent "~0.4.1" uuid "^3.0.0" -request@^2.81.0: +request@^2.79.0, request@^2.81.0: version "2.81.0" resolved "https://registry.yarnpkg.com/request/-/request-2.81.0.tgz#c6928946a0e06c5f8d6f8a9333469ffda46298a0" dependencies: @@ -4245,6 +4693,10 @@ require-uncached@^1.0.2: caller-path "^0.1.0" resolve-from "^1.0.0" +requires-port@1.x.x: + version "1.0.0" + resolved "https://registry.yarnpkg.com/requires-port/-/requires-port-1.0.0.tgz#925d2601d39ac485e091cf0da5c6e694dc3dcaff" + resolve-from@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-1.0.1.tgz#26cbfe935d1aeeeabb29bc3fe5aeb01e93d44226" @@ -4278,6 +4730,10 @@ rimraf@2, rimraf@^2.2.8, rimraf@^2.4.4, rimraf@^2.5.1, rimraf@^2.6.1: dependencies: glob "^7.0.5" +rimraf@2.2.8: + version "2.2.8" + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.2.8.tgz#e439be2aaee327321952730f99a8929e4fc50582" + ripemd160@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-1.0.1.tgz#93a4bbd4942bc574b69a8fa57c71de10ecca7d6e" @@ -4395,7 +4851,13 @@ sax@^1.2.1: version "1.2.2" resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.2.tgz#fd8631a23bc7826bef5d871bdb87378c95647828" -"semver@2 || 3 || 4 || 5", semver@^5.1.0, semver@^5.3.0: +semver-diff@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/semver-diff/-/semver-diff-2.1.0.tgz#4bbb8437c8d37e4b0cf1a68fd726ec6d645d6d36" + dependencies: + semver "^5.0.3" + +"semver@2 || 3 || 4 || 5", semver@5.3.0, semver@^5.0.3, semver@^5.1.0, semver@^5.3.0, semver@~5.3.0: version "5.3.0" resolved "https://registry.yarnpkg.com/semver/-/semver-5.3.0.tgz#9b2ce5d3de02d17c6012ad326aa6b4d0cf54f94f" @@ -4469,6 +4931,10 @@ slice-ansi@0.0.4: version "0.0.4" resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-0.0.4.tgz#edbf8903f66f7ce2f8eafd6ceed65e264c831b35" +slide@^1.1.5: + version "1.1.6" + resolved "https://registry.yarnpkg.com/slide/-/slide-1.1.6.tgz#56eb027d65b4d2dce6cb2e2d32c4d4afc9e1d707" + sntp@1.x.x: version "1.0.9" resolved "https://registry.yarnpkg.com/sntp/-/sntp-1.0.9.tgz#6541184cc90aeea6c6e7b35e2659082443c66198" @@ -4534,6 +5000,16 @@ spdx-license-ids@^1.0.2: version "1.2.2" resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-1.2.2.tgz#c9df7a3424594ade6bd11900d596696dc06bac57" +speedline@1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/speedline/-/speedline-1.0.3.tgz#ee1d98c18d583a2d8488aaded2db9334b943dbbd" + dependencies: + babar "0.0.3" + image-ssim "^0.2.0" + jpeg-js "^0.1.2" + loud-rejection "^1.3.0" + meow "^3.7.0" + sprintf-js@~1.0.2: version "1.0.3" resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" @@ -4557,6 +5033,10 @@ stable@~0.1.3: version "0.1.6" resolved "https://registry.yarnpkg.com/stable/-/stable-0.1.6.tgz#910f5d2aed7b520c6e777499c1f32e139fdecb10" +stats-analysis@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/stats-analysis/-/stats-analysis-2.0.0.tgz#f45c516ff5c5d26c26f2d8c7b3d57592802d6187" + stream-browserify@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/stream-browserify/-/stream-browserify-2.0.1.tgz#66266ee5f9bdb9940a4e4514cafb43bb71e5c9db" @@ -4651,6 +5131,16 @@ strip-bom@^2.0.0: dependencies: is-utf8 "^0.2.0" +strip-eof@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf" + +strip-indent@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-1.0.1.tgz#0c7962a6adefa7bbd4ac366460a638552ae1a0a2" + dependencies: + get-stdin "^4.0.1" + strip-json-comments@~2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" @@ -4705,7 +5195,7 @@ tar-pack@^3.4.0: tar "^2.2.1" uid-number "^0.0.6" -tar@^2.2.1: +tar@^2.0.0, tar@^2.2.1: version "2.2.1" resolved "https://registry.yarnpkg.com/tar/-/tar-2.2.1.tgz#8e4d2a256c0e2185c6b18ad694aec968b83cb1d1" dependencies: @@ -4713,6 +5203,12 @@ tar@^2.2.1: fstream "^1.0.2" inherits "2" +term-size@^0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/term-size/-/term-size-0.1.1.tgz#87360b96396cab5760963714cda0d0cbeecad9ca" + dependencies: + execa "^0.4.0" + test-exclude@^4.0.3: version "4.0.3" resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-4.0.3.tgz#86a13ce3effcc60e6c90403cf31a27a60ac6c4e7" @@ -4760,6 +5256,10 @@ time-stamp@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/time-stamp/-/time-stamp-1.0.1.tgz#9f4bd23559c9365966f3302dbba2b07c6b99b151" +timed-out@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/timed-out/-/timed-out-4.0.1.tgz#f32eacac5a175bea25d7fab565ab3ed8741ef56f" + timers-browserify@^1.0.1: version "1.4.2" resolved "https://registry.yarnpkg.com/timers-browserify/-/timers-browserify-1.4.2.tgz#c9c58b575be8407375cb5e2462dacee74359f41d" @@ -4802,6 +5302,10 @@ tr46@~0.0.3: version "0.0.3" resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a" +trim-newlines@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-1.0.0.tgz#5887966bb582a4503a41eb524f7d35011815a613" + trim-right@^1.0.0, trim-right@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003" @@ -4881,6 +5385,10 @@ uid-number@^0.0.6: version "0.0.6" resolved "https://registry.yarnpkg.com/uid-number/-/uid-number-0.0.6.tgz#0ea10e8035e8eb5b8e4449f06da1c730663baa81" +ultron@1.0.x: + version "1.0.2" + resolved "https://registry.yarnpkg.com/ultron/-/ultron-1.0.2.tgz#ace116ab557cd197386a4e88f4685378c8b2e4fa" + umd@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/umd/-/umd-3.0.1.tgz#8ae556e11011f63c2596708a8837259f01b3d60e" @@ -4889,6 +5397,12 @@ unc-path-regex@^0.1.0: version "0.1.2" resolved "https://registry.yarnpkg.com/unc-path-regex/-/unc-path-regex-0.1.2.tgz#e73dd3d7b0d7c5ed86fbac6b0ae7d8c6a69d50fa" +union@~0.4.3: + version "0.4.6" + resolved "https://registry.yarnpkg.com/union/-/union-0.4.6.tgz#198fbdaeba254e788b0efcb630bc11f24a2959e0" + dependencies: + qs "~2.3.3" + unique-stream@^2.0.2: version "2.2.1" resolved "https://registry.yarnpkg.com/unique-stream/-/unique-stream-2.2.1.tgz#5aa003cfbe94c5ff866c4e7d668bb1c4dbadb369" @@ -4896,6 +5410,39 @@ unique-stream@^2.0.2: json-stable-stringify "^1.0.0" through2-filter "^2.0.0" +unique-string@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/unique-string/-/unique-string-1.0.0.tgz#9e1057cca851abb93398f8b33ae187b99caec11a" + dependencies: + crypto-random-string "^1.0.0" + +unzip-response@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/unzip-response/-/unzip-response-2.0.1.tgz#d2f0f737d16b0615e72a6935ed04214572d56f97" + +update-notifier@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/update-notifier/-/update-notifier-2.1.0.tgz#ec0c1e53536b76647a24b77cb83966d9315123d9" + dependencies: + boxen "^1.0.0" + chalk "^1.0.0" + configstore "^3.0.0" + is-npm "^1.0.0" + latest-version "^3.0.0" + lazy-req "^2.0.0" + semver-diff "^2.0.0" + xdg-basedir "^3.0.0" + +url-join@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/url-join/-/url-join-1.1.0.tgz#741c6c2f4596c4830d6718460920d0c92202dc78" + +url-parse-lax@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/url-parse-lax/-/url-parse-lax-1.0.0.tgz#7af8f303645e9bd79a272e7a14ac68bc0609da73" + dependencies: + prepend-http "^1.0.1" + url@~0.11.0: version "0.11.0" resolved "https://registry.yarnpkg.com/url/-/url-0.11.0.tgz#3838e97cfc60521eb73c525a8e55bfdd9e2e28f1" @@ -4992,6 +5539,13 @@ whatwg-fetch@>=0.10.0: version "2.0.3" resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-2.0.3.tgz#9c84ec2dcf68187ff00bc64e1274b442176e1c84" +whatwg-url@4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-4.0.0.tgz#5be362f0b6e2f8760f7260df6e0e1df536f5479c" + dependencies: + tr46 "~0.0.3" + webidl-conversions "^3.0.0" + whatwg-url@^4.3.0: version "4.7.1" resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-4.7.1.tgz#df4dc2e3f25a63b1fa5b32ed6d6c139577d690de" @@ -5003,7 +5557,7 @@ which-module@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/which-module/-/which-module-1.0.0.tgz#bba63ca861948994ff307736089e3b96026c2a4f" -which@^1.1.1, which@^1.2.12, which@^1.2.8: +which@1, which@^1.1.1, which@^1.2.12, which@^1.2.8: version "1.2.14" resolved "https://registry.yarnpkg.com/which/-/which-1.2.14.tgz#9a87c4378f03e827cecaf1acdf56c736c01c14e5" dependencies: @@ -5015,18 +5569,28 @@ wide-align@^1.1.0: dependencies: string-width "^1.0.1" +widest-line@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/widest-line/-/widest-line-1.0.0.tgz#0c09c85c2a94683d0d7eaf8ee097d564bf0e105c" + dependencies: + string-width "^1.0.1" + window-size@0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.1.0.tgz#5438cd2ea93b202efa3a19fe8887aee7c94f9c9d" -window-size@^0.1.2: +window-size@^0.1.2, window-size@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.1.4.tgz#f8e1aa1ee5a53ec5bf151ffa09742a6ad7697876" -wordwrap@0.0.2, wordwrap@~0.0.2: +wordwrap@0.0.2: version "0.0.2" resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.2.tgz#b79669bb42ecb409f83d583cad52ca17eaa1643f" +wordwrap@~0.0.2: + version "0.0.3" + resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.3.tgz#a3d5da6cd5c0bc0008d37234bbaf1bed63059107" + wordwrap@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb" @@ -5049,12 +5613,31 @@ wrappy@1: version "1.0.2" resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" +write-file-atomic@^1.1.2: + version "1.3.4" + resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-1.3.4.tgz#f807a4f0b1d9e913ae7a48112e6cc3af1991b45f" + dependencies: + graceful-fs "^4.1.11" + imurmurhash "^0.1.4" + slide "^1.1.5" + write@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/write/-/write-0.2.1.tgz#5fc03828e264cea3fe91455476f7a3c566cb0757" dependencies: mkdirp "^0.5.1" +ws@1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/ws/-/ws-1.1.1.tgz#082ddb6c641e85d4bb451f03d52f06eabdb1f018" + dependencies: + options ">=0.0.5" + ultron "1.0.x" + +xdg-basedir@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/xdg-basedir/-/xdg-basedir-3.0.0.tgz#496b2cc109eca8dbacfe2dc72b603c17c5870ad4" + xml-name-validator@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-2.0.1.tgz#4d8b8f1eccd3419aa362061becef515e1e559635" @@ -5077,6 +5660,18 @@ yargs-parser@^4.2.0: dependencies: camelcase "^3.0.0" +yargs@3.32.0: + version "3.32.0" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-3.32.0.tgz#03088e9ebf9e756b69751611d2a5ef591482c995" + dependencies: + camelcase "^2.0.1" + cliui "^3.0.3" + decamelize "^1.1.1" + os-locale "^1.4.0" + string-width "^1.0.1" + window-size "^0.1.4" + y18n "^3.2.0" + yargs@^6.3.0, yargs@^6.5.0: version "6.6.0" resolved "https://registry.yarnpkg.com/yargs/-/yargs-6.6.0.tgz#782ec21ef403345f830a808ca3d513af56065208"