From bbff7403fbf46f9ad92240ac213df8d30ef31b64 Mon Sep 17 00:00:00 2001 From: Florian Dold Date: Thu, 20 Sep 2018 02:56:13 +0200 Subject: update packages --- node_modules/fbjs/CHANGELOG.md | 214 - node_modules/fbjs/LICENSE | 20 - node_modules/fbjs/README.md | 46 - node_modules/fbjs/flow/lib/dev.js | 8 - node_modules/fbjs/index.js | 10 - node_modules/fbjs/lib/CSSCore.js | 119 - node_modules/fbjs/lib/CSSCore.js.flow | 116 - node_modules/fbjs/lib/DataTransfer.js | 219 - node_modules/fbjs/lib/DataTransfer.js.flow | 194 - node_modules/fbjs/lib/Deferred.js | 79 - node_modules/fbjs/lib/Deferred.js.flow | 73 - node_modules/fbjs/lib/ErrorUtils.js | 26 - node_modules/fbjs/lib/ErrorUtils.js.flow | 25 - node_modules/fbjs/lib/EventListener.js | 74 - node_modules/fbjs/lib/EventListener.js.flow | 73 - node_modules/fbjs/lib/ExecutionEnvironment.js | 33 - node_modules/fbjs/lib/ExecutionEnvironment.js.flow | 34 - node_modules/fbjs/lib/Keys.js | 34 - node_modules/fbjs/lib/Keys.js.flow | 33 - node_modules/fbjs/lib/Map.js | 11 - node_modules/fbjs/lib/Map.js.flow | 10 - node_modules/fbjs/lib/PhotosMimeType.js | 26 - node_modules/fbjs/lib/PhotosMimeType.js.flow | 26 - node_modules/fbjs/lib/Promise.js | 11 - node_modules/fbjs/lib/Promise.js.flow | 10 - node_modules/fbjs/lib/Promise.native.js | 25 - node_modules/fbjs/lib/Promise.native.js.flow | 25 - node_modules/fbjs/lib/PromiseMap.js | 57 - node_modules/fbjs/lib/PromiseMap.js.flow | 53 - node_modules/fbjs/lib/Scroll.js | 83 - node_modules/fbjs/lib/Scroll.js.flow | 82 - node_modules/fbjs/lib/Set.js | 11 - node_modules/fbjs/lib/Set.js.flow | 10 - node_modules/fbjs/lib/Style.js | 62 - node_modules/fbjs/lib/Style.js.flow | 61 - node_modules/fbjs/lib/TokenizeUtil.js | 35 - node_modules/fbjs/lib/TokenizeUtil.js.flow | 34 - node_modules/fbjs/lib/TouchEventUtils.js | 32 - node_modules/fbjs/lib/TouchEventUtils.js.flow | 31 - node_modules/fbjs/lib/URI.js | 28 - node_modules/fbjs/lib/URI.js.flow | 25 - node_modules/fbjs/lib/UnicodeBidi.js | 154 - node_modules/fbjs/lib/UnicodeBidi.js.flow | 157 - node_modules/fbjs/lib/UnicodeBidiDirection.js | 106 - node_modules/fbjs/lib/UnicodeBidiDirection.js.flow | 110 - node_modules/fbjs/lib/UnicodeBidiService.js | 98 - node_modules/fbjs/lib/UnicodeBidiService.js.flow | 95 - node_modules/fbjs/lib/UnicodeCJK.js | 172 - node_modules/fbjs/lib/UnicodeCJK.js.flow | 173 - node_modules/fbjs/lib/UnicodeHangulKorean.js | 135 - node_modules/fbjs/lib/UnicodeHangulKorean.js.flow | 136 - node_modules/fbjs/lib/UnicodeUtils.js | 212 - node_modules/fbjs/lib/UnicodeUtils.js.flow | 213 - node_modules/fbjs/lib/UnicodeUtilsExtra.js | 227 - node_modules/fbjs/lib/UnicodeUtilsExtra.js.flow | 184 - node_modules/fbjs/lib/UserAgent.js | 239 - node_modules/fbjs/lib/UserAgent.js.flow | 236 - node_modules/fbjs/lib/UserAgentData.js | 80 - node_modules/fbjs/lib/UserAgentData.js.flow | 81 - node_modules/fbjs/lib/VersionRange.js | 380 -- node_modules/fbjs/lib/VersionRange.js.flow | 371 -- node_modules/fbjs/lib/__mocks__/ErrorUtils.js | 20 - node_modules/fbjs/lib/__mocks__/base62.js | 10 - node_modules/fbjs/lib/__mocks__/crc32.js | 10 - node_modules/fbjs/lib/__mocks__/fetch.js | 26 - .../fbjs/lib/__mocks__/fetchWithRetries.js | 31 - node_modules/fbjs/lib/__mocks__/nullthrows.js | 12 - .../fbjs/lib/_shouldPolyfillES6Collection.js | 39 - .../fbjs/lib/_shouldPolyfillES6Collection.js.flow | 38 - node_modules/fbjs/lib/areEqual.js | 106 - node_modules/fbjs/lib/areEqual.js.flow | 105 - node_modules/fbjs/lib/base62.js | 26 - node_modules/fbjs/lib/base62.js.flow | 27 - node_modules/fbjs/lib/camelize.js | 29 - node_modules/fbjs/lib/camelize.js.flow | 28 - node_modules/fbjs/lib/camelizeStyleName.js | 37 - node_modules/fbjs/lib/camelizeStyleName.js.flow | 38 - node_modules/fbjs/lib/compactArray.js | 27 - node_modules/fbjs/lib/compactArray.js.flow | 28 - node_modules/fbjs/lib/concatAllArray.js | 33 - node_modules/fbjs/lib/concatAllArray.js.flow | 32 - node_modules/fbjs/lib/containsNode.js | 37 - node_modules/fbjs/lib/containsNode.js.flow | 36 - node_modules/fbjs/lib/countDistinct.js | 51 - node_modules/fbjs/lib/countDistinct.js.flow | 31 - node_modules/fbjs/lib/crc32.js | 27 - node_modules/fbjs/lib/crc32.js.flow | 26 - node_modules/fbjs/lib/createArrayFromMixed.js | 124 - node_modules/fbjs/lib/createArrayFromMixed.js.flow | 123 - node_modules/fbjs/lib/createNodesFromMarkup.js | 81 - .../fbjs/lib/createNodesFromMarkup.js.flow | 80 - node_modules/fbjs/lib/cx.js | 39 - node_modules/fbjs/lib/cx.js.flow | 36 - node_modules/fbjs/lib/distinctArray.js | 22 - node_modules/fbjs/lib/distinctArray.js.flow | 21 - node_modules/fbjs/lib/emptyFunction.js | 36 - node_modules/fbjs/lib/emptyFunction.js.flow | 35 - node_modules/fbjs/lib/emptyObject.js | 17 - node_modules/fbjs/lib/emptyObject.js.flow | 18 - node_modules/fbjs/lib/enumerate.js | 305 -- node_modules/fbjs/lib/enumerate.js.flow | 263 -- node_modules/fbjs/lib/equalsIterable.js | 64 - node_modules/fbjs/lib/equalsIterable.js.flow | 65 - node_modules/fbjs/lib/equalsSet.js | 27 - node_modules/fbjs/lib/equalsSet.js.flow | 28 - node_modules/fbjs/lib/everyObject.js | 44 - node_modules/fbjs/lib/everyObject.js.flow | 45 - node_modules/fbjs/lib/everySet.js | 30 - node_modules/fbjs/lib/everySet.js.flow | 33 - node_modules/fbjs/lib/fetch.js | 19 - node_modules/fbjs/lib/fetch.js.flow | 20 - node_modules/fbjs/lib/fetchWithRetries.js | 111 - node_modules/fbjs/lib/fetchWithRetries.js.flow | 115 - node_modules/fbjs/lib/filterObject.js | 49 - node_modules/fbjs/lib/filterObject.js.flow | 50 - node_modules/fbjs/lib/flatMapArray.js | 35 - node_modules/fbjs/lib/flatMapArray.js.flow | 34 - node_modules/fbjs/lib/flattenArray.js | 46 - node_modules/fbjs/lib/flattenArray.js.flow | 45 - node_modules/fbjs/lib/focusNode.js | 24 - node_modules/fbjs/lib/focusNode.js.flow | 25 - node_modules/fbjs/lib/forEachObject.js | 40 - node_modules/fbjs/lib/forEachObject.js.flow | 41 - node_modules/fbjs/lib/getActiveElement.js | 36 - node_modules/fbjs/lib/getActiveElement.js.flow | 35 - node_modules/fbjs/lib/getDocumentScrollElement.js | 31 - .../fbjs/lib/getDocumentScrollElement.js.flow | 32 - node_modules/fbjs/lib/getElementPosition.js | 31 - node_modules/fbjs/lib/getElementPosition.js.flow | 30 - node_modules/fbjs/lib/getElementRect.js | 48 - node_modules/fbjs/lib/getElementRect.js.flow | 47 - node_modules/fbjs/lib/getMarkupWrap.js | 92 - node_modules/fbjs/lib/getMarkupWrap.js.flow | 91 - node_modules/fbjs/lib/getScrollPosition.js | 45 - node_modules/fbjs/lib/getScrollPosition.js.flow | 46 - node_modules/fbjs/lib/getStyleProperty.js | 51 - node_modules/fbjs/lib/getStyleProperty.js.flow | 50 - .../fbjs/lib/getUnboundedScrollPosition.js | 36 - .../fbjs/lib/getUnboundedScrollPosition.js.flow | 37 - node_modules/fbjs/lib/getViewportDimensions.js | 57 - .../fbjs/lib/getViewportDimensions.js.flow | 60 - node_modules/fbjs/lib/groupArray.js | 34 - node_modules/fbjs/lib/groupArray.js.flow | 35 - node_modules/fbjs/lib/hyphenate.js | 30 - node_modules/fbjs/lib/hyphenate.js.flow | 29 - node_modules/fbjs/lib/hyphenateStyleName.js | 36 - node_modules/fbjs/lib/hyphenateStyleName.js.flow | 37 - node_modules/fbjs/lib/invariant.js | 53 - node_modules/fbjs/lib/invariant.js.flow | 54 - node_modules/fbjs/lib/isEmpty.js | 43 - node_modules/fbjs/lib/isEmpty.js.flow | 44 - node_modules/fbjs/lib/isNode.js | 22 - node_modules/fbjs/lib/isNode.js.flow | 21 - node_modules/fbjs/lib/isTextNode.js | 22 - node_modules/fbjs/lib/isTextNode.js.flow | 21 - node_modules/fbjs/lib/joinClasses.js | 37 - node_modules/fbjs/lib/joinClasses.js.flow | 38 - node_modules/fbjs/lib/keyMirror.js | 45 - node_modules/fbjs/lib/keyMirror.js.flow | 46 - node_modules/fbjs/lib/keyMirrorRecursive.js | 67 - node_modules/fbjs/lib/keyMirrorRecursive.js.flow | 68 - node_modules/fbjs/lib/keyOf.js | 32 - node_modules/fbjs/lib/keyOf.js.flow | 31 - node_modules/fbjs/lib/mapObject.js | 48 - node_modules/fbjs/lib/mapObject.js.flow | 49 - node_modules/fbjs/lib/maxBy.js | 30 - node_modules/fbjs/lib/maxBy.js.flow | 25 - node_modules/fbjs/lib/memoizeStringOnly.js | 27 - node_modules/fbjs/lib/memoizeStringOnly.js.flow | 28 - node_modules/fbjs/lib/minBy.js | 59 - node_modules/fbjs/lib/minBy.js.flow | 35 - node_modules/fbjs/lib/monitorCodeUse.js | 24 - node_modules/fbjs/lib/monitorCodeUse.js.flow | 25 - .../fbjs/lib/nativeRequestAnimationFrame.js | 13 - .../fbjs/lib/nativeRequestAnimationFrame.js.flow | 12 - node_modules/fbjs/lib/nullthrows.js | 19 - node_modules/fbjs/lib/nullthrows.js.flow | 18 - node_modules/fbjs/lib/partitionArray.js | 31 - node_modules/fbjs/lib/partitionArray.js.flow | 30 - node_modules/fbjs/lib/partitionObject.js | 30 - node_modules/fbjs/lib/partitionObject.js.flow | 31 - node_modules/fbjs/lib/partitionObjectByKey.js | 24 - node_modules/fbjs/lib/partitionObjectByKey.js.flow | 23 - node_modules/fbjs/lib/performance.js | 20 - node_modules/fbjs/lib/performance.js.flow | 21 - node_modules/fbjs/lib/performanceNow.js | 31 - node_modules/fbjs/lib/performanceNow.js.flow | 26 - node_modules/fbjs/lib/removeFromArray.js | 23 - node_modules/fbjs/lib/removeFromArray.js.flow | 22 - node_modules/fbjs/lib/requestAnimationFrame.js | 28 - .../fbjs/lib/requestAnimationFrame.js.flow | 27 - node_modules/fbjs/lib/resolveImmediate.js | 29 - node_modules/fbjs/lib/resolveImmediate.js.flow | 26 - node_modules/fbjs/lib/setImmediate.js | 15 - node_modules/fbjs/lib/setImmediate.js.flow | 16 - node_modules/fbjs/lib/shallowEqual.js | 65 - node_modules/fbjs/lib/shallowEqual.js.flow | 66 - node_modules/fbjs/lib/someObject.js | 44 - node_modules/fbjs/lib/someObject.js.flow | 45 - node_modules/fbjs/lib/someSet.js | 30 - node_modules/fbjs/lib/someSet.js.flow | 33 - node_modules/fbjs/lib/sprintf.js | 32 - node_modules/fbjs/lib/sprintf.js.flow | 25 - node_modules/fbjs/lib/warning.js | 62 - node_modules/fbjs/lib/warning.js.flow | 53 - node_modules/fbjs/lib/xhrSimpleDataSerializer.js | 20 - .../fbjs/lib/xhrSimpleDataSerializer.js.flow | 19 - node_modules/fbjs/module-map.json | 99 - node_modules/fbjs/node_modules/.bin/loose-envify | 1 - .../fbjs/node_modules/core-js/CHANGELOG.md | 409 -- .../fbjs/node_modules/core-js/Gruntfile.js | 2 - node_modules/fbjs/node_modules/core-js/LICENSE | 19 - node_modules/fbjs/node_modules/core-js/bower.json | 34 - .../fbjs/node_modules/core-js/build/Gruntfile.ls | 84 - .../fbjs/node_modules/core-js/build/build.ls | 218 - .../fbjs/node_modules/core-js/build/config.js | 8 - .../fbjs/node_modules/core-js/build/index.js | 98 - .../fbjs/node_modules/core-js/client/core.js | 4910 -------------------- .../fbjs/node_modules/core-js/client/core.min.js | 9 - .../node_modules/core-js/client/core.min.js.map | 1 - .../fbjs/node_modules/core-js/client/library.js | 4550 ------------------ .../node_modules/core-js/client/library.min.js | 9 - .../node_modules/core-js/client/library.min.js.map | 1 - .../fbjs/node_modules/core-js/client/shim.js | 4551 ------------------ .../fbjs/node_modules/core-js/client/shim.min.js | 9 - .../node_modules/core-js/client/shim.min.js.map | 1 - node_modules/fbjs/node_modules/core-js/core/_.js | 2 - .../fbjs/node_modules/core-js/core/delay.js | 2 - .../fbjs/node_modules/core-js/core/dict.js | 2 - .../fbjs/node_modules/core-js/core/function.js | 2 - .../fbjs/node_modules/core-js/core/index.js | 15 - node_modules/fbjs/node_modules/core-js/core/log.js | 2 - .../fbjs/node_modules/core-js/core/number.js | 2 - .../fbjs/node_modules/core-js/core/object.js | 5 - .../fbjs/node_modules/core-js/core/string.js | 3 - .../fbjs/node_modules/core-js/es5/index.js | 9 - .../fbjs/node_modules/core-js/es6/array.js | 10 - .../fbjs/node_modules/core-js/es6/function.js | 3 - .../fbjs/node_modules/core-js/es6/index.js | 87 - node_modules/fbjs/node_modules/core-js/es6/map.js | 5 - node_modules/fbjs/node_modules/core-js/es6/math.js | 18 - .../fbjs/node_modules/core-js/es6/number.js | 11 - .../fbjs/node_modules/core-js/es6/object.js | 17 - .../fbjs/node_modules/core-js/es6/promise.js | 5 - .../fbjs/node_modules/core-js/es6/reflect.js | 15 - .../fbjs/node_modules/core-js/es6/regexp.js | 7 - node_modules/fbjs/node_modules/core-js/es6/set.js | 5 - .../fbjs/node_modules/core-js/es6/string.js | 14 - .../fbjs/node_modules/core-js/es6/symbol.js | 3 - .../fbjs/node_modules/core-js/es6/weak-map.js | 4 - .../fbjs/node_modules/core-js/es6/weak-set.js | 4 - .../fbjs/node_modules/core-js/es7/array.js | 2 - .../fbjs/node_modules/core-js/es7/index.js | 13 - node_modules/fbjs/node_modules/core-js/es7/map.js | 2 - .../fbjs/node_modules/core-js/es7/object.js | 4 - .../fbjs/node_modules/core-js/es7/regexp.js | 2 - node_modules/fbjs/node_modules/core-js/es7/set.js | 2 - .../fbjs/node_modules/core-js/es7/string.js | 6 - node_modules/fbjs/node_modules/core-js/fn/_.js | 2 - .../fbjs/node_modules/core-js/fn/array/concat.js | 2 - .../node_modules/core-js/fn/array/copy-within.js | 2 - .../fbjs/node_modules/core-js/fn/array/entries.js | 2 - .../fbjs/node_modules/core-js/fn/array/every.js | 2 - .../fbjs/node_modules/core-js/fn/array/fill.js | 2 - .../fbjs/node_modules/core-js/fn/array/filter.js | 2 - .../node_modules/core-js/fn/array/find-index.js | 2 - .../fbjs/node_modules/core-js/fn/array/find.js | 2 - .../fbjs/node_modules/core-js/fn/array/for-each.js | 2 - .../fbjs/node_modules/core-js/fn/array/from.js | 3 - .../fbjs/node_modules/core-js/fn/array/includes.js | 2 - .../fbjs/node_modules/core-js/fn/array/index-of.js | 2 - .../fbjs/node_modules/core-js/fn/array/index.js | 12 - .../fbjs/node_modules/core-js/fn/array/iterator.js | 2 - .../fbjs/node_modules/core-js/fn/array/join.js | 2 - .../fbjs/node_modules/core-js/fn/array/keys.js | 2 - .../node_modules/core-js/fn/array/last-index-of.js | 2 - .../fbjs/node_modules/core-js/fn/array/map.js | 2 - .../fbjs/node_modules/core-js/fn/array/of.js | 2 - .../fbjs/node_modules/core-js/fn/array/pop.js | 2 - .../fbjs/node_modules/core-js/fn/array/push.js | 2 - .../node_modules/core-js/fn/array/reduce-right.js | 2 - .../fbjs/node_modules/core-js/fn/array/reduce.js | 2 - .../fbjs/node_modules/core-js/fn/array/reverse.js | 2 - .../fbjs/node_modules/core-js/fn/array/shift.js | 2 - .../fbjs/node_modules/core-js/fn/array/slice.js | 2 - .../fbjs/node_modules/core-js/fn/array/some.js | 2 - .../fbjs/node_modules/core-js/fn/array/sort.js | 2 - .../fbjs/node_modules/core-js/fn/array/splice.js | 2 - .../fbjs/node_modules/core-js/fn/array/unshift.js | 2 - .../fbjs/node_modules/core-js/fn/array/values.js | 2 - .../node_modules/core-js/fn/clear-immediate.js | 2 - node_modules/fbjs/node_modules/core-js/fn/delay.js | 2 - node_modules/fbjs/node_modules/core-js/fn/dict.js | 2 - .../core-js/fn/function/has-instance.js | 2 - .../fbjs/node_modules/core-js/fn/function/index.js | 4 - .../fbjs/node_modules/core-js/fn/function/name.js | 1 - .../fbjs/node_modules/core-js/fn/function/part.js | 2 - .../node_modules/core-js/fn/get-iterator-method.js | 3 - .../fbjs/node_modules/core-js/fn/get-iterator.js | 3 - .../core-js/fn/html-collection/index.js | 2 - .../core-js/fn/html-collection/iterator.js | 2 - .../fbjs/node_modules/core-js/fn/is-iterable.js | 3 - .../fbjs/node_modules/core-js/fn/json/stringify.js | 4 - node_modules/fbjs/node_modules/core-js/fn/log.js | 2 - node_modules/fbjs/node_modules/core-js/fn/map.js | 6 - .../fbjs/node_modules/core-js/fn/math/acosh.js | 2 - .../fbjs/node_modules/core-js/fn/math/asinh.js | 2 - .../fbjs/node_modules/core-js/fn/math/atanh.js | 2 - .../fbjs/node_modules/core-js/fn/math/cbrt.js | 2 - .../fbjs/node_modules/core-js/fn/math/clz32.js | 2 - .../fbjs/node_modules/core-js/fn/math/cosh.js | 2 - .../fbjs/node_modules/core-js/fn/math/expm1.js | 2 - .../fbjs/node_modules/core-js/fn/math/fround.js | 2 - .../fbjs/node_modules/core-js/fn/math/hypot.js | 2 - .../fbjs/node_modules/core-js/fn/math/imul.js | 2 - .../fbjs/node_modules/core-js/fn/math/index.js | 18 - .../fbjs/node_modules/core-js/fn/math/log10.js | 2 - .../fbjs/node_modules/core-js/fn/math/log1p.js | 2 - .../fbjs/node_modules/core-js/fn/math/log2.js | 2 - .../fbjs/node_modules/core-js/fn/math/sign.js | 2 - .../fbjs/node_modules/core-js/fn/math/sinh.js | 2 - .../fbjs/node_modules/core-js/fn/math/tanh.js | 2 - .../fbjs/node_modules/core-js/fn/math/trunc.js | 2 - .../node_modules/core-js/fn/node-list/index.js | 2 - .../node_modules/core-js/fn/node-list/iterator.js | 2 - .../fbjs/node_modules/core-js/fn/number/epsilon.js | 2 - .../fbjs/node_modules/core-js/fn/number/index.js | 12 - .../node_modules/core-js/fn/number/is-finite.js | 2 - .../node_modules/core-js/fn/number/is-integer.js | 2 - .../fbjs/node_modules/core-js/fn/number/is-nan.js | 2 - .../core-js/fn/number/is-safe-integer.js | 2 - .../node_modules/core-js/fn/number/iterator.js | 5 - .../core-js/fn/number/max-safe-integer.js | 2 - .../core-js/fn/number/min-safe-integer.js | 2 - .../node_modules/core-js/fn/number/parse-float.js | 2 - .../node_modules/core-js/fn/number/parse-int.js | 2 - .../fbjs/node_modules/core-js/fn/object/assign.js | 2 - .../fbjs/node_modules/core-js/fn/object/classof.js | 2 - .../fbjs/node_modules/core-js/fn/object/create.js | 4 - .../core-js/fn/object/define-properties.js | 4 - .../core-js/fn/object/define-property.js | 4 - .../fbjs/node_modules/core-js/fn/object/define.js | 2 - .../fbjs/node_modules/core-js/fn/object/entries.js | 2 - .../fbjs/node_modules/core-js/fn/object/freeze.js | 2 - .../fn/object/get-own-property-descriptor.js | 5 - .../fn/object/get-own-property-descriptors.js | 2 - .../core-js/fn/object/get-own-property-names.js | 5 - .../core-js/fn/object/get-own-property-symbols.js | 2 - .../core-js/fn/object/get-prototype-of.js | 2 - .../fbjs/node_modules/core-js/fn/object/index.js | 23 - .../core-js/fn/object/is-extensible.js | 2 - .../node_modules/core-js/fn/object/is-frozen.js | 2 - .../node_modules/core-js/fn/object/is-object.js | 2 - .../node_modules/core-js/fn/object/is-sealed.js | 2 - .../fbjs/node_modules/core-js/fn/object/is.js | 2 - .../fbjs/node_modules/core-js/fn/object/keys.js | 2 - .../fbjs/node_modules/core-js/fn/object/make.js | 2 - .../core-js/fn/object/prevent-extensions.js | 2 - .../fbjs/node_modules/core-js/fn/object/seal.js | 2 - .../core-js/fn/object/set-prototype-of.js | 2 - .../fbjs/node_modules/core-js/fn/object/values.js | 2 - .../fbjs/node_modules/core-js/fn/promise.js | 5 - .../fbjs/node_modules/core-js/fn/reflect/apply.js | 2 - .../node_modules/core-js/fn/reflect/construct.js | 2 - .../core-js/fn/reflect/define-property.js | 2 - .../core-js/fn/reflect/delete-property.js | 2 - .../node_modules/core-js/fn/reflect/enumerate.js | 2 - .../fn/reflect/get-own-property-descriptor.js | 2 - .../core-js/fn/reflect/get-prototype-of.js | 2 - .../fbjs/node_modules/core-js/fn/reflect/get.js | 2 - .../fbjs/node_modules/core-js/fn/reflect/has.js | 2 - .../fbjs/node_modules/core-js/fn/reflect/index.js | 15 - .../core-js/fn/reflect/is-extensible.js | 2 - .../node_modules/core-js/fn/reflect/own-keys.js | 2 - .../core-js/fn/reflect/prevent-extensions.js | 2 - .../core-js/fn/reflect/set-prototype-of.js | 2 - .../fbjs/node_modules/core-js/fn/reflect/set.js | 2 - .../fbjs/node_modules/core-js/fn/regexp/escape.js | 2 - .../fbjs/node_modules/core-js/fn/regexp/index.js | 8 - .../fbjs/node_modules/core-js/fn/set-immediate.js | 2 - .../fbjs/node_modules/core-js/fn/set-interval.js | 2 - .../fbjs/node_modules/core-js/fn/set-timeout.js | 2 - node_modules/fbjs/node_modules/core-js/fn/set.js | 6 - .../fbjs/node_modules/core-js/fn/string/at.js | 2 - .../core-js/fn/string/code-point-at.js | 2 - .../node_modules/core-js/fn/string/ends-with.js | 2 - .../node_modules/core-js/fn/string/escape-html.js | 2 - .../core-js/fn/string/from-code-point.js | 2 - .../node_modules/core-js/fn/string/includes.js | 2 - .../fbjs/node_modules/core-js/fn/string/index.js | 21 - .../node_modules/core-js/fn/string/iterator.js | 5 - .../node_modules/core-js/fn/string/pad-left.js | 2 - .../node_modules/core-js/fn/string/pad-right.js | 2 - .../fbjs/node_modules/core-js/fn/string/raw.js | 2 - .../fbjs/node_modules/core-js/fn/string/repeat.js | 2 - .../node_modules/core-js/fn/string/starts-with.js | 2 - .../node_modules/core-js/fn/string/trim-left.js | 2 - .../node_modules/core-js/fn/string/trim-right.js | 2 - .../fbjs/node_modules/core-js/fn/string/trim.js | 2 - .../core-js/fn/string/unescape-html.js | 2 - .../fbjs/node_modules/core-js/fn/symbol/for.js | 2 - .../node_modules/core-js/fn/symbol/has-instance.js | 1 - .../fbjs/node_modules/core-js/fn/symbol/index.js | 3 - .../core-js/fn/symbol/is-concat-spreadable.js | 1 - .../node_modules/core-js/fn/symbol/iterator.js | 3 - .../fbjs/node_modules/core-js/fn/symbol/key-for.js | 2 - .../fbjs/node_modules/core-js/fn/symbol/match.js | 2 - .../fbjs/node_modules/core-js/fn/symbol/replace.js | 2 - .../fbjs/node_modules/core-js/fn/symbol/search.js | 2 - .../fbjs/node_modules/core-js/fn/symbol/species.js | 1 - .../fbjs/node_modules/core-js/fn/symbol/split.js | 2 - .../node_modules/core-js/fn/symbol/to-primitive.js | 1 - .../core-js/fn/symbol/to-string-tag.js | 2 - .../node_modules/core-js/fn/symbol/unscopables.js | 1 - .../fbjs/node_modules/core-js/fn/weak-map.js | 4 - .../fbjs/node_modules/core-js/fn/weak-set.js | 4 - node_modules/fbjs/node_modules/core-js/index.js | 16 - node_modules/fbjs/node_modules/core-js/js/array.js | 2 - node_modules/fbjs/node_modules/core-js/js/index.js | 2 - .../fbjs/node_modules/core-js/library/core/_.js | 2 - .../node_modules/core-js/library/core/delay.js | 2 - .../fbjs/node_modules/core-js/library/core/dict.js | 2 - .../node_modules/core-js/library/core/function.js | 2 - .../node_modules/core-js/library/core/index.js | 15 - .../fbjs/node_modules/core-js/library/core/log.js | 2 - .../node_modules/core-js/library/core/number.js | 2 - .../node_modules/core-js/library/core/object.js | 5 - .../node_modules/core-js/library/core/string.js | 3 - .../fbjs/node_modules/core-js/library/es5/index.js | 9 - .../fbjs/node_modules/core-js/library/es6/array.js | 10 - .../node_modules/core-js/library/es6/function.js | 3 - .../fbjs/node_modules/core-js/library/es6/index.js | 87 - .../fbjs/node_modules/core-js/library/es6/map.js | 5 - .../fbjs/node_modules/core-js/library/es6/math.js | 18 - .../node_modules/core-js/library/es6/number.js | 11 - .../node_modules/core-js/library/es6/object.js | 17 - .../node_modules/core-js/library/es6/promise.js | 5 - .../node_modules/core-js/library/es6/reflect.js | 15 - .../node_modules/core-js/library/es6/regexp.js | 7 - .../fbjs/node_modules/core-js/library/es6/set.js | 5 - .../node_modules/core-js/library/es6/string.js | 14 - .../node_modules/core-js/library/es6/symbol.js | 3 - .../node_modules/core-js/library/es6/weak-map.js | 4 - .../node_modules/core-js/library/es6/weak-set.js | 4 - .../fbjs/node_modules/core-js/library/es7/array.js | 2 - .../fbjs/node_modules/core-js/library/es7/index.js | 13 - .../fbjs/node_modules/core-js/library/es7/map.js | 2 - .../node_modules/core-js/library/es7/object.js | 4 - .../node_modules/core-js/library/es7/regexp.js | 2 - .../fbjs/node_modules/core-js/library/es7/set.js | 2 - .../node_modules/core-js/library/es7/string.js | 6 - .../fbjs/node_modules/core-js/library/fn/_.js | 2 - .../core-js/library/fn/array/concat.js | 2 - .../core-js/library/fn/array/copy-within.js | 2 - .../core-js/library/fn/array/entries.js | 2 - .../node_modules/core-js/library/fn/array/every.js | 2 - .../node_modules/core-js/library/fn/array/fill.js | 2 - .../core-js/library/fn/array/filter.js | 2 - .../core-js/library/fn/array/find-index.js | 2 - .../node_modules/core-js/library/fn/array/find.js | 2 - .../core-js/library/fn/array/for-each.js | 2 - .../node_modules/core-js/library/fn/array/from.js | 3 - .../core-js/library/fn/array/includes.js | 2 - .../core-js/library/fn/array/index-of.js | 2 - .../node_modules/core-js/library/fn/array/index.js | 12 - .../core-js/library/fn/array/iterator.js | 2 - .../node_modules/core-js/library/fn/array/join.js | 2 - .../node_modules/core-js/library/fn/array/keys.js | 2 - .../core-js/library/fn/array/last-index-of.js | 2 - .../node_modules/core-js/library/fn/array/map.js | 2 - .../node_modules/core-js/library/fn/array/of.js | 2 - .../node_modules/core-js/library/fn/array/pop.js | 2 - .../node_modules/core-js/library/fn/array/push.js | 2 - .../core-js/library/fn/array/reduce-right.js | 2 - .../core-js/library/fn/array/reduce.js | 2 - .../core-js/library/fn/array/reverse.js | 2 - .../node_modules/core-js/library/fn/array/shift.js | 2 - .../node_modules/core-js/library/fn/array/slice.js | 2 - .../node_modules/core-js/library/fn/array/some.js | 2 - .../node_modules/core-js/library/fn/array/sort.js | 2 - .../core-js/library/fn/array/splice.js | 2 - .../core-js/library/fn/array/unshift.js | 2 - .../core-js/library/fn/array/values.js | 2 - .../core-js/library/fn/clear-immediate.js | 2 - .../fbjs/node_modules/core-js/library/fn/delay.js | 2 - .../fbjs/node_modules/core-js/library/fn/dict.js | 2 - .../core-js/library/fn/function/has-instance.js | 2 - .../core-js/library/fn/function/index.js | 4 - .../core-js/library/fn/function/name.js | 1 - .../core-js/library/fn/function/part.js | 2 - .../core-js/library/fn/get-iterator-method.js | 3 - .../core-js/library/fn/get-iterator.js | 3 - .../core-js/library/fn/html-collection/index.js | 2 - .../core-js/library/fn/html-collection/iterator.js | 2 - .../node_modules/core-js/library/fn/is-iterable.js | 3 - .../core-js/library/fn/json/stringify.js | 4 - .../fbjs/node_modules/core-js/library/fn/log.js | 2 - .../fbjs/node_modules/core-js/library/fn/map.js | 6 - .../node_modules/core-js/library/fn/math/acosh.js | 2 - .../node_modules/core-js/library/fn/math/asinh.js | 2 - .../node_modules/core-js/library/fn/math/atanh.js | 2 - .../node_modules/core-js/library/fn/math/cbrt.js | 2 - .../node_modules/core-js/library/fn/math/clz32.js | 2 - .../node_modules/core-js/library/fn/math/cosh.js | 2 - .../node_modules/core-js/library/fn/math/expm1.js | 2 - .../node_modules/core-js/library/fn/math/fround.js | 2 - .../node_modules/core-js/library/fn/math/hypot.js | 2 - .../node_modules/core-js/library/fn/math/imul.js | 2 - .../node_modules/core-js/library/fn/math/index.js | 18 - .../node_modules/core-js/library/fn/math/log10.js | 2 - .../node_modules/core-js/library/fn/math/log1p.js | 2 - .../node_modules/core-js/library/fn/math/log2.js | 2 - .../node_modules/core-js/library/fn/math/sign.js | 2 - .../node_modules/core-js/library/fn/math/sinh.js | 2 - .../node_modules/core-js/library/fn/math/tanh.js | 2 - .../node_modules/core-js/library/fn/math/trunc.js | 2 - .../core-js/library/fn/node-list/index.js | 2 - .../core-js/library/fn/node-list/iterator.js | 2 - .../core-js/library/fn/number/epsilon.js | 2 - .../core-js/library/fn/number/index.js | 12 - .../core-js/library/fn/number/is-finite.js | 2 - .../core-js/library/fn/number/is-integer.js | 2 - .../core-js/library/fn/number/is-nan.js | 2 - .../core-js/library/fn/number/is-safe-integer.js | 2 - .../core-js/library/fn/number/iterator.js | 5 - .../core-js/library/fn/number/max-safe-integer.js | 2 - .../core-js/library/fn/number/min-safe-integer.js | 2 - .../core-js/library/fn/number/parse-float.js | 2 - .../core-js/library/fn/number/parse-int.js | 2 - .../core-js/library/fn/object/assign.js | 2 - .../core-js/library/fn/object/classof.js | 2 - .../core-js/library/fn/object/create.js | 4 - .../core-js/library/fn/object/define-properties.js | 4 - .../core-js/library/fn/object/define-property.js | 4 - .../core-js/library/fn/object/define.js | 2 - .../core-js/library/fn/object/entries.js | 2 - .../core-js/library/fn/object/freeze.js | 2 - .../fn/object/get-own-property-descriptor.js | 5 - .../fn/object/get-own-property-descriptors.js | 2 - .../library/fn/object/get-own-property-names.js | 5 - .../library/fn/object/get-own-property-symbols.js | 2 - .../core-js/library/fn/object/get-prototype-of.js | 2 - .../core-js/library/fn/object/index.js | 23 - .../core-js/library/fn/object/is-extensible.js | 2 - .../core-js/library/fn/object/is-frozen.js | 2 - .../core-js/library/fn/object/is-object.js | 2 - .../core-js/library/fn/object/is-sealed.js | 2 - .../node_modules/core-js/library/fn/object/is.js | 2 - .../node_modules/core-js/library/fn/object/keys.js | 2 - .../node_modules/core-js/library/fn/object/make.js | 2 - .../library/fn/object/prevent-extensions.js | 2 - .../node_modules/core-js/library/fn/object/seal.js | 2 - .../core-js/library/fn/object/set-prototype-of.js | 2 - .../core-js/library/fn/object/values.js | 2 - .../node_modules/core-js/library/fn/promise.js | 5 - .../core-js/library/fn/reflect/apply.js | 2 - .../core-js/library/fn/reflect/construct.js | 2 - .../core-js/library/fn/reflect/define-property.js | 2 - .../core-js/library/fn/reflect/delete-property.js | 2 - .../core-js/library/fn/reflect/enumerate.js | 2 - .../fn/reflect/get-own-property-descriptor.js | 2 - .../core-js/library/fn/reflect/get-prototype-of.js | 2 - .../node_modules/core-js/library/fn/reflect/get.js | 2 - .../node_modules/core-js/library/fn/reflect/has.js | 2 - .../core-js/library/fn/reflect/index.js | 15 - .../core-js/library/fn/reflect/is-extensible.js | 2 - .../core-js/library/fn/reflect/own-keys.js | 2 - .../library/fn/reflect/prevent-extensions.js | 2 - .../core-js/library/fn/reflect/set-prototype-of.js | 2 - .../node_modules/core-js/library/fn/reflect/set.js | 2 - .../core-js/library/fn/regexp/escape.js | 2 - .../core-js/library/fn/regexp/index.js | 8 - .../core-js/library/fn/set-immediate.js | 2 - .../core-js/library/fn/set-interval.js | 2 - .../node_modules/core-js/library/fn/set-timeout.js | 2 - .../fbjs/node_modules/core-js/library/fn/set.js | 6 - .../node_modules/core-js/library/fn/string/at.js | 2 - .../core-js/library/fn/string/code-point-at.js | 2 - .../core-js/library/fn/string/ends-with.js | 2 - .../core-js/library/fn/string/escape-html.js | 2 - .../core-js/library/fn/string/from-code-point.js | 2 - .../core-js/library/fn/string/includes.js | 2 - .../core-js/library/fn/string/index.js | 21 - .../core-js/library/fn/string/iterator.js | 5 - .../core-js/library/fn/string/pad-left.js | 2 - .../core-js/library/fn/string/pad-right.js | 2 - .../node_modules/core-js/library/fn/string/raw.js | 2 - .../core-js/library/fn/string/repeat.js | 2 - .../core-js/library/fn/string/starts-with.js | 2 - .../core-js/library/fn/string/trim-left.js | 2 - .../core-js/library/fn/string/trim-right.js | 2 - .../node_modules/core-js/library/fn/string/trim.js | 2 - .../core-js/library/fn/string/unescape-html.js | 2 - .../node_modules/core-js/library/fn/symbol/for.js | 2 - .../core-js/library/fn/symbol/has-instance.js | 1 - .../core-js/library/fn/symbol/index.js | 3 - .../library/fn/symbol/is-concat-spreadable.js | 1 - .../core-js/library/fn/symbol/iterator.js | 3 - .../core-js/library/fn/symbol/key-for.js | 2 - .../core-js/library/fn/symbol/match.js | 2 - .../core-js/library/fn/symbol/replace.js | 2 - .../core-js/library/fn/symbol/search.js | 2 - .../core-js/library/fn/symbol/species.js | 1 - .../core-js/library/fn/symbol/split.js | 2 - .../core-js/library/fn/symbol/to-primitive.js | 1 - .../core-js/library/fn/symbol/to-string-tag.js | 2 - .../core-js/library/fn/symbol/unscopables.js | 1 - .../node_modules/core-js/library/fn/weak-map.js | 4 - .../node_modules/core-js/library/fn/weak-set.js | 4 - .../fbjs/node_modules/core-js/library/index.js | 16 - .../fbjs/node_modules/core-js/library/js/array.js | 2 - .../fbjs/node_modules/core-js/library/js/index.js | 2 - .../core-js/library/modules/$.a-function.js | 4 - .../library/modules/$.add-to-unscopables.js | 1 - .../core-js/library/modules/$.an-object.js | 5 - .../core-js/library/modules/$.array-copy-within.js | 27 - .../core-js/library/modules/$.array-fill.js | 16 - .../core-js/library/modules/$.array-includes.js | 21 - .../core-js/library/modules/$.array-methods.js | 43 - .../library/modules/$.array-species-create.js | 16 - .../core-js/library/modules/$.buffer.js | 288 -- .../core-js/library/modules/$.classof.js | 16 - .../node_modules/core-js/library/modules/$.cof.js | 5 - .../core-js/library/modules/$.collection-strong.js | 159 - .../library/modules/$.collection-to-json.js | 11 - .../core-js/library/modules/$.collection-weak.js | 86 - .../core-js/library/modules/$.collection.js | 55 - .../node_modules/core-js/library/modules/$.core.js | 2 - .../node_modules/core-js/library/modules/$.ctx.js | 20 - .../core-js/library/modules/$.defined.js | 5 - .../core-js/library/modules/$.descriptors.js | 4 - .../core-js/library/modules/$.dom-create.js | 7 - .../core-js/library/modules/$.enum-keys.js | 14 - .../core-js/library/modules/$.export.js | 46 - .../core-js/library/modules/$.fails-is-regexp.js | 12 - .../core-js/library/modules/$.fails.js | 7 - .../core-js/library/modules/$.fix-re-wks.js | 26 - .../core-js/library/modules/$.flags.js | 13 - .../core-js/library/modules/$.for-of.js | 19 - .../core-js/library/modules/$.get-names.js | 20 - .../core-js/library/modules/$.global.js | 4 - .../node_modules/core-js/library/modules/$.has.js | 4 - .../node_modules/core-js/library/modules/$.hide.js | 8 - .../node_modules/core-js/library/modules/$.html.js | 1 - .../core-js/library/modules/$.invoke.js | 16 - .../core-js/library/modules/$.iobject.js | 5 - .../core-js/library/modules/$.is-array-iter.js | 8 - .../core-js/library/modules/$.is-array.js | 5 - .../core-js/library/modules/$.is-integer.js | 6 - .../core-js/library/modules/$.is-object.js | 3 - .../core-js/library/modules/$.is-regexp.js | 8 - .../core-js/library/modules/$.iter-call.js | 12 - .../core-js/library/modules/$.iter-create.js | 13 - .../core-js/library/modules/$.iter-define.js | 66 - .../core-js/library/modules/$.iter-detect.js | 21 - .../core-js/library/modules/$.iter-step.js | 3 - .../core-js/library/modules/$.iterators.js | 1 - .../fbjs/node_modules/core-js/library/modules/$.js | 13 - .../core-js/library/modules/$.keyof.js | 10 - .../core-js/library/modules/$.library.js | 1 - .../core-js/library/modules/$.math-expm1.js | 4 - .../core-js/library/modules/$.math-log1p.js | 4 - .../core-js/library/modules/$.math-sign.js | 4 - .../core-js/library/modules/$.microtask.js | 64 - .../core-js/library/modules/$.object-assign.js | 33 - .../core-js/library/modules/$.object-define.js | 11 - .../core-js/library/modules/$.object-sap.js | 10 - .../core-js/library/modules/$.object-to-array.js | 16 - .../core-js/library/modules/$.own-keys.js | 9 - .../core-js/library/modules/$.partial.js | 24 - .../node_modules/core-js/library/modules/$.path.js | 1 - .../core-js/library/modules/$.property-desc.js | 8 - .../core-js/library/modules/$.redefine-all.js | 5 - .../core-js/library/modules/$.redefine.js | 1 - .../core-js/library/modules/$.replacer.js | 8 - .../core-js/library/modules/$.same-value.js | 4 - .../core-js/library/modules/$.set-proto.js | 26 - .../core-js/library/modules/$.set-species.js | 13 - .../core-js/library/modules/$.set-to-string-tag.js | 7 - .../core-js/library/modules/$.shared.js | 6 - .../library/modules/$.species-constructor.js | 8 - .../core-js/library/modules/$.strict-new.js | 4 - .../core-js/library/modules/$.string-at.js | 17 - .../core-js/library/modules/$.string-context.js | 8 - .../core-js/library/modules/$.string-pad.js | 17 - .../core-js/library/modules/$.string-repeat.js | 12 - .../core-js/library/modules/$.string-trim.js | 29 - .../node_modules/core-js/library/modules/$.task.js | 75 - .../core-js/library/modules/$.to-index.js | 7 - .../core-js/library/modules/$.to-integer.js | 6 - .../core-js/library/modules/$.to-iobject.js | 6 - .../core-js/library/modules/$.to-length.js | 6 - .../core-js/library/modules/$.to-object.js | 5 - .../core-js/library/modules/$.to-primitive.js | 12 - .../core-js/library/modules/$.typed-array.js | 365 -- .../core-js/library/modules/$.typed.js | 36 - .../node_modules/core-js/library/modules/$.uid.js | 5 - .../node_modules/core-js/library/modules/$.wks.js | 7 - .../core-js/library/modules/core.delay.js | 12 - .../core-js/library/modules/core.dict.js | 153 - .../core-js/library/modules/core.function.part.js | 7 - .../library/modules/core.get-iterator-method.js | 8 - .../core-js/library/modules/core.get-iterator.js | 7 - .../core-js/library/modules/core.is-iterable.js | 9 - .../core-js/library/modules/core.log.js | 26 - .../library/modules/core.number.iterator.js | 9 - .../core-js/library/modules/core.object.classof.js | 3 - .../core-js/library/modules/core.object.define.js | 4 - .../library/modules/core.object.is-object.js | 3 - .../core-js/library/modules/core.object.make.js | 9 - .../library/modules/core.string.escape-html.js | 11 - .../library/modules/core.string.unescape-html.js | 11 - .../node_modules/core-js/library/modules/es5.js | 276 -- .../library/modules/es6.array.copy-within.js | 6 - .../core-js/library/modules/es6.array.fill.js | 6 - .../library/modules/es6.array.find-index.js | 14 - .../core-js/library/modules/es6.array.find.js | 14 - .../core-js/library/modules/es6.array.from.js | 36 - .../core-js/library/modules/es6.array.iterator.js | 34 - .../core-js/library/modules/es6.array.of.js | 19 - .../core-js/library/modules/es6.array.species.js | 1 - .../core-js/library/modules/es6.date.to-string.js | 0 .../library/modules/es6.function.has-instance.js | 13 - .../core-js/library/modules/es6.function.name.js | 0 .../core-js/library/modules/es6.map.js | 17 - .../core-js/library/modules/es6.math.acosh.js | 14 - .../core-js/library/modules/es6.math.asinh.js | 8 - .../core-js/library/modules/es6.math.atanh.js | 8 - .../core-js/library/modules/es6.math.cbrt.js | 9 - .../core-js/library/modules/es6.math.clz32.js | 8 - .../core-js/library/modules/es6.math.cosh.js | 9 - .../core-js/library/modules/es6.math.expm1.js | 4 - .../core-js/library/modules/es6.math.fround.js | 26 - .../core-js/library/modules/es6.math.hypot.js | 26 - .../core-js/library/modules/es6.math.imul.js | 17 - .../core-js/library/modules/es6.math.log10.js | 8 - .../core-js/library/modules/es6.math.log1p.js | 4 - .../core-js/library/modules/es6.math.log2.js | 8 - .../core-js/library/modules/es6.math.sign.js | 4 - .../core-js/library/modules/es6.math.sinh.js | 15 - .../core-js/library/modules/es6.math.tanh.js | 12 - .../core-js/library/modules/es6.math.trunc.js | 8 - .../library/modules/es6.number.constructor.js | 0 .../core-js/library/modules/es6.number.epsilon.js | 4 - .../library/modules/es6.number.is-finite.js | 9 - .../library/modules/es6.number.is-integer.js | 4 - .../core-js/library/modules/es6.number.is-nan.js | 8 - .../library/modules/es6.number.is-safe-integer.js | 10 - .../library/modules/es6.number.max-safe-integer.js | 4 - .../library/modules/es6.number.min-safe-integer.js | 4 - .../library/modules/es6.number.parse-float.js | 4 - .../library/modules/es6.number.parse-int.js | 4 - .../core-js/library/modules/es6.object.assign.js | 4 - .../core-js/library/modules/es6.object.freeze.js | 8 - .../es6.object.get-own-property-descriptor.js | 8 - .../modules/es6.object.get-own-property-names.js | 4 - .../library/modules/es6.object.get-prototype-of.js | 8 - .../library/modules/es6.object.is-extensible.js | 8 - .../library/modules/es6.object.is-frozen.js | 8 - .../library/modules/es6.object.is-sealed.js | 8 - .../core-js/library/modules/es6.object.is.js | 3 - .../core-js/library/modules/es6.object.keys.js | 8 - .../modules/es6.object.prevent-extensions.js | 8 - .../core-js/library/modules/es6.object.seal.js | 8 - .../library/modules/es6.object.set-prototype-of.js | 3 - .../library/modules/es6.object.to-string.js | 0 .../core-js/library/modules/es6.promise.js | 293 -- .../core-js/library/modules/es6.reflect.apply.js | 10 - .../library/modules/es6.reflect.construct.js | 39 - .../library/modules/es6.reflect.define-property.js | 19 - .../library/modules/es6.reflect.delete-property.js | 11 - .../library/modules/es6.reflect.enumerate.js | 26 - .../es6.reflect.get-own-property-descriptor.js | 10 - .../modules/es6.reflect.get-prototype-of.js | 10 - .../core-js/library/modules/es6.reflect.get.js | 20 - .../core-js/library/modules/es6.reflect.has.js | 8 - .../library/modules/es6.reflect.is-extensible.js | 11 - .../library/modules/es6.reflect.own-keys.js | 4 - .../modules/es6.reflect.prevent-extensions.js | 16 - .../modules/es6.reflect.set-prototype-of.js | 15 - .../core-js/library/modules/es6.reflect.set.js | 29 - .../library/modules/es6.regexp.constructor.js | 1 - .../core-js/library/modules/es6.regexp.flags.js | 0 .../core-js/library/modules/es6.regexp.match.js | 0 .../core-js/library/modules/es6.regexp.replace.js | 0 .../core-js/library/modules/es6.regexp.search.js | 0 .../core-js/library/modules/es6.regexp.split.js | 0 .../core-js/library/modules/es6.set.js | 12 - .../library/modules/es6.string.code-point-at.js | 9 - .../library/modules/es6.string.ends-with.js | 21 - .../library/modules/es6.string.from-code-point.js | 24 - .../core-js/library/modules/es6.string.includes.js | 12 - .../core-js/library/modules/es6.string.iterator.js | 17 - .../core-js/library/modules/es6.string.raw.js | 19 - .../core-js/library/modules/es6.string.repeat.js | 6 - .../library/modules/es6.string.starts-with.js | 19 - .../core-js/library/modules/es6.string.trim.js | 7 - .../core-js/library/modules/es6.symbol.js | 227 - .../library/modules/es6.typed.array-buffer.js | 43 - .../core-js/library/modules/es6.typed.data-view.js | 4 - .../library/modules/es6.typed.float32-array.js | 5 - .../library/modules/es6.typed.float64-array.js | 5 - .../library/modules/es6.typed.int16-array.js | 5 - .../library/modules/es6.typed.int32-array.js | 5 - .../library/modules/es6.typed.int8-array.js | 5 - .../library/modules/es6.typed.uint16-array.js | 5 - .../library/modules/es6.typed.uint32-array.js | 5 - .../library/modules/es6.typed.uint8-array.js | 5 - .../modules/es6.typed.uint8-clamped-array.js | 5 - .../core-js/library/modules/es6.weak-map.js | 43 - .../core-js/library/modules/es6.weak-set.js | 12 - .../core-js/library/modules/es7.array.includes.js | 12 - .../core-js/library/modules/es7.map.to-json.js | 4 - .../core-js/library/modules/es7.object.entries.js | 9 - .../es7.object.get-own-property-descriptors.js | 23 - .../core-js/library/modules/es7.object.values.js | 9 - .../core-js/library/modules/es7.regexp.escape.js | 5 - .../core-js/library/modules/es7.set.to-json.js | 4 - .../core-js/library/modules/es7.string.at.js | 10 - .../core-js/library/modules/es7.string.pad-left.js | 9 - .../library/modules/es7.string.pad-right.js | 9 - .../library/modules/es7.string.trim-left.js | 7 - .../library/modules/es7.string.trim-right.js | 7 - .../core-js/library/modules/js.array.statics.js | 17 - .../core-js/library/modules/web.dom.iterable.js | 3 - .../core-js/library/modules/web.immediate.js | 6 - .../core-js/library/modules/web.timers.js | 20 - .../fbjs/node_modules/core-js/library/shim.js | 104 - .../fbjs/node_modules/core-js/library/web/dom.js | 2 - .../node_modules/core-js/library/web/immediate.js | 2 - .../fbjs/node_modules/core-js/library/web/index.js | 4 - .../node_modules/core-js/library/web/timers.js | 2 - .../node_modules/core-js/modules/$.a-function.js | 4 - .../core-js/modules/$.add-to-unscopables.js | 7 - .../node_modules/core-js/modules/$.an-object.js | 5 - .../core-js/modules/$.array-copy-within.js | 27 - .../node_modules/core-js/modules/$.array-fill.js | 16 - .../core-js/modules/$.array-includes.js | 21 - .../core-js/modules/$.array-methods.js | 43 - .../core-js/modules/$.array-species-create.js | 16 - .../fbjs/node_modules/core-js/modules/$.buffer.js | 288 -- .../fbjs/node_modules/core-js/modules/$.classof.js | 16 - .../fbjs/node_modules/core-js/modules/$.cof.js | 5 - .../core-js/modules/$.collection-strong.js | 159 - .../core-js/modules/$.collection-to-json.js | 11 - .../core-js/modules/$.collection-weak.js | 86 - .../node_modules/core-js/modules/$.collection.js | 79 - .../fbjs/node_modules/core-js/modules/$.core.js | 2 - .../fbjs/node_modules/core-js/modules/$.ctx.js | 20 - .../fbjs/node_modules/core-js/modules/$.defined.js | 5 - .../node_modules/core-js/modules/$.descriptors.js | 4 - .../node_modules/core-js/modules/$.dom-create.js | 7 - .../node_modules/core-js/modules/$.enum-keys.js | 14 - .../fbjs/node_modules/core-js/modules/$.export.js | 41 - .../core-js/modules/$.fails-is-regexp.js | 12 - .../fbjs/node_modules/core-js/modules/$.fails.js | 7 - .../node_modules/core-js/modules/$.fix-re-wks.js | 26 - .../fbjs/node_modules/core-js/modules/$.flags.js | 13 - .../fbjs/node_modules/core-js/modules/$.for-of.js | 19 - .../node_modules/core-js/modules/$.get-names.js | 20 - .../fbjs/node_modules/core-js/modules/$.global.js | 4 - .../fbjs/node_modules/core-js/modules/$.has.js | 4 - .../fbjs/node_modules/core-js/modules/$.hide.js | 8 - .../fbjs/node_modules/core-js/modules/$.html.js | 1 - .../fbjs/node_modules/core-js/modules/$.invoke.js | 16 - .../fbjs/node_modules/core-js/modules/$.iobject.js | 5 - .../core-js/modules/$.is-array-iter.js | 8 - .../node_modules/core-js/modules/$.is-array.js | 5 - .../node_modules/core-js/modules/$.is-integer.js | 6 - .../node_modules/core-js/modules/$.is-object.js | 3 - .../node_modules/core-js/modules/$.is-regexp.js | 8 - .../node_modules/core-js/modules/$.iter-call.js | 12 - .../node_modules/core-js/modules/$.iter-create.js | 13 - .../node_modules/core-js/modules/$.iter-define.js | 66 - .../node_modules/core-js/modules/$.iter-detect.js | 21 - .../node_modules/core-js/modules/$.iter-step.js | 3 - .../node_modules/core-js/modules/$.iterators.js | 1 - .../fbjs/node_modules/core-js/modules/$.js | 13 - .../fbjs/node_modules/core-js/modules/$.keyof.js | 10 - .../fbjs/node_modules/core-js/modules/$.library.js | 1 - .../node_modules/core-js/modules/$.math-expm1.js | 4 - .../node_modules/core-js/modules/$.math-log1p.js | 4 - .../node_modules/core-js/modules/$.math-sign.js | 4 - .../node_modules/core-js/modules/$.microtask.js | 64 - .../core-js/modules/$.object-assign.js | 33 - .../core-js/modules/$.object-define.js | 11 - .../node_modules/core-js/modules/$.object-sap.js | 10 - .../core-js/modules/$.object-to-array.js | 16 - .../node_modules/core-js/modules/$.own-keys.js | 9 - .../fbjs/node_modules/core-js/modules/$.partial.js | 24 - .../fbjs/node_modules/core-js/modules/$.path.js | 1 - .../core-js/modules/$.property-desc.js | 8 - .../node_modules/core-js/modules/$.redefine-all.js | 5 - .../node_modules/core-js/modules/$.redefine.js | 27 - .../node_modules/core-js/modules/$.replacer.js | 8 - .../node_modules/core-js/modules/$.same-value.js | 4 - .../node_modules/core-js/modules/$.set-proto.js | 26 - .../node_modules/core-js/modules/$.set-species.js | 13 - .../core-js/modules/$.set-to-string-tag.js | 7 - .../fbjs/node_modules/core-js/modules/$.shared.js | 6 - .../core-js/modules/$.species-constructor.js | 8 - .../node_modules/core-js/modules/$.strict-new.js | 4 - .../node_modules/core-js/modules/$.string-at.js | 17 - .../core-js/modules/$.string-context.js | 8 - .../node_modules/core-js/modules/$.string-pad.js | 17 - .../core-js/modules/$.string-repeat.js | 12 - .../node_modules/core-js/modules/$.string-trim.js | 29 - .../fbjs/node_modules/core-js/modules/$.task.js | 75 - .../node_modules/core-js/modules/$.to-index.js | 7 - .../node_modules/core-js/modules/$.to-integer.js | 6 - .../node_modules/core-js/modules/$.to-iobject.js | 6 - .../node_modules/core-js/modules/$.to-length.js | 6 - .../node_modules/core-js/modules/$.to-object.js | 5 - .../node_modules/core-js/modules/$.to-primitive.js | 12 - .../node_modules/core-js/modules/$.typed-array.js | 365 -- .../fbjs/node_modules/core-js/modules/$.typed.js | 36 - .../fbjs/node_modules/core-js/modules/$.uid.js | 5 - .../fbjs/node_modules/core-js/modules/$.wks.js | 7 - .../node_modules/core-js/modules/core.delay.js | 12 - .../fbjs/node_modules/core-js/modules/core.dict.js | 153 - .../core-js/modules/core.function.part.js | 7 - .../core-js/modules/core.get-iterator-method.js | 8 - .../core-js/modules/core.get-iterator.js | 7 - .../core-js/modules/core.is-iterable.js | 9 - .../fbjs/node_modules/core-js/modules/core.log.js | 26 - .../core-js/modules/core.number.iterator.js | 9 - .../core-js/modules/core.object.classof.js | 3 - .../core-js/modules/core.object.define.js | 4 - .../core-js/modules/core.object.is-object.js | 3 - .../core-js/modules/core.object.make.js | 9 - .../core-js/modules/core.string.escape-html.js | 11 - .../core-js/modules/core.string.unescape-html.js | 11 - .../fbjs/node_modules/core-js/modules/es5.js | 276 -- .../core-js/modules/es6.array.copy-within.js | 6 - .../node_modules/core-js/modules/es6.array.fill.js | 6 - .../core-js/modules/es6.array.find-index.js | 14 - .../node_modules/core-js/modules/es6.array.find.js | 14 - .../node_modules/core-js/modules/es6.array.from.js | 36 - .../core-js/modules/es6.array.iterator.js | 34 - .../node_modules/core-js/modules/es6.array.of.js | 19 - .../core-js/modules/es6.array.species.js | 1 - .../core-js/modules/es6.date.to-string.js | 10 - .../core-js/modules/es6.function.has-instance.js | 13 - .../core-js/modules/es6.function.name.js | 16 - .../fbjs/node_modules/core-js/modules/es6.map.js | 17 - .../node_modules/core-js/modules/es6.math.acosh.js | 14 - .../node_modules/core-js/modules/es6.math.asinh.js | 8 - .../node_modules/core-js/modules/es6.math.atanh.js | 8 - .../node_modules/core-js/modules/es6.math.cbrt.js | 9 - .../node_modules/core-js/modules/es6.math.clz32.js | 8 - .../node_modules/core-js/modules/es6.math.cosh.js | 9 - .../node_modules/core-js/modules/es6.math.expm1.js | 4 - .../core-js/modules/es6.math.fround.js | 26 - .../node_modules/core-js/modules/es6.math.hypot.js | 26 - .../node_modules/core-js/modules/es6.math.imul.js | 17 - .../node_modules/core-js/modules/es6.math.log10.js | 8 - .../node_modules/core-js/modules/es6.math.log1p.js | 4 - .../node_modules/core-js/modules/es6.math.log2.js | 8 - .../node_modules/core-js/modules/es6.math.sign.js | 4 - .../node_modules/core-js/modules/es6.math.sinh.js | 15 - .../node_modules/core-js/modules/es6.math.tanh.js | 12 - .../node_modules/core-js/modules/es6.math.trunc.js | 8 - .../core-js/modules/es6.number.constructor.js | 66 - .../core-js/modules/es6.number.epsilon.js | 4 - .../core-js/modules/es6.number.is-finite.js | 9 - .../core-js/modules/es6.number.is-integer.js | 4 - .../core-js/modules/es6.number.is-nan.js | 8 - .../core-js/modules/es6.number.is-safe-integer.js | 10 - .../core-js/modules/es6.number.max-safe-integer.js | 4 - .../core-js/modules/es6.number.min-safe-integer.js | 4 - .../core-js/modules/es6.number.parse-float.js | 4 - .../core-js/modules/es6.number.parse-int.js | 4 - .../core-js/modules/es6.object.assign.js | 4 - .../core-js/modules/es6.object.freeze.js | 8 - .../es6.object.get-own-property-descriptor.js | 8 - .../modules/es6.object.get-own-property-names.js | 4 - .../core-js/modules/es6.object.get-prototype-of.js | 8 - .../core-js/modules/es6.object.is-extensible.js | 8 - .../core-js/modules/es6.object.is-frozen.js | 8 - .../core-js/modules/es6.object.is-sealed.js | 8 - .../node_modules/core-js/modules/es6.object.is.js | 3 - .../core-js/modules/es6.object.keys.js | 8 - .../modules/es6.object.prevent-extensions.js | 8 - .../core-js/modules/es6.object.seal.js | 8 - .../core-js/modules/es6.object.set-prototype-of.js | 3 - .../core-js/modules/es6.object.to-string.js | 10 - .../node_modules/core-js/modules/es6.promise.js | 293 -- .../core-js/modules/es6.reflect.apply.js | 10 - .../core-js/modules/es6.reflect.construct.js | 39 - .../core-js/modules/es6.reflect.define-property.js | 19 - .../core-js/modules/es6.reflect.delete-property.js | 11 - .../core-js/modules/es6.reflect.enumerate.js | 26 - .../es6.reflect.get-own-property-descriptor.js | 10 - .../modules/es6.reflect.get-prototype-of.js | 10 - .../core-js/modules/es6.reflect.get.js | 20 - .../core-js/modules/es6.reflect.has.js | 8 - .../core-js/modules/es6.reflect.is-extensible.js | 11 - .../core-js/modules/es6.reflect.own-keys.js | 4 - .../modules/es6.reflect.prevent-extensions.js | 16 - .../modules/es6.reflect.set-prototype-of.js | 15 - .../core-js/modules/es6.reflect.set.js | 29 - .../core-js/modules/es6.regexp.constructor.js | 38 - .../core-js/modules/es6.regexp.flags.js | 6 - .../core-js/modules/es6.regexp.match.js | 10 - .../core-js/modules/es6.regexp.replace.js | 12 - .../core-js/modules/es6.regexp.search.js | 10 - .../core-js/modules/es6.regexp.split.js | 12 - .../fbjs/node_modules/core-js/modules/es6.set.js | 12 - .../core-js/modules/es6.string.code-point-at.js | 9 - .../core-js/modules/es6.string.ends-with.js | 21 - .../core-js/modules/es6.string.from-code-point.js | 24 - .../core-js/modules/es6.string.includes.js | 12 - .../core-js/modules/es6.string.iterator.js | 17 - .../node_modules/core-js/modules/es6.string.raw.js | 19 - .../core-js/modules/es6.string.repeat.js | 6 - .../core-js/modules/es6.string.starts-with.js | 19 - .../core-js/modules/es6.string.trim.js | 7 - .../node_modules/core-js/modules/es6.symbol.js | 227 - .../core-js/modules/es6.typed.array-buffer.js | 43 - .../core-js/modules/es6.typed.data-view.js | 4 - .../core-js/modules/es6.typed.float32-array.js | 5 - .../core-js/modules/es6.typed.float64-array.js | 5 - .../core-js/modules/es6.typed.int16-array.js | 5 - .../core-js/modules/es6.typed.int32-array.js | 5 - .../core-js/modules/es6.typed.int8-array.js | 5 - .../core-js/modules/es6.typed.uint16-array.js | 5 - .../core-js/modules/es6.typed.uint32-array.js | 5 - .../core-js/modules/es6.typed.uint8-array.js | 5 - .../modules/es6.typed.uint8-clamped-array.js | 5 - .../node_modules/core-js/modules/es6.weak-map.js | 43 - .../node_modules/core-js/modules/es6.weak-set.js | 12 - .../core-js/modules/es7.array.includes.js | 12 - .../core-js/modules/es7.map.to-json.js | 4 - .../core-js/modules/es7.object.entries.js | 9 - .../es7.object.get-own-property-descriptors.js | 23 - .../core-js/modules/es7.object.values.js | 9 - .../core-js/modules/es7.regexp.escape.js | 5 - .../core-js/modules/es7.set.to-json.js | 4 - .../node_modules/core-js/modules/es7.string.at.js | 10 - .../core-js/modules/es7.string.pad-left.js | 9 - .../core-js/modules/es7.string.pad-right.js | 9 - .../core-js/modules/es7.string.trim-left.js | 7 - .../core-js/modules/es7.string.trim-right.js | 7 - .../core-js/modules/js.array.statics.js | 17 - .../modules/library/$.add-to-unscopables.js | 1 - .../core-js/modules/library/$.collection.js | 55 - .../core-js/modules/library/$.export.js | 46 - .../core-js/modules/library/$.library.js | 1 - .../node_modules/core-js/modules/library/$.path.js | 1 - .../core-js/modules/library/$.redefine.js | 1 - .../core-js/modules/library/$.set-species.js | 13 - .../core-js/modules/library/es6.date.to-string.js | 0 .../core-js/modules/library/es6.function.name.js | 0 .../modules/library/es6.number.constructor.js | 0 .../modules/library/es6.object.to-string.js | 0 .../modules/library/es6.regexp.constructor.js | 1 - .../core-js/modules/library/es6.regexp.flags.js | 0 .../core-js/modules/library/es6.regexp.match.js | 0 .../core-js/modules/library/es6.regexp.replace.js | 0 .../core-js/modules/library/es6.regexp.search.js | 0 .../core-js/modules/library/es6.regexp.split.js | 0 .../core-js/modules/library/web.dom.iterable.js | 3 - .../core-js/modules/web.dom.iterable.js | 12 - .../node_modules/core-js/modules/web.immediate.js | 6 - .../node_modules/core-js/modules/web.timers.js | 20 - .../fbjs/node_modules/core-js/package.json | 59 - node_modules/fbjs/node_modules/core-js/shim.js | 104 - node_modules/fbjs/node_modules/core-js/web/dom.js | 2 - .../fbjs/node_modules/core-js/web/immediate.js | 2 - .../fbjs/node_modules/core-js/web/index.js | 4 - .../fbjs/node_modules/core-js/web/timers.js | 2 - node_modules/fbjs/node_modules/promise/.jshintrc | 5 - node_modules/fbjs/node_modules/promise/.npmignore | 7 - node_modules/fbjs/node_modules/promise/LICENSE | 19 - node_modules/fbjs/node_modules/promise/Readme.md | 231 - node_modules/fbjs/node_modules/promise/build.js | 69 - node_modules/fbjs/node_modules/promise/core.js | 5 - .../fbjs/node_modules/promise/domains/core.js | 213 - .../fbjs/node_modules/promise/domains/done.js | 13 - .../node_modules/promise/domains/es6-extensions.js | 107 - .../fbjs/node_modules/promise/domains/finally.js | 16 - .../fbjs/node_modules/promise/domains/index.js | 8 - .../promise/domains/node-extensions.js | 130 - .../promise/domains/rejection-tracking.js | 113 - .../node_modules/promise/domains/synchronous.js | 62 - node_modules/fbjs/node_modules/promise/index.d.ts | 256 - node_modules/fbjs/node_modules/promise/index.js | 3 - node_modules/fbjs/node_modules/promise/lib/core.js | 213 - node_modules/fbjs/node_modules/promise/lib/done.js | 13 - .../node_modules/promise/lib/es6-extensions.js | 107 - .../fbjs/node_modules/promise/lib/finally.js | 16 - .../fbjs/node_modules/promise/lib/index.js | 8 - .../node_modules/promise/lib/node-extensions.js | 130 - .../node_modules/promise/lib/rejection-tracking.js | 113 - .../fbjs/node_modules/promise/lib/synchronous.js | 62 - .../fbjs/node_modules/promise/package.json | 35 - .../fbjs/node_modules/promise/polyfill-done.js | 12 - node_modules/fbjs/node_modules/promise/polyfill.js | 10 - .../fbjs/node_modules/promise/setimmediate/core.js | 213 - .../fbjs/node_modules/promise/setimmediate/done.js | 13 - .../promise/setimmediate/es6-extensions.js | 107 - .../node_modules/promise/setimmediate/finally.js | 16 - .../node_modules/promise/setimmediate/index.js | 8 - .../promise/setimmediate/node-extensions.js | 130 - .../promise/setimmediate/rejection-tracking.js | 113 - .../promise/setimmediate/synchronous.js | 62 - node_modules/fbjs/node_modules/promise/src/core.js | 213 - node_modules/fbjs/node_modules/promise/src/done.js | 13 - .../node_modules/promise/src/es6-extensions.js | 107 - .../fbjs/node_modules/promise/src/finally.js | 16 - .../fbjs/node_modules/promise/src/index.js | 8 - .../node_modules/promise/src/node-extensions.js | 130 - .../node_modules/promise/src/rejection-tracking.js | 113 - .../fbjs/node_modules/promise/src/synchronous.js | 62 - node_modules/fbjs/package.json | 80 - 1115 files changed, 40985 deletions(-) delete mode 100644 node_modules/fbjs/CHANGELOG.md delete mode 100644 node_modules/fbjs/LICENSE delete mode 100644 node_modules/fbjs/README.md delete mode 100644 node_modules/fbjs/flow/lib/dev.js delete mode 100644 node_modules/fbjs/index.js delete mode 100644 node_modules/fbjs/lib/CSSCore.js delete mode 100644 node_modules/fbjs/lib/CSSCore.js.flow delete mode 100644 node_modules/fbjs/lib/DataTransfer.js delete mode 100644 node_modules/fbjs/lib/DataTransfer.js.flow delete mode 100644 node_modules/fbjs/lib/Deferred.js delete mode 100644 node_modules/fbjs/lib/Deferred.js.flow delete mode 100644 node_modules/fbjs/lib/ErrorUtils.js delete mode 100644 node_modules/fbjs/lib/ErrorUtils.js.flow delete mode 100644 node_modules/fbjs/lib/EventListener.js delete mode 100644 node_modules/fbjs/lib/EventListener.js.flow delete mode 100644 node_modules/fbjs/lib/ExecutionEnvironment.js delete mode 100644 node_modules/fbjs/lib/ExecutionEnvironment.js.flow delete mode 100644 node_modules/fbjs/lib/Keys.js delete mode 100644 node_modules/fbjs/lib/Keys.js.flow delete mode 100644 node_modules/fbjs/lib/Map.js delete mode 100644 node_modules/fbjs/lib/Map.js.flow delete mode 100644 node_modules/fbjs/lib/PhotosMimeType.js delete mode 100644 node_modules/fbjs/lib/PhotosMimeType.js.flow delete mode 100644 node_modules/fbjs/lib/Promise.js delete mode 100644 node_modules/fbjs/lib/Promise.js.flow delete mode 100644 node_modules/fbjs/lib/Promise.native.js delete mode 100644 node_modules/fbjs/lib/Promise.native.js.flow delete mode 100644 node_modules/fbjs/lib/PromiseMap.js delete mode 100644 node_modules/fbjs/lib/PromiseMap.js.flow delete mode 100644 node_modules/fbjs/lib/Scroll.js delete mode 100644 node_modules/fbjs/lib/Scroll.js.flow delete mode 100644 node_modules/fbjs/lib/Set.js delete mode 100644 node_modules/fbjs/lib/Set.js.flow delete mode 100644 node_modules/fbjs/lib/Style.js delete mode 100644 node_modules/fbjs/lib/Style.js.flow delete mode 100644 node_modules/fbjs/lib/TokenizeUtil.js delete mode 100644 node_modules/fbjs/lib/TokenizeUtil.js.flow delete mode 100644 node_modules/fbjs/lib/TouchEventUtils.js delete mode 100644 node_modules/fbjs/lib/TouchEventUtils.js.flow delete mode 100644 node_modules/fbjs/lib/URI.js delete mode 100644 node_modules/fbjs/lib/URI.js.flow delete mode 100644 node_modules/fbjs/lib/UnicodeBidi.js delete mode 100644 node_modules/fbjs/lib/UnicodeBidi.js.flow delete mode 100644 node_modules/fbjs/lib/UnicodeBidiDirection.js delete mode 100644 node_modules/fbjs/lib/UnicodeBidiDirection.js.flow delete mode 100644 node_modules/fbjs/lib/UnicodeBidiService.js delete mode 100644 node_modules/fbjs/lib/UnicodeBidiService.js.flow delete mode 100644 node_modules/fbjs/lib/UnicodeCJK.js delete mode 100644 node_modules/fbjs/lib/UnicodeCJK.js.flow delete mode 100644 node_modules/fbjs/lib/UnicodeHangulKorean.js delete mode 100644 node_modules/fbjs/lib/UnicodeHangulKorean.js.flow delete mode 100644 node_modules/fbjs/lib/UnicodeUtils.js delete mode 100644 node_modules/fbjs/lib/UnicodeUtils.js.flow delete mode 100644 node_modules/fbjs/lib/UnicodeUtilsExtra.js delete mode 100644 node_modules/fbjs/lib/UnicodeUtilsExtra.js.flow delete mode 100644 node_modules/fbjs/lib/UserAgent.js delete mode 100644 node_modules/fbjs/lib/UserAgent.js.flow delete mode 100644 node_modules/fbjs/lib/UserAgentData.js delete mode 100644 node_modules/fbjs/lib/UserAgentData.js.flow delete mode 100644 node_modules/fbjs/lib/VersionRange.js delete mode 100644 node_modules/fbjs/lib/VersionRange.js.flow delete mode 100644 node_modules/fbjs/lib/__mocks__/ErrorUtils.js delete mode 100644 node_modules/fbjs/lib/__mocks__/base62.js delete mode 100644 node_modules/fbjs/lib/__mocks__/crc32.js delete mode 100644 node_modules/fbjs/lib/__mocks__/fetch.js delete mode 100644 node_modules/fbjs/lib/__mocks__/fetchWithRetries.js delete mode 100644 node_modules/fbjs/lib/__mocks__/nullthrows.js delete mode 100644 node_modules/fbjs/lib/_shouldPolyfillES6Collection.js delete mode 100644 node_modules/fbjs/lib/_shouldPolyfillES6Collection.js.flow delete mode 100644 node_modules/fbjs/lib/areEqual.js delete mode 100644 node_modules/fbjs/lib/areEqual.js.flow delete mode 100644 node_modules/fbjs/lib/base62.js delete mode 100644 node_modules/fbjs/lib/base62.js.flow delete mode 100644 node_modules/fbjs/lib/camelize.js delete mode 100644 node_modules/fbjs/lib/camelize.js.flow delete mode 100644 node_modules/fbjs/lib/camelizeStyleName.js delete mode 100644 node_modules/fbjs/lib/camelizeStyleName.js.flow delete mode 100644 node_modules/fbjs/lib/compactArray.js delete mode 100644 node_modules/fbjs/lib/compactArray.js.flow delete mode 100644 node_modules/fbjs/lib/concatAllArray.js delete mode 100644 node_modules/fbjs/lib/concatAllArray.js.flow delete mode 100644 node_modules/fbjs/lib/containsNode.js delete mode 100644 node_modules/fbjs/lib/containsNode.js.flow delete mode 100644 node_modules/fbjs/lib/countDistinct.js delete mode 100644 node_modules/fbjs/lib/countDistinct.js.flow delete mode 100644 node_modules/fbjs/lib/crc32.js delete mode 100644 node_modules/fbjs/lib/crc32.js.flow delete mode 100644 node_modules/fbjs/lib/createArrayFromMixed.js delete mode 100644 node_modules/fbjs/lib/createArrayFromMixed.js.flow delete mode 100644 node_modules/fbjs/lib/createNodesFromMarkup.js delete mode 100644 node_modules/fbjs/lib/createNodesFromMarkup.js.flow delete mode 100644 node_modules/fbjs/lib/cx.js delete mode 100644 node_modules/fbjs/lib/cx.js.flow delete mode 100644 node_modules/fbjs/lib/distinctArray.js delete mode 100644 node_modules/fbjs/lib/distinctArray.js.flow delete mode 100644 node_modules/fbjs/lib/emptyFunction.js delete mode 100644 node_modules/fbjs/lib/emptyFunction.js.flow delete mode 100644 node_modules/fbjs/lib/emptyObject.js delete mode 100644 node_modules/fbjs/lib/emptyObject.js.flow delete mode 100644 node_modules/fbjs/lib/enumerate.js delete mode 100644 node_modules/fbjs/lib/enumerate.js.flow delete mode 100644 node_modules/fbjs/lib/equalsIterable.js delete mode 100644 node_modules/fbjs/lib/equalsIterable.js.flow delete mode 100644 node_modules/fbjs/lib/equalsSet.js delete mode 100644 node_modules/fbjs/lib/equalsSet.js.flow delete mode 100644 node_modules/fbjs/lib/everyObject.js delete mode 100644 node_modules/fbjs/lib/everyObject.js.flow delete mode 100644 node_modules/fbjs/lib/everySet.js delete mode 100644 node_modules/fbjs/lib/everySet.js.flow delete mode 100644 node_modules/fbjs/lib/fetch.js delete mode 100644 node_modules/fbjs/lib/fetch.js.flow delete mode 100644 node_modules/fbjs/lib/fetchWithRetries.js delete mode 100644 node_modules/fbjs/lib/fetchWithRetries.js.flow delete mode 100644 node_modules/fbjs/lib/filterObject.js delete mode 100644 node_modules/fbjs/lib/filterObject.js.flow delete mode 100644 node_modules/fbjs/lib/flatMapArray.js delete mode 100644 node_modules/fbjs/lib/flatMapArray.js.flow delete mode 100644 node_modules/fbjs/lib/flattenArray.js delete mode 100644 node_modules/fbjs/lib/flattenArray.js.flow delete mode 100644 node_modules/fbjs/lib/focusNode.js delete mode 100644 node_modules/fbjs/lib/focusNode.js.flow delete mode 100644 node_modules/fbjs/lib/forEachObject.js delete mode 100644 node_modules/fbjs/lib/forEachObject.js.flow delete mode 100644 node_modules/fbjs/lib/getActiveElement.js delete mode 100644 node_modules/fbjs/lib/getActiveElement.js.flow delete mode 100644 node_modules/fbjs/lib/getDocumentScrollElement.js delete mode 100644 node_modules/fbjs/lib/getDocumentScrollElement.js.flow delete mode 100644 node_modules/fbjs/lib/getElementPosition.js delete mode 100644 node_modules/fbjs/lib/getElementPosition.js.flow delete mode 100644 node_modules/fbjs/lib/getElementRect.js delete mode 100644 node_modules/fbjs/lib/getElementRect.js.flow delete mode 100644 node_modules/fbjs/lib/getMarkupWrap.js delete mode 100644 node_modules/fbjs/lib/getMarkupWrap.js.flow delete mode 100644 node_modules/fbjs/lib/getScrollPosition.js delete mode 100644 node_modules/fbjs/lib/getScrollPosition.js.flow delete mode 100644 node_modules/fbjs/lib/getStyleProperty.js delete mode 100644 node_modules/fbjs/lib/getStyleProperty.js.flow delete mode 100644 node_modules/fbjs/lib/getUnboundedScrollPosition.js delete mode 100644 node_modules/fbjs/lib/getUnboundedScrollPosition.js.flow delete mode 100644 node_modules/fbjs/lib/getViewportDimensions.js delete mode 100644 node_modules/fbjs/lib/getViewportDimensions.js.flow delete mode 100644 node_modules/fbjs/lib/groupArray.js delete mode 100644 node_modules/fbjs/lib/groupArray.js.flow delete mode 100644 node_modules/fbjs/lib/hyphenate.js delete mode 100644 node_modules/fbjs/lib/hyphenate.js.flow delete mode 100644 node_modules/fbjs/lib/hyphenateStyleName.js delete mode 100644 node_modules/fbjs/lib/hyphenateStyleName.js.flow delete mode 100644 node_modules/fbjs/lib/invariant.js delete mode 100644 node_modules/fbjs/lib/invariant.js.flow delete mode 100644 node_modules/fbjs/lib/isEmpty.js delete mode 100644 node_modules/fbjs/lib/isEmpty.js.flow delete mode 100644 node_modules/fbjs/lib/isNode.js delete mode 100644 node_modules/fbjs/lib/isNode.js.flow delete mode 100644 node_modules/fbjs/lib/isTextNode.js delete mode 100644 node_modules/fbjs/lib/isTextNode.js.flow delete mode 100644 node_modules/fbjs/lib/joinClasses.js delete mode 100644 node_modules/fbjs/lib/joinClasses.js.flow delete mode 100644 node_modules/fbjs/lib/keyMirror.js delete mode 100644 node_modules/fbjs/lib/keyMirror.js.flow delete mode 100644 node_modules/fbjs/lib/keyMirrorRecursive.js delete mode 100644 node_modules/fbjs/lib/keyMirrorRecursive.js.flow delete mode 100644 node_modules/fbjs/lib/keyOf.js delete mode 100644 node_modules/fbjs/lib/keyOf.js.flow delete mode 100644 node_modules/fbjs/lib/mapObject.js delete mode 100644 node_modules/fbjs/lib/mapObject.js.flow delete mode 100644 node_modules/fbjs/lib/maxBy.js delete mode 100644 node_modules/fbjs/lib/maxBy.js.flow delete mode 100644 node_modules/fbjs/lib/memoizeStringOnly.js delete mode 100644 node_modules/fbjs/lib/memoizeStringOnly.js.flow delete mode 100644 node_modules/fbjs/lib/minBy.js delete mode 100644 node_modules/fbjs/lib/minBy.js.flow delete mode 100644 node_modules/fbjs/lib/monitorCodeUse.js delete mode 100644 node_modules/fbjs/lib/monitorCodeUse.js.flow delete mode 100644 node_modules/fbjs/lib/nativeRequestAnimationFrame.js delete mode 100644 node_modules/fbjs/lib/nativeRequestAnimationFrame.js.flow delete mode 100644 node_modules/fbjs/lib/nullthrows.js delete mode 100644 node_modules/fbjs/lib/nullthrows.js.flow delete mode 100644 node_modules/fbjs/lib/partitionArray.js delete mode 100644 node_modules/fbjs/lib/partitionArray.js.flow delete mode 100644 node_modules/fbjs/lib/partitionObject.js delete mode 100644 node_modules/fbjs/lib/partitionObject.js.flow delete mode 100644 node_modules/fbjs/lib/partitionObjectByKey.js delete mode 100644 node_modules/fbjs/lib/partitionObjectByKey.js.flow delete mode 100644 node_modules/fbjs/lib/performance.js delete mode 100644 node_modules/fbjs/lib/performance.js.flow delete mode 100644 node_modules/fbjs/lib/performanceNow.js delete mode 100644 node_modules/fbjs/lib/performanceNow.js.flow delete mode 100644 node_modules/fbjs/lib/removeFromArray.js delete mode 100644 node_modules/fbjs/lib/removeFromArray.js.flow delete mode 100644 node_modules/fbjs/lib/requestAnimationFrame.js delete mode 100644 node_modules/fbjs/lib/requestAnimationFrame.js.flow delete mode 100644 node_modules/fbjs/lib/resolveImmediate.js delete mode 100644 node_modules/fbjs/lib/resolveImmediate.js.flow delete mode 100644 node_modules/fbjs/lib/setImmediate.js delete mode 100644 node_modules/fbjs/lib/setImmediate.js.flow delete mode 100644 node_modules/fbjs/lib/shallowEqual.js delete mode 100644 node_modules/fbjs/lib/shallowEqual.js.flow delete mode 100644 node_modules/fbjs/lib/someObject.js delete mode 100644 node_modules/fbjs/lib/someObject.js.flow delete mode 100644 node_modules/fbjs/lib/someSet.js delete mode 100644 node_modules/fbjs/lib/someSet.js.flow delete mode 100644 node_modules/fbjs/lib/sprintf.js delete mode 100644 node_modules/fbjs/lib/sprintf.js.flow delete mode 100644 node_modules/fbjs/lib/warning.js delete mode 100644 node_modules/fbjs/lib/warning.js.flow delete mode 100644 node_modules/fbjs/lib/xhrSimpleDataSerializer.js delete mode 100644 node_modules/fbjs/lib/xhrSimpleDataSerializer.js.flow delete mode 100644 node_modules/fbjs/module-map.json delete mode 120000 node_modules/fbjs/node_modules/.bin/loose-envify delete mode 100644 node_modules/fbjs/node_modules/core-js/CHANGELOG.md delete mode 100644 node_modules/fbjs/node_modules/core-js/Gruntfile.js delete mode 100644 node_modules/fbjs/node_modules/core-js/LICENSE delete mode 100644 node_modules/fbjs/node_modules/core-js/bower.json delete mode 100644 node_modules/fbjs/node_modules/core-js/build/Gruntfile.ls delete mode 100644 node_modules/fbjs/node_modules/core-js/build/build.ls delete mode 100644 node_modules/fbjs/node_modules/core-js/build/config.js delete mode 100644 node_modules/fbjs/node_modules/core-js/build/index.js delete mode 100644 node_modules/fbjs/node_modules/core-js/client/core.js delete mode 100644 node_modules/fbjs/node_modules/core-js/client/core.min.js delete mode 100644 node_modules/fbjs/node_modules/core-js/client/core.min.js.map delete mode 100644 node_modules/fbjs/node_modules/core-js/client/library.js delete mode 100644 node_modules/fbjs/node_modules/core-js/client/library.min.js delete mode 100644 node_modules/fbjs/node_modules/core-js/client/library.min.js.map delete mode 100644 node_modules/fbjs/node_modules/core-js/client/shim.js delete mode 100644 node_modules/fbjs/node_modules/core-js/client/shim.min.js delete mode 100644 node_modules/fbjs/node_modules/core-js/client/shim.min.js.map delete mode 100644 node_modules/fbjs/node_modules/core-js/core/_.js delete mode 100644 node_modules/fbjs/node_modules/core-js/core/delay.js delete mode 100644 node_modules/fbjs/node_modules/core-js/core/dict.js delete mode 100644 node_modules/fbjs/node_modules/core-js/core/function.js delete mode 100644 node_modules/fbjs/node_modules/core-js/core/index.js delete mode 100644 node_modules/fbjs/node_modules/core-js/core/log.js delete mode 100644 node_modules/fbjs/node_modules/core-js/core/number.js delete mode 100644 node_modules/fbjs/node_modules/core-js/core/object.js delete mode 100644 node_modules/fbjs/node_modules/core-js/core/string.js delete mode 100644 node_modules/fbjs/node_modules/core-js/es5/index.js delete mode 100644 node_modules/fbjs/node_modules/core-js/es6/array.js delete mode 100644 node_modules/fbjs/node_modules/core-js/es6/function.js delete mode 100644 node_modules/fbjs/node_modules/core-js/es6/index.js delete mode 100644 node_modules/fbjs/node_modules/core-js/es6/map.js delete mode 100644 node_modules/fbjs/node_modules/core-js/es6/math.js delete mode 100644 node_modules/fbjs/node_modules/core-js/es6/number.js delete mode 100644 node_modules/fbjs/node_modules/core-js/es6/object.js delete mode 100644 node_modules/fbjs/node_modules/core-js/es6/promise.js delete mode 100644 node_modules/fbjs/node_modules/core-js/es6/reflect.js delete mode 100644 node_modules/fbjs/node_modules/core-js/es6/regexp.js delete mode 100644 node_modules/fbjs/node_modules/core-js/es6/set.js delete mode 100644 node_modules/fbjs/node_modules/core-js/es6/string.js delete mode 100644 node_modules/fbjs/node_modules/core-js/es6/symbol.js delete mode 100644 node_modules/fbjs/node_modules/core-js/es6/weak-map.js delete mode 100644 node_modules/fbjs/node_modules/core-js/es6/weak-set.js delete mode 100644 node_modules/fbjs/node_modules/core-js/es7/array.js delete mode 100644 node_modules/fbjs/node_modules/core-js/es7/index.js delete mode 100644 node_modules/fbjs/node_modules/core-js/es7/map.js delete mode 100644 node_modules/fbjs/node_modules/core-js/es7/object.js delete mode 100644 node_modules/fbjs/node_modules/core-js/es7/regexp.js delete mode 100644 node_modules/fbjs/node_modules/core-js/es7/set.js delete mode 100644 node_modules/fbjs/node_modules/core-js/es7/string.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/_.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/array/concat.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/array/copy-within.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/array/entries.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/array/every.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/array/fill.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/array/filter.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/array/find-index.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/array/find.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/array/for-each.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/array/from.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/array/includes.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/array/index-of.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/array/index.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/array/iterator.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/array/join.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/array/keys.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/array/last-index-of.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/array/map.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/array/of.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/array/pop.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/array/push.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/array/reduce-right.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/array/reduce.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/array/reverse.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/array/shift.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/array/slice.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/array/some.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/array/sort.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/array/splice.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/array/unshift.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/array/values.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/clear-immediate.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/delay.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/dict.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/function/has-instance.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/function/index.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/function/name.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/function/part.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/get-iterator-method.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/get-iterator.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/html-collection/index.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/html-collection/iterator.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/is-iterable.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/json/stringify.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/log.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/map.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/math/acosh.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/math/asinh.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/math/atanh.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/math/cbrt.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/math/clz32.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/math/cosh.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/math/expm1.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/math/fround.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/math/hypot.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/math/imul.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/math/index.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/math/log10.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/math/log1p.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/math/log2.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/math/sign.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/math/sinh.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/math/tanh.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/math/trunc.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/node-list/index.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/node-list/iterator.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/number/epsilon.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/number/index.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/number/is-finite.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/number/is-integer.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/number/is-nan.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/number/is-safe-integer.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/number/iterator.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/number/max-safe-integer.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/number/min-safe-integer.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/number/parse-float.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/number/parse-int.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/object/assign.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/object/classof.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/object/create.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/object/define-properties.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/object/define-property.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/object/define.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/object/entries.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/object/freeze.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/object/get-own-property-descriptor.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/object/get-own-property-descriptors.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/object/get-own-property-names.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/object/get-own-property-symbols.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/object/get-prototype-of.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/object/index.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/object/is-extensible.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/object/is-frozen.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/object/is-object.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/object/is-sealed.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/object/is.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/object/keys.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/object/make.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/object/prevent-extensions.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/object/seal.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/object/set-prototype-of.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/object/values.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/promise.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/reflect/apply.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/reflect/construct.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/reflect/define-property.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/reflect/delete-property.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/reflect/enumerate.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/reflect/get-own-property-descriptor.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/reflect/get-prototype-of.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/reflect/get.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/reflect/has.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/reflect/index.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/reflect/is-extensible.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/reflect/own-keys.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/reflect/prevent-extensions.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/reflect/set-prototype-of.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/reflect/set.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/regexp/escape.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/regexp/index.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/set-immediate.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/set-interval.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/set-timeout.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/set.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/string/at.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/string/code-point-at.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/string/ends-with.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/string/escape-html.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/string/from-code-point.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/string/includes.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/string/index.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/string/iterator.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/string/pad-left.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/string/pad-right.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/string/raw.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/string/repeat.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/string/starts-with.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/string/trim-left.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/string/trim-right.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/string/trim.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/string/unescape-html.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/symbol/for.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/symbol/has-instance.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/symbol/index.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/symbol/is-concat-spreadable.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/symbol/iterator.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/symbol/key-for.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/symbol/match.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/symbol/replace.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/symbol/search.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/symbol/species.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/symbol/split.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/symbol/to-primitive.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/symbol/to-string-tag.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/symbol/unscopables.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/weak-map.js delete mode 100644 node_modules/fbjs/node_modules/core-js/fn/weak-set.js delete mode 100644 node_modules/fbjs/node_modules/core-js/index.js delete mode 100644 node_modules/fbjs/node_modules/core-js/js/array.js delete mode 100644 node_modules/fbjs/node_modules/core-js/js/index.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/core/_.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/core/delay.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/core/dict.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/core/function.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/core/index.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/core/log.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/core/number.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/core/object.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/core/string.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/es5/index.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/es6/array.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/es6/function.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/es6/index.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/es6/map.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/es6/math.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/es6/number.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/es6/object.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/es6/promise.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/es6/reflect.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/es6/regexp.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/es6/set.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/es6/string.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/es6/symbol.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/es6/weak-map.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/es6/weak-set.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/es7/array.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/es7/index.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/es7/map.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/es7/object.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/es7/regexp.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/es7/set.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/es7/string.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/_.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/array/concat.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/array/copy-within.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/array/entries.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/array/every.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/array/fill.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/array/filter.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/array/find-index.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/array/find.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/array/for-each.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/array/from.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/array/includes.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/array/index-of.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/array/index.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/array/iterator.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/array/join.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/array/keys.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/array/last-index-of.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/array/map.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/array/of.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/array/pop.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/array/push.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/array/reduce-right.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/array/reduce.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/array/reverse.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/array/shift.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/array/slice.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/array/some.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/array/sort.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/array/splice.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/array/unshift.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/array/values.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/clear-immediate.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/delay.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/dict.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/function/has-instance.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/function/index.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/function/name.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/function/part.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/get-iterator-method.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/get-iterator.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/html-collection/index.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/html-collection/iterator.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/is-iterable.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/json/stringify.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/log.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/map.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/math/acosh.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/math/asinh.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/math/atanh.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/math/cbrt.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/math/clz32.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/math/cosh.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/math/expm1.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/math/fround.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/math/hypot.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/math/imul.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/math/index.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/math/log10.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/math/log1p.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/math/log2.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/math/sign.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/math/sinh.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/math/tanh.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/math/trunc.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/node-list/index.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/node-list/iterator.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/number/epsilon.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/number/index.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/number/is-finite.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/number/is-integer.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/number/is-nan.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/number/is-safe-integer.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/number/iterator.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/number/max-safe-integer.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/number/min-safe-integer.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/number/parse-float.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/number/parse-int.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/object/assign.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/object/classof.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/object/create.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/object/define-properties.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/object/define-property.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/object/define.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/object/entries.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/object/freeze.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/object/get-own-property-descriptor.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/object/get-own-property-descriptors.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/object/get-own-property-names.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/object/get-own-property-symbols.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/object/get-prototype-of.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/object/index.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/object/is-extensible.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/object/is-frozen.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/object/is-object.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/object/is-sealed.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/object/is.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/object/keys.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/object/make.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/object/prevent-extensions.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/object/seal.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/object/set-prototype-of.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/object/values.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/promise.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/reflect/apply.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/reflect/construct.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/reflect/define-property.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/reflect/delete-property.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/reflect/enumerate.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/reflect/get-own-property-descriptor.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/reflect/get-prototype-of.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/reflect/get.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/reflect/has.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/reflect/index.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/reflect/is-extensible.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/reflect/own-keys.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/reflect/prevent-extensions.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/reflect/set-prototype-of.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/reflect/set.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/regexp/escape.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/regexp/index.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/set-immediate.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/set-interval.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/set-timeout.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/set.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/string/at.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/string/code-point-at.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/string/ends-with.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/string/escape-html.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/string/from-code-point.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/string/includes.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/string/index.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/string/iterator.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/string/pad-left.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/string/pad-right.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/string/raw.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/string/repeat.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/string/starts-with.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/string/trim-left.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/string/trim-right.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/string/trim.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/string/unescape-html.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/symbol/for.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/symbol/has-instance.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/symbol/index.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/symbol/is-concat-spreadable.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/symbol/iterator.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/symbol/key-for.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/symbol/match.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/symbol/replace.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/symbol/search.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/symbol/species.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/symbol/split.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/symbol/to-primitive.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/symbol/to-string-tag.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/symbol/unscopables.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/weak-map.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/fn/weak-set.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/index.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/js/array.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/js/index.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.a-function.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.add-to-unscopables.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.an-object.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.array-copy-within.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.array-fill.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.array-includes.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.array-methods.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.array-species-create.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.buffer.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.classof.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.cof.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.collection-strong.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.collection-to-json.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.collection-weak.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.collection.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.core.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.ctx.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.defined.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.descriptors.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.dom-create.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.enum-keys.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.export.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.fails-is-regexp.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.fails.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.fix-re-wks.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.flags.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.for-of.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.get-names.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.global.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.has.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.hide.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.html.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.invoke.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.iobject.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.is-array-iter.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.is-array.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.is-integer.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.is-object.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.is-regexp.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.iter-call.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.iter-create.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.iter-define.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.iter-detect.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.iter-step.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.iterators.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.keyof.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.library.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.math-expm1.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.math-log1p.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.math-sign.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.microtask.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.object-assign.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.object-define.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.object-sap.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.object-to-array.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.own-keys.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.partial.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.path.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.property-desc.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.redefine-all.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.redefine.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.replacer.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.same-value.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.set-proto.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.set-species.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.set-to-string-tag.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.shared.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.species-constructor.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.strict-new.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.string-at.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.string-context.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.string-pad.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.string-repeat.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.string-trim.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.task.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.to-index.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.to-integer.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.to-iobject.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.to-length.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.to-object.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.to-primitive.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.typed-array.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.typed.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.uid.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/$.wks.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/core.delay.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/core.dict.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/core.function.part.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/core.get-iterator-method.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/core.get-iterator.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/core.is-iterable.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/core.log.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/core.number.iterator.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/core.object.classof.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/core.object.define.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/core.object.is-object.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/core.object.make.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/core.string.escape-html.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/core.string.unescape-html.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es5.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.array.copy-within.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.array.fill.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.array.find-index.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.array.find.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.array.from.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.array.iterator.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.array.of.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.array.species.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.date.to-string.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.function.has-instance.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.function.name.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.map.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.math.acosh.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.math.asinh.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.math.atanh.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.math.cbrt.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.math.clz32.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.math.cosh.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.math.expm1.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.math.fround.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.math.hypot.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.math.imul.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.math.log10.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.math.log1p.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.math.log2.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.math.sign.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.math.sinh.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.math.tanh.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.math.trunc.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.number.constructor.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.number.epsilon.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.number.is-finite.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.number.is-integer.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.number.is-nan.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.number.is-safe-integer.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.number.max-safe-integer.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.number.min-safe-integer.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.number.parse-float.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.number.parse-int.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.object.assign.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.object.freeze.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.object.get-own-property-descriptor.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.object.get-own-property-names.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.object.get-prototype-of.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.object.is-extensible.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.object.is-frozen.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.object.is-sealed.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.object.is.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.object.keys.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.object.prevent-extensions.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.object.seal.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.object.set-prototype-of.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.object.to-string.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.promise.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.reflect.apply.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.reflect.construct.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.reflect.define-property.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.reflect.delete-property.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.reflect.enumerate.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.reflect.get-own-property-descriptor.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.reflect.get-prototype-of.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.reflect.get.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.reflect.has.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.reflect.is-extensible.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.reflect.own-keys.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.reflect.prevent-extensions.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.reflect.set-prototype-of.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.reflect.set.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.regexp.constructor.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.regexp.flags.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.regexp.match.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.regexp.replace.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.regexp.search.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.regexp.split.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.set.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.string.code-point-at.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.string.ends-with.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.string.from-code-point.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.string.includes.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.string.iterator.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.string.raw.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.string.repeat.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.string.starts-with.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.string.trim.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.symbol.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.typed.array-buffer.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.typed.data-view.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.typed.float32-array.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.typed.float64-array.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.typed.int16-array.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.typed.int32-array.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.typed.int8-array.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.typed.uint16-array.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.typed.uint32-array.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.typed.uint8-array.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.typed.uint8-clamped-array.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.weak-map.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es6.weak-set.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es7.array.includes.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es7.map.to-json.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es7.object.entries.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es7.object.get-own-property-descriptors.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es7.object.values.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es7.regexp.escape.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es7.set.to-json.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es7.string.at.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es7.string.pad-left.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es7.string.pad-right.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es7.string.trim-left.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/es7.string.trim-right.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/js.array.statics.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/web.dom.iterable.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/web.immediate.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/modules/web.timers.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/shim.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/web/dom.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/web/immediate.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/web/index.js delete mode 100644 node_modules/fbjs/node_modules/core-js/library/web/timers.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.a-function.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.add-to-unscopables.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.an-object.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.array-copy-within.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.array-fill.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.array-includes.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.array-methods.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.array-species-create.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.buffer.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.classof.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.cof.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.collection-strong.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.collection-to-json.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.collection-weak.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.collection.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.core.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.ctx.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.defined.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.descriptors.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.dom-create.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.enum-keys.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.export.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.fails-is-regexp.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.fails.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.fix-re-wks.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.flags.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.for-of.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.get-names.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.global.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.has.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.hide.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.html.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.invoke.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.iobject.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.is-array-iter.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.is-array.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.is-integer.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.is-object.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.is-regexp.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.iter-call.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.iter-create.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.iter-define.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.iter-detect.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.iter-step.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.iterators.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.keyof.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.library.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.math-expm1.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.math-log1p.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.math-sign.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.microtask.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.object-assign.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.object-define.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.object-sap.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.object-to-array.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.own-keys.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.partial.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.path.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.property-desc.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.redefine-all.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.redefine.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.replacer.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.same-value.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.set-proto.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.set-species.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.set-to-string-tag.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.shared.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.species-constructor.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.strict-new.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.string-at.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.string-context.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.string-pad.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.string-repeat.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.string-trim.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.task.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.to-index.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.to-integer.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.to-iobject.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.to-length.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.to-object.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.to-primitive.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.typed-array.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.typed.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.uid.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/$.wks.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/core.delay.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/core.dict.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/core.function.part.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/core.get-iterator-method.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/core.get-iterator.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/core.is-iterable.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/core.log.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/core.number.iterator.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/core.object.classof.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/core.object.define.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/core.object.is-object.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/core.object.make.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/core.string.escape-html.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/core.string.unescape-html.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es5.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.array.copy-within.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.array.fill.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.array.find-index.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.array.find.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.array.from.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.array.iterator.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.array.of.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.array.species.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.date.to-string.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.function.has-instance.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.function.name.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.map.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.math.acosh.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.math.asinh.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.math.atanh.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.math.cbrt.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.math.clz32.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.math.cosh.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.math.expm1.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.math.fround.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.math.hypot.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.math.imul.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.math.log10.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.math.log1p.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.math.log2.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.math.sign.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.math.sinh.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.math.tanh.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.math.trunc.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.number.constructor.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.number.epsilon.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.number.is-finite.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.number.is-integer.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.number.is-nan.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.number.is-safe-integer.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.number.max-safe-integer.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.number.min-safe-integer.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.number.parse-float.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.number.parse-int.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.object.assign.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.object.freeze.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.object.get-own-property-descriptor.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.object.get-own-property-names.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.object.get-prototype-of.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.object.is-extensible.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.object.is-frozen.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.object.is-sealed.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.object.is.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.object.keys.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.object.prevent-extensions.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.object.seal.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.object.set-prototype-of.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.object.to-string.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.promise.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.reflect.apply.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.reflect.construct.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.reflect.define-property.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.reflect.delete-property.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.reflect.enumerate.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.reflect.get-own-property-descriptor.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.reflect.get-prototype-of.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.reflect.get.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.reflect.has.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.reflect.is-extensible.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.reflect.own-keys.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.reflect.prevent-extensions.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.reflect.set-prototype-of.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.reflect.set.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.regexp.constructor.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.regexp.flags.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.regexp.match.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.regexp.replace.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.regexp.search.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.regexp.split.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.set.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.string.code-point-at.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.string.ends-with.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.string.from-code-point.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.string.includes.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.string.iterator.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.string.raw.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.string.repeat.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.string.starts-with.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.string.trim.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.symbol.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.typed.array-buffer.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.typed.data-view.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.typed.float32-array.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.typed.float64-array.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.typed.int16-array.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.typed.int32-array.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.typed.int8-array.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.typed.uint16-array.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.typed.uint32-array.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.typed.uint8-array.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.typed.uint8-clamped-array.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.weak-map.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es6.weak-set.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es7.array.includes.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es7.map.to-json.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es7.object.entries.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es7.object.get-own-property-descriptors.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es7.object.values.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es7.regexp.escape.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es7.set.to-json.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es7.string.at.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es7.string.pad-left.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es7.string.pad-right.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es7.string.trim-left.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/es7.string.trim-right.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/js.array.statics.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/library/$.add-to-unscopables.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/library/$.collection.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/library/$.export.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/library/$.library.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/library/$.path.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/library/$.redefine.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/library/$.set-species.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/library/es6.date.to-string.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/library/es6.function.name.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/library/es6.number.constructor.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/library/es6.object.to-string.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/library/es6.regexp.constructor.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/library/es6.regexp.flags.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/library/es6.regexp.match.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/library/es6.regexp.replace.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/library/es6.regexp.search.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/library/es6.regexp.split.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/library/web.dom.iterable.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/web.dom.iterable.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/web.immediate.js delete mode 100644 node_modules/fbjs/node_modules/core-js/modules/web.timers.js delete mode 100644 node_modules/fbjs/node_modules/core-js/package.json delete mode 100644 node_modules/fbjs/node_modules/core-js/shim.js delete mode 100644 node_modules/fbjs/node_modules/core-js/web/dom.js delete mode 100644 node_modules/fbjs/node_modules/core-js/web/immediate.js delete mode 100644 node_modules/fbjs/node_modules/core-js/web/index.js delete mode 100644 node_modules/fbjs/node_modules/core-js/web/timers.js delete mode 100644 node_modules/fbjs/node_modules/promise/.jshintrc delete mode 100644 node_modules/fbjs/node_modules/promise/.npmignore delete mode 100644 node_modules/fbjs/node_modules/promise/LICENSE delete mode 100644 node_modules/fbjs/node_modules/promise/Readme.md delete mode 100644 node_modules/fbjs/node_modules/promise/build.js delete mode 100644 node_modules/fbjs/node_modules/promise/core.js delete mode 100644 node_modules/fbjs/node_modules/promise/domains/core.js delete mode 100644 node_modules/fbjs/node_modules/promise/domains/done.js delete mode 100644 node_modules/fbjs/node_modules/promise/domains/es6-extensions.js delete mode 100644 node_modules/fbjs/node_modules/promise/domains/finally.js delete mode 100644 node_modules/fbjs/node_modules/promise/domains/index.js delete mode 100644 node_modules/fbjs/node_modules/promise/domains/node-extensions.js delete mode 100644 node_modules/fbjs/node_modules/promise/domains/rejection-tracking.js delete mode 100644 node_modules/fbjs/node_modules/promise/domains/synchronous.js delete mode 100644 node_modules/fbjs/node_modules/promise/index.d.ts delete mode 100644 node_modules/fbjs/node_modules/promise/index.js delete mode 100644 node_modules/fbjs/node_modules/promise/lib/core.js delete mode 100644 node_modules/fbjs/node_modules/promise/lib/done.js delete mode 100644 node_modules/fbjs/node_modules/promise/lib/es6-extensions.js delete mode 100644 node_modules/fbjs/node_modules/promise/lib/finally.js delete mode 100644 node_modules/fbjs/node_modules/promise/lib/index.js delete mode 100644 node_modules/fbjs/node_modules/promise/lib/node-extensions.js delete mode 100644 node_modules/fbjs/node_modules/promise/lib/rejection-tracking.js delete mode 100644 node_modules/fbjs/node_modules/promise/lib/synchronous.js delete mode 100644 node_modules/fbjs/node_modules/promise/package.json delete mode 100644 node_modules/fbjs/node_modules/promise/polyfill-done.js delete mode 100644 node_modules/fbjs/node_modules/promise/polyfill.js delete mode 100644 node_modules/fbjs/node_modules/promise/setimmediate/core.js delete mode 100644 node_modules/fbjs/node_modules/promise/setimmediate/done.js delete mode 100644 node_modules/fbjs/node_modules/promise/setimmediate/es6-extensions.js delete mode 100644 node_modules/fbjs/node_modules/promise/setimmediate/finally.js delete mode 100644 node_modules/fbjs/node_modules/promise/setimmediate/index.js delete mode 100644 node_modules/fbjs/node_modules/promise/setimmediate/node-extensions.js delete mode 100644 node_modules/fbjs/node_modules/promise/setimmediate/rejection-tracking.js delete mode 100644 node_modules/fbjs/node_modules/promise/setimmediate/synchronous.js delete mode 100644 node_modules/fbjs/node_modules/promise/src/core.js delete mode 100644 node_modules/fbjs/node_modules/promise/src/done.js delete mode 100644 node_modules/fbjs/node_modules/promise/src/es6-extensions.js delete mode 100644 node_modules/fbjs/node_modules/promise/src/finally.js delete mode 100644 node_modules/fbjs/node_modules/promise/src/index.js delete mode 100644 node_modules/fbjs/node_modules/promise/src/node-extensions.js delete mode 100644 node_modules/fbjs/node_modules/promise/src/rejection-tracking.js delete mode 100644 node_modules/fbjs/node_modules/promise/src/synchronous.js delete mode 100644 node_modules/fbjs/package.json (limited to 'node_modules/fbjs') diff --git a/node_modules/fbjs/CHANGELOG.md b/node_modules/fbjs/CHANGELOG.md deleted file mode 100644 index eabaf001d..000000000 --- a/node_modules/fbjs/CHANGELOG.md +++ /dev/null @@ -1,214 +0,0 @@ -## [Unreleased] - - -## [0.8.16] - 2017-09-25 - -### Changed -- Relicense to MIT as part of React relicense. - - -## [0.8.15] - 2017-09-07 - -### Fixed -- `getDocumentScrollElement` now correctly returns the `` element in Chrome 61 instead of ``. - - -## [0.8.14] - 2017-07-25 - -### Removed -- Flow annotations for `keyMirror` module. The annotation generates a syntax error after being re-printed by Babel. - - -## [0.8.13] - 2017-07-25 - -### Added -- Flow annotations for `keyMirror` module. - -### Fixed -- Fixed strict argument arity issues with `Deferred` module. -- Corrected License header in `EventListener`. - - -## [0.8.12] - 2017-03-29 - -### Fixed -- Fix use of `global` working inconsistently. - - -## [0.8.11] - 2017-03-21 - -### Fixed -- Fixed a regression resulting from making DOM utilities work in nested browsing contexts. - - -## [0.8.10] - 2017-03-20 - -### Changed -- Made DOM utilities work in nested browsing contexts. - - -## [0.8.9] - 2017-01-31 - -### Fixed -- Updated `partitionObjectByKey` Flow annotations for Flow 0.38. - - -## [0.8.8] - 2016-12-20 - -### Changed -- `invariant`: Moved `process.env.NODE_ENV` check to module scope, eliminating check on each call. - - -## [0.8.7] - 2016-12-19 - -### Added -- New module: `setImmediate`. - - -## [0.8.6] - 2016-11-09 - -### Removed -- Removed runtime dependency on immutable, reducing package size. - - -## [0.8.5] - 2016-09-27 - -### Fixed -- Fixed all remaining issues resulting in Flow errors when `fbjs` is a dependency of a dependency. - -### Removed -- Removed now extraneous `flow/lib/Promise.js`. - -## [0.8.4] - 2016-08-19 - -### Changed -- Moved `try/catch` in `warning` module to helper function to prevent deopts. - - -## [0.8.3] - 2016-05-25 - -### Added -- `Deferred`: added `Deferred.prototype.catch` to avoid having to call this directly on the Promise. -- `UnicodeUtilsExtra`: added several methods for escaping strings. - -### Changed -- More Flow annotations: `containsNode`, `emptyFunction`, `memoizeStringOnly` -- Added explicit `` type arguments to in anticipation of a future Flow change requiring them. -- `Object.assign` calls now replaced with usage of `object-assign` module. - -### Fixed -- Type imports in .js.flow files are now properly using relative paths. -- `DataTransfer`: handle Firefox better - - -## [0.8.2] - 2016-05-05 - -### Removed -- Removed extraneous production dependency - - -## [0.8.1] - 2016-04-18 - -### Added -- We now include a `Promise` class definition in `flow/lib` to account for the changes in Flow v0.23 which removed non-spec methods. This will allow our code to continue typechecking while using these methods. - - -## [0.8.0] - 2016-04-04 - -### Added -- Several additional modules. Notably, a collection of Unicode utilities and many new `functional` helpers. -- `CSSCore`: added `matchesSelector` method - -### Changed -- Copyright headers updated to reflect current boilerplate -- `@providesModule` headers removed from generated source code -- Flow files now contain relative requires, improving compatibility with Haste and CommonJS module systems - -### Fixed -- `isEmpty`: Protect from breaking in environments without `Symbol` defined - - -## [0.7.2] - 2016-02-05 - -### Fixed -- `URI`: correctly store reference to value in constructor and return it when stringifying - -### Removed -- Backed out rejection tracking for React Native `Promise` implementation. That code now lives in React Native. - - -## [0.7.1] - 2016-02-02 - -### Fixed - -- Corrected require path issue for native `Promise` module - - -## [0.7.0] - 2016-01-27 - -### Added -- `Promise` for React Native with rejection tracking in `__DEV__` and a `finally` method -- `_shouldPolyfillES6Collection`: check if ES6 Collections need to be polyfilled. - -### Removed -- `toArray`: removed in favor of using `Array.from` directly. - -### Changed -- `ErrorUtils`: Re-uses any global instance that already exists -- `fetch`: Switched to `isomorphic-fetch` when a global implementation is missing -- `shallowEqual`: handles `NaN` values appropriately (as equal), now using `Object.is` semantics - - -## [0.6.1] - 2016-01-06 - -### Changed -- `getActiveElement`: no longer throws in non-browser environment (again) - - -## [0.6.0] - 2015-12-29 - -### Changed -- Flow: Original source files in `fbjs/flow/include` have been removed in favor of placing original files alongside compiled files in lib with a `.flow` suffix. This requires Flow version 0.19 or greater and a change to `.flowconfig` files to remove the include path. - - -## [0.5.1] - 2015-12-13 - -### Added -- `base62` module - - -## [0.5.0] - 2015-12-04 - -### Changed - -- `getActiveElement`: No longer handles a non-existent `document` - - -## [0.4.0] - 2015-10-16 - -### Changed - -- `invariant`: Message is no longer prefixed with "Invariant Violation: ". - - -## [0.3.2] - 2015-10-12 - -### Added -- Apply appropriate transform (`loose-envify`) when bundling with `browserify` - - -## [0.3.1] - 2015-10-01 - -### Fixed -- Ensure the build completes correctly before packaging - - -## [0.3.0] - 2015-10-01 - -### Added -- More modules: `memoizeStringOnly`, `joinClasses` -- `UserAgent`: Query information about current user agent - -### Changed -- `fetchWithRetries`: Reject failure with an Error, not the response -- `getActiveElement`: no longer throws in non-browser environment diff --git a/node_modules/fbjs/LICENSE b/node_modules/fbjs/LICENSE deleted file mode 100644 index 29e2bc214..000000000 --- a/node_modules/fbjs/LICENSE +++ /dev/null @@ -1,20 +0,0 @@ -MIT License - -Copyright (c) 2013-present, Facebook, Inc. - -Permission is hereby granted, free of charge, to any person obtaining a copy of -this software and associated documentation files (the "Software"), to deal in -the Software without restriction, including without limitation the rights to -use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software is furnished to do so, -subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS -FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR -COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER -IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/node_modules/fbjs/README.md b/node_modules/fbjs/README.md deleted file mode 100644 index 50dcfaa36..000000000 --- a/node_modules/fbjs/README.md +++ /dev/null @@ -1,46 +0,0 @@ -# FBJS - -## Purpose - -To make it easier for Facebook to share and consume our own JavaScript. Primarily this will allow us to ship code without worrying too much about where it lives, keeping with the spirit of `@providesModule` but working in the broader JavaScript ecosystem. - -**Note:** If you are consuming the code here and you are not also a Facebook project, be prepared for a bad time. APIs may appear or disappear and we may not follow semver strictly, though we will do our best to. This library is being published with our use cases in mind and is not necessarily meant to be consumed by the broader public. In order for us to move fast and ship projects like React and Relay, we've made the decision to not support everybody. We probably won't take your feature requests unless they align with our needs. There will be overlap in functionality here and in other open source projects. - -## Usage - -Any `@providesModule` modules that are used by your project should be added to `src/`. They will be built and added to `module-map.json`. This file will contain a map from `@providesModule` name to what will be published as `fbjs`. The `module-map.json` file can then be consumed in your own project, along with the [rewrite-modules](https://github.com/facebook/fbjs/blob/master/babel-preset/plugins/rewrite-modules.js) Babel plugin (which we'll publish with this), to rewrite requires in your own project. Then, just make sure `fbjs` is a dependency in your `package.json` and your package will consume the shared code. - -```js -// Before transform -const emptyFunction = require('emptyFunction'); -// After transform -const emptyFunction = require('fbjs/lib/emptyFunction'); -``` - -See React for an example of this. *Coming soon!* - -## Building - -It's as easy as just running gulp. This assumes you've also done `npm install -g gulp`. - -```sh -gulp -``` - -Alternatively `npm run build` will also work. - -### Layout - -Right now these packages represent a subset of packages that we use internally at Facebook. Mostly these are support libraries used when shipping larger libraries, like React and Relay, or products. Each of these packages is in its own directory under `src/`. - -### Process - -Since we use `@providesModule`, we need to rewrite requires to be relative. Thanks to `@providesModule` requiring global uniqueness, we can do this easily. Eventually we'll try to make this part of the process go away by making more projects use CommonJS. - - -## TODO - -- Flow: Ideally we'd ship our original files with type annotations, however that's not doable right now. We have a couple options: - - Make sure our transpilation step converts inline type annotations to the comment format. - - Make our build process also build Flow interface files which we can ship to npm. -- Split into multiple packages. This will be better for more concise versioning, otherwise we'll likely just be shipping lots of major versions. diff --git a/node_modules/fbjs/flow/lib/dev.js b/node_modules/fbjs/flow/lib/dev.js deleted file mode 100644 index 01c75f737..000000000 --- a/node_modules/fbjs/flow/lib/dev.js +++ /dev/null @@ -1,8 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */ - -declare var __DEV__: boolean; diff --git a/node_modules/fbjs/index.js b/node_modules/fbjs/index.js deleted file mode 100644 index 80626fa69..000000000 --- a/node_modules/fbjs/index.js +++ /dev/null @@ -1,10 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */ - -'use strict'; - -throw new Error('The fbjs package should not be required without a full path.'); diff --git a/node_modules/fbjs/lib/CSSCore.js b/node_modules/fbjs/lib/CSSCore.js deleted file mode 100644 index 75d10bd2e..000000000 --- a/node_modules/fbjs/lib/CSSCore.js +++ /dev/null @@ -1,119 +0,0 @@ -'use strict'; - -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * @typechecks - */ - -var invariant = require('./invariant'); - -/** - * The CSSCore module specifies the API (and implements most of the methods) - * that should be used when dealing with the display of elements (via their - * CSS classes and visibility on screen. It is an API focused on mutating the - * display and not reading it as no logical state should be encoded in the - * display of elements. - */ - -/* Slow implementation for browsers that don't natively support .matches() */ -function matchesSelector_SLOW(element, selector) { - var root = element; - while (root.parentNode) { - root = root.parentNode; - } - - var all = root.querySelectorAll(selector); - return Array.prototype.indexOf.call(all, element) !== -1; -} - -var CSSCore = { - - /** - * Adds the class passed in to the element if it doesn't already have it. - * - * @param {DOMElement} element the element to set the class on - * @param {string} className the CSS className - * @return {DOMElement} the element passed in - */ - addClass: function addClass(element, className) { - !!/\s/.test(className) ? process.env.NODE_ENV !== 'production' ? invariant(false, 'CSSCore.addClass takes only a single class name. "%s" contains ' + 'multiple classes.', className) : invariant(false) : void 0; - - if (className) { - if (element.classList) { - element.classList.add(className); - } else if (!CSSCore.hasClass(element, className)) { - element.className = element.className + ' ' + className; - } - } - return element; - }, - - /** - * Removes the class passed in from the element - * - * @param {DOMElement} element the element to set the class on - * @param {string} className the CSS className - * @return {DOMElement} the element passed in - */ - removeClass: function removeClass(element, className) { - !!/\s/.test(className) ? process.env.NODE_ENV !== 'production' ? invariant(false, 'CSSCore.removeClass takes only a single class name. "%s" contains ' + 'multiple classes.', className) : invariant(false) : void 0; - - if (className) { - if (element.classList) { - element.classList.remove(className); - } else if (CSSCore.hasClass(element, className)) { - element.className = element.className.replace(new RegExp('(^|\\s)' + className + '(?:\\s|$)', 'g'), '$1').replace(/\s+/g, ' ') // multiple spaces to one - .replace(/^\s*|\s*$/g, ''); // trim the ends - } - } - return element; - }, - - /** - * Helper to add or remove a class from an element based on a condition. - * - * @param {DOMElement} element the element to set the class on - * @param {string} className the CSS className - * @param {*} bool condition to whether to add or remove the class - * @return {DOMElement} the element passed in - */ - conditionClass: function conditionClass(element, className, bool) { - return (bool ? CSSCore.addClass : CSSCore.removeClass)(element, className); - }, - - /** - * Tests whether the element has the class specified. - * - * @param {DOMNode|DOMWindow} element the element to check the class on - * @param {string} className the CSS className - * @return {boolean} true if the element has the class, false if not - */ - hasClass: function hasClass(element, className) { - !!/\s/.test(className) ? process.env.NODE_ENV !== 'production' ? invariant(false, 'CSS.hasClass takes only a single class name.') : invariant(false) : void 0; - if (element.classList) { - return !!className && element.classList.contains(className); - } - return (' ' + element.className + ' ').indexOf(' ' + className + ' ') > -1; - }, - - /** - * Tests whether the element matches the selector specified - * - * @param {DOMNode|DOMWindow} element the element that we are querying - * @param {string} selector the CSS selector - * @return {boolean} true if the element matches the selector, false if not - */ - matchesSelector: function matchesSelector(element, selector) { - var matchesImpl = element.matches || element.webkitMatchesSelector || element.mozMatchesSelector || element.msMatchesSelector || function (s) { - return matchesSelector_SLOW(element, s); - }; - return matchesImpl.call(element, selector); - } - -}; - -module.exports = CSSCore; \ No newline at end of file diff --git a/node_modules/fbjs/lib/CSSCore.js.flow b/node_modules/fbjs/lib/CSSCore.js.flow deleted file mode 100644 index 967aa189c..000000000 --- a/node_modules/fbjs/lib/CSSCore.js.flow +++ /dev/null @@ -1,116 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * @providesModule CSSCore - * @typechecks - */ - -const invariant = require('./invariant'); - -/** - * The CSSCore module specifies the API (and implements most of the methods) - * that should be used when dealing with the display of elements (via their - * CSS classes and visibility on screen. It is an API focused on mutating the - * display and not reading it as no logical state should be encoded in the - * display of elements. - */ - -/* Slow implementation for browsers that don't natively support .matches() */ -function matchesSelector_SLOW(element, selector) { - let root = element; - while (root.parentNode) { - root = root.parentNode; - } - - const all = root.querySelectorAll(selector); - return Array.prototype.indexOf.call(all, element) !== -1; -} - -const CSSCore = { - - /** - * Adds the class passed in to the element if it doesn't already have it. - * - * @param {DOMElement} element the element to set the class on - * @param {string} className the CSS className - * @return {DOMElement} the element passed in - */ - addClass: function (element, className) { - invariant(!/\s/.test(className), 'CSSCore.addClass takes only a single class name. "%s" contains ' + 'multiple classes.', className); - - if (className) { - if (element.classList) { - element.classList.add(className); - } else if (!CSSCore.hasClass(element, className)) { - element.className = element.className + ' ' + className; - } - } - return element; - }, - - /** - * Removes the class passed in from the element - * - * @param {DOMElement} element the element to set the class on - * @param {string} className the CSS className - * @return {DOMElement} the element passed in - */ - removeClass: function (element, className) { - invariant(!/\s/.test(className), 'CSSCore.removeClass takes only a single class name. "%s" contains ' + 'multiple classes.', className); - - if (className) { - if (element.classList) { - element.classList.remove(className); - } else if (CSSCore.hasClass(element, className)) { - element.className = element.className.replace(new RegExp('(^|\\s)' + className + '(?:\\s|$)', 'g'), '$1').replace(/\s+/g, ' ') // multiple spaces to one - .replace(/^\s*|\s*$/g, ''); // trim the ends - } - } - return element; - }, - - /** - * Helper to add or remove a class from an element based on a condition. - * - * @param {DOMElement} element the element to set the class on - * @param {string} className the CSS className - * @param {*} bool condition to whether to add or remove the class - * @return {DOMElement} the element passed in - */ - conditionClass: function (element, className, bool) { - return (bool ? CSSCore.addClass : CSSCore.removeClass)(element, className); - }, - - /** - * Tests whether the element has the class specified. - * - * @param {DOMNode|DOMWindow} element the element to check the class on - * @param {string} className the CSS className - * @return {boolean} true if the element has the class, false if not - */ - hasClass: function (element, className) { - invariant(!/\s/.test(className), 'CSS.hasClass takes only a single class name.'); - if (element.classList) { - return !!className && element.classList.contains(className); - } - return (' ' + element.className + ' ').indexOf(' ' + className + ' ') > -1; - }, - - /** - * Tests whether the element matches the selector specified - * - * @param {DOMNode|DOMWindow} element the element that we are querying - * @param {string} selector the CSS selector - * @return {boolean} true if the element matches the selector, false if not - */ - matchesSelector: function (element, selector) { - const matchesImpl = element.matches || element.webkitMatchesSelector || element.mozMatchesSelector || element.msMatchesSelector || (s => matchesSelector_SLOW(element, s)); - return matchesImpl.call(element, selector); - } - -}; - -module.exports = CSSCore; \ No newline at end of file diff --git a/node_modules/fbjs/lib/DataTransfer.js b/node_modules/fbjs/lib/DataTransfer.js deleted file mode 100644 index 6875d9a01..000000000 --- a/node_modules/fbjs/lib/DataTransfer.js +++ /dev/null @@ -1,219 +0,0 @@ -'use strict'; - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * @typechecks - */ - -var PhotosMimeType = require('./PhotosMimeType'); - -var createArrayFromMixed = require('./createArrayFromMixed'); -var emptyFunction = require('./emptyFunction'); - -var CR_LF_REGEX = new RegExp('\r\n', 'g'); -var LF_ONLY = '\n'; - -var RICH_TEXT_TYPES = { - 'text/rtf': 1, - 'text/html': 1 -}; - -/** - * If DataTransferItem is a file then return the Blob of data. - * - * @param {object} item - * @return {?blob} - */ -function getFileFromDataTransfer(item) { - if (item.kind == 'file') { - return item.getAsFile(); - } -} - -var DataTransfer = function () { - /** - * @param {object} data - */ - function DataTransfer(data) { - _classCallCheck(this, DataTransfer); - - this.data = data; - - // Types could be DOMStringList or array - this.types = data.types ? createArrayFromMixed(data.types) : []; - } - - /** - * Is this likely to be a rich text data transfer? - * - * @return {boolean} - */ - - - DataTransfer.prototype.isRichText = function isRichText() { - // If HTML is available, treat this data as rich text. This way, we avoid - // using a pasted image if it is packaged with HTML -- this may occur with - // pastes from MS Word, for example. However this is only rich text if - // there's accompanying text. - if (this.getHTML() && this.getText()) { - return true; - } - - // When an image is copied from a preview window, you end up with two - // DataTransferItems one of which is a file's metadata as text. Skip those. - if (this.isImage()) { - return false; - } - - return this.types.some(function (type) { - return RICH_TEXT_TYPES[type]; - }); - }; - - /** - * Get raw text. - * - * @return {?string} - */ - - - DataTransfer.prototype.getText = function getText() { - var text; - if (this.data.getData) { - if (!this.types.length) { - text = this.data.getData('Text'); - } else if (this.types.indexOf('text/plain') != -1) { - text = this.data.getData('text/plain'); - } - } - return text ? text.replace(CR_LF_REGEX, LF_ONLY) : null; - }; - - /** - * Get HTML paste data - * - * @return {?string} - */ - - - DataTransfer.prototype.getHTML = function getHTML() { - if (this.data.getData) { - if (!this.types.length) { - return this.data.getData('Text'); - } else if (this.types.indexOf('text/html') != -1) { - return this.data.getData('text/html'); - } - } - }; - - /** - * Is this a link data transfer? - * - * @return {boolean} - */ - - - DataTransfer.prototype.isLink = function isLink() { - return this.types.some(function (type) { - return type.indexOf('Url') != -1 || type.indexOf('text/uri-list') != -1 || type.indexOf('text/x-moz-url'); - }); - }; - - /** - * Get a link url. - * - * @return {?string} - */ - - - DataTransfer.prototype.getLink = function getLink() { - if (this.data.getData) { - if (this.types.indexOf('text/x-moz-url') != -1) { - var url = this.data.getData('text/x-moz-url').split('\n'); - return url[0]; - } - return this.types.indexOf('text/uri-list') != -1 ? this.data.getData('text/uri-list') : this.data.getData('url'); - } - - return null; - }; - - /** - * Is this an image data transfer? - * - * @return {boolean} - */ - - - DataTransfer.prototype.isImage = function isImage() { - var isImage = this.types.some(function (type) { - // Firefox will have a type of application/x-moz-file for images during - // dragging - return type.indexOf('application/x-moz-file') != -1; - }); - - if (isImage) { - return true; - } - - var items = this.getFiles(); - for (var i = 0; i < items.length; i++) { - var type = items[i].type; - if (!PhotosMimeType.isImage(type)) { - return false; - } - } - - return true; - }; - - DataTransfer.prototype.getCount = function getCount() { - if (this.data.hasOwnProperty('items')) { - return this.data.items.length; - } else if (this.data.hasOwnProperty('mozItemCount')) { - return this.data.mozItemCount; - } else if (this.data.files) { - return this.data.files.length; - } - return null; - }; - - /** - * Get files. - * - * @return {array} - */ - - - DataTransfer.prototype.getFiles = function getFiles() { - if (this.data.items) { - // createArrayFromMixed doesn't properly handle DataTransferItemLists. - return Array.prototype.slice.call(this.data.items).map(getFileFromDataTransfer).filter(emptyFunction.thatReturnsArgument); - } else if (this.data.files) { - return Array.prototype.slice.call(this.data.files); - } else { - return []; - } - }; - - /** - * Are there any files to fetch? - * - * @return {boolean} - */ - - - DataTransfer.prototype.hasFiles = function hasFiles() { - return this.getFiles().length > 0; - }; - - return DataTransfer; -}(); - -module.exports = DataTransfer; \ No newline at end of file diff --git a/node_modules/fbjs/lib/DataTransfer.js.flow b/node_modules/fbjs/lib/DataTransfer.js.flow deleted file mode 100644 index 3588a1934..000000000 --- a/node_modules/fbjs/lib/DataTransfer.js.flow +++ /dev/null @@ -1,194 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * @providesModule DataTransfer - * @typechecks - */ - -var PhotosMimeType = require('./PhotosMimeType'); - -var createArrayFromMixed = require('./createArrayFromMixed'); -var emptyFunction = require('./emptyFunction'); - -var CR_LF_REGEX = new RegExp('\u000D\u000A', 'g'); -var LF_ONLY = '\u000A'; - -var RICH_TEXT_TYPES = { - 'text/rtf': 1, - 'text/html': 1 -}; - -/** - * If DataTransferItem is a file then return the Blob of data. - * - * @param {object} item - * @return {?blob} - */ -function getFileFromDataTransfer(item) { - if (item.kind == 'file') { - return item.getAsFile(); - } -} - -class DataTransfer { - /** - * @param {object} data - */ - constructor(data) { - this.data = data; - - // Types could be DOMStringList or array - this.types = data.types ? createArrayFromMixed(data.types) : []; - } - - /** - * Is this likely to be a rich text data transfer? - * - * @return {boolean} - */ - isRichText() { - // If HTML is available, treat this data as rich text. This way, we avoid - // using a pasted image if it is packaged with HTML -- this may occur with - // pastes from MS Word, for example. However this is only rich text if - // there's accompanying text. - if (this.getHTML() && this.getText()) { - return true; - } - - // When an image is copied from a preview window, you end up with two - // DataTransferItems one of which is a file's metadata as text. Skip those. - if (this.isImage()) { - return false; - } - - return this.types.some(type => RICH_TEXT_TYPES[type]); - } - - /** - * Get raw text. - * - * @return {?string} - */ - getText() { - var text; - if (this.data.getData) { - if (!this.types.length) { - text = this.data.getData('Text'); - } else if (this.types.indexOf('text/plain') != -1) { - text = this.data.getData('text/plain'); - } - } - return text ? text.replace(CR_LF_REGEX, LF_ONLY) : null; - } - - /** - * Get HTML paste data - * - * @return {?string} - */ - getHTML() { - if (this.data.getData) { - if (!this.types.length) { - return this.data.getData('Text'); - } else if (this.types.indexOf('text/html') != -1) { - return this.data.getData('text/html'); - } - } - } - - /** - * Is this a link data transfer? - * - * @return {boolean} - */ - isLink() { - return this.types.some(type => { - return type.indexOf('Url') != -1 || type.indexOf('text/uri-list') != -1 || type.indexOf('text/x-moz-url'); - }); - } - - /** - * Get a link url. - * - * @return {?string} - */ - getLink() { - if (this.data.getData) { - if (this.types.indexOf('text/x-moz-url') != -1) { - let url = this.data.getData('text/x-moz-url').split('\n'); - return url[0]; - } - return this.types.indexOf('text/uri-list') != -1 ? this.data.getData('text/uri-list') : this.data.getData('url'); - } - - return null; - } - - /** - * Is this an image data transfer? - * - * @return {boolean} - */ - isImage() { - var isImage = this.types.some(type => { - // Firefox will have a type of application/x-moz-file for images during - // dragging - return type.indexOf('application/x-moz-file') != -1; - }); - - if (isImage) { - return true; - } - - var items = this.getFiles(); - for (var i = 0; i < items.length; i++) { - var type = items[i].type; - if (!PhotosMimeType.isImage(type)) { - return false; - } - } - - return true; - } - - getCount() { - if (this.data.hasOwnProperty('items')) { - return this.data.items.length; - } else if (this.data.hasOwnProperty('mozItemCount')) { - return this.data.mozItemCount; - } else if (this.data.files) { - return this.data.files.length; - } - return null; - } - - /** - * Get files. - * - * @return {array} - */ - getFiles() { - if (this.data.items) { - // createArrayFromMixed doesn't properly handle DataTransferItemLists. - return Array.prototype.slice.call(this.data.items).map(getFileFromDataTransfer).filter(emptyFunction.thatReturnsArgument); - } else if (this.data.files) { - return Array.prototype.slice.call(this.data.files); - } else { - return []; - } - } - - /** - * Are there any files to fetch? - * - * @return {boolean} - */ - hasFiles() { - return this.getFiles().length > 0; - } -} - -module.exports = DataTransfer; \ No newline at end of file diff --git a/node_modules/fbjs/lib/Deferred.js b/node_modules/fbjs/lib/Deferred.js deleted file mode 100644 index 8ec65ccf0..000000000 --- a/node_modules/fbjs/lib/Deferred.js +++ /dev/null @@ -1,79 +0,0 @@ -"use strict"; - -var Promise = require("./Promise"); - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * @typechecks - * - */ - -/** - * Deferred provides a Promise-like API that exposes methods to resolve and - * reject the Promise. It is most useful when converting non-Promise code to use - * Promises. - * - * If you want to export the Promise without exposing access to the resolve and - * reject methods, you should export `getPromise` which returns a Promise with - * the same semantics excluding those methods. - */ -var Deferred = function () { - function Deferred() { - var _this = this; - - _classCallCheck(this, Deferred); - - this._settled = false; - this._promise = new Promise(function (resolve, reject) { - _this._resolve = resolve; - _this._reject = reject; - }); - } - - Deferred.prototype.getPromise = function getPromise() { - return this._promise; - }; - - Deferred.prototype.resolve = function resolve(value) { - this._settled = true; - this._resolve(value); - }; - - Deferred.prototype.reject = function reject(reason) { - this._settled = true; - this._reject(reason); - }; - - Deferred.prototype["catch"] = function _catch(onReject) { - return Promise.prototype["catch"].apply(this._promise, arguments); - }; - - Deferred.prototype.then = function then(onFulfill, onReject) { - return Promise.prototype.then.apply(this._promise, arguments); - }; - - Deferred.prototype.done = function done(onFulfill, onReject) { - // Embed the polyfill for the non-standard Promise.prototype.done so that - // users of the open source fbjs don't need a custom lib for Promise - var promise = arguments.length ? this._promise.then.apply(this._promise, arguments) : this._promise; - promise.then(undefined, function (err) { - setTimeout(function () { - throw err; - }, 0); - }); - }; - - Deferred.prototype.isSettled = function isSettled() { - return this._settled; - }; - - return Deferred; -}(); - -module.exports = Deferred; \ No newline at end of file diff --git a/node_modules/fbjs/lib/Deferred.js.flow b/node_modules/fbjs/lib/Deferred.js.flow deleted file mode 100644 index 26bce8754..000000000 --- a/node_modules/fbjs/lib/Deferred.js.flow +++ /dev/null @@ -1,73 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * @providesModule Deferred - * @typechecks - * @flow - */ - -/** - * Deferred provides a Promise-like API that exposes methods to resolve and - * reject the Promise. It is most useful when converting non-Promise code to use - * Promises. - * - * If you want to export the Promise without exposing access to the resolve and - * reject methods, you should export `getPromise` which returns a Promise with - * the same semantics excluding those methods. - */ -class Deferred { - _settled: boolean; - _promise: Promise; - _resolve: (value: Tvalue) => void; - _reject: (reason: Treason) => void; - - constructor() { - this._settled = false; - this._promise = new Promise((resolve, reject) => { - this._resolve = (resolve: any); - this._reject = (reject: any); - }); - } - - getPromise(): Promise { - return this._promise; - } - - resolve(value: Tvalue): void { - this._settled = true; - this._resolve(value); - } - - reject(reason: Treason): void { - this._settled = true; - this._reject(reason); - } - - catch(onReject?: ?(error: any) => mixed): Promise { - return Promise.prototype.catch.apply(this._promise, arguments); - } - - then(onFulfill?: ?(value: any) => mixed, onReject?: ?(error: any) => mixed): Promise { - return Promise.prototype.then.apply(this._promise, arguments); - } - - done(onFulfill?: ?(value: any) => mixed, onReject?: ?(error: any) => mixed): void { - // Embed the polyfill for the non-standard Promise.prototype.done so that - // users of the open source fbjs don't need a custom lib for Promise - const promise = arguments.length ? this._promise.then.apply(this._promise, arguments) : this._promise; - promise.then(undefined, function (err) { - setTimeout(function () { - throw err; - }, 0); - }); - } - - isSettled(): boolean { - return this._settled; - } -} - -module.exports = Deferred; \ No newline at end of file diff --git a/node_modules/fbjs/lib/ErrorUtils.js b/node_modules/fbjs/lib/ErrorUtils.js deleted file mode 100644 index 0ebdcbc42..000000000 --- a/node_modules/fbjs/lib/ErrorUtils.js +++ /dev/null @@ -1,26 +0,0 @@ -"use strict"; - -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - */ - -/* jslint unused:false */ - -if (global.ErrorUtils) { - module.exports = global.ErrorUtils; -} else { - var ErrorUtils = { - applyWithGuard: function applyWithGuard(callback, context, args, onError, name) { - return callback.apply(context, args); - }, - guard: function guard(callback, name) { - return callback; - } - }; - - module.exports = ErrorUtils; -} \ No newline at end of file diff --git a/node_modules/fbjs/lib/ErrorUtils.js.flow b/node_modules/fbjs/lib/ErrorUtils.js.flow deleted file mode 100644 index 8a8e5cd4d..000000000 --- a/node_modules/fbjs/lib/ErrorUtils.js.flow +++ /dev/null @@ -1,25 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * @providesModule ErrorUtils - */ - -/* jslint unused:false */ - -if (global.ErrorUtils) { - module.exports = global.ErrorUtils; -} else { - var ErrorUtils = { - applyWithGuard(callback, context, args, onError, name) { - return callback.apply(context, args); - }, - guard(callback, name) { - return callback; - } - }; - - module.exports = ErrorUtils; -} \ No newline at end of file diff --git a/node_modules/fbjs/lib/EventListener.js b/node_modules/fbjs/lib/EventListener.js deleted file mode 100644 index 61c2220c8..000000000 --- a/node_modules/fbjs/lib/EventListener.js +++ /dev/null @@ -1,74 +0,0 @@ -'use strict'; - -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * @typechecks - */ - -var emptyFunction = require('./emptyFunction'); - -/** - * Upstream version of event listener. Does not take into account specific - * nature of platform. - */ -var EventListener = { - /** - * Listen to DOM events during the bubble phase. - * - * @param {DOMEventTarget} target DOM element to register listener on. - * @param {string} eventType Event type, e.g. 'click' or 'mouseover'. - * @param {function} callback Callback function. - * @return {object} Object with a `remove` method. - */ - listen: function listen(target, eventType, callback) { - if (target.addEventListener) { - target.addEventListener(eventType, callback, false); - return { - remove: function remove() { - target.removeEventListener(eventType, callback, false); - } - }; - } else if (target.attachEvent) { - target.attachEvent('on' + eventType, callback); - return { - remove: function remove() { - target.detachEvent('on' + eventType, callback); - } - }; - } - }, - - /** - * Listen to DOM events during the capture phase. - * - * @param {DOMEventTarget} target DOM element to register listener on. - * @param {string} eventType Event type, e.g. 'click' or 'mouseover'. - * @param {function} callback Callback function. - * @return {object} Object with a `remove` method. - */ - capture: function capture(target, eventType, callback) { - if (target.addEventListener) { - target.addEventListener(eventType, callback, true); - return { - remove: function remove() { - target.removeEventListener(eventType, callback, true); - } - }; - } else { - if (process.env.NODE_ENV !== 'production') { - console.error('Attempted to listen to events during the capture phase on a ' + 'browser that does not support the capture phase. Your application ' + 'will not receive some events.'); - } - return { - remove: emptyFunction - }; - } - }, - - registerDefault: function registerDefault() {} -}; - -module.exports = EventListener; \ No newline at end of file diff --git a/node_modules/fbjs/lib/EventListener.js.flow b/node_modules/fbjs/lib/EventListener.js.flow deleted file mode 100644 index 283a3fa9b..000000000 --- a/node_modules/fbjs/lib/EventListener.js.flow +++ /dev/null @@ -1,73 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * @providesModule EventListener - * @typechecks - */ - -var emptyFunction = require('./emptyFunction'); - -/** - * Upstream version of event listener. Does not take into account specific - * nature of platform. - */ -var EventListener = { - /** - * Listen to DOM events during the bubble phase. - * - * @param {DOMEventTarget} target DOM element to register listener on. - * @param {string} eventType Event type, e.g. 'click' or 'mouseover'. - * @param {function} callback Callback function. - * @return {object} Object with a `remove` method. - */ - listen: function (target, eventType, callback) { - if (target.addEventListener) { - target.addEventListener(eventType, callback, false); - return { - remove: function () { - target.removeEventListener(eventType, callback, false); - } - }; - } else if (target.attachEvent) { - target.attachEvent('on' + eventType, callback); - return { - remove: function () { - target.detachEvent('on' + eventType, callback); - } - }; - } - }, - - /** - * Listen to DOM events during the capture phase. - * - * @param {DOMEventTarget} target DOM element to register listener on. - * @param {string} eventType Event type, e.g. 'click' or 'mouseover'. - * @param {function} callback Callback function. - * @return {object} Object with a `remove` method. - */ - capture: function (target, eventType, callback) { - if (target.addEventListener) { - target.addEventListener(eventType, callback, true); - return { - remove: function () { - target.removeEventListener(eventType, callback, true); - } - }; - } else { - if (__DEV__) { - console.error('Attempted to listen to events during the capture phase on a ' + 'browser that does not support the capture phase. Your application ' + 'will not receive some events.'); - } - return { - remove: emptyFunction - }; - } - }, - - registerDefault: function () {} -}; - -module.exports = EventListener; \ No newline at end of file diff --git a/node_modules/fbjs/lib/ExecutionEnvironment.js b/node_modules/fbjs/lib/ExecutionEnvironment.js deleted file mode 100644 index 32936fdc7..000000000 --- a/node_modules/fbjs/lib/ExecutionEnvironment.js +++ /dev/null @@ -1,33 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - */ - -'use strict'; - -var canUseDOM = !!(typeof window !== 'undefined' && window.document && window.document.createElement); - -/** - * Simple, lightweight module assisting with the detection and context of - * Worker. Helps avoid circular dependencies and allows code to reason about - * whether or not they are in a Worker, even if they never include the main - * `ReactWorker` dependency. - */ -var ExecutionEnvironment = { - - canUseDOM: canUseDOM, - - canUseWorkers: typeof Worker !== 'undefined', - - canUseEventListeners: canUseDOM && !!(window.addEventListener || window.attachEvent), - - canUseViewport: canUseDOM && !!window.screen, - - isInWorker: !canUseDOM // For now, this is true - might change in the future. - -}; - -module.exports = ExecutionEnvironment; \ No newline at end of file diff --git a/node_modules/fbjs/lib/ExecutionEnvironment.js.flow b/node_modules/fbjs/lib/ExecutionEnvironment.js.flow deleted file mode 100644 index fbea7e1bc..000000000 --- a/node_modules/fbjs/lib/ExecutionEnvironment.js.flow +++ /dev/null @@ -1,34 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * @providesModule ExecutionEnvironment - */ - -'use strict'; - -const canUseDOM = !!(typeof window !== 'undefined' && window.document && window.document.createElement); - -/** - * Simple, lightweight module assisting with the detection and context of - * Worker. Helps avoid circular dependencies and allows code to reason about - * whether or not they are in a Worker, even if they never include the main - * `ReactWorker` dependency. - */ -const ExecutionEnvironment = { - - canUseDOM: canUseDOM, - - canUseWorkers: typeof Worker !== 'undefined', - - canUseEventListeners: canUseDOM && !!(window.addEventListener || window.attachEvent), - - canUseViewport: canUseDOM && !!window.screen, - - isInWorker: !canUseDOM // For now, this is true - might change in the future. - -}; - -module.exports = ExecutionEnvironment; \ No newline at end of file diff --git a/node_modules/fbjs/lib/Keys.js b/node_modules/fbjs/lib/Keys.js deleted file mode 100644 index f2f0d9cad..000000000 --- a/node_modules/fbjs/lib/Keys.js +++ /dev/null @@ -1,34 +0,0 @@ -"use strict"; - -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - */ - -module.exports = { - BACKSPACE: 8, - TAB: 9, - RETURN: 13, - ALT: 18, - ESC: 27, - SPACE: 32, - PAGE_UP: 33, - PAGE_DOWN: 34, - END: 35, - HOME: 36, - LEFT: 37, - UP: 38, - RIGHT: 39, - DOWN: 40, - DELETE: 46, - COMMA: 188, - PERIOD: 190, - A: 65, - Z: 90, - ZERO: 48, - NUMPAD_0: 96, - NUMPAD_9: 105 -}; \ No newline at end of file diff --git a/node_modules/fbjs/lib/Keys.js.flow b/node_modules/fbjs/lib/Keys.js.flow deleted file mode 100644 index 22f57f389..000000000 --- a/node_modules/fbjs/lib/Keys.js.flow +++ /dev/null @@ -1,33 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * @providesModule Keys - */ - -module.exports = { - BACKSPACE: 8, - TAB: 9, - RETURN: 13, - ALT: 18, - ESC: 27, - SPACE: 32, - PAGE_UP: 33, - PAGE_DOWN: 34, - END: 35, - HOME: 36, - LEFT: 37, - UP: 38, - RIGHT: 39, - DOWN: 40, - DELETE: 46, - COMMA: 188, - PERIOD: 190, - A: 65, - Z: 90, - ZERO: 48, - NUMPAD_0: 96, - NUMPAD_9: 105 -}; \ No newline at end of file diff --git a/node_modules/fbjs/lib/Map.js b/node_modules/fbjs/lib/Map.js deleted file mode 100644 index c224b8911..000000000 --- a/node_modules/fbjs/lib/Map.js +++ /dev/null @@ -1,11 +0,0 @@ -'use strict'; - -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - */ - -module.exports = require('core-js/library/es6/map'); \ No newline at end of file diff --git a/node_modules/fbjs/lib/Map.js.flow b/node_modules/fbjs/lib/Map.js.flow deleted file mode 100644 index f0a6e2c18..000000000 --- a/node_modules/fbjs/lib/Map.js.flow +++ /dev/null @@ -1,10 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * @providesModule Map - */ - -module.exports = require('core-js/library/es6/map'); \ No newline at end of file diff --git a/node_modules/fbjs/lib/PhotosMimeType.js b/node_modules/fbjs/lib/PhotosMimeType.js deleted file mode 100644 index 467892a7f..000000000 --- a/node_modules/fbjs/lib/PhotosMimeType.js +++ /dev/null @@ -1,26 +0,0 @@ -'use strict'; - -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - */ -var PhotosMimeType = { - isImage: function isImage(mimeString) { - return getParts(mimeString)[0] === 'image'; - }, - isJpeg: function isJpeg(mimeString) { - var parts = getParts(mimeString); - return PhotosMimeType.isImage(mimeString) && ( - // see http://fburl.com/10972194 - parts[1] === 'jpeg' || parts[1] === 'pjpeg'); - } -}; - -function getParts(mimeString) { - return mimeString.split('/'); -} - -module.exports = PhotosMimeType; \ No newline at end of file diff --git a/node_modules/fbjs/lib/PhotosMimeType.js.flow b/node_modules/fbjs/lib/PhotosMimeType.js.flow deleted file mode 100644 index a6c3ae137..000000000 --- a/node_modules/fbjs/lib/PhotosMimeType.js.flow +++ /dev/null @@ -1,26 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * @providesModule PhotosMimeType - */ -const PhotosMimeType = { - isImage(mimeString) { - return getParts(mimeString)[0] === 'image'; - }, - - isJpeg(mimeString) { - const parts = getParts(mimeString); - return PhotosMimeType.isImage(mimeString) && ( - // see http://fburl.com/10972194 - parts[1] === 'jpeg' || parts[1] === 'pjpeg'); - } -}; - -function getParts(mimeString) { - return mimeString.split('/'); -} - -module.exports = PhotosMimeType; \ No newline at end of file diff --git a/node_modules/fbjs/lib/Promise.js b/node_modules/fbjs/lib/Promise.js deleted file mode 100644 index 3ce10a0e7..000000000 --- a/node_modules/fbjs/lib/Promise.js +++ /dev/null @@ -1,11 +0,0 @@ -'use strict'; - -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - */ - -module.exports = require('promise'); \ No newline at end of file diff --git a/node_modules/fbjs/lib/Promise.js.flow b/node_modules/fbjs/lib/Promise.js.flow deleted file mode 100644 index 1b421ef67..000000000 --- a/node_modules/fbjs/lib/Promise.js.flow +++ /dev/null @@ -1,10 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * @providesModule Promise - */ - -module.exports = require('promise'); \ No newline at end of file diff --git a/node_modules/fbjs/lib/Promise.native.js b/node_modules/fbjs/lib/Promise.native.js deleted file mode 100644 index 27aa673f1..000000000 --- a/node_modules/fbjs/lib/Promise.native.js +++ /dev/null @@ -1,25 +0,0 @@ -/** - * - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * This module wraps and augments the minimally ES6-compliant Promise - * implementation provided by the promise npm package. - * - */ - -'use strict'; - -var Promise = require('promise/setimmediate/es6-extensions'); -require('promise/setimmediate/done'); - -/** - * Handle either fulfillment or rejection with the same callback. - */ -Promise.prototype['finally'] = function (onSettled) { - return this.then(onSettled, onSettled); -}; - -module.exports = Promise; \ No newline at end of file diff --git a/node_modules/fbjs/lib/Promise.native.js.flow b/node_modules/fbjs/lib/Promise.native.js.flow deleted file mode 100644 index a988e5b3d..000000000 --- a/node_modules/fbjs/lib/Promise.native.js.flow +++ /dev/null @@ -1,25 +0,0 @@ -/** - * - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * This module wraps and augments the minimally ES6-compliant Promise - * implementation provided by the promise npm package. - * - */ - -'use strict'; - -var Promise = require('promise/setimmediate/es6-extensions'); -require('promise/setimmediate/done'); - -/** - * Handle either fulfillment or rejection with the same callback. - */ -Promise.prototype.finally = function (onSettled) { - return this.then(onSettled, onSettled); -}; - -module.exports = Promise; \ No newline at end of file diff --git a/node_modules/fbjs/lib/PromiseMap.js b/node_modules/fbjs/lib/PromiseMap.js deleted file mode 100644 index 467060a8d..000000000 --- a/node_modules/fbjs/lib/PromiseMap.js +++ /dev/null @@ -1,57 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * - */ - -'use strict'; - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -var Deferred = require('./Deferred'); - -var invariant = require('./invariant'); - -/** - * A map of asynchronous values that can be get or set in any order. Unlike a - * normal map, setting the value for a particular key more than once throws. - * Also unlike a normal map, a key can either be resolved or rejected. - */ - -var PromiseMap = function () { - function PromiseMap() { - _classCallCheck(this, PromiseMap); - - this._deferred = {}; - } - - PromiseMap.prototype.get = function get(key) { - return getDeferred(this._deferred, key).getPromise(); - }; - - PromiseMap.prototype.resolveKey = function resolveKey(key, value) { - var entry = getDeferred(this._deferred, key); - !!entry.isSettled() ? process.env.NODE_ENV !== 'production' ? invariant(false, 'PromiseMap: Already settled `%s`.', key) : invariant(false) : void 0; - entry.resolve(value); - }; - - PromiseMap.prototype.rejectKey = function rejectKey(key, reason) { - var entry = getDeferred(this._deferred, key); - !!entry.isSettled() ? process.env.NODE_ENV !== 'production' ? invariant(false, 'PromiseMap: Already settled `%s`.', key) : invariant(false) : void 0; - entry.reject(reason); - }; - - return PromiseMap; -}(); - -function getDeferred(entries, key) { - if (!entries.hasOwnProperty(key)) { - entries[key] = new Deferred(); - } - return entries[key]; -} - -module.exports = PromiseMap; \ No newline at end of file diff --git a/node_modules/fbjs/lib/PromiseMap.js.flow b/node_modules/fbjs/lib/PromiseMap.js.flow deleted file mode 100644 index 5ae135a4b..000000000 --- a/node_modules/fbjs/lib/PromiseMap.js.flow +++ /dev/null @@ -1,53 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * @providesModule PromiseMap - * @flow - */ - -'use strict'; - -const Deferred = require('./Deferred'); - -const invariant = require('./invariant'); - -/** - * A map of asynchronous values that can be get or set in any order. Unlike a - * normal map, setting the value for a particular key more than once throws. - * Also unlike a normal map, a key can either be resolved or rejected. - */ -class PromiseMap { - _deferred: { [key: string]: Deferred }; - - constructor() { - this._deferred = {}; - } - - get(key: string): Promise { - return getDeferred(this._deferred, key).getPromise(); - } - - resolveKey(key: string, value: Tvalue): void { - const entry = getDeferred(this._deferred, key); - invariant(!entry.isSettled(), 'PromiseMap: Already settled `%s`.', key); - entry.resolve(value); - } - - rejectKey(key: string, reason: Treason): void { - const entry = getDeferred(this._deferred, key); - invariant(!entry.isSettled(), 'PromiseMap: Already settled `%s`.', key); - entry.reject(reason); - } -} - -function getDeferred(entries: { [key: string]: Deferred }, key: string): Deferred { - if (!entries.hasOwnProperty(key)) { - entries[key] = new Deferred(); - } - return entries[key]; -} - -module.exports = PromiseMap; \ No newline at end of file diff --git a/node_modules/fbjs/lib/Scroll.js b/node_modules/fbjs/lib/Scroll.js deleted file mode 100644 index 85dd4fd25..000000000 --- a/node_modules/fbjs/lib/Scroll.js +++ /dev/null @@ -1,83 +0,0 @@ -"use strict"; - -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - */ - -/** - * @param {DOMElement} element - * @param {DOMDocument} doc - * @return {boolean} - */ -function _isViewportScrollElement(element, doc) { - return !!doc && (element === doc.documentElement || element === doc.body); -} - -/** - * Scroll Module. This class contains 4 simple static functions - * to be used to access Element.scrollTop/scrollLeft properties. - * To solve the inconsistencies between browsers when either - * document.body or document.documentElement is supplied, - * below logic will be used to alleviate the issue: - * - * 1. If 'element' is either 'document.body' or 'document.documentElement, - * get whichever element's 'scroll{Top,Left}' is larger. - * 2. If 'element' is either 'document.body' or 'document.documentElement', - * set the 'scroll{Top,Left}' on both elements. - */ - -var Scroll = { - /** - * @param {DOMElement} element - * @return {number} - */ - getTop: function getTop(element) { - var doc = element.ownerDocument; - return _isViewportScrollElement(element, doc) ? - // In practice, they will either both have the same value, - // or one will be zero and the other will be the scroll position - // of the viewport. So we can use `X || Y` instead of `Math.max(X, Y)` - doc.body.scrollTop || doc.documentElement.scrollTop : element.scrollTop; - }, - - /** - * @param {DOMElement} element - * @param {number} newTop - */ - setTop: function setTop(element, newTop) { - var doc = element.ownerDocument; - if (_isViewportScrollElement(element, doc)) { - doc.body.scrollTop = doc.documentElement.scrollTop = newTop; - } else { - element.scrollTop = newTop; - } - }, - - /** - * @param {DOMElement} element - * @return {number} - */ - getLeft: function getLeft(element) { - var doc = element.ownerDocument; - return _isViewportScrollElement(element, doc) ? doc.body.scrollLeft || doc.documentElement.scrollLeft : element.scrollLeft; - }, - - /** - * @param {DOMElement} element - * @param {number} newLeft - */ - setLeft: function setLeft(element, newLeft) { - var doc = element.ownerDocument; - if (_isViewportScrollElement(element, doc)) { - doc.body.scrollLeft = doc.documentElement.scrollLeft = newLeft; - } else { - element.scrollLeft = newLeft; - } - } -}; - -module.exports = Scroll; \ No newline at end of file diff --git a/node_modules/fbjs/lib/Scroll.js.flow b/node_modules/fbjs/lib/Scroll.js.flow deleted file mode 100644 index 1d65bcbdf..000000000 --- a/node_modules/fbjs/lib/Scroll.js.flow +++ /dev/null @@ -1,82 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * @providesModule Scroll - */ - -/** - * @param {DOMElement} element - * @param {DOMDocument} doc - * @return {boolean} - */ -function _isViewportScrollElement(element, doc) { - return !!doc && (element === doc.documentElement || element === doc.body); -} - -/** - * Scroll Module. This class contains 4 simple static functions - * to be used to access Element.scrollTop/scrollLeft properties. - * To solve the inconsistencies between browsers when either - * document.body or document.documentElement is supplied, - * below logic will be used to alleviate the issue: - * - * 1. If 'element' is either 'document.body' or 'document.documentElement, - * get whichever element's 'scroll{Top,Left}' is larger. - * 2. If 'element' is either 'document.body' or 'document.documentElement', - * set the 'scroll{Top,Left}' on both elements. - */ - -const Scroll = { - /** - * @param {DOMElement} element - * @return {number} - */ - getTop: function (element) { - const doc = element.ownerDocument; - return _isViewportScrollElement(element, doc) ? - // In practice, they will either both have the same value, - // or one will be zero and the other will be the scroll position - // of the viewport. So we can use `X || Y` instead of `Math.max(X, Y)` - doc.body.scrollTop || doc.documentElement.scrollTop : element.scrollTop; - }, - - /** - * @param {DOMElement} element - * @param {number} newTop - */ - setTop: function (element, newTop) { - const doc = element.ownerDocument; - if (_isViewportScrollElement(element, doc)) { - doc.body.scrollTop = doc.documentElement.scrollTop = newTop; - } else { - element.scrollTop = newTop; - } - }, - - /** - * @param {DOMElement} element - * @return {number} - */ - getLeft: function (element) { - const doc = element.ownerDocument; - return _isViewportScrollElement(element, doc) ? doc.body.scrollLeft || doc.documentElement.scrollLeft : element.scrollLeft; - }, - - /** - * @param {DOMElement} element - * @param {number} newLeft - */ - setLeft: function (element, newLeft) { - const doc = element.ownerDocument; - if (_isViewportScrollElement(element, doc)) { - doc.body.scrollLeft = doc.documentElement.scrollLeft = newLeft; - } else { - element.scrollLeft = newLeft; - } - } -}; - -module.exports = Scroll; \ No newline at end of file diff --git a/node_modules/fbjs/lib/Set.js b/node_modules/fbjs/lib/Set.js deleted file mode 100644 index 43470f1eb..000000000 --- a/node_modules/fbjs/lib/Set.js +++ /dev/null @@ -1,11 +0,0 @@ -'use strict'; - -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - */ - -module.exports = require('core-js/library/es6/set'); \ No newline at end of file diff --git a/node_modules/fbjs/lib/Set.js.flow b/node_modules/fbjs/lib/Set.js.flow deleted file mode 100644 index d1a48d906..000000000 --- a/node_modules/fbjs/lib/Set.js.flow +++ /dev/null @@ -1,10 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * @providesModule Set - */ - -module.exports = require('core-js/library/es6/set'); \ No newline at end of file diff --git a/node_modules/fbjs/lib/Style.js b/node_modules/fbjs/lib/Style.js deleted file mode 100644 index 28071b91e..000000000 --- a/node_modules/fbjs/lib/Style.js +++ /dev/null @@ -1,62 +0,0 @@ -'use strict'; - -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * @typechecks - */ - -var getStyleProperty = require('./getStyleProperty'); - -/** - * @param {DOMNode} element [description] - * @param {string} name Overflow style property name. - * @return {boolean} True if the supplied ndoe is scrollable. - */ -function _isNodeScrollable(element, name) { - var overflow = Style.get(element, name); - return overflow === 'auto' || overflow === 'scroll'; -} - -/** - * Utilities for querying and mutating style properties. - */ -var Style = { - /** - * Gets the style property for the supplied node. This will return either the - * computed style, if available, or the declared style. - * - * @param {DOMNode} node - * @param {string} name Style property name. - * @return {?string} Style property value. - */ - get: getStyleProperty, - - /** - * Determines the nearest ancestor of a node that is scrollable. - * - * NOTE: This can be expensive if used repeatedly or on a node nested deeply. - * - * @param {?DOMNode} node Node from which to start searching. - * @return {?DOMWindow|DOMElement} Scroll parent of the supplied node. - */ - getScrollParent: function getScrollParent(node) { - if (!node) { - return null; - } - var ownerDocument = node.ownerDocument; - while (node && node !== ownerDocument.body) { - if (_isNodeScrollable(node, 'overflow') || _isNodeScrollable(node, 'overflowY') || _isNodeScrollable(node, 'overflowX')) { - return node; - } - node = node.parentNode; - } - return ownerDocument.defaultView || ownerDocument.parentWindow; - } - -}; - -module.exports = Style; \ No newline at end of file diff --git a/node_modules/fbjs/lib/Style.js.flow b/node_modules/fbjs/lib/Style.js.flow deleted file mode 100644 index d90db8c38..000000000 --- a/node_modules/fbjs/lib/Style.js.flow +++ /dev/null @@ -1,61 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * @providesModule Style - * @typechecks - */ - -var getStyleProperty = require('./getStyleProperty'); - -/** - * @param {DOMNode} element [description] - * @param {string} name Overflow style property name. - * @return {boolean} True if the supplied ndoe is scrollable. - */ -function _isNodeScrollable(element, name) { - var overflow = Style.get(element, name); - return overflow === 'auto' || overflow === 'scroll'; -} - -/** - * Utilities for querying and mutating style properties. - */ -var Style = { - /** - * Gets the style property for the supplied node. This will return either the - * computed style, if available, or the declared style. - * - * @param {DOMNode} node - * @param {string} name Style property name. - * @return {?string} Style property value. - */ - get: getStyleProperty, - - /** - * Determines the nearest ancestor of a node that is scrollable. - * - * NOTE: This can be expensive if used repeatedly or on a node nested deeply. - * - * @param {?DOMNode} node Node from which to start searching. - * @return {?DOMWindow|DOMElement} Scroll parent of the supplied node. - */ - getScrollParent: function (node) { - if (!node) { - return null; - } - var ownerDocument = node.ownerDocument; - while (node && node !== ownerDocument.body) { - if (_isNodeScrollable(node, 'overflow') || _isNodeScrollable(node, 'overflowY') || _isNodeScrollable(node, 'overflowX')) { - return node; - } - node = node.parentNode; - } - return ownerDocument.defaultView || ownerDocument.parentWindow; - } - -}; - -module.exports = Style; \ No newline at end of file diff --git a/node_modules/fbjs/lib/TokenizeUtil.js b/node_modules/fbjs/lib/TokenizeUtil.js deleted file mode 100644 index 74567c876..000000000 --- a/node_modules/fbjs/lib/TokenizeUtil.js +++ /dev/null @@ -1,35 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * @typechecks - * @stub - * - */ - -'use strict'; - -// \u00a1-\u00b1\u00b4-\u00b8\u00ba\u00bb\u00bf -// is latin supplement punctuation except fractions and superscript -// numbers -// \u2010-\u2027\u2030-\u205e -// is punctuation from the general punctuation block: -// weird quotes, commas, bullets, dashes, etc. -// \u30fb\u3001\u3002\u3008-\u3011\u3014-\u301f -// is CJK punctuation -// \uff1a-\uff1f\uff01-\uff0f\uff3b-\uff40\uff5b-\uff65 -// is some full-width/half-width punctuation -// \u2E2E\u061f\u066a-\u066c\u061b\u060c\u060d\uFD3e\uFD3F -// is some Arabic punctuation marks -// \u1801\u0964\u104a\u104b -// is misc. other language punctuation marks - -var PUNCTUATION = '[.,+*?$|#{}()\'\\^\\-\\[\\]\\\\\\/!@%"~=<>_:;' + '\u30FB\u3001\u3002\u3008-\u3011\u3014-\u301F\uFF1A-\uFF1F\uFF01-\uFF0F' + '\uFF3B-\uFF40\uFF5B-\uFF65\u2E2E\u061F\u066A-\u066C\u061B\u060C\u060D' + '\uFD3E\uFD3F\u1801\u0964\u104A\u104B\u2010-\u2027\u2030-\u205E' + '\xA1-\xB1\xB4-\xB8\xBA\xBB\xBF]'; - -module.exports = { - getPunctuation: function getPunctuation() { - return PUNCTUATION; - } -}; \ No newline at end of file diff --git a/node_modules/fbjs/lib/TokenizeUtil.js.flow b/node_modules/fbjs/lib/TokenizeUtil.js.flow deleted file mode 100644 index 642590ad4..000000000 --- a/node_modules/fbjs/lib/TokenizeUtil.js.flow +++ /dev/null @@ -1,34 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * @providesModule TokenizeUtil - * @typechecks - * @stub - * @flow - */ - -'use strict'; - -// \u00a1-\u00b1\u00b4-\u00b8\u00ba\u00bb\u00bf -// is latin supplement punctuation except fractions and superscript -// numbers -// \u2010-\u2027\u2030-\u205e -// is punctuation from the general punctuation block: -// weird quotes, commas, bullets, dashes, etc. -// \u30fb\u3001\u3002\u3008-\u3011\u3014-\u301f -// is CJK punctuation -// \uff1a-\uff1f\uff01-\uff0f\uff3b-\uff40\uff5b-\uff65 -// is some full-width/half-width punctuation -// \u2E2E\u061f\u066a-\u066c\u061b\u060c\u060d\uFD3e\uFD3F -// is some Arabic punctuation marks -// \u1801\u0964\u104a\u104b -// is misc. other language punctuation marks - -var PUNCTUATION = '[.,+*?$|#{}()\'\\^\\-\\[\\]\\\\\\/!@%"~=<>_:;' + '\u30fb\u3001\u3002\u3008-\u3011\u3014-\u301f\uff1a-\uff1f\uff01-\uff0f' + '\uff3b-\uff40\uff5b-\uff65\u2E2E\u061f\u066a-\u066c\u061b\u060c\u060d' + '\uFD3e\uFD3F\u1801\u0964\u104a\u104b\u2010-\u2027\u2030-\u205e' + '\u00a1-\u00b1\u00b4-\u00b8\u00ba\u00bb\u00bf]'; - -module.exports = { - getPunctuation: (): string => PUNCTUATION -}; \ No newline at end of file diff --git a/node_modules/fbjs/lib/TouchEventUtils.js b/node_modules/fbjs/lib/TouchEventUtils.js deleted file mode 100644 index 1125d80ca..000000000 --- a/node_modules/fbjs/lib/TouchEventUtils.js +++ /dev/null @@ -1,32 +0,0 @@ -"use strict"; - -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - */ - -var TouchEventUtils = { - /** - * Utility function for common case of extracting out the primary touch from a - * touch event. - * - `touchEnd` events usually do not have the `touches` property. - * http://stackoverflow.com/questions/3666929/ - * mobile-sarai-touchend-event-not-firing-when-last-touch-is-removed - * - * @param {Event} nativeEvent Native event that may or may not be a touch. - * @return {TouchesObject?} an object with pageX and pageY or null. - */ - extractSingleTouch: function extractSingleTouch(nativeEvent) { - var touches = nativeEvent.touches; - var changedTouches = nativeEvent.changedTouches; - var hasTouches = touches && touches.length > 0; - var hasChangedTouches = changedTouches && changedTouches.length > 0; - - return !hasTouches && hasChangedTouches ? changedTouches[0] : hasTouches ? touches[0] : nativeEvent; - } -}; - -module.exports = TouchEventUtils; \ No newline at end of file diff --git a/node_modules/fbjs/lib/TouchEventUtils.js.flow b/node_modules/fbjs/lib/TouchEventUtils.js.flow deleted file mode 100644 index cff75f16a..000000000 --- a/node_modules/fbjs/lib/TouchEventUtils.js.flow +++ /dev/null @@ -1,31 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * @providesModule TouchEventUtils - */ - -const TouchEventUtils = { - /** - * Utility function for common case of extracting out the primary touch from a - * touch event. - * - `touchEnd` events usually do not have the `touches` property. - * http://stackoverflow.com/questions/3666929/ - * mobile-sarai-touchend-event-not-firing-when-last-touch-is-removed - * - * @param {Event} nativeEvent Native event that may or may not be a touch. - * @return {TouchesObject?} an object with pageX and pageY or null. - */ - extractSingleTouch: function (nativeEvent) { - const touches = nativeEvent.touches; - const changedTouches = nativeEvent.changedTouches; - const hasTouches = touches && touches.length > 0; - const hasChangedTouches = changedTouches && changedTouches.length > 0; - - return !hasTouches && hasChangedTouches ? changedTouches[0] : hasTouches ? touches[0] : nativeEvent; - } -}; - -module.exports = TouchEventUtils; \ No newline at end of file diff --git a/node_modules/fbjs/lib/URI.js b/node_modules/fbjs/lib/URI.js deleted file mode 100644 index fdd0d7ba1..000000000 --- a/node_modules/fbjs/lib/URI.js +++ /dev/null @@ -1,28 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * - */ - -'use strict'; - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -var URI = function () { - function URI(uri) { - _classCallCheck(this, URI); - - this._uri = uri; - } - - URI.prototype.toString = function toString() { - return this._uri; - }; - - return URI; -}(); - -module.exports = URI; \ No newline at end of file diff --git a/node_modules/fbjs/lib/URI.js.flow b/node_modules/fbjs/lib/URI.js.flow deleted file mode 100644 index e5988e9e3..000000000 --- a/node_modules/fbjs/lib/URI.js.flow +++ /dev/null @@ -1,25 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * @providesModule URI - * @flow - */ - -'use strict'; - -class URI { - _uri: string; - - constructor(uri: string) { - this._uri = uri; - } - - toString(): string { - return this._uri; - } -} - -module.exports = URI; \ No newline at end of file diff --git a/node_modules/fbjs/lib/UnicodeBidi.js b/node_modules/fbjs/lib/UnicodeBidi.js deleted file mode 100644 index 2cfbc586d..000000000 --- a/node_modules/fbjs/lib/UnicodeBidi.js +++ /dev/null @@ -1,154 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * @typechecks - * - */ - -/** - * Basic (stateless) API for text direction detection - * - * Part of our implementation of Unicode Bidirectional Algorithm (UBA) - * Unicode Standard Annex #9 (UAX9) - * http://www.unicode.org/reports/tr9/ - */ - -'use strict'; - -var UnicodeBidiDirection = require('./UnicodeBidiDirection'); - -var invariant = require('./invariant'); - -/** - * RegExp ranges of characters with a *Strong* Bidi_Class value. - * - * Data is based on DerivedBidiClass.txt in UCD version 7.0.0. - * - * NOTE: For performance reasons, we only support Unicode's - * Basic Multilingual Plane (BMP) for now. - */ -var RANGE_BY_BIDI_TYPE = { - - L: 'A-Za-z\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u01BA\u01BB' + '\u01BC-\u01BF\u01C0-\u01C3\u01C4-\u0293\u0294\u0295-\u02AF\u02B0-\u02B8' + '\u02BB-\u02C1\u02D0-\u02D1\u02E0-\u02E4\u02EE\u0370-\u0373\u0376-\u0377' + '\u037A\u037B-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1' + '\u03A3-\u03F5\u03F7-\u0481\u0482\u048A-\u052F\u0531-\u0556\u0559' + '\u055A-\u055F\u0561-\u0587\u0589\u0903\u0904-\u0939\u093B\u093D' + '\u093E-\u0940\u0949-\u094C\u094E-\u094F\u0950\u0958-\u0961\u0964-\u0965' + '\u0966-\u096F\u0970\u0971\u0972-\u0980\u0982-\u0983\u0985-\u098C' + '\u098F-\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD' + '\u09BE-\u09C0\u09C7-\u09C8\u09CB-\u09CC\u09CE\u09D7\u09DC-\u09DD' + '\u09DF-\u09E1\u09E6-\u09EF\u09F0-\u09F1\u09F4-\u09F9\u09FA\u0A03' + '\u0A05-\u0A0A\u0A0F-\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32-\u0A33' + '\u0A35-\u0A36\u0A38-\u0A39\u0A3E-\u0A40\u0A59-\u0A5C\u0A5E\u0A66-\u0A6F' + '\u0A72-\u0A74\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0' + '\u0AB2-\u0AB3\u0AB5-\u0AB9\u0ABD\u0ABE-\u0AC0\u0AC9\u0ACB-\u0ACC\u0AD0' + '\u0AE0-\u0AE1\u0AE6-\u0AEF\u0AF0\u0B02-\u0B03\u0B05-\u0B0C\u0B0F-\u0B10' + '\u0B13-\u0B28\u0B2A-\u0B30\u0B32-\u0B33\u0B35-\u0B39\u0B3D\u0B3E\u0B40' + '\u0B47-\u0B48\u0B4B-\u0B4C\u0B57\u0B5C-\u0B5D\u0B5F-\u0B61\u0B66-\u0B6F' + '\u0B70\u0B71\u0B72-\u0B77\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95' + '\u0B99-\u0B9A\u0B9C\u0B9E-\u0B9F\u0BA3-\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9' + '\u0BBE-\u0BBF\u0BC1-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCC\u0BD0\u0BD7' + '\u0BE6-\u0BEF\u0BF0-\u0BF2\u0C01-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10' + '\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C41-\u0C44\u0C58-\u0C59\u0C60-\u0C61' + '\u0C66-\u0C6F\u0C7F\u0C82-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8' + '\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CBE\u0CBF\u0CC0-\u0CC4\u0CC6' + '\u0CC7-\u0CC8\u0CCA-\u0CCB\u0CD5-\u0CD6\u0CDE\u0CE0-\u0CE1\u0CE6-\u0CEF' + '\u0CF1-\u0CF2\u0D02-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D' + '\u0D3E-\u0D40\u0D46-\u0D48\u0D4A-\u0D4C\u0D4E\u0D57\u0D60-\u0D61' + '\u0D66-\u0D6F\u0D70-\u0D75\u0D79\u0D7A-\u0D7F\u0D82-\u0D83\u0D85-\u0D96' + '\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCF-\u0DD1\u0DD8-\u0DDF' + '\u0DE6-\u0DEF\u0DF2-\u0DF3\u0DF4\u0E01-\u0E30\u0E32-\u0E33\u0E40-\u0E45' + '\u0E46\u0E4F\u0E50-\u0E59\u0E5A-\u0E5B\u0E81-\u0E82\u0E84\u0E87-\u0E88' + '\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7' + '\u0EAA-\u0EAB\u0EAD-\u0EB0\u0EB2-\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6' + '\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F01-\u0F03\u0F04-\u0F12\u0F13\u0F14' + '\u0F15-\u0F17\u0F1A-\u0F1F\u0F20-\u0F29\u0F2A-\u0F33\u0F34\u0F36\u0F38' + '\u0F3E-\u0F3F\u0F40-\u0F47\u0F49-\u0F6C\u0F7F\u0F85\u0F88-\u0F8C' + '\u0FBE-\u0FC5\u0FC7-\u0FCC\u0FCE-\u0FCF\u0FD0-\u0FD4\u0FD5-\u0FD8' + '\u0FD9-\u0FDA\u1000-\u102A\u102B-\u102C\u1031\u1038\u103B-\u103C\u103F' + '\u1040-\u1049\u104A-\u104F\u1050-\u1055\u1056-\u1057\u105A-\u105D\u1061' + '\u1062-\u1064\u1065-\u1066\u1067-\u106D\u106E-\u1070\u1075-\u1081' + '\u1083-\u1084\u1087-\u108C\u108E\u108F\u1090-\u1099\u109A-\u109C' + '\u109E-\u109F\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FB\u10FC' + '\u10FD-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288' + '\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5' + '\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1360-\u1368' + '\u1369-\u137C\u1380-\u138F\u13A0-\u13F4\u1401-\u166C\u166D-\u166E' + '\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EB-\u16ED\u16EE-\u16F0' + '\u16F1-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1735-\u1736' + '\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17B6\u17BE-\u17C5' + '\u17C7-\u17C8\u17D4-\u17D6\u17D7\u17D8-\u17DA\u17DC\u17E0-\u17E9' + '\u1810-\u1819\u1820-\u1842\u1843\u1844-\u1877\u1880-\u18A8\u18AA' + '\u18B0-\u18F5\u1900-\u191E\u1923-\u1926\u1929-\u192B\u1930-\u1931' + '\u1933-\u1938\u1946-\u194F\u1950-\u196D\u1970-\u1974\u1980-\u19AB' + '\u19B0-\u19C0\u19C1-\u19C7\u19C8-\u19C9\u19D0-\u19D9\u19DA\u1A00-\u1A16' + '\u1A19-\u1A1A\u1A1E-\u1A1F\u1A20-\u1A54\u1A55\u1A57\u1A61\u1A63-\u1A64' + '\u1A6D-\u1A72\u1A80-\u1A89\u1A90-\u1A99\u1AA0-\u1AA6\u1AA7\u1AA8-\u1AAD' + '\u1B04\u1B05-\u1B33\u1B35\u1B3B\u1B3D-\u1B41\u1B43-\u1B44\u1B45-\u1B4B' + '\u1B50-\u1B59\u1B5A-\u1B60\u1B61-\u1B6A\u1B74-\u1B7C\u1B82\u1B83-\u1BA0' + '\u1BA1\u1BA6-\u1BA7\u1BAA\u1BAE-\u1BAF\u1BB0-\u1BB9\u1BBA-\u1BE5\u1BE7' + '\u1BEA-\u1BEC\u1BEE\u1BF2-\u1BF3\u1BFC-\u1BFF\u1C00-\u1C23\u1C24-\u1C2B' + '\u1C34-\u1C35\u1C3B-\u1C3F\u1C40-\u1C49\u1C4D-\u1C4F\u1C50-\u1C59' + '\u1C5A-\u1C77\u1C78-\u1C7D\u1C7E-\u1C7F\u1CC0-\u1CC7\u1CD3\u1CE1' + '\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF2-\u1CF3\u1CF5-\u1CF6\u1D00-\u1D2B' + '\u1D2C-\u1D6A\u1D6B-\u1D77\u1D78\u1D79-\u1D9A\u1D9B-\u1DBF\u1E00-\u1F15' + '\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D' + '\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC' + '\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u200E' + '\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D' + '\u2124\u2126\u2128\u212A-\u212D\u212F-\u2134\u2135-\u2138\u2139' + '\u213C-\u213F\u2145-\u2149\u214E\u214F\u2160-\u2182\u2183-\u2184' + '\u2185-\u2188\u2336-\u237A\u2395\u249C-\u24E9\u26AC\u2800-\u28FF' + '\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2C7B\u2C7C-\u2C7D\u2C7E-\u2CE4' + '\u2CEB-\u2CEE\u2CF2-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F' + '\u2D70\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE' + '\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3005\u3006\u3007' + '\u3021-\u3029\u302E-\u302F\u3031-\u3035\u3038-\u303A\u303B\u303C' + '\u3041-\u3096\u309D-\u309E\u309F\u30A1-\u30FA\u30FC-\u30FE\u30FF' + '\u3105-\u312D\u3131-\u318E\u3190-\u3191\u3192-\u3195\u3196-\u319F' + '\u31A0-\u31BA\u31F0-\u31FF\u3200-\u321C\u3220-\u3229\u322A-\u3247' + '\u3248-\u324F\u3260-\u327B\u327F\u3280-\u3289\u328A-\u32B0\u32C0-\u32CB' + '\u32D0-\u32FE\u3300-\u3376\u337B-\u33DD\u33E0-\u33FE\u3400-\u4DB5' + '\u4E00-\u9FCC\uA000-\uA014\uA015\uA016-\uA48C\uA4D0-\uA4F7\uA4F8-\uA4FD' + '\uA4FE-\uA4FF\uA500-\uA60B\uA60C\uA610-\uA61F\uA620-\uA629\uA62A-\uA62B' + '\uA640-\uA66D\uA66E\uA680-\uA69B\uA69C-\uA69D\uA6A0-\uA6E5\uA6E6-\uA6EF' + '\uA6F2-\uA6F7\uA722-\uA76F\uA770\uA771-\uA787\uA789-\uA78A\uA78B-\uA78E' + '\uA790-\uA7AD\uA7B0-\uA7B1\uA7F7\uA7F8-\uA7F9\uA7FA\uA7FB-\uA801' + '\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA823-\uA824\uA827\uA830-\uA835' + '\uA836-\uA837\uA840-\uA873\uA880-\uA881\uA882-\uA8B3\uA8B4-\uA8C3' + '\uA8CE-\uA8CF\uA8D0-\uA8D9\uA8F2-\uA8F7\uA8F8-\uA8FA\uA8FB\uA900-\uA909' + '\uA90A-\uA925\uA92E-\uA92F\uA930-\uA946\uA952-\uA953\uA95F\uA960-\uA97C' + '\uA983\uA984-\uA9B2\uA9B4-\uA9B5\uA9BA-\uA9BB\uA9BD-\uA9C0\uA9C1-\uA9CD' + '\uA9CF\uA9D0-\uA9D9\uA9DE-\uA9DF\uA9E0-\uA9E4\uA9E6\uA9E7-\uA9EF' + '\uA9F0-\uA9F9\uA9FA-\uA9FE\uAA00-\uAA28\uAA2F-\uAA30\uAA33-\uAA34' + '\uAA40-\uAA42\uAA44-\uAA4B\uAA4D\uAA50-\uAA59\uAA5C-\uAA5F\uAA60-\uAA6F' + '\uAA70\uAA71-\uAA76\uAA77-\uAA79\uAA7A\uAA7B\uAA7D\uAA7E-\uAAAF\uAAB1' + '\uAAB5-\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADC\uAADD\uAADE-\uAADF' + '\uAAE0-\uAAEA\uAAEB\uAAEE-\uAAEF\uAAF0-\uAAF1\uAAF2\uAAF3-\uAAF4\uAAF5' + '\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E' + '\uAB30-\uAB5A\uAB5B\uAB5C-\uAB5F\uAB64-\uAB65\uABC0-\uABE2\uABE3-\uABE4' + '\uABE6-\uABE7\uABE9-\uABEA\uABEB\uABEC\uABF0-\uABF9\uAC00-\uD7A3' + '\uD7B0-\uD7C6\uD7CB-\uD7FB\uE000-\uF8FF\uF900-\uFA6D\uFA70-\uFAD9' + '\uFB00-\uFB06\uFB13-\uFB17\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFF6F\uFF70' + '\uFF71-\uFF9D\uFF9E-\uFF9F\uFFA0-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF' + '\uFFD2-\uFFD7\uFFDA-\uFFDC', - - R: '\u0590\u05BE\u05C0\u05C3\u05C6\u05C8-\u05CF\u05D0-\u05EA\u05EB-\u05EF' + '\u05F0-\u05F2\u05F3-\u05F4\u05F5-\u05FF\u07C0-\u07C9\u07CA-\u07EA' + '\u07F4-\u07F5\u07FA\u07FB-\u07FF\u0800-\u0815\u081A\u0824\u0828' + '\u082E-\u082F\u0830-\u083E\u083F\u0840-\u0858\u085C-\u085D\u085E' + '\u085F-\u089F\u200F\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB37\uFB38-\uFB3C' + '\uFB3D\uFB3E\uFB3F\uFB40-\uFB41\uFB42\uFB43-\uFB44\uFB45\uFB46-\uFB4F', - - AL: '\u0608\u060B\u060D\u061B\u061C\u061D\u061E-\u061F\u0620-\u063F\u0640' + '\u0641-\u064A\u066D\u066E-\u066F\u0671-\u06D3\u06D4\u06D5\u06E5-\u06E6' + '\u06EE-\u06EF\u06FA-\u06FC\u06FD-\u06FE\u06FF\u0700-\u070D\u070E\u070F' + '\u0710\u0712-\u072F\u074B-\u074C\u074D-\u07A5\u07B1\u07B2-\u07BF' + '\u08A0-\u08B2\u08B3-\u08E3\uFB50-\uFBB1\uFBB2-\uFBC1\uFBC2-\uFBD2' + '\uFBD3-\uFD3D\uFD40-\uFD4F\uFD50-\uFD8F\uFD90-\uFD91\uFD92-\uFDC7' + '\uFDC8-\uFDCF\uFDF0-\uFDFB\uFDFC\uFDFE-\uFDFF\uFE70-\uFE74\uFE75' + '\uFE76-\uFEFC\uFEFD-\uFEFE' - -}; - -var REGEX_STRONG = new RegExp('[' + RANGE_BY_BIDI_TYPE.L + RANGE_BY_BIDI_TYPE.R + RANGE_BY_BIDI_TYPE.AL + ']'); - -var REGEX_RTL = new RegExp('[' + RANGE_BY_BIDI_TYPE.R + RANGE_BY_BIDI_TYPE.AL + ']'); - -/** - * Returns the first strong character (has Bidi_Class value of L, R, or AL). - * - * @param str A text block; e.g. paragraph, table cell, tag - * @return A character with strong bidi direction, or null if not found - */ -function firstStrongChar(str) { - var match = REGEX_STRONG.exec(str); - return match == null ? null : match[0]; -} - -/** - * Returns the direction of a block of text, based on the direction of its - * first strong character (has Bidi_Class value of L, R, or AL). - * - * @param str A text block; e.g. paragraph, table cell, tag - * @return The resolved direction - */ -function firstStrongCharDir(str) { - var strongChar = firstStrongChar(str); - if (strongChar == null) { - return UnicodeBidiDirection.NEUTRAL; - } - return REGEX_RTL.exec(strongChar) ? UnicodeBidiDirection.RTL : UnicodeBidiDirection.LTR; -} - -/** - * Returns the direction of a block of text, based on the direction of its - * first strong character (has Bidi_Class value of L, R, or AL), or a fallback - * direction, if no strong character is found. - * - * This function is supposed to be used in respect to Higher-Level Protocol - * rule HL1. (http://www.unicode.org/reports/tr9/#HL1) - * - * @param str A text block; e.g. paragraph, table cell, tag - * @param fallback Fallback direction, used if no strong direction detected - * for the block (default = NEUTRAL) - * @return The resolved direction - */ -function resolveBlockDir(str, fallback) { - fallback = fallback || UnicodeBidiDirection.NEUTRAL; - if (!str.length) { - return fallback; - } - var blockDir = firstStrongCharDir(str); - return blockDir === UnicodeBidiDirection.NEUTRAL ? fallback : blockDir; -} - -/** - * Returns the direction of a block of text, based on the direction of its - * first strong character (has Bidi_Class value of L, R, or AL), or a fallback - * direction, if no strong character is found. - * - * NOTE: This function is similar to resolveBlockDir(), but uses the global - * direction as the fallback, so it *always* returns a Strong direction, - * making it useful for integration in places that you need to make the final - * decision, like setting some CSS class. - * - * This function is supposed to be used in respect to Higher-Level Protocol - * rule HL1. (http://www.unicode.org/reports/tr9/#HL1) - * - * @param str A text block; e.g. paragraph, table cell - * @param strongFallback Fallback direction, used if no strong direction - * detected for the block (default = global direction) - * @return The resolved Strong direction - */ -function getDirection(str, strongFallback) { - if (!strongFallback) { - strongFallback = UnicodeBidiDirection.getGlobalDir(); - } - !UnicodeBidiDirection.isStrong(strongFallback) ? process.env.NODE_ENV !== 'production' ? invariant(false, 'Fallback direction must be a strong direction') : invariant(false) : void 0; - return resolveBlockDir(str, strongFallback); -} - -/** - * Returns true if getDirection(arguments...) returns LTR. - * - * @param str A text block; e.g. paragraph, table cell - * @param strongFallback Fallback direction, used if no strong direction - * detected for the block (default = global direction) - * @return True if the resolved direction is LTR - */ -function isDirectionLTR(str, strongFallback) { - return getDirection(str, strongFallback) === UnicodeBidiDirection.LTR; -} - -/** - * Returns true if getDirection(arguments...) returns RTL. - * - * @param str A text block; e.g. paragraph, table cell - * @param strongFallback Fallback direction, used if no strong direction - * detected for the block (default = global direction) - * @return True if the resolved direction is RTL - */ -function isDirectionRTL(str, strongFallback) { - return getDirection(str, strongFallback) === UnicodeBidiDirection.RTL; -} - -var UnicodeBidi = { - firstStrongChar: firstStrongChar, - firstStrongCharDir: firstStrongCharDir, - resolveBlockDir: resolveBlockDir, - getDirection: getDirection, - isDirectionLTR: isDirectionLTR, - isDirectionRTL: isDirectionRTL -}; - -module.exports = UnicodeBidi; \ No newline at end of file diff --git a/node_modules/fbjs/lib/UnicodeBidi.js.flow b/node_modules/fbjs/lib/UnicodeBidi.js.flow deleted file mode 100644 index 5e824a5dd..000000000 --- a/node_modules/fbjs/lib/UnicodeBidi.js.flow +++ /dev/null @@ -1,157 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * @providesModule UnicodeBidi - * @typechecks - * @flow - */ - -/** - * Basic (stateless) API for text direction detection - * - * Part of our implementation of Unicode Bidirectional Algorithm (UBA) - * Unicode Standard Annex #9 (UAX9) - * http://www.unicode.org/reports/tr9/ - */ - -'use strict'; - -const UnicodeBidiDirection = require('./UnicodeBidiDirection'); - -const invariant = require('./invariant'); - -import type { BidiDirection } from './UnicodeBidiDirection'; - -/** - * RegExp ranges of characters with a *Strong* Bidi_Class value. - * - * Data is based on DerivedBidiClass.txt in UCD version 7.0.0. - * - * NOTE: For performance reasons, we only support Unicode's - * Basic Multilingual Plane (BMP) for now. - */ -const RANGE_BY_BIDI_TYPE = { - - L: 'A-Za-z\u00AA\u00B5\u00BA\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u01BA\u01BB' + '\u01BC-\u01BF\u01C0-\u01C3\u01C4-\u0293\u0294\u0295-\u02AF\u02B0-\u02B8' + '\u02BB-\u02C1\u02D0-\u02D1\u02E0-\u02E4\u02EE\u0370-\u0373\u0376-\u0377' + '\u037A\u037B-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1' + '\u03A3-\u03F5\u03F7-\u0481\u0482\u048A-\u052F\u0531-\u0556\u0559' + '\u055A-\u055F\u0561-\u0587\u0589\u0903\u0904-\u0939\u093B\u093D' + '\u093E-\u0940\u0949-\u094C\u094E-\u094F\u0950\u0958-\u0961\u0964-\u0965' + '\u0966-\u096F\u0970\u0971\u0972-\u0980\u0982-\u0983\u0985-\u098C' + '\u098F-\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD' + '\u09BE-\u09C0\u09C7-\u09C8\u09CB-\u09CC\u09CE\u09D7\u09DC-\u09DD' + '\u09DF-\u09E1\u09E6-\u09EF\u09F0-\u09F1\u09F4-\u09F9\u09FA\u0A03' + '\u0A05-\u0A0A\u0A0F-\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32-\u0A33' + '\u0A35-\u0A36\u0A38-\u0A39\u0A3E-\u0A40\u0A59-\u0A5C\u0A5E\u0A66-\u0A6F' + '\u0A72-\u0A74\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0' + '\u0AB2-\u0AB3\u0AB5-\u0AB9\u0ABD\u0ABE-\u0AC0\u0AC9\u0ACB-\u0ACC\u0AD0' + '\u0AE0-\u0AE1\u0AE6-\u0AEF\u0AF0\u0B02-\u0B03\u0B05-\u0B0C\u0B0F-\u0B10' + '\u0B13-\u0B28\u0B2A-\u0B30\u0B32-\u0B33\u0B35-\u0B39\u0B3D\u0B3E\u0B40' + '\u0B47-\u0B48\u0B4B-\u0B4C\u0B57\u0B5C-\u0B5D\u0B5F-\u0B61\u0B66-\u0B6F' + '\u0B70\u0B71\u0B72-\u0B77\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95' + '\u0B99-\u0B9A\u0B9C\u0B9E-\u0B9F\u0BA3-\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9' + '\u0BBE-\u0BBF\u0BC1-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCC\u0BD0\u0BD7' + '\u0BE6-\u0BEF\u0BF0-\u0BF2\u0C01-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10' + '\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C41-\u0C44\u0C58-\u0C59\u0C60-\u0C61' + '\u0C66-\u0C6F\u0C7F\u0C82-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8' + '\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CBE\u0CBF\u0CC0-\u0CC4\u0CC6' + '\u0CC7-\u0CC8\u0CCA-\u0CCB\u0CD5-\u0CD6\u0CDE\u0CE0-\u0CE1\u0CE6-\u0CEF' + '\u0CF1-\u0CF2\u0D02-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D' + '\u0D3E-\u0D40\u0D46-\u0D48\u0D4A-\u0D4C\u0D4E\u0D57\u0D60-\u0D61' + '\u0D66-\u0D6F\u0D70-\u0D75\u0D79\u0D7A-\u0D7F\u0D82-\u0D83\u0D85-\u0D96' + '\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCF-\u0DD1\u0DD8-\u0DDF' + '\u0DE6-\u0DEF\u0DF2-\u0DF3\u0DF4\u0E01-\u0E30\u0E32-\u0E33\u0E40-\u0E45' + '\u0E46\u0E4F\u0E50-\u0E59\u0E5A-\u0E5B\u0E81-\u0E82\u0E84\u0E87-\u0E88' + '\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7' + '\u0EAA-\u0EAB\u0EAD-\u0EB0\u0EB2-\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6' + '\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F01-\u0F03\u0F04-\u0F12\u0F13\u0F14' + '\u0F15-\u0F17\u0F1A-\u0F1F\u0F20-\u0F29\u0F2A-\u0F33\u0F34\u0F36\u0F38' + '\u0F3E-\u0F3F\u0F40-\u0F47\u0F49-\u0F6C\u0F7F\u0F85\u0F88-\u0F8C' + '\u0FBE-\u0FC5\u0FC7-\u0FCC\u0FCE-\u0FCF\u0FD0-\u0FD4\u0FD5-\u0FD8' + '\u0FD9-\u0FDA\u1000-\u102A\u102B-\u102C\u1031\u1038\u103B-\u103C\u103F' + '\u1040-\u1049\u104A-\u104F\u1050-\u1055\u1056-\u1057\u105A-\u105D\u1061' + '\u1062-\u1064\u1065-\u1066\u1067-\u106D\u106E-\u1070\u1075-\u1081' + '\u1083-\u1084\u1087-\u108C\u108E\u108F\u1090-\u1099\u109A-\u109C' + '\u109E-\u109F\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FB\u10FC' + '\u10FD-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288' + '\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5' + '\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1360-\u1368' + '\u1369-\u137C\u1380-\u138F\u13A0-\u13F4\u1401-\u166C\u166D-\u166E' + '\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EB-\u16ED\u16EE-\u16F0' + '\u16F1-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1735-\u1736' + '\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17B6\u17BE-\u17C5' + '\u17C7-\u17C8\u17D4-\u17D6\u17D7\u17D8-\u17DA\u17DC\u17E0-\u17E9' + '\u1810-\u1819\u1820-\u1842\u1843\u1844-\u1877\u1880-\u18A8\u18AA' + '\u18B0-\u18F5\u1900-\u191E\u1923-\u1926\u1929-\u192B\u1930-\u1931' + '\u1933-\u1938\u1946-\u194F\u1950-\u196D\u1970-\u1974\u1980-\u19AB' + '\u19B0-\u19C0\u19C1-\u19C7\u19C8-\u19C9\u19D0-\u19D9\u19DA\u1A00-\u1A16' + '\u1A19-\u1A1A\u1A1E-\u1A1F\u1A20-\u1A54\u1A55\u1A57\u1A61\u1A63-\u1A64' + '\u1A6D-\u1A72\u1A80-\u1A89\u1A90-\u1A99\u1AA0-\u1AA6\u1AA7\u1AA8-\u1AAD' + '\u1B04\u1B05-\u1B33\u1B35\u1B3B\u1B3D-\u1B41\u1B43-\u1B44\u1B45-\u1B4B' + '\u1B50-\u1B59\u1B5A-\u1B60\u1B61-\u1B6A\u1B74-\u1B7C\u1B82\u1B83-\u1BA0' + '\u1BA1\u1BA6-\u1BA7\u1BAA\u1BAE-\u1BAF\u1BB0-\u1BB9\u1BBA-\u1BE5\u1BE7' + '\u1BEA-\u1BEC\u1BEE\u1BF2-\u1BF3\u1BFC-\u1BFF\u1C00-\u1C23\u1C24-\u1C2B' + '\u1C34-\u1C35\u1C3B-\u1C3F\u1C40-\u1C49\u1C4D-\u1C4F\u1C50-\u1C59' + '\u1C5A-\u1C77\u1C78-\u1C7D\u1C7E-\u1C7F\u1CC0-\u1CC7\u1CD3\u1CE1' + '\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF2-\u1CF3\u1CF5-\u1CF6\u1D00-\u1D2B' + '\u1D2C-\u1D6A\u1D6B-\u1D77\u1D78\u1D79-\u1D9A\u1D9B-\u1DBF\u1E00-\u1F15' + '\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D' + '\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC' + '\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u200E' + '\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D' + '\u2124\u2126\u2128\u212A-\u212D\u212F-\u2134\u2135-\u2138\u2139' + '\u213C-\u213F\u2145-\u2149\u214E\u214F\u2160-\u2182\u2183-\u2184' + '\u2185-\u2188\u2336-\u237A\u2395\u249C-\u24E9\u26AC\u2800-\u28FF' + '\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2C7B\u2C7C-\u2C7D\u2C7E-\u2CE4' + '\u2CEB-\u2CEE\u2CF2-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F' + '\u2D70\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE' + '\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3005\u3006\u3007' + '\u3021-\u3029\u302E-\u302F\u3031-\u3035\u3038-\u303A\u303B\u303C' + '\u3041-\u3096\u309D-\u309E\u309F\u30A1-\u30FA\u30FC-\u30FE\u30FF' + '\u3105-\u312D\u3131-\u318E\u3190-\u3191\u3192-\u3195\u3196-\u319F' + '\u31A0-\u31BA\u31F0-\u31FF\u3200-\u321C\u3220-\u3229\u322A-\u3247' + '\u3248-\u324F\u3260-\u327B\u327F\u3280-\u3289\u328A-\u32B0\u32C0-\u32CB' + '\u32D0-\u32FE\u3300-\u3376\u337B-\u33DD\u33E0-\u33FE\u3400-\u4DB5' + '\u4E00-\u9FCC\uA000-\uA014\uA015\uA016-\uA48C\uA4D0-\uA4F7\uA4F8-\uA4FD' + '\uA4FE-\uA4FF\uA500-\uA60B\uA60C\uA610-\uA61F\uA620-\uA629\uA62A-\uA62B' + '\uA640-\uA66D\uA66E\uA680-\uA69B\uA69C-\uA69D\uA6A0-\uA6E5\uA6E6-\uA6EF' + '\uA6F2-\uA6F7\uA722-\uA76F\uA770\uA771-\uA787\uA789-\uA78A\uA78B-\uA78E' + '\uA790-\uA7AD\uA7B0-\uA7B1\uA7F7\uA7F8-\uA7F9\uA7FA\uA7FB-\uA801' + '\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA823-\uA824\uA827\uA830-\uA835' + '\uA836-\uA837\uA840-\uA873\uA880-\uA881\uA882-\uA8B3\uA8B4-\uA8C3' + '\uA8CE-\uA8CF\uA8D0-\uA8D9\uA8F2-\uA8F7\uA8F8-\uA8FA\uA8FB\uA900-\uA909' + '\uA90A-\uA925\uA92E-\uA92F\uA930-\uA946\uA952-\uA953\uA95F\uA960-\uA97C' + '\uA983\uA984-\uA9B2\uA9B4-\uA9B5\uA9BA-\uA9BB\uA9BD-\uA9C0\uA9C1-\uA9CD' + '\uA9CF\uA9D0-\uA9D9\uA9DE-\uA9DF\uA9E0-\uA9E4\uA9E6\uA9E7-\uA9EF' + '\uA9F0-\uA9F9\uA9FA-\uA9FE\uAA00-\uAA28\uAA2F-\uAA30\uAA33-\uAA34' + '\uAA40-\uAA42\uAA44-\uAA4B\uAA4D\uAA50-\uAA59\uAA5C-\uAA5F\uAA60-\uAA6F' + '\uAA70\uAA71-\uAA76\uAA77-\uAA79\uAA7A\uAA7B\uAA7D\uAA7E-\uAAAF\uAAB1' + '\uAAB5-\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADC\uAADD\uAADE-\uAADF' + '\uAAE0-\uAAEA\uAAEB\uAAEE-\uAAEF\uAAF0-\uAAF1\uAAF2\uAAF3-\uAAF4\uAAF5' + '\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E' + '\uAB30-\uAB5A\uAB5B\uAB5C-\uAB5F\uAB64-\uAB65\uABC0-\uABE2\uABE3-\uABE4' + '\uABE6-\uABE7\uABE9-\uABEA\uABEB\uABEC\uABF0-\uABF9\uAC00-\uD7A3' + '\uD7B0-\uD7C6\uD7CB-\uD7FB\uE000-\uF8FF\uF900-\uFA6D\uFA70-\uFAD9' + '\uFB00-\uFB06\uFB13-\uFB17\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFF6F\uFF70' + '\uFF71-\uFF9D\uFF9E-\uFF9F\uFFA0-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF' + '\uFFD2-\uFFD7\uFFDA-\uFFDC', - - R: '\u0590\u05BE\u05C0\u05C3\u05C6\u05C8-\u05CF\u05D0-\u05EA\u05EB-\u05EF' + '\u05F0-\u05F2\u05F3-\u05F4\u05F5-\u05FF\u07C0-\u07C9\u07CA-\u07EA' + '\u07F4-\u07F5\u07FA\u07FB-\u07FF\u0800-\u0815\u081A\u0824\u0828' + '\u082E-\u082F\u0830-\u083E\u083F\u0840-\u0858\u085C-\u085D\u085E' + '\u085F-\u089F\u200F\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB37\uFB38-\uFB3C' + '\uFB3D\uFB3E\uFB3F\uFB40-\uFB41\uFB42\uFB43-\uFB44\uFB45\uFB46-\uFB4F', - - AL: '\u0608\u060B\u060D\u061B\u061C\u061D\u061E-\u061F\u0620-\u063F\u0640' + '\u0641-\u064A\u066D\u066E-\u066F\u0671-\u06D3\u06D4\u06D5\u06E5-\u06E6' + '\u06EE-\u06EF\u06FA-\u06FC\u06FD-\u06FE\u06FF\u0700-\u070D\u070E\u070F' + '\u0710\u0712-\u072F\u074B-\u074C\u074D-\u07A5\u07B1\u07B2-\u07BF' + '\u08A0-\u08B2\u08B3-\u08E3\uFB50-\uFBB1\uFBB2-\uFBC1\uFBC2-\uFBD2' + '\uFBD3-\uFD3D\uFD40-\uFD4F\uFD50-\uFD8F\uFD90-\uFD91\uFD92-\uFDC7' + '\uFDC8-\uFDCF\uFDF0-\uFDFB\uFDFC\uFDFE-\uFDFF\uFE70-\uFE74\uFE75' + '\uFE76-\uFEFC\uFEFD-\uFEFE' - -}; - -const REGEX_STRONG = new RegExp('[' + RANGE_BY_BIDI_TYPE.L + RANGE_BY_BIDI_TYPE.R + RANGE_BY_BIDI_TYPE.AL + ']'); - -const REGEX_RTL = new RegExp('[' + RANGE_BY_BIDI_TYPE.R + RANGE_BY_BIDI_TYPE.AL + ']'); - -/** - * Returns the first strong character (has Bidi_Class value of L, R, or AL). - * - * @param str A text block; e.g. paragraph, table cell, tag - * @return A character with strong bidi direction, or null if not found - */ -function firstStrongChar(str: string): ?string { - const match = REGEX_STRONG.exec(str); - return match == null ? null : match[0]; -} - -/** - * Returns the direction of a block of text, based on the direction of its - * first strong character (has Bidi_Class value of L, R, or AL). - * - * @param str A text block; e.g. paragraph, table cell, tag - * @return The resolved direction - */ -function firstStrongCharDir(str: string): BidiDirection { - const strongChar = firstStrongChar(str); - if (strongChar == null) { - return UnicodeBidiDirection.NEUTRAL; - } - return REGEX_RTL.exec(strongChar) ? UnicodeBidiDirection.RTL : UnicodeBidiDirection.LTR; -} - -/** - * Returns the direction of a block of text, based on the direction of its - * first strong character (has Bidi_Class value of L, R, or AL), or a fallback - * direction, if no strong character is found. - * - * This function is supposed to be used in respect to Higher-Level Protocol - * rule HL1. (http://www.unicode.org/reports/tr9/#HL1) - * - * @param str A text block; e.g. paragraph, table cell, tag - * @param fallback Fallback direction, used if no strong direction detected - * for the block (default = NEUTRAL) - * @return The resolved direction - */ -function resolveBlockDir(str: string, fallback: ?BidiDirection): BidiDirection { - fallback = fallback || UnicodeBidiDirection.NEUTRAL; - if (!str.length) { - return fallback; - } - const blockDir = firstStrongCharDir(str); - return blockDir === UnicodeBidiDirection.NEUTRAL ? fallback : blockDir; -} - -/** - * Returns the direction of a block of text, based on the direction of its - * first strong character (has Bidi_Class value of L, R, or AL), or a fallback - * direction, if no strong character is found. - * - * NOTE: This function is similar to resolveBlockDir(), but uses the global - * direction as the fallback, so it *always* returns a Strong direction, - * making it useful for integration in places that you need to make the final - * decision, like setting some CSS class. - * - * This function is supposed to be used in respect to Higher-Level Protocol - * rule HL1. (http://www.unicode.org/reports/tr9/#HL1) - * - * @param str A text block; e.g. paragraph, table cell - * @param strongFallback Fallback direction, used if no strong direction - * detected for the block (default = global direction) - * @return The resolved Strong direction - */ -function getDirection(str: string, strongFallback: ?BidiDirection): BidiDirection { - if (!strongFallback) { - strongFallback = UnicodeBidiDirection.getGlobalDir(); - } - invariant(UnicodeBidiDirection.isStrong(strongFallback), 'Fallback direction must be a strong direction'); - return resolveBlockDir(str, strongFallback); -} - -/** - * Returns true if getDirection(arguments...) returns LTR. - * - * @param str A text block; e.g. paragraph, table cell - * @param strongFallback Fallback direction, used if no strong direction - * detected for the block (default = global direction) - * @return True if the resolved direction is LTR - */ -function isDirectionLTR(str: string, strongFallback: ?BidiDirection): boolean { - return getDirection(str, strongFallback) === UnicodeBidiDirection.LTR; -} - -/** - * Returns true if getDirection(arguments...) returns RTL. - * - * @param str A text block; e.g. paragraph, table cell - * @param strongFallback Fallback direction, used if no strong direction - * detected for the block (default = global direction) - * @return True if the resolved direction is RTL - */ -function isDirectionRTL(str: string, strongFallback: ?BidiDirection): boolean { - return getDirection(str, strongFallback) === UnicodeBidiDirection.RTL; -} - -const UnicodeBidi = { - firstStrongChar: firstStrongChar, - firstStrongCharDir: firstStrongCharDir, - resolveBlockDir: resolveBlockDir, - getDirection: getDirection, - isDirectionLTR: isDirectionLTR, - isDirectionRTL: isDirectionRTL -}; - -module.exports = UnicodeBidi; \ No newline at end of file diff --git a/node_modules/fbjs/lib/UnicodeBidiDirection.js b/node_modules/fbjs/lib/UnicodeBidiDirection.js deleted file mode 100644 index c62febead..000000000 --- a/node_modules/fbjs/lib/UnicodeBidiDirection.js +++ /dev/null @@ -1,106 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * @typechecks - * - */ - -/** - * Constants to represent text directionality - * - * Also defines a *global* direciton, to be used in bidi algorithms as a - * default fallback direciton, when no better direction is found or provided. - * - * NOTE: Use `setGlobalDir()`, or update `initGlobalDir()`, to set the initial - * global direction value based on the application. - * - * Part of the implementation of Unicode Bidirectional Algorithm (UBA) - * Unicode Standard Annex #9 (UAX9) - * http://www.unicode.org/reports/tr9/ - */ - -'use strict'; - -var invariant = require('./invariant'); - -var NEUTRAL = 'NEUTRAL'; // No strong direction -var LTR = 'LTR'; // Left-to-Right direction -var RTL = 'RTL'; // Right-to-Left direction - -var globalDir = null; - -// == Helpers == - -/** - * Check if a directionality value is a Strong one - */ -function isStrong(dir) { - return dir === LTR || dir === RTL; -} - -/** - * Get string value to be used for `dir` HTML attribute or `direction` CSS - * property. - */ -function getHTMLDir(dir) { - !isStrong(dir) ? process.env.NODE_ENV !== 'production' ? invariant(false, '`dir` must be a strong direction to be converted to HTML Direction') : invariant(false) : void 0; - return dir === LTR ? 'ltr' : 'rtl'; -} - -/** - * Get string value to be used for `dir` HTML attribute or `direction` CSS - * property, but returns null if `dir` has same value as `otherDir`. - * `null`. - */ -function getHTMLDirIfDifferent(dir, otherDir) { - !isStrong(dir) ? process.env.NODE_ENV !== 'production' ? invariant(false, '`dir` must be a strong direction to be converted to HTML Direction') : invariant(false) : void 0; - !isStrong(otherDir) ? process.env.NODE_ENV !== 'production' ? invariant(false, '`otherDir` must be a strong direction to be converted to HTML Direction') : invariant(false) : void 0; - return dir === otherDir ? null : getHTMLDir(dir); -} - -// == Global Direction == - -/** - * Set the global direction. - */ -function setGlobalDir(dir) { - globalDir = dir; -} - -/** - * Initialize the global direction - */ -function initGlobalDir() { - setGlobalDir(LTR); -} - -/** - * Get the global direction - */ -function getGlobalDir() { - if (!globalDir) { - this.initGlobalDir(); - } - !globalDir ? process.env.NODE_ENV !== 'production' ? invariant(false, 'Global direction not set.') : invariant(false) : void 0; - return globalDir; -} - -var UnicodeBidiDirection = { - // Values - NEUTRAL: NEUTRAL, - LTR: LTR, - RTL: RTL, - // Helpers - isStrong: isStrong, - getHTMLDir: getHTMLDir, - getHTMLDirIfDifferent: getHTMLDirIfDifferent, - // Global Direction - setGlobalDir: setGlobalDir, - initGlobalDir: initGlobalDir, - getGlobalDir: getGlobalDir -}; - -module.exports = UnicodeBidiDirection; \ No newline at end of file diff --git a/node_modules/fbjs/lib/UnicodeBidiDirection.js.flow b/node_modules/fbjs/lib/UnicodeBidiDirection.js.flow deleted file mode 100644 index 1301fedd8..000000000 --- a/node_modules/fbjs/lib/UnicodeBidiDirection.js.flow +++ /dev/null @@ -1,110 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * @providesModule UnicodeBidiDirection - * @typechecks - * @flow - */ - -/** - * Constants to represent text directionality - * - * Also defines a *global* direciton, to be used in bidi algorithms as a - * default fallback direciton, when no better direction is found or provided. - * - * NOTE: Use `setGlobalDir()`, or update `initGlobalDir()`, to set the initial - * global direction value based on the application. - * - * Part of the implementation of Unicode Bidirectional Algorithm (UBA) - * Unicode Standard Annex #9 (UAX9) - * http://www.unicode.org/reports/tr9/ - */ - -'use strict'; - -const invariant = require('./invariant'); - -export type BidiDirection = 'LTR' | 'RTL' | 'NEUTRAL'; -export type HTMLDir = 'ltr' | 'rtl'; - -const NEUTRAL = 'NEUTRAL'; // No strong direction -const LTR = 'LTR'; // Left-to-Right direction -const RTL = 'RTL'; // Right-to-Left direction - -let globalDir: ?BidiDirection = null; - -// == Helpers == - -/** - * Check if a directionality value is a Strong one - */ -function isStrong(dir: BidiDirection): boolean { - return dir === LTR || dir === RTL; -} - -/** - * Get string value to be used for `dir` HTML attribute or `direction` CSS - * property. - */ -function getHTMLDir(dir: BidiDirection): HTMLDir { - invariant(isStrong(dir), '`dir` must be a strong direction to be converted to HTML Direction'); - return dir === LTR ? 'ltr' : 'rtl'; -} - -/** - * Get string value to be used for `dir` HTML attribute or `direction` CSS - * property, but returns null if `dir` has same value as `otherDir`. - * `null`. - */ -function getHTMLDirIfDifferent(dir: BidiDirection, otherDir: BidiDirection): ?HTMLDir { - invariant(isStrong(dir), '`dir` must be a strong direction to be converted to HTML Direction'); - invariant(isStrong(otherDir), '`otherDir` must be a strong direction to be converted to HTML Direction'); - return dir === otherDir ? null : getHTMLDir(dir); -} - -// == Global Direction == - -/** - * Set the global direction. - */ -function setGlobalDir(dir: BidiDirection): void { - globalDir = dir; -} - -/** - * Initialize the global direction - */ -function initGlobalDir(): void { - setGlobalDir(LTR); -} - -/** - * Get the global direction - */ -function getGlobalDir(): BidiDirection { - if (!globalDir) { - this.initGlobalDir(); - } - invariant(globalDir, 'Global direction not set.'); - return globalDir; -} - -const UnicodeBidiDirection = { - // Values - NEUTRAL, - LTR, - RTL, - // Helpers - isStrong, - getHTMLDir, - getHTMLDirIfDifferent, - // Global Direction - setGlobalDir, - initGlobalDir, - getGlobalDir -}; - -module.exports = UnicodeBidiDirection; \ No newline at end of file diff --git a/node_modules/fbjs/lib/UnicodeBidiService.js b/node_modules/fbjs/lib/UnicodeBidiService.js deleted file mode 100644 index ae9764abb..000000000 --- a/node_modules/fbjs/lib/UnicodeBidiService.js +++ /dev/null @@ -1,98 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * @typechecks - * - */ - -/** - * Stateful API for text direction detection - * - * This class can be used in applications where you need to detect the - * direction of a sequence of text blocks, where each direction shall be used - * as the fallback direction for the next one. - * - * NOTE: A default direction, if not provided, is set based on the global - * direction, as defined by `UnicodeBidiDirection`. - * - * == Example == - * ``` - * var UnicodeBidiService = require('UnicodeBidiService'); - * - * var bidiService = new UnicodeBidiService(); - * - * ... - * - * bidiService.reset(); - * for (var para in paragraphs) { - * var dir = bidiService.getDirection(para); - * ... - * } - * ``` - * - * Part of our implementation of Unicode Bidirectional Algorithm (UBA) - * Unicode Standard Annex #9 (UAX9) - * http://www.unicode.org/reports/tr9/ - */ - -'use strict'; - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -var UnicodeBidi = require('./UnicodeBidi'); -var UnicodeBidiDirection = require('./UnicodeBidiDirection'); - -var invariant = require('./invariant'); - -var UnicodeBidiService = function () { - - /** - * Stateful class for paragraph direction detection - * - * @param defaultDir Default direction of the service - */ - function UnicodeBidiService(defaultDir) { - _classCallCheck(this, UnicodeBidiService); - - if (!defaultDir) { - defaultDir = UnicodeBidiDirection.getGlobalDir(); - } else { - !UnicodeBidiDirection.isStrong(defaultDir) ? process.env.NODE_ENV !== 'production' ? invariant(false, 'Default direction must be a strong direction (LTR or RTL)') : invariant(false) : void 0; - } - this._defaultDir = defaultDir; - this.reset(); - } - - /** - * Reset the internal state - * - * Instead of creating a new instance, you can just reset() your instance - * everytime you start a new loop. - */ - - - UnicodeBidiService.prototype.reset = function reset() { - this._lastDir = this._defaultDir; - }; - - /** - * Returns the direction of a block of text, and remembers it as the - * fall-back direction for the next paragraph. - * - * @param str A text block, e.g. paragraph, table cell, tag - * @return The resolved direction - */ - - - UnicodeBidiService.prototype.getDirection = function getDirection(str) { - this._lastDir = UnicodeBidi.getDirection(str, this._lastDir); - return this._lastDir; - }; - - return UnicodeBidiService; -}(); - -module.exports = UnicodeBidiService; \ No newline at end of file diff --git a/node_modules/fbjs/lib/UnicodeBidiService.js.flow b/node_modules/fbjs/lib/UnicodeBidiService.js.flow deleted file mode 100644 index 7999a422f..000000000 --- a/node_modules/fbjs/lib/UnicodeBidiService.js.flow +++ /dev/null @@ -1,95 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * @providesModule UnicodeBidiService - * @typechecks - * @flow - */ - -/** - * Stateful API for text direction detection - * - * This class can be used in applications where you need to detect the - * direction of a sequence of text blocks, where each direction shall be used - * as the fallback direction for the next one. - * - * NOTE: A default direction, if not provided, is set based on the global - * direction, as defined by `UnicodeBidiDirection`. - * - * == Example == - * ``` - * var UnicodeBidiService = require('UnicodeBidiService'); - * - * var bidiService = new UnicodeBidiService(); - * - * ... - * - * bidiService.reset(); - * for (var para in paragraphs) { - * var dir = bidiService.getDirection(para); - * ... - * } - * ``` - * - * Part of our implementation of Unicode Bidirectional Algorithm (UBA) - * Unicode Standard Annex #9 (UAX9) - * http://www.unicode.org/reports/tr9/ - */ - -'use strict'; - -const UnicodeBidi = require('./UnicodeBidi'); -const UnicodeBidiDirection = require('./UnicodeBidiDirection'); - -const invariant = require('./invariant'); - -import type { BidiDirection } from './UnicodeBidiDirection'; - -class UnicodeBidiService { - - _defaultDir: BidiDirection; - _lastDir: BidiDirection; - - /** - * Stateful class for paragraph direction detection - * - * @param defaultDir Default direction of the service - */ - constructor(defaultDir: ?BidiDirection) { - if (!defaultDir) { - defaultDir = UnicodeBidiDirection.getGlobalDir(); - } else { - invariant(UnicodeBidiDirection.isStrong(defaultDir), 'Default direction must be a strong direction (LTR or RTL)'); - } - this._defaultDir = defaultDir; - this.reset(); - } - - /** - * Reset the internal state - * - * Instead of creating a new instance, you can just reset() your instance - * everytime you start a new loop. - */ - reset(): void { - this._lastDir = this._defaultDir; - } - - /** - * Returns the direction of a block of text, and remembers it as the - * fall-back direction for the next paragraph. - * - * @param str A text block, e.g. paragraph, table cell, tag - * @return The resolved direction - */ - getDirection(str: string): BidiDirection { - this._lastDir = UnicodeBidi.getDirection(str, this._lastDir); - return this._lastDir; - } - -} - -module.exports = UnicodeBidiService; \ No newline at end of file diff --git a/node_modules/fbjs/lib/UnicodeCJK.js b/node_modules/fbjs/lib/UnicodeCJK.js deleted file mode 100644 index 27d08bd80..000000000 --- a/node_modules/fbjs/lib/UnicodeCJK.js +++ /dev/null @@ -1,172 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * @typechecks - */ - -/** - * Unicode algorithms for CJK (Chinese, Japanese, Korean) writing systems. - * - * Utilities for Hanzi/Kanji/Hanja logographs and Kanas (Katakana and Hiragana) - * syllables. - * - * For Korean Hangul see module `UnicodeHangulKorean`. - */ - -'use strict'; - -/** - * Latin - * - * NOTE: The code assumes these sets include only BMP characters. - */ - -var R_LATIN_ASCII = 'a-zA-Z'; -var R_LATIN_FULLWIDTH = '\uFF21-\uFF3A\uFF41-\uFF5A'; -var R_LATIN = R_LATIN_ASCII + R_LATIN_FULLWIDTH; - -/** - * Hiragana & Katakana - * - * NOTE: Some ranges include non-BMP characters. We do not support those ranges - * for now. - */ -var R_HIRAGANA = '\u3040-\u309F'; -var R_KATAKANA = '\u30A0-\u30FF'; -var R_KATAKANA_PHONETIC = '\u31F0-\u31FF'; -var R_KATAKANA_HALFWIDTH = '\uFF65-\uFF9F'; -// var R_KANA_SUPPLEMENT = '\U0001B000-\U0001B0FF'; -var R_KATAKANA_ALL = R_KATAKANA + R_KATAKANA_PHONETIC + R_KATAKANA_HALFWIDTH; -var R_KANA = R_HIRAGANA + R_KATAKANA_ALL; - -var I_HIRAGANA = [0x3040, 0x309F]; -var I_KATAKANA = [0x30A0, 0x30FF]; -var I_HIRAGANA_TO_KATAKANA = I_KATAKANA[0] - I_HIRAGANA[0]; - -/** - * Hanzi/Kanji/Hanja - * - * NOTE: Some ranges include non-BMP characters. We do not support those ranges - * for now. - */ -var R_IDEO_MAIN = '\u4E00-\u9FCF'; -var R_IDEO_EXT_A = '\u3400-\u4DBF'; -// var R_IDEO_EXT_B = '\U00020000-\U0002A6DF'; -// var R_IDEO_EXT_C = '\U0002A700-\U0002B73F'; -// var R_IDEO_EXT_D = '\U0002B740-\U0002B81F'; -var R_IDEO = R_IDEO_MAIN + R_IDEO_EXT_A; - -/** - * Hangul - */ -// var R_HANGUL_JAMO = '\u1100-\u11FF'; -// var R_HANGUL_JAMO_EXT_A = '\uA960-\uA97F'; -// var R_HANGUL_JAMO_EXT_B = '\uD7B0-\uD7FF'; -// var R_HANGUL_COMPATIBILITY = '\u3130-\u318F'; -// var R_HANGUL_COMP_HALFWIDTH = '\uFFA0-\uFFDF'; -var R_HANGUL_SYLLABLES = '\uAC00-\uD7AF'; - -/** - * Globals - */ -var R_IDEO_OR_SYLL = R_IDEO + R_KANA + R_HANGUL_SYLLABLES; - -var REGEX_IDEO = null; -var REGEX_KANA = null; -var REGEX_IDEO_OR_SYLL = null; -var REGEX_IS_KANA_WITH_TRAILING_LATIN = null; - -/** - * Whether the string includes any Katakana or Hiragana characters. - * - * @param {string} str - * @return {boolean} - */ -function hasKana(str) { - REGEX_KANA = REGEX_KANA || new RegExp('[' + R_KANA + ']'); - return REGEX_KANA.test(str); -} - -/** - * Whether the string includes any CJK Ideograph characters. - * - * @param {string} str - * @return {boolean} - */ -function hasIdeograph(str) { - REGEX_IDEO = REGEX_IDEO || new RegExp('[' + R_IDEO + ']'); - return REGEX_IDEO.test(str); -} - -/** - * Whether the string includes any CJK Ideograph or Syllable characters. - * - * @param {string} str - * @return {boolean} - */ -function hasIdeoOrSyll(str) { - REGEX_IDEO_OR_SYLL = REGEX_IDEO_OR_SYLL || new RegExp('[' + R_IDEO_OR_SYLL + ']'); - return REGEX_IDEO_OR_SYLL.test(str); -} - -/** - * @param {string} chr - * @output {string} - */ -function charCodeToKatakana(chr) { - var charCode = chr.charCodeAt(0); - return String.fromCharCode(charCode < I_HIRAGANA[0] || charCode > I_HIRAGANA[1] ? charCode : charCode + I_HIRAGANA_TO_KATAKANA); -} - -/** - * Replace any Hiragana character with the matching Katakana - * - * @param {string} str - * @output {string} - */ -function hiraganaToKatakana(str) { - if (!hasKana(str)) { - return str; - } - return str.split('').map(charCodeToKatakana).join(''); -} - -/** - * Whether the string is exactly a sequence of Kana characters followed by one - * Latin character. - * - * @param {string} str - * @output {string} - */ -function isKanaWithTrailingLatin(str) { - REGEX_IS_KANA_WITH_TRAILING_LATIN = REGEX_IS_KANA_WITH_TRAILING_LATIN || new RegExp('^' + '[' + R_KANA + ']+' + '[' + R_LATIN + ']' + '$'); - return REGEX_IS_KANA_WITH_TRAILING_LATIN.test(str); -} - -/** - * Drops the trailing Latin character from a string that is exactly a sequence - * of Kana characters followed by one Latin character. - * - * @param {string} str - * @output {string} - */ -function kanaRemoveTrailingLatin(str) { - if (isKanaWithTrailingLatin(str)) { - return str.substr(0, str.length - 1); - } - return str; -} - -var UnicodeCJK = { - hasKana: hasKana, - hasIdeograph: hasIdeograph, - hasIdeoOrSyll: hasIdeoOrSyll, - hiraganaToKatakana: hiraganaToKatakana, - isKanaWithTrailingLatin: isKanaWithTrailingLatin, - kanaRemoveTrailingLatin: kanaRemoveTrailingLatin -}; - -module.exports = UnicodeCJK; \ No newline at end of file diff --git a/node_modules/fbjs/lib/UnicodeCJK.js.flow b/node_modules/fbjs/lib/UnicodeCJK.js.flow deleted file mode 100644 index d1b47cacd..000000000 --- a/node_modules/fbjs/lib/UnicodeCJK.js.flow +++ /dev/null @@ -1,173 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * @providesModule UnicodeCJK - * @typechecks - */ - -/** - * Unicode algorithms for CJK (Chinese, Japanese, Korean) writing systems. - * - * Utilities for Hanzi/Kanji/Hanja logographs and Kanas (Katakana and Hiragana) - * syllables. - * - * For Korean Hangul see module `UnicodeHangulKorean`. - */ - -'use strict'; - -/** - * Latin - * - * NOTE: The code assumes these sets include only BMP characters. - */ - -const R_LATIN_ASCII = 'a-zA-Z'; -const R_LATIN_FULLWIDTH = '\uFF21-\uFF3A\uFF41-\uFF5A'; -const R_LATIN = R_LATIN_ASCII + R_LATIN_FULLWIDTH; - -/** - * Hiragana & Katakana - * - * NOTE: Some ranges include non-BMP characters. We do not support those ranges - * for now. - */ -const R_HIRAGANA = '\u3040-\u309F'; -const R_KATAKANA = '\u30A0-\u30FF'; -const R_KATAKANA_PHONETIC = '\u31F0-\u31FF'; -const R_KATAKANA_HALFWIDTH = '\uFF65-\uFF9F'; -// var R_KANA_SUPPLEMENT = '\U0001B000-\U0001B0FF'; -const R_KATAKANA_ALL = R_KATAKANA + R_KATAKANA_PHONETIC + R_KATAKANA_HALFWIDTH; -const R_KANA = R_HIRAGANA + R_KATAKANA_ALL; - -const I_HIRAGANA = [0x3040, 0x309F]; -const I_KATAKANA = [0x30A0, 0x30FF]; -const I_HIRAGANA_TO_KATAKANA = I_KATAKANA[0] - I_HIRAGANA[0]; - -/** - * Hanzi/Kanji/Hanja - * - * NOTE: Some ranges include non-BMP characters. We do not support those ranges - * for now. - */ -const R_IDEO_MAIN = '\u4E00-\u9FCF'; -const R_IDEO_EXT_A = '\u3400-\u4DBF'; -// var R_IDEO_EXT_B = '\U00020000-\U0002A6DF'; -// var R_IDEO_EXT_C = '\U0002A700-\U0002B73F'; -// var R_IDEO_EXT_D = '\U0002B740-\U0002B81F'; -const R_IDEO = R_IDEO_MAIN + R_IDEO_EXT_A; - -/** - * Hangul - */ -// var R_HANGUL_JAMO = '\u1100-\u11FF'; -// var R_HANGUL_JAMO_EXT_A = '\uA960-\uA97F'; -// var R_HANGUL_JAMO_EXT_B = '\uD7B0-\uD7FF'; -// var R_HANGUL_COMPATIBILITY = '\u3130-\u318F'; -// var R_HANGUL_COMP_HALFWIDTH = '\uFFA0-\uFFDF'; -const R_HANGUL_SYLLABLES = '\uAC00-\uD7AF'; - -/** - * Globals - */ -const R_IDEO_OR_SYLL = R_IDEO + R_KANA + R_HANGUL_SYLLABLES; - -let REGEX_IDEO = null; -let REGEX_KANA = null; -let REGEX_IDEO_OR_SYLL = null; -let REGEX_IS_KANA_WITH_TRAILING_LATIN = null; - -/** - * Whether the string includes any Katakana or Hiragana characters. - * - * @param {string} str - * @return {boolean} - */ -function hasKana(str) { - REGEX_KANA = REGEX_KANA || new RegExp('[' + R_KANA + ']'); - return REGEX_KANA.test(str); -} - -/** - * Whether the string includes any CJK Ideograph characters. - * - * @param {string} str - * @return {boolean} - */ -function hasIdeograph(str) { - REGEX_IDEO = REGEX_IDEO || new RegExp('[' + R_IDEO + ']'); - return REGEX_IDEO.test(str); -} - -/** - * Whether the string includes any CJK Ideograph or Syllable characters. - * - * @param {string} str - * @return {boolean} - */ -function hasIdeoOrSyll(str) { - REGEX_IDEO_OR_SYLL = REGEX_IDEO_OR_SYLL || new RegExp('[' + R_IDEO_OR_SYLL + ']'); - return REGEX_IDEO_OR_SYLL.test(str); -} - -/** - * @param {string} chr - * @output {string} - */ -function charCodeToKatakana(chr) { - const charCode = chr.charCodeAt(0); - return String.fromCharCode(charCode < I_HIRAGANA[0] || charCode > I_HIRAGANA[1] ? charCode : charCode + I_HIRAGANA_TO_KATAKANA); -} - -/** - * Replace any Hiragana character with the matching Katakana - * - * @param {string} str - * @output {string} - */ -function hiraganaToKatakana(str) { - if (!hasKana(str)) { - return str; - } - return str.split('').map(charCodeToKatakana).join(''); -} - -/** - * Whether the string is exactly a sequence of Kana characters followed by one - * Latin character. - * - * @param {string} str - * @output {string} - */ -function isKanaWithTrailingLatin(str) { - REGEX_IS_KANA_WITH_TRAILING_LATIN = REGEX_IS_KANA_WITH_TRAILING_LATIN || new RegExp('^' + '[' + R_KANA + ']+' + '[' + R_LATIN + ']' + '$'); - return REGEX_IS_KANA_WITH_TRAILING_LATIN.test(str); -} - -/** - * Drops the trailing Latin character from a string that is exactly a sequence - * of Kana characters followed by one Latin character. - * - * @param {string} str - * @output {string} - */ -function kanaRemoveTrailingLatin(str) { - if (isKanaWithTrailingLatin(str)) { - return str.substr(0, str.length - 1); - } - return str; -} - -const UnicodeCJK = { - hasKana: hasKana, - hasIdeograph: hasIdeograph, - hasIdeoOrSyll: hasIdeoOrSyll, - hiraganaToKatakana: hiraganaToKatakana, - isKanaWithTrailingLatin: isKanaWithTrailingLatin, - kanaRemoveTrailingLatin: kanaRemoveTrailingLatin -}; - -module.exports = UnicodeCJK; \ No newline at end of file diff --git a/node_modules/fbjs/lib/UnicodeHangulKorean.js b/node_modules/fbjs/lib/UnicodeHangulKorean.js deleted file mode 100644 index f67bd3cee..000000000 --- a/node_modules/fbjs/lib/UnicodeHangulKorean.js +++ /dev/null @@ -1,135 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * @typechecks - */ - -/** - * Unicode algorithms for Hangul script, the Korean writing system - * - * Hangul script has three encoded models in Unicode: - * - * A) Conjoining Jamo (covers modern and historic elements) - * * U+1100..U+11FF ; Hangul Jamo - * * U+A960..U+A97F ; Hangul Jamo Extended-A - * * U+D7B0..U+D7FF ; Hangul Jamo Extended-B - * - * B) Conjoined Syllables (only covers modern Korean language) - * * U+AC00..U+D7AF ; Hangul Syllables - * - * C) Compatibility Jamo (one code-point for each "shape") - * * U+3130..U+318F ; Hangul Compatibility Jamo - * - * This modules helps you convert characters from one model to another. - * Primary functionalities are: - * - * 1) Convert from any encodings to Conjoining Jamo characters (A), - * e.g. for prefix matching - * - * 2) Convert from any encodings to Syllable characters, when possible (B), - * e.g. to reach the normal Unicode form (NFC) - */ - -'use strict'; - -var HANGUL_COMPATIBILITY_OR_SYLLABLE_REGEX = /[\u3130-\u318F\uAC00-\uD7AF]/; - -/** - * Returns true if the input includes any Hangul Compatibility Jamo or - * Hangul Conjoined Syllable. - * - * @param {string} str - */ -function hasCompatibilityOrSyllable(str) { - return HANGUL_COMPATIBILITY_OR_SYLLABLE_REGEX.test(str); -} - -/* Compatibility Jamo -> Conjoining Jamo - * - * Maps a compatibility character to the Conjoining Jamo character, - * positioned at (compatibilityCodePoint - 0x3131). - * - * Generated by: - * $ grep '^31[3-8].;' UnicodeData.txt |\ - * awk -F';' '{print $6}' | awk '{print " 0x"$2","}' - */ -var CMAP = [0x1100, 0x1101, 0x11AA, 0x1102, 0x11AC, 0x11AD, 0x1103, 0x1104, 0x1105, 0x11B0, 0x11B1, 0x11B2, 0x11B3, 0x11B4, 0x11B5, 0x111A, 0x1106, 0x1107, 0x1108, 0x1121, 0x1109, 0x110A, 0x110B, 0x110C, 0x110D, 0x110E, 0x110F, 0x1110, 0x1111, 0x1112, 0x1161, 0x1162, 0x1163, 0x1164, 0x1165, 0x1166, 0x1167, 0x1168, 0x1169, 0x116A, 0x116B, 0x116C, 0x116D, 0x116E, 0x116F, 0x1170, 0x1171, 0x1172, 0x1173, 0x1174, 0x1175, 0x1160, 0x1114, 0x1115, 0x11C7, 0x11C8, 0x11CC, 0x11CE, 0x11D3, 0x11D7, 0x11D9, 0x111C, 0x11DD, 0x11DF, 0x111D, 0x111E, 0x1120, 0x1122, 0x1123, 0x1127, 0x1129, 0x112B, 0x112C, 0x112D, 0x112E, 0x112F, 0x1132, 0x1136, 0x1140, 0x1147, 0x114C, 0x11F1, 0x11F2, 0x1157, 0x1158, 0x1159, 0x1184, 0x1185, 0x1188, 0x1191, 0x1192, 0x1194, 0x119E, 0x11A1]; - -var CBASE = 0x3131; -var CCOUNT = CMAP.length; -var CTOP = CBASE + CCOUNT; - -/** - * Maps one Hangul Compatibility Jamo code-point to the equivalent Hangul - * Conjoining Jamo characters, as defined in UnicodeData.txt. - * - * @param {number} codePoint One Unicode code-point - * @output {string} - */ -function fromCompatibility(codePoint) { - return String.fromCharCode(CMAP[codePoint - CBASE]); -} - -/** - * Conjoined Syllable -> Conjoining Jamo - * - * Based on the "Hangul Syllable Decomposition" algorithm provided in - * 3.12 Conjoining Jamo Behavior, The Unicode Standard, Version 6.3.0. - * - */ - -var LBASE = 0x1100; -var VBASE = 0x1161; -var TBASE = 0x11A7; -var SBASE = 0xAC00; -var LCOUNT = 19; -var VCOUNT = 21; -var TCOUNT = 28; -var NCOUNT = VCOUNT * TCOUNT; -var SCOUNT = LCOUNT * NCOUNT; -var STOP = SBASE + SCOUNT; - -/** - * Maps one Hangul Syllable code-point to the equivalent Hangul - * Conjoining Jamo characters, as defined in UnicodeData.txt. - * - * @param {number} codePoint One Unicode character - * @output {string} - */ -function decomposeSyllable(codePoint) { - var sylSIndex = codePoint - SBASE; - var sylTIndex = sylSIndex % TCOUNT; - return String.fromCharCode(LBASE + sylSIndex / NCOUNT) + String.fromCharCode(VBASE + sylSIndex % NCOUNT / TCOUNT) + (sylTIndex > 0 ? String.fromCharCode(TBASE + sylTIndex) : ''); -} - -/* To Conjoining Jamo */ - -/** - * Return Unicode characters as they are, except for Hangul characters, which - * will be converted to the Conjoining Jamo form. - * - * @param {string} string - * @output {string} - */ -function toConjoiningJamo(string) { - if (!hasCompatibilityOrSyllable(string)) { - return string; - } - - var result = []; - for (var i = 0; i < string.length; i++) { - var charStr = string.charAt(i); - var codeUnit = charStr.charCodeAt(0); - result.push(CBASE <= codeUnit && codeUnit < CTOP ? fromCompatibility(codeUnit) : SBASE <= codeUnit && codeUnit < STOP ? decomposeSyllable(codeUnit) : charStr); - } - return result.join(''); -} - -var UnicodeHangulKorean = { - toConjoiningJamo: toConjoiningJamo -}; - -module.exports = UnicodeHangulKorean; \ No newline at end of file diff --git a/node_modules/fbjs/lib/UnicodeHangulKorean.js.flow b/node_modules/fbjs/lib/UnicodeHangulKorean.js.flow deleted file mode 100644 index d184b580f..000000000 --- a/node_modules/fbjs/lib/UnicodeHangulKorean.js.flow +++ /dev/null @@ -1,136 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * @providesModule UnicodeHangulKorean - * @typechecks - */ - -/** - * Unicode algorithms for Hangul script, the Korean writing system - * - * Hangul script has three encoded models in Unicode: - * - * A) Conjoining Jamo (covers modern and historic elements) - * * U+1100..U+11FF ; Hangul Jamo - * * U+A960..U+A97F ; Hangul Jamo Extended-A - * * U+D7B0..U+D7FF ; Hangul Jamo Extended-B - * - * B) Conjoined Syllables (only covers modern Korean language) - * * U+AC00..U+D7AF ; Hangul Syllables - * - * C) Compatibility Jamo (one code-point for each "shape") - * * U+3130..U+318F ; Hangul Compatibility Jamo - * - * This modules helps you convert characters from one model to another. - * Primary functionalities are: - * - * 1) Convert from any encodings to Conjoining Jamo characters (A), - * e.g. for prefix matching - * - * 2) Convert from any encodings to Syllable characters, when possible (B), - * e.g. to reach the normal Unicode form (NFC) - */ - -'use strict'; - -const HANGUL_COMPATIBILITY_OR_SYLLABLE_REGEX = /[\u3130-\u318F\uAC00-\uD7AF]/; - -/** - * Returns true if the input includes any Hangul Compatibility Jamo or - * Hangul Conjoined Syllable. - * - * @param {string} str - */ -function hasCompatibilityOrSyllable(str) { - return HANGUL_COMPATIBILITY_OR_SYLLABLE_REGEX.test(str); -} - -/* Compatibility Jamo -> Conjoining Jamo - * - * Maps a compatibility character to the Conjoining Jamo character, - * positioned at (compatibilityCodePoint - 0x3131). - * - * Generated by: - * $ grep '^31[3-8].;' UnicodeData.txt |\ - * awk -F';' '{print $6}' | awk '{print " 0x"$2","}' - */ -const CMAP = [0x1100, 0x1101, 0x11AA, 0x1102, 0x11AC, 0x11AD, 0x1103, 0x1104, 0x1105, 0x11B0, 0x11B1, 0x11B2, 0x11B3, 0x11B4, 0x11B5, 0x111A, 0x1106, 0x1107, 0x1108, 0x1121, 0x1109, 0x110A, 0x110B, 0x110C, 0x110D, 0x110E, 0x110F, 0x1110, 0x1111, 0x1112, 0x1161, 0x1162, 0x1163, 0x1164, 0x1165, 0x1166, 0x1167, 0x1168, 0x1169, 0x116A, 0x116B, 0x116C, 0x116D, 0x116E, 0x116F, 0x1170, 0x1171, 0x1172, 0x1173, 0x1174, 0x1175, 0x1160, 0x1114, 0x1115, 0x11C7, 0x11C8, 0x11CC, 0x11CE, 0x11D3, 0x11D7, 0x11D9, 0x111C, 0x11DD, 0x11DF, 0x111D, 0x111E, 0x1120, 0x1122, 0x1123, 0x1127, 0x1129, 0x112B, 0x112C, 0x112D, 0x112E, 0x112F, 0x1132, 0x1136, 0x1140, 0x1147, 0x114C, 0x11F1, 0x11F2, 0x1157, 0x1158, 0x1159, 0x1184, 0x1185, 0x1188, 0x1191, 0x1192, 0x1194, 0x119E, 0x11A1]; - -const CBASE = 0x3131; -const CCOUNT = CMAP.length; -const CTOP = CBASE + CCOUNT; - -/** - * Maps one Hangul Compatibility Jamo code-point to the equivalent Hangul - * Conjoining Jamo characters, as defined in UnicodeData.txt. - * - * @param {number} codePoint One Unicode code-point - * @output {string} - */ -function fromCompatibility(codePoint) { - return String.fromCharCode(CMAP[codePoint - CBASE]); -} - -/** - * Conjoined Syllable -> Conjoining Jamo - * - * Based on the "Hangul Syllable Decomposition" algorithm provided in - * 3.12 Conjoining Jamo Behavior, The Unicode Standard, Version 6.3.0. - * - */ - -const LBASE = 0x1100; -const VBASE = 0x1161; -const TBASE = 0x11A7; -const SBASE = 0xAC00; -const LCOUNT = 19; -const VCOUNT = 21; -const TCOUNT = 28; -const NCOUNT = VCOUNT * TCOUNT; -const SCOUNT = LCOUNT * NCOUNT; -const STOP = SBASE + SCOUNT; - -/** - * Maps one Hangul Syllable code-point to the equivalent Hangul - * Conjoining Jamo characters, as defined in UnicodeData.txt. - * - * @param {number} codePoint One Unicode character - * @output {string} - */ -function decomposeSyllable(codePoint) { - const sylSIndex = codePoint - SBASE; - const sylTIndex = sylSIndex % TCOUNT; - return String.fromCharCode(LBASE + sylSIndex / NCOUNT) + String.fromCharCode(VBASE + sylSIndex % NCOUNT / TCOUNT) + (sylTIndex > 0 ? String.fromCharCode(TBASE + sylTIndex) : ''); -} - -/* To Conjoining Jamo */ - -/** - * Return Unicode characters as they are, except for Hangul characters, which - * will be converted to the Conjoining Jamo form. - * - * @param {string} string - * @output {string} - */ -function toConjoiningJamo(string) { - if (!hasCompatibilityOrSyllable(string)) { - return string; - } - - const result = []; - for (let i = 0; i < string.length; i++) { - const charStr = string.charAt(i); - const codeUnit = charStr.charCodeAt(0); - result.push(CBASE <= codeUnit && codeUnit < CTOP ? fromCompatibility(codeUnit) : SBASE <= codeUnit && codeUnit < STOP ? decomposeSyllable(codeUnit) : charStr); - } - return result.join(''); -} - -const UnicodeHangulKorean = { - toConjoiningJamo: toConjoiningJamo -}; - -module.exports = UnicodeHangulKorean; \ No newline at end of file diff --git a/node_modules/fbjs/lib/UnicodeUtils.js b/node_modules/fbjs/lib/UnicodeUtils.js deleted file mode 100644 index 72bb75d08..000000000 --- a/node_modules/fbjs/lib/UnicodeUtils.js +++ /dev/null @@ -1,212 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * @typechecks - */ - -/** - * Unicode-enabled replacesments for basic String functions. - * - * All the functions in this module assume that the input string is a valid - * UTF-16 encoding of a Unicode sequence. If it's not the case, the behavior - * will be undefined. - * - * WARNING: Since this module is typechecks-enforced, you may find new bugs - * when replacing normal String functions with ones provided here. - */ - -'use strict'; - -var invariant = require('./invariant'); - -// These two ranges are consecutive so anything in [HIGH_START, LOW_END] is a -// surrogate code unit. -var SURROGATE_HIGH_START = 0xD800; -var SURROGATE_HIGH_END = 0xDBFF; -var SURROGATE_LOW_START = 0xDC00; -var SURROGATE_LOW_END = 0xDFFF; -var SURROGATE_UNITS_REGEX = /[\uD800-\uDFFF]/; - -/** - * @param {number} codeUnit A Unicode code-unit, in range [0, 0x10FFFF] - * @return {boolean} Whether code-unit is in a surrogate (hi/low) range - */ -function isCodeUnitInSurrogateRange(codeUnit) { - return SURROGATE_HIGH_START <= codeUnit && codeUnit <= SURROGATE_LOW_END; -} - -/** - * Returns whether the two characters starting at `index` form a surrogate pair. - * For example, given the string s = "\uD83D\uDE0A", (s, 0) returns true and - * (s, 1) returns false. - * - * @param {string} str - * @param {number} index - * @return {boolean} - */ -function isSurrogatePair(str, index) { - !(0 <= index && index < str.length) ? process.env.NODE_ENV !== 'production' ? invariant(false, 'isSurrogatePair: Invalid index %s for string length %s.', index, str.length) : invariant(false) : void 0; - if (index + 1 === str.length) { - return false; - } - var first = str.charCodeAt(index); - var second = str.charCodeAt(index + 1); - return SURROGATE_HIGH_START <= first && first <= SURROGATE_HIGH_END && SURROGATE_LOW_START <= second && second <= SURROGATE_LOW_END; -} - -/** - * @param {string} str Non-empty string - * @return {boolean} True if the input includes any surrogate code units - */ -function hasSurrogateUnit(str) { - return SURROGATE_UNITS_REGEX.test(str); -} - -/** - * Return the length of the original Unicode character at given position in the - * String by looking into the UTF-16 code unit; that is equal to 1 for any - * non-surrogate characters in BMP ([U+0000..U+D7FF] and [U+E000, U+FFFF]); and - * returns 2 for the hi/low surrogates ([U+D800..U+DFFF]), which are in fact - * representing non-BMP characters ([U+10000..U+10FFFF]). - * - * Examples: - * - '\u0020' => 1 - * - '\u3020' => 1 - * - '\uD835' => 2 - * - '\uD835\uDDEF' => 2 - * - '\uDDEF' => 2 - * - * @param {string} str Non-empty string - * @param {number} pos Position in the string to look for one code unit - * @return {number} Number 1 or 2 - */ -function getUTF16Length(str, pos) { - return 1 + isCodeUnitInSurrogateRange(str.charCodeAt(pos)); -} - -/** - * Fully Unicode-enabled replacement for String#length - * - * @param {string} str Valid Unicode string - * @return {number} The number of Unicode characters in the string - */ -function strlen(str) { - // Call the native functions if there's no surrogate char - if (!hasSurrogateUnit(str)) { - return str.length; - } - - var len = 0; - for (var pos = 0; pos < str.length; pos += getUTF16Length(str, pos)) { - len++; - } - return len; -} - -/** - * Fully Unicode-enabled replacement for String#substr() - * - * @param {string} str Valid Unicode string - * @param {number} start Location in Unicode sequence to begin extracting - * @param {?number} length The number of Unicode characters to extract - * (default: to the end of the string) - * @return {string} Extracted sub-string - */ -function substr(str, start, length) { - start = start || 0; - length = length === undefined ? Infinity : length || 0; - - // Call the native functions if there's no surrogate char - if (!hasSurrogateUnit(str)) { - return str.substr(start, length); - } - - // Obvious cases - var size = str.length; - if (size <= 0 || start > size || length <= 0) { - return ''; - } - - // Find the actual starting position - var posA = 0; - if (start > 0) { - for (; start > 0 && posA < size; start--) { - posA += getUTF16Length(str, posA); - } - if (posA >= size) { - return ''; - } - } else if (start < 0) { - for (posA = size; start < 0 && 0 < posA; start++) { - posA -= getUTF16Length(str, posA - 1); - } - if (posA < 0) { - posA = 0; - } - } - - // Find the actual ending position - var posB = size; - if (length < size) { - for (posB = posA; length > 0 && posB < size; length--) { - posB += getUTF16Length(str, posB); - } - } - - return str.substring(posA, posB); -} - -/** - * Fully Unicode-enabled replacement for String#substring() - * - * @param {string} str Valid Unicode string - * @param {number} start Location in Unicode sequence to begin extracting - * @param {?number} end Location in Unicode sequence to end extracting - * (default: end of the string) - * @return {string} Extracted sub-string - */ -function substring(str, start, end) { - start = start || 0; - end = end === undefined ? Infinity : end || 0; - - if (start < 0) { - start = 0; - } - if (end < 0) { - end = 0; - } - - var length = Math.abs(end - start); - start = start < end ? start : end; - return substr(str, start, length); -} - -/** - * Get a list of Unicode code-points from a String - * - * @param {string} str Valid Unicode string - * @return {array} A list of code-points in [0..0x10FFFF] - */ -function getCodePoints(str) { - var codePoints = []; - for (var pos = 0; pos < str.length; pos += getUTF16Length(str, pos)) { - codePoints.push(str.codePointAt(pos)); - } - return codePoints; -} - -var UnicodeUtils = { - getCodePoints: getCodePoints, - getUTF16Length: getUTF16Length, - hasSurrogateUnit: hasSurrogateUnit, - isCodeUnitInSurrogateRange: isCodeUnitInSurrogateRange, - isSurrogatePair: isSurrogatePair, - strlen: strlen, - substring: substring, - substr: substr -}; - -module.exports = UnicodeUtils; \ No newline at end of file diff --git a/node_modules/fbjs/lib/UnicodeUtils.js.flow b/node_modules/fbjs/lib/UnicodeUtils.js.flow deleted file mode 100644 index a0eebbc82..000000000 --- a/node_modules/fbjs/lib/UnicodeUtils.js.flow +++ /dev/null @@ -1,213 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * @providesModule UnicodeUtils - * @typechecks - */ - -/** - * Unicode-enabled replacesments for basic String functions. - * - * All the functions in this module assume that the input string is a valid - * UTF-16 encoding of a Unicode sequence. If it's not the case, the behavior - * will be undefined. - * - * WARNING: Since this module is typechecks-enforced, you may find new bugs - * when replacing normal String functions with ones provided here. - */ - -'use strict'; - -const invariant = require('./invariant'); - -// These two ranges are consecutive so anything in [HIGH_START, LOW_END] is a -// surrogate code unit. -const SURROGATE_HIGH_START = 0xD800; -const SURROGATE_HIGH_END = 0xDBFF; -const SURROGATE_LOW_START = 0xDC00; -const SURROGATE_LOW_END = 0xDFFF; -const SURROGATE_UNITS_REGEX = /[\uD800-\uDFFF]/; - -/** - * @param {number} codeUnit A Unicode code-unit, in range [0, 0x10FFFF] - * @return {boolean} Whether code-unit is in a surrogate (hi/low) range - */ -function isCodeUnitInSurrogateRange(codeUnit) { - return SURROGATE_HIGH_START <= codeUnit && codeUnit <= SURROGATE_LOW_END; -} - -/** - * Returns whether the two characters starting at `index` form a surrogate pair. - * For example, given the string s = "\uD83D\uDE0A", (s, 0) returns true and - * (s, 1) returns false. - * - * @param {string} str - * @param {number} index - * @return {boolean} - */ -function isSurrogatePair(str, index) { - invariant(0 <= index && index < str.length, 'isSurrogatePair: Invalid index %s for string length %s.', index, str.length); - if (index + 1 === str.length) { - return false; - } - const first = str.charCodeAt(index); - const second = str.charCodeAt(index + 1); - return SURROGATE_HIGH_START <= first && first <= SURROGATE_HIGH_END && SURROGATE_LOW_START <= second && second <= SURROGATE_LOW_END; -} - -/** - * @param {string} str Non-empty string - * @return {boolean} True if the input includes any surrogate code units - */ -function hasSurrogateUnit(str) { - return SURROGATE_UNITS_REGEX.test(str); -} - -/** - * Return the length of the original Unicode character at given position in the - * String by looking into the UTF-16 code unit; that is equal to 1 for any - * non-surrogate characters in BMP ([U+0000..U+D7FF] and [U+E000, U+FFFF]); and - * returns 2 for the hi/low surrogates ([U+D800..U+DFFF]), which are in fact - * representing non-BMP characters ([U+10000..U+10FFFF]). - * - * Examples: - * - '\u0020' => 1 - * - '\u3020' => 1 - * - '\uD835' => 2 - * - '\uD835\uDDEF' => 2 - * - '\uDDEF' => 2 - * - * @param {string} str Non-empty string - * @param {number} pos Position in the string to look for one code unit - * @return {number} Number 1 or 2 - */ -function getUTF16Length(str, pos) { - return 1 + isCodeUnitInSurrogateRange(str.charCodeAt(pos)); -} - -/** - * Fully Unicode-enabled replacement for String#length - * - * @param {string} str Valid Unicode string - * @return {number} The number of Unicode characters in the string - */ -function strlen(str) { - // Call the native functions if there's no surrogate char - if (!hasSurrogateUnit(str)) { - return str.length; - } - - let len = 0; - for (let pos = 0; pos < str.length; pos += getUTF16Length(str, pos)) { - len++; - } - return len; -} - -/** - * Fully Unicode-enabled replacement for String#substr() - * - * @param {string} str Valid Unicode string - * @param {number} start Location in Unicode sequence to begin extracting - * @param {?number} length The number of Unicode characters to extract - * (default: to the end of the string) - * @return {string} Extracted sub-string - */ -function substr(str, start, length) { - start = start || 0; - length = length === undefined ? Infinity : length || 0; - - // Call the native functions if there's no surrogate char - if (!hasSurrogateUnit(str)) { - return str.substr(start, length); - } - - // Obvious cases - const size = str.length; - if (size <= 0 || start > size || length <= 0) { - return ''; - } - - // Find the actual starting position - let posA = 0; - if (start > 0) { - for (; start > 0 && posA < size; start--) { - posA += getUTF16Length(str, posA); - } - if (posA >= size) { - return ''; - } - } else if (start < 0) { - for (posA = size; start < 0 && 0 < posA; start++) { - posA -= getUTF16Length(str, posA - 1); - } - if (posA < 0) { - posA = 0; - } - } - - // Find the actual ending position - let posB = size; - if (length < size) { - for (posB = posA; length > 0 && posB < size; length--) { - posB += getUTF16Length(str, posB); - } - } - - return str.substring(posA, posB); -} - -/** - * Fully Unicode-enabled replacement for String#substring() - * - * @param {string} str Valid Unicode string - * @param {number} start Location in Unicode sequence to begin extracting - * @param {?number} end Location in Unicode sequence to end extracting - * (default: end of the string) - * @return {string} Extracted sub-string - */ -function substring(str, start, end) { - start = start || 0; - end = end === undefined ? Infinity : end || 0; - - if (start < 0) { - start = 0; - } - if (end < 0) { - end = 0; - } - - const length = Math.abs(end - start); - start = start < end ? start : end; - return substr(str, start, length); -} - -/** - * Get a list of Unicode code-points from a String - * - * @param {string} str Valid Unicode string - * @return {array} A list of code-points in [0..0x10FFFF] - */ -function getCodePoints(str) { - const codePoints = []; - for (let pos = 0; pos < str.length; pos += getUTF16Length(str, pos)) { - codePoints.push(str.codePointAt(pos)); - } - return codePoints; -} - -const UnicodeUtils = { - getCodePoints: getCodePoints, - getUTF16Length: getUTF16Length, - hasSurrogateUnit: hasSurrogateUnit, - isCodeUnitInSurrogateRange: isCodeUnitInSurrogateRange, - isSurrogatePair: isSurrogatePair, - strlen: strlen, - substring: substring, - substr: substr -}; - -module.exports = UnicodeUtils; \ No newline at end of file diff --git a/node_modules/fbjs/lib/UnicodeUtilsExtra.js b/node_modules/fbjs/lib/UnicodeUtilsExtra.js deleted file mode 100644 index d5fb94442..000000000 --- a/node_modules/fbjs/lib/UnicodeUtilsExtra.js +++ /dev/null @@ -1,227 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * @typechecks - */ - -/** - * Unicode-enabled extra utility functions not always needed. - */ - -'use strict'; - -var UnicodeUtils = require('./UnicodeUtils'); - -/** - * @param {number} codePoint Valid Unicode code-point - * @param {number} len Zero-padded minimum width of result - * @return {string} A zero-padded hexadecimal string (00XXXX) - */ -function zeroPaddedHex(codePoint, len) { - var codePointHex = codePoint.toString(16).toUpperCase(); - var numZeros = Math.max(0, len - codePointHex.length); - var result = ''; - for (var i = 0; i < numZeros; i++) { - result += '0'; - } - result += codePointHex; - return result; -} - -/** - * @param {number} codePoint Valid Unicode code-point - * @return {string} A formatted Unicode code-point string - * of the format U+XXXX, U+XXXXX, or U+XXXXXX - */ -function formatCodePoint(codePoint) { - codePoint = codePoint || 0; // NaN --> 0 - var formatted = ''; - if (codePoint <= 0xFFFF) { - formatted = zeroPaddedHex(codePoint, 4); - } else { - formatted = codePoint.toString(16).toUpperCase(); - } - return 'U+' + formatted; -} - -/** - * Get a list of formatted (string) Unicode code-points from a String - * - * @param {string} str Valid Unicode string - * @return {array} A list of formatted code-point strings - */ -function getCodePointsFormatted(str) { - var codePoints = UnicodeUtils.getCodePoints(str); - return codePoints.map(formatCodePoint); -} - -var specialEscape = { - 0x07: '\\a', - 0x08: '\\b', - 0x0C: '\\f', - 0x0A: '\\n', - 0x0D: '\\r', - 0x09: '\\t', - 0x0B: '\\v', - 0x22: '\\"', - 0x5c: '\\\\' -}; - -/** - * Returns a double-quoted PHP string with all non-printable and - * non-US-ASCII sequences escaped. - * - * @param {string} str Valid Unicode string - * @return {string} Double-quoted string with Unicode sequences escaped - */ -function phpEscape(s) { - var result = '"'; - var _iteratorNormalCompletion = true; - var _didIteratorError = false; - var _iteratorError = undefined; - - try { - for (var _iterator = UnicodeUtils.getCodePoints(s)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) { - var cp = _step.value; - - var special = specialEscape[cp]; - if (special !== undefined) { - result += special; - } else if (cp >= 0x20 && cp <= 0x7e) { - result += String.fromCodePoint(cp); - } else if (cp <= 0xFFFF) { - result += '\\u{' + zeroPaddedHex(cp, 4) + '}'; - } else { - result += '\\u{' + zeroPaddedHex(cp, 6) + '}'; - } - } - } catch (err) { - _didIteratorError = true; - _iteratorError = err; - } finally { - try { - if (!_iteratorNormalCompletion && _iterator['return']) { - _iterator['return'](); - } - } finally { - if (_didIteratorError) { - throw _iteratorError; - } - } - } - - result += '"'; - return result; -} - -/** - * Returns a double-quoted Java or JavaScript string with all - * non-printable and non-US-ASCII sequences escaped. - * - * @param {string} str Valid Unicode string - * @return {string} Double-quoted string with Unicode sequences escaped - */ -function jsEscape(s) { - var result = '"'; - for (var i = 0; i < s.length; i++) { - var cp = s.charCodeAt(i); - var special = specialEscape[cp]; - if (special !== undefined) { - result += special; - } else if (cp >= 0x20 && cp <= 0x7e) { - result += String.fromCodePoint(cp); - } else { - result += '\\u' + zeroPaddedHex(cp, 4); - } - } - result += '"'; - return result; -} - -function c11Escape(s) { - var result = ''; - var _iteratorNormalCompletion2 = true; - var _didIteratorError2 = false; - var _iteratorError2 = undefined; - - try { - for (var _iterator2 = UnicodeUtils.getCodePoints(s)[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) { - var cp = _step2.value; - - var special = specialEscape[cp]; - if (special !== undefined) { - result += special; - } else if (cp >= 0x20 && cp <= 0x7e) { - result += String.fromCodePoint(cp); - } else if (cp <= 0xFFFF) { - result += '\\u' + zeroPaddedHex(cp, 4); - } else { - result += '\\U' + zeroPaddedHex(cp, 8); - } - } - } catch (err) { - _didIteratorError2 = true; - _iteratorError2 = err; - } finally { - try { - if (!_iteratorNormalCompletion2 && _iterator2['return']) { - _iterator2['return'](); - } - } finally { - if (_didIteratorError2) { - throw _iteratorError2; - } - } - } - - return result; -} - -/** - * Returns a double-quoted C string with all non-printable and - * non-US-ASCII sequences escaped. - * - * @param {string} str Valid Unicode string - * @return {string} Double-quoted string with Unicode sequences escaped - */ -function cEscape(s) { - return 'u8"' + c11Escape(s) + '"'; -} - -/** - * Returns a double-quoted Objective-C string with all non-printable - * and non-US-ASCII sequences escaped. - * - * @param {string} str Valid Unicode string - * @return {string} Double-quoted string with Unicode sequences escaped - */ -function objcEscape(s) { - return '@"' + c11Escape(s) + '"'; -} - -/** - * Returns a double-quoted Python string with all non-printable - * and non-US-ASCII sequences escaped. - * - * @param {string} str Valid Unicode string - * @return {string} Double-quoted string with Unicode sequences escaped - */ -function pyEscape(s) { - return 'u"' + c11Escape(s) + '"'; -} - -var UnicodeUtilsExtra = { - formatCodePoint: formatCodePoint, - getCodePointsFormatted: getCodePointsFormatted, - zeroPaddedHex: zeroPaddedHex, - phpEscape: phpEscape, - jsEscape: jsEscape, - cEscape: cEscape, - objcEscape: objcEscape, - pyEscape: pyEscape -}; - -module.exports = UnicodeUtilsExtra; \ No newline at end of file diff --git a/node_modules/fbjs/lib/UnicodeUtilsExtra.js.flow b/node_modules/fbjs/lib/UnicodeUtilsExtra.js.flow deleted file mode 100644 index dc3ecb70a..000000000 --- a/node_modules/fbjs/lib/UnicodeUtilsExtra.js.flow +++ /dev/null @@ -1,184 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * @providesModule UnicodeUtilsExtra - * @typechecks - */ - -/** - * Unicode-enabled extra utility functions not always needed. - */ - -'use strict'; - -const UnicodeUtils = require('./UnicodeUtils'); - -/** - * @param {number} codePoint Valid Unicode code-point - * @param {number} len Zero-padded minimum width of result - * @return {string} A zero-padded hexadecimal string (00XXXX) - */ -function zeroPaddedHex(codePoint, len) { - let codePointHex = codePoint.toString(16).toUpperCase(); - let numZeros = Math.max(0, len - codePointHex.length); - var result = ''; - for (var i = 0; i < numZeros; i++) { - result += '0'; - } - result += codePointHex; - return result; -} - -/** - * @param {number} codePoint Valid Unicode code-point - * @return {string} A formatted Unicode code-point string - * of the format U+XXXX, U+XXXXX, or U+XXXXXX - */ -function formatCodePoint(codePoint) { - codePoint = codePoint || 0; // NaN --> 0 - var formatted = ''; - if (codePoint <= 0xFFFF) { - formatted = zeroPaddedHex(codePoint, 4); - } else { - formatted = codePoint.toString(16).toUpperCase(); - } - return 'U+' + formatted; -} - -/** - * Get a list of formatted (string) Unicode code-points from a String - * - * @param {string} str Valid Unicode string - * @return {array} A list of formatted code-point strings - */ -function getCodePointsFormatted(str) { - const codePoints = UnicodeUtils.getCodePoints(str); - return codePoints.map(formatCodePoint); -} - -const specialEscape = { - 0x07: '\\a', - 0x08: '\\b', - 0x0C: '\\f', - 0x0A: '\\n', - 0x0D: '\\r', - 0x09: '\\t', - 0x0B: '\\v', - 0x22: '\\"', - 0x5c: '\\\\' -}; - -/** - * Returns a double-quoted PHP string with all non-printable and - * non-US-ASCII sequences escaped. - * - * @param {string} str Valid Unicode string - * @return {string} Double-quoted string with Unicode sequences escaped - */ -function phpEscape(s) { - var result = '"'; - for (let cp of UnicodeUtils.getCodePoints(s)) { - let special = specialEscape[cp]; - if (special !== undefined) { - result += special; - } else if (cp >= 0x20 && cp <= 0x7e) { - result += String.fromCodePoint(cp); - } else if (cp <= 0xFFFF) { - result += '\\u{' + zeroPaddedHex(cp, 4) + '}'; - } else { - result += '\\u{' + zeroPaddedHex(cp, 6) + '}'; - } - } - result += '"'; - return result; -} - -/** - * Returns a double-quoted Java or JavaScript string with all - * non-printable and non-US-ASCII sequences escaped. - * - * @param {string} str Valid Unicode string - * @return {string} Double-quoted string with Unicode sequences escaped - */ -function jsEscape(s) { - var result = '"'; - for (var i = 0; i < s.length; i++) { - let cp = s.charCodeAt(i); - let special = specialEscape[cp]; - if (special !== undefined) { - result += special; - } else if (cp >= 0x20 && cp <= 0x7e) { - result += String.fromCodePoint(cp); - } else { - result += '\\u' + zeroPaddedHex(cp, 4); - } - } - result += '"'; - return result; -} - -function c11Escape(s) { - var result = ''; - for (let cp of UnicodeUtils.getCodePoints(s)) { - let special = specialEscape[cp]; - if (special !== undefined) { - result += special; - } else if (cp >= 0x20 && cp <= 0x7e) { - result += String.fromCodePoint(cp); - } else if (cp <= 0xFFFF) { - result += '\\u' + zeroPaddedHex(cp, 4); - } else { - result += '\\U' + zeroPaddedHex(cp, 8); - } - } - return result; -} - -/** - * Returns a double-quoted C string with all non-printable and - * non-US-ASCII sequences escaped. - * - * @param {string} str Valid Unicode string - * @return {string} Double-quoted string with Unicode sequences escaped - */ -function cEscape(s) { - return 'u8"' + c11Escape(s) + '"'; -} - -/** - * Returns a double-quoted Objective-C string with all non-printable - * and non-US-ASCII sequences escaped. - * - * @param {string} str Valid Unicode string - * @return {string} Double-quoted string with Unicode sequences escaped - */ -function objcEscape(s) { - return '@"' + c11Escape(s) + '"'; -} - -/** - * Returns a double-quoted Python string with all non-printable - * and non-US-ASCII sequences escaped. - * - * @param {string} str Valid Unicode string - * @return {string} Double-quoted string with Unicode sequences escaped - */ -function pyEscape(s) { - return 'u"' + c11Escape(s) + '"'; -} - -const UnicodeUtilsExtra = { - formatCodePoint: formatCodePoint, - getCodePointsFormatted: getCodePointsFormatted, - zeroPaddedHex: zeroPaddedHex, - phpEscape: phpEscape, - jsEscape: jsEscape, - cEscape: cEscape, - objcEscape: objcEscape, - pyEscape: pyEscape -}; - -module.exports = UnicodeUtilsExtra; \ No newline at end of file diff --git a/node_modules/fbjs/lib/UserAgent.js b/node_modules/fbjs/lib/UserAgent.js deleted file mode 100644 index 240307816..000000000 --- a/node_modules/fbjs/lib/UserAgent.js +++ /dev/null @@ -1,239 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - */ - -'use strict'; - -var UserAgentData = require('./UserAgentData'); -var VersionRange = require('./VersionRange'); - -var mapObject = require('./mapObject'); -var memoizeStringOnly = require('./memoizeStringOnly'); - -/** - * Checks to see whether `name` and `version` satisfy `query`. - * - * @param {string} name Name of the browser, device, engine or platform - * @param {?string} version Version of the browser, engine or platform - * @param {string} query Query of form "Name [range expression]" - * @param {?function} normalizer Optional pre-processor for range expression - * @return {boolean} - */ -function compare(name, version, query, normalizer) { - // check for exact match with no version - if (name === query) { - return true; - } - - // check for non-matching names - if (!query.startsWith(name)) { - return false; - } - - // full comparison with version - var range = query.slice(name.length); - if (version) { - range = normalizer ? normalizer(range) : range; - return VersionRange.contains(range, version); - } - - return false; -} - -/** - * Normalizes `version` by stripping any "NT" prefix, but only on the Windows - * platform. - * - * Mimics the stripping performed by the `UserAgentWindowsPlatform` PHP class. - * - * @param {string} version - * @return {string} - */ -function normalizePlatformVersion(version) { - if (UserAgentData.platformName === 'Windows') { - return version.replace(/^\s*NT/, ''); - } - - return version; -} - -/** - * Provides client-side access to the authoritative PHP-generated User Agent - * information supplied by the server. - */ -var UserAgent = { - /** - * Check if the User Agent browser matches `query`. - * - * `query` should be a string like "Chrome" or "Chrome > 33". - * - * Valid browser names include: - * - * - ACCESS NetFront - * - AOL - * - Amazon Silk - * - Android - * - BlackBerry - * - BlackBerry PlayBook - * - Chrome - * - Chrome for iOS - * - Chrome frame - * - Facebook PHP SDK - * - Facebook for iOS - * - Firefox - * - IE - * - IE Mobile - * - Mobile Safari - * - Motorola Internet Browser - * - Nokia - * - Openwave Mobile Browser - * - Opera - * - Opera Mini - * - Opera Mobile - * - Safari - * - UIWebView - * - Unknown - * - webOS - * - etc... - * - * An authoritative list can be found in the PHP `BrowserDetector` class and - * related classes in the same file (see calls to `new UserAgentBrowser` here: - * https://fburl.com/50728104). - * - * @note Function results are memoized - * - * @param {string} query Query of the form "Name [range expression]" - * @return {boolean} - */ - isBrowser: function isBrowser(query) { - return compare(UserAgentData.browserName, UserAgentData.browserFullVersion, query); - }, - - - /** - * Check if the User Agent browser uses a 32 or 64 bit architecture. - * - * @note Function results are memoized - * - * @param {string} query Query of the form "32" or "64". - * @return {boolean} - */ - isBrowserArchitecture: function isBrowserArchitecture(query) { - return compare(UserAgentData.browserArchitecture, null, query); - }, - - - /** - * Check if the User Agent device matches `query`. - * - * `query` should be a string like "iPhone" or "iPad". - * - * Valid device names include: - * - * - Kindle - * - Kindle Fire - * - Unknown - * - iPad - * - iPhone - * - iPod - * - etc... - * - * An authoritative list can be found in the PHP `DeviceDetector` class and - * related classes in the same file (see calls to `new UserAgentDevice` here: - * https://fburl.com/50728332). - * - * @note Function results are memoized - * - * @param {string} query Query of the form "Name" - * @return {boolean} - */ - isDevice: function isDevice(query) { - return compare(UserAgentData.deviceName, null, query); - }, - - - /** - * Check if the User Agent rendering engine matches `query`. - * - * `query` should be a string like "WebKit" or "WebKit >= 537". - * - * Valid engine names include: - * - * - Gecko - * - Presto - * - Trident - * - WebKit - * - etc... - * - * An authoritative list can be found in the PHP `RenderingEngineDetector` - * class related classes in the same file (see calls to `new - * UserAgentRenderingEngine` here: https://fburl.com/50728617). - * - * @note Function results are memoized - * - * @param {string} query Query of the form "Name [range expression]" - * @return {boolean} - */ - isEngine: function isEngine(query) { - return compare(UserAgentData.engineName, UserAgentData.engineVersion, query); - }, - - - /** - * Check if the User Agent platform matches `query`. - * - * `query` should be a string like "Windows" or "iOS 5 - 6". - * - * Valid platform names include: - * - * - Android - * - BlackBerry OS - * - Java ME - * - Linux - * - Mac OS X - * - Mac OS X Calendar - * - Mac OS X Internet Account - * - Symbian - * - SymbianOS - * - Windows - * - Windows Mobile - * - Windows Phone - * - iOS - * - iOS Facebook Integration Account - * - iOS Facebook Social Sharing UI - * - webOS - * - Chrome OS - * - etc... - * - * An authoritative list can be found in the PHP `PlatformDetector` class and - * related classes in the same file (see calls to `new UserAgentPlatform` - * here: https://fburl.com/50729226). - * - * @note Function results are memoized - * - * @param {string} query Query of the form "Name [range expression]" - * @return {boolean} - */ - isPlatform: function isPlatform(query) { - return compare(UserAgentData.platformName, UserAgentData.platformFullVersion, query, normalizePlatformVersion); - }, - - - /** - * Check if the User Agent platform is a 32 or 64 bit architecture. - * - * @note Function results are memoized - * - * @param {string} query Query of the form "32" or "64". - * @return {boolean} - */ - isPlatformArchitecture: function isPlatformArchitecture(query) { - return compare(UserAgentData.platformArchitecture, null, query); - } -}; - -module.exports = mapObject(UserAgent, memoizeStringOnly); \ No newline at end of file diff --git a/node_modules/fbjs/lib/UserAgent.js.flow b/node_modules/fbjs/lib/UserAgent.js.flow deleted file mode 100644 index 61ec12863..000000000 --- a/node_modules/fbjs/lib/UserAgent.js.flow +++ /dev/null @@ -1,236 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * @providesModule UserAgent - */ - -'use strict'; - -const UserAgentData = require('./UserAgentData'); -const VersionRange = require('./VersionRange'); - -const mapObject = require('./mapObject'); -const memoizeStringOnly = require('./memoizeStringOnly'); - -/** - * Checks to see whether `name` and `version` satisfy `query`. - * - * @param {string} name Name of the browser, device, engine or platform - * @param {?string} version Version of the browser, engine or platform - * @param {string} query Query of form "Name [range expression]" - * @param {?function} normalizer Optional pre-processor for range expression - * @return {boolean} - */ -function compare(name, version, query, normalizer) { - // check for exact match with no version - if (name === query) { - return true; - } - - // check for non-matching names - if (!query.startsWith(name)) { - return false; - } - - // full comparison with version - let range = query.slice(name.length); - if (version) { - range = normalizer ? normalizer(range) : range; - return VersionRange.contains(range, version); - } - - return false; -} - -/** - * Normalizes `version` by stripping any "NT" prefix, but only on the Windows - * platform. - * - * Mimics the stripping performed by the `UserAgentWindowsPlatform` PHP class. - * - * @param {string} version - * @return {string} - */ -function normalizePlatformVersion(version) { - if (UserAgentData.platformName === 'Windows') { - return version.replace(/^\s*NT/, ''); - } - - return version; -} - -/** - * Provides client-side access to the authoritative PHP-generated User Agent - * information supplied by the server. - */ -const UserAgent = { - /** - * Check if the User Agent browser matches `query`. - * - * `query` should be a string like "Chrome" or "Chrome > 33". - * - * Valid browser names include: - * - * - ACCESS NetFront - * - AOL - * - Amazon Silk - * - Android - * - BlackBerry - * - BlackBerry PlayBook - * - Chrome - * - Chrome for iOS - * - Chrome frame - * - Facebook PHP SDK - * - Facebook for iOS - * - Firefox - * - IE - * - IE Mobile - * - Mobile Safari - * - Motorola Internet Browser - * - Nokia - * - Openwave Mobile Browser - * - Opera - * - Opera Mini - * - Opera Mobile - * - Safari - * - UIWebView - * - Unknown - * - webOS - * - etc... - * - * An authoritative list can be found in the PHP `BrowserDetector` class and - * related classes in the same file (see calls to `new UserAgentBrowser` here: - * https://fburl.com/50728104). - * - * @note Function results are memoized - * - * @param {string} query Query of the form "Name [range expression]" - * @return {boolean} - */ - isBrowser(query) { - return compare(UserAgentData.browserName, UserAgentData.browserFullVersion, query); - }, - - /** - * Check if the User Agent browser uses a 32 or 64 bit architecture. - * - * @note Function results are memoized - * - * @param {string} query Query of the form "32" or "64". - * @return {boolean} - */ - isBrowserArchitecture(query) { - return compare(UserAgentData.browserArchitecture, null, query); - }, - - /** - * Check if the User Agent device matches `query`. - * - * `query` should be a string like "iPhone" or "iPad". - * - * Valid device names include: - * - * - Kindle - * - Kindle Fire - * - Unknown - * - iPad - * - iPhone - * - iPod - * - etc... - * - * An authoritative list can be found in the PHP `DeviceDetector` class and - * related classes in the same file (see calls to `new UserAgentDevice` here: - * https://fburl.com/50728332). - * - * @note Function results are memoized - * - * @param {string} query Query of the form "Name" - * @return {boolean} - */ - isDevice(query) { - return compare(UserAgentData.deviceName, null, query); - }, - - /** - * Check if the User Agent rendering engine matches `query`. - * - * `query` should be a string like "WebKit" or "WebKit >= 537". - * - * Valid engine names include: - * - * - Gecko - * - Presto - * - Trident - * - WebKit - * - etc... - * - * An authoritative list can be found in the PHP `RenderingEngineDetector` - * class related classes in the same file (see calls to `new - * UserAgentRenderingEngine` here: https://fburl.com/50728617). - * - * @note Function results are memoized - * - * @param {string} query Query of the form "Name [range expression]" - * @return {boolean} - */ - isEngine(query) { - return compare(UserAgentData.engineName, UserAgentData.engineVersion, query); - }, - - /** - * Check if the User Agent platform matches `query`. - * - * `query` should be a string like "Windows" or "iOS 5 - 6". - * - * Valid platform names include: - * - * - Android - * - BlackBerry OS - * - Java ME - * - Linux - * - Mac OS X - * - Mac OS X Calendar - * - Mac OS X Internet Account - * - Symbian - * - SymbianOS - * - Windows - * - Windows Mobile - * - Windows Phone - * - iOS - * - iOS Facebook Integration Account - * - iOS Facebook Social Sharing UI - * - webOS - * - Chrome OS - * - etc... - * - * An authoritative list can be found in the PHP `PlatformDetector` class and - * related classes in the same file (see calls to `new UserAgentPlatform` - * here: https://fburl.com/50729226). - * - * @note Function results are memoized - * - * @param {string} query Query of the form "Name [range expression]" - * @return {boolean} - */ - isPlatform(query) { - return compare(UserAgentData.platformName, UserAgentData.platformFullVersion, query, normalizePlatformVersion); - }, - - /** - * Check if the User Agent platform is a 32 or 64 bit architecture. - * - * @note Function results are memoized - * - * @param {string} query Query of the form "32" or "64". - * @return {boolean} - */ - isPlatformArchitecture(query) { - return compare(UserAgentData.platformArchitecture, null, query); - } - -}; - -module.exports = mapObject(UserAgent, memoizeStringOnly); \ No newline at end of file diff --git a/node_modules/fbjs/lib/UserAgentData.js b/node_modules/fbjs/lib/UserAgentData.js deleted file mode 100644 index 928fbe3df..000000000 --- a/node_modules/fbjs/lib/UserAgentData.js +++ /dev/null @@ -1,80 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - */ - -/** - * Usage note: - * This module makes a best effort to export the same data we would internally. - * At Facebook we use a server-generated module that does the parsing and - * exports the data for the client to use. We can't rely on a server-side - * implementation in open source so instead we make use of an open source - * library to do the heavy lifting and then make some adjustments as necessary. - * It's likely there will be some differences. Some we can smooth over. - * Others are going to be harder. - */ - -'use strict'; - -var UAParser = require('ua-parser-js'); - -var UNKNOWN = 'Unknown'; - -var PLATFORM_MAP = { - 'Mac OS': 'Mac OS X' -}; - -/** - * Convert from UAParser platform name to what we expect. - */ -function convertPlatformName(name) { - return PLATFORM_MAP[name] || name; -} - -/** - * Get the version number in parts. This is very naive. We actually get major - * version as a part of UAParser already, which is generally good enough, but - * let's get the minor just in case. - */ -function getBrowserVersion(version) { - if (!version) { - return { - major: '', - minor: '' - }; - } - var parts = version.split('.'); - return { - major: parts[0], - minor: parts[1] - }; -} - -/** - * Get the UA data fom UAParser and then convert it to the format we're - * expecting for our APIS. - */ -var parser = new UAParser(); -var results = parser.getResult(); - -// Do some conversion first. -var browserVersionData = getBrowserVersion(results.browser.version); -var uaData = { - browserArchitecture: results.cpu.architecture || UNKNOWN, - browserFullVersion: results.browser.version || UNKNOWN, - browserMinorVersion: browserVersionData.minor || UNKNOWN, - browserName: results.browser.name || UNKNOWN, - browserVersion: results.browser.major || UNKNOWN, - deviceName: results.device.model || UNKNOWN, - engineName: results.engine.name || UNKNOWN, - engineVersion: results.engine.version || UNKNOWN, - platformArchitecture: results.cpu.architecture || UNKNOWN, - platformName: convertPlatformName(results.os.name) || UNKNOWN, - platformVersion: results.os.version || UNKNOWN, - platformFullVersion: results.os.version || UNKNOWN -}; - -module.exports = uaData; \ No newline at end of file diff --git a/node_modules/fbjs/lib/UserAgentData.js.flow b/node_modules/fbjs/lib/UserAgentData.js.flow deleted file mode 100644 index bc2e027c8..000000000 --- a/node_modules/fbjs/lib/UserAgentData.js.flow +++ /dev/null @@ -1,81 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * @providesModule UserAgentData - */ - -/** - * Usage note: - * This module makes a best effort to export the same data we would internally. - * At Facebook we use a server-generated module that does the parsing and - * exports the data for the client to use. We can't rely on a server-side - * implementation in open source so instead we make use of an open source - * library to do the heavy lifting and then make some adjustments as necessary. - * It's likely there will be some differences. Some we can smooth over. - * Others are going to be harder. - */ - -'use strict'; - -var UAParser = require('ua-parser-js'); - -var UNKNOWN = 'Unknown'; - -var PLATFORM_MAP = { - 'Mac OS': 'Mac OS X' -}; - -/** - * Convert from UAParser platform name to what we expect. - */ -function convertPlatformName(name) { - return PLATFORM_MAP[name] || name; -} - -/** - * Get the version number in parts. This is very naive. We actually get major - * version as a part of UAParser already, which is generally good enough, but - * let's get the minor just in case. - */ -function getBrowserVersion(version) { - if (!version) { - return { - major: '', - minor: '' - }; - } - var parts = version.split('.'); - return { - major: parts[0], - minor: parts[1] - }; -} - -/** - * Get the UA data fom UAParser and then convert it to the format we're - * expecting for our APIS. - */ -var parser = new UAParser(); -var results = parser.getResult(); - -// Do some conversion first. -var browserVersionData = getBrowserVersion(results.browser.version); -var uaData = { - browserArchitecture: results.cpu.architecture || UNKNOWN, - browserFullVersion: results.browser.version || UNKNOWN, - browserMinorVersion: browserVersionData.minor || UNKNOWN, - browserName: results.browser.name || UNKNOWN, - browserVersion: results.browser.major || UNKNOWN, - deviceName: results.device.model || UNKNOWN, - engineName: results.engine.name || UNKNOWN, - engineVersion: results.engine.version || UNKNOWN, - platformArchitecture: results.cpu.architecture || UNKNOWN, - platformName: convertPlatformName(results.os.name) || UNKNOWN, - platformVersion: results.os.version || UNKNOWN, - platformFullVersion: results.os.version || UNKNOWN -}; - -module.exports = uaData; \ No newline at end of file diff --git a/node_modules/fbjs/lib/VersionRange.js b/node_modules/fbjs/lib/VersionRange.js deleted file mode 100644 index 93e3e53d3..000000000 --- a/node_modules/fbjs/lib/VersionRange.js +++ /dev/null @@ -1,380 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - */ - -'use strict'; - -var invariant = require('./invariant'); - -var componentRegex = /\./; -var orRegex = /\|\|/; -var rangeRegex = /\s+\-\s+/; -var modifierRegex = /^(<=|<|=|>=|~>|~|>|)?\s*(.+)/; -var numericRegex = /^(\d*)(.*)/; - -/** - * Splits input `range` on "||" and returns true if any subrange matches - * `version`. - * - * @param {string} range - * @param {string} version - * @returns {boolean} - */ -function checkOrExpression(range, version) { - var expressions = range.split(orRegex); - - if (expressions.length > 1) { - return expressions.some(function (range) { - return VersionRange.contains(range, version); - }); - } else { - range = expressions[0].trim(); - return checkRangeExpression(range, version); - } -} - -/** - * Splits input `range` on " - " (the surrounding whitespace is required) and - * returns true if version falls between the two operands. - * - * @param {string} range - * @param {string} version - * @returns {boolean} - */ -function checkRangeExpression(range, version) { - var expressions = range.split(rangeRegex); - - !(expressions.length > 0 && expressions.length <= 2) ? process.env.NODE_ENV !== 'production' ? invariant(false, 'the "-" operator expects exactly 2 operands') : invariant(false) : void 0; - - if (expressions.length === 1) { - return checkSimpleExpression(expressions[0], version); - } else { - var startVersion = expressions[0], - endVersion = expressions[1]; - - !(isSimpleVersion(startVersion) && isSimpleVersion(endVersion)) ? process.env.NODE_ENV !== 'production' ? invariant(false, 'operands to the "-" operator must be simple (no modifiers)') : invariant(false) : void 0; - - return checkSimpleExpression('>=' + startVersion, version) && checkSimpleExpression('<=' + endVersion, version); - } -} - -/** - * Checks if `range` matches `version`. `range` should be a "simple" range (ie. - * not a compound range using the " - " or "||" operators). - * - * @param {string} range - * @param {string} version - * @returns {boolean} - */ -function checkSimpleExpression(range, version) { - range = range.trim(); - if (range === '') { - return true; - } - - var versionComponents = version.split(componentRegex); - - var _getModifierAndCompon = getModifierAndComponents(range), - modifier = _getModifierAndCompon.modifier, - rangeComponents = _getModifierAndCompon.rangeComponents; - - switch (modifier) { - case '<': - return checkLessThan(versionComponents, rangeComponents); - case '<=': - return checkLessThanOrEqual(versionComponents, rangeComponents); - case '>=': - return checkGreaterThanOrEqual(versionComponents, rangeComponents); - case '>': - return checkGreaterThan(versionComponents, rangeComponents); - case '~': - case '~>': - return checkApproximateVersion(versionComponents, rangeComponents); - default: - return checkEqual(versionComponents, rangeComponents); - } -} - -/** - * Checks whether `a` is less than `b`. - * - * @param {array} a - * @param {array} b - * @returns {boolean} - */ -function checkLessThan(a, b) { - return compareComponents(a, b) === -1; -} - -/** - * Checks whether `a` is less than or equal to `b`. - * - * @param {array} a - * @param {array} b - * @returns {boolean} - */ -function checkLessThanOrEqual(a, b) { - var result = compareComponents(a, b); - return result === -1 || result === 0; -} - -/** - * Checks whether `a` is equal to `b`. - * - * @param {array} a - * @param {array} b - * @returns {boolean} - */ -function checkEqual(a, b) { - return compareComponents(a, b) === 0; -} - -/** - * Checks whether `a` is greater than or equal to `b`. - * - * @param {array} a - * @param {array} b - * @returns {boolean} - */ -function checkGreaterThanOrEqual(a, b) { - var result = compareComponents(a, b); - return result === 1 || result === 0; -} - -/** - * Checks whether `a` is greater than `b`. - * - * @param {array} a - * @param {array} b - * @returns {boolean} - */ -function checkGreaterThan(a, b) { - return compareComponents(a, b) === 1; -} - -/** - * Checks whether `a` is "reasonably close" to `b` (as described in - * https://www.npmjs.org/doc/misc/semver.html). For example, if `b` is "1.3.1" - * then "reasonably close" is defined as ">= 1.3.1 and < 1.4". - * - * @param {array} a - * @param {array} b - * @returns {boolean} - */ -function checkApproximateVersion(a, b) { - var lowerBound = b.slice(); - var upperBound = b.slice(); - - if (upperBound.length > 1) { - upperBound.pop(); - } - var lastIndex = upperBound.length - 1; - var numeric = parseInt(upperBound[lastIndex], 10); - if (isNumber(numeric)) { - upperBound[lastIndex] = numeric + 1 + ''; - } - - return checkGreaterThanOrEqual(a, lowerBound) && checkLessThan(a, upperBound); -} - -/** - * Extracts the optional modifier (<, <=, =, >=, >, ~, ~>) and version - * components from `range`. - * - * For example, given `range` ">= 1.2.3" returns an object with a `modifier` of - * `">="` and `components` of `[1, 2, 3]`. - * - * @param {string} range - * @returns {object} - */ -function getModifierAndComponents(range) { - var rangeComponents = range.split(componentRegex); - var matches = rangeComponents[0].match(modifierRegex); - !matches ? process.env.NODE_ENV !== 'production' ? invariant(false, 'expected regex to match but it did not') : invariant(false) : void 0; - - return { - modifier: matches[1], - rangeComponents: [matches[2]].concat(rangeComponents.slice(1)) - }; -} - -/** - * Determines if `number` is a number. - * - * @param {mixed} number - * @returns {boolean} - */ -function isNumber(number) { - return !isNaN(number) && isFinite(number); -} - -/** - * Tests whether `range` is a "simple" version number without any modifiers - * (">", "~" etc). - * - * @param {string} range - * @returns {boolean} - */ -function isSimpleVersion(range) { - return !getModifierAndComponents(range).modifier; -} - -/** - * Zero-pads array `array` until it is at least `length` long. - * - * @param {array} array - * @param {number} length - */ -function zeroPad(array, length) { - for (var i = array.length; i < length; i++) { - array[i] = '0'; - } -} - -/** - * Normalizes `a` and `b` in preparation for comparison by doing the following: - * - * - zero-pads `a` and `b` - * - marks any "x", "X" or "*" component in `b` as equivalent by zero-ing it out - * in both `a` and `b` - * - marks any final "*" component in `b` as a greedy wildcard by zero-ing it - * and all of its successors in `a` - * - * @param {array} a - * @param {array} b - * @returns {array>} - */ -function normalizeVersions(a, b) { - a = a.slice(); - b = b.slice(); - - zeroPad(a, b.length); - - // mark "x" and "*" components as equal - for (var i = 0; i < b.length; i++) { - var matches = b[i].match(/^[x*]$/i); - if (matches) { - b[i] = a[i] = '0'; - - // final "*" greedily zeros all remaining components - if (matches[0] === '*' && i === b.length - 1) { - for (var j = i; j < a.length; j++) { - a[j] = '0'; - } - } - } - } - - zeroPad(b, a.length); - - return [a, b]; -} - -/** - * Returns the numerical -- not the lexicographical -- ordering of `a` and `b`. - * - * For example, `10-alpha` is greater than `2-beta`. - * - * @param {string} a - * @param {string} b - * @returns {number} -1, 0 or 1 to indicate whether `a` is less than, equal to, - * or greater than `b`, respectively - */ -function compareNumeric(a, b) { - var aPrefix = a.match(numericRegex)[1]; - var bPrefix = b.match(numericRegex)[1]; - var aNumeric = parseInt(aPrefix, 10); - var bNumeric = parseInt(bPrefix, 10); - - if (isNumber(aNumeric) && isNumber(bNumeric) && aNumeric !== bNumeric) { - return compare(aNumeric, bNumeric); - } else { - return compare(a, b); - } -} - -/** - * Returns the ordering of `a` and `b`. - * - * @param {string|number} a - * @param {string|number} b - * @returns {number} -1, 0 or 1 to indicate whether `a` is less than, equal to, - * or greater than `b`, respectively - */ -function compare(a, b) { - !(typeof a === typeof b) ? process.env.NODE_ENV !== 'production' ? invariant(false, '"a" and "b" must be of the same type') : invariant(false) : void 0; - - if (a > b) { - return 1; - } else if (a < b) { - return -1; - } else { - return 0; - } -} - -/** - * Compares arrays of version components. - * - * @param {array} a - * @param {array} b - * @returns {number} -1, 0 or 1 to indicate whether `a` is less than, equal to, - * or greater than `b`, respectively - */ -function compareComponents(a, b) { - var _normalizeVersions = normalizeVersions(a, b), - aNormalized = _normalizeVersions[0], - bNormalized = _normalizeVersions[1]; - - for (var i = 0; i < bNormalized.length; i++) { - var result = compareNumeric(aNormalized[i], bNormalized[i]); - if (result) { - return result; - } - } - - return 0; -} - -var VersionRange = { - /** - * Checks whether `version` satisfies the `range` specification. - * - * We support a subset of the expressions defined in - * https://www.npmjs.org/doc/misc/semver.html: - * - * version Must match version exactly - * =version Same as just version - * >version Must be greater than version - * >=version Must be greater than or equal to version - * = 1.2.3 and < 1.3" - * ~>version Equivalent to ~version - * 1.2.x Must match "1.2.x", where "x" is a wildcard that matches - * anything - * 1.2.* Similar to "1.2.x", but "*" in the trailing position is a - * "greedy" wildcard, so will match any number of additional - * components: - * "1.2.*" will match "1.2.1", "1.2.1.1", "1.2.1.1.1" etc - * * Any version - * "" (Empty string) Same as * - * v1 - v2 Equivalent to ">= v1 and <= v2" - * r1 || r2 Passes if either r1 or r2 are satisfied - * - * @param {string} range - * @param {string} version - * @returns {boolean} - */ - contains: function contains(range, version) { - return checkOrExpression(range.trim(), version.trim()); - } -}; - -module.exports = VersionRange; \ No newline at end of file diff --git a/node_modules/fbjs/lib/VersionRange.js.flow b/node_modules/fbjs/lib/VersionRange.js.flow deleted file mode 100644 index ad64790fe..000000000 --- a/node_modules/fbjs/lib/VersionRange.js.flow +++ /dev/null @@ -1,371 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * @providesModule VersionRange - */ - -'use strict'; - -const invariant = require('./invariant'); - -const componentRegex = /\./; -const orRegex = /\|\|/; -const rangeRegex = /\s+\-\s+/; -const modifierRegex = /^(<=|<|=|>=|~>|~|>|)?\s*(.+)/; -const numericRegex = /^(\d*)(.*)/; - -/** - * Splits input `range` on "||" and returns true if any subrange matches - * `version`. - * - * @param {string} range - * @param {string} version - * @returns {boolean} - */ -function checkOrExpression(range, version) { - const expressions = range.split(orRegex); - - if (expressions.length > 1) { - return expressions.some(range => VersionRange.contains(range, version)); - } else { - range = expressions[0].trim(); - return checkRangeExpression(range, version); - } -} - -/** - * Splits input `range` on " - " (the surrounding whitespace is required) and - * returns true if version falls between the two operands. - * - * @param {string} range - * @param {string} version - * @returns {boolean} - */ -function checkRangeExpression(range, version) { - const expressions = range.split(rangeRegex); - - invariant(expressions.length > 0 && expressions.length <= 2, 'the "-" operator expects exactly 2 operands'); - - if (expressions.length === 1) { - return checkSimpleExpression(expressions[0], version); - } else { - const [startVersion, endVersion] = expressions; - invariant(isSimpleVersion(startVersion) && isSimpleVersion(endVersion), 'operands to the "-" operator must be simple (no modifiers)'); - - return checkSimpleExpression('>=' + startVersion, version) && checkSimpleExpression('<=' + endVersion, version); - } -} - -/** - * Checks if `range` matches `version`. `range` should be a "simple" range (ie. - * not a compound range using the " - " or "||" operators). - * - * @param {string} range - * @param {string} version - * @returns {boolean} - */ -function checkSimpleExpression(range, version) { - range = range.trim(); - if (range === '') { - return true; - } - - const versionComponents = version.split(componentRegex); - const { modifier, rangeComponents } = getModifierAndComponents(range); - switch (modifier) { - case '<': - return checkLessThan(versionComponents, rangeComponents); - case '<=': - return checkLessThanOrEqual(versionComponents, rangeComponents); - case '>=': - return checkGreaterThanOrEqual(versionComponents, rangeComponents); - case '>': - return checkGreaterThan(versionComponents, rangeComponents); - case '~': - case '~>': - return checkApproximateVersion(versionComponents, rangeComponents); - default: - return checkEqual(versionComponents, rangeComponents); - } -} - -/** - * Checks whether `a` is less than `b`. - * - * @param {array} a - * @param {array} b - * @returns {boolean} - */ -function checkLessThan(a, b) { - return compareComponents(a, b) === -1; -} - -/** - * Checks whether `a` is less than or equal to `b`. - * - * @param {array} a - * @param {array} b - * @returns {boolean} - */ -function checkLessThanOrEqual(a, b) { - const result = compareComponents(a, b); - return result === -1 || result === 0; -} - -/** - * Checks whether `a` is equal to `b`. - * - * @param {array} a - * @param {array} b - * @returns {boolean} - */ -function checkEqual(a, b) { - return compareComponents(a, b) === 0; -} - -/** - * Checks whether `a` is greater than or equal to `b`. - * - * @param {array} a - * @param {array} b - * @returns {boolean} - */ -function checkGreaterThanOrEqual(a, b) { - const result = compareComponents(a, b); - return result === 1 || result === 0; -} - -/** - * Checks whether `a` is greater than `b`. - * - * @param {array} a - * @param {array} b - * @returns {boolean} - */ -function checkGreaterThan(a, b) { - return compareComponents(a, b) === 1; -} - -/** - * Checks whether `a` is "reasonably close" to `b` (as described in - * https://www.npmjs.org/doc/misc/semver.html). For example, if `b` is "1.3.1" - * then "reasonably close" is defined as ">= 1.3.1 and < 1.4". - * - * @param {array} a - * @param {array} b - * @returns {boolean} - */ -function checkApproximateVersion(a, b) { - const lowerBound = b.slice(); - const upperBound = b.slice(); - - if (upperBound.length > 1) { - upperBound.pop(); - } - const lastIndex = upperBound.length - 1; - const numeric = parseInt(upperBound[lastIndex], 10); - if (isNumber(numeric)) { - upperBound[lastIndex] = numeric + 1 + ''; - } - - return checkGreaterThanOrEqual(a, lowerBound) && checkLessThan(a, upperBound); -} - -/** - * Extracts the optional modifier (<, <=, =, >=, >, ~, ~>) and version - * components from `range`. - * - * For example, given `range` ">= 1.2.3" returns an object with a `modifier` of - * `">="` and `components` of `[1, 2, 3]`. - * - * @param {string} range - * @returns {object} - */ -function getModifierAndComponents(range) { - const rangeComponents = range.split(componentRegex); - const matches = rangeComponents[0].match(modifierRegex); - invariant(matches, 'expected regex to match but it did not'); - - return { - modifier: matches[1], - rangeComponents: [matches[2]].concat(rangeComponents.slice(1)) - }; -} - -/** - * Determines if `number` is a number. - * - * @param {mixed} number - * @returns {boolean} - */ -function isNumber(number) { - return !isNaN(number) && isFinite(number); -} - -/** - * Tests whether `range` is a "simple" version number without any modifiers - * (">", "~" etc). - * - * @param {string} range - * @returns {boolean} - */ -function isSimpleVersion(range) { - return !getModifierAndComponents(range).modifier; -} - -/** - * Zero-pads array `array` until it is at least `length` long. - * - * @param {array} array - * @param {number} length - */ -function zeroPad(array, length) { - for (let i = array.length; i < length; i++) { - array[i] = '0'; - } -} - -/** - * Normalizes `a` and `b` in preparation for comparison by doing the following: - * - * - zero-pads `a` and `b` - * - marks any "x", "X" or "*" component in `b` as equivalent by zero-ing it out - * in both `a` and `b` - * - marks any final "*" component in `b` as a greedy wildcard by zero-ing it - * and all of its successors in `a` - * - * @param {array} a - * @param {array} b - * @returns {array>} - */ -function normalizeVersions(a, b) { - a = a.slice(); - b = b.slice(); - - zeroPad(a, b.length); - - // mark "x" and "*" components as equal - for (let i = 0; i < b.length; i++) { - const matches = b[i].match(/^[x*]$/i); - if (matches) { - b[i] = a[i] = '0'; - - // final "*" greedily zeros all remaining components - if (matches[0] === '*' && i === b.length - 1) { - for (let j = i; j < a.length; j++) { - a[j] = '0'; - } - } - } - } - - zeroPad(b, a.length); - - return [a, b]; -} - -/** - * Returns the numerical -- not the lexicographical -- ordering of `a` and `b`. - * - * For example, `10-alpha` is greater than `2-beta`. - * - * @param {string} a - * @param {string} b - * @returns {number} -1, 0 or 1 to indicate whether `a` is less than, equal to, - * or greater than `b`, respectively - */ -function compareNumeric(a, b) { - const aPrefix = a.match(numericRegex)[1]; - const bPrefix = b.match(numericRegex)[1]; - const aNumeric = parseInt(aPrefix, 10); - const bNumeric = parseInt(bPrefix, 10); - - if (isNumber(aNumeric) && isNumber(bNumeric) && aNumeric !== bNumeric) { - return compare(aNumeric, bNumeric); - } else { - return compare(a, b); - } -} - -/** - * Returns the ordering of `a` and `b`. - * - * @param {string|number} a - * @param {string|number} b - * @returns {number} -1, 0 or 1 to indicate whether `a` is less than, equal to, - * or greater than `b`, respectively - */ -function compare(a, b) { - invariant(typeof a === typeof b, '"a" and "b" must be of the same type'); - - if (a > b) { - return 1; - } else if (a < b) { - return -1; - } else { - return 0; - } -} - -/** - * Compares arrays of version components. - * - * @param {array} a - * @param {array} b - * @returns {number} -1, 0 or 1 to indicate whether `a` is less than, equal to, - * or greater than `b`, respectively - */ -function compareComponents(a, b) { - const [aNormalized, bNormalized] = normalizeVersions(a, b); - - for (let i = 0; i < bNormalized.length; i++) { - const result = compareNumeric(aNormalized[i], bNormalized[i]); - if (result) { - return result; - } - } - - return 0; -} - -var VersionRange = { - /** - * Checks whether `version` satisfies the `range` specification. - * - * We support a subset of the expressions defined in - * https://www.npmjs.org/doc/misc/semver.html: - * - * version Must match version exactly - * =version Same as just version - * >version Must be greater than version - * >=version Must be greater than or equal to version - * = 1.2.3 and < 1.3" - * ~>version Equivalent to ~version - * 1.2.x Must match "1.2.x", where "x" is a wildcard that matches - * anything - * 1.2.* Similar to "1.2.x", but "*" in the trailing position is a - * "greedy" wildcard, so will match any number of additional - * components: - * "1.2.*" will match "1.2.1", "1.2.1.1", "1.2.1.1.1" etc - * * Any version - * "" (Empty string) Same as * - * v1 - v2 Equivalent to ">= v1 and <= v2" - * r1 || r2 Passes if either r1 or r2 are satisfied - * - * @param {string} range - * @param {string} version - * @returns {boolean} - */ - contains(range, version) { - return checkOrExpression(range.trim(), version.trim()); - } -}; - -module.exports = VersionRange; \ No newline at end of file diff --git a/node_modules/fbjs/lib/__mocks__/ErrorUtils.js b/node_modules/fbjs/lib/__mocks__/ErrorUtils.js deleted file mode 100644 index 5140ac441..000000000 --- a/node_modules/fbjs/lib/__mocks__/ErrorUtils.js +++ /dev/null @@ -1,20 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */ - -'use strict'; - -var ErrorUtils = jest.genMockFromModule('../ErrorUtils'); - -ErrorUtils.applyWithGuard.mockImplementation(function (callback, context, args) { - return callback.apply(context, args); -}); - -ErrorUtils.guard.mockImplementation(function (callback) { - return callback; -}); - -module.exports = ErrorUtils; \ No newline at end of file diff --git a/node_modules/fbjs/lib/__mocks__/base62.js b/node_modules/fbjs/lib/__mocks__/base62.js deleted file mode 100644 index 24cc91c78..000000000 --- a/node_modules/fbjs/lib/__mocks__/base62.js +++ /dev/null @@ -1,10 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */ - -'use strict'; - -module.exports = require.requireActual('../base62'); \ No newline at end of file diff --git a/node_modules/fbjs/lib/__mocks__/crc32.js b/node_modules/fbjs/lib/__mocks__/crc32.js deleted file mode 100644 index 259e4c73e..000000000 --- a/node_modules/fbjs/lib/__mocks__/crc32.js +++ /dev/null @@ -1,10 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */ - -'use strict'; - -module.exports = require.requireActual('../crc32'); \ No newline at end of file diff --git a/node_modules/fbjs/lib/__mocks__/fetch.js b/node_modules/fbjs/lib/__mocks__/fetch.js deleted file mode 100644 index 2ae49d6ae..000000000 --- a/node_modules/fbjs/lib/__mocks__/fetch.js +++ /dev/null @@ -1,26 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * @noflow - */ - -'use strict'; - -var Deferred = require.requireActual('../Deferred'); - -function fetch(uri, options) { - var deferred = new Deferred(); - fetch.mock.calls.push([uri, options]); - fetch.mock.deferreds.push(deferred); - return deferred.getPromise(); -} - -fetch.mock = { - calls: [], - deferreds: [] -}; - -module.exports = fetch; \ No newline at end of file diff --git a/node_modules/fbjs/lib/__mocks__/fetchWithRetries.js b/node_modules/fbjs/lib/__mocks__/fetchWithRetries.js deleted file mode 100644 index f87746b26..000000000 --- a/node_modules/fbjs/lib/__mocks__/fetchWithRetries.js +++ /dev/null @@ -1,31 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * @noflow - */ - -'use strict'; - -var Deferred = require.requireActual('../Deferred'); - -function fetchWithRetries() { - var deferred = new Deferred(); - - for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) { - args[_key] = arguments[_key]; - } - - fetchWithRetries.mock.calls.push(args); - fetchWithRetries.mock.deferreds.push(deferred); - return deferred.getPromise(); -} - -fetchWithRetries.mock = { - calls: [], - deferreds: [] -}; - -module.exports = fetchWithRetries; \ No newline at end of file diff --git a/node_modules/fbjs/lib/__mocks__/nullthrows.js b/node_modules/fbjs/lib/__mocks__/nullthrows.js deleted file mode 100644 index 434228392..000000000 --- a/node_modules/fbjs/lib/__mocks__/nullthrows.js +++ /dev/null @@ -1,12 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */ - -'use strict'; - -jest.dontMock('../nullthrows'); - -module.exports = require('../nullthrows'); \ No newline at end of file diff --git a/node_modules/fbjs/lib/_shouldPolyfillES6Collection.js b/node_modules/fbjs/lib/_shouldPolyfillES6Collection.js deleted file mode 100644 index 86b177f41..000000000 --- a/node_modules/fbjs/lib/_shouldPolyfillES6Collection.js +++ /dev/null @@ -1,39 +0,0 @@ -'use strict'; - -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * @preventMunge - * - */ - -/** - * Checks whether a collection name (e.g. "Map" or "Set") has a native polyfill - * that is safe to be used. - */ -function shouldPolyfillES6Collection(collectionName) { - var Collection = global[collectionName]; - if (Collection == null) { - return true; - } - - // The iterator protocol depends on `Symbol.iterator`. If a collection is - // implemented, but `Symbol` is not, it's going to break iteration because - // we'll be using custom "@@iterator" instead, which is not implemented on - // native collections. - if (typeof global.Symbol !== 'function') { - return true; - } - - var proto = Collection.prototype; - - // These checks are adapted from es6-shim: https://fburl.com/34437854 - // NOTE: `isCallableWithoutNew` and `!supportsSubclassing` are not checked - // because they make debugging with "break on exceptions" difficult. - return Collection == null || typeof Collection !== 'function' || typeof proto.clear !== 'function' || new Collection().size !== 0 || typeof proto.keys !== 'function' || typeof proto.forEach !== 'function'; -} - -module.exports = shouldPolyfillES6Collection; \ No newline at end of file diff --git a/node_modules/fbjs/lib/_shouldPolyfillES6Collection.js.flow b/node_modules/fbjs/lib/_shouldPolyfillES6Collection.js.flow deleted file mode 100644 index 672b5f1fb..000000000 --- a/node_modules/fbjs/lib/_shouldPolyfillES6Collection.js.flow +++ /dev/null @@ -1,38 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * @providesModule _shouldPolyfillES6Collection - * @preventMunge - * @flow - */ - -/** - * Checks whether a collection name (e.g. "Map" or "Set") has a native polyfill - * that is safe to be used. - */ -function shouldPolyfillES6Collection(collectionName: string): boolean { - const Collection = global[collectionName]; - if (Collection == null) { - return true; - } - - // The iterator protocol depends on `Symbol.iterator`. If a collection is - // implemented, but `Symbol` is not, it's going to break iteration because - // we'll be using custom "@@iterator" instead, which is not implemented on - // native collections. - if (typeof global.Symbol !== 'function') { - return true; - } - - const proto = Collection.prototype; - - // These checks are adapted from es6-shim: https://fburl.com/34437854 - // NOTE: `isCallableWithoutNew` and `!supportsSubclassing` are not checked - // because they make debugging with "break on exceptions" difficult. - return Collection == null || typeof Collection !== 'function' || typeof proto.clear !== 'function' || new Collection().size !== 0 || typeof proto.keys !== 'function' || typeof proto.forEach !== 'function'; -} - -module.exports = shouldPolyfillES6Collection; \ No newline at end of file diff --git a/node_modules/fbjs/lib/areEqual.js b/node_modules/fbjs/lib/areEqual.js deleted file mode 100644 index e6a7da3b3..000000000 --- a/node_modules/fbjs/lib/areEqual.js +++ /dev/null @@ -1,106 +0,0 @@ -'use strict'; - -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * - */ - -var aStackPool = []; -var bStackPool = []; - -/** - * Checks if two values are equal. Values may be primitives, arrays, or objects. - * Returns true if both arguments have the same keys and values. - * - * @see http://underscorejs.org - * @copyright 2009-2013 Jeremy Ashkenas, DocumentCloud Inc. - * @license MIT - */ -function areEqual(a, b) { - var aStack = aStackPool.length ? aStackPool.pop() : []; - var bStack = bStackPool.length ? bStackPool.pop() : []; - var result = eq(a, b, aStack, bStack); - aStack.length = 0; - bStack.length = 0; - aStackPool.push(aStack); - bStackPool.push(bStack); - return result; -} - -function eq(a, b, aStack, bStack) { - if (a === b) { - // Identical objects are equal. `0 === -0`, but they aren't identical. - return a !== 0 || 1 / a == 1 / b; - } - if (a == null || b == null) { - // a or b can be `null` or `undefined` - return false; - } - if (typeof a != 'object' || typeof b != 'object') { - return false; - } - var objToStr = Object.prototype.toString; - var className = objToStr.call(a); - if (className != objToStr.call(b)) { - return false; - } - switch (className) { - case '[object String]': - return a == String(b); - case '[object Number]': - return isNaN(a) || isNaN(b) ? false : a == Number(b); - case '[object Date]': - case '[object Boolean]': - return +a == +b; - case '[object RegExp]': - return a.source == b.source && a.global == b.global && a.multiline == b.multiline && a.ignoreCase == b.ignoreCase; - } - // Assume equality for cyclic structures. - var length = aStack.length; - while (length--) { - if (aStack[length] == a) { - return bStack[length] == b; - } - } - aStack.push(a); - bStack.push(b); - var size = 0; - // Recursively compare objects and arrays. - if (className === '[object Array]') { - size = a.length; - if (size !== b.length) { - return false; - } - // Deep compare the contents, ignoring non-numeric properties. - while (size--) { - if (!eq(a[size], b[size], aStack, bStack)) { - return false; - } - } - } else { - if (a.constructor !== b.constructor) { - return false; - } - if (a.hasOwnProperty('valueOf') && b.hasOwnProperty('valueOf')) { - return a.valueOf() == b.valueOf(); - } - var keys = Object.keys(a); - if (keys.length != Object.keys(b).length) { - return false; - } - for (var i = 0; i < keys.length; i++) { - if (!eq(a[keys[i]], b[keys[i]], aStack, bStack)) { - return false; - } - } - } - aStack.pop(); - bStack.pop(); - return true; -} - -module.exports = areEqual; \ No newline at end of file diff --git a/node_modules/fbjs/lib/areEqual.js.flow b/node_modules/fbjs/lib/areEqual.js.flow deleted file mode 100644 index 06e53ec65..000000000 --- a/node_modules/fbjs/lib/areEqual.js.flow +++ /dev/null @@ -1,105 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * @providesModule areEqual - * @flow - */ - -const aStackPool = []; -const bStackPool = []; - -/** - * Checks if two values are equal. Values may be primitives, arrays, or objects. - * Returns true if both arguments have the same keys and values. - * - * @see http://underscorejs.org - * @copyright 2009-2013 Jeremy Ashkenas, DocumentCloud Inc. - * @license MIT - */ -function areEqual(a: any, b: any): boolean { - const aStack = aStackPool.length ? aStackPool.pop() : []; - const bStack = bStackPool.length ? bStackPool.pop() : []; - const result = eq(a, b, aStack, bStack); - aStack.length = 0; - bStack.length = 0; - aStackPool.push(aStack); - bStackPool.push(bStack); - return result; -} - -function eq(a: any, b: any, aStack: Array, bStack: Array): boolean { - if (a === b) { - // Identical objects are equal. `0 === -0`, but they aren't identical. - return a !== 0 || 1 / a == 1 / b; - } - if (a == null || b == null) { - // a or b can be `null` or `undefined` - return false; - } - if (typeof a != 'object' || typeof b != 'object') { - return false; - } - const objToStr = Object.prototype.toString; - const className = objToStr.call(a); - if (className != objToStr.call(b)) { - return false; - } - switch (className) { - case '[object String]': - return a == String(b); - case '[object Number]': - return isNaN(a) || isNaN(b) ? false : a == Number(b); - case '[object Date]': - case '[object Boolean]': - return +a == +b; - case '[object RegExp]': - return a.source == b.source && a.global == b.global && a.multiline == b.multiline && a.ignoreCase == b.ignoreCase; - } - // Assume equality for cyclic structures. - let length = aStack.length; - while (length--) { - if (aStack[length] == a) { - return bStack[length] == b; - } - } - aStack.push(a); - bStack.push(b); - let size = 0; - // Recursively compare objects and arrays. - if (className === '[object Array]') { - size = a.length; - if (size !== b.length) { - return false; - } - // Deep compare the contents, ignoring non-numeric properties. - while (size--) { - if (!eq(a[size], b[size], aStack, bStack)) { - return false; - } - } - } else { - if (a.constructor !== b.constructor) { - return false; - } - if (a.hasOwnProperty('valueOf') && b.hasOwnProperty('valueOf')) { - return a.valueOf() == b.valueOf(); - } - const keys = Object.keys(a); - if (keys.length != Object.keys(b).length) { - return false; - } - for (let i = 0; i < keys.length; i++) { - if (!eq(a[keys[i]], b[keys[i]], aStack, bStack)) { - return false; - } - } - } - aStack.pop(); - bStack.pop(); - return true; -} - -module.exports = areEqual; \ No newline at end of file diff --git a/node_modules/fbjs/lib/base62.js b/node_modules/fbjs/lib/base62.js deleted file mode 100644 index e2e4d82b6..000000000 --- a/node_modules/fbjs/lib/base62.js +++ /dev/null @@ -1,26 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * - */ - -'use strict'; - -var BASE62 = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'; - -function base62(number) { - if (!number) { - return '0'; - } - var string = ''; - while (number > 0) { - string = BASE62[number % 62] + string; - number = Math.floor(number / 62); - } - return string; -} - -module.exports = base62; \ No newline at end of file diff --git a/node_modules/fbjs/lib/base62.js.flow b/node_modules/fbjs/lib/base62.js.flow deleted file mode 100644 index f81512014..000000000 --- a/node_modules/fbjs/lib/base62.js.flow +++ /dev/null @@ -1,27 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * @providesModule base62 - * @flow - */ - -'use strict'; - -const BASE62 = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'; - -function base62(number: number): string { - if (!number) { - return '0'; - } - let string = ''; - while (number > 0) { - string = BASE62[number % 62] + string; - number = Math.floor(number / 62); - } - return string; -} - -module.exports = base62; \ No newline at end of file diff --git a/node_modules/fbjs/lib/camelize.js b/node_modules/fbjs/lib/camelize.js deleted file mode 100644 index ca010a29f..000000000 --- a/node_modules/fbjs/lib/camelize.js +++ /dev/null @@ -1,29 +0,0 @@ -"use strict"; - -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * @typechecks - */ - -var _hyphenPattern = /-(.)/g; - -/** - * Camelcases a hyphenated string, for example: - * - * > camelize('background-color') - * < "backgroundColor" - * - * @param {string} string - * @return {string} - */ -function camelize(string) { - return string.replace(_hyphenPattern, function (_, character) { - return character.toUpperCase(); - }); -} - -module.exports = camelize; \ No newline at end of file diff --git a/node_modules/fbjs/lib/camelize.js.flow b/node_modules/fbjs/lib/camelize.js.flow deleted file mode 100644 index 9b0b4234a..000000000 --- a/node_modules/fbjs/lib/camelize.js.flow +++ /dev/null @@ -1,28 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * @providesModule camelize - * @typechecks - */ - -const _hyphenPattern = /-(.)/g; - -/** - * Camelcases a hyphenated string, for example: - * - * > camelize('background-color') - * < "backgroundColor" - * - * @param {string} string - * @return {string} - */ -function camelize(string) { - return string.replace(_hyphenPattern, function (_, character) { - return character.toUpperCase(); - }); -} - -module.exports = camelize; \ No newline at end of file diff --git a/node_modules/fbjs/lib/camelizeStyleName.js b/node_modules/fbjs/lib/camelizeStyleName.js deleted file mode 100644 index 6b076a378..000000000 --- a/node_modules/fbjs/lib/camelizeStyleName.js +++ /dev/null @@ -1,37 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * @typechecks - */ - -'use strict'; - -var camelize = require('./camelize'); - -var msPattern = /^-ms-/; - -/** - * Camelcases a hyphenated CSS property name, for example: - * - * > camelizeStyleName('background-color') - * < "backgroundColor" - * > camelizeStyleName('-moz-transition') - * < "MozTransition" - * > camelizeStyleName('-ms-transition') - * < "msTransition" - * - * As Andi Smith suggests - * (http://www.andismith.com/blog/2012/02/modernizr-prefixed/), an `-ms` prefix - * is converted to lowercase `ms`. - * - * @param {string} string - * @return {string} - */ -function camelizeStyleName(string) { - return camelize(string.replace(msPattern, 'ms-')); -} - -module.exports = camelizeStyleName; \ No newline at end of file diff --git a/node_modules/fbjs/lib/camelizeStyleName.js.flow b/node_modules/fbjs/lib/camelizeStyleName.js.flow deleted file mode 100644 index 8883feac6..000000000 --- a/node_modules/fbjs/lib/camelizeStyleName.js.flow +++ /dev/null @@ -1,38 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * @providesModule camelizeStyleName - * @typechecks - */ - -'use strict'; - -const camelize = require('./camelize'); - -const msPattern = /^-ms-/; - -/** - * Camelcases a hyphenated CSS property name, for example: - * - * > camelizeStyleName('background-color') - * < "backgroundColor" - * > camelizeStyleName('-moz-transition') - * < "MozTransition" - * > camelizeStyleName('-ms-transition') - * < "msTransition" - * - * As Andi Smith suggests - * (http://www.andismith.com/blog/2012/02/modernizr-prefixed/), an `-ms` prefix - * is converted to lowercase `ms`. - * - * @param {string} string - * @return {string} - */ -function camelizeStyleName(string) { - return camelize(string.replace(msPattern, 'ms-')); -} - -module.exports = camelizeStyleName; \ No newline at end of file diff --git a/node_modules/fbjs/lib/compactArray.js b/node_modules/fbjs/lib/compactArray.js deleted file mode 100644 index 5db775401..000000000 --- a/node_modules/fbjs/lib/compactArray.js +++ /dev/null @@ -1,27 +0,0 @@ -/** - * Copyright 2015-present Facebook. All Rights Reserved. - * - * @typechecks - * - */ - -'use strict'; - -/** - * Returns a new Array containing all the element of the source array except - * `null` and `undefined` ones. This brings the benefit of strong typing over - * `Array.prototype.filter`. - */ - -function compactArray(array) { - var result = []; - for (var i = 0; i < array.length; ++i) { - var elem = array[i]; - if (elem != null) { - result.push(elem); - } - } - return result; -} - -module.exports = compactArray; \ No newline at end of file diff --git a/node_modules/fbjs/lib/compactArray.js.flow b/node_modules/fbjs/lib/compactArray.js.flow deleted file mode 100644 index 5b8ccbecb..000000000 --- a/node_modules/fbjs/lib/compactArray.js.flow +++ /dev/null @@ -1,28 +0,0 @@ -/** - * Copyright 2015-present Facebook. All Rights Reserved. - * - * @providesModule compactArray - * @typechecks - * @flow - */ - -'use strict'; - -/** - * Returns a new Array containing all the element of the source array except - * `null` and `undefined` ones. This brings the benefit of strong typing over - * `Array.prototype.filter`. - */ - -function compactArray(array: Array): Array { - var result = []; - for (var i = 0; i < array.length; ++i) { - var elem = array[i]; - if (elem != null) { - result.push(elem); - } - } - return result; -} - -module.exports = compactArray; \ No newline at end of file diff --git a/node_modules/fbjs/lib/concatAllArray.js b/node_modules/fbjs/lib/concatAllArray.js deleted file mode 100644 index a96498249..000000000 --- a/node_modules/fbjs/lib/concatAllArray.js +++ /dev/null @@ -1,33 +0,0 @@ -'use strict'; - -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * @typechecks - */ - -var push = Array.prototype.push; - -/** - * Concats an array of arrays into a single flat array. - * - * @param {array} array - * @return {array} - */ -function concatAllArray(array) { - var ret = []; - for (var ii = 0; ii < array.length; ii++) { - var value = array[ii]; - if (Array.isArray(value)) { - push.apply(ret, value); - } else if (value != null) { - throw new TypeError('concatAllArray: All items in the array must be an array or null, ' + 'got "' + value + '" at index "' + ii + '" instead'); - } - } - return ret; -} - -module.exports = concatAllArray; \ No newline at end of file diff --git a/node_modules/fbjs/lib/concatAllArray.js.flow b/node_modules/fbjs/lib/concatAllArray.js.flow deleted file mode 100644 index 41103ff2b..000000000 --- a/node_modules/fbjs/lib/concatAllArray.js.flow +++ /dev/null @@ -1,32 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * @providesModule concatAllArray - * @typechecks - */ - -var push = Array.prototype.push; - -/** - * Concats an array of arrays into a single flat array. - * - * @param {array} array - * @return {array} - */ -function concatAllArray(array) { - var ret = []; - for (var ii = 0; ii < array.length; ii++) { - var value = array[ii]; - if (Array.isArray(value)) { - push.apply(ret, value); - } else if (value != null) { - throw new TypeError('concatAllArray: All items in the array must be an array or null, ' + 'got "' + value + '" at index "' + ii + '" instead'); - } - } - return ret; -} - -module.exports = concatAllArray; \ No newline at end of file diff --git a/node_modules/fbjs/lib/containsNode.js b/node_modules/fbjs/lib/containsNode.js deleted file mode 100644 index bee5085eb..000000000 --- a/node_modules/fbjs/lib/containsNode.js +++ /dev/null @@ -1,37 +0,0 @@ -'use strict'; - -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * - */ - -var isTextNode = require('./isTextNode'); - -/*eslint-disable no-bitwise */ - -/** - * Checks if a given DOM node contains or is another DOM node. - */ -function containsNode(outerNode, innerNode) { - if (!outerNode || !innerNode) { - return false; - } else if (outerNode === innerNode) { - return true; - } else if (isTextNode(outerNode)) { - return false; - } else if (isTextNode(innerNode)) { - return containsNode(outerNode, innerNode.parentNode); - } else if ('contains' in outerNode) { - return outerNode.contains(innerNode); - } else if (outerNode.compareDocumentPosition) { - return !!(outerNode.compareDocumentPosition(innerNode) & 16); - } else { - return false; - } -} - -module.exports = containsNode; \ No newline at end of file diff --git a/node_modules/fbjs/lib/containsNode.js.flow b/node_modules/fbjs/lib/containsNode.js.flow deleted file mode 100644 index b2117f315..000000000 --- a/node_modules/fbjs/lib/containsNode.js.flow +++ /dev/null @@ -1,36 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * @providesModule containsNode - * @flow - */ - -const isTextNode = require('./isTextNode'); - -/*eslint-disable no-bitwise */ - -/** - * Checks if a given DOM node contains or is another DOM node. - */ -function containsNode(outerNode: ?Node, innerNode: ?Node): boolean { - if (!outerNode || !innerNode) { - return false; - } else if (outerNode === innerNode) { - return true; - } else if (isTextNode(outerNode)) { - return false; - } else if (isTextNode(innerNode)) { - return containsNode(outerNode, innerNode.parentNode); - } else if ('contains' in outerNode) { - return outerNode.contains(innerNode); - } else if (outerNode.compareDocumentPosition) { - return !!(outerNode.compareDocumentPosition(innerNode) & 16); - } else { - return false; - } -} - -module.exports = containsNode; \ No newline at end of file diff --git a/node_modules/fbjs/lib/countDistinct.js b/node_modules/fbjs/lib/countDistinct.js deleted file mode 100644 index c8aa925f5..000000000 --- a/node_modules/fbjs/lib/countDistinct.js +++ /dev/null @@ -1,51 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * - */ - -'use strict'; - -var Set = require('./Set'); - -var emptyFunction = require('./emptyFunction'); - -/** - * Returns the count of distinct elements selected from an array. - */ -function countDistinct(iter, selector) { - selector = selector || emptyFunction.thatReturnsArgument; - - var set = new Set(); - var _iteratorNormalCompletion = true; - var _didIteratorError = false; - var _iteratorError = undefined; - - try { - for (var _iterator = iter[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) { - var val = _step.value; - - set.add(selector(val)); - } - } catch (err) { - _didIteratorError = true; - _iteratorError = err; - } finally { - try { - if (!_iteratorNormalCompletion && _iterator['return']) { - _iterator['return'](); - } - } finally { - if (_didIteratorError) { - throw _iteratorError; - } - } - } - - return set.size; -} - -module.exports = countDistinct; \ No newline at end of file diff --git a/node_modules/fbjs/lib/countDistinct.js.flow b/node_modules/fbjs/lib/countDistinct.js.flow deleted file mode 100644 index 25676aa8d..000000000 --- a/node_modules/fbjs/lib/countDistinct.js.flow +++ /dev/null @@ -1,31 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * @providesModule countDistinct - * @flow - */ - -'use strict'; - -var Set = require('./Set'); - -var emptyFunction = require('./emptyFunction'); - -/** - * Returns the count of distinct elements selected from an array. - */ -function countDistinct(iter: Iterable, selector: (item: T1) => T2): number { - selector = selector || emptyFunction.thatReturnsArgument; - - var set = new Set(); - for (var val of iter) { - set.add(selector(val)); - } - - return set.size; -} - -module.exports = countDistinct; \ No newline at end of file diff --git a/node_modules/fbjs/lib/crc32.js b/node_modules/fbjs/lib/crc32.js deleted file mode 100644 index 806694ca2..000000000 --- a/node_modules/fbjs/lib/crc32.js +++ /dev/null @@ -1,27 +0,0 @@ -"use strict"; - -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * - */ - -function crc32(str) { - /* jslint bitwise: true */ - var crc = -1; - for (var i = 0, len = str.length; i < len; i++) { - crc = crc >>> 8 ^ table[(crc ^ str.charCodeAt(i)) & 0xFF]; - } - return ~crc; -} - -var table = [0x00000000, 0x77073096, 0xEE0E612C, 0x990951BA, 0x076DC419, 0x706AF48F, 0xE963A535, 0x9E6495A3, 0x0EDB8832, 0x79DCB8A4, 0xE0D5E91E, 0x97D2D988, 0x09B64C2B, 0x7EB17CBD, 0xE7B82D07, 0x90BF1D91, 0x1DB71064, 0x6AB020F2, 0xF3B97148, 0x84BE41DE, 0x1ADAD47D, 0x6DDDE4EB, 0xF4D4B551, 0x83D385C7, 0x136C9856, 0x646BA8C0, 0xFD62F97A, 0x8A65C9EC, 0x14015C4F, 0x63066CD9, 0xFA0F3D63, 0x8D080DF5, 0x3B6E20C8, 0x4C69105E, 0xD56041E4, 0xA2677172, 0x3C03E4D1, 0x4B04D447, 0xD20D85FD, 0xA50AB56B, 0x35B5A8FA, 0x42B2986C, 0xDBBBC9D6, 0xACBCF940, 0x32D86CE3, 0x45DF5C75, 0xDCD60DCF, 0xABD13D59, 0x26D930AC, 0x51DE003A, 0xC8D75180, 0xBFD06116, 0x21B4F4B5, 0x56B3C423, 0xCFBA9599, 0xB8BDA50F, 0x2802B89E, 0x5F058808, 0xC60CD9B2, 0xB10BE924, 0x2F6F7C87, 0x58684C11, 0xC1611DAB, 0xB6662D3D, 0x76DC4190, 0x01DB7106, 0x98D220BC, 0xEFD5102A, 0x71B18589, 0x06B6B51F, 0x9FBFE4A5, 0xE8B8D433, 0x7807C9A2, 0x0F00F934, 0x9609A88E, 0xE10E9818, 0x7F6A0DBB, 0x086D3D2D, 0x91646C97, 0xE6635C01, 0x6B6B51F4, 0x1C6C6162, 0x856530D8, 0xF262004E, 0x6C0695ED, 0x1B01A57B, 0x8208F4C1, 0xF50FC457, 0x65B0D9C6, 0x12B7E950, 0x8BBEB8EA, 0xFCB9887C, 0x62DD1DDF, 0x15DA2D49, 0x8CD37CF3, 0xFBD44C65, 0x4DB26158, 0x3AB551CE, 0xA3BC0074, 0xD4BB30E2, 0x4ADFA541, 0x3DD895D7, 0xA4D1C46D, 0xD3D6F4FB, 0x4369E96A, 0x346ED9FC, 0xAD678846, 0xDA60B8D0, 0x44042D73, 0x33031DE5, 0xAA0A4C5F, 0xDD0D7CC9, 0x5005713C, 0x270241AA, 0xBE0B1010, 0xC90C2086, 0x5768B525, 0x206F85B3, 0xB966D409, 0xCE61E49F, 0x5EDEF90E, 0x29D9C998, 0xB0D09822, 0xC7D7A8B4, 0x59B33D17, 0x2EB40D81, 0xB7BD5C3B, 0xC0BA6CAD, 0xEDB88320, 0x9ABFB3B6, 0x03B6E20C, 0x74B1D29A, 0xEAD54739, 0x9DD277AF, 0x04DB2615, 0x73DC1683, 0xE3630B12, 0x94643B84, 0x0D6D6A3E, 0x7A6A5AA8, 0xE40ECF0B, 0x9309FF9D, 0x0A00AE27, 0x7D079EB1, 0xF00F9344, 0x8708A3D2, 0x1E01F268, 0x6906C2FE, 0xF762575D, 0x806567CB, 0x196C3671, 0x6E6B06E7, 0xFED41B76, 0x89D32BE0, 0x10DA7A5A, 0x67DD4ACC, 0xF9B9DF6F, 0x8EBEEFF9, 0x17B7BE43, 0x60B08ED5, 0xD6D6A3E8, 0xA1D1937E, 0x38D8C2C4, 0x4FDFF252, 0xD1BB67F1, 0xA6BC5767, 0x3FB506DD, 0x48B2364B, 0xD80D2BDA, 0xAF0A1B4C, 0x36034AF6, 0x41047A60, 0xDF60EFC3, 0xA867DF55, 0x316E8EEF, 0x4669BE79, 0xCB61B38C, 0xBC66831A, 0x256FD2A0, 0x5268E236, 0xCC0C7795, 0xBB0B4703, 0x220216B9, 0x5505262F, 0xC5BA3BBE, 0xB2BD0B28, 0x2BB45A92, 0x5CB36A04, 0xC2D7FFA7, 0xB5D0CF31, 0x2CD99E8B, 0x5BDEAE1D, 0x9B64C2B0, 0xEC63F226, 0x756AA39C, 0x026D930A, 0x9C0906A9, 0xEB0E363F, 0x72076785, 0x05005713, 0x95BF4A82, 0xE2B87A14, 0x7BB12BAE, 0x0CB61B38, 0x92D28E9B, 0xE5D5BE0D, 0x7CDCEFB7, 0x0BDBDF21, 0x86D3D2D4, 0xF1D4E242, 0x68DDB3F8, 0x1FDA836E, 0x81BE16CD, 0xF6B9265B, 0x6FB077E1, 0x18B74777, 0x88085AE6, 0xFF0F6A70, 0x66063BCA, 0x11010B5C, 0x8F659EFF, 0xF862AE69, 0x616BFFD3, 0x166CCF45, 0xA00AE278, 0xD70DD2EE, 0x4E048354, 0x3903B3C2, 0xA7672661, 0xD06016F7, 0x4969474D, 0x3E6E77DB, 0xAED16A4A, 0xD9D65ADC, 0x40DF0B66, 0x37D83BF0, 0xA9BCAE53, 0xDEBB9EC5, 0x47B2CF7F, 0x30B5FFE9, 0xBDBDF21C, 0xCABAC28A, 0x53B39330, 0x24B4A3A6, 0xBAD03605, 0xCDD70693, 0x54DE5729, 0x23D967BF, 0xB3667A2E, 0xC4614AB8, 0x5D681B02, 0x2A6F2B94, 0xB40BBE37, 0xC30C8EA1, 0x5A05DF1B, 0x2D02EF8D]; - -if (global.Int32Array !== undefined) { - table = new Int32Array(table); -} - -module.exports = crc32; \ No newline at end of file diff --git a/node_modules/fbjs/lib/crc32.js.flow b/node_modules/fbjs/lib/crc32.js.flow deleted file mode 100644 index 00cab448a..000000000 --- a/node_modules/fbjs/lib/crc32.js.flow +++ /dev/null @@ -1,26 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * @providesModule crc32 - * @flow - */ - -function crc32(str: string): number { - /* jslint bitwise: true */ - var crc = -1; - for (var i = 0, len = str.length; i < len; i++) { - crc = crc >>> 8 ^ table[(crc ^ str.charCodeAt(i)) & 0xFF]; - } - return ~crc; -} - -var table = [0x00000000, 0x77073096, 0xEE0E612C, 0x990951BA, 0x076DC419, 0x706AF48F, 0xE963A535, 0x9E6495A3, 0x0EDB8832, 0x79DCB8A4, 0xE0D5E91E, 0x97D2D988, 0x09B64C2B, 0x7EB17CBD, 0xE7B82D07, 0x90BF1D91, 0x1DB71064, 0x6AB020F2, 0xF3B97148, 0x84BE41DE, 0x1ADAD47D, 0x6DDDE4EB, 0xF4D4B551, 0x83D385C7, 0x136C9856, 0x646BA8C0, 0xFD62F97A, 0x8A65C9EC, 0x14015C4F, 0x63066CD9, 0xFA0F3D63, 0x8D080DF5, 0x3B6E20C8, 0x4C69105E, 0xD56041E4, 0xA2677172, 0x3C03E4D1, 0x4B04D447, 0xD20D85FD, 0xA50AB56B, 0x35B5A8FA, 0x42B2986C, 0xDBBBC9D6, 0xACBCF940, 0x32D86CE3, 0x45DF5C75, 0xDCD60DCF, 0xABD13D59, 0x26D930AC, 0x51DE003A, 0xC8D75180, 0xBFD06116, 0x21B4F4B5, 0x56B3C423, 0xCFBA9599, 0xB8BDA50F, 0x2802B89E, 0x5F058808, 0xC60CD9B2, 0xB10BE924, 0x2F6F7C87, 0x58684C11, 0xC1611DAB, 0xB6662D3D, 0x76DC4190, 0x01DB7106, 0x98D220BC, 0xEFD5102A, 0x71B18589, 0x06B6B51F, 0x9FBFE4A5, 0xE8B8D433, 0x7807C9A2, 0x0F00F934, 0x9609A88E, 0xE10E9818, 0x7F6A0DBB, 0x086D3D2D, 0x91646C97, 0xE6635C01, 0x6B6B51F4, 0x1C6C6162, 0x856530D8, 0xF262004E, 0x6C0695ED, 0x1B01A57B, 0x8208F4C1, 0xF50FC457, 0x65B0D9C6, 0x12B7E950, 0x8BBEB8EA, 0xFCB9887C, 0x62DD1DDF, 0x15DA2D49, 0x8CD37CF3, 0xFBD44C65, 0x4DB26158, 0x3AB551CE, 0xA3BC0074, 0xD4BB30E2, 0x4ADFA541, 0x3DD895D7, 0xA4D1C46D, 0xD3D6F4FB, 0x4369E96A, 0x346ED9FC, 0xAD678846, 0xDA60B8D0, 0x44042D73, 0x33031DE5, 0xAA0A4C5F, 0xDD0D7CC9, 0x5005713C, 0x270241AA, 0xBE0B1010, 0xC90C2086, 0x5768B525, 0x206F85B3, 0xB966D409, 0xCE61E49F, 0x5EDEF90E, 0x29D9C998, 0xB0D09822, 0xC7D7A8B4, 0x59B33D17, 0x2EB40D81, 0xB7BD5C3B, 0xC0BA6CAD, 0xEDB88320, 0x9ABFB3B6, 0x03B6E20C, 0x74B1D29A, 0xEAD54739, 0x9DD277AF, 0x04DB2615, 0x73DC1683, 0xE3630B12, 0x94643B84, 0x0D6D6A3E, 0x7A6A5AA8, 0xE40ECF0B, 0x9309FF9D, 0x0A00AE27, 0x7D079EB1, 0xF00F9344, 0x8708A3D2, 0x1E01F268, 0x6906C2FE, 0xF762575D, 0x806567CB, 0x196C3671, 0x6E6B06E7, 0xFED41B76, 0x89D32BE0, 0x10DA7A5A, 0x67DD4ACC, 0xF9B9DF6F, 0x8EBEEFF9, 0x17B7BE43, 0x60B08ED5, 0xD6D6A3E8, 0xA1D1937E, 0x38D8C2C4, 0x4FDFF252, 0xD1BB67F1, 0xA6BC5767, 0x3FB506DD, 0x48B2364B, 0xD80D2BDA, 0xAF0A1B4C, 0x36034AF6, 0x41047A60, 0xDF60EFC3, 0xA867DF55, 0x316E8EEF, 0x4669BE79, 0xCB61B38C, 0xBC66831A, 0x256FD2A0, 0x5268E236, 0xCC0C7795, 0xBB0B4703, 0x220216B9, 0x5505262F, 0xC5BA3BBE, 0xB2BD0B28, 0x2BB45A92, 0x5CB36A04, 0xC2D7FFA7, 0xB5D0CF31, 0x2CD99E8B, 0x5BDEAE1D, 0x9B64C2B0, 0xEC63F226, 0x756AA39C, 0x026D930A, 0x9C0906A9, 0xEB0E363F, 0x72076785, 0x05005713, 0x95BF4A82, 0xE2B87A14, 0x7BB12BAE, 0x0CB61B38, 0x92D28E9B, 0xE5D5BE0D, 0x7CDCEFB7, 0x0BDBDF21, 0x86D3D2D4, 0xF1D4E242, 0x68DDB3F8, 0x1FDA836E, 0x81BE16CD, 0xF6B9265B, 0x6FB077E1, 0x18B74777, 0x88085AE6, 0xFF0F6A70, 0x66063BCA, 0x11010B5C, 0x8F659EFF, 0xF862AE69, 0x616BFFD3, 0x166CCF45, 0xA00AE278, 0xD70DD2EE, 0x4E048354, 0x3903B3C2, 0xA7672661, 0xD06016F7, 0x4969474D, 0x3E6E77DB, 0xAED16A4A, 0xD9D65ADC, 0x40DF0B66, 0x37D83BF0, 0xA9BCAE53, 0xDEBB9EC5, 0x47B2CF7F, 0x30B5FFE9, 0xBDBDF21C, 0xCABAC28A, 0x53B39330, 0x24B4A3A6, 0xBAD03605, 0xCDD70693, 0x54DE5729, 0x23D967BF, 0xB3667A2E, 0xC4614AB8, 0x5D681B02, 0x2A6F2B94, 0xB40BBE37, 0xC30C8EA1, 0x5A05DF1B, 0x2D02EF8D]; - -if (global.Int32Array !== undefined) { - table = new Int32Array(table); -} - -module.exports = crc32; \ No newline at end of file diff --git a/node_modules/fbjs/lib/createArrayFromMixed.js b/node_modules/fbjs/lib/createArrayFromMixed.js deleted file mode 100644 index 879141ae5..000000000 --- a/node_modules/fbjs/lib/createArrayFromMixed.js +++ /dev/null @@ -1,124 +0,0 @@ -'use strict'; - -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * @typechecks - */ - -var invariant = require('./invariant'); - -/** - * Convert array-like objects to arrays. - * - * This API assumes the caller knows the contents of the data type. For less - * well defined inputs use createArrayFromMixed. - * - * @param {object|function|filelist} obj - * @return {array} - */ -function toArray(obj) { - var length = obj.length; - - // Some browsers builtin objects can report typeof 'function' (e.g. NodeList - // in old versions of Safari). - !(!Array.isArray(obj) && (typeof obj === 'object' || typeof obj === 'function')) ? process.env.NODE_ENV !== 'production' ? invariant(false, 'toArray: Array-like object expected') : invariant(false) : void 0; - - !(typeof length === 'number') ? process.env.NODE_ENV !== 'production' ? invariant(false, 'toArray: Object needs a length property') : invariant(false) : void 0; - - !(length === 0 || length - 1 in obj) ? process.env.NODE_ENV !== 'production' ? invariant(false, 'toArray: Object should have keys for indices') : invariant(false) : void 0; - - !(typeof obj.callee !== 'function') ? process.env.NODE_ENV !== 'production' ? invariant(false, 'toArray: Object can\'t be `arguments`. Use rest params ' + '(function(...args) {}) or Array.from() instead.') : invariant(false) : void 0; - - // Old IE doesn't give collections access to hasOwnProperty. Assume inputs - // without method will throw during the slice call and skip straight to the - // fallback. - if (obj.hasOwnProperty) { - try { - return Array.prototype.slice.call(obj); - } catch (e) { - // IE < 9 does not support Array#slice on collections objects - } - } - - // Fall back to copying key by key. This assumes all keys have a value, - // so will not preserve sparsely populated inputs. - var ret = Array(length); - for (var ii = 0; ii < length; ii++) { - ret[ii] = obj[ii]; - } - return ret; -} - -/** - * Perform a heuristic test to determine if an object is "array-like". - * - * A monk asked Joshu, a Zen master, "Has a dog Buddha nature?" - * Joshu replied: "Mu." - * - * This function determines if its argument has "array nature": it returns - * true if the argument is an actual array, an `arguments' object, or an - * HTMLCollection (e.g. node.childNodes or node.getElementsByTagName()). - * - * It will return false for other array-like objects like Filelist. - * - * @param {*} obj - * @return {boolean} - */ -function hasArrayNature(obj) { - return ( - // not null/false - !!obj && ( - // arrays are objects, NodeLists are functions in Safari - typeof obj == 'object' || typeof obj == 'function') && - // quacks like an array - 'length' in obj && - // not window - !('setInterval' in obj) && - // no DOM node should be considered an array-like - // a 'select' element has 'length' and 'item' properties on IE8 - typeof obj.nodeType != 'number' && ( - // a real array - Array.isArray(obj) || - // arguments - 'callee' in obj || - // HTMLCollection/NodeList - 'item' in obj) - ); -} - -/** - * Ensure that the argument is an array by wrapping it in an array if it is not. - * Creates a copy of the argument if it is already an array. - * - * This is mostly useful idiomatically: - * - * var createArrayFromMixed = require('createArrayFromMixed'); - * - * function takesOneOrMoreThings(things) { - * things = createArrayFromMixed(things); - * ... - * } - * - * This allows you to treat `things' as an array, but accept scalars in the API. - * - * If you need to convert an array-like object, like `arguments`, into an array - * use toArray instead. - * - * @param {*} obj - * @return {array} - */ -function createArrayFromMixed(obj) { - if (!hasArrayNature(obj)) { - return [obj]; - } else if (Array.isArray(obj)) { - return obj.slice(); - } else { - return toArray(obj); - } -} - -module.exports = createArrayFromMixed; \ No newline at end of file diff --git a/node_modules/fbjs/lib/createArrayFromMixed.js.flow b/node_modules/fbjs/lib/createArrayFromMixed.js.flow deleted file mode 100644 index 1448db10c..000000000 --- a/node_modules/fbjs/lib/createArrayFromMixed.js.flow +++ /dev/null @@ -1,123 +0,0 @@ -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * @providesModule createArrayFromMixed - * @typechecks - */ - -const invariant = require('./invariant'); - -/** - * Convert array-like objects to arrays. - * - * This API assumes the caller knows the contents of the data type. For less - * well defined inputs use createArrayFromMixed. - * - * @param {object|function|filelist} obj - * @return {array} - */ -function toArray(obj) { - const length = obj.length; - - // Some browsers builtin objects can report typeof 'function' (e.g. NodeList - // in old versions of Safari). - invariant(!Array.isArray(obj) && (typeof obj === 'object' || typeof obj === 'function'), 'toArray: Array-like object expected'); - - invariant(typeof length === 'number', 'toArray: Object needs a length property'); - - invariant(length === 0 || length - 1 in obj, 'toArray: Object should have keys for indices'); - - invariant(typeof obj.callee !== 'function', 'toArray: Object can\'t be `arguments`. Use rest params ' + '(function(...args) {}) or Array.from() instead.'); - - // Old IE doesn't give collections access to hasOwnProperty. Assume inputs - // without method will throw during the slice call and skip straight to the - // fallback. - if (obj.hasOwnProperty) { - try { - return Array.prototype.slice.call(obj); - } catch (e) { - // IE < 9 does not support Array#slice on collections objects - } - } - - // Fall back to copying key by key. This assumes all keys have a value, - // so will not preserve sparsely populated inputs. - const ret = Array(length); - for (let ii = 0; ii < length; ii++) { - ret[ii] = obj[ii]; - } - return ret; -} - -/** - * Perform a heuristic test to determine if an object is "array-like". - * - * A monk asked Joshu, a Zen master, "Has a dog Buddha nature?" - * Joshu replied: "Mu." - * - * This function determines if its argument has "array nature": it returns - * true if the argument is an actual array, an `arguments' object, or an - * HTMLCollection (e.g. node.childNodes or node.getElementsByTagName()). - * - * It will return false for other array-like objects like Filelist. - * - * @param {*} obj - * @return {boolean} - */ -function hasArrayNature(obj) { - return ( - // not null/false - !!obj && ( - // arrays are objects, NodeLists are functions in Safari - typeof obj == 'object' || typeof obj == 'function') && - // quacks like an array - 'length' in obj && - // not window - !('setInterval' in obj) && - // no DOM node should be considered an array-like - // a 'select' element has 'length' and 'item' properties on IE8 - typeof obj.nodeType != 'number' && ( - // a real array - Array.isArray(obj) || - // arguments - 'callee' in obj || - // HTMLCollection/NodeList - 'item' in obj) - ); -} - -/** - * Ensure that the argument is an array by wrapping it in an array if it is not. - * Creates a copy of the argument if it is already an array. - * - * This is mostly useful idiomatically: - * - * var createArrayFromMixed = require('createArrayFromMixed'); - * - * function takesOneOrMoreThings(things) { - * things = createArrayFromMixed(things); - * ... - * } - * - * This allows you to treat `things' as an array, but accept scalars in the API. - * - * If you need to convert an array-like object, like `arguments`, into an array - * use toArray instead. - * - * @param {*} obj - * @return {array} - */ -function createArrayFromMixed(obj) { - if (!hasArrayNature(obj)) { - return [obj]; - } else if (Array.isArray(obj)) { - return obj.slice(); - } else { - return toArray(obj); - } -} - -module.exports = createArrayFromMixed; \ No newline at end of file diff --git a/node_modules/fbjs/lib/createNodesFromMarkup.js b/node_modules/fbjs/lib/createNodesFromMarkup.js deleted file mode 100644 index a0c216112..000000000 --- a/node_modules/fbjs/lib/createNodesFromMarkup.js +++ /dev/null @@ -1,81 +0,0 @@ -'use strict'; - -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - * - * @typechecks - */ - -/*eslint-disable fb-www/unsafe-html*/ - -var ExecutionEnvironment = require('./ExecutionEnvironment'); - -var createArrayFromMixed = require('./createArrayFromMixed'); -var getMarkupWrap = require('./getMarkupWrap'); -var invariant = require('./invariant'); - -/** - * Dummy container used to render all markup. - */ -var dummyNode = ExecutionEnvironment.canUseDOM ? document.createElement('div') : null; - -/** - * Pattern used by `getNodeName`. - */ -var nodeNamePattern = /^\s*<(\w+)/; - -/** - * Extracts the `nodeName` of the first element in a string of markup. - * - * @param {string} markup String of markup. - * @return {?string} Node name of the supplied markup. - */ -function getNodeName(markup) { - var nodeNameMatch = markup.match(nodeNamePattern); - return nodeNameMatch && nodeNameMatch[1].toLowerCase(); -} - -/** - * Creates an array containing the nodes rendered from the supplied markup. The - * optionally supplied `handleScript` function will be invoked once for each - * -``` - -Note that the [es5-shim](https://github.com/es-shims/es5-shim) must be loaded before this library to support browsers pre IE9. - -```html - -``` - -## Usage - -The example below shows how you can load the promise library (in a way that works on both client and server using node or browserify). It then demonstrates creating a promise from scratch. You simply call `new Promise(fn)`. There is a complete specification for what is returned by this method in [Promises/A+](http://promises-aplus.github.com/promises-spec/). - -```javascript -var Promise = require('promise'); - -var promise = new Promise(function (resolve, reject) { - get('http://www.google.com', function (err, res) { - if (err) reject(err); - else resolve(res); - }); -}); -``` - -If you need [domains](https://iojs.org/api/domain.html) support, you should instead use: - -```js -var Promise = require('promise/domains'); -``` - -If you are in an environment that implements `setImmediate` and don't want the optimisations provided by asap, you can use: - -```js -var Promise = require('promise/setimmediate'); -``` - -If you only want part of the features, e.g. just a pure ES6 polyfill: - -```js -var Promise = require('promise/lib/es6-extensions'); -// or require('promise/domains/es6-extensions'); -// or require('promise/setimmediate/es6-extensions'); -``` - -## Unhandled Rejections - -By default, promises silence any unhandled rejections. - -You can enable logging of unhandled ReferenceErrors and TypeErrors via: - -```js -require('promise/lib/rejection-tracking').enable(); -``` - -Due to the performance cost, you should only do this during development. - -You can enable logging of all unhandled rejections if you need to debug an exception you think is being swallowed by promises: - -```js -require('promise/lib/rejection-tracking').enable( - {allRejections: true} -); -``` - -Due to the high probability of false positives, I only recommend using this when debugging specific issues that you think may be being swallowed. For the preferred debugging method, see `Promise#done(onFulfilled, onRejected)`. - -`rejection-tracking.enable(options)` takes the following options: - - - allRejections (`boolean`) - track all exceptions, not just reference errors and type errors. Note that this has a high probability of resulting in false positives if your code loads data optimisticly - - whitelist (`Array`) - this defaults to `[ReferenceError, TypeError]` but you can override it with your own list of error constructors to track. - - `onUnhandled(id, error)` and `onHandled(id, error)` - you can use these to provide your own customised display for errors. Note that if possible you should indicate that the error was a false positive if `onHandled` is called. `onHandled` is only called if `onUnhandled` has already been called. - -To reduce the chance of false-positives there is a delay of up to 2 seconds before errors are logged. This means that if you attach an error handler within 2 seconds, it won't be logged as a false positive. ReferenceErrors and TypeErrors are only subject to a 100ms delay due to the higher likelihood that the error is due to programmer error. - -## API - -Before all examples, you will need: - -```js -var Promise = require('promise'); -``` - -### new Promise(resolver) - -This creates and returns a new promise. `resolver` must be a function. The `resolver` function is passed two arguments: - - 1. `resolve` should be called with a single argument. If it is called with a non-promise value then the promise is fulfilled with that value. If it is called with a promise (A) then the returned promise takes on the state of that new promise (A). - 2. `reject` should be called with a single argument. The returned promise will be rejected with that argument. - -### Static Functions - - These methods are invoked by calling `Promise.methodName`. - -#### Promise.resolve(value) - -(deprecated aliases: `Promise.from(value)`, `Promise.cast(value)`) - -Converts values and foreign promises into Promises/A+ promises. If you pass it a value then it returns a Promise for that value. If you pass it something that is close to a promise (such as a jQuery attempt at a promise) it returns a Promise that takes on the state of `value` (rejected or fulfilled). - -#### Promise.reject(value) - -Returns a rejected promise with the given value. - -#### Promise.all(array) - -Returns a promise for an array. If it is called with a single argument that `Array.isArray` then this returns a promise for a copy of that array with any promises replaced by their fulfilled values. e.g. - -```js -Promise.all([Promise.resolve('a'), 'b', Promise.resolve('c')]) - .then(function (res) { - assert(res[0] === 'a') - assert(res[1] === 'b') - assert(res[2] === 'c') - }) -``` - -#### Promise.denodeify(fn) - -_Non Standard_ - -Takes a function which accepts a node style callback and returns a new function that returns a promise instead. - -e.g. - -```javascript -var fs = require('fs') - -var read = Promise.denodeify(fs.readFile) -var write = Promise.denodeify(fs.writeFile) - -var p = read('foo.json', 'utf8') - .then(function (str) { - return write('foo.json', JSON.stringify(JSON.parse(str), null, ' '), 'utf8') - }) -``` - -#### Promise.nodeify(fn) - -_Non Standard_ - -The twin to `denodeify` is useful when you want to export an API that can be used by people who haven't learnt about the brilliance of promises yet. - -```javascript -module.exports = Promise.nodeify(awesomeAPI) -function awesomeAPI(a, b) { - return download(a, b) -} -``` - -If the last argument passed to `module.exports` is a function, then it will be treated like a node.js callback and not parsed on to the child function, otherwise the API will just return a promise. - -### Prototype Methods - -These methods are invoked on a promise instance by calling `myPromise.methodName` - -### Promise#then(onFulfilled, onRejected) - -This method follows the [Promises/A+ spec](http://promises-aplus.github.io/promises-spec/). It explains things very clearly so I recommend you read it. - -Either `onFulfilled` or `onRejected` will be called and they will not be called more than once. They will be passed a single argument and will always be called asynchronously (in the next turn of the event loop). - -If the promise is fulfilled then `onFulfilled` is called. If the promise is rejected then `onRejected` is called. - -The call to `.then` also returns a promise. If the handler that is called returns a promise, the promise returned by `.then` takes on the state of that returned promise. If the handler that is called returns a value that is not a promise, the promise returned by `.then` will be fulfilled with that value. If the handler that is called throws an exception then the promise returned by `.then` is rejected with that exception. - -#### Promise#catch(onRejected) - -Sugar for `Promise#then(null, onRejected)`, to mirror `catch` in synchronous code. - -#### Promise#done(onFulfilled, onRejected) - -_Non Standard_ - -The same semantics as `.then` except that it does not return a promise and any exceptions are re-thrown so that they can be logged (crashing the application in non-browser environments) - -#### Promise#nodeify(callback) - -_Non Standard_ - -If `callback` is `null` or `undefined` it just returns `this`. If `callback` is a function it is called with rejection reason as the first argument and result as the second argument (as per the node.js convention). - -This lets you write API functions that look like: - -```javascript -function awesomeAPI(foo, bar, callback) { - return internalAPI(foo, bar) - .then(parseResult) - .then(null, retryErrors) - .nodeify(callback) -} -``` - -People who use typical node.js style callbacks will be able to just pass a callback and get the expected behavior. The enlightened people can not pass a callback and will get awesome promises. - -## License - - MIT diff --git a/node_modules/fbjs/node_modules/promise/build.js b/node_modules/fbjs/node_modules/promise/build.js deleted file mode 100644 index 1e028e9a1..000000000 --- a/node_modules/fbjs/node_modules/promise/build.js +++ /dev/null @@ -1,69 +0,0 @@ -'use strict'; - -var fs = require('fs'); -var rimraf = require('rimraf'); -var acorn = require('acorn'); -var walk = require('acorn/dist/walk'); - -var ids = []; -var names = {}; - -function getIdFor(name) { - if (name in names) return names[name]; - var id; - do { - id = '_' + Math.floor(Math.random() * 100); - } while (ids.indexOf(id) !== -1) - ids.push(id); - names[name] = id; - return id; -} - -function fixup(src) { - var ast = acorn.parse(src); - src = src.split(''); - walk.simple(ast, { - MemberExpression: function (node) { - if (node.computed) return; - if (node.property.type !== 'Identifier') return; - if (node.property.name[0] !== '_') return; - replace(node.property, getIdFor(node.property.name)); - } - }); - function source(node) { - return src.slice(node.start, node.end).join(''); - } - function replace(node, str) { - for (var i = node.start; i < node.end; i++) { - src[i] = ''; - } - src[node.start] = str; - } - return src.join(''); -} -rimraf.sync(__dirname + '/lib/'); -fs.mkdirSync(__dirname + '/lib/'); -fs.readdirSync(__dirname + '/src').forEach(function (filename) { - var src = fs.readFileSync(__dirname + '/src/' + filename, 'utf8'); - var out = fixup(src); - fs.writeFileSync(__dirname + '/lib/' + filename, out); -}); - -rimraf.sync(__dirname + '/domains/'); -fs.mkdirSync(__dirname + '/domains/'); -fs.readdirSync(__dirname + '/src').forEach(function (filename) { - var src = fs.readFileSync(__dirname + '/src/' + filename, 'utf8'); - var out = fixup(src); - out = out.replace(/require\(\'asap\/raw\'\)/g, "require('asap')"); - fs.writeFileSync(__dirname + '/domains/' + filename, out); -}); - -rimraf.sync(__dirname + '/setimmediate/'); -fs.mkdirSync(__dirname + '/setimmediate/'); -fs.readdirSync(__dirname + '/src').forEach(function (filename) { - var src = fs.readFileSync(__dirname + '/src/' + filename, 'utf8'); - var out = fixup(src); - out = out.replace(/var asap \= require\(\'([a-z\/]+)\'\);/g, ''); - out = out.replace(/asap/g, "setImmediate"); - fs.writeFileSync(__dirname + '/setimmediate/' + filename, out); -}); diff --git a/node_modules/fbjs/node_modules/promise/core.js b/node_modules/fbjs/node_modules/promise/core.js deleted file mode 100644 index 5f332a20e..000000000 --- a/node_modules/fbjs/node_modules/promise/core.js +++ /dev/null @@ -1,5 +0,0 @@ -'use strict'; - -module.exports = require('./lib/core.js'); - -console.error('require("promise/core") is deprecated, use require("promise/lib/core") instead.'); diff --git a/node_modules/fbjs/node_modules/promise/domains/core.js b/node_modules/fbjs/node_modules/promise/domains/core.js deleted file mode 100644 index aea441481..000000000 --- a/node_modules/fbjs/node_modules/promise/domains/core.js +++ /dev/null @@ -1,213 +0,0 @@ -'use strict'; - -var asap = require('asap'); - -function noop() {} - -// States: -// -// 0 - pending -// 1 - fulfilled with _value -// 2 - rejected with _value -// 3 - adopted the state of another promise, _value -// -// once the state is no longer pending (0) it is immutable - -// All `_` prefixed properties will be reduced to `_{random number}` -// at build time to obfuscate them and discourage their use. -// We don't use symbols or Object.defineProperty to fully hide them -// because the performance isn't good enough. - - -// to avoid using try/catch inside critical functions, we -// extract them to here. -var LAST_ERROR = null; -var IS_ERROR = {}; -function getThen(obj) { - try { - return obj.then; - } catch (ex) { - LAST_ERROR = ex; - return IS_ERROR; - } -} - -function tryCallOne(fn, a) { - try { - return fn(a); - } catch (ex) { - LAST_ERROR = ex; - return IS_ERROR; - } -} -function tryCallTwo(fn, a, b) { - try { - fn(a, b); - } catch (ex) { - LAST_ERROR = ex; - return IS_ERROR; - } -} - -module.exports = Promise; - -function Promise(fn) { - if (typeof this !== 'object') { - throw new TypeError('Promises must be constructed via new'); - } - if (typeof fn !== 'function') { - throw new TypeError('Promise constructor\'s argument is not a function'); - } - this._40 = 0; - this._65 = 0; - this._55 = null; - this._72 = null; - if (fn === noop) return; - doResolve(fn, this); -} -Promise._37 = null; -Promise._87 = null; -Promise._61 = noop; - -Promise.prototype.then = function(onFulfilled, onRejected) { - if (this.constructor !== Promise) { - return safeThen(this, onFulfilled, onRejected); - } - var res = new Promise(noop); - handle(this, new Handler(onFulfilled, onRejected, res)); - return res; -}; - -function safeThen(self, onFulfilled, onRejected) { - return new self.constructor(function (resolve, reject) { - var res = new Promise(noop); - res.then(resolve, reject); - handle(self, new Handler(onFulfilled, onRejected, res)); - }); -} -function handle(self, deferred) { - while (self._65 === 3) { - self = self._55; - } - if (Promise._37) { - Promise._37(self); - } - if (self._65 === 0) { - if (self._40 === 0) { - self._40 = 1; - self._72 = deferred; - return; - } - if (self._40 === 1) { - self._40 = 2; - self._72 = [self._72, deferred]; - return; - } - self._72.push(deferred); - return; - } - handleResolved(self, deferred); -} - -function handleResolved(self, deferred) { - asap(function() { - var cb = self._65 === 1 ? deferred.onFulfilled : deferred.onRejected; - if (cb === null) { - if (self._65 === 1) { - resolve(deferred.promise, self._55); - } else { - reject(deferred.promise, self._55); - } - return; - } - var ret = tryCallOne(cb, self._55); - if (ret === IS_ERROR) { - reject(deferred.promise, LAST_ERROR); - } else { - resolve(deferred.promise, ret); - } - }); -} -function resolve(self, newValue) { - // Promise Resolution Procedure: https://github.com/promises-aplus/promises-spec#the-promise-resolution-procedure - if (newValue === self) { - return reject( - self, - new TypeError('A promise cannot be resolved with itself.') - ); - } - if ( - newValue && - (typeof newValue === 'object' || typeof newValue === 'function') - ) { - var then = getThen(newValue); - if (then === IS_ERROR) { - return reject(self, LAST_ERROR); - } - if ( - then === self.then && - newValue instanceof Promise - ) { - self._65 = 3; - self._55 = newValue; - finale(self); - return; - } else if (typeof then === 'function') { - doResolve(then.bind(newValue), self); - return; - } - } - self._65 = 1; - self._55 = newValue; - finale(self); -} - -function reject(self, newValue) { - self._65 = 2; - self._55 = newValue; - if (Promise._87) { - Promise._87(self, newValue); - } - finale(self); -} -function finale(self) { - if (self._40 === 1) { - handle(self, self._72); - self._72 = null; - } - if (self._40 === 2) { - for (var i = 0; i < self._72.length; i++) { - handle(self, self._72[i]); - } - self._72 = null; - } -} - -function Handler(onFulfilled, onRejected, promise){ - this.onFulfilled = typeof onFulfilled === 'function' ? onFulfilled : null; - this.onRejected = typeof onRejected === 'function' ? onRejected : null; - this.promise = promise; -} - -/** - * Take a potentially misbehaving resolver function and make sure - * onFulfilled and onRejected are only called once. - * - * Makes no guarantees about asynchrony. - */ -function doResolve(fn, promise) { - var done = false; - var res = tryCallTwo(fn, function (value) { - if (done) return; - done = true; - resolve(promise, value); - }, function (reason) { - if (done) return; - done = true; - reject(promise, reason); - }); - if (!done && res === IS_ERROR) { - done = true; - reject(promise, LAST_ERROR); - } -} diff --git a/node_modules/fbjs/node_modules/promise/domains/done.js b/node_modules/fbjs/node_modules/promise/domains/done.js deleted file mode 100644 index f879317d0..000000000 --- a/node_modules/fbjs/node_modules/promise/domains/done.js +++ /dev/null @@ -1,13 +0,0 @@ -'use strict'; - -var Promise = require('./core.js'); - -module.exports = Promise; -Promise.prototype.done = function (onFulfilled, onRejected) { - var self = arguments.length ? this.then.apply(this, arguments) : this; - self.then(null, function (err) { - setTimeout(function () { - throw err; - }, 0); - }); -}; diff --git a/node_modules/fbjs/node_modules/promise/domains/es6-extensions.js b/node_modules/fbjs/node_modules/promise/domains/es6-extensions.js deleted file mode 100644 index 8ab266698..000000000 --- a/node_modules/fbjs/node_modules/promise/domains/es6-extensions.js +++ /dev/null @@ -1,107 +0,0 @@ -'use strict'; - -//This file contains the ES6 extensions to the core Promises/A+ API - -var Promise = require('./core.js'); - -module.exports = Promise; - -/* Static Functions */ - -var TRUE = valuePromise(true); -var FALSE = valuePromise(false); -var NULL = valuePromise(null); -var UNDEFINED = valuePromise(undefined); -var ZERO = valuePromise(0); -var EMPTYSTRING = valuePromise(''); - -function valuePromise(value) { - var p = new Promise(Promise._61); - p._65 = 1; - p._55 = value; - return p; -} -Promise.resolve = function (value) { - if (value instanceof Promise) return value; - - if (value === null) return NULL; - if (value === undefined) return UNDEFINED; - if (value === true) return TRUE; - if (value === false) return FALSE; - if (value === 0) return ZERO; - if (value === '') return EMPTYSTRING; - - if (typeof value === 'object' || typeof value === 'function') { - try { - var then = value.then; - if (typeof then === 'function') { - return new Promise(then.bind(value)); - } - } catch (ex) { - return new Promise(function (resolve, reject) { - reject(ex); - }); - } - } - return valuePromise(value); -}; - -Promise.all = function (arr) { - var args = Array.prototype.slice.call(arr); - - return new Promise(function (resolve, reject) { - if (args.length === 0) return resolve([]); - var remaining = args.length; - function res(i, val) { - if (val && (typeof val === 'object' || typeof val === 'function')) { - if (val instanceof Promise && val.then === Promise.prototype.then) { - while (val._65 === 3) { - val = val._55; - } - if (val._65 === 1) return res(i, val._55); - if (val._65 === 2) reject(val._55); - val.then(function (val) { - res(i, val); - }, reject); - return; - } else { - var then = val.then; - if (typeof then === 'function') { - var p = new Promise(then.bind(val)); - p.then(function (val) { - res(i, val); - }, reject); - return; - } - } - } - args[i] = val; - if (--remaining === 0) { - resolve(args); - } - } - for (var i = 0; i < args.length; i++) { - res(i, args[i]); - } - }); -}; - -Promise.reject = function (value) { - return new Promise(function (resolve, reject) { - reject(value); - }); -}; - -Promise.race = function (values) { - return new Promise(function (resolve, reject) { - values.forEach(function(value){ - Promise.resolve(value).then(resolve, reject); - }); - }); -}; - -/* Prototype Methods */ - -Promise.prototype['catch'] = function (onRejected) { - return this.then(null, onRejected); -}; diff --git a/node_modules/fbjs/node_modules/promise/domains/finally.js b/node_modules/fbjs/node_modules/promise/domains/finally.js deleted file mode 100644 index f5ee0b98a..000000000 --- a/node_modules/fbjs/node_modules/promise/domains/finally.js +++ /dev/null @@ -1,16 +0,0 @@ -'use strict'; - -var Promise = require('./core.js'); - -module.exports = Promise; -Promise.prototype['finally'] = function (f) { - return this.then(function (value) { - return Promise.resolve(f()).then(function () { - return value; - }); - }, function (err) { - return Promise.resolve(f()).then(function () { - throw err; - }); - }); -}; diff --git a/node_modules/fbjs/node_modules/promise/domains/index.js b/node_modules/fbjs/node_modules/promise/domains/index.js deleted file mode 100644 index 6e674f387..000000000 --- a/node_modules/fbjs/node_modules/promise/domains/index.js +++ /dev/null @@ -1,8 +0,0 @@ -'use strict'; - -module.exports = require('./core.js'); -require('./done.js'); -require('./finally.js'); -require('./es6-extensions.js'); -require('./node-extensions.js'); -require('./synchronous.js'); diff --git a/node_modules/fbjs/node_modules/promise/domains/node-extensions.js b/node_modules/fbjs/node_modules/promise/domains/node-extensions.js deleted file mode 100644 index 157cddc2b..000000000 --- a/node_modules/fbjs/node_modules/promise/domains/node-extensions.js +++ /dev/null @@ -1,130 +0,0 @@ -'use strict'; - -// This file contains then/promise specific extensions that are only useful -// for node.js interop - -var Promise = require('./core.js'); -var asap = require('asap'); - -module.exports = Promise; - -/* Static Functions */ - -Promise.denodeify = function (fn, argumentCount) { - if ( - typeof argumentCount === 'number' && argumentCount !== Infinity - ) { - return denodeifyWithCount(fn, argumentCount); - } else { - return denodeifyWithoutCount(fn); - } -}; - -var callbackFn = ( - 'function (err, res) {' + - 'if (err) { rj(err); } else { rs(res); }' + - '}' -); -function denodeifyWithCount(fn, argumentCount) { - var args = []; - for (var i = 0; i < argumentCount; i++) { - args.push('a' + i); - } - var body = [ - 'return function (' + args.join(',') + ') {', - 'var self = this;', - 'return new Promise(function (rs, rj) {', - 'var res = fn.call(', - ['self'].concat(args).concat([callbackFn]).join(','), - ');', - 'if (res &&', - '(typeof res === "object" || typeof res === "function") &&', - 'typeof res.then === "function"', - ') {rs(res);}', - '});', - '};' - ].join(''); - return Function(['Promise', 'fn'], body)(Promise, fn); -} -function denodeifyWithoutCount(fn) { - var fnLength = Math.max(fn.length - 1, 3); - var args = []; - for (var i = 0; i < fnLength; i++) { - args.push('a' + i); - } - var body = [ - 'return function (' + args.join(',') + ') {', - 'var self = this;', - 'var args;', - 'var argLength = arguments.length;', - 'if (arguments.length > ' + fnLength + ') {', - 'args = new Array(arguments.length + 1);', - 'for (var i = 0; i < arguments.length; i++) {', - 'args[i] = arguments[i];', - '}', - '}', - 'return new Promise(function (rs, rj) {', - 'var cb = ' + callbackFn + ';', - 'var res;', - 'switch (argLength) {', - args.concat(['extra']).map(function (_, index) { - return ( - 'case ' + (index) + ':' + - 'res = fn.call(' + ['self'].concat(args.slice(0, index)).concat('cb').join(',') + ');' + - 'break;' - ); - }).join(''), - 'default:', - 'args[argLength] = cb;', - 'res = fn.apply(self, args);', - '}', - - 'if (res &&', - '(typeof res === "object" || typeof res === "function") &&', - 'typeof res.then === "function"', - ') {rs(res);}', - '});', - '};' - ].join(''); - - return Function( - ['Promise', 'fn'], - body - )(Promise, fn); -} - -Promise.nodeify = function (fn) { - return function () { - var args = Array.prototype.slice.call(arguments); - var callback = - typeof args[args.length - 1] === 'function' ? args.pop() : null; - var ctx = this; - try { - return fn.apply(this, arguments).nodeify(callback, ctx); - } catch (ex) { - if (callback === null || typeof callback == 'undefined') { - return new Promise(function (resolve, reject) { - reject(ex); - }); - } else { - asap(function () { - callback.call(ctx, ex); - }) - } - } - } -}; - -Promise.prototype.nodeify = function (callback, ctx) { - if (typeof callback != 'function') return this; - - this.then(function (value) { - asap(function () { - callback.call(ctx, null, value); - }); - }, function (err) { - asap(function () { - callback.call(ctx, err); - }); - }); -}; diff --git a/node_modules/fbjs/node_modules/promise/domains/rejection-tracking.js b/node_modules/fbjs/node_modules/promise/domains/rejection-tracking.js deleted file mode 100644 index 10ccce306..000000000 --- a/node_modules/fbjs/node_modules/promise/domains/rejection-tracking.js +++ /dev/null @@ -1,113 +0,0 @@ -'use strict'; - -var Promise = require('./core'); - -var DEFAULT_WHITELIST = [ - ReferenceError, - TypeError, - RangeError -]; - -var enabled = false; -exports.disable = disable; -function disable() { - enabled = false; - Promise._37 = null; - Promise._87 = null; -} - -exports.enable = enable; -function enable(options) { - options = options || {}; - if (enabled) disable(); - enabled = true; - var id = 0; - var displayId = 0; - var rejections = {}; - Promise._37 = function (promise) { - if ( - promise._65 === 2 && // IS REJECTED - rejections[promise._51] - ) { - if (rejections[promise._51].logged) { - onHandled(promise._51); - } else { - clearTimeout(rejections[promise._51].timeout); - } - delete rejections[promise._51]; - } - }; - Promise._87 = function (promise, err) { - if (promise._40 === 0) { // not yet handled - promise._51 = id++; - rejections[promise._51] = { - displayId: null, - error: err, - timeout: setTimeout( - onUnhandled.bind(null, promise._51), - // For reference errors and type errors, this almost always - // means the programmer made a mistake, so log them after just - // 100ms - // otherwise, wait 2 seconds to see if they get handled - matchWhitelist(err, DEFAULT_WHITELIST) - ? 100 - : 2000 - ), - logged: false - }; - } - }; - function onUnhandled(id) { - if ( - options.allRejections || - matchWhitelist( - rejections[id].error, - options.whitelist || DEFAULT_WHITELIST - ) - ) { - rejections[id].displayId = displayId++; - if (options.onUnhandled) { - rejections[id].logged = true; - options.onUnhandled( - rejections[id].displayId, - rejections[id].error - ); - } else { - rejections[id].logged = true; - logError( - rejections[id].displayId, - rejections[id].error - ); - } - } - } - function onHandled(id) { - if (rejections[id].logged) { - if (options.onHandled) { - options.onHandled(rejections[id].displayId, rejections[id].error); - } else if (!rejections[id].onUnhandled) { - console.warn( - 'Promise Rejection Handled (id: ' + rejections[id].displayId + '):' - ); - console.warn( - ' This means you can ignore any previous messages of the form "Possible Unhandled Promise Rejection" with id ' + - rejections[id].displayId + '.' - ); - } - } - } -} - -function logError(id, error) { - console.warn('Possible Unhandled Promise Rejection (id: ' + id + '):'); - var errStr = (error && (error.stack || error)) + ''; - errStr.split('\n').forEach(function (line) { - console.warn(' ' + line); - }); -} - -function matchWhitelist(error, list) { - return list.some(function (cls) { - return error instanceof cls; - }); -} \ No newline at end of file diff --git a/node_modules/fbjs/node_modules/promise/domains/synchronous.js b/node_modules/fbjs/node_modules/promise/domains/synchronous.js deleted file mode 100644 index 49399644b..000000000 --- a/node_modules/fbjs/node_modules/promise/domains/synchronous.js +++ /dev/null @@ -1,62 +0,0 @@ -'use strict'; - -var Promise = require('./core.js'); - -module.exports = Promise; -Promise.enableSynchronous = function () { - Promise.prototype.isPending = function() { - return this.getState() == 0; - }; - - Promise.prototype.isFulfilled = function() { - return this.getState() == 1; - }; - - Promise.prototype.isRejected = function() { - return this.getState() == 2; - }; - - Promise.prototype.getValue = function () { - if (this._65 === 3) { - return this._55.getValue(); - } - - if (!this.isFulfilled()) { - throw new Error('Cannot get a value of an unfulfilled promise.'); - } - - return this._55; - }; - - Promise.prototype.getReason = function () { - if (this._65 === 3) { - return this._55.getReason(); - } - - if (!this.isRejected()) { - throw new Error('Cannot get a rejection reason of a non-rejected promise.'); - } - - return this._55; - }; - - Promise.prototype.getState = function () { - if (this._65 === 3) { - return this._55.getState(); - } - if (this._65 === -1 || this._65 === -2) { - return 0; - } - - return this._65; - }; -}; - -Promise.disableSynchronous = function() { - Promise.prototype.isPending = undefined; - Promise.prototype.isFulfilled = undefined; - Promise.prototype.isRejected = undefined; - Promise.prototype.getValue = undefined; - Promise.prototype.getReason = undefined; - Promise.prototype.getState = undefined; -}; diff --git a/node_modules/fbjs/node_modules/promise/index.d.ts b/node_modules/fbjs/node_modules/promise/index.d.ts deleted file mode 100644 index a199cbc90..000000000 --- a/node_modules/fbjs/node_modules/promise/index.d.ts +++ /dev/null @@ -1,256 +0,0 @@ -interface Thenable { - /** - * Attaches callbacks for the resolution and/or rejection of the ThenPromise. - * @param onfulfilled The callback to execute when the ThenPromise is resolved. - * @param onrejected The callback to execute when the ThenPromise is rejected. - * @returns A ThenPromise for the completion of which ever callback is executed. - */ - then(onfulfilled?: ((value: T) => TResult1 | Thenable) | undefined | null, onrejected?: ((reason: any) => TResult2 | Thenable) | undefined | null): Thenable; -} - -/** - * Represents the completion of an asynchronous operation - */ -interface ThenPromise { - /** - * Attaches callbacks for the resolution and/or rejection of the ThenPromise. - * @param onfulfilled The callback to execute when the ThenPromise is resolved. - * @param onrejected The callback to execute when the ThenPromise is rejected. - * @returns A ThenPromise for the completion of which ever callback is executed. - */ - then(onfulfilled?: ((value: T) => TResult1 | Thenable) | undefined | null, onrejected?: ((reason: any) => TResult2 | Thenable) | undefined | null): ThenPromise; - - /** - * Attaches a callback for only the rejection of the ThenPromise. - * @param onrejected The callback to execute when the ThenPromise is rejected. - * @returns A ThenPromise for the completion of the callback. - */ - catch(onrejected?: ((reason: any) => TResult | Thenable) | undefined | null): ThenPromise; - - // Extensions specific to then/promise - - /** - * Attaches callbacks for the resolution and/or rejection of the ThenPromise, without returning a new promise. - * @param onfulfilled The callback to execute when the ThenPromise is resolved. - * @param onrejected The callback to execute when the ThenPromise is rejected. - */ - done(onfulfilled?: ((value: T) => any) | undefined | null, onrejected?: ((reason: any) => any) | undefined | null): void; - - - /** - * Calls a node.js style callback. If none is provided, the promise is returned. - */ - nodeify(callback: void | null): ThenPromise; - nodeify(callback: (err: Error, value: T) => void): void; -} - -interface ThenPromiseConstructor { - /** - * A reference to the prototype. - */ - readonly prototype: ThenPromise; - - /** - * Creates a new ThenPromise. - * @param executor A callback used to initialize the promise. This callback is passed two arguments: - * a resolve callback used resolve the promise with a value or the result of another promise, - * and a reject callback used to reject the promise with a provided reason or error. - */ - new (executor: (resolve: (value?: T | Thenable) => void, reject: (reason?: any) => void) => any): ThenPromise; - - /** - * Creates a ThenPromise that is resolved with an array of results when all of the provided Promises - * resolve, or rejected when any ThenPromise is rejected. - * @param values An array of Promises. - * @returns A new ThenPromise. - */ - all(values: [T1 | Thenable, T2 | Thenable, T3 | Thenable, T4 | Thenable , T5 | Thenable, T6 | Thenable, T7 | Thenable, T8 | Thenable, T9 | Thenable, T10 | Thenable]): ThenPromise<[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10]>; - - /** - * Creates a ThenPromise that is resolved with an array of results when all of the provided Promises - * resolve, or rejected when any ThenPromise is rejected. - * @param values An array of Promises. - * @returns A new ThenPromise. - */ - all(values: [T1 | Thenable, T2 | Thenable, T3 | Thenable, T4 | Thenable , T5 | Thenable, T6 | Thenable, T7 | Thenable, T8 | Thenable, T9 | Thenable]): ThenPromise<[T1, T2, T3, T4, T5, T6, T7, T8, T9]>; - - /** - * Creates a ThenPromise that is resolved with an array of results when all of the provided Promises - * resolve, or rejected when any ThenPromise is rejected. - * @param values An array of Promises. - * @returns A new ThenPromise. - */ - all(values: [T1 | Thenable, T2 | Thenable, T3 | Thenable, T4 | Thenable , T5 | Thenable, T6 | Thenable, T7 | Thenable, T8 | Thenable]): ThenPromise<[T1, T2, T3, T4, T5, T6, T7, T8]>; - - /** - * Creates a ThenPromise that is resolved with an array of results when all of the provided Promises - * resolve, or rejected when any ThenPromise is rejected. - * @param values An array of Promises. - * @returns A new ThenPromise. - */ - all(values: [T1 | Thenable, T2 | Thenable, T3 | Thenable, T4 | Thenable , T5 | Thenable, T6 | Thenable, T7 | Thenable]): ThenPromise<[T1, T2, T3, T4, T5, T6, T7]>; - - /** - * Creates a ThenPromise that is resolved with an array of results when all of the provided Promises - * resolve, or rejected when any ThenPromise is rejected. - * @param values An array of Promises. - * @returns A new ThenPromise. - */ - all(values: [T1 | Thenable, T2 | Thenable, T3 | Thenable, T4 | Thenable , T5 | Thenable, T6 | Thenable]): ThenPromise<[T1, T2, T3, T4, T5, T6]>; - - /** - * Creates a ThenPromise that is resolved with an array of results when all of the provided Promises - * resolve, or rejected when any ThenPromise is rejected. - * @param values An array of Promises. - * @returns A new ThenPromise. - */ - all(values: [T1 | Thenable, T2 | Thenable, T3 | Thenable, T4 | Thenable , T5 | Thenable]): ThenPromise<[T1, T2, T3, T4, T5]>; - - /** - * Creates a ThenPromise that is resolved with an array of results when all of the provided Promises - * resolve, or rejected when any ThenPromise is rejected. - * @param values An array of Promises. - * @returns A new ThenPromise. - */ - all(values: [T1 | Thenable, T2 | Thenable, T3 | Thenable, T4 | Thenable ]): ThenPromise<[T1, T2, T3, T4]>; - - /** - * Creates a ThenPromise that is resolved with an array of results when all of the provided Promises - * resolve, or rejected when any ThenPromise is rejected. - * @param values An array of Promises. - * @returns A new ThenPromise. - */ - all(values: [T1 | Thenable, T2 | Thenable, T3 | Thenable]): ThenPromise<[T1, T2, T3]>; - - /** - * Creates a ThenPromise that is resolved with an array of results when all of the provided Promises - * resolve, or rejected when any ThenPromise is rejected. - * @param values An array of Promises. - * @returns A new ThenPromise. - */ - all(values: [T1 | Thenable, T2 | Thenable]): ThenPromise<[T1, T2]>; - - /** - * Creates a ThenPromise that is resolved with an array of results when all of the provided Promises - * resolve, or rejected when any ThenPromise is rejected. - * @param values An array of Promises. - * @returns A new ThenPromise. - */ - all(values: (T | Thenable)[]): ThenPromise; - - /** - * Creates a ThenPromise that is resolved or rejected when any of the provided Promises are resolved - * or rejected. - * @param values An array of Promises. - * @returns A new ThenPromise. - */ - race(values: [T1 | Thenable, T2 | Thenable, T3 | Thenable, T4 | Thenable, T5 | Thenable, T6 | Thenable, T7 | Thenable, T8 | Thenable, T9 | Thenable, T10 | Thenable]): ThenPromise; - - /** - * Creates a ThenPromise that is resolved or rejected when any of the provided Promises are resolved - * or rejected. - * @param values An array of Promises. - * @returns A new ThenPromise. - */ - race(values: [T1 | Thenable, T2 | Thenable, T3 | Thenable, T4 | Thenable, T5 | Thenable, T6 | Thenable, T7 | Thenable, T8 | Thenable, T9 | Thenable]): ThenPromise; - - /** - * Creates a ThenPromise that is resolved or rejected when any of the provided Promises are resolved - * or rejected. - * @param values An array of Promises. - * @returns A new ThenPromise. - */ - race(values: [T1 | Thenable, T2 | Thenable, T3 | Thenable, T4 | Thenable, T5 | Thenable, T6 | Thenable, T7 | Thenable, T8 | Thenable]): ThenPromise; - - /** - * Creates a ThenPromise that is resolved or rejected when any of the provided Promises are resolved - * or rejected. - * @param values An array of Promises. - * @returns A new ThenPromise. - */ - race(values: [T1 | Thenable, T2 | Thenable, T3 | Thenable, T4 | Thenable, T5 | Thenable, T6 | Thenable, T7 | Thenable]): ThenPromise; - - /** - * Creates a ThenPromise that is resolved or rejected when any of the provided Promises are resolved - * or rejected. - * @param values An array of Promises. - * @returns A new ThenPromise. - */ - race(values: [T1 | Thenable, T2 | Thenable, T3 | Thenable, T4 | Thenable, T5 | Thenable, T6 | Thenable]): ThenPromise; - - /** - * Creates a ThenPromise that is resolved or rejected when any of the provided Promises are resolved - * or rejected. - * @param values An array of Promises. - * @returns A new ThenPromise. - */ - race(values: [T1 | Thenable, T2 | Thenable, T3 | Thenable, T4 | Thenable, T5 | Thenable]): ThenPromise; - - /** - * Creates a ThenPromise that is resolved or rejected when any of the provided Promises are resolved - * or rejected. - * @param values An array of Promises. - * @returns A new ThenPromise. - */ - race(values: [T1 | Thenable, T2 | Thenable, T3 | Thenable, T4 | Thenable]): ThenPromise; - - /** - * Creates a ThenPromise that is resolved or rejected when any of the provided Promises are resolved - * or rejected. - * @param values An array of Promises. - * @returns A new ThenPromise. - */ - race(values: [T1 | Thenable, T2 | Thenable, T3 | Thenable]): ThenPromise; - - /** - * Creates a ThenPromise that is resolved or rejected when any of the provided Promises are resolved - * or rejected. - * @param values An array of Promises. - * @returns A new ThenPromise. - */ - race(values: [T1 | Thenable, T2 | Thenable]): ThenPromise; - - /** - * Creates a ThenPromise that is resolved or rejected when any of the provided Promises are resolved - * or rejected. - * @param values An array of Promises. - * @returns A new ThenPromise. - */ - race(values: (T | Thenable)[]): ThenPromise; - - /** - * Creates a new rejected promise for the provided reason. - * @param reason The reason the promise was rejected. - * @returns A new rejected ThenPromise. - */ - reject(reason: any): ThenPromise; - - /** - * Creates a new rejected promise for the provided reason. - * @param reason The reason the promise was rejected. - * @returns A new rejected ThenPromise. - */ - reject(reason: any): ThenPromise; - - /** - * Creates a new resolved promise for the provided value. - * @param value A promise. - * @returns A promise whose internal state matches the provided promise. - */ - resolve(value: T | Thenable): ThenPromise; - - /** - * Creates a new resolved promise . - * @returns A resolved promise. - */ - resolve(): ThenPromise; - - // Extensions specific to then/promise - - denodeify: (fn: Function) => (...args: any[]) => ThenPromise; - nodeify: (fn: Function) => Function; -} - -declare var ThenPromise: ThenPromiseConstructor; - -export = ThenPromise; \ No newline at end of file diff --git a/node_modules/fbjs/node_modules/promise/index.js b/node_modules/fbjs/node_modules/promise/index.js deleted file mode 100644 index 1c38e467c..000000000 --- a/node_modules/fbjs/node_modules/promise/index.js +++ /dev/null @@ -1,3 +0,0 @@ -'use strict'; - -module.exports = require('./lib') diff --git a/node_modules/fbjs/node_modules/promise/lib/core.js b/node_modules/fbjs/node_modules/promise/lib/core.js deleted file mode 100644 index aefc987b6..000000000 --- a/node_modules/fbjs/node_modules/promise/lib/core.js +++ /dev/null @@ -1,213 +0,0 @@ -'use strict'; - -var asap = require('asap/raw'); - -function noop() {} - -// States: -// -// 0 - pending -// 1 - fulfilled with _value -// 2 - rejected with _value -// 3 - adopted the state of another promise, _value -// -// once the state is no longer pending (0) it is immutable - -// All `_` prefixed properties will be reduced to `_{random number}` -// at build time to obfuscate them and discourage their use. -// We don't use symbols or Object.defineProperty to fully hide them -// because the performance isn't good enough. - - -// to avoid using try/catch inside critical functions, we -// extract them to here. -var LAST_ERROR = null; -var IS_ERROR = {}; -function getThen(obj) { - try { - return obj.then; - } catch (ex) { - LAST_ERROR = ex; - return IS_ERROR; - } -} - -function tryCallOne(fn, a) { - try { - return fn(a); - } catch (ex) { - LAST_ERROR = ex; - return IS_ERROR; - } -} -function tryCallTwo(fn, a, b) { - try { - fn(a, b); - } catch (ex) { - LAST_ERROR = ex; - return IS_ERROR; - } -} - -module.exports = Promise; - -function Promise(fn) { - if (typeof this !== 'object') { - throw new TypeError('Promises must be constructed via new'); - } - if (typeof fn !== 'function') { - throw new TypeError('Promise constructor\'s argument is not a function'); - } - this._40 = 0; - this._65 = 0; - this._55 = null; - this._72 = null; - if (fn === noop) return; - doResolve(fn, this); -} -Promise._37 = null; -Promise._87 = null; -Promise._61 = noop; - -Promise.prototype.then = function(onFulfilled, onRejected) { - if (this.constructor !== Promise) { - return safeThen(this, onFulfilled, onRejected); - } - var res = new Promise(noop); - handle(this, new Handler(onFulfilled, onRejected, res)); - return res; -}; - -function safeThen(self, onFulfilled, onRejected) { - return new self.constructor(function (resolve, reject) { - var res = new Promise(noop); - res.then(resolve, reject); - handle(self, new Handler(onFulfilled, onRejected, res)); - }); -} -function handle(self, deferred) { - while (self._65 === 3) { - self = self._55; - } - if (Promise._37) { - Promise._37(self); - } - if (self._65 === 0) { - if (self._40 === 0) { - self._40 = 1; - self._72 = deferred; - return; - } - if (self._40 === 1) { - self._40 = 2; - self._72 = [self._72, deferred]; - return; - } - self._72.push(deferred); - return; - } - handleResolved(self, deferred); -} - -function handleResolved(self, deferred) { - asap(function() { - var cb = self._65 === 1 ? deferred.onFulfilled : deferred.onRejected; - if (cb === null) { - if (self._65 === 1) { - resolve(deferred.promise, self._55); - } else { - reject(deferred.promise, self._55); - } - return; - } - var ret = tryCallOne(cb, self._55); - if (ret === IS_ERROR) { - reject(deferred.promise, LAST_ERROR); - } else { - resolve(deferred.promise, ret); - } - }); -} -function resolve(self, newValue) { - // Promise Resolution Procedure: https://github.com/promises-aplus/promises-spec#the-promise-resolution-procedure - if (newValue === self) { - return reject( - self, - new TypeError('A promise cannot be resolved with itself.') - ); - } - if ( - newValue && - (typeof newValue === 'object' || typeof newValue === 'function') - ) { - var then = getThen(newValue); - if (then === IS_ERROR) { - return reject(self, LAST_ERROR); - } - if ( - then === self.then && - newValue instanceof Promise - ) { - self._65 = 3; - self._55 = newValue; - finale(self); - return; - } else if (typeof then === 'function') { - doResolve(then.bind(newValue), self); - return; - } - } - self._65 = 1; - self._55 = newValue; - finale(self); -} - -function reject(self, newValue) { - self._65 = 2; - self._55 = newValue; - if (Promise._87) { - Promise._87(self, newValue); - } - finale(self); -} -function finale(self) { - if (self._40 === 1) { - handle(self, self._72); - self._72 = null; - } - if (self._40 === 2) { - for (var i = 0; i < self._72.length; i++) { - handle(self, self._72[i]); - } - self._72 = null; - } -} - -function Handler(onFulfilled, onRejected, promise){ - this.onFulfilled = typeof onFulfilled === 'function' ? onFulfilled : null; - this.onRejected = typeof onRejected === 'function' ? onRejected : null; - this.promise = promise; -} - -/** - * Take a potentially misbehaving resolver function and make sure - * onFulfilled and onRejected are only called once. - * - * Makes no guarantees about asynchrony. - */ -function doResolve(fn, promise) { - var done = false; - var res = tryCallTwo(fn, function (value) { - if (done) return; - done = true; - resolve(promise, value); - }, function (reason) { - if (done) return; - done = true; - reject(promise, reason); - }); - if (!done && res === IS_ERROR) { - done = true; - reject(promise, LAST_ERROR); - } -} diff --git a/node_modules/fbjs/node_modules/promise/lib/done.js b/node_modules/fbjs/node_modules/promise/lib/done.js deleted file mode 100644 index f879317d0..000000000 --- a/node_modules/fbjs/node_modules/promise/lib/done.js +++ /dev/null @@ -1,13 +0,0 @@ -'use strict'; - -var Promise = require('./core.js'); - -module.exports = Promise; -Promise.prototype.done = function (onFulfilled, onRejected) { - var self = arguments.length ? this.then.apply(this, arguments) : this; - self.then(null, function (err) { - setTimeout(function () { - throw err; - }, 0); - }); -}; diff --git a/node_modules/fbjs/node_modules/promise/lib/es6-extensions.js b/node_modules/fbjs/node_modules/promise/lib/es6-extensions.js deleted file mode 100644 index 8ab266698..000000000 --- a/node_modules/fbjs/node_modules/promise/lib/es6-extensions.js +++ /dev/null @@ -1,107 +0,0 @@ -'use strict'; - -//This file contains the ES6 extensions to the core Promises/A+ API - -var Promise = require('./core.js'); - -module.exports = Promise; - -/* Static Functions */ - -var TRUE = valuePromise(true); -var FALSE = valuePromise(false); -var NULL = valuePromise(null); -var UNDEFINED = valuePromise(undefined); -var ZERO = valuePromise(0); -var EMPTYSTRING = valuePromise(''); - -function valuePromise(value) { - var p = new Promise(Promise._61); - p._65 = 1; - p._55 = value; - return p; -} -Promise.resolve = function (value) { - if (value instanceof Promise) return value; - - if (value === null) return NULL; - if (value === undefined) return UNDEFINED; - if (value === true) return TRUE; - if (value === false) return FALSE; - if (value === 0) return ZERO; - if (value === '') return EMPTYSTRING; - - if (typeof value === 'object' || typeof value === 'function') { - try { - var then = value.then; - if (typeof then === 'function') { - return new Promise(then.bind(value)); - } - } catch (ex) { - return new Promise(function (resolve, reject) { - reject(ex); - }); - } - } - return valuePromise(value); -}; - -Promise.all = function (arr) { - var args = Array.prototype.slice.call(arr); - - return new Promise(function (resolve, reject) { - if (args.length === 0) return resolve([]); - var remaining = args.length; - function res(i, val) { - if (val && (typeof val === 'object' || typeof val === 'function')) { - if (val instanceof Promise && val.then === Promise.prototype.then) { - while (val._65 === 3) { - val = val._55; - } - if (val._65 === 1) return res(i, val._55); - if (val._65 === 2) reject(val._55); - val.then(function (val) { - res(i, val); - }, reject); - return; - } else { - var then = val.then; - if (typeof then === 'function') { - var p = new Promise(then.bind(val)); - p.then(function (val) { - res(i, val); - }, reject); - return; - } - } - } - args[i] = val; - if (--remaining === 0) { - resolve(args); - } - } - for (var i = 0; i < args.length; i++) { - res(i, args[i]); - } - }); -}; - -Promise.reject = function (value) { - return new Promise(function (resolve, reject) { - reject(value); - }); -}; - -Promise.race = function (values) { - return new Promise(function (resolve, reject) { - values.forEach(function(value){ - Promise.resolve(value).then(resolve, reject); - }); - }); -}; - -/* Prototype Methods */ - -Promise.prototype['catch'] = function (onRejected) { - return this.then(null, onRejected); -}; diff --git a/node_modules/fbjs/node_modules/promise/lib/finally.js b/node_modules/fbjs/node_modules/promise/lib/finally.js deleted file mode 100644 index f5ee0b98a..000000000 --- a/node_modules/fbjs/node_modules/promise/lib/finally.js +++ /dev/null @@ -1,16 +0,0 @@ -'use strict'; - -var Promise = require('./core.js'); - -module.exports = Promise; -Promise.prototype['finally'] = function (f) { - return this.then(function (value) { - return Promise.resolve(f()).then(function () { - return value; - }); - }, function (err) { - return Promise.resolve(f()).then(function () { - throw err; - }); - }); -}; diff --git a/node_modules/fbjs/node_modules/promise/lib/index.js b/node_modules/fbjs/node_modules/promise/lib/index.js deleted file mode 100644 index 6e674f387..000000000 --- a/node_modules/fbjs/node_modules/promise/lib/index.js +++ /dev/null @@ -1,8 +0,0 @@ -'use strict'; - -module.exports = require('./core.js'); -require('./done.js'); -require('./finally.js'); -require('./es6-extensions.js'); -require('./node-extensions.js'); -require('./synchronous.js'); diff --git a/node_modules/fbjs/node_modules/promise/lib/node-extensions.js b/node_modules/fbjs/node_modules/promise/lib/node-extensions.js deleted file mode 100644 index 157cddc2b..000000000 --- a/node_modules/fbjs/node_modules/promise/lib/node-extensions.js +++ /dev/null @@ -1,130 +0,0 @@ -'use strict'; - -// This file contains then/promise specific extensions that are only useful -// for node.js interop - -var Promise = require('./core.js'); -var asap = require('asap'); - -module.exports = Promise; - -/* Static Functions */ - -Promise.denodeify = function (fn, argumentCount) { - if ( - typeof argumentCount === 'number' && argumentCount !== Infinity - ) { - return denodeifyWithCount(fn, argumentCount); - } else { - return denodeifyWithoutCount(fn); - } -}; - -var callbackFn = ( - 'function (err, res) {' + - 'if (err) { rj(err); } else { rs(res); }' + - '}' -); -function denodeifyWithCount(fn, argumentCount) { - var args = []; - for (var i = 0; i < argumentCount; i++) { - args.push('a' + i); - } - var body = [ - 'return function (' + args.join(',') + ') {', - 'var self = this;', - 'return new Promise(function (rs, rj) {', - 'var res = fn.call(', - ['self'].concat(args).concat([callbackFn]).join(','), - ');', - 'if (res &&', - '(typeof res === "object" || typeof res === "function") &&', - 'typeof res.then === "function"', - ') {rs(res);}', - '});', - '};' - ].join(''); - return Function(['Promise', 'fn'], body)(Promise, fn); -} -function denodeifyWithoutCount(fn) { - var fnLength = Math.max(fn.length - 1, 3); - var args = []; - for (var i = 0; i < fnLength; i++) { - args.push('a' + i); - } - var body = [ - 'return function (' + args.join(',') + ') {', - 'var self = this;', - 'var args;', - 'var argLength = arguments.length;', - 'if (arguments.length > ' + fnLength + ') {', - 'args = new Array(arguments.length + 1);', - 'for (var i = 0; i < arguments.length; i++) {', - 'args[i] = arguments[i];', - '}', - '}', - 'return new Promise(function (rs, rj) {', - 'var cb = ' + callbackFn + ';', - 'var res;', - 'switch (argLength) {', - args.concat(['extra']).map(function (_, index) { - return ( - 'case ' + (index) + ':' + - 'res = fn.call(' + ['self'].concat(args.slice(0, index)).concat('cb').join(',') + ');' + - 'break;' - ); - }).join(''), - 'default:', - 'args[argLength] = cb;', - 'res = fn.apply(self, args);', - '}', - - 'if (res &&', - '(typeof res === "object" || typeof res === "function") &&', - 'typeof res.then === "function"', - ') {rs(res);}', - '});', - '};' - ].join(''); - - return Function( - ['Promise', 'fn'], - body - )(Promise, fn); -} - -Promise.nodeify = function (fn) { - return function () { - var args = Array.prototype.slice.call(arguments); - var callback = - typeof args[args.length - 1] === 'function' ? args.pop() : null; - var ctx = this; - try { - return fn.apply(this, arguments).nodeify(callback, ctx); - } catch (ex) { - if (callback === null || typeof callback == 'undefined') { - return new Promise(function (resolve, reject) { - reject(ex); - }); - } else { - asap(function () { - callback.call(ctx, ex); - }) - } - } - } -}; - -Promise.prototype.nodeify = function (callback, ctx) { - if (typeof callback != 'function') return this; - - this.then(function (value) { - asap(function () { - callback.call(ctx, null, value); - }); - }, function (err) { - asap(function () { - callback.call(ctx, err); - }); - }); -}; diff --git a/node_modules/fbjs/node_modules/promise/lib/rejection-tracking.js b/node_modules/fbjs/node_modules/promise/lib/rejection-tracking.js deleted file mode 100644 index 10ccce306..000000000 --- a/node_modules/fbjs/node_modules/promise/lib/rejection-tracking.js +++ /dev/null @@ -1,113 +0,0 @@ -'use strict'; - -var Promise = require('./core'); - -var DEFAULT_WHITELIST = [ - ReferenceError, - TypeError, - RangeError -]; - -var enabled = false; -exports.disable = disable; -function disable() { - enabled = false; - Promise._37 = null; - Promise._87 = null; -} - -exports.enable = enable; -function enable(options) { - options = options || {}; - if (enabled) disable(); - enabled = true; - var id = 0; - var displayId = 0; - var rejections = {}; - Promise._37 = function (promise) { - if ( - promise._65 === 2 && // IS REJECTED - rejections[promise._51] - ) { - if (rejections[promise._51].logged) { - onHandled(promise._51); - } else { - clearTimeout(rejections[promise._51].timeout); - } - delete rejections[promise._51]; - } - }; - Promise._87 = function (promise, err) { - if (promise._40 === 0) { // not yet handled - promise._51 = id++; - rejections[promise._51] = { - displayId: null, - error: err, - timeout: setTimeout( - onUnhandled.bind(null, promise._51), - // For reference errors and type errors, this almost always - // means the programmer made a mistake, so log them after just - // 100ms - // otherwise, wait 2 seconds to see if they get handled - matchWhitelist(err, DEFAULT_WHITELIST) - ? 100 - : 2000 - ), - logged: false - }; - } - }; - function onUnhandled(id) { - if ( - options.allRejections || - matchWhitelist( - rejections[id].error, - options.whitelist || DEFAULT_WHITELIST - ) - ) { - rejections[id].displayId = displayId++; - if (options.onUnhandled) { - rejections[id].logged = true; - options.onUnhandled( - rejections[id].displayId, - rejections[id].error - ); - } else { - rejections[id].logged = true; - logError( - rejections[id].displayId, - rejections[id].error - ); - } - } - } - function onHandled(id) { - if (rejections[id].logged) { - if (options.onHandled) { - options.onHandled(rejections[id].displayId, rejections[id].error); - } else if (!rejections[id].onUnhandled) { - console.warn( - 'Promise Rejection Handled (id: ' + rejections[id].displayId + '):' - ); - console.warn( - ' This means you can ignore any previous messages of the form "Possible Unhandled Promise Rejection" with id ' + - rejections[id].displayId + '.' - ); - } - } - } -} - -function logError(id, error) { - console.warn('Possible Unhandled Promise Rejection (id: ' + id + '):'); - var errStr = (error && (error.stack || error)) + ''; - errStr.split('\n').forEach(function (line) { - console.warn(' ' + line); - }); -} - -function matchWhitelist(error, list) { - return list.some(function (cls) { - return error instanceof cls; - }); -} \ No newline at end of file diff --git a/node_modules/fbjs/node_modules/promise/lib/synchronous.js b/node_modules/fbjs/node_modules/promise/lib/synchronous.js deleted file mode 100644 index 49399644b..000000000 --- a/node_modules/fbjs/node_modules/promise/lib/synchronous.js +++ /dev/null @@ -1,62 +0,0 @@ -'use strict'; - -var Promise = require('./core.js'); - -module.exports = Promise; -Promise.enableSynchronous = function () { - Promise.prototype.isPending = function() { - return this.getState() == 0; - }; - - Promise.prototype.isFulfilled = function() { - return this.getState() == 1; - }; - - Promise.prototype.isRejected = function() { - return this.getState() == 2; - }; - - Promise.prototype.getValue = function () { - if (this._65 === 3) { - return this._55.getValue(); - } - - if (!this.isFulfilled()) { - throw new Error('Cannot get a value of an unfulfilled promise.'); - } - - return this._55; - }; - - Promise.prototype.getReason = function () { - if (this._65 === 3) { - return this._55.getReason(); - } - - if (!this.isRejected()) { - throw new Error('Cannot get a rejection reason of a non-rejected promise.'); - } - - return this._55; - }; - - Promise.prototype.getState = function () { - if (this._65 === 3) { - return this._55.getState(); - } - if (this._65 === -1 || this._65 === -2) { - return 0; - } - - return this._65; - }; -}; - -Promise.disableSynchronous = function() { - Promise.prototype.isPending = undefined; - Promise.prototype.isFulfilled = undefined; - Promise.prototype.isRejected = undefined; - Promise.prototype.getValue = undefined; - Promise.prototype.getReason = undefined; - Promise.prototype.getState = undefined; -}; diff --git a/node_modules/fbjs/node_modules/promise/package.json b/node_modules/fbjs/node_modules/promise/package.json deleted file mode 100644 index 6f605ea96..000000000 --- a/node_modules/fbjs/node_modules/promise/package.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "name": "promise", - "version": "7.3.1", - "description": "Bare bones Promises/A+ implementation", - "main": "index.js", - "scripts": { - "prepublish": "node build", - "pretest": "node build", - "pretest-resolve": "node build", - "pretest-extensions": "node build", - "pretest-memory-leak": "node build", - "test": "mocha --bail --timeout 200 --slow 99999 -R dot && npm run test-memory-leak", - "test-resolve": "mocha test/resolver-tests.js --timeout 200 --slow 999999", - "test-extensions": "mocha test/extensions-tests.js --timeout 200 --slow 999999", - "test-memory-leak": "node --expose-gc test/memory-leak.js", - "coverage": "istanbul cover node_modules/mocha/bin/_mocha -- --bail --timeout 200 --slow 99999 -R dot" - }, - "repository": { - "type": "git", - "url": "https://github.com/then/promise.git" - }, - "author": "ForbesLindesay", - "license": "MIT", - "devDependencies": { - "acorn": "^1.0.1", - "better-assert": "*", - "istanbul": "^0.3.13", - "mocha": "*", - "promises-aplus-tests": "*", - "rimraf": "^2.3.2" - }, - "dependencies": { - "asap": "~2.0.3" - } -} \ No newline at end of file diff --git a/node_modules/fbjs/node_modules/promise/polyfill-done.js b/node_modules/fbjs/node_modules/promise/polyfill-done.js deleted file mode 100644 index e50b4c0e8..000000000 --- a/node_modules/fbjs/node_modules/promise/polyfill-done.js +++ /dev/null @@ -1,12 +0,0 @@ -// should work in any browser without browserify - -if (typeof Promise.prototype.done !== 'function') { - Promise.prototype.done = function (onFulfilled, onRejected) { - var self = arguments.length ? this.then.apply(this, arguments) : this - self.then(null, function (err) { - setTimeout(function () { - throw err - }, 0) - }) - } -} \ No newline at end of file diff --git a/node_modules/fbjs/node_modules/promise/polyfill.js b/node_modules/fbjs/node_modules/promise/polyfill.js deleted file mode 100644 index db099f8ee..000000000 --- a/node_modules/fbjs/node_modules/promise/polyfill.js +++ /dev/null @@ -1,10 +0,0 @@ -// not "use strict" so we can declare global "Promise" - -var asap = require('asap'); - -if (typeof Promise === 'undefined') { - Promise = require('./lib/core.js') - require('./lib/es6-extensions.js') -} - -require('./polyfill-done.js'); diff --git a/node_modules/fbjs/node_modules/promise/setimmediate/core.js b/node_modules/fbjs/node_modules/promise/setimmediate/core.js deleted file mode 100644 index a84fb3da0..000000000 --- a/node_modules/fbjs/node_modules/promise/setimmediate/core.js +++ /dev/null @@ -1,213 +0,0 @@ -'use strict'; - - - -function noop() {} - -// States: -// -// 0 - pending -// 1 - fulfilled with _value -// 2 - rejected with _value -// 3 - adopted the state of another promise, _value -// -// once the state is no longer pending (0) it is immutable - -// All `_` prefixed properties will be reduced to `_{random number}` -// at build time to obfuscate them and discourage their use. -// We don't use symbols or Object.defineProperty to fully hide them -// because the performance isn't good enough. - - -// to avoid using try/catch inside critical functions, we -// extract them to here. -var LAST_ERROR = null; -var IS_ERROR = {}; -function getThen(obj) { - try { - return obj.then; - } catch (ex) { - LAST_ERROR = ex; - return IS_ERROR; - } -} - -function tryCallOne(fn, a) { - try { - return fn(a); - } catch (ex) { - LAST_ERROR = ex; - return IS_ERROR; - } -} -function tryCallTwo(fn, a, b) { - try { - fn(a, b); - } catch (ex) { - LAST_ERROR = ex; - return IS_ERROR; - } -} - -module.exports = Promise; - -function Promise(fn) { - if (typeof this !== 'object') { - throw new TypeError('Promises must be constructed via new'); - } - if (typeof fn !== 'function') { - throw new TypeError('Promise constructor\'s argument is not a function'); - } - this._40 = 0; - this._65 = 0; - this._55 = null; - this._72 = null; - if (fn === noop) return; - doResolve(fn, this); -} -Promise._37 = null; -Promise._87 = null; -Promise._61 = noop; - -Promise.prototype.then = function(onFulfilled, onRejected) { - if (this.constructor !== Promise) { - return safeThen(this, onFulfilled, onRejected); - } - var res = new Promise(noop); - handle(this, new Handler(onFulfilled, onRejected, res)); - return res; -}; - -function safeThen(self, onFulfilled, onRejected) { - return new self.constructor(function (resolve, reject) { - var res = new Promise(noop); - res.then(resolve, reject); - handle(self, new Handler(onFulfilled, onRejected, res)); - }); -} -function handle(self, deferred) { - while (self._65 === 3) { - self = self._55; - } - if (Promise._37) { - Promise._37(self); - } - if (self._65 === 0) { - if (self._40 === 0) { - self._40 = 1; - self._72 = deferred; - return; - } - if (self._40 === 1) { - self._40 = 2; - self._72 = [self._72, deferred]; - return; - } - self._72.push(deferred); - return; - } - handleResolved(self, deferred); -} - -function handleResolved(self, deferred) { - setImmediate(function() { - var cb = self._65 === 1 ? deferred.onFulfilled : deferred.onRejected; - if (cb === null) { - if (self._65 === 1) { - resolve(deferred.promise, self._55); - } else { - reject(deferred.promise, self._55); - } - return; - } - var ret = tryCallOne(cb, self._55); - if (ret === IS_ERROR) { - reject(deferred.promise, LAST_ERROR); - } else { - resolve(deferred.promise, ret); - } - }); -} -function resolve(self, newValue) { - // Promise Resolution Procedure: https://github.com/promises-aplus/promises-spec#the-promise-resolution-procedure - if (newValue === self) { - return reject( - self, - new TypeError('A promise cannot be resolved with itself.') - ); - } - if ( - newValue && - (typeof newValue === 'object' || typeof newValue === 'function') - ) { - var then = getThen(newValue); - if (then === IS_ERROR) { - return reject(self, LAST_ERROR); - } - if ( - then === self.then && - newValue instanceof Promise - ) { - self._65 = 3; - self._55 = newValue; - finale(self); - return; - } else if (typeof then === 'function') { - doResolve(then.bind(newValue), self); - return; - } - } - self._65 = 1; - self._55 = newValue; - finale(self); -} - -function reject(self, newValue) { - self._65 = 2; - self._55 = newValue; - if (Promise._87) { - Promise._87(self, newValue); - } - finale(self); -} -function finale(self) { - if (self._40 === 1) { - handle(self, self._72); - self._72 = null; - } - if (self._40 === 2) { - for (var i = 0; i < self._72.length; i++) { - handle(self, self._72[i]); - } - self._72 = null; - } -} - -function Handler(onFulfilled, onRejected, promise){ - this.onFulfilled = typeof onFulfilled === 'function' ? onFulfilled : null; - this.onRejected = typeof onRejected === 'function' ? onRejected : null; - this.promise = promise; -} - -/** - * Take a potentially misbehaving resolver function and make sure - * onFulfilled and onRejected are only called once. - * - * Makes no guarantees about asynchrony. - */ -function doResolve(fn, promise) { - var done = false; - var res = tryCallTwo(fn, function (value) { - if (done) return; - done = true; - resolve(promise, value); - }, function (reason) { - if (done) return; - done = true; - reject(promise, reason); - }); - if (!done && res === IS_ERROR) { - done = true; - reject(promise, LAST_ERROR); - } -} diff --git a/node_modules/fbjs/node_modules/promise/setimmediate/done.js b/node_modules/fbjs/node_modules/promise/setimmediate/done.js deleted file mode 100644 index f879317d0..000000000 --- a/node_modules/fbjs/node_modules/promise/setimmediate/done.js +++ /dev/null @@ -1,13 +0,0 @@ -'use strict'; - -var Promise = require('./core.js'); - -module.exports = Promise; -Promise.prototype.done = function (onFulfilled, onRejected) { - var self = arguments.length ? this.then.apply(this, arguments) : this; - self.then(null, function (err) { - setTimeout(function () { - throw err; - }, 0); - }); -}; diff --git a/node_modules/fbjs/node_modules/promise/setimmediate/es6-extensions.js b/node_modules/fbjs/node_modules/promise/setimmediate/es6-extensions.js deleted file mode 100644 index 8ab266698..000000000 --- a/node_modules/fbjs/node_modules/promise/setimmediate/es6-extensions.js +++ /dev/null @@ -1,107 +0,0 @@ -'use strict'; - -//This file contains the ES6 extensions to the core Promises/A+ API - -var Promise = require('./core.js'); - -module.exports = Promise; - -/* Static Functions */ - -var TRUE = valuePromise(true); -var FALSE = valuePromise(false); -var NULL = valuePromise(null); -var UNDEFINED = valuePromise(undefined); -var ZERO = valuePromise(0); -var EMPTYSTRING = valuePromise(''); - -function valuePromise(value) { - var p = new Promise(Promise._61); - p._65 = 1; - p._55 = value; - return p; -} -Promise.resolve = function (value) { - if (value instanceof Promise) return value; - - if (value === null) return NULL; - if (value === undefined) return UNDEFINED; - if (value === true) return TRUE; - if (value === false) return FALSE; - if (value === 0) return ZERO; - if (value === '') return EMPTYSTRING; - - if (typeof value === 'object' || typeof value === 'function') { - try { - var then = value.then; - if (typeof then === 'function') { - return new Promise(then.bind(value)); - } - } catch (ex) { - return new Promise(function (resolve, reject) { - reject(ex); - }); - } - } - return valuePromise(value); -}; - -Promise.all = function (arr) { - var args = Array.prototype.slice.call(arr); - - return new Promise(function (resolve, reject) { - if (args.length === 0) return resolve([]); - var remaining = args.length; - function res(i, val) { - if (val && (typeof val === 'object' || typeof val === 'function')) { - if (val instanceof Promise && val.then === Promise.prototype.then) { - while (val._65 === 3) { - val = val._55; - } - if (val._65 === 1) return res(i, val._55); - if (val._65 === 2) reject(val._55); - val.then(function (val) { - res(i, val); - }, reject); - return; - } else { - var then = val.then; - if (typeof then === 'function') { - var p = new Promise(then.bind(val)); - p.then(function (val) { - res(i, val); - }, reject); - return; - } - } - } - args[i] = val; - if (--remaining === 0) { - resolve(args); - } - } - for (var i = 0; i < args.length; i++) { - res(i, args[i]); - } - }); -}; - -Promise.reject = function (value) { - return new Promise(function (resolve, reject) { - reject(value); - }); -}; - -Promise.race = function (values) { - return new Promise(function (resolve, reject) { - values.forEach(function(value){ - Promise.resolve(value).then(resolve, reject); - }); - }); -}; - -/* Prototype Methods */ - -Promise.prototype['catch'] = function (onRejected) { - return this.then(null, onRejected); -}; diff --git a/node_modules/fbjs/node_modules/promise/setimmediate/finally.js b/node_modules/fbjs/node_modules/promise/setimmediate/finally.js deleted file mode 100644 index f5ee0b98a..000000000 --- a/node_modules/fbjs/node_modules/promise/setimmediate/finally.js +++ /dev/null @@ -1,16 +0,0 @@ -'use strict'; - -var Promise = require('./core.js'); - -module.exports = Promise; -Promise.prototype['finally'] = function (f) { - return this.then(function (value) { - return Promise.resolve(f()).then(function () { - return value; - }); - }, function (err) { - return Promise.resolve(f()).then(function () { - throw err; - }); - }); -}; diff --git a/node_modules/fbjs/node_modules/promise/setimmediate/index.js b/node_modules/fbjs/node_modules/promise/setimmediate/index.js deleted file mode 100644 index 6e674f387..000000000 --- a/node_modules/fbjs/node_modules/promise/setimmediate/index.js +++ /dev/null @@ -1,8 +0,0 @@ -'use strict'; - -module.exports = require('./core.js'); -require('./done.js'); -require('./finally.js'); -require('./es6-extensions.js'); -require('./node-extensions.js'); -require('./synchronous.js'); diff --git a/node_modules/fbjs/node_modules/promise/setimmediate/node-extensions.js b/node_modules/fbjs/node_modules/promise/setimmediate/node-extensions.js deleted file mode 100644 index f03e861d8..000000000 --- a/node_modules/fbjs/node_modules/promise/setimmediate/node-extensions.js +++ /dev/null @@ -1,130 +0,0 @@ -'use strict'; - -// This file contains then/promise specific extensions that are only useful -// for node.js interop - -var Promise = require('./core.js'); - - -module.exports = Promise; - -/* Static Functions */ - -Promise.denodeify = function (fn, argumentCount) { - if ( - typeof argumentCount === 'number' && argumentCount !== Infinity - ) { - return denodeifyWithCount(fn, argumentCount); - } else { - return denodeifyWithoutCount(fn); - } -}; - -var callbackFn = ( - 'function (err, res) {' + - 'if (err) { rj(err); } else { rs(res); }' + - '}' -); -function denodeifyWithCount(fn, argumentCount) { - var args = []; - for (var i = 0; i < argumentCount; i++) { - args.push('a' + i); - } - var body = [ - 'return function (' + args.join(',') + ') {', - 'var self = this;', - 'return new Promise(function (rs, rj) {', - 'var res = fn.call(', - ['self'].concat(args).concat([callbackFn]).join(','), - ');', - 'if (res &&', - '(typeof res === "object" || typeof res === "function") &&', - 'typeof res.then === "function"', - ') {rs(res);}', - '});', - '};' - ].join(''); - return Function(['Promise', 'fn'], body)(Promise, fn); -} -function denodeifyWithoutCount(fn) { - var fnLength = Math.max(fn.length - 1, 3); - var args = []; - for (var i = 0; i < fnLength; i++) { - args.push('a' + i); - } - var body = [ - 'return function (' + args.join(',') + ') {', - 'var self = this;', - 'var args;', - 'var argLength = arguments.length;', - 'if (arguments.length > ' + fnLength + ') {', - 'args = new Array(arguments.length + 1);', - 'for (var i = 0; i < arguments.length; i++) {', - 'args[i] = arguments[i];', - '}', - '}', - 'return new Promise(function (rs, rj) {', - 'var cb = ' + callbackFn + ';', - 'var res;', - 'switch (argLength) {', - args.concat(['extra']).map(function (_, index) { - return ( - 'case ' + (index) + ':' + - 'res = fn.call(' + ['self'].concat(args.slice(0, index)).concat('cb').join(',') + ');' + - 'break;' - ); - }).join(''), - 'default:', - 'args[argLength] = cb;', - 'res = fn.apply(self, args);', - '}', - - 'if (res &&', - '(typeof res === "object" || typeof res === "function") &&', - 'typeof res.then === "function"', - ') {rs(res);}', - '});', - '};' - ].join(''); - - return Function( - ['Promise', 'fn'], - body - )(Promise, fn); -} - -Promise.nodeify = function (fn) { - return function () { - var args = Array.prototype.slice.call(arguments); - var callback = - typeof args[args.length - 1] === 'function' ? args.pop() : null; - var ctx = this; - try { - return fn.apply(this, arguments).nodeify(callback, ctx); - } catch (ex) { - if (callback === null || typeof callback == 'undefined') { - return new Promise(function (resolve, reject) { - reject(ex); - }); - } else { - setImmediate(function () { - callback.call(ctx, ex); - }) - } - } - } -}; - -Promise.prototype.nodeify = function (callback, ctx) { - if (typeof callback != 'function') return this; - - this.then(function (value) { - setImmediate(function () { - callback.call(ctx, null, value); - }); - }, function (err) { - setImmediate(function () { - callback.call(ctx, err); - }); - }); -}; diff --git a/node_modules/fbjs/node_modules/promise/setimmediate/rejection-tracking.js b/node_modules/fbjs/node_modules/promise/setimmediate/rejection-tracking.js deleted file mode 100644 index 10ccce306..000000000 --- a/node_modules/fbjs/node_modules/promise/setimmediate/rejection-tracking.js +++ /dev/null @@ -1,113 +0,0 @@ -'use strict'; - -var Promise = require('./core'); - -var DEFAULT_WHITELIST = [ - ReferenceError, - TypeError, - RangeError -]; - -var enabled = false; -exports.disable = disable; -function disable() { - enabled = false; - Promise._37 = null; - Promise._87 = null; -} - -exports.enable = enable; -function enable(options) { - options = options || {}; - if (enabled) disable(); - enabled = true; - var id = 0; - var displayId = 0; - var rejections = {}; - Promise._37 = function (promise) { - if ( - promise._65 === 2 && // IS REJECTED - rejections[promise._51] - ) { - if (rejections[promise._51].logged) { - onHandled(promise._51); - } else { - clearTimeout(rejections[promise._51].timeout); - } - delete rejections[promise._51]; - } - }; - Promise._87 = function (promise, err) { - if (promise._40 === 0) { // not yet handled - promise._51 = id++; - rejections[promise._51] = { - displayId: null, - error: err, - timeout: setTimeout( - onUnhandled.bind(null, promise._51), - // For reference errors and type errors, this almost always - // means the programmer made a mistake, so log them after just - // 100ms - // otherwise, wait 2 seconds to see if they get handled - matchWhitelist(err, DEFAULT_WHITELIST) - ? 100 - : 2000 - ), - logged: false - }; - } - }; - function onUnhandled(id) { - if ( - options.allRejections || - matchWhitelist( - rejections[id].error, - options.whitelist || DEFAULT_WHITELIST - ) - ) { - rejections[id].displayId = displayId++; - if (options.onUnhandled) { - rejections[id].logged = true; - options.onUnhandled( - rejections[id].displayId, - rejections[id].error - ); - } else { - rejections[id].logged = true; - logError( - rejections[id].displayId, - rejections[id].error - ); - } - } - } - function onHandled(id) { - if (rejections[id].logged) { - if (options.onHandled) { - options.onHandled(rejections[id].displayId, rejections[id].error); - } else if (!rejections[id].onUnhandled) { - console.warn( - 'Promise Rejection Handled (id: ' + rejections[id].displayId + '):' - ); - console.warn( - ' This means you can ignore any previous messages of the form "Possible Unhandled Promise Rejection" with id ' + - rejections[id].displayId + '.' - ); - } - } - } -} - -function logError(id, error) { - console.warn('Possible Unhandled Promise Rejection (id: ' + id + '):'); - var errStr = (error && (error.stack || error)) + ''; - errStr.split('\n').forEach(function (line) { - console.warn(' ' + line); - }); -} - -function matchWhitelist(error, list) { - return list.some(function (cls) { - return error instanceof cls; - }); -} \ No newline at end of file diff --git a/node_modules/fbjs/node_modules/promise/setimmediate/synchronous.js b/node_modules/fbjs/node_modules/promise/setimmediate/synchronous.js deleted file mode 100644 index 49399644b..000000000 --- a/node_modules/fbjs/node_modules/promise/setimmediate/synchronous.js +++ /dev/null @@ -1,62 +0,0 @@ -'use strict'; - -var Promise = require('./core.js'); - -module.exports = Promise; -Promise.enableSynchronous = function () { - Promise.prototype.isPending = function() { - return this.getState() == 0; - }; - - Promise.prototype.isFulfilled = function() { - return this.getState() == 1; - }; - - Promise.prototype.isRejected = function() { - return this.getState() == 2; - }; - - Promise.prototype.getValue = function () { - if (this._65 === 3) { - return this._55.getValue(); - } - - if (!this.isFulfilled()) { - throw new Error('Cannot get a value of an unfulfilled promise.'); - } - - return this._55; - }; - - Promise.prototype.getReason = function () { - if (this._65 === 3) { - return this._55.getReason(); - } - - if (!this.isRejected()) { - throw new Error('Cannot get a rejection reason of a non-rejected promise.'); - } - - return this._55; - }; - - Promise.prototype.getState = function () { - if (this._65 === 3) { - return this._55.getState(); - } - if (this._65 === -1 || this._65 === -2) { - return 0; - } - - return this._65; - }; -}; - -Promise.disableSynchronous = function() { - Promise.prototype.isPending = undefined; - Promise.prototype.isFulfilled = undefined; - Promise.prototype.isRejected = undefined; - Promise.prototype.getValue = undefined; - Promise.prototype.getReason = undefined; - Promise.prototype.getState = undefined; -}; diff --git a/node_modules/fbjs/node_modules/promise/src/core.js b/node_modules/fbjs/node_modules/promise/src/core.js deleted file mode 100644 index 312010d92..000000000 --- a/node_modules/fbjs/node_modules/promise/src/core.js +++ /dev/null @@ -1,213 +0,0 @@ -'use strict'; - -var asap = require('asap/raw'); - -function noop() {} - -// States: -// -// 0 - pending -// 1 - fulfilled with _value -// 2 - rejected with _value -// 3 - adopted the state of another promise, _value -// -// once the state is no longer pending (0) it is immutable - -// All `_` prefixed properties will be reduced to `_{random number}` -// at build time to obfuscate them and discourage their use. -// We don't use symbols or Object.defineProperty to fully hide them -// because the performance isn't good enough. - - -// to avoid using try/catch inside critical functions, we -// extract them to here. -var LAST_ERROR = null; -var IS_ERROR = {}; -function getThen(obj) { - try { - return obj.then; - } catch (ex) { - LAST_ERROR = ex; - return IS_ERROR; - } -} - -function tryCallOne(fn, a) { - try { - return fn(a); - } catch (ex) { - LAST_ERROR = ex; - return IS_ERROR; - } -} -function tryCallTwo(fn, a, b) { - try { - fn(a, b); - } catch (ex) { - LAST_ERROR = ex; - return IS_ERROR; - } -} - -module.exports = Promise; - -function Promise(fn) { - if (typeof this !== 'object') { - throw new TypeError('Promises must be constructed via new'); - } - if (typeof fn !== 'function') { - throw new TypeError('Promise constructor\'s argument is not a function'); - } - this._deferredState = 0; - this._state = 0; - this._value = null; - this._deferreds = null; - if (fn === noop) return; - doResolve(fn, this); -} -Promise._onHandle = null; -Promise._onReject = null; -Promise._noop = noop; - -Promise.prototype.then = function(onFulfilled, onRejected) { - if (this.constructor !== Promise) { - return safeThen(this, onFulfilled, onRejected); - } - var res = new Promise(noop); - handle(this, new Handler(onFulfilled, onRejected, res)); - return res; -}; - -function safeThen(self, onFulfilled, onRejected) { - return new self.constructor(function (resolve, reject) { - var res = new Promise(noop); - res.then(resolve, reject); - handle(self, new Handler(onFulfilled, onRejected, res)); - }); -} -function handle(self, deferred) { - while (self._state === 3) { - self = self._value; - } - if (Promise._onHandle) { - Promise._onHandle(self); - } - if (self._state === 0) { - if (self._deferredState === 0) { - self._deferredState = 1; - self._deferreds = deferred; - return; - } - if (self._deferredState === 1) { - self._deferredState = 2; - self._deferreds = [self._deferreds, deferred]; - return; - } - self._deferreds.push(deferred); - return; - } - handleResolved(self, deferred); -} - -function handleResolved(self, deferred) { - asap(function() { - var cb = self._state === 1 ? deferred.onFulfilled : deferred.onRejected; - if (cb === null) { - if (self._state === 1) { - resolve(deferred.promise, self._value); - } else { - reject(deferred.promise, self._value); - } - return; - } - var ret = tryCallOne(cb, self._value); - if (ret === IS_ERROR) { - reject(deferred.promise, LAST_ERROR); - } else { - resolve(deferred.promise, ret); - } - }); -} -function resolve(self, newValue) { - // Promise Resolution Procedure: https://github.com/promises-aplus/promises-spec#the-promise-resolution-procedure - if (newValue === self) { - return reject( - self, - new TypeError('A promise cannot be resolved with itself.') - ); - } - if ( - newValue && - (typeof newValue === 'object' || typeof newValue === 'function') - ) { - var then = getThen(newValue); - if (then === IS_ERROR) { - return reject(self, LAST_ERROR); - } - if ( - then === self.then && - newValue instanceof Promise - ) { - self._state = 3; - self._value = newValue; - finale(self); - return; - } else if (typeof then === 'function') { - doResolve(then.bind(newValue), self); - return; - } - } - self._state = 1; - self._value = newValue; - finale(self); -} - -function reject(self, newValue) { - self._state = 2; - self._value = newValue; - if (Promise._onReject) { - Promise._onReject(self, newValue); - } - finale(self); -} -function finale(self) { - if (self._deferredState === 1) { - handle(self, self._deferreds); - self._deferreds = null; - } - if (self._deferredState === 2) { - for (var i = 0; i < self._deferreds.length; i++) { - handle(self, self._deferreds[i]); - } - self._deferreds = null; - } -} - -function Handler(onFulfilled, onRejected, promise){ - this.onFulfilled = typeof onFulfilled === 'function' ? onFulfilled : null; - this.onRejected = typeof onRejected === 'function' ? onRejected : null; - this.promise = promise; -} - -/** - * Take a potentially misbehaving resolver function and make sure - * onFulfilled and onRejected are only called once. - * - * Makes no guarantees about asynchrony. - */ -function doResolve(fn, promise) { - var done = false; - var res = tryCallTwo(fn, function (value) { - if (done) return; - done = true; - resolve(promise, value); - }, function (reason) { - if (done) return; - done = true; - reject(promise, reason); - }); - if (!done && res === IS_ERROR) { - done = true; - reject(promise, LAST_ERROR); - } -} diff --git a/node_modules/fbjs/node_modules/promise/src/done.js b/node_modules/fbjs/node_modules/promise/src/done.js deleted file mode 100644 index f879317d0..000000000 --- a/node_modules/fbjs/node_modules/promise/src/done.js +++ /dev/null @@ -1,13 +0,0 @@ -'use strict'; - -var Promise = require('./core.js'); - -module.exports = Promise; -Promise.prototype.done = function (onFulfilled, onRejected) { - var self = arguments.length ? this.then.apply(this, arguments) : this; - self.then(null, function (err) { - setTimeout(function () { - throw err; - }, 0); - }); -}; diff --git a/node_modules/fbjs/node_modules/promise/src/es6-extensions.js b/node_modules/fbjs/node_modules/promise/src/es6-extensions.js deleted file mode 100644 index 04358131b..000000000 --- a/node_modules/fbjs/node_modules/promise/src/es6-extensions.js +++ /dev/null @@ -1,107 +0,0 @@ -'use strict'; - -//This file contains the ES6 extensions to the core Promises/A+ API - -var Promise = require('./core.js'); - -module.exports = Promise; - -/* Static Functions */ - -var TRUE = valuePromise(true); -var FALSE = valuePromise(false); -var NULL = valuePromise(null); -var UNDEFINED = valuePromise(undefined); -var ZERO = valuePromise(0); -var EMPTYSTRING = valuePromise(''); - -function valuePromise(value) { - var p = new Promise(Promise._noop); - p._state = 1; - p._value = value; - return p; -} -Promise.resolve = function (value) { - if (value instanceof Promise) return value; - - if (value === null) return NULL; - if (value === undefined) return UNDEFINED; - if (value === true) return TRUE; - if (value === false) return FALSE; - if (value === 0) return ZERO; - if (value === '') return EMPTYSTRING; - - if (typeof value === 'object' || typeof value === 'function') { - try { - var then = value.then; - if (typeof then === 'function') { - return new Promise(then.bind(value)); - } - } catch (ex) { - return new Promise(function (resolve, reject) { - reject(ex); - }); - } - } - return valuePromise(value); -}; - -Promise.all = function (arr) { - var args = Array.prototype.slice.call(arr); - - return new Promise(function (resolve, reject) { - if (args.length === 0) return resolve([]); - var remaining = args.length; - function res(i, val) { - if (val && (typeof val === 'object' || typeof val === 'function')) { - if (val instanceof Promise && val.then === Promise.prototype.then) { - while (val._state === 3) { - val = val._value; - } - if (val._state === 1) return res(i, val._value); - if (val._state === 2) reject(val._value); - val.then(function (val) { - res(i, val); - }, reject); - return; - } else { - var then = val.then; - if (typeof then === 'function') { - var p = new Promise(then.bind(val)); - p.then(function (val) { - res(i, val); - }, reject); - return; - } - } - } - args[i] = val; - if (--remaining === 0) { - resolve(args); - } - } - for (var i = 0; i < args.length; i++) { - res(i, args[i]); - } - }); -}; - -Promise.reject = function (value) { - return new Promise(function (resolve, reject) { - reject(value); - }); -}; - -Promise.race = function (values) { - return new Promise(function (resolve, reject) { - values.forEach(function(value){ - Promise.resolve(value).then(resolve, reject); - }); - }); -}; - -/* Prototype Methods */ - -Promise.prototype['catch'] = function (onRejected) { - return this.then(null, onRejected); -}; diff --git a/node_modules/fbjs/node_modules/promise/src/finally.js b/node_modules/fbjs/node_modules/promise/src/finally.js deleted file mode 100644 index f5ee0b98a..000000000 --- a/node_modules/fbjs/node_modules/promise/src/finally.js +++ /dev/null @@ -1,16 +0,0 @@ -'use strict'; - -var Promise = require('./core.js'); - -module.exports = Promise; -Promise.prototype['finally'] = function (f) { - return this.then(function (value) { - return Promise.resolve(f()).then(function () { - return value; - }); - }, function (err) { - return Promise.resolve(f()).then(function () { - throw err; - }); - }); -}; diff --git a/node_modules/fbjs/node_modules/promise/src/index.js b/node_modules/fbjs/node_modules/promise/src/index.js deleted file mode 100644 index 6e674f387..000000000 --- a/node_modules/fbjs/node_modules/promise/src/index.js +++ /dev/null @@ -1,8 +0,0 @@ -'use strict'; - -module.exports = require('./core.js'); -require('./done.js'); -require('./finally.js'); -require('./es6-extensions.js'); -require('./node-extensions.js'); -require('./synchronous.js'); diff --git a/node_modules/fbjs/node_modules/promise/src/node-extensions.js b/node_modules/fbjs/node_modules/promise/src/node-extensions.js deleted file mode 100644 index 157cddc2b..000000000 --- a/node_modules/fbjs/node_modules/promise/src/node-extensions.js +++ /dev/null @@ -1,130 +0,0 @@ -'use strict'; - -// This file contains then/promise specific extensions that are only useful -// for node.js interop - -var Promise = require('./core.js'); -var asap = require('asap'); - -module.exports = Promise; - -/* Static Functions */ - -Promise.denodeify = function (fn, argumentCount) { - if ( - typeof argumentCount === 'number' && argumentCount !== Infinity - ) { - return denodeifyWithCount(fn, argumentCount); - } else { - return denodeifyWithoutCount(fn); - } -}; - -var callbackFn = ( - 'function (err, res) {' + - 'if (err) { rj(err); } else { rs(res); }' + - '}' -); -function denodeifyWithCount(fn, argumentCount) { - var args = []; - for (var i = 0; i < argumentCount; i++) { - args.push('a' + i); - } - var body = [ - 'return function (' + args.join(',') + ') {', - 'var self = this;', - 'return new Promise(function (rs, rj) {', - 'var res = fn.call(', - ['self'].concat(args).concat([callbackFn]).join(','), - ');', - 'if (res &&', - '(typeof res === "object" || typeof res === "function") &&', - 'typeof res.then === "function"', - ') {rs(res);}', - '});', - '};' - ].join(''); - return Function(['Promise', 'fn'], body)(Promise, fn); -} -function denodeifyWithoutCount(fn) { - var fnLength = Math.max(fn.length - 1, 3); - var args = []; - for (var i = 0; i < fnLength; i++) { - args.push('a' + i); - } - var body = [ - 'return function (' + args.join(',') + ') {', - 'var self = this;', - 'var args;', - 'var argLength = arguments.length;', - 'if (arguments.length > ' + fnLength + ') {', - 'args = new Array(arguments.length + 1);', - 'for (var i = 0; i < arguments.length; i++) {', - 'args[i] = arguments[i];', - '}', - '}', - 'return new Promise(function (rs, rj) {', - 'var cb = ' + callbackFn + ';', - 'var res;', - 'switch (argLength) {', - args.concat(['extra']).map(function (_, index) { - return ( - 'case ' + (index) + ':' + - 'res = fn.call(' + ['self'].concat(args.slice(0, index)).concat('cb').join(',') + ');' + - 'break;' - ); - }).join(''), - 'default:', - 'args[argLength] = cb;', - 'res = fn.apply(self, args);', - '}', - - 'if (res &&', - '(typeof res === "object" || typeof res === "function") &&', - 'typeof res.then === "function"', - ') {rs(res);}', - '});', - '};' - ].join(''); - - return Function( - ['Promise', 'fn'], - body - )(Promise, fn); -} - -Promise.nodeify = function (fn) { - return function () { - var args = Array.prototype.slice.call(arguments); - var callback = - typeof args[args.length - 1] === 'function' ? args.pop() : null; - var ctx = this; - try { - return fn.apply(this, arguments).nodeify(callback, ctx); - } catch (ex) { - if (callback === null || typeof callback == 'undefined') { - return new Promise(function (resolve, reject) { - reject(ex); - }); - } else { - asap(function () { - callback.call(ctx, ex); - }) - } - } - } -}; - -Promise.prototype.nodeify = function (callback, ctx) { - if (typeof callback != 'function') return this; - - this.then(function (value) { - asap(function () { - callback.call(ctx, null, value); - }); - }, function (err) { - asap(function () { - callback.call(ctx, err); - }); - }); -}; diff --git a/node_modules/fbjs/node_modules/promise/src/rejection-tracking.js b/node_modules/fbjs/node_modules/promise/src/rejection-tracking.js deleted file mode 100644 index 33a59a196..000000000 --- a/node_modules/fbjs/node_modules/promise/src/rejection-tracking.js +++ /dev/null @@ -1,113 +0,0 @@ -'use strict'; - -var Promise = require('./core'); - -var DEFAULT_WHITELIST = [ - ReferenceError, - TypeError, - RangeError -]; - -var enabled = false; -exports.disable = disable; -function disable() { - enabled = false; - Promise._onHandle = null; - Promise._onReject = null; -} - -exports.enable = enable; -function enable(options) { - options = options || {}; - if (enabled) disable(); - enabled = true; - var id = 0; - var displayId = 0; - var rejections = {}; - Promise._onHandle = function (promise) { - if ( - promise._state === 2 && // IS REJECTED - rejections[promise._rejectionId] - ) { - if (rejections[promise._rejectionId].logged) { - onHandled(promise._rejectionId); - } else { - clearTimeout(rejections[promise._rejectionId].timeout); - } - delete rejections[promise._rejectionId]; - } - }; - Promise._onReject = function (promise, err) { - if (promise._deferredState === 0) { // not yet handled - promise._rejectionId = id++; - rejections[promise._rejectionId] = { - displayId: null, - error: err, - timeout: setTimeout( - onUnhandled.bind(null, promise._rejectionId), - // For reference errors and type errors, this almost always - // means the programmer made a mistake, so log them after just - // 100ms - // otherwise, wait 2 seconds to see if they get handled - matchWhitelist(err, DEFAULT_WHITELIST) - ? 100 - : 2000 - ), - logged: false - }; - } - }; - function onUnhandled(id) { - if ( - options.allRejections || - matchWhitelist( - rejections[id].error, - options.whitelist || DEFAULT_WHITELIST - ) - ) { - rejections[id].displayId = displayId++; - if (options.onUnhandled) { - rejections[id].logged = true; - options.onUnhandled( - rejections[id].displayId, - rejections[id].error - ); - } else { - rejections[id].logged = true; - logError( - rejections[id].displayId, - rejections[id].error - ); - } - } - } - function onHandled(id) { - if (rejections[id].logged) { - if (options.onHandled) { - options.onHandled(rejections[id].displayId, rejections[id].error); - } else if (!rejections[id].onUnhandled) { - console.warn( - 'Promise Rejection Handled (id: ' + rejections[id].displayId + '):' - ); - console.warn( - ' This means you can ignore any previous messages of the form "Possible Unhandled Promise Rejection" with id ' + - rejections[id].displayId + '.' - ); - } - } - } -} - -function logError(id, error) { - console.warn('Possible Unhandled Promise Rejection (id: ' + id + '):'); - var errStr = (error && (error.stack || error)) + ''; - errStr.split('\n').forEach(function (line) { - console.warn(' ' + line); - }); -} - -function matchWhitelist(error, list) { - return list.some(function (cls) { - return error instanceof cls; - }); -} \ No newline at end of file diff --git a/node_modules/fbjs/node_modules/promise/src/synchronous.js b/node_modules/fbjs/node_modules/promise/src/synchronous.js deleted file mode 100644 index 38b228f52..000000000 --- a/node_modules/fbjs/node_modules/promise/src/synchronous.js +++ /dev/null @@ -1,62 +0,0 @@ -'use strict'; - -var Promise = require('./core.js'); - -module.exports = Promise; -Promise.enableSynchronous = function () { - Promise.prototype.isPending = function() { - return this.getState() == 0; - }; - - Promise.prototype.isFulfilled = function() { - return this.getState() == 1; - }; - - Promise.prototype.isRejected = function() { - return this.getState() == 2; - }; - - Promise.prototype.getValue = function () { - if (this._state === 3) { - return this._value.getValue(); - } - - if (!this.isFulfilled()) { - throw new Error('Cannot get a value of an unfulfilled promise.'); - } - - return this._value; - }; - - Promise.prototype.getReason = function () { - if (this._state === 3) { - return this._value.getReason(); - } - - if (!this.isRejected()) { - throw new Error('Cannot get a rejection reason of a non-rejected promise.'); - } - - return this._value; - }; - - Promise.prototype.getState = function () { - if (this._state === 3) { - return this._value.getState(); - } - if (this._state === -1 || this._state === -2) { - return 0; - } - - return this._state; - }; -}; - -Promise.disableSynchronous = function() { - Promise.prototype.isPending = undefined; - Promise.prototype.isFulfilled = undefined; - Promise.prototype.isRejected = undefined; - Promise.prototype.getValue = undefined; - Promise.prototype.getReason = undefined; - Promise.prototype.getState = undefined; -}; diff --git a/node_modules/fbjs/package.json b/node_modules/fbjs/package.json deleted file mode 100644 index 2a5a7085e..000000000 --- a/node_modules/fbjs/package.json +++ /dev/null @@ -1,80 +0,0 @@ -{ - "name": "fbjs", - "version": "0.8.16", - "description": "A collection of utility libraries used by other Facebook JS projects", - "main": "index.js", - "repository": "facebook/fbjs", - "scripts": { - "build": "gulp build", - "postbuild": "node scripts/node/check-lib-requires.js lib", - "lint": "eslint .", - "prepublish": "npm run build", - "pretest": "node node_modules/fbjs-scripts/node/check-dev-engines.js package.json", - "test": "NODE_ENV=test jest", - "test-babel-presets": "cd babel-preset && npm install && npm test", - "typecheck": "flow check src" - }, - "devDependencies": { - "babel-eslint": "^6.0.3", - "babel-preset-fbjs": "file:babel-preset", - "del": "^2.2.0", - "eslint": "^2.8.0", - "fbjs-scripts": "file:scripts", - "flow-bin": "^0.38.0", - "gulp": "^3.9.1", - "gulp-babel": "^6.1.2", - "gulp-flatten": "^0.2.0", - "gulp-rename": "^1.2.2", - "immutable": "^3.7.6", - "jest-cli": "^0.9.2", - "merge-stream": "^1.0.0", - "run-sequence": "^1.1.5" - }, - "license": "MIT", - "files": [ - "LICENSE", - "README.md", - "flow/", - "index.js", - "lib/", - "module-map.json" - ], - "jest": { - "modulePathIgnorePatterns": [ - "/lib/", - "/node_modules/" - ], - "persistModuleRegistryBetweenSpecs": true, - "preprocessorIgnorePatterns": [ - "/node_modules/" - ], - "rootDir": "", - "scriptPreprocessor": "node_modules/fbjs-scripts/jest/preprocessor.js", - "setupEnvScriptFile": "node_modules/fbjs-scripts/jest/environment.js", - "testPathDirs": [ - "/src" - ], - "unmockedModulePathPatterns": [ - "/node_modules/", - "/src/(?!(__forks__/fetch.js$|fetch/))" - ] - }, - "dependencies": { - "core-js": "^1.0.0", - "isomorphic-fetch": "^2.1.1", - "loose-envify": "^1.0.0", - "object-assign": "^4.1.0", - "promise": "^7.1.1", - "setimmediate": "^1.0.5", - "ua-parser-js": "^0.7.9" - }, - "devEngines": { - "node": ">=4.x", - "npm": ">=2.x" - }, - "browserify": { - "transform": [ - "loose-envify" - ] - } -} -- cgit v1.2.3