forked from enviPath/enviPy
Current Dev State
This commit is contained in:
219
static/js/ketcher2/node_modules/es5-ext/CHANGELOG.md
generated
vendored
Normal file
219
static/js/ketcher2/node_modules/es5-ext/CHANGELOG.md
generated
vendored
Normal file
@ -0,0 +1,219 @@
|
||||
# Change Log
|
||||
|
||||
All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
|
||||
|
||||
<a name="0.10.35"></a>
|
||||
## [0.10.35](https://github.com/medikoo/es5-ext/compare/v0.10.34...v0.10.35) (2017-10-13)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **Object.copy:** do not upgrade primitives to objects ([dd4d88f](https://github.com/medikoo/es5-ext/commit/dd4d88f))
|
||||
|
||||
|
||||
|
||||
<a name="0.10.34"></a>
|
||||
## [0.10.34](https://github.com/medikoo/es5-ext/compare/v0.10.33...v0.10.34) (2017-10-13)
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **copyDeep:** duplicate only recursive instances ([bba529a](https://github.com/medikoo/es5-ext/commit/bba529a))
|
||||
|
||||
|
||||
|
||||
<a name="0.10.33"></a>
|
||||
## [0.10.33](https://github.com/medikoo/es5-ext/compare/v0.10.32...v0.10.33) (2017-10-13)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **Object.assignDeep:** relax input validation ([1baf57d](https://github.com/medikoo/es5-ext/commit/1baf57d))
|
||||
|
||||
|
||||
|
||||
<a name="0.10.32"></a>
|
||||
## [0.10.32](https://github.com/medikoo/es5-ext/compare/v0.10.31...v0.10.32) (2017-10-13)
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* Object.assignDeep ([2345e0b](https://github.com/medikoo/es5-ext/commit/2345e0b))
|
||||
|
||||
|
||||
|
||||
<a name="0.10.31"></a>
|
||||
## [0.10.31](https://github.com/medikoo/es5-ext/compare/v0.10.30...v0.10.31) (2017-10-09)
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* Object.isPlainFunction utility ([031be0a](https://github.com/medikoo/es5-ext/commit/031be0a))
|
||||
|
||||
|
||||
|
||||
<a name="0.10.30"></a>
|
||||
## [0.10.30](https://github.com/medikoo/es5-ext/compare/v0.10.29...v0.10.30) (2017-08-25)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* value stringification for error message ([37bb96b](https://github.com/medikoo/es5-ext/commit/37bb96b))
|
||||
|
||||
|
||||
|
||||
<a name="0.10.29"></a>
|
||||
## [0.10.29](https://github.com/medikoo/es5-ext/compare/v0.10.28...v0.10.29) (2017-08-18)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* string.repeat after recent regression ([b02fab4](https://github.com/medikoo/es5-ext/commit/b02fab4))
|
||||
|
||||
|
||||
|
||||
<a name="0.10.28"></a>
|
||||
## [0.10.28](https://github.com/medikoo/es5-ext/compare/v0.10.27...v0.10.28) (2017-08-18)
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* array.isEmpty method ([b0cfbdd](https://github.com/medikoo/es5-ext/commit/b0cfbdd))
|
||||
* improve new lines representation ([860fe8b](https://github.com/medikoo/es5-ext/commit/860fe8b))
|
||||
* Object.ensureArray util ([595c341](https://github.com/medikoo/es5-ext/commit/595c341))
|
||||
* toShortStringRepresentation util ([6842d06](https://github.com/medikoo/es5-ext/commit/6842d06))
|
||||
|
||||
|
||||
|
||||
<a name="0.10.27"></a>
|
||||
## [0.10.27](https://github.com/medikoo/es5-ext/compare/v0.10.26...v0.10.27) (2017-08-11)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* isNumberValue should not crash on non-coercible values ([0db765e](https://github.com/medikoo/es5-ext/commit/0db765e))
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* add Object.ensureFiniteNumber util ([11c67f5](https://github.com/medikoo/es5-ext/commit/11c67f5))
|
||||
* add Object.isFiniteNumber util ([fe5b55a](https://github.com/medikoo/es5-ext/commit/fe5b55a))
|
||||
|
||||
|
||||
|
||||
<a name="0.10.26"></a>
|
||||
## [0.10.26](https://github.com/medikoo/es5-ext/compare/v0.10.25...v0.10.26) (2017-08-02)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **general:** ensure optionalChaining in index ([3df879a](https://github.com/medikoo/es5-ext/commit/3df879a))
|
||||
|
||||
|
||||
|
||||
<a name="0.10.25"></a>
|
||||
## [0.10.25](https://github.com/medikoo/es5-ext/compare/v0.10.24...v0.10.25) (2017-08-02)
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **general:** optionalChaining utility ([26332b5](https://github.com/medikoo/es5-ext/commit/26332b5))
|
||||
|
||||
|
||||
|
||||
<a name="0.10.24"></a>
|
||||
## [0.10.24](https://github.com/medikoo/es5-ext/compare/v0.10.23...v0.10.24) (2017-07-10)
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* resolve global with CSP safe method ([d386449](https://github.com/medikoo/es5-ext/commit/d386449))
|
||||
|
||||
|
||||
|
||||
<a name="0.10.23"></a>
|
||||
## [0.10.23](https://github.com/medikoo/es5-ext/compare/v0.10.22...v0.10.23) (2017-06-05)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **Error.custom:** allow non-string code ([e8db3a0](https://github.com/medikoo/es5-ext/commit/e8db3a0))
|
||||
* **Error.custom:** improve `ext` argument detection ([0edbfbc](https://github.com/medikoo/es5-ext/commit/0edbfbc))
|
||||
|
||||
|
||||
|
||||
<a name="0.10.22"></a>
|
||||
## [0.10.22](https://github.com/medikoo/es5-ext/compare/v0.10.21...v0.10.22) (2017-05-31)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* ensure proper symbols stringification in early implementations ([ce51900](https://github.com/medikoo/es5-ext/commit/ce51900))
|
||||
|
||||
|
||||
|
||||
<a name="0.10.21"></a>
|
||||
## [0.10.21](https://github.com/medikoo/es5-ext/compare/v0.10.20...v0.10.21) (2017-05-22)
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* support arrow functions in Function/#/to-tring-tokens.js ([ad3de1e](https://github.com/medikoo/es5-ext/commit/ad3de1e))
|
||||
|
||||
|
||||
|
||||
<a name="0.10.20"></a>
|
||||
## [0.10.20](https://github.com/medikoo/es5-ext/compare/v0.10.19...v0.10.20) (2017-05-17)
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* if listed copy not only if own property ([d7e7cef](https://github.com/medikoo/es5-ext/commit/d7e7cef))
|
||||
* support `ensure` option in Object.copy ([295326f](https://github.com/medikoo/es5-ext/commit/295326f))
|
||||
|
||||
|
||||
|
||||
<a name="0.10.19"></a>
|
||||
## [0.10.19](https://github.com/medikoo/es5-ext/compare/v0.10.18...v0.10.19) (2017-05-17)
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* support propertyNames option in Object.copy ([5442279](https://github.com/medikoo/es5-ext/commit/5442279))
|
||||
|
||||
|
||||
|
||||
<a name="0.10.18"></a>
|
||||
## [0.10.18](https://github.com/medikoo/es5-ext/compare/v0.10.17...v0.10.18) (2017-05-15)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* take all changes in safeToString ([3c5cd12](https://github.com/medikoo/es5-ext/commit/3c5cd12))
|
||||
|
||||
|
||||
|
||||
<a name="0.10.17"></a>
|
||||
## [0.10.17](https://github.com/medikoo/es5-ext/compare/v0.10.16...v0.10.17) (2017-05-15)
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* introduce Object.ensurePromise ([46a2f45](https://github.com/medikoo/es5-ext/commit/46a2f45))
|
||||
* introduce Object.isPromise ([27aecc8](https://github.com/medikoo/es5-ext/commit/27aecc8))
|
||||
* introduce safeToString ([0cc6a7b](https://github.com/medikoo/es5-ext/commit/0cc6a7b))
|
||||
|
||||
|
||||
|
||||
<a name="0.10.16"></a>
|
||||
## [0.10.16](https://github.com/medikoo/es5-ext/compare/v0.10.15...v0.10.16) (2017-05-09)
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* add String.prototype.count ([2e53241](https://github.com/medikoo/es5-ext/commit/2e53241))
|
||||
|
||||
|
||||
## Changelog for previous versions
|
||||
|
||||
See `CHANGES` file
|
||||
650
static/js/ketcher2/node_modules/es5-ext/CHANGES
generated
vendored
Normal file
650
static/js/ketcher2/node_modules/es5-ext/CHANGES
generated
vendored
Normal file
@ -0,0 +1,650 @@
|
||||
For recent changelog see CHANGELOG.md
|
||||
|
||||
-----
|
||||
|
||||
v0.10.15 -- 2017.03.20
|
||||
* Fix Object.isValue (it was actually isNotValue)
|
||||
|
||||
v0.10.14 -- 2017.03.15
|
||||
* Object.isValue util
|
||||
|
||||
v0.10.13 -- 2017.03.13
|
||||
* Introduce JSON.safeStringify
|
||||
* Improve message handling in error/custom
|
||||
* Fix Array#concat shim
|
||||
* Improve Array#flatten algorithm so it's stack trace friendly
|
||||
* Make Object.isObject ES3 compatible
|
||||
|
||||
v0.10.12 -- 2016.07.01
|
||||
* Ensure symbols are copied in Object.mixin
|
||||
* Prevent RangeError errors in array#flatten
|
||||
* Do not validate invalidate dates in validDate
|
||||
|
||||
v0.10.11 -- 2015.12.18
|
||||
* Ensure that check for implementation of RegExp flags doesn't crash in V8 (thanks @mathiasbynens)
|
||||
|
||||
v0.10.10 -- 2015.12.11
|
||||
* Add Object.isNumberValue util
|
||||
|
||||
v0.10.9 -- 2015.12.01
|
||||
* Add Object.ensureNaturalNumber and Object.ensureNaturalNumberValue
|
||||
|
||||
v0.10.8 -- 2015.10.02
|
||||
* Add Number.isNatural
|
||||
* Add Object.find and Object.findKey
|
||||
* Support arrays in Object.copyDeep
|
||||
* Fix iteration issue in forEachRight and someRight
|
||||
* Fix detection of native sinh
|
||||
* Depend on es6-symbol v3
|
||||
|
||||
v0.10.7 -- 2015.04.22
|
||||
* New utlitities. They're convention differs from v0.10, as they were supposed to land in v1.
|
||||
Still they're non breaking and start the conventions to be used in v1
|
||||
* Object.validateArrayLike
|
||||
* Object.validateArrayLikeObject
|
||||
* Object.validateStringifiable
|
||||
* Object.validateStringifiableValue
|
||||
* Universal utilities for array-like/iterable objects
|
||||
* Iterable.is
|
||||
* Iterable.validate
|
||||
* Iterable.validateObject
|
||||
* Iterable.forEach
|
||||
* Fix camelToHyphen resolution, it must be absolutely reversable by hyphenToCamel
|
||||
* Fix calculations of large numbers in Math.tanh
|
||||
* Fix algorithm of Math.sinh
|
||||
* Fix indexes to not use real symbols
|
||||
* Fix length of String.fromCodePoint
|
||||
* Fix tests of Array#copyWithin
|
||||
* Update Travis CI configuration
|
||||
|
||||
v0.10.6 -- 2015.02.02
|
||||
* Fix handling of infinite values in Math.trunc
|
||||
* Fix handling of getters in Object.normalizeOptions
|
||||
|
||||
v0.10.5 -- 2015.01.20
|
||||
* Add Function#toStringTokens
|
||||
* Add Object.serialize and Object.unserialize
|
||||
* Add String.randomUniq
|
||||
* Fix Strin#camelToHyphen issue with tokens that end with digit
|
||||
* Optimise Number.isInteger logic
|
||||
* Improve documentation
|
||||
* Configure lint scripts
|
||||
* Fix spelling of LICENSE
|
||||
|
||||
v0.10.4 -- 2014.04.30
|
||||
* Assure maximum spec compliance of Array.of and Array.from (thanks @mathiasbynens)
|
||||
* Improve documentations
|
||||
|
||||
v0.10.3 -- 2014.04.29
|
||||
Provide accurate iterators handling:
|
||||
* Array.from improvements:
|
||||
* Assure right unicode symbols resolution when processing strings in Array.from
|
||||
* Rely on ES6 symbol shim and use native @@iterator Symbol if provided by environment
|
||||
* Add methods:
|
||||
* Array.prototype.entries
|
||||
* Array.prototype.keys
|
||||
* Array.prototype.values
|
||||
* Array.prototype[@@iterator]
|
||||
* String.prototype[@@iterator]
|
||||
|
||||
Improve documentation
|
||||
|
||||
v0.10.2 -- 2014.04.24
|
||||
- Simplify and deprecate `isCallable`. It seems in ES5 based engines there are
|
||||
no callable objects which are `typeof obj !== 'function'`
|
||||
- Update Array.from map callback signature (up to latest resolution of TC39)
|
||||
- Improve documentation
|
||||
|
||||
v0.10.1 -- 2014.04.14
|
||||
Bump version for npm
|
||||
(Workaround for accidental premature publish & unpublish of v0.10.0 a while ago)
|
||||
|
||||
v0.10.0 -- 2014.04.13
|
||||
Major update:
|
||||
- All methods and function specified for ECMAScript 6 are now introduced as
|
||||
shims accompanied with functions through which (optionally) they can be
|
||||
implementend on native objects
|
||||
- Filename convention was changed to shorter and strictly lower case names. e.g.
|
||||
`lib/String/prototype/starts-with` became `string/#/starts-with`
|
||||
- Generated functions are guaranteed to have expected length
|
||||
- Objects with null prototype (created via `Object.create(null)`) are widely
|
||||
supported (older version have crashed due to implied `obj.hasOwnProperty` and
|
||||
related invocations)
|
||||
- Support array subclasses
|
||||
- When handling lists do not limit its length to Uint32 range
|
||||
- Use newly introduced `Object.eq` for strict equality in place of `Object.is`
|
||||
- Iteration of Object have been improved so properties that were hidden or
|
||||
removed after iteration started are not iterated.
|
||||
|
||||
Additions:
|
||||
- `Array.isPlainArray`
|
||||
- `Array.validArray`
|
||||
- `Array.prototype.concat` (as updated with ES6)
|
||||
- `Array.prototype.copyWithin` (as introduced with ES6)
|
||||
- `Array.prototype.fill` (as introduced with ES6)
|
||||
- `Array.prototype.filter` (as updated with ES6)
|
||||
- `Array.prototype.findIndex` (as introduced with ES6)
|
||||
- `Array.prototype.map` (as updated with ES6)
|
||||
- `Array.prototype.separate`
|
||||
- `Array.prototype.slice` (as updated with ES6)
|
||||
- `Array.prototype.splice` (as updated with ES6)
|
||||
- `Function.prototype.copy`
|
||||
- `Math.acosh` (as introduced with ES6)
|
||||
- `Math.atanh` (as introduced with ES6)
|
||||
- `Math.cbrt` (as introduced with ES6)
|
||||
- `Math.clz32` (as introduced with ES6)
|
||||
- `Math.cosh` (as introduced with ES6)
|
||||
- `Math.expm1` (as introduced with ES6)
|
||||
- `Math.fround` (as introduced with ES6)
|
||||
- `Math.hypot` (as introduced with ES6)
|
||||
- `Math.imul` (as introduced with ES6)
|
||||
- `Math.log2` (as introduced with ES6)
|
||||
- `Math.log10` (as introduced with ES6)
|
||||
- `Math.log1p` (as introduced with ES6)
|
||||
- `Math.sinh` (as introduced with ES6)
|
||||
- `Math.tanh` (as introduced with ES6)
|
||||
- `Math.trunc` (as introduced with ES6)
|
||||
- `Number.EPSILON` (as introduced with ES6)
|
||||
- `Number.MIN_SAFE_INTEGER` (as introduced with ES6)
|
||||
- `Number.MAX_SAFE_INTEGER` (as introduced with ES6)
|
||||
- `Number.isFinite` (as introduced with ES6)
|
||||
- `Number.isInteger` (as introduced with ES6)
|
||||
- `Number.isSafeInteger` (as introduced with ES6)
|
||||
- `Object.create` (with fix for V8 issue which disallows prototype turn of
|
||||
objects derived from null
|
||||
- `Object.eq` - Less restrictive version of `Object.is` based on SameValueZero
|
||||
algorithm
|
||||
- `Object.firstKey`
|
||||
- `Object.keys` (as updated with ES6)
|
||||
- `Object.mixinPrototypes`
|
||||
- `Object.primitiveSet`
|
||||
- `Object.setPrototypeOf` (as introduced with ES6)
|
||||
- `Object.validObject`
|
||||
- `RegExp.escape`
|
||||
- `RegExp.prototype.match` (as introduced with ES6)
|
||||
- `RegExp.prototype.replace` (as introduced with ES6)
|
||||
- `RegExp.prototype.search` (as introduced with ES6)
|
||||
- `RegExp.prototype.split` (as introduced with ES6)
|
||||
- `RegExp.prototype.sticky` (as introduced with ES6)
|
||||
- `RegExp.prototype.unicode` (as introduced with ES6)
|
||||
- `String.fromCodePoint` (as introduced with ES6)
|
||||
- `String.raw` (as introduced with ES6)
|
||||
- `String.prototype.at`
|
||||
- `String.prototype.codePointAt` (as introduced with ES6)
|
||||
- `String.prototype.normalize` (as introduced with ES6)
|
||||
- `String.prototype.plainReplaceAll`
|
||||
|
||||
Removals:
|
||||
- `reserved` set
|
||||
- `Array.prototype.commonLeft`
|
||||
- `Function.insert`
|
||||
- `Function.remove`
|
||||
- `Function.prototype.silent`
|
||||
- `Function.prototype.wrap`
|
||||
- `Object.descriptor` Move to external `d` project.
|
||||
See: https://github.com/medikoo/d
|
||||
- `Object.diff`
|
||||
- `Object.extendDeep`
|
||||
- `Object.reduce`
|
||||
- `Object.values`
|
||||
- `String.prototype.trimCommonLeft`
|
||||
|
||||
Renames:
|
||||
- `Function.i` into `Function.identity`
|
||||
- `Function.k` into `Function.constant`
|
||||
- `Number.toInt` into `Number.toInteger`
|
||||
- `Number.toUint` into `Number.toPosInteger`
|
||||
- `Object.extend` into `Object.assign` (as introduced in ES 6)
|
||||
- `Object.extendProperties` into `Object.mixin`, with improved internal
|
||||
handling, so it matches temporarily specified `Object.mixin` for ECMAScript 6
|
||||
- `Object.isList` into `Object.isArrayLike`
|
||||
- `Object.mapToArray` into `Object.toArray` (with fixed function length)
|
||||
- `Object.toPlainObject` into `Object.normalizeOptions` (as this is the real
|
||||
use case where we use this function)
|
||||
- `Function.prototype.chain` into `Function.prototype.compose`
|
||||
- `Function.prototype.match` into `Function.prototype.spread`
|
||||
- `String.prototype.format` into `String.formatMethod`
|
||||
|
||||
Improvements & Fixes:
|
||||
- Remove workaround for primitive values handling in object iterators
|
||||
- `Array.from`: Update so it follows ES 6 spec
|
||||
- `Array.prototype.compact`: filters just null and undefined values
|
||||
(not all falsies)
|
||||
- `Array.prototype.eIndexOf` and `Array.prototype.eLastIndexOf`: fix position
|
||||
handling, improve internals
|
||||
- `Array.prototype.find`: return undefined not null, in case of not found
|
||||
(follow ES 6)
|
||||
- `Array.prototype.remove` fix function length
|
||||
- `Error.custom`: simplify, Custom class case is addressed by outer
|
||||
`error-create` project -> https://github.com/medikoo/error-create
|
||||
- `Error.isError` true only for Error instances (remove detection of host
|
||||
Exception objects)
|
||||
- `Number.prototype.pad`: Normalize negative pad
|
||||
- `Object.clear`: Handle errors same way as in `Object.assign`
|
||||
- `Object.compact`: filters just null and undefined values (not all falsies)
|
||||
- `Object.compare`: Take into account NaN values
|
||||
- `Object.copy`: Split into `Object.copy` and `Object.copyDeep`
|
||||
- `Object.isCopy`: Separate into `Object.isCopy` and `Object.isCopyDeep`, where
|
||||
`isCopyDeep` handles nested plain objects and plain arrays only
|
||||
- `String.prototype.endsWith`: Adjust up to ES6 specification
|
||||
- `String.prototype.repeat`: Adjust up to ES6 specification and improve algorithm
|
||||
- `String.prototype.simpleReplace`: Rename into `String.prototype.plainReplace`
|
||||
- `String.prototype.startsWith`: Adjust up to ES6 specification
|
||||
- Update lint rules, and adjust code to that
|
||||
- Update Travis CI configuration
|
||||
- Remove Makefile (it's cross-env utility)
|
||||
|
||||
v0.9.2 -- 2013.03.11
|
||||
Added:
|
||||
* Array.prototype.isCopy
|
||||
* Array.prototype.isUniq
|
||||
* Error.CustomError
|
||||
* Function.validFunction
|
||||
* Object.extendDeep
|
||||
* Object.descriptor.binder
|
||||
* Object.safeTraverse
|
||||
* RegExp.validRegExp
|
||||
* String.prototype.capitalize
|
||||
* String.prototype.simpleReplace
|
||||
|
||||
Fixed:
|
||||
* Fix Array.prototype.diff for sparse arrays
|
||||
* Accept primitive objects as input values in Object iteration methods and
|
||||
Object.clear, Object.count, Object.diff, Object.extend,
|
||||
Object.getPropertyNames, Object.values
|
||||
* Pass expected arguments to callbacks of Object.filter, Object.mapKeys,
|
||||
Object.mapToArray, Object.map
|
||||
* Improve callable callback support in Object.mapToArray
|
||||
|
||||
v0.9.1 -- 2012.09.17
|
||||
* Object.reduce - reduce for hash-like collections
|
||||
* Accapt any callable object as callback in Object.filter, mapKeys and map
|
||||
* Convention cleanup
|
||||
|
||||
v0.9.0 -- 2012.09.13
|
||||
We're getting to real solid API
|
||||
|
||||
Removed:
|
||||
* Function#memoize - it's grown up to be external package, to be soon published
|
||||
as 'memoizee'
|
||||
* String.guid - it doesn't fit es5-ext (extensions) concept, will be provided as
|
||||
external package
|
||||
# Function.arguments - obsolete
|
||||
# Function.context - obsolete
|
||||
# Function#flip - not readable when used, so it was never used
|
||||
# Object.clone - obsolete and confusing
|
||||
|
||||
Added:
|
||||
* String#camelToHyphen - String format convertion
|
||||
|
||||
Renamed:
|
||||
* String#dashToCamelCase -> String#hyphenToCamel
|
||||
|
||||
Fixes:
|
||||
* Object.isObject - Quote names in literals that match reserved keywords
|
||||
(older implementations crashed on that)
|
||||
* String#repeat - Do not accept negative values (coerce them to 1)
|
||||
|
||||
Improvements:
|
||||
* Array#remove - Accepts many arguments, we can now remove many values at once
|
||||
* Object iterators (forEach, map, some) - Compare function invoked with scope
|
||||
object bound to this
|
||||
* Function#curry - Algorithm cleanup
|
||||
* Object.isCopy - Support for all types, not just plain objects
|
||||
* Object.isPlainObject - Support for cross-frame objects
|
||||
* Do not memoize any of the functions, it shouldn't be decided internally
|
||||
* Remove Object.freeze calls in reserved, it's not up to convention
|
||||
* Improved documentation
|
||||
* Better linting (hard-core approach using both JSLint mod and JSHint)
|
||||
* Optional arguments are now documented in funtions signature
|
||||
|
||||
v0.8.2 -- 2012.06.22
|
||||
Fix errors in Array's intersection and exclusion methods, related to improper
|
||||
usage of contains method
|
||||
|
||||
v0.8.1 -- 2012.06.13
|
||||
Reorganized internal logic of Function.prototype.memoize. So it's more safe now
|
||||
and clears cache properly. Additionally preventCache option was provided.
|
||||
|
||||
v0.8.0 -- 2012.05.28
|
||||
Again, major overhaul. Probably last experimental stuff was trashed, all API
|
||||
looks more like standard extensions now.
|
||||
|
||||
Changes:
|
||||
* Turn all Object.prototype extensions into functions and move them to Object
|
||||
namespace. We learned that extending Object.prototype is bad idea in any case.
|
||||
* Rename Function.prototype.curry into Function.prototype.partial. This function
|
||||
is really doing partial application while currying is slightly different
|
||||
concept.
|
||||
* Convert Function.prototype.ncurry to new implementation of
|
||||
Function.prototype.curry, it now serves real curry concept additionaly it
|
||||
covers use cases for aritize and hold, which were removed.
|
||||
* Rename Array's peek to last, and provide support for sparse arrays in it
|
||||
* Rename Date's monthDaysCount into daysInMonth
|
||||
* Simplify object iterators, now order of iteration can be configured with just
|
||||
compareFn argument (no extra byKeys option)
|
||||
* Rename Object.isDuplicate to Object.isCopy
|
||||
* Rename Object.isEqual to Object.is which is compatible with future 'is'
|
||||
keyword
|
||||
* Function.memoize is now Function.prototype.memoize. Additionally clear cache
|
||||
functionality is added, and access to original arguments object.
|
||||
* Rename validation functions: assertNotNull to validValue, assertCallable to
|
||||
validCallable. validValue was moved to Object namespace. On success they now
|
||||
return validated value instead of true, it supports better composition.
|
||||
Additionally created Date.validDate and Error.validError
|
||||
* All documentation is now held in README.md not in code files.
|
||||
* Move guid to String namespace. All guids now start with numbers.
|
||||
* Array.generate: fill argument is now optional
|
||||
* Object.toArray is now Array.from (as new ES6 specification draft suggests)
|
||||
* All methods that rely on indexOf or lastIndexOf, now rely on egal (Object.is)
|
||||
versions of them (eIndexOf, eLastIndexOf)
|
||||
* Turn all get* functions that returned methods into actuall methods (get*
|
||||
functionality can still be achieved with help of Function.prototype.partial).
|
||||
So: Date.getFormat is now Date.prototype.format,
|
||||
Number.getPad is now Number.prototype.pad,
|
||||
String.getFormat is now String.prototype.format,
|
||||
String.getIndent is now String.prototype.indent,
|
||||
String.getPad is now String.prototype.pad
|
||||
* Refactored Object.descriptor, it is now just two functions, main one and
|
||||
main.gs, main is for describing values, and gs for describing getters and
|
||||
setters. Configuration is passed with first argument as string e.g. 'ce' for
|
||||
configurable and enumerable. If no configuration string is provided then by
|
||||
default it returns configurable and writable but not enumerable for value or
|
||||
configurable but not enumerable for getter/setter
|
||||
* Function.prototype.silent now returns prepared function (it was
|
||||
expected to be fixed for 0.7)
|
||||
* Reserved keywords map (reserved) is now array not hash.
|
||||
* Object.merge is now Object.extend (while former Object.extend was completely
|
||||
removed) - 'extend' implies that we change object, not creating new one (as
|
||||
'merge' may imply). Similarily Object.mergeProperties was renamed to
|
||||
Object.extendProperties
|
||||
* Position argument support in Array.prototype.contains and
|
||||
String.prototype.contains (so it follows ES6 specification draft)
|
||||
* endPosition argument support in String.prototype.endsWith and fromPosition
|
||||
argument support in String.prototype.startsWith (so it follows ES6
|
||||
specification draft)
|
||||
* Better and cleaner String.prototype.indent implementation. No default value
|
||||
for indent string argument, optional nest value (defaults to 1), remove
|
||||
nostart argument
|
||||
* Correct length values for most methods (so they reflect length of similar
|
||||
methods in standard)
|
||||
* Length argument is now optional in number and string pad methods.
|
||||
* Improve arguments validation in general, so it adheres to standard conventions
|
||||
* Fixed format of package.json
|
||||
|
||||
Removed methods and functions:
|
||||
* Object.prototype.slice - Object is not ordered collection, so slice doesn't
|
||||
make sense.
|
||||
* Function's rcurry, rncurry, s - too cumbersome for JS, not many use cases for
|
||||
that
|
||||
* Function.prototype.aritize and Function.prototype.hold - same functionality
|
||||
can be achieved with new Function.prototype.curry
|
||||
* Function.prototype.log - provided more generic Function.prototype.wrap for
|
||||
same use case
|
||||
* getNextIdGenerator - no use case for that (String.guid should be used if
|
||||
needed)
|
||||
* Object.toObject - Can be now acheived with Object(validValue(x))
|
||||
* Array.prototype.someValue - no real use case (personally used once and
|
||||
case was already controversial)
|
||||
* Date.prototype.duration - moved to external package
|
||||
* Number.getAutoincrement - No real use case
|
||||
* Object.prototype.extend, Object.prototype.override,
|
||||
Object.prototype.plainCreate, Object.prototype.plainExtend - It was probably
|
||||
too complex, same should be achieved just with Object.create,
|
||||
Object.descriptor and by saving references to super methods in local scope.
|
||||
* Object.getCompareBy - Functions should be created individually for each use
|
||||
case
|
||||
* Object.get, Object.getSet, Object.set, Object.unset - Not many use cases and
|
||||
same can be easily achieved with simple inline function
|
||||
* String.getPrefixWith - Not real use case for something that can be easily
|
||||
achieved with '+' operator
|
||||
* Object.isPrimitive - It's just negation of Object.isObject
|
||||
* Number.prototype.isLess, Number.prototype.isLessOrEqual - they shouldn't be in
|
||||
Number namespace and should rather be addressed with simple inline functions.
|
||||
* Number.prototype.subtract - Should rather be addressed with simple inline
|
||||
function
|
||||
|
||||
New methods and functions:
|
||||
* Array.prototype.lastIndex - Returns last declared index in array
|
||||
* String.prototype.last - last for strings
|
||||
* Function.prototype.wrap - Wrap function with other, it allows to specify
|
||||
before and after behavior transform return value or prevent original function
|
||||
from being called.
|
||||
* Math.sign - Returns sign of a number (already in ES6 specification draft)
|
||||
* Number.toInt - Converts value to integer (already in ES6 specification draft)
|
||||
* Number.isNaN - Returns true if value is NaN (already in ES6 specification
|
||||
draft)
|
||||
* Number.toUint - Converts value to unsigned integer
|
||||
* Number.toUint32 - Converts value to 32bit unsigned integer
|
||||
* Array.prototype.eIndexOf, eLastIndexOf - Egal version (that uses Object.is) of
|
||||
standard methods (all methods that were using native indexOf or lastIndexOf
|
||||
now uses eIndexOf and elastIndexOf respectively)
|
||||
* Array.of - as it's specified for ES6
|
||||
|
||||
Fixes:
|
||||
* Fixed binarySearch so it always returns valid list index
|
||||
* Object.isList - it failed on lists that are callable (e.g. NodeList in Nitro
|
||||
engine)
|
||||
* Object.map now supports third argument for callback
|
||||
|
||||
v0.7.1 -- 2012.01.05
|
||||
New methods:
|
||||
* Array.prototype.firstIndex - returns first valid index of array (for
|
||||
sparse arrays it may not be '0'
|
||||
|
||||
Improvements:
|
||||
* Array.prototype.first - now returns value for index returned by firstIndex
|
||||
* Object.prototype.mapToArray - can be called without callback, then array of
|
||||
key-value pairs is returned
|
||||
|
||||
Fixes
|
||||
* Array.prototype.forEachRight, object's length read through UInt32 conversion
|
||||
|
||||
v0.7.0 -- 2011.12.27
|
||||
Major update.
|
||||
Stepped back from experimental ideas and introduced more standard approach
|
||||
taking example from how ES5 methods and functions are designed. One exceptions
|
||||
is that, we don’t refrain from declaring methods for Object.prototype - it’s up
|
||||
to developer whether how he decides to use it in his context (as function or as
|
||||
method).
|
||||
|
||||
In general:
|
||||
* Removed any method 'functionalization' and functionalize method itself.
|
||||
es5-ext declares plain methods, which can be configured to work as functions
|
||||
with call.bind(method) - see documentation.
|
||||
* Removed separation of Object methods for ES5 (with descriptors) and
|
||||
ES3 (plain) - we're following ES5 idea on that, some methods are intended just
|
||||
for enumerable properties and some are for all properties, all are declared
|
||||
for Object.prototype
|
||||
* Removed separation of Array generic (collected in List folder) and not generic
|
||||
methods (collected in Array folder). Now all methods are generic and are in
|
||||
Array/prototype folder. This separation also meant, that methods in Array are
|
||||
usually destructive. We don’t do that separation now, there’s generally no use
|
||||
case for destructive iterators, we should be fine with one version of each
|
||||
method, (same as ES5 is fine with e.g. one, non destructive 'filter' method)
|
||||
* Folder structure resembles tree of native ES5 Objects
|
||||
* All methods are written with ES5 conventions in mind, it means that most
|
||||
methods are generic and can be run on any object. In more detail:
|
||||
** Array.prototype and Object.prototype methods can be run on any object (any
|
||||
not null or undefined value),
|
||||
** Date.prototype methods should be called only on Date instances.
|
||||
** Function.prototype methods can be called on any callable objects (not
|
||||
necessarily functions)
|
||||
** Number.prototype & String.prototype methods can be called on any value, in
|
||||
case of Number it it’ll be degraded to number, in case of string it’ll be
|
||||
degraded to string.
|
||||
* Travis CI support (only for Node v0.6 branch, as v0.4 has buggy V8 version)
|
||||
|
||||
Improvements for existing functions and methods:
|
||||
* Function.memoize (was Function.cache) is now fully generic, can operate on any
|
||||
type of arguments and it’s NaN safe (all NaN objects are considered equal)
|
||||
* Method properties passed to Object.prototype.extend or
|
||||
Object.prototype.override can aside of _super optionally take prototype object
|
||||
via _proto argument
|
||||
* Object iterators: forEach, mapToArray and every can now iterate in specified
|
||||
order
|
||||
* pluck, invoke and other functions that return reusable functions or methods
|
||||
have now their results memoized.
|
||||
|
||||
New methods:
|
||||
* Global: assertNotNull, getNextIdGenerator, guid, isEqual, isPrimitive,
|
||||
toObject
|
||||
* Array: generate
|
||||
* Array.prototype: binarySearch, clear, contains, diff, exclusion, find, first,
|
||||
forEachRight, group, indexesOf, intersection, remove, someRight, someValue
|
||||
* Boolean: isBoolean
|
||||
* Date: isDate
|
||||
* Function: arguments, context, insert, isArguments, remove
|
||||
* Function.prototype: not, silent
|
||||
* Number: getAutoincrement, isNumber
|
||||
* Number.prototype: isLessOrEqual, isLess, subtract
|
||||
* Object: assertCallable, descriptor (functions for clean descriptors),
|
||||
getCompareBy, isCallable, isObject
|
||||
* Object.prototype: clone (real clone), compact, count, diff, empty,
|
||||
getPropertyNames, get, keyOf, mapKeys, override, plainCreate, plainExtend,
|
||||
slice, some, unset
|
||||
* RegExp: isRegExp
|
||||
* String: getPrefixWith, isString
|
||||
* String.prototype: caseInsensitiveCompare, contains, isNumeric
|
||||
|
||||
Renamed methods:
|
||||
* Date.clone -> Date.prototype.copy
|
||||
* Date.format -> Date.getFormat
|
||||
* Date/day/floor -> Date.prototype.floorDay
|
||||
* Date/month/floor -> Date.prototype.floorMonth
|
||||
* Date/month/year -> Date.prototype.floorYear
|
||||
* Function.cache -> Function.memoize
|
||||
* Function.getApplyArg -> Function.prototype.match
|
||||
* Function.sequence -> Function.prototype.chain
|
||||
* List.findSameStartLength -> Array.prototype.commonLeft
|
||||
* Number.pad -> Number.getPad
|
||||
* Object/plain/clone -> Object.prototype.copy
|
||||
* Object/plain/elevate -> Object.prototype.flatten
|
||||
* Object/plain/same -> Object.prototype.isDuplicate
|
||||
* Object/plain/setValue -> Object.getSet
|
||||
* String.format -> String.getFormat
|
||||
* String.indent -> String.getIndent
|
||||
* String.pad -> String.getPad
|
||||
* String.trimLeftStr -> String.prototype.trimCommonLeft
|
||||
* Object.merge -> Object.prototype.mergeProperties
|
||||
* Object/plain/pluck -> Object.prototype.get
|
||||
* Array.clone is now Array.prototype.copy and can be used also on any array-like
|
||||
objects
|
||||
* List.isList -> Object.isList
|
||||
* List.toArray -> Object.prototype.toArray
|
||||
* String/convert/dashToCamelCase -> String.prototype.dashToCamelCase
|
||||
|
||||
Removed methods:
|
||||
* Array.compact - removed destructive version (that operated on same array), we
|
||||
have now non destructive version as Array.prototype.compact.
|
||||
* Function.applyBind -> use apply.bind directly
|
||||
* Function.bindBind -> use bind.bind directly
|
||||
* Function.callBind -> use call.bind directly
|
||||
* Fuction.clone -> no valid use case
|
||||
* Function.dscope -> controversial approach, shouldn’t be considered seriously
|
||||
* Function.functionalize -> It was experimental but standards are standards
|
||||
* List/sort/length -> It can be easy obtained by Object.getCompareBy(‘length’)
|
||||
* List.concat -> Concat’s for array-like’s makes no sense, just convert to array
|
||||
first
|
||||
* List.every -> Use Array.prototype.every directly
|
||||
* List.filter -> Use Array.prototype.filter directly
|
||||
* List.forEach -> User Array.prototype.forEach directly
|
||||
* List.isListObject -> No valid use case, do: isList(list) && (typeof list ===
|
||||
'object’)
|
||||
* List.map -> Use Array.prototype.map directly
|
||||
* List.reduce -> Use Array.prototype.reduce directly
|
||||
* List.shiftSame -> Use Array.prototype.commonLeft and do slice
|
||||
* List.slice -> Use Array.prototype.slice directly
|
||||
* List.some -> Use Array.prototype.some directly
|
||||
* Object.bindMethods -> it was version that considered descriptors, we have now
|
||||
Object.prototype.bindMethods which operates only on enumerable properties
|
||||
* Object.every -> version that considered all properties, we have now
|
||||
Object.prototype.every which iterates only enumerables
|
||||
* Object.invoke -> no use case
|
||||
* Object.mergeDeep -> no use case
|
||||
* Object.pluck -> no use case
|
||||
* Object.same -> it considered descriptors, now there’s only Object.isDuplicate
|
||||
which compares only enumerable properties
|
||||
* Object.sameType -> no use case
|
||||
* Object.toDescriptor and Object.toDescriptors -> replaced by much nicer
|
||||
Object.descriptor functions
|
||||
* Object/plain/link -> no use case (it was used internally only by
|
||||
Object/plain/merge)
|
||||
* Object/plain/setTrue -> now easily configurable by more universal
|
||||
Object.getSet(true)
|
||||
* String.trimRightStr -> Eventually String.prototype.trimCommonRight will be
|
||||
added
|
||||
|
||||
v0.6.3 -- 2011.12.12
|
||||
* Cleared npm warning for misnamed property in package.json
|
||||
|
||||
v0.6.2 -- 2011.08.12
|
||||
* Calling String.indent without scope (global scope then) now treated as calling
|
||||
it with null scope, it allows more direct invocations when using default nest
|
||||
string: indent().call(str, nest)
|
||||
|
||||
v0.6.1 -- 2011.08.08
|
||||
* Added TAD test suite to devDependencies, configured test commands.
|
||||
Tests can be run with 'make test' or 'npm test'
|
||||
|
||||
v0.6.0 -- 2011.08.07
|
||||
New methods:
|
||||
* Array: clone, compact (in place)
|
||||
* Date: format, duration, clone, monthDaysCount, day.floor, month.floor,
|
||||
year.floor
|
||||
* Function: getApplyArg, , ncurry, rncurry, hold, cache, log
|
||||
* List: findSameStartLength, shiftSame, peek, isListObject
|
||||
* Number: pad
|
||||
* Object: sameType, toString, mapToArray, mergeDeep, toDescriptor,
|
||||
toDescriptors, invoke
|
||||
* String: startsWith, endsWith, indent, trimLeftStr, trimRightStr, pad, format
|
||||
|
||||
Fixed:
|
||||
* Object.extend does now prototypal extend as exptected
|
||||
* Object.merge now tries to overwrite only configurable properties
|
||||
* Function.flip
|
||||
|
||||
Improved:
|
||||
* Faster List.toArray
|
||||
* Better global retrieval
|
||||
* Functionalized all Function methods
|
||||
* Renamed bindApply and bindCall to applyBind and callBind
|
||||
* Removed Function.inherit (as it's unintuitive curry clone)
|
||||
* Straightforward logic in Function.k
|
||||
* Fixed naming of some tests files (letter case issue)
|
||||
* Renamed Function.saturate into Function.lock
|
||||
* String.dashToCamelCase digits support
|
||||
* Strings now considered as List objects
|
||||
* Improved List.compact
|
||||
* Concise logic for List.concat
|
||||
* Test wit TAD in clean ES5 context
|
||||
|
||||
v0.5.1 -- 2011.07.11
|
||||
* Function's bindBind, bindCall and bindApply now more versatile
|
||||
|
||||
v0.5.0 -- 2011.07.07
|
||||
* Removed Object.is and List.apply
|
||||
* Renamed Object.plain.is to Object.plain.isPlainObject (keep naming convention
|
||||
consistent)
|
||||
* Improved documentation
|
||||
|
||||
v0.4.0 -- 2011.07.05
|
||||
* Take most functions on Object to Object.plain to keep them away from object
|
||||
descriptors
|
||||
* Object functions with ES5 standard in mind (object descriptors)
|
||||
|
||||
v0.3.0 -- 2011.06.24
|
||||
* New functions
|
||||
* Consistent file naming (dash instead of camelCase)
|
||||
|
||||
v0.2.1 -- 2011.05.28
|
||||
* Renamed Functions.K and Function.S to to lowercase versions (use consistent
|
||||
naming)
|
||||
|
||||
v0.2.0 -- 2011.05.28
|
||||
* Renamed Array folder to List (as its generic functions for array-like objects)
|
||||
* Added Makefile
|
||||
* Added various functions
|
||||
|
||||
v0.1.0 -- 2011.05.24
|
||||
* Initial version
|
||||
21
static/js/ketcher2/node_modules/es5-ext/LICENSE
generated
vendored
Normal file
21
static/js/ketcher2/node_modules/es5-ext/LICENSE
generated
vendored
Normal file
@ -0,0 +1,21 @@
|
||||
The MIT License (MIT)
|
||||
|
||||
Copyright (C) 2011-2017 Mariusz Nowak (www.medikoo.com)
|
||||
|
||||
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.
|
||||
993
static/js/ketcher2/node_modules/es5-ext/README.md
generated
vendored
Normal file
993
static/js/ketcher2/node_modules/es5-ext/README.md
generated
vendored
Normal file
@ -0,0 +1,993 @@
|
||||
# es5-ext
|
||||
## ECMAScript 5 extensions
|
||||
### (with respect to ECMAScript 6 standard)
|
||||
|
||||
Shims for upcoming ES6 standard and other goodies implemented strictly with ECMAScript conventions in mind.
|
||||
|
||||
It's designed to be used in compliant ECMAScript 5 or ECMAScript 6 environments. Older environments are not supported, although most of the features should work with correct ECMAScript 5 shim on board.
|
||||
|
||||
When used in ECMAScript 6 environment, native implementation (if valid) takes precedence over shims.
|
||||
|
||||
### Installation
|
||||
|
||||
$ npm install es5-ext
|
||||
|
||||
To port it to Browser or any other (non CJS) environment, use your favorite CJS bundler. No favorite yet? Try: [Browserify](http://browserify.org/), [Webmake](https://github.com/medikoo/modules-webmake) or [Webpack](http://webpack.github.io/)
|
||||
|
||||
### Usage
|
||||
|
||||
#### ECMAScript 6 features
|
||||
|
||||
You can force ES6 features to be implemented in your environment, e.g. following will assign `from` function to `Array` (only if it's not implemented already).
|
||||
|
||||
```javascript
|
||||
require('es5-ext/array/from/implement');
|
||||
Array.from('foo'); // ['f', 'o', 'o']
|
||||
```
|
||||
|
||||
You can also access shims directly, without fixing native objects. Following will return native `Array.from` if it's available and fallback to shim if it's not.
|
||||
|
||||
```javascript
|
||||
var aFrom = require('es5-ext/array/from');
|
||||
aFrom('foo'); // ['f', 'o', 'o']
|
||||
```
|
||||
|
||||
If you want to use shim unconditionally (even if native implementation exists) do:
|
||||
|
||||
```javascript
|
||||
var aFrom = require('es5-ext/array/from/shim');
|
||||
aFrom('foo'); // ['f', 'o', 'o']
|
||||
```
|
||||
|
||||
##### List of ES6 shims
|
||||
|
||||
It's about properties introduced with ES6 and those that have been updated in new spec.
|
||||
|
||||
- `Array.from` -> `require('es5-ext/array/from')`
|
||||
- `Array.of` -> `require('es5-ext/array/of')`
|
||||
- `Array.prototype.concat` -> `require('es5-ext/array/#/concat')`
|
||||
- `Array.prototype.copyWithin` -> `require('es5-ext/array/#/copy-within')`
|
||||
- `Array.prototype.entries` -> `require('es5-ext/array/#/entries')`
|
||||
- `Array.prototype.fill` -> `require('es5-ext/array/#/fill')`
|
||||
- `Array.prototype.filter` -> `require('es5-ext/array/#/filter')`
|
||||
- `Array.prototype.find` -> `require('es5-ext/array/#/find')`
|
||||
- `Array.prototype.findIndex` -> `require('es5-ext/array/#/find-index')`
|
||||
- `Array.prototype.keys` -> `require('es5-ext/array/#/keys')`
|
||||
- `Array.prototype.map` -> `require('es5-ext/array/#/map')`
|
||||
- `Array.prototype.slice` -> `require('es5-ext/array/#/slice')`
|
||||
- `Array.prototype.splice` -> `require('es5-ext/array/#/splice')`
|
||||
- `Array.prototype.values` -> `require('es5-ext/array/#/values')`
|
||||
- `Array.prototype[@@iterator]` -> `require('es5-ext/array/#/@@iterator')`
|
||||
- `Math.acosh` -> `require('es5-ext/math/acosh')`
|
||||
- `Math.asinh` -> `require('es5-ext/math/asinh')`
|
||||
- `Math.atanh` -> `require('es5-ext/math/atanh')`
|
||||
- `Math.cbrt` -> `require('es5-ext/math/cbrt')`
|
||||
- `Math.clz32` -> `require('es5-ext/math/clz32')`
|
||||
- `Math.cosh` -> `require('es5-ext/math/cosh')`
|
||||
- `Math.exmp1` -> `require('es5-ext/math/expm1')`
|
||||
- `Math.fround` -> `require('es5-ext/math/fround')`
|
||||
- `Math.hypot` -> `require('es5-ext/math/hypot')`
|
||||
- `Math.imul` -> `require('es5-ext/math/imul')`
|
||||
- `Math.log1p` -> `require('es5-ext/math/log1p')`
|
||||
- `Math.log2` -> `require('es5-ext/math/log2')`
|
||||
- `Math.log10` -> `require('es5-ext/math/log10')`
|
||||
- `Math.sign` -> `require('es5-ext/math/sign')`
|
||||
- `Math.signh` -> `require('es5-ext/math/signh')`
|
||||
- `Math.tanh` -> `require('es5-ext/math/tanh')`
|
||||
- `Math.trunc` -> `require('es5-ext/math/trunc')`
|
||||
- `Number.EPSILON` -> `require('es5-ext/number/epsilon')`
|
||||
- `Number.MAX_SAFE_INTEGER` -> `require('es5-ext/number/max-safe-integer')`
|
||||
- `Number.MIN_SAFE_INTEGER` -> `require('es5-ext/number/min-safe-integer')`
|
||||
- `Number.isFinite` -> `require('es5-ext/number/is-finite')`
|
||||
- `Number.isInteger` -> `require('es5-ext/number/is-integer')`
|
||||
- `Number.isNaN` -> `require('es5-ext/number/is-nan')`
|
||||
- `Number.isSafeInteger` -> `require('es5-ext/number/is-safe-integer')`
|
||||
- `Object.assign` -> `require('es5-ext/object/assign')`
|
||||
- `Object.keys` -> `require('es5-ext/object/keys')`
|
||||
- `Object.setPrototypeOf` -> `require('es5-ext/object/set-prototype-of')`
|
||||
- `RegExp.prototype.match` -> `require('es5-ext/reg-exp/#/match')`
|
||||
- `RegExp.prototype.replace` -> `require('es5-ext/reg-exp/#/replace')`
|
||||
- `RegExp.prototype.search` -> `require('es5-ext/reg-exp/#/search')`
|
||||
- `RegExp.prototype.split` -> `require('es5-ext/reg-exp/#/split')`
|
||||
- `RegExp.prototype.sticky` -> Implement with `require('es5-ext/reg-exp/#/sticky/implement')`, use as function with `require('es5-ext/reg-exp/#/is-sticky')`
|
||||
- `RegExp.prototype.unicode` -> Implement with `require('es5-ext/reg-exp/#/unicode/implement')`, use as function with `require('es5-ext/reg-exp/#/is-unicode')`
|
||||
- `String.fromCodePoint` -> `require('es5-ext/string/from-code-point')`
|
||||
- `String.raw` -> `require('es5-ext/string/raw')`
|
||||
- `String.prototype.codePointAt` -> `require('es5-ext/string/#/code-point-at')`
|
||||
- `String.prototype.contains` -> `require('es5-ext/string/#/contains')`
|
||||
- `String.prototype.endsWith` -> `require('es5-ext/string/#/ends-with')`
|
||||
- `String.prototype.normalize` -> `require('es5-ext/string/#/normalize')`
|
||||
- `String.prototype.repeat` -> `require('es5-ext/string/#/repeat')`
|
||||
- `String.prototype.startsWith` -> `require('es5-ext/string/#/starts-with')`
|
||||
- `String.prototype[@@iterator]` -> `require('es5-ext/string/#/@@iterator')`
|
||||
|
||||
#### Non ECMAScript standard features
|
||||
|
||||
__es5-ext__ provides also other utils, and implements them as if they were proposed for a standard. It mostly offers methods (not functions) which can directly be assigned to native prototypes:
|
||||
|
||||
```javascript
|
||||
Object.defineProperty(Function.prototype, 'partial', { value: require('es5-ext/function/#/partial'),
|
||||
configurable: true, enumerable: false, writable: true });
|
||||
Object.defineProperty(Array.prototype, 'flatten', { value: require('es5-ext/array/#/flatten'),
|
||||
configurable: true, enumerable: false, writable: true });
|
||||
Object.defineProperty(String.prototype, 'capitalize', { value: require('es5-ext/string/#/capitalize'),
|
||||
configurable: true, enumerable: false, writable: true });
|
||||
```
|
||||
|
||||
See [es5-extend](https://github.com/wookieb/es5-extend#es5-extend), a great utility that automatically will extend natives for you.
|
||||
|
||||
__Important:__ Remember to __not__ extend natives in scope of generic reusable packages (e.g. ones you intend to publish to npm). Extending natives is fine __only__ if you're the _owner_ of the global scope, so e.g. in final project you lead development of.
|
||||
|
||||
When you're in situation when native extensions are not good idea, then you should use methods indirectly:
|
||||
|
||||
|
||||
```javascript
|
||||
var flatten = require('es5-ext/array/#/flatten');
|
||||
|
||||
flatten.call([1, [2, [3, 4]]]); // [1, 2, 3, 4]
|
||||
```
|
||||
|
||||
for better convenience you can turn methods into functions:
|
||||
|
||||
|
||||
```javascript
|
||||
var call = Function.prototype.call
|
||||
var flatten = call.bind(require('es5-ext/array/#/flatten'));
|
||||
|
||||
flatten([1, [2, [3, 4]]]); // [1, 2, 3, 4]
|
||||
```
|
||||
|
||||
You can configure custom toolkit (like [underscorejs](http://underscorejs.org/)), and use it throughout your application
|
||||
|
||||
```javascript
|
||||
var util = {};
|
||||
util.partial = call.bind(require('es5-ext/function/#/partial'));
|
||||
util.flatten = call.bind(require('es5-ext/array/#/flatten'));
|
||||
util.startsWith = call.bind(require('es5-ext/string/#/starts-with'));
|
||||
|
||||
util.flatten([1, [2, [3, 4]]]); // [1, 2, 3, 4]
|
||||
```
|
||||
|
||||
As with native ones most methods are generic and can be run on any type of object.
|
||||
|
||||
## API
|
||||
|
||||
### Global extensions
|
||||
|
||||
#### global _(es5-ext/global)_
|
||||
|
||||
Object that represents global scope
|
||||
|
||||
### Array Constructor extensions
|
||||
|
||||
#### from(arrayLike[, mapFn[, thisArg]]) _(es5-ext/array/from)_
|
||||
|
||||
[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-array.from).
|
||||
Returns array representation of _iterable_ or _arrayLike_. If _arrayLike_ is an instance of array, its copy is returned.
|
||||
|
||||
#### generate([length[, …fill]]) _(es5-ext/array/generate)_
|
||||
|
||||
Generate an array of pre-given _length_ built of repeated arguments.
|
||||
|
||||
#### isPlainArray(x) _(es5-ext/array/is-plain-array)_
|
||||
|
||||
Returns true if object is plain array (not instance of one of the Array's extensions).
|
||||
|
||||
#### of([…items]) _(es5-ext/array/of)_
|
||||
|
||||
[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-array.of).
|
||||
Create an array from given arguments.
|
||||
|
||||
#### toArray(obj) _(es5-ext/array/to-array)_
|
||||
|
||||
Returns array representation of `obj`. If `obj` is already an array, `obj` is returned back.
|
||||
|
||||
#### validArray(obj) _(es5-ext/array/valid-array)_
|
||||
|
||||
Returns `obj` if it's an array, otherwise throws `TypeError`
|
||||
|
||||
### Array Prototype extensions
|
||||
|
||||
#### arr.binarySearch(compareFn) _(es5-ext/array/#/binary-search)_
|
||||
|
||||
In __sorted__ list search for index of item for which _compareFn_ returns value closest to _0_.
|
||||
It's variant of binary search algorithm
|
||||
|
||||
#### arr.clear() _(es5-ext/array/#/clear)_
|
||||
|
||||
Clears the array
|
||||
|
||||
#### arr.compact() _(es5-ext/array/#/compact)_
|
||||
|
||||
Returns a copy of the context with all non-values (`null` or `undefined`) removed.
|
||||
|
||||
#### arr.concat() _(es5-ext/array/#/concat)_
|
||||
|
||||
[_Updated with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-array.prototype.concat).
|
||||
ES6's version of `concat`. Supports `isConcatSpreadable` symbol, and returns array of same type as the context.
|
||||
|
||||
#### arr.contains(searchElement[, position]) _(es5-ext/array/#/contains)_
|
||||
|
||||
Whether list contains the given value.
|
||||
|
||||
#### arr.copyWithin(target, start[, end]) _(es5-ext/array/#/copy-within)_
|
||||
|
||||
[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-array.copywithin).
|
||||
|
||||
#### arr.diff(other) _(es5-ext/array/#/diff)_
|
||||
|
||||
Returns the array of elements that are present in context list but not present in other list.
|
||||
|
||||
#### arr.eIndexOf(searchElement[, fromIndex]) _(es5-ext/array/#/e-index-of)_
|
||||
|
||||
_egal_ version of `indexOf` method. [_SameValueZero_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-samevaluezero) logic is used for comparision
|
||||
|
||||
#### arr.eLastIndexOf(searchElement[, fromIndex]) _(es5-ext/array/#/e-last-index-of)_
|
||||
|
||||
_egal_ version of `lastIndexOf` method. [_SameValueZero_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-samevaluezero) logic is used for comparision
|
||||
|
||||
#### arr.entries() _(es5-ext/array/#/entries)_
|
||||
|
||||
[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-array.prototype.entries).
|
||||
Returns iterator object, which traverses the array. Each value is represented with an array, where first value is an index and second is corresponding to index value.
|
||||
|
||||
#### arr.exclusion([…lists]]) _(es5-ext/array/#/exclusion)_
|
||||
|
||||
Returns the array of elements that are found only in one of the lists (either context list or list provided in arguments).
|
||||
|
||||
#### arr.fill(value[, start, end]) _(es5-ext/array/#/fill)_
|
||||
|
||||
[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-array.fill).
|
||||
|
||||
#### arr.filter(callback[, thisArg]) _(es5-ext/array/#/filter)_
|
||||
|
||||
[_Updated with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-array.filter).
|
||||
ES6's version of `filter`, returns array of same type as the context.
|
||||
|
||||
#### arr.find(predicate[, thisArg]) _(es5-ext/array/#/find)_
|
||||
|
||||
[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-array.find).
|
||||
Return first element for which given function returns true
|
||||
|
||||
#### arr.findIndex(predicate[, thisArg]) _(es5-ext/array/#/find-index)_
|
||||
|
||||
[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-array.findindex).
|
||||
Return first index for which given function returns true
|
||||
|
||||
#### arr.first() _(es5-ext/array/#/first)_
|
||||
|
||||
Returns value for first defined index
|
||||
|
||||
#### arr.firstIndex() _(es5-ext/array/#/first-index)_
|
||||
|
||||
Returns first declared index of the array
|
||||
|
||||
#### arr.flatten() _(es5-ext/array/#/flatten)_
|
||||
|
||||
Returns flattened version of the array
|
||||
|
||||
#### arr.forEachRight(cb[, thisArg]) _(es5-ext/array/#/for-each-right)_
|
||||
|
||||
`forEach` starting from last element
|
||||
|
||||
#### arr.group(cb[, thisArg]) _(es5-ext/array/#/group)_
|
||||
|
||||
Group list elements by value returned by _cb_ function
|
||||
|
||||
#### arr.indexesOf(searchElement[, fromIndex]) _(es5-ext/array/#/indexes-of)_
|
||||
|
||||
Returns array of all indexes of given value
|
||||
|
||||
#### arr.intersection([…lists]) _(es5-ext/array/#/intersection)_
|
||||
|
||||
Computes the array of values that are the intersection of all lists (context list and lists given in arguments)
|
||||
|
||||
#### arr.isCopy(other) _(es5-ext/array/#/is-copy)_
|
||||
|
||||
Returns true if both context and _other_ lists have same content
|
||||
|
||||
#### arr.isUniq() _(es5-ext/array/#/is-uniq)_
|
||||
|
||||
Returns true if all values in array are unique
|
||||
|
||||
#### arr.keys() _(es5-ext/array/#/keys)_
|
||||
|
||||
[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-array.prototype.keys).
|
||||
Returns iterator object, which traverses all array indexes.
|
||||
|
||||
#### arr.last() _(es5-ext/array/#/last)_
|
||||
|
||||
Returns value of last defined index
|
||||
|
||||
#### arr.lastIndex() _(es5-ext/array/#/last)_
|
||||
|
||||
Returns last defined index of the array
|
||||
|
||||
#### arr.map(callback[, thisArg]) _(es5-ext/array/#/map)_
|
||||
|
||||
[_Updated with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-array.map).
|
||||
ES6's version of `map`, returns array of same type as the context.
|
||||
|
||||
#### arr.remove(value[, …valuen]) _(es5-ext/array/#/remove)_
|
||||
|
||||
Remove values from the array
|
||||
|
||||
#### arr.separate(sep) _(es5-ext/array/#/separate)_
|
||||
|
||||
Returns array with items separated with `sep` value
|
||||
|
||||
#### arr.slice(callback[, thisArg]) _(es5-ext/array/#/slice)_
|
||||
|
||||
[_Updated with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-array.slice).
|
||||
ES6's version of `slice`, returns array of same type as the context.
|
||||
|
||||
#### arr.someRight(cb[, thisArg]) _(es5-ext/array/#/someRight)_
|
||||
|
||||
`some` starting from last element
|
||||
|
||||
#### arr.splice(callback[, thisArg]) _(es5-ext/array/#/splice)_
|
||||
|
||||
[_Updated with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-array.splice).
|
||||
ES6's version of `splice`, returns array of same type as the context.
|
||||
|
||||
#### arr.uniq() _(es5-ext/array/#/uniq)_
|
||||
|
||||
Returns duplicate-free version of the array
|
||||
|
||||
#### arr.values() _(es5-ext/array/#/values)_
|
||||
|
||||
[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-array.prototype.values).
|
||||
Returns iterator object which traverses all array values.
|
||||
|
||||
#### arr[@@iterator] _(es5-ext/array/#/@@iterator)_
|
||||
|
||||
[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-array.prototype-@@iterator).
|
||||
Returns iterator object which traverses all array values.
|
||||
|
||||
### Boolean Constructor extensions
|
||||
|
||||
#### isBoolean(x) _(es5-ext/boolean/is-boolean)_
|
||||
|
||||
Whether value is boolean
|
||||
|
||||
### Date Constructor extensions
|
||||
|
||||
#### isDate(x) _(es5-ext/date/is-date)_
|
||||
|
||||
Whether value is date instance
|
||||
|
||||
#### validDate(x) _(es5-ext/date/valid-date)_
|
||||
|
||||
If given object is not date throw TypeError in other case return it.
|
||||
|
||||
### Date Prototype extensions
|
||||
|
||||
#### date.copy(date) _(es5-ext/date/#/copy)_
|
||||
|
||||
Returns a copy of the date object
|
||||
|
||||
#### date.daysInMonth() _(es5-ext/date/#/days-in-month)_
|
||||
|
||||
Returns number of days of date's month
|
||||
|
||||
#### date.floorDay() _(es5-ext/date/#/floor-day)_
|
||||
|
||||
Sets the date time to 00:00:00.000
|
||||
|
||||
#### date.floorMonth() _(es5-ext/date/#/floor-month)_
|
||||
|
||||
Sets date day to 1 and date time to 00:00:00.000
|
||||
|
||||
#### date.floorYear() _(es5-ext/date/#/floor-year)_
|
||||
|
||||
Sets date month to 0, day to 1 and date time to 00:00:00.000
|
||||
|
||||
#### date.format(pattern) _(es5-ext/date/#/format)_
|
||||
|
||||
Formats date up to given string. Supported patterns:
|
||||
|
||||
* `%Y` - Year with century, 1999, 2003
|
||||
* `%y` - Year without century, 99, 03
|
||||
* `%m` - Month, 01..12
|
||||
* `%d` - Day of the month 01..31
|
||||
* `%H` - Hour (24-hour clock), 00..23
|
||||
* `%M` - Minute, 00..59
|
||||
* `%S` - Second, 00..59
|
||||
* `%L` - Milliseconds, 000..999
|
||||
|
||||
### Error Constructor extensions
|
||||
|
||||
#### custom(message/*, code, ext*/) _(es5-ext/error/custom)_
|
||||
|
||||
Creates custom error object, optinally extended with `code` and other extension properties (provided with `ext` object)
|
||||
|
||||
#### isError(x) _(es5-ext/error/is-error)_
|
||||
|
||||
Whether value is an error (instance of `Error`).
|
||||
|
||||
#### validError(x) _(es5-ext/error/valid-error)_
|
||||
|
||||
If given object is not error throw TypeError in other case return it.
|
||||
|
||||
### Error Prototype extensions
|
||||
|
||||
#### err.throw() _(es5-ext/error/#/throw)_
|
||||
|
||||
Throws error
|
||||
|
||||
### Function Constructor extensions
|
||||
|
||||
Some of the functions were inspired by [Functional JavaScript](http://osteele.com/sources/javascript/functional/) project by Olivier Steele
|
||||
|
||||
#### constant(x) _(es5-ext/function/constant)_
|
||||
|
||||
Returns a constant function that returns pregiven argument
|
||||
|
||||
_k(x)(y) =def x_
|
||||
|
||||
#### identity(x) _(es5-ext/function/identity)_
|
||||
|
||||
Identity function. Returns first argument
|
||||
|
||||
_i(x) =def x_
|
||||
|
||||
#### invoke(name[, …args]) _(es5-ext/function/invoke)_
|
||||
|
||||
Returns a function that takes an object as an argument, and applies object's
|
||||
_name_ method to arguments.
|
||||
_name_ can be name of the method or method itself.
|
||||
|
||||
_invoke(name, …args)(object, …args2) =def object\[name\]\(…args, …args2\)_
|
||||
|
||||
#### isArguments(x) _(es5-ext/function/is-arguments)_
|
||||
|
||||
Whether value is arguments object
|
||||
|
||||
#### isFunction(arg) _(es5-ext/function/is-function)_
|
||||
|
||||
Whether value is instance of function
|
||||
|
||||
#### noop() _(es5-ext/function/noop)_
|
||||
|
||||
No operation function
|
||||
|
||||
#### pluck(name) _(es5-ext/function/pluck)_
|
||||
|
||||
Returns a function that takes an object, and returns the value of its _name_
|
||||
property
|
||||
|
||||
_pluck(name)(obj) =def obj[name]_
|
||||
|
||||
#### validFunction(arg) _(es5-ext/function/valid-function)_
|
||||
|
||||
If given object is not function throw TypeError in other case return it.
|
||||
|
||||
### Function Prototype extensions
|
||||
|
||||
Some of the methods were inspired by [Functional JavaScript](http://osteele.com/sources/javascript/functional/) project by Olivier Steele
|
||||
|
||||
#### fn.compose([…fns]) _(es5-ext/function/#/compose)_
|
||||
|
||||
Applies the functions in reverse argument-list order.
|
||||
|
||||
_f1.compose(f2, f3, f4)(…args) =def f1(f2(f3(f4(…arg))))_
|
||||
|
||||
#### fn.copy() _(es5-ext/function/#/copy)_
|
||||
|
||||
Produces copy of given function
|
||||
|
||||
#### fn.curry([n]) _(es5-ext/function/#/curry)_
|
||||
|
||||
Invoking the function returned by this function only _n_ arguments are passed to the underlying function. If the underlying function is not saturated, the result is a function that passes all its arguments to the underlying function.
|
||||
If _n_ is not provided then it defaults to context function length
|
||||
|
||||
_f.curry(4)(arg1, arg2)(arg3)(arg4) =def f(arg1, args2, arg3, arg4)_
|
||||
|
||||
#### fn.lock([…args]) _(es5-ext/function/#/lock)_
|
||||
|
||||
Returns a function that applies the underlying function to _args_, and ignores its own arguments.
|
||||
|
||||
_f.lock(…args)(…args2) =def f(…args)_
|
||||
|
||||
_Named after it's counterpart in Google Closure_
|
||||
|
||||
#### fn.not() _(es5-ext/function/#/not)_
|
||||
|
||||
Returns a function that returns boolean negation of value returned by underlying function.
|
||||
|
||||
_f.not()(…args) =def !f(…args)_
|
||||
|
||||
#### fn.partial([…args]) _(es5-ext/function/#/partial)_
|
||||
|
||||
Returns a function that when called will behave like context function called with initially passed arguments. If more arguments are suplilied, they are appended to initial args.
|
||||
|
||||
_f.partial(…args1)(…args2) =def f(…args1, …args2)_
|
||||
|
||||
#### fn.spread() _(es5-ext/function/#/spread)_
|
||||
|
||||
Returns a function that applies underlying function with first list argument
|
||||
|
||||
_f.match()(args) =def f.apply(null, args)_
|
||||
|
||||
#### fn.toStringTokens() _(es5-ext/function/#/to-string-tokens)_
|
||||
|
||||
Serializes function into two (arguments and body) string tokens. Result is plain object with `args` and `body` properties.
|
||||
|
||||
### Math extensions
|
||||
|
||||
#### acosh(x) _(es5-ext/math/acosh)_
|
||||
|
||||
[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-math.acosh).
|
||||
|
||||
#### asinh(x) _(es5-ext/math/asinh)_
|
||||
|
||||
[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-math.asinh).
|
||||
|
||||
#### atanh(x) _(es5-ext/math/atanh)_
|
||||
|
||||
[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-math.atanh).
|
||||
|
||||
#### cbrt(x) _(es5-ext/math/cbrt)_
|
||||
|
||||
[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-math.cbrt).
|
||||
|
||||
#### clz32(x) _(es5-ext/math/clz32)_
|
||||
|
||||
[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-math.clz32).
|
||||
|
||||
#### cosh(x) _(es5-ext/math/cosh)_
|
||||
|
||||
[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-math.cosh).
|
||||
|
||||
#### expm1(x) _(es5-ext/math/expm1)_
|
||||
|
||||
[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-math.expm1).
|
||||
|
||||
#### fround(x) _(es5-ext/math/fround)_
|
||||
|
||||
[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-math.fround).
|
||||
|
||||
#### hypot([…values]) _(es5-ext/math/hypot)_
|
||||
|
||||
[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-math.hypot).
|
||||
|
||||
#### imul(x, y) _(es5-ext/math/imul)_
|
||||
|
||||
[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-math.imul).
|
||||
|
||||
#### log1p(x) _(es5-ext/math/log1p)_
|
||||
|
||||
[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-math.log1p).
|
||||
|
||||
#### log2(x) _(es5-ext/math/log2)_
|
||||
|
||||
[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-math.log2).
|
||||
|
||||
#### log10(x) _(es5-ext/math/log10)_
|
||||
|
||||
[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-math.log10).
|
||||
|
||||
#### sign(x) _(es5-ext/math/sign)_
|
||||
|
||||
[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-math.sign).
|
||||
|
||||
#### sinh(x) _(es5-ext/math/sinh)_
|
||||
|
||||
[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-math.sinh).
|
||||
|
||||
#### tanh(x) _(es5-ext/math/tanh)_
|
||||
|
||||
[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-math.tanh).
|
||||
|
||||
#### trunc(x) _(es5-ext/math/trunc)_
|
||||
|
||||
[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-math.trunc).
|
||||
|
||||
### Number Constructor extensions
|
||||
|
||||
#### EPSILON _(es5-ext/number/epsilon)_
|
||||
|
||||
[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-number.epsilon).
|
||||
|
||||
The difference between 1 and the smallest value greater than 1 that is representable as a Number value, which is approximately 2.2204460492503130808472633361816 x 10-16.
|
||||
|
||||
#### isFinite(x) _(es5-ext/number/is-finite)_
|
||||
|
||||
[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-number.isfinite).
|
||||
Whether value is finite. Differs from global isNaN that it doesn't do type coercion.
|
||||
|
||||
#### isInteger(x) _(es5-ext/number/is-integer)_
|
||||
|
||||
[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-number.isinteger).
|
||||
Whether value is integer.
|
||||
|
||||
#### isNaN(x) _(es5-ext/number/is-nan)_
|
||||
|
||||
[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-number.isnan).
|
||||
Whether value is NaN. Differs from global isNaN that it doesn't do type coercion.
|
||||
|
||||
#### isNumber(x) _(es5-ext/number/is-number)_
|
||||
|
||||
Whether given value is number
|
||||
|
||||
#### isSafeInteger(x) _(es5-ext/number/is-safe-integer)_
|
||||
|
||||
[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-number.issafeinteger).
|
||||
|
||||
#### MAX_SAFE_INTEGER _(es5-ext/number/max-safe-integer)_
|
||||
|
||||
[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-number.maxsafeinteger).
|
||||
The value of Number.MAX_SAFE_INTEGER is 9007199254740991.
|
||||
|
||||
#### MIN_SAFE_INTEGER _(es5-ext/number/min-safe-integer)_
|
||||
|
||||
[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-number.minsafeinteger).
|
||||
The value of Number.MIN_SAFE_INTEGER is -9007199254740991 (253-1).
|
||||
|
||||
#### toInteger(x) _(es5-ext/number/to-integer)_
|
||||
|
||||
Converts value to integer
|
||||
|
||||
#### toPosInteger(x) _(es5-ext/number/to-pos-integer)_
|
||||
|
||||
Converts value to positive integer. If provided value is less than 0, then 0 is returned
|
||||
|
||||
#### toUint32(x) _(es5-ext/number/to-uint32)_
|
||||
|
||||
Converts value to unsigned 32 bit integer. This type is used for array lengths.
|
||||
See: http://www.2ality.com/2012/02/js-integers.html
|
||||
|
||||
### Number Prototype extensions
|
||||
|
||||
#### num.pad(length[, precision]) _(es5-ext/number/#/pad)_
|
||||
|
||||
Pad given number with zeros. Returns string
|
||||
|
||||
### Object Constructor extensions
|
||||
|
||||
#### assign(target, source[, …sourcen]) _(es5-ext/object/assign)_
|
||||
|
||||
[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-object.assign).
|
||||
Extend _target_ by enumerable own properties of other objects. If properties are already set on target object, they will be overwritten.
|
||||
|
||||
#### clear(obj) _(es5-ext/object/clear)_
|
||||
|
||||
Remove all enumerable own properties of the object
|
||||
|
||||
#### compact(obj) _(es5-ext/object/compact)_
|
||||
|
||||
Returns copy of the object with all enumerable properties that have no falsy values
|
||||
|
||||
#### compare(obj1, obj2) _(es5-ext/object/compare)_
|
||||
|
||||
Universal cross-type compare function. To be used for e.g. array sort.
|
||||
|
||||
#### copy(obj) _(es5-ext/object/copy)_
|
||||
|
||||
Returns copy of the object with all enumerable properties.
|
||||
|
||||
#### copyDeep(obj) _(es5-ext/object/copy-deep)_
|
||||
|
||||
Returns deep copy of the object with all enumerable properties.
|
||||
|
||||
#### count(obj) _(es5-ext/object/count)_
|
||||
|
||||
Counts number of enumerable own properties on object
|
||||
|
||||
#### create(obj[, properties]) _(es5-ext/object/create)_
|
||||
|
||||
`Object.create` alternative that provides workaround for [V8 issue](http://code.google.com/p/v8/issues/detail?id=2804).
|
||||
|
||||
When `null` is provided as a prototype, it's substituted with specially prepared object that derives from Object.prototype but has all Object.prototype properties shadowed with undefined.
|
||||
|
||||
It's quirky solution that allows us to have plain objects with no truthy properties but with turnable prototype.
|
||||
|
||||
Use only for objects that you plan to switch prototypes of and be aware of limitations of this workaround.
|
||||
|
||||
#### eq(x, y) _(es5-ext/object/eq)_
|
||||
|
||||
Whether two values are equal, using [_SameValueZero_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-samevaluezero) algorithm.
|
||||
|
||||
#### every(obj, cb[, thisArg[, compareFn]]) _(es5-ext/object/every)_
|
||||
|
||||
Analogous to Array.prototype.every. Returns true if every key-value pair in this object satisfies the provided testing function.
|
||||
Optionally _compareFn_ can be provided which assures that keys are tested in given order. If provided _compareFn_ is equal to `true`, then order is alphabetical (by key).
|
||||
|
||||
#### filter(obj, cb[, thisArg]) _(es5-ext/object/filter)_
|
||||
|
||||
Analogous to Array.prototype.filter. Returns new object with properites for which _cb_ function returned truthy value.
|
||||
|
||||
#### firstKey(obj) _(es5-ext/object/first-key)_
|
||||
|
||||
Returns first enumerable key of the object, as keys are unordered by specification, it can be any key of an object.
|
||||
|
||||
#### flatten(obj) _(es5-ext/object/flatten)_
|
||||
|
||||
Returns new object, with flatten properties of input object
|
||||
|
||||
_flatten({ a: { b: 1 }, c: { d: 1 } }) =def { b: 1, d: 1 }_
|
||||
|
||||
#### forEach(obj, cb[, thisArg[, compareFn]]) _(es5-ext/object/for-each)_
|
||||
|
||||
Analogous to Array.prototype.forEach. Calls a function for each key-value pair found in object
|
||||
Optionally _compareFn_ can be provided which assures that properties are iterated in given order. If provided _compareFn_ is equal to `true`, then order is alphabetical (by key).
|
||||
|
||||
#### getPropertyNames() _(es5-ext/object/get-property-names)_
|
||||
|
||||
Get all (not just own) property names of the object
|
||||
|
||||
#### is(x, y) _(es5-ext/object/is)_
|
||||
|
||||
Whether two values are equal, using [_SameValue_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-samevaluezero) algorithm.
|
||||
|
||||
#### isArrayLike(x) _(es5-ext/object/is-array-like)_
|
||||
|
||||
Whether object is array-like object
|
||||
|
||||
#### isCopy(x, y) _(es5-ext/object/is-copy)_
|
||||
|
||||
Two values are considered a copy of same value when all of their own enumerable properties have same values.
|
||||
|
||||
#### isCopyDeep(x, y) _(es5-ext/object/is-copy-deep)_
|
||||
|
||||
Deep comparision of objects
|
||||
|
||||
#### isEmpty(obj) _(es5-ext/object/is-empty)_
|
||||
|
||||
True if object doesn't have any own enumerable property
|
||||
|
||||
#### isObject(arg) _(es5-ext/object/is-object)_
|
||||
|
||||
Whether value is not primitive
|
||||
|
||||
#### isPlainObject(arg) _(es5-ext/object/is-plain-object)_
|
||||
|
||||
Whether object is plain object, its protototype should be Object.prototype and it cannot be host object.
|
||||
|
||||
#### keyOf(obj, searchValue) _(es5-ext/object/key-of)_
|
||||
|
||||
Search object for value
|
||||
|
||||
#### keys(obj) _(es5-ext/object/keys)_
|
||||
|
||||
[_Updated with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-object.keys).
|
||||
ES6's version of `keys`, doesn't throw on primitive input
|
||||
|
||||
#### map(obj, cb[, thisArg]) _(es5-ext/object/map)_
|
||||
|
||||
Analogous to Array.prototype.map. Creates a new object with properties which values are results of calling a provided function on every key-value pair in this object.
|
||||
|
||||
#### mapKeys(obj, cb[, thisArg]) _(es5-ext/object/map-keys)_
|
||||
|
||||
Create new object with same values, but remapped keys
|
||||
|
||||
#### mixin(target, source) _(es5-ext/object/mixin)_
|
||||
|
||||
Extend _target_ by all own properties of other objects. Properties found in both objects will be overwritten (unless they're not configurable and cannot be overwritten).
|
||||
_It was for a moment part of ECMAScript 6 draft._
|
||||
|
||||
#### mixinPrototypes(target, …source]) _(es5-ext/object/mixin-prototypes)_
|
||||
|
||||
Extends _target_, with all source and source's prototype properties.
|
||||
Useful as an alternative for `setPrototypeOf` in environments in which it cannot be shimmed (no `__proto__` support).
|
||||
|
||||
#### normalizeOptions(options) _(es5-ext/object/normalize-options)_
|
||||
|
||||
Normalizes options object into flat plain object.
|
||||
|
||||
Useful for functions in which we either need to keep options object for future reference or need to modify it for internal use.
|
||||
|
||||
- It never returns input `options` object back (always a copy is created)
|
||||
- `options` can be undefined in such case empty plain object is returned.
|
||||
- Copies all enumerable properties found down prototype chain.
|
||||
|
||||
#### primitiveSet([…names]) _(es5-ext/object/primitive-set)_
|
||||
|
||||
Creates `null` prototype based plain object, and sets on it all property names provided in arguments to true.
|
||||
|
||||
#### safeTraverse(obj[, …names]) _(es5-ext/object/safe-traverse)_
|
||||
|
||||
Safe navigation of object properties. See http://wiki.ecmascript.org/doku.php?id=strawman:existential_operator
|
||||
|
||||
#### serialize(value) _(es5-ext/object/serialize)_
|
||||
|
||||
Serialize value into string. Differs from [JSON.stringify](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON/stringify) that it serializes also dates, functions and regular expresssions.
|
||||
|
||||
#### setPrototypeOf(object, proto) _(es5-ext/object/set-prototype-of)_
|
||||
|
||||
[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-object.setprototypeof).
|
||||
If native version is not provided, it depends on existence of `__proto__` functionality, if it's missing, `null` instead of function is exposed.
|
||||
|
||||
#### some(obj, cb[, thisArg[, compareFn]]) _(es5-ext/object/some)_
|
||||
|
||||
Analogous to Array.prototype.some Returns true if any key-value pair satisfies the provided
|
||||
testing function.
|
||||
Optionally _compareFn_ can be provided which assures that keys are tested in given order. If provided _compareFn_ is equal to `true`, then order is alphabetical (by key).
|
||||
|
||||
#### toArray(obj[, cb[, thisArg[, compareFn]]]) _(es5-ext/object/to-array)_
|
||||
|
||||
Creates an array of results of calling a provided function on every key-value pair in this object.
|
||||
Optionally _compareFn_ can be provided which assures that results are added in given order. If provided _compareFn_ is equal to `true`, then order is alphabetical (by key).
|
||||
|
||||
#### unserialize(str) _(es5-ext/object/unserialize)_
|
||||
|
||||
Userializes value previously serialized with [serialize](#serializevalue-es5-extobjectserialize)
|
||||
|
||||
#### validCallable(x) _(es5-ext/object/valid-callable)_
|
||||
|
||||
If given object is not callable throw TypeError in other case return it.
|
||||
|
||||
#### validObject(x) _(es5-ext/object/valid-object)_
|
||||
|
||||
Throws error if given value is not an object, otherwise it is returned.
|
||||
|
||||
#### validValue(x) _(es5-ext/object/valid-value)_
|
||||
|
||||
Throws error if given value is `null` or `undefined`, otherwise returns value.
|
||||
|
||||
### RegExp Constructor extensions
|
||||
|
||||
#### escape(str) _(es5-ext/reg-exp/escape)_
|
||||
|
||||
Escapes string to be used in regular expression
|
||||
|
||||
#### isRegExp(x) _(es5-ext/reg-exp/is-reg-exp)_
|
||||
|
||||
Whether object is regular expression
|
||||
|
||||
#### validRegExp(x) _(es5-ext/reg-exp/valid-reg-exp)_
|
||||
|
||||
If object is regular expression it is returned, otherwise TypeError is thrown.
|
||||
|
||||
### RegExp Prototype extensions
|
||||
|
||||
#### re.isSticky(x) _(es5-ext/reg-exp/#/is-sticky)_
|
||||
|
||||
Whether regular expression has `sticky` flag.
|
||||
|
||||
It's to be used as counterpart to [regExp.sticky](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-get-regexp.prototype.sticky) if it's not implemented.
|
||||
|
||||
#### re.isUnicode(x) _(es5-ext/reg-exp/#/is-unicode)_
|
||||
|
||||
Whether regular expression has `unicode` flag.
|
||||
|
||||
It's to be used as counterpart to [regExp.unicode](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-get-regexp.prototype.unicode) if it's not implemented.
|
||||
|
||||
#### re.match(string) _(es5-ext/reg-exp/#/match)_
|
||||
|
||||
[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-regexp.prototype.match).
|
||||
|
||||
#### re.replace(string, replaceValue) _(es5-ext/reg-exp/#/replace)_
|
||||
|
||||
[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-regexp.prototype.replace).
|
||||
|
||||
#### re.search(string) _(es5-ext/reg-exp/#/search)_
|
||||
|
||||
[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-regexp.prototype.search).
|
||||
|
||||
#### re.split(string) _(es5-ext/reg-exp/#/search)_
|
||||
|
||||
[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-regexp.prototype.split).
|
||||
|
||||
#### re.sticky _(es5-ext/reg-exp/#/sticky/implement)_
|
||||
|
||||
[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-regexp.prototype.sticky).
|
||||
It's a getter, so only `implement` and `is-implemented` modules are provided.
|
||||
|
||||
#### re.unicode _(es5-ext/reg-exp/#/unicode/implement)_
|
||||
|
||||
[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-regexp.prototype.unicode).
|
||||
It's a getter, so only `implement` and `is-implemented` modules are provided.
|
||||
|
||||
### String Constructor extensions
|
||||
|
||||
#### formatMethod(fMap) _(es5-ext/string/format-method)_
|
||||
|
||||
Creates format method. It's used e.g. to create `Date.prototype.format` method
|
||||
|
||||
#### fromCodePoint([…codePoints]) _(es5-ext/string/from-code-point)_
|
||||
|
||||
[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-string.fromcodepoint)
|
||||
|
||||
#### isString(x) _(es5-ext/string/is-string)_
|
||||
|
||||
Whether object is string
|
||||
|
||||
#### randomUniq() _(es5-ext/string/random-uniq)_
|
||||
|
||||
Returns randomly generated id, with guarantee of local uniqueness (no same id will be returned twice)
|
||||
|
||||
#### raw(callSite[, …substitutions]) _(es5-ext/string/raw)_
|
||||
|
||||
[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-string.raw)
|
||||
|
||||
### String Prototype extensions
|
||||
|
||||
#### str.at(pos) _(es5-ext/string/#/at)_
|
||||
|
||||
_Proposed for ECMAScript 6/7 standard, but not (yet) in a draft_
|
||||
|
||||
Returns a string at given position in Unicode-safe manner.
|
||||
Based on [implementation by Mathias Bynens](https://github.com/mathiasbynens/String.prototype.at).
|
||||
|
||||
#### str.camelToHyphen() _(es5-ext/string/#/camel-to-hyphen)_
|
||||
|
||||
Convert camelCase string to hyphen separated, e.g. one-two-three -> oneTwoThree.
|
||||
Useful when converting names from js property convention into filename convention.
|
||||
|
||||
#### str.capitalize() _(es5-ext/string/#/capitalize)_
|
||||
|
||||
Capitalize first character of a string
|
||||
|
||||
#### str.caseInsensitiveCompare(str) _(es5-ext/string/#/case-insensitive-compare)_
|
||||
|
||||
Case insensitive compare
|
||||
|
||||
#### str.codePointAt(pos) _(es5-ext/string/#/code-point-at)_
|
||||
|
||||
[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-string.prototype.codepointat)
|
||||
|
||||
Based on [implementation by Mathias Bynens](https://github.com/mathiasbynens/String.prototype.codePointAt).
|
||||
|
||||
#### str.contains(searchString[, position]) _(es5-ext/string/#/contains)_
|
||||
|
||||
[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-string.prototype.contains)
|
||||
|
||||
Whether string contains given string.
|
||||
|
||||
#### str.endsWith(searchString[, endPosition]) _(es5-ext/string/#/ends-with)_
|
||||
|
||||
[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-string.prototype.endswith).
|
||||
Whether strings ends with given string
|
||||
|
||||
#### str.hyphenToCamel() _(es5-ext/string/#/hyphen-to-camel)_
|
||||
|
||||
Convert hyphen separated string to camelCase, e.g. one-two-three -> oneTwoThree.
|
||||
Useful when converting names from filename convention to js property name convention.
|
||||
|
||||
#### str.indent(str[, count]) _(es5-ext/string/#/indent)_
|
||||
|
||||
Indents each line with provided _str_ (if _count_ given then _str_ is repeated _count_ times).
|
||||
|
||||
#### str.last() _(es5-ext/string/#/last)_
|
||||
|
||||
Return last character
|
||||
|
||||
#### str.normalize([form]) _(es5-ext/string/#/normalize)_
|
||||
|
||||
[_Introduced with ECMAScript 6_](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/normalize).
|
||||
Returns the Unicode Normalization Form of a given string.
|
||||
Based on Matsuza's version. Code used for integrated shim can be found at [github.com/walling/unorm](https://github.com/walling/unorm/blob/master/lib/unorm.js)
|
||||
|
||||
#### str.pad(fill[, length]) _(es5-ext/string/#/pad)_
|
||||
|
||||
Pad string with _fill_.
|
||||
If _length_ si given than _fill_ is reapated _length_ times.
|
||||
If _length_ is negative then pad is applied from right.
|
||||
|
||||
#### str.repeat(n) _(es5-ext/string/#/repeat)_
|
||||
|
||||
[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-string.prototype.repeat).
|
||||
Repeat given string _n_ times
|
||||
|
||||
#### str.plainReplace(search, replace) _(es5-ext/string/#/plain-replace)_
|
||||
|
||||
Simple `replace` version. Doesn't support regular expressions. Replaces just first occurrence of search string. Doesn't support insert patterns, therefore it is safe to replace text with text obtained programmatically (there's no need for additional _$_ characters escape in such case).
|
||||
|
||||
#### str.plainReplaceAll(search, replace) _(es5-ext/string/#/plain-replace-all)_
|
||||
|
||||
Simple `replace` version. Doesn't support regular expressions. Replaces all occurrences of search string. Doesn't support insert patterns, therefore it is safe to replace text with text obtained programmatically (there's no need for additional _$_ characters escape in such case).
|
||||
|
||||
#### str.startsWith(searchString[, position]) _(es5-ext/string/#/starts-with)_
|
||||
|
||||
[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-string.prototype.startswith).
|
||||
Whether strings starts with given string
|
||||
|
||||
#### str[@@iterator] _(es5-ext/string/#/@@iterator)_
|
||||
|
||||
[_Introduced with ECMAScript 6_](http://people.mozilla.org/~jorendorff/es6-draft.html#sec-string.prototype-@@iterator).
|
||||
Returns iterator object which traverses all string characters (with respect to unicode symbols)
|
||||
|
||||
### Tests [](https://circleci.com/gh/medikoo/es5-ext)
|
||||
|
||||
$ npm test
|
||||
26
static/js/ketcher2/node_modules/es5-ext/appveyor.yml
generated
vendored
Normal file
26
static/js/ketcher2/node_modules/es5-ext/appveyor.yml
generated
vendored
Normal file
@ -0,0 +1,26 @@
|
||||
# Test against the latest version of this Node.js version
|
||||
environment:
|
||||
matrix:
|
||||
# node.js
|
||||
- nodejs_version: "0.12"
|
||||
- nodejs_version: "4"
|
||||
- nodejs_version: "6"
|
||||
- nodejs_version: "8"
|
||||
|
||||
# Install scripts. (runs after repo cloning)
|
||||
install:
|
||||
# Get the latest stable version of Node.js or io.js
|
||||
- ps: Install-Product node $env:nodejs_version
|
||||
# install modules
|
||||
- npm install
|
||||
|
||||
# Post-install test scripts.
|
||||
test_script:
|
||||
# Output useful info for debugging.
|
||||
- node --version
|
||||
- npm --version
|
||||
# run tests
|
||||
- npm test
|
||||
|
||||
# Don't actually build.
|
||||
build: off
|
||||
10
static/js/ketcher2/node_modules/es5-ext/array/#/@@iterator/implement.js
generated
vendored
Normal file
10
static/js/ketcher2/node_modules/es5-ext/array/#/@@iterator/implement.js
generated
vendored
Normal file
@ -0,0 +1,10 @@
|
||||
"use strict";
|
||||
|
||||
if (!require("./is-implemented")()) {
|
||||
Object.defineProperty(Array.prototype, require("es6-symbol").iterator, {
|
||||
value: require("./shim"),
|
||||
configurable: true,
|
||||
enumerable: false,
|
||||
writable: true
|
||||
});
|
||||
}
|
||||
4
static/js/ketcher2/node_modules/es5-ext/array/#/@@iterator/index.js
generated
vendored
Normal file
4
static/js/ketcher2/node_modules/es5-ext/array/#/@@iterator/index.js
generated
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
"use strict";
|
||||
|
||||
module.exports = require("./is-implemented")()
|
||||
? Array.prototype[require("es6-symbol").iterator] : require("./shim");
|
||||
16
static/js/ketcher2/node_modules/es5-ext/array/#/@@iterator/is-implemented.js
generated
vendored
Normal file
16
static/js/ketcher2/node_modules/es5-ext/array/#/@@iterator/is-implemented.js
generated
vendored
Normal file
@ -0,0 +1,16 @@
|
||||
"use strict";
|
||||
|
||||
var iteratorSymbol = require("es6-symbol").iterator;
|
||||
|
||||
module.exports = function () {
|
||||
var arr = ["foo", 1], iterator, result;
|
||||
if (typeof arr[iteratorSymbol] !== "function") return false;
|
||||
iterator = arr[iteratorSymbol]();
|
||||
if (!iterator) return false;
|
||||
if (typeof iterator.next !== "function") return false;
|
||||
result = iterator.next();
|
||||
if (!result) return false;
|
||||
if (result.value !== "foo") return false;
|
||||
if (result.done !== false) return false;
|
||||
return true;
|
||||
};
|
||||
3
static/js/ketcher2/node_modules/es5-ext/array/#/@@iterator/shim.js
generated
vendored
Normal file
3
static/js/ketcher2/node_modules/es5-ext/array/#/@@iterator/shim.js
generated
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
"use strict";
|
||||
|
||||
module.exports = require("../values/shim");
|
||||
9
static/js/ketcher2/node_modules/es5-ext/array/#/_compare-by-length.js
generated
vendored
Normal file
9
static/js/ketcher2/node_modules/es5-ext/array/#/_compare-by-length.js
generated
vendored
Normal file
@ -0,0 +1,9 @@
|
||||
// Used internally to sort array of lists by length
|
||||
|
||||
"use strict";
|
||||
|
||||
var toPosInt = require("../../number/to-pos-integer");
|
||||
|
||||
module.exports = function (arr1, arr2) {
|
||||
return toPosInt(arr1.length) - toPosInt(arr2.length);
|
||||
};
|
||||
28
static/js/ketcher2/node_modules/es5-ext/array/#/binary-search.js
generated
vendored
Normal file
28
static/js/ketcher2/node_modules/es5-ext/array/#/binary-search.js
generated
vendored
Normal file
@ -0,0 +1,28 @@
|
||||
"use strict";
|
||||
|
||||
var toPosInt = require("../../number/to-pos-integer")
|
||||
, callable = require("../../object/valid-callable")
|
||||
, value = require("../../object/valid-value")
|
||||
|
||||
, floor = Math.floor;
|
||||
|
||||
module.exports = function (compareFn) {
|
||||
var length, low, high, middle;
|
||||
|
||||
value(this);
|
||||
callable(compareFn);
|
||||
|
||||
length = toPosInt(this.length);
|
||||
low = 0;
|
||||
high = length - 1;
|
||||
|
||||
while (low <= high) {
|
||||
middle = floor((low + high) / 2);
|
||||
if (compareFn(this[middle]) < 0) high = middle - 1;
|
||||
else low = middle + 1;
|
||||
}
|
||||
|
||||
if (high < 0) return 0;
|
||||
if (high >= length) return length - 1;
|
||||
return high;
|
||||
};
|
||||
12
static/js/ketcher2/node_modules/es5-ext/array/#/clear.js
generated
vendored
Normal file
12
static/js/ketcher2/node_modules/es5-ext/array/#/clear.js
generated
vendored
Normal file
@ -0,0 +1,12 @@
|
||||
// Inspired by Google Closure:
|
||||
// http://closure-library.googlecode.com/svn/docs/
|
||||
// closure_goog_array_array.js.html#goog.array.clear
|
||||
|
||||
"use strict";
|
||||
|
||||
var value = require("../../object/valid-value");
|
||||
|
||||
module.exports = function () {
|
||||
value(this).length = 0;
|
||||
return this;
|
||||
};
|
||||
13
static/js/ketcher2/node_modules/es5-ext/array/#/compact.js
generated
vendored
Normal file
13
static/js/ketcher2/node_modules/es5-ext/array/#/compact.js
generated
vendored
Normal file
@ -0,0 +1,13 @@
|
||||
// Inspired by: http://documentcloud.github.com/underscore/#compact
|
||||
|
||||
"use strict";
|
||||
|
||||
var isValue = require("../../object/is-value");
|
||||
|
||||
var filter = Array.prototype.filter;
|
||||
|
||||
module.exports = function () {
|
||||
return filter.call(this, function (val) {
|
||||
return isValue(val);
|
||||
});
|
||||
};
|
||||
8
static/js/ketcher2/node_modules/es5-ext/array/#/concat/implement.js
generated
vendored
Normal file
8
static/js/ketcher2/node_modules/es5-ext/array/#/concat/implement.js
generated
vendored
Normal file
@ -0,0 +1,8 @@
|
||||
"use strict";
|
||||
|
||||
if (!require("./is-implemented")()) {
|
||||
Object.defineProperty(Array.prototype, "concat", { value: require("./shim"),
|
||||
configurable: true,
|
||||
enumerable: false,
|
||||
writable: true });
|
||||
}
|
||||
4
static/js/ketcher2/node_modules/es5-ext/array/#/concat/index.js
generated
vendored
Normal file
4
static/js/ketcher2/node_modules/es5-ext/array/#/concat/index.js
generated
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
"use strict";
|
||||
|
||||
module.exports = require("./is-implemented")()
|
||||
? Array.prototype.concat : require("./shim");
|
||||
7
static/js/ketcher2/node_modules/es5-ext/array/#/concat/is-implemented.js
generated
vendored
Normal file
7
static/js/ketcher2/node_modules/es5-ext/array/#/concat/is-implemented.js
generated
vendored
Normal file
@ -0,0 +1,7 @@
|
||||
"use strict";
|
||||
|
||||
var SubArray = require("../../_sub-array-dummy-safe");
|
||||
|
||||
module.exports = function () {
|
||||
return (new SubArray()).concat("foo") instanceof SubArray;
|
||||
};
|
||||
48
static/js/ketcher2/node_modules/es5-ext/array/#/concat/shim.js
generated
vendored
Normal file
48
static/js/ketcher2/node_modules/es5-ext/array/#/concat/shim.js
generated
vendored
Normal file
@ -0,0 +1,48 @@
|
||||
"use strict";
|
||||
|
||||
var isPlainArray = require("../../is-plain-array")
|
||||
, toPosInt = require("../../../number/to-pos-integer")
|
||||
, isObject = require("../../../object/is-object")
|
||||
, isConcatSpreadable = require("es6-symbol").isConcatSpreadable
|
||||
, isArray = Array.isArray
|
||||
, concat = Array.prototype.concat
|
||||
, forEach = Array.prototype.forEach
|
||||
, isSpreadable;
|
||||
|
||||
isSpreadable = function (value) {
|
||||
if (!value) return false;
|
||||
if (!isObject(value)) return false;
|
||||
if (value[isConcatSpreadable] !== undefined) {
|
||||
return Boolean(value[isConcatSpreadable]);
|
||||
}
|
||||
return isArray(value);
|
||||
};
|
||||
|
||||
// eslint-disable-next-line no-unused-vars
|
||||
module.exports = function (item /*, …items*/) {
|
||||
var result;
|
||||
if (!this || !isArray(this) || isPlainArray(this)) {
|
||||
return concat.apply(this, arguments);
|
||||
}
|
||||
result = new this.constructor();
|
||||
if (isSpreadable(this)) {
|
||||
forEach.call(this, function (val, i) {
|
||||
result[i] = val;
|
||||
});
|
||||
} else {
|
||||
result[0] = this;
|
||||
}
|
||||
forEach.call(arguments, function (arg) {
|
||||
var base;
|
||||
if (isSpreadable(arg)) {
|
||||
base = result.length;
|
||||
result.length += toPosInt(arg.length);
|
||||
forEach.call(arg, function (val, i) {
|
||||
result[base + i] = val;
|
||||
});
|
||||
return;
|
||||
}
|
||||
result.push(arg);
|
||||
});
|
||||
return result;
|
||||
};
|
||||
7
static/js/ketcher2/node_modules/es5-ext/array/#/contains.js
generated
vendored
Normal file
7
static/js/ketcher2/node_modules/es5-ext/array/#/contains.js
generated
vendored
Normal file
@ -0,0 +1,7 @@
|
||||
"use strict";
|
||||
|
||||
var indexOf = require("./e-index-of");
|
||||
|
||||
module.exports = function (searchElement/*, position*/) {
|
||||
return indexOf.call(this, searchElement, arguments[1]) > -1;
|
||||
};
|
||||
10
static/js/ketcher2/node_modules/es5-ext/array/#/copy-within/implement.js
generated
vendored
Normal file
10
static/js/ketcher2/node_modules/es5-ext/array/#/copy-within/implement.js
generated
vendored
Normal file
@ -0,0 +1,10 @@
|
||||
"use strict";
|
||||
|
||||
if (!require("./is-implemented")()) {
|
||||
Object.defineProperty(Array.prototype, "copyWithin", {
|
||||
value: require("./shim"),
|
||||
configurable: true,
|
||||
enumerable: false,
|
||||
writable: true
|
||||
});
|
||||
}
|
||||
4
static/js/ketcher2/node_modules/es5-ext/array/#/copy-within/index.js
generated
vendored
Normal file
4
static/js/ketcher2/node_modules/es5-ext/array/#/copy-within/index.js
generated
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
"use strict";
|
||||
|
||||
module.exports = require("./is-implemented")()
|
||||
? Array.prototype.copyWithin : require("./shim");
|
||||
7
static/js/ketcher2/node_modules/es5-ext/array/#/copy-within/is-implemented.js
generated
vendored
Normal file
7
static/js/ketcher2/node_modules/es5-ext/array/#/copy-within/is-implemented.js
generated
vendored
Normal file
@ -0,0 +1,7 @@
|
||||
"use strict";
|
||||
|
||||
module.exports = function () {
|
||||
var arr = [1, 2, 3, 4, 5];
|
||||
if (typeof arr.copyWithin !== "function") return false;
|
||||
return String(arr.copyWithin(1, 3)) === "1,4,5,4,5";
|
||||
};
|
||||
45
static/js/ketcher2/node_modules/es5-ext/array/#/copy-within/shim.js
generated
vendored
Normal file
45
static/js/ketcher2/node_modules/es5-ext/array/#/copy-within/shim.js
generated
vendored
Normal file
@ -0,0 +1,45 @@
|
||||
// Taken from: https://github.com/paulmillr/es6-shim/
|
||||
|
||||
"use strict";
|
||||
|
||||
var toInteger = require("../../../number/to-integer")
|
||||
, toPosInt = require("../../../number/to-pos-integer")
|
||||
, validValue = require("../../../object/valid-value")
|
||||
, objHasOwnProperty = Object.prototype.hasOwnProperty
|
||||
, max = Math.max
|
||||
, min = Math.min;
|
||||
|
||||
module.exports = function (target, start /*, end*/) {
|
||||
var arr = validValue(this)
|
||||
, end = arguments[2]
|
||||
, length = toPosInt(arr.length)
|
||||
, to
|
||||
, from
|
||||
, fin
|
||||
, count
|
||||
, direction;
|
||||
|
||||
target = toInteger(target);
|
||||
start = toInteger(start);
|
||||
end = end === undefined ? length : toInteger(end);
|
||||
|
||||
to = target < 0 ? max(length + target, 0) : min(target, length);
|
||||
from = start < 0 ? max(length + start, 0) : min(start, length);
|
||||
fin = end < 0 ? max(length + end, 0) : min(end, length);
|
||||
count = min(fin - from, length - to);
|
||||
direction = 1;
|
||||
|
||||
if (from < to && to < from + count) {
|
||||
direction = -1;
|
||||
from += count - 1;
|
||||
to += count - 1;
|
||||
}
|
||||
while (count > 0) {
|
||||
if (objHasOwnProperty.call(arr, from)) arr[to] = arr[from];
|
||||
else delete arr[from];
|
||||
from += direction;
|
||||
to += direction;
|
||||
count -= 1;
|
||||
}
|
||||
return arr;
|
||||
};
|
||||
13
static/js/ketcher2/node_modules/es5-ext/array/#/diff.js
generated
vendored
Normal file
13
static/js/ketcher2/node_modules/es5-ext/array/#/diff.js
generated
vendored
Normal file
@ -0,0 +1,13 @@
|
||||
"use strict";
|
||||
|
||||
var value = require("../../object/valid-value")
|
||||
, contains = require("./contains")
|
||||
, filter = Array.prototype.filter;
|
||||
|
||||
module.exports = function (other) {
|
||||
value(this);
|
||||
value(other);
|
||||
return filter.call(this, function (item) {
|
||||
return !contains.call(other, item);
|
||||
});
|
||||
};
|
||||
28
static/js/ketcher2/node_modules/es5-ext/array/#/e-index-of.js
generated
vendored
Normal file
28
static/js/ketcher2/node_modules/es5-ext/array/#/e-index-of.js
generated
vendored
Normal file
@ -0,0 +1,28 @@
|
||||
"use strict";
|
||||
|
||||
var numberIsNaN = require("../../number/is-nan")
|
||||
, toPosInt = require("../../number/to-pos-integer")
|
||||
, value = require("../../object/valid-value")
|
||||
, indexOf = Array.prototype.indexOf
|
||||
, objHasOwnProperty = Object.prototype.hasOwnProperty
|
||||
, abs = Math.abs
|
||||
, floor = Math.floor;
|
||||
|
||||
module.exports = function (searchElement /*, fromIndex*/) {
|
||||
var i, length, fromIndex, val;
|
||||
if (!numberIsNaN(searchElement)) return indexOf.apply(this, arguments);
|
||||
|
||||
length = toPosInt(value(this).length);
|
||||
fromIndex = arguments[1];
|
||||
if (isNaN(fromIndex)) fromIndex = 0;
|
||||
else if (fromIndex >= 0) fromIndex = floor(fromIndex);
|
||||
else fromIndex = toPosInt(this.length) - floor(abs(fromIndex));
|
||||
|
||||
for (i = fromIndex; i < length; ++i) {
|
||||
if (objHasOwnProperty.call(this, i)) {
|
||||
val = this[i];
|
||||
if (numberIsNaN(val)) return i; // Jslint: ignore
|
||||
}
|
||||
}
|
||||
return -1;
|
||||
};
|
||||
31
static/js/ketcher2/node_modules/es5-ext/array/#/e-last-index-of.js
generated
vendored
Normal file
31
static/js/ketcher2/node_modules/es5-ext/array/#/e-last-index-of.js
generated
vendored
Normal file
@ -0,0 +1,31 @@
|
||||
"use strict";
|
||||
|
||||
var numberIsNaN = require("../../number/is-nan")
|
||||
, toPosInt = require("../../number/to-pos-integer")
|
||||
, value = require("../../object/valid-value")
|
||||
, lastIndexOf = Array.prototype.lastIndexOf
|
||||
, objHasOwnProperty = Object.prototype.hasOwnProperty
|
||||
, abs = Math.abs
|
||||
, floor = Math.floor;
|
||||
|
||||
module.exports = function (searchElement /*, fromIndex*/) {
|
||||
var i, fromIndex, val;
|
||||
if (!numberIsNaN(searchElement)) {
|
||||
// Jslint: ignore
|
||||
return lastIndexOf.apply(this, arguments);
|
||||
}
|
||||
|
||||
value(this);
|
||||
fromIndex = arguments[1];
|
||||
if (isNaN(fromIndex)) fromIndex = toPosInt(this.length) - 1;
|
||||
else if (fromIndex >= 0) fromIndex = floor(fromIndex);
|
||||
else fromIndex = toPosInt(this.length) - floor(abs(fromIndex));
|
||||
|
||||
for (i = fromIndex; i >= 0; --i) {
|
||||
if (objHasOwnProperty.call(this, i)) {
|
||||
val = this[i];
|
||||
if (numberIsNaN(val)) return i; // Jslint: ignore
|
||||
}
|
||||
}
|
||||
return -1;
|
||||
};
|
||||
8
static/js/ketcher2/node_modules/es5-ext/array/#/entries/implement.js
generated
vendored
Normal file
8
static/js/ketcher2/node_modules/es5-ext/array/#/entries/implement.js
generated
vendored
Normal file
@ -0,0 +1,8 @@
|
||||
"use strict";
|
||||
|
||||
if (!require("./is-implemented")()) {
|
||||
Object.defineProperty(Array.prototype, "entries", { value: require("./shim"),
|
||||
configurable: true,
|
||||
enumerable: false,
|
||||
writable: true });
|
||||
}
|
||||
4
static/js/ketcher2/node_modules/es5-ext/array/#/entries/index.js
generated
vendored
Normal file
4
static/js/ketcher2/node_modules/es5-ext/array/#/entries/index.js
generated
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
"use strict";
|
||||
|
||||
module.exports = require("./is-implemented")()
|
||||
? Array.prototype.entries : require("./shim");
|
||||
15
static/js/ketcher2/node_modules/es5-ext/array/#/entries/is-implemented.js
generated
vendored
Normal file
15
static/js/ketcher2/node_modules/es5-ext/array/#/entries/is-implemented.js
generated
vendored
Normal file
@ -0,0 +1,15 @@
|
||||
"use strict";
|
||||
|
||||
module.exports = function () {
|
||||
var arr = [1, "foo"], iterator, result;
|
||||
if (typeof arr.entries !== "function") return false;
|
||||
iterator = arr.entries();
|
||||
if (!iterator) return false;
|
||||
if (typeof iterator.next !== "function") return false;
|
||||
result = iterator.next();
|
||||
if (!result || !result.value) return false;
|
||||
if (result.value[0] !== 0) return false;
|
||||
if (result.value[1] !== 1) return false;
|
||||
if (result.done !== false) return false;
|
||||
return true;
|
||||
};
|
||||
6
static/js/ketcher2/node_modules/es5-ext/array/#/entries/shim.js
generated
vendored
Normal file
6
static/js/ketcher2/node_modules/es5-ext/array/#/entries/shim.js
generated
vendored
Normal file
@ -0,0 +1,6 @@
|
||||
"use strict";
|
||||
|
||||
var ArrayIterator = require("es6-iterator/array");
|
||||
module.exports = function () {
|
||||
return new ArrayIterator(this, "key+value");
|
||||
};
|
||||
31
static/js/ketcher2/node_modules/es5-ext/array/#/exclusion.js
generated
vendored
Normal file
31
static/js/ketcher2/node_modules/es5-ext/array/#/exclusion.js
generated
vendored
Normal file
@ -0,0 +1,31 @@
|
||||
"use strict";
|
||||
|
||||
var value = require("../../object/valid-value")
|
||||
, aFrom = require("../from")
|
||||
, toArray = require("../to-array")
|
||||
, contains = require("./contains")
|
||||
, byLength = require("./_compare-by-length")
|
||||
, filter = Array.prototype.filter
|
||||
, push = Array.prototype.push;
|
||||
|
||||
module.exports = function (/* …lists*/) {
|
||||
var lists, seen, result;
|
||||
if (!arguments.length) return aFrom(this);
|
||||
push.apply(lists = [this], arguments);
|
||||
lists.forEach(value);
|
||||
seen = [];
|
||||
result = [];
|
||||
lists.sort(byLength).forEach(function (list) {
|
||||
result = result
|
||||
.filter(function (item) {
|
||||
return !contains.call(list, item);
|
||||
})
|
||||
.concat(
|
||||
filter.call(list, function (item) {
|
||||
return !contains.call(seen, item);
|
||||
})
|
||||
);
|
||||
push.apply(seen, toArray(list));
|
||||
});
|
||||
return result;
|
||||
};
|
||||
8
static/js/ketcher2/node_modules/es5-ext/array/#/fill/implement.js
generated
vendored
Normal file
8
static/js/ketcher2/node_modules/es5-ext/array/#/fill/implement.js
generated
vendored
Normal file
@ -0,0 +1,8 @@
|
||||
"use strict";
|
||||
|
||||
if (!require("./is-implemented")()) {
|
||||
Object.defineProperty(Array.prototype, "fill", { value: require("./shim"),
|
||||
configurable: true,
|
||||
enumerable: false,
|
||||
writable: true });
|
||||
}
|
||||
4
static/js/ketcher2/node_modules/es5-ext/array/#/fill/index.js
generated
vendored
Normal file
4
static/js/ketcher2/node_modules/es5-ext/array/#/fill/index.js
generated
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
"use strict";
|
||||
|
||||
module.exports = require("./is-implemented")()
|
||||
? Array.prototype.fill : require("./shim");
|
||||
7
static/js/ketcher2/node_modules/es5-ext/array/#/fill/is-implemented.js
generated
vendored
Normal file
7
static/js/ketcher2/node_modules/es5-ext/array/#/fill/is-implemented.js
generated
vendored
Normal file
@ -0,0 +1,7 @@
|
||||
"use strict";
|
||||
|
||||
module.exports = function () {
|
||||
var arr = [1, 2, 3, 4, 5, 6];
|
||||
if (typeof arr.fill !== "function") return false;
|
||||
return String(arr.fill(-1, -3)) === "1,2,3,-1,-1,-1";
|
||||
};
|
||||
25
static/js/ketcher2/node_modules/es5-ext/array/#/fill/shim.js
generated
vendored
Normal file
25
static/js/ketcher2/node_modules/es5-ext/array/#/fill/shim.js
generated
vendored
Normal file
@ -0,0 +1,25 @@
|
||||
// Taken from: https://github.com/paulmillr/es6-shim/
|
||||
|
||||
"use strict";
|
||||
|
||||
var toInteger = require("../../../number/to-integer")
|
||||
, toPosInt = require("../../../number/to-pos-integer")
|
||||
, validValue = require("../../../object/valid-value")
|
||||
, max = Math.max
|
||||
, min = Math.min;
|
||||
|
||||
module.exports = function (value /*, start, end*/) {
|
||||
var arr = validValue(this)
|
||||
, start = arguments[1]
|
||||
, end = arguments[2]
|
||||
, length = toPosInt(arr.length)
|
||||
, relativeStart
|
||||
, i;
|
||||
|
||||
start = start === undefined ? 0 : toInteger(start);
|
||||
end = end === undefined ? length : toInteger(end);
|
||||
|
||||
relativeStart = start < 0 ? max(length + start, 0) : min(start, length);
|
||||
for (i = relativeStart; i < length && i < end; ++i) arr[i] = value;
|
||||
return arr;
|
||||
};
|
||||
8
static/js/ketcher2/node_modules/es5-ext/array/#/filter/implement.js
generated
vendored
Normal file
8
static/js/ketcher2/node_modules/es5-ext/array/#/filter/implement.js
generated
vendored
Normal file
@ -0,0 +1,8 @@
|
||||
"use strict";
|
||||
|
||||
if (!require("./is-implemented")()) {
|
||||
Object.defineProperty(Array.prototype, "filter", { value: require("./shim"),
|
||||
configurable: true,
|
||||
enumerable: false,
|
||||
writable: true });
|
||||
}
|
||||
4
static/js/ketcher2/node_modules/es5-ext/array/#/filter/index.js
generated
vendored
Normal file
4
static/js/ketcher2/node_modules/es5-ext/array/#/filter/index.js
generated
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
"use strict";
|
||||
|
||||
module.exports = require("./is-implemented")()
|
||||
? Array.prototype.filter : require("./shim");
|
||||
11
static/js/ketcher2/node_modules/es5-ext/array/#/filter/is-implemented.js
generated
vendored
Normal file
11
static/js/ketcher2/node_modules/es5-ext/array/#/filter/is-implemented.js
generated
vendored
Normal file
@ -0,0 +1,11 @@
|
||||
"use strict";
|
||||
|
||||
var SubArray = require("../../_sub-array-dummy-safe")
|
||||
|
||||
, pass = function () {
|
||||
return true;
|
||||
};
|
||||
|
||||
module.exports = function () {
|
||||
return (new SubArray()).filter(pass) instanceof SubArray;
|
||||
};
|
||||
23
static/js/ketcher2/node_modules/es5-ext/array/#/filter/shim.js
generated
vendored
Normal file
23
static/js/ketcher2/node_modules/es5-ext/array/#/filter/shim.js
generated
vendored
Normal file
@ -0,0 +1,23 @@
|
||||
"use strict";
|
||||
|
||||
var isPlainArray = require("../../is-plain-array")
|
||||
, callable = require("../../../object/valid-callable")
|
||||
, isArray = Array.isArray
|
||||
, filter = Array.prototype.filter
|
||||
, forEach = Array.prototype.forEach
|
||||
, call = Function.prototype.call;
|
||||
|
||||
module.exports = function (callbackFn /*, thisArg*/) {
|
||||
var result, thisArg, i;
|
||||
if (!this || !isArray(this) || isPlainArray(this)) {
|
||||
return filter.apply(this, arguments);
|
||||
}
|
||||
callable(callbackFn);
|
||||
thisArg = arguments[1];
|
||||
result = new this.constructor();
|
||||
i = 0;
|
||||
forEach.call(this, function (val, j, self) {
|
||||
if (call.call(callbackFn, thisArg, val, j, self)) result[i++] = val;
|
||||
});
|
||||
return result;
|
||||
};
|
||||
9
static/js/ketcher2/node_modules/es5-ext/array/#/find-index/implement.js
generated
vendored
Normal file
9
static/js/ketcher2/node_modules/es5-ext/array/#/find-index/implement.js
generated
vendored
Normal file
@ -0,0 +1,9 @@
|
||||
"use strict";
|
||||
|
||||
if (!require("./is-implemented")()) {
|
||||
Object.defineProperty(Array.prototype, "findIndex",
|
||||
{ value: require("./shim"),
|
||||
configurable: true,
|
||||
enumerable: false,
|
||||
writable: true });
|
||||
}
|
||||
4
static/js/ketcher2/node_modules/es5-ext/array/#/find-index/index.js
generated
vendored
Normal file
4
static/js/ketcher2/node_modules/es5-ext/array/#/find-index/index.js
generated
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
"use strict";
|
||||
|
||||
module.exports = require("./is-implemented")()
|
||||
? Array.prototype.findIndex : require("./shim");
|
||||
11
static/js/ketcher2/node_modules/es5-ext/array/#/find-index/is-implemented.js
generated
vendored
Normal file
11
static/js/ketcher2/node_modules/es5-ext/array/#/find-index/is-implemented.js
generated
vendored
Normal file
@ -0,0 +1,11 @@
|
||||
"use strict";
|
||||
|
||||
var fn = function (value) {
|
||||
return value > 3;
|
||||
};
|
||||
|
||||
module.exports = function () {
|
||||
var arr = [1, 2, 3, 4, 5, 6];
|
||||
if (typeof arr.findIndex !== "function") return false;
|
||||
return arr.findIndex(fn) === 3;
|
||||
};
|
||||
26
static/js/ketcher2/node_modules/es5-ext/array/#/find-index/shim.js
generated
vendored
Normal file
26
static/js/ketcher2/node_modules/es5-ext/array/#/find-index/shim.js
generated
vendored
Normal file
@ -0,0 +1,26 @@
|
||||
"use strict";
|
||||
|
||||
var callable = require("../../../object/valid-callable")
|
||||
, ensureValue = require("../../../object/valid-value")
|
||||
, some = Array.prototype.some
|
||||
, apply = Function.prototype.apply;
|
||||
|
||||
module.exports = function (predicate /*, thisArg*/) {
|
||||
var k, self;
|
||||
self = Object(ensureValue(this));
|
||||
callable(predicate);
|
||||
|
||||
return some.call(
|
||||
self,
|
||||
function (value, index) {
|
||||
if (apply.call(predicate, this, arguments)) {
|
||||
k = index;
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
},
|
||||
arguments[1]
|
||||
)
|
||||
? k
|
||||
: -1;
|
||||
};
|
||||
8
static/js/ketcher2/node_modules/es5-ext/array/#/find/implement.js
generated
vendored
Normal file
8
static/js/ketcher2/node_modules/es5-ext/array/#/find/implement.js
generated
vendored
Normal file
@ -0,0 +1,8 @@
|
||||
"use strict";
|
||||
|
||||
if (!require("./is-implemented")()) {
|
||||
Object.defineProperty(Array.prototype, "find", { value: require("./shim"),
|
||||
configurable: true,
|
||||
enumerable: false,
|
||||
writable: true });
|
||||
}
|
||||
4
static/js/ketcher2/node_modules/es5-ext/array/#/find/index.js
generated
vendored
Normal file
4
static/js/ketcher2/node_modules/es5-ext/array/#/find/index.js
generated
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
"use strict";
|
||||
|
||||
module.exports = require("./is-implemented")()
|
||||
? Array.prototype.find : require("./shim");
|
||||
11
static/js/ketcher2/node_modules/es5-ext/array/#/find/is-implemented.js
generated
vendored
Normal file
11
static/js/ketcher2/node_modules/es5-ext/array/#/find/is-implemented.js
generated
vendored
Normal file
@ -0,0 +1,11 @@
|
||||
"use strict";
|
||||
|
||||
var fn = function (value) {
|
||||
return value > 3;
|
||||
};
|
||||
|
||||
module.exports = function () {
|
||||
var arr = [1, 2, 3, 4, 5, 6];
|
||||
if (typeof arr.find !== "function") return false;
|
||||
return arr.find(fn) === 4;
|
||||
};
|
||||
9
static/js/ketcher2/node_modules/es5-ext/array/#/find/shim.js
generated
vendored
Normal file
9
static/js/ketcher2/node_modules/es5-ext/array/#/find/shim.js
generated
vendored
Normal file
@ -0,0 +1,9 @@
|
||||
"use strict";
|
||||
|
||||
var findIndex = require("../find-index/shim");
|
||||
|
||||
// eslint-disable-next-line no-unused-vars
|
||||
module.exports = function (predicate /*, thisArg*/) {
|
||||
var index = findIndex.apply(this, arguments);
|
||||
return index === -1 ? undefined : this[index];
|
||||
};
|
||||
15
static/js/ketcher2/node_modules/es5-ext/array/#/first-index.js
generated
vendored
Normal file
15
static/js/ketcher2/node_modules/es5-ext/array/#/first-index.js
generated
vendored
Normal file
@ -0,0 +1,15 @@
|
||||
"use strict";
|
||||
|
||||
var toPosInt = require("../../number/to-pos-integer")
|
||||
, value = require("../../object/valid-value")
|
||||
, objHasOwnProperty = Object.prototype.hasOwnProperty;
|
||||
|
||||
module.exports = function () {
|
||||
var i, length;
|
||||
if (!(length = toPosInt(value(this).length))) return null;
|
||||
i = 0;
|
||||
while (!objHasOwnProperty.call(this, i)) {
|
||||
if (++i === length) return null;
|
||||
}
|
||||
return i;
|
||||
};
|
||||
9
static/js/ketcher2/node_modules/es5-ext/array/#/first.js
generated
vendored
Normal file
9
static/js/ketcher2/node_modules/es5-ext/array/#/first.js
generated
vendored
Normal file
@ -0,0 +1,9 @@
|
||||
"use strict";
|
||||
|
||||
var firstIndex = require("./first-index");
|
||||
|
||||
module.exports = function () {
|
||||
var i;
|
||||
if ((i = firstIndex.call(this)) !== null) return this[i];
|
||||
return undefined;
|
||||
};
|
||||
40
static/js/ketcher2/node_modules/es5-ext/array/#/flatten.js
generated
vendored
Normal file
40
static/js/ketcher2/node_modules/es5-ext/array/#/flatten.js
generated
vendored
Normal file
@ -0,0 +1,40 @@
|
||||
// Stack grow safe implementation
|
||||
|
||||
"use strict";
|
||||
|
||||
var ensureValue = require("../../object/valid-value")
|
||||
, isArray = Array.isArray
|
||||
, objHasOwnProperty = Object.prototype.hasOwnProperty;
|
||||
|
||||
module.exports = function () {
|
||||
var input = ensureValue(this), index = 0, remaining, remainingIndexes, length, i, result = [];
|
||||
// Jslint: ignore
|
||||
main: while (input) {
|
||||
length = input.length;
|
||||
for (i = index; i < length; ++i) {
|
||||
if (!objHasOwnProperty.call(input, i)) continue;
|
||||
if (isArray(input[i])) {
|
||||
if (i < length - 1) {
|
||||
// eslint-disable-next-line max-depth
|
||||
if (!remaining) {
|
||||
remaining = [];
|
||||
remainingIndexes = [];
|
||||
}
|
||||
remaining.push(input);
|
||||
remainingIndexes.push(i + 1);
|
||||
}
|
||||
input = input[i];
|
||||
index = 0;
|
||||
continue main;
|
||||
}
|
||||
result.push(input[i]);
|
||||
}
|
||||
if (remaining) {
|
||||
input = remaining.pop();
|
||||
index = remainingIndexes.pop();
|
||||
} else {
|
||||
input = null;
|
||||
}
|
||||
}
|
||||
return result;
|
||||
};
|
||||
19
static/js/ketcher2/node_modules/es5-ext/array/#/for-each-right.js
generated
vendored
Normal file
19
static/js/ketcher2/node_modules/es5-ext/array/#/for-each-right.js
generated
vendored
Normal file
@ -0,0 +1,19 @@
|
||||
"use strict";
|
||||
|
||||
var toPosInt = require("../../number/to-pos-integer")
|
||||
, callable = require("../../object/valid-callable")
|
||||
, value = require("../../object/valid-value")
|
||||
, objHasOwnProperty = Object.prototype.hasOwnProperty
|
||||
, call = Function.prototype.call;
|
||||
|
||||
module.exports = function (cb /*, thisArg*/) {
|
||||
var i, self, thisArg;
|
||||
|
||||
self = Object(value(this));
|
||||
callable(cb);
|
||||
thisArg = arguments[1];
|
||||
|
||||
for (i = toPosInt(self.length) - 1; i >= 0; --i) {
|
||||
if (objHasOwnProperty.call(self, i)) call.call(cb, thisArg, self[i], i, self);
|
||||
}
|
||||
};
|
||||
28
static/js/ketcher2/node_modules/es5-ext/array/#/group.js
generated
vendored
Normal file
28
static/js/ketcher2/node_modules/es5-ext/array/#/group.js
generated
vendored
Normal file
@ -0,0 +1,28 @@
|
||||
// Inspired by Underscore's groupBy:
|
||||
// http://documentcloud.github.com/underscore/#groupBy
|
||||
|
||||
"use strict";
|
||||
|
||||
var callable = require("../../object/valid-callable")
|
||||
, value = require("../../object/valid-value")
|
||||
, forEach = Array.prototype.forEach
|
||||
, apply = Function.prototype.apply;
|
||||
|
||||
module.exports = function (cb /*, thisArg*/) {
|
||||
var result;
|
||||
|
||||
value(this);
|
||||
callable(cb);
|
||||
|
||||
result = Object.create(null);
|
||||
forEach.call(
|
||||
this,
|
||||
function (item) {
|
||||
var key = apply.call(cb, this, arguments);
|
||||
if (!result[key]) result[key] = [];
|
||||
result[key].push(item);
|
||||
},
|
||||
arguments[1]
|
||||
);
|
||||
return result;
|
||||
};
|
||||
41
static/js/ketcher2/node_modules/es5-ext/array/#/index.js
generated
vendored
Normal file
41
static/js/ketcher2/node_modules/es5-ext/array/#/index.js
generated
vendored
Normal file
@ -0,0 +1,41 @@
|
||||
"use strict";
|
||||
|
||||
module.exports = {
|
||||
"@@iterator": require("./@@iterator"),
|
||||
"binarySearch": require("./binary-search"),
|
||||
"clear": require("./clear"),
|
||||
"compact": require("./compact"),
|
||||
"concat": require("./concat"),
|
||||
"contains": require("./contains"),
|
||||
"copyWithin": require("./copy-within"),
|
||||
"diff": require("./diff"),
|
||||
"eIndexOf": require("./e-index-of"),
|
||||
"eLastIndexOf": require("./e-last-index-of"),
|
||||
"entries": require("./entries"),
|
||||
"exclusion": require("./exclusion"),
|
||||
"fill": require("./fill"),
|
||||
"filter": require("./filter"),
|
||||
"find": require("./find"),
|
||||
"findIndex": require("./find-index"),
|
||||
"first": require("./first"),
|
||||
"firstIndex": require("./first-index"),
|
||||
"flatten": require("./flatten"),
|
||||
"forEachRight": require("./for-each-right"),
|
||||
"keys": require("./keys"),
|
||||
"group": require("./group"),
|
||||
"indexesOf": require("./indexes-of"),
|
||||
"intersection": require("./intersection"),
|
||||
"isCopy": require("./is-copy"),
|
||||
"isEmpty": require("./is-empty"),
|
||||
"isUniq": require("./is-uniq"),
|
||||
"last": require("./last"),
|
||||
"lastIndex": require("./last-index"),
|
||||
"map": require("./map"),
|
||||
"remove": require("./remove"),
|
||||
"separate": require("./separate"),
|
||||
"slice": require("./slice"),
|
||||
"someRight": require("./some-right"),
|
||||
"splice": require("./splice"),
|
||||
"uniq": require("./uniq"),
|
||||
"values": require("./values")
|
||||
};
|
||||
12
static/js/ketcher2/node_modules/es5-ext/array/#/indexes-of.js
generated
vendored
Normal file
12
static/js/ketcher2/node_modules/es5-ext/array/#/indexes-of.js
generated
vendored
Normal file
@ -0,0 +1,12 @@
|
||||
"use strict";
|
||||
|
||||
var indexOf = require("./e-index-of");
|
||||
|
||||
module.exports = function (value /*, fromIndex*/) {
|
||||
var result = [], i, fromIndex = arguments[1];
|
||||
while ((i = indexOf.call(this, value, fromIndex)) !== -1) {
|
||||
result.push(i);
|
||||
fromIndex = i + 1;
|
||||
}
|
||||
return result;
|
||||
};
|
||||
21
static/js/ketcher2/node_modules/es5-ext/array/#/intersection.js
generated
vendored
Normal file
21
static/js/ketcher2/node_modules/es5-ext/array/#/intersection.js
generated
vendored
Normal file
@ -0,0 +1,21 @@
|
||||
"use strict";
|
||||
|
||||
var value = require("../../object/valid-value")
|
||||
, contains = require("./contains")
|
||||
, byLength = require("./_compare-by-length")
|
||||
, filter = Array.prototype.filter
|
||||
, push = Array.prototype.push
|
||||
, slice = Array.prototype.slice;
|
||||
|
||||
module.exports = function (/* …list*/) {
|
||||
var lists;
|
||||
if (!arguments.length) slice.call(this);
|
||||
push.apply(lists = [this], arguments);
|
||||
lists.forEach(value);
|
||||
lists.sort(byLength);
|
||||
return lists.reduce(function (list1, list2) {
|
||||
return filter.call(list1, function (item) {
|
||||
return contains.call(list2, item);
|
||||
});
|
||||
});
|
||||
};
|
||||
21
static/js/ketcher2/node_modules/es5-ext/array/#/is-copy.js
generated
vendored
Normal file
21
static/js/ketcher2/node_modules/es5-ext/array/#/is-copy.js
generated
vendored
Normal file
@ -0,0 +1,21 @@
|
||||
"use strict";
|
||||
|
||||
var toPosInt = require("../../number/to-pos-integer")
|
||||
, eq = require("../../object/eq")
|
||||
, value = require("../../object/valid-value")
|
||||
, objHasOwnProperty = Object.prototype.hasOwnProperty;
|
||||
|
||||
module.exports = function (other) {
|
||||
var i, length;
|
||||
value(this);
|
||||
value(other);
|
||||
length = toPosInt(this.length);
|
||||
if (length !== toPosInt(other.length)) return false;
|
||||
for (i = 0; i < length; ++i) {
|
||||
if (objHasOwnProperty.call(this, i) !== objHasOwnProperty.call(other, i)) {
|
||||
return false;
|
||||
}
|
||||
if (!eq(this[i], other[i])) return false;
|
||||
}
|
||||
return true;
|
||||
};
|
||||
8
static/js/ketcher2/node_modules/es5-ext/array/#/is-empty.js
generated
vendored
Normal file
8
static/js/ketcher2/node_modules/es5-ext/array/#/is-empty.js
generated
vendored
Normal file
@ -0,0 +1,8 @@
|
||||
"use strict";
|
||||
|
||||
var ensureArray = require("../../object/ensure-array")
|
||||
, firstIndex = require("./first-index");
|
||||
|
||||
module.exports = function () {
|
||||
return firstIndex.call(ensureArray(this)) === null;
|
||||
};
|
||||
14
static/js/ketcher2/node_modules/es5-ext/array/#/is-uniq.js
generated
vendored
Normal file
14
static/js/ketcher2/node_modules/es5-ext/array/#/is-uniq.js
generated
vendored
Normal file
@ -0,0 +1,14 @@
|
||||
"use strict";
|
||||
|
||||
var indexOf = require("./e-index-of")
|
||||
|
||||
, every = Array.prototype.every
|
||||
, isFirst;
|
||||
|
||||
isFirst = function (value, index) {
|
||||
return indexOf.call(this, value) === index;
|
||||
};
|
||||
|
||||
module.exports = function () {
|
||||
return every.call(this, isFirst, this);
|
||||
};
|
||||
8
static/js/ketcher2/node_modules/es5-ext/array/#/keys/implement.js
generated
vendored
Normal file
8
static/js/ketcher2/node_modules/es5-ext/array/#/keys/implement.js
generated
vendored
Normal file
@ -0,0 +1,8 @@
|
||||
"use strict";
|
||||
|
||||
if (!require("./is-implemented")()) {
|
||||
Object.defineProperty(Array.prototype, "keys", { value: require("./shim"),
|
||||
configurable: true,
|
||||
enumerable: false,
|
||||
writable: true });
|
||||
}
|
||||
4
static/js/ketcher2/node_modules/es5-ext/array/#/keys/index.js
generated
vendored
Normal file
4
static/js/ketcher2/node_modules/es5-ext/array/#/keys/index.js
generated
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
"use strict";
|
||||
|
||||
module.exports = require("./is-implemented")()
|
||||
? Array.prototype.keys : require("./shim");
|
||||
14
static/js/ketcher2/node_modules/es5-ext/array/#/keys/is-implemented.js
generated
vendored
Normal file
14
static/js/ketcher2/node_modules/es5-ext/array/#/keys/is-implemented.js
generated
vendored
Normal file
@ -0,0 +1,14 @@
|
||||
"use strict";
|
||||
|
||||
module.exports = function () {
|
||||
var arr = [1, "foo"], iterator, result;
|
||||
if (typeof arr.keys !== "function") return false;
|
||||
iterator = arr.keys();
|
||||
if (!iterator) return false;
|
||||
if (typeof iterator.next !== "function") return false;
|
||||
result = iterator.next();
|
||||
if (!result) return false;
|
||||
if (result.value !== 0) return false;
|
||||
if (result.done !== false) return false;
|
||||
return true;
|
||||
};
|
||||
6
static/js/ketcher2/node_modules/es5-ext/array/#/keys/shim.js
generated
vendored
Normal file
6
static/js/ketcher2/node_modules/es5-ext/array/#/keys/shim.js
generated
vendored
Normal file
@ -0,0 +1,6 @@
|
||||
"use strict";
|
||||
|
||||
var ArrayIterator = require("es6-iterator/array");
|
||||
module.exports = function () {
|
||||
return new ArrayIterator(this, "key");
|
||||
};
|
||||
15
static/js/ketcher2/node_modules/es5-ext/array/#/last-index.js
generated
vendored
Normal file
15
static/js/ketcher2/node_modules/es5-ext/array/#/last-index.js
generated
vendored
Normal file
@ -0,0 +1,15 @@
|
||||
"use strict";
|
||||
|
||||
var toPosInt = require("../../number/to-pos-integer")
|
||||
, value = require("../../object/valid-value")
|
||||
, objHasOwnProperty = Object.prototype.hasOwnProperty;
|
||||
|
||||
module.exports = function () {
|
||||
var i, length;
|
||||
if (!(length = toPosInt(value(this).length))) return null;
|
||||
i = length - 1;
|
||||
while (!objHasOwnProperty.call(this, i)) {
|
||||
if (--i === -1) return null;
|
||||
}
|
||||
return i;
|
||||
};
|
||||
9
static/js/ketcher2/node_modules/es5-ext/array/#/last.js
generated
vendored
Normal file
9
static/js/ketcher2/node_modules/es5-ext/array/#/last.js
generated
vendored
Normal file
@ -0,0 +1,9 @@
|
||||
"use strict";
|
||||
|
||||
var lastIndex = require("./last-index");
|
||||
|
||||
module.exports = function () {
|
||||
var i;
|
||||
if ((i = lastIndex.call(this)) !== null) return this[i];
|
||||
return undefined;
|
||||
};
|
||||
8
static/js/ketcher2/node_modules/es5-ext/array/#/map/implement.js
generated
vendored
Normal file
8
static/js/ketcher2/node_modules/es5-ext/array/#/map/implement.js
generated
vendored
Normal file
@ -0,0 +1,8 @@
|
||||
"use strict";
|
||||
|
||||
if (!require("./is-implemented")()) {
|
||||
Object.defineProperty(Array.prototype, "map", { value: require("./shim"),
|
||||
configurable: true,
|
||||
enumerable: false,
|
||||
writable: true });
|
||||
}
|
||||
4
static/js/ketcher2/node_modules/es5-ext/array/#/map/index.js
generated
vendored
Normal file
4
static/js/ketcher2/node_modules/es5-ext/array/#/map/index.js
generated
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
"use strict";
|
||||
|
||||
module.exports = require("./is-implemented")()
|
||||
? Array.prototype.map : require("./shim");
|
||||
8
static/js/ketcher2/node_modules/es5-ext/array/#/map/is-implemented.js
generated
vendored
Normal file
8
static/js/ketcher2/node_modules/es5-ext/array/#/map/is-implemented.js
generated
vendored
Normal file
@ -0,0 +1,8 @@
|
||||
"use strict";
|
||||
|
||||
var identity = require("../../../function/identity")
|
||||
, SubArray = require("../../_sub-array-dummy-safe");
|
||||
|
||||
module.exports = function () {
|
||||
return (new SubArray()).map(identity) instanceof SubArray;
|
||||
};
|
||||
21
static/js/ketcher2/node_modules/es5-ext/array/#/map/shim.js
generated
vendored
Normal file
21
static/js/ketcher2/node_modules/es5-ext/array/#/map/shim.js
generated
vendored
Normal file
@ -0,0 +1,21 @@
|
||||
"use strict";
|
||||
|
||||
var isPlainArray = require("../../is-plain-array")
|
||||
, callable = require("../../../object/valid-callable")
|
||||
|
||||
, isArray = Array.isArray, map = Array.prototype.map
|
||||
, forEach = Array.prototype.forEach, call = Function.prototype.call;
|
||||
|
||||
module.exports = function (callbackFn/*, thisArg*/) {
|
||||
var result, thisArg;
|
||||
if (!this || !isArray(this) || isPlainArray(this)) {
|
||||
return map.apply(this, arguments);
|
||||
}
|
||||
callable(callbackFn);
|
||||
thisArg = arguments[1];
|
||||
result = new this.constructor(this.length);
|
||||
forEach.call(this, function (val, i, self) {
|
||||
result[i] = call.call(callbackFn, thisArg, val, i, self);
|
||||
});
|
||||
return result;
|
||||
};
|
||||
17
static/js/ketcher2/node_modules/es5-ext/array/#/remove.js
generated
vendored
Normal file
17
static/js/ketcher2/node_modules/es5-ext/array/#/remove.js
generated
vendored
Normal file
@ -0,0 +1,17 @@
|
||||
"use strict";
|
||||
|
||||
var indexOf = require("./e-index-of")
|
||||
, forEach = Array.prototype.forEach
|
||||
, splice = Array.prototype.splice;
|
||||
|
||||
// eslint-disable-next-line no-unused-vars
|
||||
module.exports = function (itemToRemove /*, …item*/) {
|
||||
forEach.call(
|
||||
arguments,
|
||||
function (item) {
|
||||
var index = indexOf.call(this, item);
|
||||
if (index !== -1) splice.call(this, index, 1);
|
||||
},
|
||||
this
|
||||
);
|
||||
};
|
||||
12
static/js/ketcher2/node_modules/es5-ext/array/#/separate.js
generated
vendored
Normal file
12
static/js/ketcher2/node_modules/es5-ext/array/#/separate.js
generated
vendored
Normal file
@ -0,0 +1,12 @@
|
||||
"use strict";
|
||||
|
||||
var forEach = Array.prototype.forEach;
|
||||
|
||||
module.exports = function (sep) {
|
||||
var result = [];
|
||||
forEach.call(this, function (val) {
|
||||
result.push(val, sep);
|
||||
});
|
||||
result.pop();
|
||||
return result;
|
||||
};
|
||||
8
static/js/ketcher2/node_modules/es5-ext/array/#/slice/implement.js
generated
vendored
Normal file
8
static/js/ketcher2/node_modules/es5-ext/array/#/slice/implement.js
generated
vendored
Normal file
@ -0,0 +1,8 @@
|
||||
"use strict";
|
||||
|
||||
if (!require("./is-implemented")()) {
|
||||
Object.defineProperty(Array.prototype, "slice", { value: require("./shim"),
|
||||
configurable: true,
|
||||
enumerable: false,
|
||||
writable: true });
|
||||
}
|
||||
4
static/js/ketcher2/node_modules/es5-ext/array/#/slice/index.js
generated
vendored
Normal file
4
static/js/ketcher2/node_modules/es5-ext/array/#/slice/index.js
generated
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
"use strict";
|
||||
|
||||
module.exports = require("./is-implemented")()
|
||||
? Array.prototype.slice : require("./shim");
|
||||
7
static/js/ketcher2/node_modules/es5-ext/array/#/slice/is-implemented.js
generated
vendored
Normal file
7
static/js/ketcher2/node_modules/es5-ext/array/#/slice/is-implemented.js
generated
vendored
Normal file
@ -0,0 +1,7 @@
|
||||
"use strict";
|
||||
|
||||
var SubArray = require("../../_sub-array-dummy-safe");
|
||||
|
||||
module.exports = function () {
|
||||
return (new SubArray()).slice() instanceof SubArray;
|
||||
};
|
||||
36
static/js/ketcher2/node_modules/es5-ext/array/#/slice/shim.js
generated
vendored
Normal file
36
static/js/ketcher2/node_modules/es5-ext/array/#/slice/shim.js
generated
vendored
Normal file
@ -0,0 +1,36 @@
|
||||
"use strict";
|
||||
|
||||
var toInteger = require("../../../number/to-integer")
|
||||
, toPosInt = require("../../../number/to-pos-integer")
|
||||
, isPlainArray = require("../../is-plain-array")
|
||||
, isArray = Array.isArray
|
||||
, slice = Array.prototype.slice
|
||||
, objHasOwnProperty = Object.prototype.hasOwnProperty
|
||||
, max = Math.max;
|
||||
|
||||
module.exports = function (start, end) {
|
||||
var length, result, i;
|
||||
if (!this || !isArray(this) || isPlainArray(this)) {
|
||||
return slice.apply(this, arguments);
|
||||
}
|
||||
length = toPosInt(this.length);
|
||||
start = toInteger(start);
|
||||
if (start < 0) start = max(length + start, 0);
|
||||
else if (start > length) start = length;
|
||||
if (end === undefined) {
|
||||
end = length;
|
||||
} else {
|
||||
end = toInteger(end);
|
||||
if (end < 0) end = max(length + end, 0);
|
||||
else if (end > length) end = length;
|
||||
}
|
||||
if (start > end) start = end;
|
||||
result = new this.constructor(end - start);
|
||||
i = 0;
|
||||
while (start !== end) {
|
||||
if (objHasOwnProperty.call(this, start)) result[i] = this[start];
|
||||
++i;
|
||||
++start;
|
||||
}
|
||||
return result;
|
||||
};
|
||||
21
static/js/ketcher2/node_modules/es5-ext/array/#/some-right.js
generated
vendored
Normal file
21
static/js/ketcher2/node_modules/es5-ext/array/#/some-right.js
generated
vendored
Normal file
@ -0,0 +1,21 @@
|
||||
"use strict";
|
||||
|
||||
var toPosInt = require("../../number/to-pos-integer")
|
||||
, callable = require("../../object/valid-callable")
|
||||
, value = require("../../object/valid-value")
|
||||
, objHasOwnProperty = Object.prototype.hasOwnProperty
|
||||
, call = Function.prototype.call;
|
||||
|
||||
module.exports = function (cb /*, thisArg*/) {
|
||||
var i, self, thisArg;
|
||||
self = Object(value(this));
|
||||
callable(cb);
|
||||
thisArg = arguments[1];
|
||||
|
||||
for (i = toPosInt(self.length) - 1; i >= 0; --i) {
|
||||
if (objHasOwnProperty.call(self, i) && call.call(cb, thisArg, self[i], i, self)) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
};
|
||||
8
static/js/ketcher2/node_modules/es5-ext/array/#/splice/implement.js
generated
vendored
Normal file
8
static/js/ketcher2/node_modules/es5-ext/array/#/splice/implement.js
generated
vendored
Normal file
@ -0,0 +1,8 @@
|
||||
"use strict";
|
||||
|
||||
if (!require("./is-implemented")()) {
|
||||
Object.defineProperty(Array.prototype, "splice", { value: require("./shim"),
|
||||
configurable: true,
|
||||
enumerable: false,
|
||||
writable: true });
|
||||
}
|
||||
4
static/js/ketcher2/node_modules/es5-ext/array/#/splice/index.js
generated
vendored
Normal file
4
static/js/ketcher2/node_modules/es5-ext/array/#/splice/index.js
generated
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
"use strict";
|
||||
|
||||
module.exports = require("./is-implemented")()
|
||||
? Array.prototype.splice : require("./shim");
|
||||
7
static/js/ketcher2/node_modules/es5-ext/array/#/splice/is-implemented.js
generated
vendored
Normal file
7
static/js/ketcher2/node_modules/es5-ext/array/#/splice/is-implemented.js
generated
vendored
Normal file
@ -0,0 +1,7 @@
|
||||
"use strict";
|
||||
|
||||
var SubArray = require("../../_sub-array-dummy-safe");
|
||||
|
||||
module.exports = function () {
|
||||
return (new SubArray()).splice(0) instanceof SubArray;
|
||||
};
|
||||
17
static/js/ketcher2/node_modules/es5-ext/array/#/splice/shim.js
generated
vendored
Normal file
17
static/js/ketcher2/node_modules/es5-ext/array/#/splice/shim.js
generated
vendored
Normal file
@ -0,0 +1,17 @@
|
||||
"use strict";
|
||||
|
||||
var isPlainArray = require("../../is-plain-array")
|
||||
, isArray = Array.isArray
|
||||
, splice = Array.prototype.splice
|
||||
, forEach = Array.prototype.forEach;
|
||||
|
||||
// eslint-disable-next-line no-unused-vars
|
||||
module.exports = function (start, deleteCount /*, …items*/) {
|
||||
var arr = splice.apply(this, arguments), result;
|
||||
if (!this || !isArray(this) || isPlainArray(this)) return arr;
|
||||
result = new this.constructor(arr.length);
|
||||
forEach.call(arr, function (val, i) {
|
||||
result[i] = val;
|
||||
});
|
||||
return result;
|
||||
};
|
||||
15
static/js/ketcher2/node_modules/es5-ext/array/#/uniq.js
generated
vendored
Normal file
15
static/js/ketcher2/node_modules/es5-ext/array/#/uniq.js
generated
vendored
Normal file
@ -0,0 +1,15 @@
|
||||
"use strict";
|
||||
|
||||
var indexOf = require("./e-index-of")
|
||||
|
||||
, filter = Array.prototype.filter
|
||||
|
||||
, isFirst;
|
||||
|
||||
isFirst = function (value, index) {
|
||||
return indexOf.call(this, value) === index;
|
||||
};
|
||||
|
||||
module.exports = function () {
|
||||
return filter.call(this, isFirst, this);
|
||||
};
|
||||
8
static/js/ketcher2/node_modules/es5-ext/array/#/values/implement.js
generated
vendored
Normal file
8
static/js/ketcher2/node_modules/es5-ext/array/#/values/implement.js
generated
vendored
Normal file
@ -0,0 +1,8 @@
|
||||
"use strict";
|
||||
|
||||
if (!require("./is-implemented")()) {
|
||||
Object.defineProperty(Array.prototype, "values", { value: require("./shim"),
|
||||
configurable: true,
|
||||
enumerable: false,
|
||||
writable: true });
|
||||
}
|
||||
3
static/js/ketcher2/node_modules/es5-ext/array/#/values/index.js
generated
vendored
Normal file
3
static/js/ketcher2/node_modules/es5-ext/array/#/values/index.js
generated
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
"use strict";
|
||||
|
||||
module.exports = require("./is-implemented")() ? Array.prototype.values : require("./shim");
|
||||
14
static/js/ketcher2/node_modules/es5-ext/array/#/values/is-implemented.js
generated
vendored
Normal file
14
static/js/ketcher2/node_modules/es5-ext/array/#/values/is-implemented.js
generated
vendored
Normal file
@ -0,0 +1,14 @@
|
||||
"use strict";
|
||||
|
||||
module.exports = function () {
|
||||
var arr = ["foo", 1], iterator, result;
|
||||
if (typeof arr.values !== "function") return false;
|
||||
iterator = arr.values();
|
||||
if (!iterator) return false;
|
||||
if (typeof iterator.next !== "function") return false;
|
||||
result = iterator.next();
|
||||
if (!result) return false;
|
||||
if (result.value !== "foo") return false;
|
||||
if (result.done !== false) return false;
|
||||
return true;
|
||||
};
|
||||
6
static/js/ketcher2/node_modules/es5-ext/array/#/values/shim.js
generated
vendored
Normal file
6
static/js/ketcher2/node_modules/es5-ext/array/#/values/shim.js
generated
vendored
Normal file
@ -0,0 +1,6 @@
|
||||
"use strict";
|
||||
|
||||
var ArrayIterator = require("es6-iterator/array");
|
||||
module.exports = function () {
|
||||
return new ArrayIterator(this, "value");
|
||||
};
|
||||
13
static/js/ketcher2/node_modules/es5-ext/array/_is-extensible.js
generated
vendored
Normal file
13
static/js/ketcher2/node_modules/es5-ext/array/_is-extensible.js
generated
vendored
Normal file
@ -0,0 +1,13 @@
|
||||
"use strict";
|
||||
|
||||
module.exports = (function () {
|
||||
var SubArray = require("./_sub-array-dummy"), arr;
|
||||
|
||||
if (!SubArray) return false;
|
||||
arr = new SubArray();
|
||||
if (!Array.isArray(arr)) return false;
|
||||
if (!(arr instanceof SubArray)) return false;
|
||||
|
||||
arr[34] = "foo";
|
||||
return arr.length === 35;
|
||||
}());
|
||||
25
static/js/ketcher2/node_modules/es5-ext/array/_sub-array-dummy-safe.js
generated
vendored
Normal file
25
static/js/ketcher2/node_modules/es5-ext/array/_sub-array-dummy-safe.js
generated
vendored
Normal file
@ -0,0 +1,25 @@
|
||||
"use strict";
|
||||
|
||||
var setPrototypeOf = require("../object/set-prototype-of")
|
||||
, isExtensible = require("./_is-extensible");
|
||||
|
||||
module.exports = (function () {
|
||||
var SubArray;
|
||||
|
||||
if (isExtensible) return require("./_sub-array-dummy");
|
||||
|
||||
if (!setPrototypeOf) return null;
|
||||
SubArray = function () {
|
||||
var arr = Array.apply(this, arguments);
|
||||
setPrototypeOf(arr, SubArray.prototype);
|
||||
return arr;
|
||||
};
|
||||
setPrototypeOf(SubArray, Array);
|
||||
SubArray.prototype = Object.create(Array.prototype, {
|
||||
constructor: { value: SubArray,
|
||||
enumerable: false,
|
||||
writable: true,
|
||||
configurable: true }
|
||||
});
|
||||
return SubArray;
|
||||
}());
|
||||
20
static/js/ketcher2/node_modules/es5-ext/array/_sub-array-dummy.js
generated
vendored
Normal file
20
static/js/ketcher2/node_modules/es5-ext/array/_sub-array-dummy.js
generated
vendored
Normal file
@ -0,0 +1,20 @@
|
||||
"use strict";
|
||||
|
||||
var setPrototypeOf = require("../object/set-prototype-of");
|
||||
|
||||
module.exports = (function () {
|
||||
var SubArray;
|
||||
|
||||
if (!setPrototypeOf) return null;
|
||||
SubArray = function () {
|
||||
Array.apply(this, arguments);
|
||||
};
|
||||
setPrototypeOf(SubArray, Array);
|
||||
SubArray.prototype = Object.create(Array.prototype, {
|
||||
constructor: { value: SubArray,
|
||||
enumerable: false,
|
||||
writable: true,
|
||||
configurable: true }
|
||||
});
|
||||
return SubArray;
|
||||
}());
|
||||
8
static/js/ketcher2/node_modules/es5-ext/array/from/implement.js
generated
vendored
Normal file
8
static/js/ketcher2/node_modules/es5-ext/array/from/implement.js
generated
vendored
Normal file
@ -0,0 +1,8 @@
|
||||
"use strict";
|
||||
|
||||
if (!require("./is-implemented")()) {
|
||||
Object.defineProperty(Array, "from", { value: require("./shim"),
|
||||
configurable: true,
|
||||
enumerable: false,
|
||||
writable: true });
|
||||
}
|
||||
5
static/js/ketcher2/node_modules/es5-ext/array/from/index.js
generated
vendored
Normal file
5
static/js/ketcher2/node_modules/es5-ext/array/from/index.js
generated
vendored
Normal file
@ -0,0 +1,5 @@
|
||||
"use strict";
|
||||
|
||||
module.exports = require("./is-implemented")()
|
||||
? Array.from
|
||||
: require("./shim");
|
||||
9
static/js/ketcher2/node_modules/es5-ext/array/from/is-implemented.js
generated
vendored
Normal file
9
static/js/ketcher2/node_modules/es5-ext/array/from/is-implemented.js
generated
vendored
Normal file
@ -0,0 +1,9 @@
|
||||
"use strict";
|
||||
|
||||
module.exports = function () {
|
||||
var from = Array.from, arr, result;
|
||||
if (typeof from !== "function") return false;
|
||||
arr = ["raz", "dwa"];
|
||||
result = from(arr);
|
||||
return Boolean(result && (result !== arr) && (result[1] === "dwa"));
|
||||
};
|
||||
119
static/js/ketcher2/node_modules/es5-ext/array/from/shim.js
generated
vendored
Normal file
119
static/js/ketcher2/node_modules/es5-ext/array/from/shim.js
generated
vendored
Normal file
@ -0,0 +1,119 @@
|
||||
"use strict";
|
||||
|
||||
var iteratorSymbol = require("es6-symbol").iterator
|
||||
, isArguments = require("../../function/is-arguments")
|
||||
, isFunction = require("../../function/is-function")
|
||||
, toPosInt = require("../../number/to-pos-integer")
|
||||
, callable = require("../../object/valid-callable")
|
||||
, validValue = require("../../object/valid-value")
|
||||
, isValue = require("../../object/is-value")
|
||||
, isString = require("../../string/is-string")
|
||||
, isArray = Array.isArray
|
||||
, call = Function.prototype.call
|
||||
, desc = { configurable: true, enumerable: true, writable: true, value: null }
|
||||
, defineProperty = Object.defineProperty;
|
||||
|
||||
// eslint-disable-next-line complexity
|
||||
module.exports = function (arrayLike /*, mapFn, thisArg*/) {
|
||||
var mapFn = arguments[1]
|
||||
, thisArg = arguments[2]
|
||||
, Context
|
||||
, i
|
||||
, j
|
||||
, arr
|
||||
, length
|
||||
, code
|
||||
, iterator
|
||||
, result
|
||||
, getIterator
|
||||
, value;
|
||||
|
||||
arrayLike = Object(validValue(arrayLike));
|
||||
|
||||
if (isValue(mapFn)) callable(mapFn);
|
||||
if (!this || this === Array || !isFunction(this)) {
|
||||
// Result: Plain array
|
||||
if (!mapFn) {
|
||||
if (isArguments(arrayLike)) {
|
||||
// Source: Arguments
|
||||
length = arrayLike.length;
|
||||
if (length !== 1) return Array.apply(null, arrayLike);
|
||||
arr = new Array(1);
|
||||
arr[0] = arrayLike[0];
|
||||
return arr;
|
||||
}
|
||||
if (isArray(arrayLike)) {
|
||||
// Source: Array
|
||||
arr = new Array(length = arrayLike.length);
|
||||
for (i = 0; i < length; ++i) arr[i] = arrayLike[i];
|
||||
return arr;
|
||||
}
|
||||
}
|
||||
arr = [];
|
||||
} else {
|
||||
// Result: Non plain array
|
||||
Context = this;
|
||||
}
|
||||
|
||||
if (!isArray(arrayLike)) {
|
||||
if ((getIterator = arrayLike[iteratorSymbol]) !== undefined) {
|
||||
// Source: Iterator
|
||||
iterator = callable(getIterator).call(arrayLike);
|
||||
if (Context) arr = new Context();
|
||||
result = iterator.next();
|
||||
i = 0;
|
||||
while (!result.done) {
|
||||
value = mapFn ? call.call(mapFn, thisArg, result.value, i) : result.value;
|
||||
if (Context) {
|
||||
desc.value = value;
|
||||
defineProperty(arr, i, desc);
|
||||
} else {
|
||||
arr[i] = value;
|
||||
}
|
||||
result = iterator.next();
|
||||
++i;
|
||||
}
|
||||
length = i;
|
||||
} else if (isString(arrayLike)) {
|
||||
// Source: String
|
||||
length = arrayLike.length;
|
||||
if (Context) arr = new Context();
|
||||
for (i = 0, j = 0; i < length; ++i) {
|
||||
value = arrayLike[i];
|
||||
if (i + 1 < length) {
|
||||
code = value.charCodeAt(0);
|
||||
// eslint-disable-next-line max-depth
|
||||
if (code >= 0xd800 && code <= 0xdbff) value += arrayLike[++i];
|
||||
}
|
||||
value = mapFn ? call.call(mapFn, thisArg, value, j) : value;
|
||||
if (Context) {
|
||||
desc.value = value;
|
||||
defineProperty(arr, j, desc);
|
||||
} else {
|
||||
arr[j] = value;
|
||||
}
|
||||
++j;
|
||||
}
|
||||
length = j;
|
||||
}
|
||||
}
|
||||
if (length === undefined) {
|
||||
// Source: array or array-like
|
||||
length = toPosInt(arrayLike.length);
|
||||
if (Context) arr = new Context(length);
|
||||
for (i = 0; i < length; ++i) {
|
||||
value = mapFn ? call.call(mapFn, thisArg, arrayLike[i], i) : arrayLike[i];
|
||||
if (Context) {
|
||||
desc.value = value;
|
||||
defineProperty(arr, i, desc);
|
||||
} else {
|
||||
arr[i] = value;
|
||||
}
|
||||
}
|
||||
}
|
||||
if (Context) {
|
||||
desc.value = null;
|
||||
arr.length = length;
|
||||
}
|
||||
return arr;
|
||||
};
|
||||
18
static/js/ketcher2/node_modules/es5-ext/array/generate.js
generated
vendored
Normal file
18
static/js/ketcher2/node_modules/es5-ext/array/generate.js
generated
vendored
Normal file
@ -0,0 +1,18 @@
|
||||
"use strict";
|
||||
|
||||
var toPosInt = require("../number/to-pos-integer")
|
||||
, value = require("../object/valid-value")
|
||||
, slice = Array.prototype.slice;
|
||||
|
||||
module.exports = function (length /*, …fill*/) {
|
||||
var arr, currentLength;
|
||||
length = toPosInt(value(length));
|
||||
if (length === 0) return [];
|
||||
|
||||
arr = arguments.length < 2 ? [undefined] : slice.call(arguments, 1, 1 + length);
|
||||
|
||||
while ((currentLength = arr.length) < length) {
|
||||
arr = arr.concat(arr.slice(0, length - currentLength));
|
||||
}
|
||||
return arr;
|
||||
};
|
||||
11
static/js/ketcher2/node_modules/es5-ext/array/index.js
generated
vendored
Normal file
11
static/js/ketcher2/node_modules/es5-ext/array/index.js
generated
vendored
Normal file
@ -0,0 +1,11 @@
|
||||
"use strict";
|
||||
|
||||
module.exports = {
|
||||
"#": require("./#"),
|
||||
"from": require("./from"),
|
||||
"generate": require("./generate"),
|
||||
"isPlainArray": require("./is-plain-array"),
|
||||
"of": require("./of"),
|
||||
"toArray": require("./to-array"),
|
||||
"validArray": require("./valid-array")
|
||||
};
|
||||
11
static/js/ketcher2/node_modules/es5-ext/array/is-plain-array.js
generated
vendored
Normal file
11
static/js/ketcher2/node_modules/es5-ext/array/is-plain-array.js
generated
vendored
Normal file
@ -0,0 +1,11 @@
|
||||
"use strict";
|
||||
|
||||
var isArray = Array.isArray, getPrototypeOf = Object.getPrototypeOf;
|
||||
|
||||
module.exports = function (obj) {
|
||||
var proto;
|
||||
if (!obj || !isArray(obj)) return false;
|
||||
proto = getPrototypeOf(obj);
|
||||
if (!isArray(proto)) return false;
|
||||
return !isArray(getPrototypeOf(proto));
|
||||
};
|
||||
8
static/js/ketcher2/node_modules/es5-ext/array/of/implement.js
generated
vendored
Normal file
8
static/js/ketcher2/node_modules/es5-ext/array/of/implement.js
generated
vendored
Normal file
@ -0,0 +1,8 @@
|
||||
"use strict";
|
||||
|
||||
if (!require("./is-implemented")()) {
|
||||
Object.defineProperty(Array, "of", { value: require("./shim"),
|
||||
configurable: true,
|
||||
enumerable: false,
|
||||
writable: true });
|
||||
}
|
||||
5
static/js/ketcher2/node_modules/es5-ext/array/of/index.js
generated
vendored
Normal file
5
static/js/ketcher2/node_modules/es5-ext/array/of/index.js
generated
vendored
Normal file
@ -0,0 +1,5 @@
|
||||
"use strict";
|
||||
|
||||
module.exports = require("./is-implemented")()
|
||||
? Array.of
|
||||
: require("./shim");
|
||||
8
static/js/ketcher2/node_modules/es5-ext/array/of/is-implemented.js
generated
vendored
Normal file
8
static/js/ketcher2/node_modules/es5-ext/array/of/is-implemented.js
generated
vendored
Normal file
@ -0,0 +1,8 @@
|
||||
"use strict";
|
||||
|
||||
module.exports = function () {
|
||||
var of = Array.of, result;
|
||||
if (typeof of !== "function") return false;
|
||||
result = of("foo", "bar");
|
||||
return Boolean(result && (result[1] === "bar"));
|
||||
};
|
||||
19
static/js/ketcher2/node_modules/es5-ext/array/of/shim.js
generated
vendored
Normal file
19
static/js/ketcher2/node_modules/es5-ext/array/of/shim.js
generated
vendored
Normal file
@ -0,0 +1,19 @@
|
||||
"use strict";
|
||||
|
||||
var isFunction = require("../../function/is-function")
|
||||
, slice = Array.prototype.slice
|
||||
, defineProperty = Object.defineProperty
|
||||
, desc = { configurable: true, enumerable: true, writable: true, value: null };
|
||||
|
||||
module.exports = function (/* …items*/) {
|
||||
var result, i, length;
|
||||
if (!this || this === Array || !isFunction(this)) return slice.call(arguments);
|
||||
result = new this(length = arguments.length);
|
||||
for (i = 0; i < length; ++i) {
|
||||
desc.value = arguments[i];
|
||||
defineProperty(result, i, desc);
|
||||
}
|
||||
desc.value = null;
|
||||
result.length = length;
|
||||
return result;
|
||||
};
|
||||
9
static/js/ketcher2/node_modules/es5-ext/array/to-array.js
generated
vendored
Normal file
9
static/js/ketcher2/node_modules/es5-ext/array/to-array.js
generated
vendored
Normal file
@ -0,0 +1,9 @@
|
||||
"use strict";
|
||||
|
||||
var from = require("./from")
|
||||
|
||||
, isArray = Array.isArray;
|
||||
|
||||
module.exports = function (arrayLike) {
|
||||
return isArray(arrayLike) ? arrayLike : from(arrayLike);
|
||||
};
|
||||
8
static/js/ketcher2/node_modules/es5-ext/array/valid-array.js
generated
vendored
Normal file
8
static/js/ketcher2/node_modules/es5-ext/array/valid-array.js
generated
vendored
Normal file
@ -0,0 +1,8 @@
|
||||
"use strict";
|
||||
|
||||
var isArray = Array.isArray;
|
||||
|
||||
module.exports = function (value) {
|
||||
if (isArray(value)) return value;
|
||||
throw new TypeError(value + " is not an array");
|
||||
};
|
||||
5
static/js/ketcher2/node_modules/es5-ext/boolean/index.js
generated
vendored
Normal file
5
static/js/ketcher2/node_modules/es5-ext/boolean/index.js
generated
vendored
Normal file
@ -0,0 +1,5 @@
|
||||
"use strict";
|
||||
|
||||
module.exports = {
|
||||
isBoolean: require("./is-boolean")
|
||||
};
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user