first commit
This commit is contained in:
20
node_modules/object.fromentries/.editorconfig
generated
vendored
Normal file
20
node_modules/object.fromentries/.editorconfig
generated
vendored
Normal file
@@ -0,0 +1,20 @@
|
||||
root = true
|
||||
|
||||
[*]
|
||||
indent_style = tab
|
||||
indent_size = 4
|
||||
end_of_line = lf
|
||||
charset = utf-8
|
||||
trim_trailing_whitespace = true
|
||||
insert_final_newline = true
|
||||
max_line_length = 150
|
||||
|
||||
[CHANGELOG.md]
|
||||
indent_style = space
|
||||
indent_size = 2
|
||||
|
||||
[*.json]
|
||||
max_line_length = off
|
||||
|
||||
[Makefile]
|
||||
max_line_length = off
|
||||
34
node_modules/object.fromentries/.eslintrc
generated
vendored
Normal file
34
node_modules/object.fromentries/.eslintrc
generated
vendored
Normal file
@@ -0,0 +1,34 @@
|
||||
{
|
||||
"root": true,
|
||||
|
||||
"extends": "@ljharb",
|
||||
|
||||
"rules": {
|
||||
"id-length": 0,
|
||||
"new-cap": [2, {
|
||||
"capIsNewExceptions": [
|
||||
"AddEntriesFromIterable",
|
||||
"CreateDataPropertyOrThrow",
|
||||
"Get",
|
||||
"GetIterator",
|
||||
"IsArray",
|
||||
"IteratorStep",
|
||||
"IteratorClose",
|
||||
"IteratorValue",
|
||||
"ThrowCompletion",
|
||||
"ToPropertyKey",
|
||||
"Type",
|
||||
"RequireObjectCoercible",
|
||||
],
|
||||
}],
|
||||
},
|
||||
|
||||
"overrides": [
|
||||
{
|
||||
"files": "test/**",
|
||||
"rules": {
|
||||
"no-invalid-this": 1,
|
||||
},
|
||||
},
|
||||
],
|
||||
}
|
||||
9
node_modules/object.fromentries/.nycrc
generated
vendored
Normal file
9
node_modules/object.fromentries/.nycrc
generated
vendored
Normal file
@@ -0,0 +1,9 @@
|
||||
{
|
||||
"all": true,
|
||||
"check-coverage": false,
|
||||
"reporter": ["text-summary", "text", "html", "json"],
|
||||
"exclude": [
|
||||
"coverage",
|
||||
"test"
|
||||
]
|
||||
}
|
||||
92
node_modules/object.fromentries/CHANGELOG.md
generated
vendored
Normal file
92
node_modules/object.fromentries/CHANGELOG.md
generated
vendored
Normal file
@@ -0,0 +1,92 @@
|
||||
# Changelog
|
||||
|
||||
All notable changes to this project will be documented in this file.
|
||||
|
||||
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
|
||||
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
||||
|
||||
## [v2.0.8](https://github.com/es-shims/Object.fromEntries/compare/v2.0.7...v2.0.8) - 2024-03-18
|
||||
|
||||
### Commits
|
||||
|
||||
- [actions] remove redundant finisher [`70e8717`](https://github.com/es-shims/Object.fromEntries/commit/70e8717d348e7d2b919c48ce7ab8cdc403664250)
|
||||
- [Deps] update `call-bind`, `define-properties`, `es-abstract` [`f4b1a93`](https://github.com/es-shims/Object.fromEntries/commit/f4b1a93c665224e02724d3984eac0ce8508407cc)
|
||||
- [Refactor] use `es-object-atoms` where possible [`252ffa7`](https://github.com/es-shims/Object.fromEntries/commit/252ffa73b503b29a7751730f5bca52f5136469e2)
|
||||
- [Dev Deps] update `aud`, `tape` [`200ccd5`](https://github.com/es-shims/Object.fromEntries/commit/200ccd563a4bf5a55603be7877646dae1f67675c)
|
||||
|
||||
## [v2.0.7](https://github.com/es-shims/Object.fromEntries/compare/v2.0.6...v2.0.7) - 2023-08-28
|
||||
|
||||
### Commits
|
||||
|
||||
- [Deps] update `define-properties`, `es-abstract` [`dbf1467`](https://github.com/es-shims/Object.fromEntries/commit/dbf1467c5586bbf0183ebdee1239176eaf1f94d6)
|
||||
- [Dev Deps] update `@es-shims/api`, `@ljharb/eslint-config`, `aud`, `tape` [`495556f`](https://github.com/es-shims/Object.fromEntries/commit/495556fd641f1c6b9f2f1eedf1be98ed7dad1c43)
|
||||
|
||||
## [v2.0.6](https://github.com/es-shims/Object.fromEntries/compare/v2.0.5...v2.0.6) - 2022-11-06
|
||||
|
||||
### Commits
|
||||
|
||||
- [actions] reuse common workflows [`867603d`](https://github.com/es-shims/Object.fromEntries/commit/867603ddb384887d25749488579a4c74fa9c1443)
|
||||
- [meta] add `auto-changelog` [`3621c90`](https://github.com/es-shims/Object.fromEntries/commit/3621c90294140f0139cf65c9ed852e7ace01c40f)
|
||||
- [Dev Deps] update `eslint`, `@ljharb/eslint-config`, `@es-shims/api`, `safe-publish-latest`, `tape` [`d6c3de7`](https://github.com/es-shims/Object.fromEntries/commit/d6c3de793e1f2055b5b11102f778270378956f71)
|
||||
- [Deps] update `define-properties`, `es-abstract` [`a0eca66`](https://github.com/es-shims/Object.fromEntries/commit/a0eca66c2d21c1030430b8c06c36d9235d0f5870)
|
||||
- [actions] update rebase action to use reusable workflow [`91df159`](https://github.com/es-shims/Object.fromEntries/commit/91df159d076da80dcb62dd4a27cc303e4bdaf76e)
|
||||
- [actions] update codecov uploader [`e7f2c96`](https://github.com/es-shims/Object.fromEntries/commit/e7f2c965103df04dc21042bd735ce1a5d1446193)
|
||||
- [Dev Deps] update `eslint`, `@ljharb/eslint-config`, `aud`, `tape` [`ec22968`](https://github.com/es-shims/Object.fromEntries/commit/ec22968b61d5888816c66d8416bb045f6584e3a1)
|
||||
|
||||
<!-- auto-changelog-above -->
|
||||
|
||||
2.0.5 / 2021-10-03
|
||||
=================
|
||||
* [readme] add actions and codecov badges
|
||||
* [Deps] update `es-abstract`
|
||||
* [Deps] remove unused `has` dep
|
||||
* [meta] use `prepublishOnly` script for npm 7+
|
||||
* [Dev Deps] update `eslint`, `@ljharb/eslint-config`, `@es-shims/api`, `aud`, `tape`
|
||||
* [actions] update workflows
|
||||
* [actions] use `node/install` instead of `node/run`; use `codecov` action
|
||||
* [Tests] increase coverage
|
||||
|
||||
2.0.4 / 2021-02-21
|
||||
=================
|
||||
* [readme] fix repo URLs; remove travis badge
|
||||
* [meta] do not publish github action workflow files
|
||||
* [Deps] update `call-bind`, `es-abstract`
|
||||
* [Dev Deps] update `eslint`, `@ljharb/eslint-config`, `aud`, `has-strict-mode`, `tape`
|
||||
* [actions] update workflows
|
||||
|
||||
2.0.3 / 2020-11-26
|
||||
=================
|
||||
* [Deps] update `es-abstract`; remove `function-bind`; use `call-bind` where applicable
|
||||
* [Dev Deps] update `eslint`, `@ljharb/eslint-config`, `tape`; add `aud`, `safe-publish-latest`
|
||||
* [actions] add "Allow Edits" workflow
|
||||
* [actions] switch Automatic Rebase workflow to `pull_request_target` event
|
||||
* [Tests] migrate tests to Github Actions
|
||||
* [Tests] run `nyc` on all tests
|
||||
* [Tests] add `implementation` test; run `es-shim-api` in postlint; use `tape` runner
|
||||
* [Tests] only audit prod deps
|
||||
|
||||
2.0.2 / 2019-12-12
|
||||
=================
|
||||
* [Refactor] use split-up `es-abstract` (63% bundle size decrease)
|
||||
* [readme] remove testling
|
||||
* [Dev Deps] update `eslint`, `@ljharb/eslint-config`
|
||||
* [meta] add `funding` field
|
||||
* [Tests] use shared travis-ci configs
|
||||
* [actions] add automatic rebasing / merge commit blocking
|
||||
|
||||
2.0.1 / 2019-10-03
|
||||
=================
|
||||
* [Fix] do not mutate `Object.fromEntries` when already present
|
||||
* [Deps] update `define-properties`, `es-abstract`, `has`
|
||||
* [Dev Deps] update `eslint`, `@ljharb/eslint-config`, `covert`, `tape`
|
||||
* [Tests] up to `node` `v12.9`, `v11.15`, `v10.16`, `v9.11`, `v8.16`, `v6.17`, `v4.9`
|
||||
* [Tests] use `npx aud` instead of `nsp` or `npm audit` with hoops
|
||||
|
||||
2.0.0 / 2018-08-09
|
||||
=================
|
||||
* [Breaking] throw when `iterable` is nullish
|
||||
* [Docs] Fix link to proposed spec
|
||||
|
||||
1.0.0 / 2018-03-21
|
||||
=================
|
||||
* v1.0.0
|
||||
21
node_modules/object.fromentries/LICENSE
generated
vendored
Normal file
21
node_modules/object.fromentries/LICENSE
generated
vendored
Normal file
@@ -0,0 +1,21 @@
|
||||
MIT License
|
||||
|
||||
Copyright (c) 2018 Jordan Harband
|
||||
|
||||
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.
|
||||
50
node_modules/object.fromentries/README.md
generated
vendored
Normal file
50
node_modules/object.fromentries/README.md
generated
vendored
Normal file
@@ -0,0 +1,50 @@
|
||||
# object.fromentries <sup>[![Version Badge][npm-version-svg]][package-url]</sup>
|
||||
|
||||
[![github actions][actions-image]][actions-url]
|
||||
[![coverage][codecov-image]][codecov-url]
|
||||
[![dependency status][deps-svg]][deps-url]
|
||||
[![dev dependency status][dev-deps-svg]][dev-deps-url]
|
||||
[![License][license-image]][license-url]
|
||||
[![Downloads][downloads-image]][downloads-url]
|
||||
|
||||
[![npm badge][npm-badge-png]][package-url]
|
||||
|
||||
An ES spec-proposal-compliant `Object.fromEntries` shim. Invoke its "shim" method to shim `Object.fromEntries` if it is unavailable or noncompliant.
|
||||
|
||||
This package implements the [es-shim API](https://github.com/es-shims/api) interface. It works in an ES3-supported environment and complies with the [proposed spec](https://tc39.github.io/proposal-object-from-entries/).
|
||||
|
||||
Most common usage:
|
||||
```js
|
||||
var assert = require('assert');
|
||||
var fromEntries = require('object.fromentries');
|
||||
|
||||
var obj = { a: 1, b: 2, c: 3 };
|
||||
var actual = fromEntries(Object.entries(obj));
|
||||
|
||||
assert.deepEqual(obj, actual);
|
||||
|
||||
if (!Object.fromEntries) {
|
||||
fromEntries.shim();
|
||||
}
|
||||
|
||||
assert.deepEqual(Object.fromEntries(Object.entries(obj)), obj);
|
||||
```
|
||||
|
||||
## Tests
|
||||
Simply clone the repo, `npm install`, and run `npm test`
|
||||
|
||||
[package-url]: https://npmjs.com/package/object.fromentries
|
||||
[npm-version-svg]: https://versionbadg.es/es-shims/Object.fromEntries.svg
|
||||
[deps-svg]: https://david-dm.org/es-shims/Object.fromEntries.svg
|
||||
[deps-url]: https://david-dm.org/es-shims/Object.fromEntries
|
||||
[dev-deps-svg]: https://david-dm.org/es-shims/Object.fromEntries/dev-status.svg
|
||||
[dev-deps-url]: https://david-dm.org/es-shims/Object.fromEntries#info=devDependencies
|
||||
[npm-badge-png]: https://nodei.co/npm/object.fromentries.png?downloads=true&stars=true
|
||||
[license-image]: https://img.shields.io/npm/l/object.fromentries.svg
|
||||
[license-url]: LICENSE
|
||||
[downloads-image]: https://img.shields.io/npm/dm/object.fromentries.svg
|
||||
[downloads-url]: https://npm-stat.com/charts.html?package=object.fromentries
|
||||
[codecov-image]: https://codecov.io/gh/es-shims/Object.fromEntries/branch/main/graphs/badge.svg
|
||||
[codecov-url]: https://app.codecov.io/gh/es-shims/Object.fromEntries/
|
||||
[actions-image]: https://img.shields.io/endpoint?url=https://github-actions-badge-u3jn4tfpocch.runkit.sh/es-shims/Object.fromEntries
|
||||
[actions-url]: https://github.com/es-shims/Object.fromEntries/actions
|
||||
3
node_modules/object.fromentries/auto.js
generated
vendored
Normal file
3
node_modules/object.fromentries/auto.js
generated
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
'use strict';
|
||||
|
||||
require('./shim')();
|
||||
18
node_modules/object.fromentries/implementation.js
generated
vendored
Normal file
18
node_modules/object.fromentries/implementation.js
generated
vendored
Normal file
@@ -0,0 +1,18 @@
|
||||
'use strict';
|
||||
|
||||
var AddEntriesFromIterable = require('es-abstract/2024/AddEntriesFromIterable');
|
||||
var CreateDataPropertyOrThrow = require('es-abstract/2024/CreateDataPropertyOrThrow');
|
||||
var RequireObjectCoercible = require('es-object-atoms/RequireObjectCoercible');
|
||||
var ToPropertyKey = require('es-abstract/2024/ToPropertyKey');
|
||||
|
||||
var adder = function addDataProperty(key, value) {
|
||||
var O = this; // eslint-disable-line no-invalid-this
|
||||
var propertyKey = ToPropertyKey(key);
|
||||
CreateDataPropertyOrThrow(O, propertyKey, value);
|
||||
};
|
||||
|
||||
module.exports = function fromEntries(iterable) {
|
||||
RequireObjectCoercible(iterable);
|
||||
|
||||
return AddEntriesFromIterable({}, iterable, adder);
|
||||
};
|
||||
18
node_modules/object.fromentries/index.js
generated
vendored
Normal file
18
node_modules/object.fromentries/index.js
generated
vendored
Normal file
@@ -0,0 +1,18 @@
|
||||
'use strict';
|
||||
|
||||
var define = require('define-properties');
|
||||
var callBind = require('call-bind');
|
||||
|
||||
var implementation = require('./implementation');
|
||||
var getPolyfill = require('./polyfill');
|
||||
var shim = require('./shim');
|
||||
|
||||
var polyfill = callBind(getPolyfill(), Object);
|
||||
|
||||
define(polyfill, {
|
||||
getPolyfill: getPolyfill,
|
||||
implementation: implementation,
|
||||
shim: shim
|
||||
});
|
||||
|
||||
module.exports = polyfill;
|
||||
91
node_modules/object.fromentries/package.json
generated
vendored
Normal file
91
node_modules/object.fromentries/package.json
generated
vendored
Normal file
@@ -0,0 +1,91 @@
|
||||
{
|
||||
"name": "object.fromentries",
|
||||
"version": "2.0.8",
|
||||
"author": "Jordan Harband <ljharb@gmail.com>",
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/ljharb"
|
||||
},
|
||||
"description": "ES proposal-spec-compliant Object.fromEntries shim.",
|
||||
"license": "MIT",
|
||||
"main": "index.js",
|
||||
"scripts": {
|
||||
"prepublish": "not-in-publish || npm run prepublishOnly",
|
||||
"prepublishOnly": "safe-publish-latest",
|
||||
"pretest": "npm run lint",
|
||||
"test": "npm run tests-only",
|
||||
"posttest": "aud --production",
|
||||
"tests-only": "nyc tape 'test/**/*.js'",
|
||||
"lint": "eslint --ext=js,mjs .",
|
||||
"postlint": "es-shim-api --bound",
|
||||
"version": "auto-changelog && git add CHANGELOG.md",
|
||||
"postversion": "auto-changelog && git add CHANGELOG.md && git commit --no-edit --amend && git tag -f \"v$(node -e \"console.log(require('./package.json').version)\")\""
|
||||
},
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "git://github.com/es-shims/Object.fromEntries.git"
|
||||
},
|
||||
"keywords": [
|
||||
"Object.fromEntries",
|
||||
"Object.entries",
|
||||
"Object.values",
|
||||
"Object.keys",
|
||||
"entries",
|
||||
"values",
|
||||
"ES7",
|
||||
"ES8",
|
||||
"ES2017",
|
||||
"shim",
|
||||
"object",
|
||||
"keys",
|
||||
"polyfill",
|
||||
"es-shim API"
|
||||
],
|
||||
"dependencies": {
|
||||
"call-bind": "^1.0.7",
|
||||
"define-properties": "^1.2.1",
|
||||
"es-abstract": "^1.23.2",
|
||||
"es-object-atoms": "^1.0.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@es-shims/api": "^2.4.2",
|
||||
"@ljharb/eslint-config": "^21.1.0",
|
||||
"aud": "^2.0.4",
|
||||
"auto-changelog": "^2.4.0",
|
||||
"eslint": "=8.8.0",
|
||||
"has-strict-mode": "^1.0.1",
|
||||
"in-publish": "^2.0.1",
|
||||
"nyc": "^10.3.2",
|
||||
"safe-publish-latest": "^2.0.0",
|
||||
"tape": "^5.7.5"
|
||||
},
|
||||
"testling": {
|
||||
"files": "test/index.js",
|
||||
"browsers": [
|
||||
"iexplore/9.0..latest",
|
||||
"firefox/4.0..6.0",
|
||||
"firefox/15.0..latest",
|
||||
"firefox/nightly",
|
||||
"chrome/4.0..10.0",
|
||||
"chrome/20.0..latest",
|
||||
"chrome/canary",
|
||||
"opera/11.6..latest",
|
||||
"opera/next",
|
||||
"safari/5.0..latest",
|
||||
"ipad/6.0..latest",
|
||||
"iphone/6.0..latest",
|
||||
"android-browser/4.2"
|
||||
]
|
||||
},
|
||||
"auto-changelog": {
|
||||
"output": "CHANGELOG.md",
|
||||
"template": "keepachangelog",
|
||||
"unreleased": false,
|
||||
"commitLimit": false,
|
||||
"backfillLimit": false,
|
||||
"hideCredit": true,
|
||||
"startingVersion": "2.0.6"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 0.4"
|
||||
}
|
||||
}
|
||||
7
node_modules/object.fromentries/polyfill.js
generated
vendored
Normal file
7
node_modules/object.fromentries/polyfill.js
generated
vendored
Normal file
@@ -0,0 +1,7 @@
|
||||
'use strict';
|
||||
|
||||
var implementation = require('./implementation');
|
||||
|
||||
module.exports = function getPolyfill() {
|
||||
return typeof Object.fromEntries === 'function' ? Object.fromEntries : implementation;
|
||||
};
|
||||
14
node_modules/object.fromentries/shim.js
generated
vendored
Normal file
14
node_modules/object.fromentries/shim.js
generated
vendored
Normal file
@@ -0,0 +1,14 @@
|
||||
'use strict';
|
||||
|
||||
var getPolyfill = require('./polyfill');
|
||||
var define = require('define-properties');
|
||||
|
||||
module.exports = function shimEntries() {
|
||||
var polyfill = getPolyfill();
|
||||
define(Object, { fromEntries: polyfill }, {
|
||||
fromEntries: function testEntries() {
|
||||
return Object.fromEntries !== polyfill;
|
||||
}
|
||||
});
|
||||
return polyfill;
|
||||
};
|
||||
20
node_modules/object.fromentries/test/implementation.js
generated
vendored
Normal file
20
node_modules/object.fromentries/test/implementation.js
generated
vendored
Normal file
@@ -0,0 +1,20 @@
|
||||
'use strict';
|
||||
|
||||
var implementation = require('../implementation');
|
||||
var callBind = require('call-bind');
|
||||
var test = require('tape');
|
||||
var hasStrictMode = require('has-strict-mode')();
|
||||
var runTests = require('./tests');
|
||||
|
||||
test('as a function', function (t) {
|
||||
t.test('bad array/this value', { skip: !hasStrictMode }, function (st) {
|
||||
/* eslint no-useless-call: 0 */
|
||||
st['throws'](function () { implementation.call(undefined); }, TypeError, 'undefined is not an object');
|
||||
st['throws'](function () { implementation.call(null); }, TypeError, 'null is not an object');
|
||||
st.end();
|
||||
});
|
||||
|
||||
runTests(callBind(implementation, Object), t);
|
||||
|
||||
t.end();
|
||||
});
|
||||
17
node_modules/object.fromentries/test/index.js
generated
vendored
Normal file
17
node_modules/object.fromentries/test/index.js
generated
vendored
Normal file
@@ -0,0 +1,17 @@
|
||||
'use strict';
|
||||
|
||||
var fromEntries = require('../');
|
||||
var test = require('tape');
|
||||
var runTests = require('./tests');
|
||||
|
||||
test('as a function', function (t) {
|
||||
t.test('bad array/this value', function (st) {
|
||||
st['throws'](function () { fromEntries(undefined); }, TypeError, 'undefined is not an object');
|
||||
st['throws'](function () { fromEntries(null); }, TypeError, 'null is not an object');
|
||||
st.end();
|
||||
});
|
||||
|
||||
runTests(fromEntries, t);
|
||||
|
||||
t.end();
|
||||
});
|
||||
44
node_modules/object.fromentries/test/shimmed.js
generated
vendored
Normal file
44
node_modules/object.fromentries/test/shimmed.js
generated
vendored
Normal file
@@ -0,0 +1,44 @@
|
||||
'use strict';
|
||||
|
||||
require('../auto');
|
||||
|
||||
var test = require('tape');
|
||||
var keys = require('object-keys');
|
||||
var defineProperties = require('define-properties');
|
||||
var isEnumerable = Object.prototype.propertyIsEnumerable;
|
||||
var functionsHaveNames = function f() {}.name === 'f';
|
||||
|
||||
var runTests = require('./tests');
|
||||
|
||||
test('shimmed', function (t) {
|
||||
t.equal(Object.fromEntries.length, 1, 'Object.fromEntries has a length of 1');
|
||||
t.test('Function name', { skip: !functionsHaveNames }, function (st) {
|
||||
st.equal(Object.fromEntries.name, 'fromEntries', 'Object.fromEntries has name "fromEntries"');
|
||||
st.end();
|
||||
});
|
||||
|
||||
t.test('enumerability', { skip: !defineProperties.supportsDescriptors }, function (et) {
|
||||
et.equal(false, isEnumerable.call(Object, 'fromEntries'), 'Object.fromEntries is not enumerable');
|
||||
et.end();
|
||||
});
|
||||
|
||||
var supportsStrictMode = (function () { return typeof this === 'undefined'; }());
|
||||
|
||||
t.test('bad object value', { skip: !supportsStrictMode }, function (st) {
|
||||
st['throws'](function () { return Object.fromEntries(undefined); }, TypeError, 'undefined is not an object');
|
||||
st['throws'](function () { return Object.fromEntries(null); }, TypeError, 'null is not an object');
|
||||
st.end();
|
||||
});
|
||||
|
||||
t.test('does not mutate global method', function (st) {
|
||||
st.deepEqual(keys(Object.fromEntries), [], 'no enumerable keys');
|
||||
st.equal('shim' in Object.fromEntries, false, '"shim" is not present');
|
||||
st.equal('getPolyfill' in Object.fromEntries, false, '"getPolyfill" is not present');
|
||||
st.equal('implementation' in Object.fromEntries, false, '"implementation" is not present');
|
||||
st.end();
|
||||
});
|
||||
|
||||
runTests(Object.fromEntries, t);
|
||||
|
||||
t.end();
|
||||
});
|
||||
17
node_modules/object.fromentries/test/tests.js
generated
vendored
Normal file
17
node_modules/object.fromentries/test/tests.js
generated
vendored
Normal file
@@ -0,0 +1,17 @@
|
||||
'use strict';
|
||||
|
||||
module.exports = function (fromEntries, t) {
|
||||
var a = {};
|
||||
var b = {};
|
||||
var c = {};
|
||||
var entries = [['a', a], ['b', b], ['c', c]];
|
||||
var obj = { a: a, b: b, c: c };
|
||||
|
||||
t.deepEqual(fromEntries(entries), obj, 'entries -> obj');
|
||||
|
||||
t['throws'](function () { fromEntries(); }, 'entries throws on absent iterable');
|
||||
t['throws'](function () { fromEntries(undefined); }, 'entries throws on undefined');
|
||||
t['throws'](function () { fromEntries(null); }, 'entries throws on null');
|
||||
|
||||
t.deepEqual(fromEntries([['foo', 1], ['foo', 2]]), { foo: 2 }, 'works with a duplicate key');
|
||||
};
|
||||
Reference in New Issue
Block a user