cdk-lambda-subminute 2.0.555 → 2.0.557

Sign up to get free protection for your applications and to get access to all the features.
Files changed (56) hide show
  1. package/.jsii +15 -2
  2. package/lib/cdk-lambda-subminute.js +3 -3
  3. package/node_modules/es-object-atoms/.eslintrc +16 -0
  4. package/node_modules/es-object-atoms/.github/FUNDING.yml +12 -0
  5. package/node_modules/es-object-atoms/CHANGELOG.md +16 -0
  6. package/node_modules/es-object-atoms/LICENSE +21 -0
  7. package/node_modules/es-object-atoms/README.md +56 -0
  8. package/node_modules/es-object-atoms/RequireObjectCoercible.d.ts +3 -0
  9. package/node_modules/es-object-atoms/RequireObjectCoercible.js +11 -0
  10. package/node_modules/es-object-atoms/ToObject.d.ts +3 -0
  11. package/node_modules/es-object-atoms/ToObject.js +10 -0
  12. package/node_modules/es-object-atoms/index.d.ts +3 -0
  13. package/node_modules/es-object-atoms/index.js +4 -0
  14. package/node_modules/es-object-atoms/package.json +79 -0
  15. package/node_modules/es-object-atoms/test/index.js +28 -0
  16. package/node_modules/es-object-atoms/tsconfig.json +6 -0
  17. package/node_modules/get-intrinsic/CHANGELOG.md +9 -0
  18. package/node_modules/get-intrinsic/index.js +16 -3
  19. package/node_modules/get-intrinsic/package.json +6 -4
  20. package/node_modules/math-intrinsics/.eslintrc +16 -0
  21. package/node_modules/math-intrinsics/.github/FUNDING.yml +12 -0
  22. package/node_modules/math-intrinsics/CHANGELOG.md +16 -0
  23. package/node_modules/math-intrinsics/LICENSE +21 -0
  24. package/node_modules/math-intrinsics/README.md +49 -0
  25. package/node_modules/math-intrinsics/abs.d.ts +1 -0
  26. package/node_modules/math-intrinsics/abs.js +4 -0
  27. package/node_modules/math-intrinsics/constants/maxArrayLength.d.ts +3 -0
  28. package/node_modules/math-intrinsics/constants/maxArrayLength.js +4 -0
  29. package/node_modules/math-intrinsics/constants/maxSafeInteger.d.ts +3 -0
  30. package/node_modules/math-intrinsics/constants/maxSafeInteger.js +5 -0
  31. package/node_modules/math-intrinsics/constants/maxValue.d.ts +3 -0
  32. package/node_modules/math-intrinsics/constants/maxValue.js +5 -0
  33. package/node_modules/math-intrinsics/floor.d.ts +1 -0
  34. package/node_modules/math-intrinsics/floor.js +4 -0
  35. package/node_modules/math-intrinsics/isFinite.d.ts +3 -0
  36. package/node_modules/math-intrinsics/isFinite.js +12 -0
  37. package/node_modules/math-intrinsics/isInteger.d.ts +3 -0
  38. package/node_modules/math-intrinsics/isInteger.js +16 -0
  39. package/node_modules/math-intrinsics/isNaN.d.ts +1 -0
  40. package/node_modules/math-intrinsics/isNaN.js +6 -0
  41. package/node_modules/math-intrinsics/isNegativeZero.d.ts +3 -0
  42. package/node_modules/math-intrinsics/isNegativeZero.js +6 -0
  43. package/node_modules/math-intrinsics/max.d.ts +1 -0
  44. package/node_modules/math-intrinsics/max.js +4 -0
  45. package/node_modules/math-intrinsics/min.d.ts +1 -0
  46. package/node_modules/math-intrinsics/min.js +4 -0
  47. package/node_modules/math-intrinsics/mod.d.ts +3 -0
  48. package/node_modules/math-intrinsics/mod.js +9 -0
  49. package/node_modules/math-intrinsics/package.json +85 -0
  50. package/node_modules/math-intrinsics/pow.d.ts +1 -0
  51. package/node_modules/math-intrinsics/pow.js +4 -0
  52. package/node_modules/math-intrinsics/sign.d.ts +3 -0
  53. package/node_modules/math-intrinsics/sign.js +11 -0
  54. package/node_modules/math-intrinsics/test/index.js +183 -0
  55. package/node_modules/math-intrinsics/tsconfig.json +3 -0
  56. package/package.json +1 -1
package/.jsii CHANGED
@@ -1854,6 +1854,19 @@
1854
1854
  }
1855
1855
  }
1856
1856
  },
1857
+ "aws-cdk-lib.aws_invoicing": {
1858
+ "targets": {
1859
+ "dotnet": {
1860
+ "package": "Amazon.CDK.AWS.Invoicing"
1861
+ },
1862
+ "java": {
1863
+ "package": "software.amazon.awscdk.services.invoicing"
1864
+ },
1865
+ "python": {
1866
+ "module": "aws_cdk.aws_invoicing"
1867
+ }
1868
+ }
1869
+ },
1857
1870
  "aws-cdk-lib.aws_iot": {
1858
1871
  "targets": {
1859
1872
  "dotnet": {
@@ -4359,6 +4372,6 @@
4359
4372
  "symbolId": "src/cdk-lambda-subminute:SubminuteStateMachineProps"
4360
4373
  }
4361
4374
  },
4362
- "version": "2.0.555",
4363
- "fingerprint": "jRWTUHRTryU4DOfne1zwiLtnH4W8BQLkbuiO858Cit0="
4375
+ "version": "2.0.557",
4376
+ "fingerprint": "Vrlw7evLwqYji4/sBruIIE4dFmm0eGQAxHqWfmLzWiA="
4364
4377
  }
@@ -45,7 +45,7 @@ class LambdaSubminute extends constructs_1.Construct {
45
45
  }
46
46
  exports.LambdaSubminute = LambdaSubminute;
47
47
  _a = JSII_RTTI_SYMBOL_1;
48
- LambdaSubminute[_a] = { fqn: "cdk-lambda-subminute.LambdaSubminute", version: "2.0.555" };
48
+ LambdaSubminute[_a] = { fqn: "cdk-lambda-subminute.LambdaSubminute", version: "2.0.557" };
49
49
  class IteratorLambda extends constructs_1.Construct {
50
50
  constructor(scope, name, props) {
51
51
  super(scope, name);
@@ -85,7 +85,7 @@ class IteratorLambda extends constructs_1.Construct {
85
85
  }
86
86
  exports.IteratorLambda = IteratorLambda;
87
87
  _b = JSII_RTTI_SYMBOL_1;
88
- IteratorLambda[_b] = { fqn: "cdk-lambda-subminute.IteratorLambda", version: "2.0.555" };
88
+ IteratorLambda[_b] = { fqn: "cdk-lambda-subminute.IteratorLambda", version: "2.0.557" };
89
89
  class SubminuteStateMachine extends constructs_1.Construct {
90
90
  constructor(scope, id, props) {
91
91
  super(scope, id);
@@ -160,5 +160,5 @@ class SubminuteStateMachine extends constructs_1.Construct {
160
160
  }
161
161
  exports.SubminuteStateMachine = SubminuteStateMachine;
162
162
  _c = JSII_RTTI_SYMBOL_1;
163
- SubminuteStateMachine[_c] = { fqn: "cdk-lambda-subminute.SubminuteStateMachine", version: "2.0.555" };
163
+ SubminuteStateMachine[_c] = { fqn: "cdk-lambda-subminute.SubminuteStateMachine", version: "2.0.557" };
164
164
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2RrLWxhbWJkYS1zdWJtaW51dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvY2RrLWxhbWJkYS1zdWJtaW51dGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSx5QkFBeUI7QUFDekIsNkJBQTZCO0FBQzdCLG1DQUFtQztBQUNuQyxpREFBa0Q7QUFDbEQsMERBQTJEO0FBQzNELDJDQUEyQztBQUUzQyx1REFBcUU7QUFDckUscUVBQStEO0FBQy9ELG1EQUFxRDtBQUNyRCxxREFBcUQ7QUFDckQsNkRBQTZEO0FBQzdELDJDQUF1QztBQTRCdkMsTUFBYSxlQUFnQixTQUFRLHNCQUFTO0lBUzVDLFlBQVksTUFBaUIsRUFBRSxJQUFZLEVBQUUsS0FBMkI7UUFDdEUsS0FBSyxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQztRQUNwQixNQUFNLFFBQVEsR0FBRyxJQUFJLGNBQWMsQ0FBQyxJQUFJLEVBQUUsZ0JBQWdCLEVBQUUsRUFBRSxjQUFjLEVBQUUsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDLENBQUM7UUFDdEcsSUFBSSxDQUFDLGdCQUFnQixHQUFHLFFBQVEsQ0FBQyxRQUFRLENBQUM7UUFDMUMsTUFBTSxxQkFBcUIsR0FBRyxJQUFJLHFCQUFxQixDQUFDLElBQUksRUFBRSx1QkFBdUIsRUFBRTtZQUNyRixnQkFBZ0IsRUFBRSwrQkFBK0I7WUFDakQsY0FBYyxFQUFFLEtBQUssQ0FBQyxjQUFjO1lBQ3BDLGdCQUFnQixFQUFFLElBQUksQ0FBQyxnQkFBZ0I7WUFDdkMsWUFBWSxFQUFFLEtBQUssQ0FBQyxZQUFZLElBQUksRUFBRTtZQUN0QyxTQUFTLEVBQUUsS0FBSyxDQUFDLFNBQVMsSUFBSSxDQUFDO1NBQ2hDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxlQUFlLEdBQUcscUJBQXFCLENBQUMsWUFBWSxDQUFDLGVBQWUsQ0FBQztRQUUxRSxNQUFNLFNBQVMsR0FBRyxJQUFJLE1BQU0sQ0FBQyxJQUFJLENB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QyxLQUFLLENBQUMsY0FBYyxDQUFDLFdBQVcsRUFBRSxLQUFLLENBQUMsZ0JBQWdCLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDeEUsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsRUFBRSxLQUFLLENBQUMsWUFBWSxFQUFFLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUM1RyxNQUFNLFlBQVksR0FBRyxJQUFJLEdBQUcsQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLGNBQWMsRUFBRTtZQUM5RCxnQkFBZ0IsRUFBRSxLQUFLLENBQUMsZ0JBQWdCO1lBQ3hDLFVBQVUsRUFBRSxhQUFhO1lBQ3pCLElBQUksRUFBRSxnQkFBZ0I7U0FDdkIsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLFlBQVksR0FBRyxZQUFZLENBQUM7SUFDbkMsQ0FBQzs7QUFiSCxzREE2RUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBmcyBmcm9tICdmcyc7XG5pbXBvcnQgKiBhcyBwYXRoIGZyb20gJ3BhdGgnO1xuaW1wb3J0ICogYXMgY2RrIGZyb20gJ2F3cy1jZGstbGliJztcbmltcG9ydCBldmVudHMgPSByZXF1aXJlKCdhd3MtY2RrLWxpYi9hd3MtZXZlbnRzJyk7XG5pbXBvcnQgdGFyZ2V0cyA9IHJlcXVpcmUoJ2F3cy1jZGstbGliL2F3cy1ldmVudHMtdGFyZ2V0cycpO1xuaW1wb3J0ICogYXMgaWFtIGZyb20gJ2F3cy1jZGstbGliL2F3cy1pYW0nO1xuXG5pbXBvcnQgeyBJRnVuY3Rpb24sIFJ1bnRpbWUsIFRyYWNpbmcgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtbGFtYmRhJztcbmltcG9ydCB7IE5vZGVqc0Z1bmN0aW9uIH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWxhbWJkYS1ub2RlanMnO1xuaW1wb3J0IHsgUmV0ZW50aW9uRGF5cyB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1sb2dzJztcbmltcG9ydCAqIGFzIHNmbiBmcm9tICdhd3MtY2RrLWxpYi9hd3Mtc3RlcGZ1bmN0aW9ucyc7XG5pbXBvcnQgKiBhcyB0YXNrcyBmcm9tICdhd3MtY2RrLWxpYi9hd3Mtc3RlcGZ1bmN0aW9ucy10YXNrcyc7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tICdjb25zdHJ1Y3RzJztcblxuZXhwb3J0IGludGVyZmFjZSBMYW1iZGFTdWJtaW51dGVQcm9wcyB7XG4gIC8qKlxuICAgKiBUaGUgTGFtYmRhIGZ1bmN0aW9uIHRoYXQgaXMgZ29pbmcgdG8gYmUgZXhlY3V0ZWQgcGVyIHRpbWUgdW5pdCBsZXNzIHRoYW4gb25lIG1pbnV0ZS5cbiAgICovXG4gIHJlYWRvbmx5IHRhcmdldEZ1bmN0aW9uOiBJRnVuY3Rpb247XG4gIC8qKlxuICAgKiBBIHBhdHRlcm4geW91IHdhbnQgdGhpcyBzdGF0ZW1hY2hpbmUgdG8gYmUgZXhlY3V0ZWQuXG4gICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL0FtYXpvbkNsb3VkV2F0Y2gvbGF0ZXN0L2V2ZW50cy9TY2hlZHVsZWRFdmVudHMuaHRtbFxuICAgKlxuICAgKiBAZGVmYXVsdCBjcm9uKDUwLzEgMTUtMTcgPyAqICogKikgVVRDKzAgYmVpbmcgcnVuIGV2ZXJ5IG1pbnV0ZSBzdGFydGluZyBmcm9tIDE1OjAwIFBNIHRvIDE3OjAwIFBNLlxuICAgKi9cbiAgcmVhZG9ubHkgY3JvbmpvYkV4cHJlc3Npb24/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBIb3cgbWFueSB0aW1lcyB5b3UgaW50ZW50IHRvIGV4ZWN1dGUgaW4gYSBtaW51dGUuXG4gICAqXG4gICAqIEBkZWZhdWx0IDZcbiAgICovXG4gIHJlYWRvbmx5IGZyZXF1ZW5jeT86IG51bWJlcjtcbiAgLyoqXG4gICAqIFNlY29uZHMgZm9yIGFuIGludGVydmFsLCB0aGUgcHJvZHVjdCBvZiBgZnJlcXVlbmN5YCBhbmQgYGludGVydmFsVGltZWAgc2hvdWxkIGJlIGFwcHJveGltYWdlbHkgMSBtaW51dGUuXG4gICAqXG4gICAqIEBkZWZhdWx0IDEwXG4gICAqL1xuICByZWFkb25seSBpbnRlcnZhbFRpbWU/OiBudW1iZXI7XG59XG5cbmV4cG9ydCBjbGFzcyBMYW1iZGFTdWJtaW51dGUgZXh0ZW5kcyBDb25zdHJ1Y3Qge1xuICAvKipcbiAgICogVGhlIExhbWJkYSBmdW5jdGlvbiB0aGF0IHBsYXlzIHRoZSByb2xlIG9mIHRoZSBpdGVyYXRvci5cbiAgICovXG4gIHJlYWRvbmx5IGl0ZXJhdG9yRnVuY3Rpb246IElGdW5jdGlvbjtcbiAgLyoqXG4gICAqIFRoZSBBUk4gb2YgdGhlIHN0YXRlIG1hY2hpbmUgdGhhdCBleGVjdXRlcyB0aGUgdGFyZ2V0IExhbWJkYSBmdW5jdGlvbiBwZXIgdGltZSB1bml0IGxlc3MgdGhhbiBvbmUgbWludXRlLlxuICAgKi9cbiAgcmVhZG9ubHkgc3RhdGVNYWNoaW5lQXJuOiBzdHJpbmc7XG4gIGNvbnN0cnVjdG9yKHBhcmVudDogQ29uc3RydWN0LCBuYW1lOiBzdHJpbmcsIHByb3BzOiBMYW1iZGFTdWJtaW51dGVQcm9wcykge1xuICAgIHN1cGVyKHBhcmVudCwgbmFtZSk7XG4gICAgY29uc3QgaXRlcmF0b3IgPSBuZXcgSXRlcmF0b3JMYW1iZGEodGhpcywgJ0l0ZXJhdG9yTGFtYmRhJywgeyB0YXJnZXRGdW5jdGlvbjogcHJvcHMudGFyZ2V0RnVuY3Rpb24gfSk7XG4gICAgdGhpcy5pdGVyYXRvckZ1bmN0aW9uID0gaXRlcmF0b3IuZnVuY3Rpb247XG4gICAgY29uc3Qgc3VibWludXRlU3RhdGVNYWNoaW5lID0gbmV3IFN1Ym1pbnV0ZVN0YXRlTWFjaGluZSh0aGlzLCAnU3VibWludXRlU3RhdGVNYWNoaW5lJywge1xuICAgICAgc3RhdGVNYWNoaW5lTmFtZTogJ2xhbWJkYS1zdWJtaW51dGUtc3RhdGVtYWNoaW5lJyxcbiAgICAgIHRhcmdldEZ1bmN0aW9uOiBwcm9wcy50YXJnZXRGdW5jdGlvbixcbiAgICAgIGl0ZXJhdG9yRnVuY3Rpb246IHRoaXMuaXRlcmF0b3JGdW5jdGlvbixcbiAgICAgIGludGVydmFsVGltZTogcHJvcHMuaW50ZXJ2YWxUaW1lID8/IDEwLFxuICAgICAgZnJlcXVlbmN5OiBwcm9wcy5mcmVxdWVuY3kgPz8gNixcbiAgICB9KTtcbiAgICB0aGlzLnN0YXRlTWFjaGluZUFybiA9IHN1Ym1pbnV0ZVN0YXRlTWFjaGluZS5zdGF0ZU1hY2hpbmUuc3RhdGVNYWNoaW5lQXJuO1xuXG4gICAgY29uc3Qgc3RhcnRSdWxlID0gbmV3IGV2ZW50cy5SdWxlKHRoaXMsICdTdGFydFN1Ym1pbnV0ZVN0YXRlTWFjaGluZScsIHtcbiAgICAgIHNjaGVkdWxlOiBldmVudHMuU2NoZWR1bGUuZXhwcmVzc2lvbihwcm9wcy5jcm9uam9iRXhwcmVzc2lvbiA/PyAnY3Jvbig1MC8xIDE1LTE3ID8gKiAqICopJyksXG4gICAgICBydWxlTmFtZTogJ3N1Ym1pbnV0ZS1zdGF0ZW1hY2hpbmUtbGFtYmRhLXJ1bGUnLFxuICAgICAgZGVzY3JpcHRpb246IGBBIHJ1bGUgdG8gcnVuIHRoZSBzdWJtaW51dGUgc3RhdGUgbWFjaGluZSwgaS5lLiAke3N1Ym1pbnV0ZVN0YXRlTWFjaGluZS5zdGF0ZU1hY2hpbmUuc3RhdGVNYWNoaW5lTmFtZX1gLFxuICAgIH0pO1xuICAgIHN0YXJ0UnVsZS5hZGRUYXJnZXQobmV3IHRhcmdldHMuU2ZuU3RhdGVNYWNoaW5lKFxuICAgICAgc3VibWludXRlU3RhdGVNYWNoaW5lLnN0YXRlTWFjaGluZSwge1xuICAgICAgICBpbnB1dDogZXZlbnRzLlJ1bGVUYXJnZXRJbnB1dC5mcm9tT2JqZWN0KHtcbiAgICAgICAgICBpdGVyYXRvcjoge1xuICAgICAgICAgICAgaW5kZXg6IDAsXG4gICAgICAgICAgICBjb3VudDogNixcbiAgICAgICAgICB9LFxuICAgICAgICB9KSxcbiAgICAgIH0pKTtcbiAgfVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEl0ZXJhdG9yTGFtYmRhUHJvcHMge1xuICAvKipcbiAgICAgKiBUaGUgTGFtYmRhIGZ1bmN0aW9uIHRoYXQgaXMgZ29pbmcgdG8gYmUgZXhlY3V0ZWQgcGVyIHRpbWUgdW5pdCBsZXNzIHRoYW4gb25lIG1pbnV0ZS5cbiAgICAgKi9cbiAgcmVhZG9ubHkgdGFyZ2V0RnVuY3Rpb246IElGdW5jdGlvbjtcbn1cblxuZXhwb3J0IGNsYXNzIEl0ZXJhdG9yTGFtYmRhIGV4dGVuZHMgQ29uc3RydWN0IHtcbiAgLyoqXG4gICAgICogQSBMYW1iZGEgZnVuY3Rpb24gdGhhdCBwbGF5cyB0aGUgcm9sZSBvZiB0aGUgaXRlcmF0b3IuXG4gICAgICovXG4gIHJlYWRvbmx5IGZ1bmN0aW9uOiBJRnVuY3Rpb247XG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIG5hbWU6IHN0cmluZywgcHJvcHM6IEl0ZXJhdG9yTGFtYmRhUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgbmFtZSk7XG4gICAgY29uc3QgaXRlcmF0b3JMYW1iZGFSb2xlID0gbmV3IGlhbS5Sb2xlKHRoaXMsICdJdGVyYXRvckxhbWJkYVJvbGUnLCB7XG4gICAgICBhc3N1bWVkQnk6IG5ldyBpYW0uQ29tcG9zaXRlUHJpbmNpcGFsKFxuICAgICAgICBuZXcgaWFtLlNlcnZpY2VQcmluY2lwYWwoJ2xhbWJkYS5hbWF6b25hd3MuY29tJyksXG4gICAgICApLFxuICAgICAgZGVzY3JpcHRpb246ICdBbiBleGVjdXRpb24gcm9sZSBmb3IgYSBMYW1iZGEgZnVuY3Rpb24gdG8gaW52b2tlIGEgdGFyZ2V0IExhbWJkYSBGdW5jdGlvbiBwZXIgdGltZSB1bml0IGxlc3MgdGhhbiBvbmUgbWludXRlJyxcbiAgICAgIG1hbmFnZWRQb2xpY2llczogW1xuICAgICAgICBpYW0uTWFuYWdlZFBvbGljeS5mcm9tQXdzTWFuYWdlZFBvbGljeU5hbWUoJ3NlcnZpY2Utcm9sZS9BV1NMYW1iZGFCYXNpY0V4ZWN1dGlvblJvbGUnKSxcbiAgICAgICAgaWFtLk1hbmFnZWRQb2xpY3kuZnJvbUF3c01hbmFnZWRQb2xpY3lOYW1lKCdBV1NYUmF5RGFlbW9uV3JpdGVBY2Nlc3MnKSxcbiAgICAgICAgaWFtLk1hbmFnZWRQb2xpY3kuZnJvbUF3c01hbmFnZWRQb2xpY3lOYW1lKCdzZXJ2aWNlLXJvbGUvQVdTTGFtYmRhVlBDQWNjZXNzRXhlY3V0aW9uUm9sZScpLFxuICAgICAgXSxcbiAgICAgIHJvbGVOYW1lOiAnTGFtYmRhLUl0ZXJhdG9yLVJvbGUnLFxuICAgIH0pO1xuICAgIGNkay5Eb2NrZXJWb2x1bWVDb25zaXN0ZW5jeS5DT05TSVNURU5UO1xuXG5cbiAgICBpdGVyYXRvckxhbWJkYVJvbGUuYWRkVG9Qb2xpY3kobmV3IGlhbS5Qb2xpY3lTdGF0ZW1lbnQoe1xuICAgICAgc2lkOiAnVGFyZ2V0TGFtYmRhUGVybWlzc2lvbicsXG4gICAgICBlZmZlY3Q6IGlhbS5FZmZlY3QuQUxMT1csXG4gICAgICBhY3Rpb25zOiBbJ2xhbWJkYTpJbnZva2VGdW5jdGlvbiddLFxuICAgICAgcmVzb3VyY2VzOiBbcHJvcHMudGFyZ2V0RnVuY3Rpb24uZnVuY3Rpb25Bcm5dLFxuICAgIH0pKTtcblxuICAgIHRoaXMuZnVuY3Rpb24gPSBuZXcgTm9kZWpzRnVuY3Rpb24odGhpcywgJ0l0ZXJhdG9yJywge1xuICAgICAgZnVuY3Rpb25OYW1lOiAnbGFtYmRhLXN1Ym1pbnV0ZS1pdGVyYXRvcicsXG4gICAgICBkZXNjcmlwdGlvbjogJ0EgZnVuY3Rpb24gZm9yIGJyZWFraW5nIHRoZSBsaW1pdCBvZiAxIG1pbnV0ZSB3aXRoIHRoZSBDbG91ZFdhdGNoIFJ1bGVzLicsXG4gICAgICBsb2dSZXRlbnRpb246IFJldGVudGlvbkRheXMuVEhSRUVfTU9OVEhTLFxuICAgICAgcnVudGltZTogUnVudGltZS5OT0RFSlNfMThfWCxcbiAgICAgIGVudHJ5OiBmcy5leGlzdHNTeW5jKHBhdGguam9pbihfX2Rpcm5hbWUsICdyZXNvdXJjZXMvaXRlcmF0b3IvaXRlcmF0b3JfYWdlbnQudHMnKSkgPyBwYXRoLmpvaW4oX19kaXJuYW1lLCAncmVzb3VyY2VzL2l0ZXJhdG9yL2l0ZXJhdG9yX2FnZW50LnRzJykgOiBwYXRoLmpvaW4oX19kaXJuYW1lLCAncmVzb3VyY2VzL2l0ZXJhdG9yL2l0ZXJhdG9yX2FnZW50LmpzJyksXG4gICAgICBoYW5kbGVyOiAnbGFtYmRhSGFuZGxlcicsXG4gICAgICBlbnZpcm9ubWVudDoge1xuICAgICAgICBUQVJHRVRfRk5fTkFNRTogcHJvcHMudGFyZ2V0RnVuY3Rpb24uZnVuY3Rpb25OYW1lLFxuICAgICAgfSxcbiAgICAgIG1lbW9yeVNpemU6IDEyOCxcbiAgICAgIHJvbGU6IGl0ZXJhdG9yTGFtYmRhUm9sZSxcbiAgICAgIHRpbWVvdXQ6IGNkay5EdXJhdGlvbi5zZWNvbmRzKDU4KSwgLy8gMSBtaW5cbiAgICAgIHRyYWNpbmc6IFRyYWNpbmcuQUNUSVZFLFxuICAgIH0pO1xuICB9XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU3VibWludXRlU3RhdGVNYWNoaW5lUHJvcHMge1xuICAvKipcbiAgICogdGhlIG5hbWUgb2YgdGhlIHN0YXRlIG1hY2hpbmUuXG4gICAqL1xuICByZWFkb25seSBzdGF0ZU1hY2hpbmVOYW1lOiBzdHJpbmc7XG4gIC8qKlxuICAgKiB0aGUgTGFtYmRhIGZ1bmN0aW9uIHRoYXQgZXhlY3V0ZXMgeW91ciBpbnRlbnRpb24uXG4gICAqL1xuICByZWFkb25seSB0YXJnZXRGdW5jdGlvbjogSUZ1bmN0aW9uO1xuICAvKipcbiAgICogdGhlIGl0ZXJhdG9yIExhbWJkYSBmdW5jdGlvbiBmb3IgdGhlIHRhcmdldCBMYW1iZGEgZnVuY3Rpb24uXG4gICAqL1xuICByZWFkb25seSBpdGVyYXRvckZ1bmN0aW9uOiBJRnVuY3Rpb247XG4gIC8qKlxuICAgKiBTZWNvbmRzIGZvciBhbiBpbnRlcnZhbCwgdGhlIHByb2R1Y3Qgb2YgYGZyZXF1ZW5jeWAgYW5kIGBpbnRlcnZhbFRpbWVgIHNob3VsZCBiZSBhcHByb3hpbWFnZWx5IDEgbWludXRlLlxuICAgKlxuICAgKiBAZGVmYXVsdCAxMFxuICAgKi9cbiAgcmVhZG9ubHkgaW50ZXJ2YWxUaW1lOiBudW1iZXI7XG4gIC8qKlxuICAgKiBIb3cgbWFueSB0aW1lcyB5b3UgaW50ZW50IHRvIGV4ZWN1dGUgaW4gYSBtaW51dGUuXG4gICAqXG4gICAqIEBkZWZhdWx0IDZcbiAgICovXG4gIHJlYWRvbmx5IGZyZXF1ZW5jeTogbnVtYmVyO1xufVxuXG5leHBvcnQgY2xhc3MgU3VibWludXRlU3RhdGVNYWNoaW5lIGV4dGVuZHMgQ29uc3RydWN0IHtcbiAgcmVhZG9ubHkgc3RhdGVNYWNoaW5lOiBzZm4uU3RhdGVNYWNoaW5lO1xuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogU3VibWludXRlU3RhdGVNYWNoaW5lUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuICAgIGNvbnN0IHN0YXRlTWFjaGluZVJvbGUgPSB0aGlzLl9jcmVhdGVXb3JrRmxvd1JvbGUoXG4gICAgICBwcm9wcy50YXJnZXRGdW5jdGlvbi5mdW5jdGlvbkFybiwgcHJvcHMuaXRlcmF0b3JGdW5jdGlvbi5mdW5jdGlvbkFybik7XG4gICAgY29uc3Qgam9iRGVmaW5pdGlvbiA9IHRoaXMuY3JlYXRlSm9iRGVmaW5pdGlvbihwcm9wcy5pdGVyYXRvckZ1bmN0aW9uLCBwcm9wcy5pbnRlcnZhbFRpbWUsIHByb3BzLmZyZXF1ZW5jeSk7XG4gICAgY29uc3Qgc3RhdGVNYWNoaW5lID0gbmV3IHNmbi5TdGF0ZU1hY2hpbmUodGhpcywgJ1N0YXRlTWFjaGluZScsIHtcbiAgICAgIHN0YXRlTWFjaGluZU5hbWU6IHByb3BzLnN0YXRlTWFjaGluZU5hbWUsXG4gICAgICBkZWZpbml0aW9uOiBqb2JEZWZpbml0aW9uLFxuICAgICAgcm9sZTogc3RhdGVNYWNoaW5lUm9sZSxcbiAgICB9KTtcbiAgICB0aGlzLnN0YXRlTWFjaGluZSA9IHN0YXRlTWFjaGluZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgc3RhdGUgbWFjaGluZSBmb3IgYnJlYWtpbmcgdGhlIGxpbWl0IG9mIDEgbWludXRlIHdpdGggdGhlIENsb3VkV2F0Y2ggUnVsZXMuXG4gICAqXG4gICAqIEBwYXJhbSBpdGVyYXRvckZ1bmN0aW9uIFRoZSBpdGVyYXRvciBMYW1iZGEgZnVuY3Rpb24gZm9yIHRoZSB0YXJnZXQgTGFibWRhIGZ1bmNpdG9uLlxuICAgKiBAcGFyYW0gaW50ZXJ2YWxUaW1lIFNlY29uZHMgZm9yIGFuIGludGVydmFsLCB0aGUgcHJvZHVjdCBvZiBgZnJlcXVlbmN5YCBhbmQgYGludGVydmFsVGltZWAgc2hvdWxkIGJlIGFwcHJveGltYWdlbHkgMSBtaW51dGUuXG4gICAqIEBwYXJhbSBmcmVxdWVuY3kgSG93IG1hbnkgdGltZXMgeW91IGludGVudCB0byBleGVjdXRlIGluIGEgbWludXRlLlxuICAgKiBAcmV0dXJucyBUSGUgam9iIGRlZmluaXRpb24gZm9yIHRoZSBzdGF0ZSBtYWNoaW5lLlxuICAgKi9cbiAgcHJpdmF0ZSBjcmVhdGVKb2JEZWZpbml0aW9uID0gKFxuICAgIGl0ZXJhdG9yRnVuY3Rpb246IElGdW5jdGlvbiwgaW50ZXJ2YWxUaW1lOiBudW1iZXIsIGZyZXF1ZW5jeTogbnVtYmVyKTogc2ZuLkNoYWluID0+IHtcbiAgICBjb25zdCBjb25maWd1cmVDb3VudCA9IG5ldyBzZm4uUGFzcyh0aGlzLCAnQ29uZmlndXJlQ291bnQnLCB7XG4gICAgICByZXN1bHQ6IHNmbi5SZXN1bHQuZnJvbU9iamVjdCh7XG4gICAgICAgIGluZGV4OiAwLFxuICAgICAgICBjb3VudDogZnJlcXVlbmN5LFxuICAgICAgfSksXG4gICAgICByZXN1bHRQYXRoOiAnJC5pdGVyYXRvcicsXG4gICAgfSk7XG4gICAgY29uc3QgaXRlcmF0b3IgPSBuZXcgdGFza3MuTGFtYmRhSW52b2tlKHRoaXMsICdJdGVyYXRvcicsIHtcbiAgICAgIGxhbWJkYUZ1bmN0aW9uOiBpdGVyYXRvckZ1bmN0aW9uLFxuICAgICAgcmVzdWx0UGF0aDogJyQuaXRlcmF0b3InLFxuICAgICAgcmVzdWx0U2VsZWN0b3I6IHtcbiAgICAgICAgJ2luZGV4LiQnOiAnJC5QYXlsb2FkLmluZGV4JyxcbiAgICAgICAgJ2NvdW50LiQnOiAnJC5QYXlsb2FkLmNvdW50JyxcbiAgICAgICAgJ2NvbnRpbnVlLiQnOiAnJC5QYXlsb2FkLmNvbnRpbnVlJyxcbiAgICAgIH0sXG4gICAgfSk7XG4gICAgY29uc3Qgd2FpdCA9IG5ldyBzZm4uV2FpdCh0aGlzLCAnV2FpdCBmb3IgdGhlIHRhcmdldCBMYW1iZGEgZnVuY3Rpb24gZmluaXNoZWQnLCB7XG4gICAgICB0aW1lOiBzZm4uV2FpdFRpbWUuZHVyYXRpb24oY2RrLkR1cmF0aW9uLnNlY29uZHMoaW50ZXJ2YWxUaW1lKSksXG4gICAgfSk7XG4gICAgd2FpdC5uZXh0KGl0ZXJhdG9yKTtcbiAgICBjb25zdCBkb25lID0gbmV3IHNmbi5QYXNzKHRoaXMsICdEb25lJyk7XG5cbiAgICBjb25zdCBpc0NvdW50UmVhY2hlZCA9IG5ldyBzZm4uQ2hvaWNlKHRoaXMsICdJc0NvdW50UmVhY2hlZCcpO1xuICAgIGlzQ291bnRSZWFjaGVkLndoZW4oc2ZuLkNvbmRpdGlvbi5ib29sZWFuRXF1YWxzKCckLml0ZXJhdG9yLmNvbnRpbnVlJywgdHJ1ZSksIHdhaXQpO1xuICAgIGlzQ291bnRSZWFjaGVkLm90aGVyd2lzZShkb25lKTtcbiAgICBjb25zdCBqb2JEZWZpbml0aW9uID0gY29uZmlndXJlQ291bnQubmV4dChpdGVyYXRvcikubmV4dChpc0NvdW50UmVhY2hlZCk7XG4gICAgcmV0dXJuIGpvYkRlZmluaXRpb247XG4gIH07XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSByb2xlIGFuZCBjb3JyZXNwb25kaW5nIHBvbGljaWVzIGZvciB0aGUgc3VibWludXRlIHN0YXRlIG1hY2hpbmUuXG4gICAqXG4gICAqIEBwYXJhbSB0YXJnZXRGdW5jdGlvbkFybiB0aGUgQVJOIG9mIHRoZSBMYW1iZGEgZnVuY3Rpb24gdGhhdCBleGVjdXRlcyB5b3VyIGludGVudGlvbi5cbiAgICogQHBhcmFtIGl0ZXJhdG9yRnVuY3Rpb25Bcm4gdGhlIEFSTiBvZiB0aGUgaXRlcmF0b3IgTGFtYmRhIGZ1bmN0aW9uIGZvciB0aGUgdGFyZ2V0IExhbWJkYSBmdW5jdGlvbi5cbiAgICogQHJldHVybnMgdGhlIHJvbGUgYXMgdGhlIGRvY3VtZW50YXRpb24gaW5kaWNhdGVzLlxuICAgKi9cbiAgcHJpdmF0ZSBfY3JlYXRlV29ya0Zsb3dSb2xlID0gKHRhcmdldEZ1bmN0aW9uQXJuOiBzdHJpbmcsIGl0ZXJhdG9yRnVuY3Rpb25Bcm46IHN0cmluZykgPT4ge1xuICAgIGNvbnN0IHdvcmtGbG93RXhlY3V0aW9uUm9sZSA9IG5ldyBpYW0uUm9sZSh0aGlzLCAnU3RlcEZ1bmN0aW9uRXhlY3V0aW9uUm9sZScsIHtcbiAgICAgIGFzc3VtZWRCeTogbmV3IGlhbS5TZXJ2aWNlUHJpbmNpcGFsKCdzdGF0ZXMuYW1hem9uYXdzLmNvbScpLFxuICAgICAgZGVzY3JpcHRpb246ICdFeGVjdXRlIGEgd29ya2Zsb3cgcmVsYXRlZCB0byBleGVjdXRpbmcgYSBMYW1iZGEgZnVuY3Rpb24gcGVyIHRpbWUgdW5pdCBsZXNzIHRoYW4gMSBtaW51dGUuJyxcbiAgICB9KTtcbiAgICB3b3JrRmxvd0V4ZWN1dGlvblJvbGUuYWRkVG9Qb2xpY3kobmV3IGlhbS5Qb2xpY3lTdGF0ZW1lbnQoe1xuICAgICAgc2lkOiAnTGFtYmRhSW52b2tlUGVybWlzc2lvbnMnLFxuICAgICAgZWZmZWN0OiBpYW0uRWZmZWN0LkFMTE9XLFxuICAgICAgYWN0aW9uczogWydsYW1iZGE6SW52b2tlRnVuY3Rpb24nXSxcbiAgICAgIHJlc291cmNlczogW1xuICAgICAgICB0YXJnZXRGdW5jdGlvbkFybixcbiAgICAgICAgaXRlcmF0b3JGdW5jdGlvbkFybixcbiAgICAgIF0sXG4gICAgfSkpO1xuICAgIHJldHVybiB3b3JrRmxvd0V4ZWN1dGlvblJvbGU7XG4gIH07XG59Il19
@@ -0,0 +1,16 @@
1
+ {
2
+ "root": true,
3
+
4
+ "extends": "@ljharb",
5
+
6
+ "rules": {
7
+ "eqeqeq": ["error", "allow-null"],
8
+ "id-length": "off",
9
+ "new-cap": ["error", {
10
+ "capIsNewExceptions": [
11
+ "RequireObjectCoercible",
12
+ "ToObject",
13
+ ],
14
+ }],
15
+ },
16
+ }
@@ -0,0 +1,12 @@
1
+ # These are supported funding model platforms
2
+
3
+ github: [ljharb]
4
+ patreon: # Replace with a single Patreon username
5
+ open_collective: # Replace with a single Open Collective username
6
+ ko_fi: # Replace with a single Ko-fi username
7
+ tidelift: npm/es-object
8
+ community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry
9
+ liberapay: # Replace with a single Liberapay username
10
+ issuehunt: # Replace with a single IssueHunt username
11
+ otechie: # Replace with a single Otechie username
12
+ custom: # Replace with a single custom sponsorship URL
@@ -0,0 +1,16 @@
1
+ # Changelog
2
+
3
+ All notable changes to this project will be documented in this file.
4
+
5
+ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
6
+ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
+
8
+ ## v1.0.0 - 2024-03-16
9
+
10
+ ### Commits
11
+
12
+ - Initial implementation, tests, readme, types [`f1499db`](https://github.com/ljharb/es-object-atoms/commit/f1499db7d3e1741e64979c61d645ab3137705e82)
13
+ - Initial commit [`99eedc7`](https://github.com/ljharb/es-object-atoms/commit/99eedc7b5fde38a50a28d3c8b724706e3e4c5f6a)
14
+ - [meta] rename repo [`fc851fa`](https://github.com/ljharb/es-object-atoms/commit/fc851fa70616d2d182aaf0bd02c2ed7084dea8fa)
15
+ - npm init [`b909377`](https://github.com/ljharb/es-object-atoms/commit/b909377c50049bd0ec575562d20b0f9ebae8947f)
16
+ - Only apps should have lockfiles [`7249edd`](https://github.com/ljharb/es-object-atoms/commit/7249edd2178c1b9ddfc66ffcc6d07fdf0d28efc1)
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2024 Jordan Harband
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1,56 @@
1
+ # es-object-atoms <sup>[![Version Badge][npm-version-svg]][package-url]</sup>
2
+
3
+ [![github actions][actions-image]][actions-url]
4
+ [![coverage][codecov-image]][codecov-url]
5
+ [![License][license-image]][license-url]
6
+ [![Downloads][downloads-image]][downloads-url]
7
+
8
+ [![npm badge][npm-badge-png]][package-url]
9
+
10
+ ES Object-related atoms: Object, ToObject, RequireObjectCoercible.
11
+
12
+ ## Example
13
+
14
+ ```js
15
+ const assert = require('assert');
16
+
17
+ const $Object = require('es-object-atoms');
18
+ const ToObject = require('es-object-atoms/ToObject');
19
+ const RequireObjectCoercible = require('es-object-atoms/RequireObjectCoercible');
20
+
21
+ assert.equal($Object, Object);
22
+ assert.throws(() => ToObject(null), TypeError);
23
+ assert.throws(() => ToObject(undefined), TypeError);
24
+ assert.throws(() => RequireObjectCoercible(null), TypeError);
25
+ assert.throws(() => RequireObjectCoercible(undefined), TypeError);
26
+
27
+ assert.deepEqual(RequireObjectCoercible(true), true);
28
+ assert.deepEqual(ToObject(true), Object(true));
29
+
30
+ const obj = {};
31
+ assert.equal(RequireObjectCoercible(obj), obj);
32
+ assert.equal(ToObject(obj), obj);
33
+ ```
34
+
35
+ ## Tests
36
+ Simply clone the repo, `npm install`, and run `npm test`
37
+
38
+ ## Security
39
+
40
+ Please email [@ljharb](https://github.com/ljharb) or see https://tidelift.com/security if you have a potential security vulnerability to report.
41
+
42
+ [package-url]: https://npmjs.org/package/es-object-atoms
43
+ [npm-version-svg]: https://versionbadg.es/ljharb/es-object-atoms.svg
44
+ [deps-svg]: https://david-dm.org/ljharb/es-object-atoms.svg
45
+ [deps-url]: https://david-dm.org/ljharb/es-object-atoms
46
+ [dev-deps-svg]: https://david-dm.org/ljharb/es-object-atoms/dev-status.svg
47
+ [dev-deps-url]: https://david-dm.org/ljharb/es-object-atoms#info=devDependencies
48
+ [npm-badge-png]: https://nodei.co/npm/es-object-atoms.png?downloads=true&stars=true
49
+ [license-image]: https://img.shields.io/npm/l/es-object-atoms.svg
50
+ [license-url]: LICENSE
51
+ [downloads-image]: https://img.shields.io/npm/dm/es-object.svg
52
+ [downloads-url]: https://npm-stat.com/charts.html?package=es-object-atoms
53
+ [codecov-image]: https://codecov.io/gh/ljharb/es-object-atoms/branch/main/graphs/badge.svg
54
+ [codecov-url]: https://app.codecov.io/gh/ljharb/es-object-atoms/
55
+ [actions-image]: https://img.shields.io/endpoint?url=https://github-actions-badge-u3jn4tfpocch.runkit.sh/ljharb/es-object-atoms
56
+ [actions-url]: https://github.com/ljharb/es-object-atoms/actions
@@ -0,0 +1,3 @@
1
+ declare function RequireObjectCoercible<T extends {} = {}>(value: T, optMessage?: string): T;
2
+
3
+ export = RequireObjectCoercible;
@@ -0,0 +1,11 @@
1
+ 'use strict';
2
+
3
+ var $TypeError = require('es-errors/type');
4
+
5
+ /** @type {import('./RequireObjectCoercible')} */
6
+ module.exports = function RequireObjectCoercible(value) {
7
+ if (value == null) {
8
+ throw new $TypeError((arguments.length > 0 && arguments[1]) || ('Cannot call method on ' + value));
9
+ }
10
+ return value;
11
+ };
@@ -0,0 +1,3 @@
1
+ declare function ToObject<T = {}>(value: T extends object ? T : {}): T extends object ? T : object;
2
+
3
+ export = ToObject;
@@ -0,0 +1,10 @@
1
+ 'use strict';
2
+
3
+ var $Object = require('./');
4
+ var RequireObjectCoercible = require('./RequireObjectCoercible');
5
+
6
+ /** @type {import('./ToObject')} */
7
+ module.exports = function ToObject(value) {
8
+ RequireObjectCoercible(value);
9
+ return $Object(value);
10
+ };
@@ -0,0 +1,3 @@
1
+ declare const Object: ObjectConstructor;
2
+
3
+ export = Object;
@@ -0,0 +1,4 @@
1
+ 'use strict';
2
+
3
+ /** @type {import('.')} */
4
+ module.exports = Object;
@@ -0,0 +1,79 @@
1
+ {
2
+ "name": "es-object-atoms",
3
+ "version": "1.0.0",
4
+ "description": "ES Object-related atoms: Object, ToObject, RequireObjectCoercible",
5
+ "main": "index.js",
6
+ "exports": {
7
+ ".": "./index.js",
8
+ "./RequireObjectCoercible": "./RequireObjectCoercible.js",
9
+ "./ToObject": "./ToObject.js",
10
+ "./package.json": "./package.json"
11
+ },
12
+ "sideEffects": false,
13
+ "scripts": {
14
+ "prepack": "npmignore --auto --commentLines=autogenerated",
15
+ "prepublishOnly": "safe-publish-latest",
16
+ "prepublish": "not-in-publish || npm run prepublishOnly",
17
+ "pretest": "npm run lint",
18
+ "test": "npm run tests-only",
19
+ "tests-only": "nyc tape 'test/**/*.js'",
20
+ "posttest": "aud --production",
21
+ "prelint": "evalmd README.md",
22
+ "lint": "eslint --ext=js,mjs .",
23
+ "postlint": "tsc -p . && eclint check $(git ls-files | xargs find 2> /dev/null | grep -vE 'node_modules|\\.git' | grep -v dist/)",
24
+ "version": "auto-changelog && git add CHANGELOG.md",
25
+ "postversion": "auto-changelog && git add CHANGELOG.md && git commit --no-edit --amend && git tag -f \"v$(node -e \"console.log(require('./package.json').version)\")\""
26
+ },
27
+ "repository": {
28
+ "type": "git",
29
+ "url": "git+https://github.com/ljharb/es-object-atoms.git"
30
+ },
31
+ "keywords": [
32
+ "javascript",
33
+ "ecmascript",
34
+ "object",
35
+ "toobject",
36
+ "coercible"
37
+ ],
38
+ "author": "Jordan Harband <ljharb@gmail.com>",
39
+ "license": "MIT",
40
+ "bugs": {
41
+ "url": "https://github.com/ljharb/es-object-atoms/issues"
42
+ },
43
+ "homepage": "https://github.com/ljharb/es-object-atoms#readme",
44
+ "dependencies": {
45
+ "es-errors": "^1.3.0"
46
+ },
47
+ "devDependencies": {
48
+ "@ljharb/eslint-config": "^21.1.0",
49
+ "@ljharb/tsconfig": "^0.2.0",
50
+ "@types/tape": "^5.6.4",
51
+ "aud": "^2.0.4",
52
+ "auto-changelog": "^2.4.0",
53
+ "eclint": "^2.8.1",
54
+ "eslint": "^8.8.0",
55
+ "evalmd": "^0.0.19",
56
+ "in-publish": "^2.0.1",
57
+ "npmignore": "^0.3.1",
58
+ "nyc": "^10.3.2",
59
+ "safe-publish-latest": "^2.0.0",
60
+ "tape": "^5.7.5",
61
+ "typescript": "next"
62
+ },
63
+ "auto-changelog": {
64
+ "output": "CHANGELOG.md",
65
+ "template": "keepachangelog",
66
+ "unreleased": false,
67
+ "commitLimit": false,
68
+ "backfillLimit": false,
69
+ "hideCredit": true
70
+ },
71
+ "publishConfig": {
72
+ "ignore": [
73
+ ".github/workflows"
74
+ ]
75
+ },
76
+ "engines": {
77
+ "node": ">= 0.4"
78
+ }
79
+ }
@@ -0,0 +1,28 @@
1
+ 'use strict';
2
+
3
+ var test = require('tape');
4
+
5
+ var $Object = require('../');
6
+ var ToObject = require('..//ToObject');
7
+ var RequireObjectCoercible = require('..//RequireObjectCoercible');
8
+
9
+ test('errors', function (t) {
10
+ t.equal($Object, Object);
11
+ // @ts-expect-error
12
+ t['throws'](function () { ToObject(null); }, TypeError);
13
+ // @ts-expect-error
14
+ t['throws'](function () { ToObject(undefined); }, TypeError);
15
+ // @ts-expect-error
16
+ t['throws'](function () { RequireObjectCoercible(null); }, TypeError);
17
+ // @ts-expect-error
18
+ t['throws'](function () { RequireObjectCoercible(undefined); }, TypeError);
19
+
20
+ t.deepEqual(RequireObjectCoercible(true), true);
21
+ t.deepEqual(ToObject(true), Object(true));
22
+
23
+ var obj = {};
24
+ t.equal(RequireObjectCoercible(obj), obj);
25
+ t.equal(ToObject(obj), obj);
26
+
27
+ t.end();
28
+ });
@@ -0,0 +1,6 @@
1
+ {
2
+ "extends": "@ljharb/tsconfig",
3
+ "compilerOptions": {
4
+ "target": "es5",
5
+ },
6
+ }
@@ -5,6 +5,15 @@ All notable changes to this project will be documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [v1.2.6](https://github.com/ljharb/get-intrinsic/compare/v1.2.5...v1.2.6) - 2024-12-11
9
+
10
+ ### Commits
11
+
12
+ - [Refactor] use `math-intrinsics` [`841be86`](https://github.com/ljharb/get-intrinsic/commit/841be8641a9254c4c75483b30c8871b5d5065926)
13
+ - [Refactor] use `es-object-atoms` [`42057df`](https://github.com/ljharb/get-intrinsic/commit/42057dfa16f66f64787e66482af381cc6f31d2c1)
14
+ - [Deps] update `call-bind-apply-helpers` [`45afa24`](https://github.com/ljharb/get-intrinsic/commit/45afa24a9ee4d6d3c172db1f555b16cb27843ef4)
15
+ - [Dev Deps] update `call-bound` [`9cba9c6`](https://github.com/ljharb/get-intrinsic/commit/9cba9c6e70212bc163b7a5529cb25df46071646f)
16
+
8
17
  ## [v1.2.5](https://github.com/ljharb/get-intrinsic/compare/v1.2.4...v1.2.5) - 2024-12-06
9
18
 
10
19
  ### Commits
@@ -2,6 +2,8 @@
2
2
 
3
3
  var undefined;
4
4
 
5
+ var $Object = require('es-object-atoms');
6
+
5
7
  var $Error = require('es-errors');
6
8
  var $EvalError = require('es-errors/eval');
7
9
  var $RangeError = require('es-errors/range');
@@ -10,6 +12,12 @@ var $SyntaxError = require('es-errors/syntax');
10
12
  var $TypeError = require('es-errors/type');
11
13
  var $URIError = require('es-errors/uri');
12
14
 
15
+ var abs = require('math-intrinsics/abs');
16
+ var floor = require('math-intrinsics/floor');
17
+ var max = require('math-intrinsics/max');
18
+ var min = require('math-intrinsics/min');
19
+ var pow = require('math-intrinsics/pow');
20
+
13
21
  var $Function = Function;
14
22
 
15
23
  // eslint-disable-next-line consistent-return
@@ -46,7 +54,7 @@ var hasSymbols = require('has-symbols')();
46
54
  var getDunderProto = require('dunder-proto/get');
47
55
 
48
56
  var getProto = (typeof Reflect === 'function' && Reflect.getPrototypeOf)
49
- || Object.getPrototypeOf
57
+ || $Object.getPrototypeOf
50
58
  || getDunderProto;
51
59
 
52
60
  var $apply = require('call-bind-apply-helpers/functionApply');
@@ -97,7 +105,7 @@ var INTRINSICS = {
97
105
  '%MapIteratorPrototype%': typeof Map === 'undefined' || !hasSymbols || !getProto ? undefined : getProto(new Map()[Symbol.iterator]()),
98
106
  '%Math%': Math,
99
107
  '%Number%': Number,
100
- '%Object%': Object,
108
+ '%Object%': $Object,
101
109
  '%Object.getOwnPropertyDescriptor%': $gOPD,
102
110
  '%parseFloat%': parseFloat,
103
111
  '%parseInt%': parseInt,
@@ -128,7 +136,12 @@ var INTRINSICS = {
128
136
 
129
137
  '%Function.prototype.call%': $call,
130
138
  '%Function.prototype.apply%': $apply,
131
- '%Object.defineProperty%': $defineProperty
139
+ '%Object.defineProperty%': $defineProperty,
140
+ '%Math.abs%': abs,
141
+ '%Math.floor%': floor,
142
+ '%Math.max%': max,
143
+ '%Math.min%': min,
144
+ '%Math.pow%': pow
132
145
  };
133
146
 
134
147
  if (getProto) {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "get-intrinsic",
3
- "version": "1.2.5",
3
+ "version": "1.2.6",
4
4
  "description": "Get and robustly cache all JS language-level intrinsics at first require time",
5
5
  "main": "index.js",
6
6
  "exports": {
@@ -44,19 +44,21 @@
44
44
  },
45
45
  "homepage": "https://github.com/ljharb/get-intrinsic#readme",
46
46
  "dependencies": {
47
- "call-bind-apply-helpers": "^1.0.0",
47
+ "call-bind-apply-helpers": "^1.0.1",
48
48
  "dunder-proto": "^1.0.0",
49
49
  "es-define-property": "^1.0.1",
50
50
  "es-errors": "^1.3.0",
51
+ "es-object-atoms": "^1.0.0",
51
52
  "function-bind": "^1.1.2",
52
53
  "gopd": "^1.2.0",
53
54
  "has-symbols": "^1.1.0",
54
- "hasown": "^2.0.2"
55
+ "hasown": "^2.0.2",
56
+ "math-intrinsics": "^1.0.0"
55
57
  },
56
58
  "devDependencies": {
57
59
  "@ljharb/eslint-config": "^21.1.1",
58
60
  "auto-changelog": "^2.5.0",
59
- "call-bound": "^1.0.1",
61
+ "call-bound": "^1.0.2",
60
62
  "encoding": "^0.1.13",
61
63
  "es-abstract": "^1.23.5",
62
64
  "es-value-fixtures": "^1.5.0",
@@ -0,0 +1,16 @@
1
+ {
2
+ "root": true,
3
+
4
+ "extends": "@ljharb",
5
+
6
+ "rules": {
7
+ "eqeqeq": ["error", "allow-null"],
8
+ "id-length": "off",
9
+ "new-cap": ["error", {
10
+ "capIsNewExceptions": [
11
+ "RequireObjectCoercible",
12
+ "ToObject",
13
+ ],
14
+ }],
15
+ },
16
+ }
@@ -0,0 +1,12 @@
1
+ # These are supported funding model platforms
2
+
3
+ github: [ljharb]
4
+ patreon: # Replace with a single Patreon username
5
+ open_collective: # Replace with a single Open Collective username
6
+ ko_fi: # Replace with a single Ko-fi username
7
+ tidelift: npm/math-intrinsics
8
+ community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry
9
+ liberapay: # Replace with a single Liberapay username
10
+ issuehunt: # Replace with a single IssueHunt username
11
+ otechie: # Replace with a single Otechie username
12
+ custom: # Replace with a single custom sponsorship URL
@@ -0,0 +1,16 @@
1
+ # Changelog
2
+
3
+ All notable changes to this project will be documented in this file.
4
+
5
+ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
6
+ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
+
8
+ ## v1.0.0 - 2024-12-11
9
+
10
+ ### Commits
11
+
12
+ - Initial implementation, tests, readme, types [`b898caa`](https://github.com/es-shims/math-intrinsics/commit/b898caae94e9994a94a42b8740f7bbcfd0a868fe)
13
+ - Initial commit [`02745b0`](https://github.com/es-shims/math-intrinsics/commit/02745b03a62255af8a332771987b55d127538d9c)
14
+ - [New] add `constants/maxArrayLength`, `mod` [`b978178`](https://github.com/es-shims/math-intrinsics/commit/b978178a57685bd23ed1c7efe2137f3784f5fcc5)
15
+ - npm init [`a39fc57`](https://github.com/es-shims/math-intrinsics/commit/a39fc57e5639a645d0bd52a0dc56202480223be2)
16
+ - Only apps should have lockfiles [`9451580`](https://github.com/es-shims/math-intrinsics/commit/94515800fb34db4f3cc7e99290042d45609ac7bd)
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2024 ECMAScript Shims
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1,49 @@
1
+ # math-intrinsics <sup>[![Version Badge][npm-version-svg]][package-url]</sup>
2
+
3
+ [![github actions][actions-image]][actions-url]
4
+ [![coverage][codecov-image]][codecov-url]
5
+ [![License][license-image]][license-url]
6
+ [![Downloads][downloads-image]][downloads-url]
7
+
8
+ [![npm badge][npm-badge-png]][package-url]
9
+
10
+ ES Math-related intrinsics and helpers, robustly cached.
11
+
12
+ - `abs`
13
+ - `floor`
14
+ - `isFinite`
15
+ - `isInteger`
16
+ - `isNaN`
17
+ - `isNegativeZero`
18
+ - `max`
19
+ - `min`
20
+ - `mod`
21
+ - `pow`
22
+ - `sign`
23
+ - `constants/maxArrayLength`
24
+ - `constants/maxSafeInteger`
25
+ - `constants/maxValue`
26
+
27
+
28
+ ## Tests
29
+ Simply clone the repo, `npm install`, and run `npm test`
30
+
31
+ ## Security
32
+
33
+ Please email [@ljharb](https://github.com/ljharb) or see https://tidelift.com/security if you have a potential security vulnerability to report.
34
+
35
+ [package-url]: https://npmjs.org/package/math-intrinsics
36
+ [npm-version-svg]: https://versionbadg.es/es-shims/math-intrinsics.svg
37
+ [deps-svg]: https://david-dm.org/es-shims/math-intrinsics.svg
38
+ [deps-url]: https://david-dm.org/es-shims/math-intrinsics
39
+ [dev-deps-svg]: https://david-dm.org/es-shims/math-intrinsics/dev-status.svg
40
+ [dev-deps-url]: https://david-dm.org/es-shims/math-intrinsics#info=devDependencies
41
+ [npm-badge-png]: https://nodei.co/npm/math-intrinsics.png?downloads=true&stars=true
42
+ [license-image]: https://img.shields.io/npm/l/math-intrinsics.svg
43
+ [license-url]: LICENSE
44
+ [downloads-image]: https://img.shields.io/npm/dm/es-object.svg
45
+ [downloads-url]: https://npm-stat.com/charts.html?package=math-intrinsics
46
+ [codecov-image]: https://codecov.io/gh/es-shims/math-intrinsics/branch/main/graphs/badge.svg
47
+ [codecov-url]: https://app.codecov.io/gh/es-shims/math-intrinsics/
48
+ [actions-image]: https://img.shields.io/endpoint?url=https://github-actions-badge-u3jn4tfpocch.runkit.sh/es-shims/math-intrinsics
49
+ [actions-url]: https://github.com/es-shims/math-intrinsics/actions
@@ -0,0 +1 @@
1
+ export = Math.abs;
@@ -0,0 +1,4 @@
1
+ 'use strict';
2
+
3
+ /** @type {import('./abs')} */
4
+ module.exports = Math.abs;
@@ -0,0 +1,3 @@
1
+ declare const MAX_ARRAY_LENGTH: 4294967295;
2
+
3
+ export = MAX_ARRAY_LENGTH;
@@ -0,0 +1,4 @@
1
+ 'use strict';
2
+
3
+ /** @type {import('./maxArrayLength')} */
4
+ module.exports = 4294967295; // Math.pow(2, 32) - 1;
@@ -0,0 +1,3 @@
1
+ declare const MAX_SAFE_INTEGER: 9007199254740991;
2
+
3
+ export = MAX_SAFE_INTEGER;
@@ -0,0 +1,5 @@
1
+ 'use strict';
2
+
3
+ /** @type {import('./maxSafeInteger')} */
4
+ // eslint-disable-next-line no-extra-parens
5
+ module.exports = /** @type {import('./maxSafeInteger')} */ (Number.MAX_SAFE_INTEGER) || 9007199254740991; // Math.pow(2, 53) - 1;
@@ -0,0 +1,3 @@
1
+ declare const MAX_VALUE: 1.7976931348623157e+308;
2
+
3
+ export = MAX_VALUE;
@@ -0,0 +1,5 @@
1
+ 'use strict';
2
+
3
+ /** @type {import('./maxValue')} */
4
+ // eslint-disable-next-line no-extra-parens
5
+ module.exports = /** @type {import('./maxValue')} */ (Number.MAX_VALUE) || 1.7976931348623157e+308;
@@ -0,0 +1 @@
1
+ export = Math.floor;
@@ -0,0 +1,4 @@
1
+ 'use strict';
2
+
3
+ /** @type {import('./abs')} */
4
+ module.exports = Math.floor;
@@ -0,0 +1,3 @@
1
+ declare function isFinite(x: unknown): x is number | bigint;
2
+
3
+ export = isFinite;
@@ -0,0 +1,12 @@
1
+ 'use strict';
2
+
3
+ var $isNaN = require('./isNaN');
4
+
5
+ /** @type {import('./isFinite')} */
6
+ module.exports = function isFinite(x) {
7
+ return (typeof x === 'number' || typeof x === 'bigint')
8
+ && !$isNaN(x)
9
+ && x !== Infinity
10
+ && x !== -Infinity;
11
+ };
12
+
@@ -0,0 +1,3 @@
1
+ declare function isInteger(argument: unknown): argument is number;
2
+
3
+ export = isInteger;
@@ -0,0 +1,16 @@
1
+ 'use strict';
2
+
3
+ var $abs = require('./abs');
4
+ var $floor = require('./floor');
5
+
6
+ var $isNaN = require('./isNaN');
7
+ var $isFinite = require('./isFinite');
8
+
9
+ /** @type {import('./isInteger')} */
10
+ module.exports = function isInteger(argument) {
11
+ if (typeof argument !== 'number' || $isNaN(argument) || !$isFinite(argument)) {
12
+ return false;
13
+ }
14
+ var absValue = $abs(argument);
15
+ return $floor(absValue) === absValue;
16
+ };
@@ -0,0 +1 @@
1
+ export = Number.isNaN;
@@ -0,0 +1,6 @@
1
+ 'use strict';
2
+
3
+ /** @type {import('./isNaN')} */
4
+ module.exports = Number.isNaN || function isNaN(a) {
5
+ return a !== a;
6
+ };
@@ -0,0 +1,3 @@
1
+ declare function isNegativeZero(x: unknown): boolean;
2
+
3
+ export = isNegativeZero;
@@ -0,0 +1,6 @@
1
+ 'use strict';
2
+
3
+ /** @type {import('./isNegativeZero')} */
4
+ module.exports = function isNegativeZero(x) {
5
+ return x === 0 && 1 / x === 1 / -0;
6
+ };
@@ -0,0 +1 @@
1
+ export = Math.max;
@@ -0,0 +1,4 @@
1
+ 'use strict';
2
+
3
+ /** @type {import('./max')} */
4
+ module.exports = Math.max;
@@ -0,0 +1 @@
1
+ export = Math.min;
@@ -0,0 +1,4 @@
1
+ 'use strict';
2
+
3
+ /** @type {import('./min')} */
4
+ module.exports = Math.min;
@@ -0,0 +1,3 @@
1
+ declare function mod(number: number, modulo: number): number;
2
+
3
+ export = mod;
@@ -0,0 +1,9 @@
1
+ 'use strict';
2
+
3
+ var $floor = require('./floor');
4
+
5
+ /** @type {import('./mod')} */
6
+ module.exports = function mod(number, modulo) {
7
+ var remain = number % modulo;
8
+ return $floor(remain >= 0 ? remain : remain + modulo);
9
+ };
@@ -0,0 +1,85 @@
1
+ {
2
+ "name": "math-intrinsics",
3
+ "version": "1.0.0",
4
+ "description": "ES Math-related intrinsics and helpers, robustly cached.",
5
+ "main": false,
6
+ "exports": {
7
+ "./abs": "./abs.js",
8
+ "./floor": "./floor.js",
9
+ "./isFinite": "./isFinite.js",
10
+ "./isInteger": "./isInteger.js",
11
+ "./isNaN": "./isNaN.js",
12
+ "./isNegativeZero": "./isNegativeZero.js",
13
+ "./max": "./max.js",
14
+ "./min": "./min.js",
15
+ "./mod": "./mod.js",
16
+ "./pow": "./pow.js",
17
+ "./sign": "./sign.js",
18
+ "./constants/maxArrayLength": "./constants/maxArrayLength.js",
19
+ "./constants/maxSafeInteger": "./constants/maxSafeInteger.js",
20
+ "./constants/maxValue": "./constants/maxValue.js",
21
+ "./package.json": "./package.json"
22
+ },
23
+ "sideEffects": false,
24
+ "scripts": {
25
+ "prepack": "npmignore --auto --commentLines=autogenerated",
26
+ "prepublishOnly": "safe-publish-latest",
27
+ "prepublish": "not-in-publish || npm run prepublishOnly",
28
+ "pretest": "npm run lint",
29
+ "test": "npm run tests-only",
30
+ "tests-only": "nyc tape 'test/**/*.js'",
31
+ "posttest": "npx npm@'>= 10.2' audit --production",
32
+ "prelint": "evalmd README.md",
33
+ "lint": "eslint --ext=js,mjs .",
34
+ "postlint": "tsc -p . && eclint check $(git ls-files | xargs find 2> /dev/null | grep -vE 'node_modules|\\.git' | grep -v dist/)",
35
+ "version": "auto-changelog && git add CHANGELOG.md",
36
+ "postversion": "auto-changelog && git add CHANGELOG.md && git commit --no-edit --amend && git tag -f \"v$(node -e \"console.log(require('./package.json').version)\")\""
37
+ },
38
+ "repository": {
39
+ "type": "git",
40
+ "url": "git+https://github.com/es-shims/math-intrinsics.git"
41
+ },
42
+ "author": "Jordan Harband <ljharb@gmail.com>",
43
+ "license": "MIT",
44
+ "bugs": {
45
+ "url": "https://github.com/es-shims/math-intrinsics/issues"
46
+ },
47
+ "homepage": "https://github.com/es-shims/math-intrinsics#readme",
48
+ "devDependencies": {
49
+ "@arethetypeswrong/cli": "^0.17.1",
50
+ "@ljharb/eslint-config": "^21.1.1",
51
+ "@ljharb/tsconfig": "^0.2.2",
52
+ "@types/for-each": "^0.3.3",
53
+ "@types/object-inspect": "^1.13.0",
54
+ "@types/tape": "^5.6.5",
55
+ "auto-changelog": "^2.5.0",
56
+ "eclint": "^2.8.1",
57
+ "es-value-fixtures": "^1.5.0",
58
+ "eslint": "^8.8.0",
59
+ "evalmd": "^0.0.19",
60
+ "for-each": "^0.3.3",
61
+ "in-publish": "^2.0.1",
62
+ "npmignore": "^0.3.1",
63
+ "nyc": "^10.3.2",
64
+ "object-inspect": "^1.13.3",
65
+ "safe-publish-latest": "^2.0.0",
66
+ "tape": "^5.9.0",
67
+ "typescript": "next"
68
+ },
69
+ "auto-changelog": {
70
+ "output": "CHANGELOG.md",
71
+ "template": "keepachangelog",
72
+ "unreleased": false,
73
+ "commitLimit": false,
74
+ "backfillLimit": false,
75
+ "hideCredit": true
76
+ },
77
+ "publishConfig": {
78
+ "ignore": [
79
+ ".github/workflows"
80
+ ]
81
+ },
82
+ "engines": {
83
+ "node": ">= 0.4"
84
+ }
85
+ }
@@ -0,0 +1 @@
1
+ export = Math.pow;
@@ -0,0 +1,4 @@
1
+ 'use strict';
2
+
3
+ /** @type {import('./pow')} */
4
+ module.exports = Math.pow;
@@ -0,0 +1,3 @@
1
+ declare function sign(x: number): number;
2
+
3
+ export = sign;
@@ -0,0 +1,11 @@
1
+ 'use strict';
2
+
3
+ var $isNaN = require('./isNaN');
4
+
5
+ /** @type {import('./sign')} */
6
+ module.exports = function sign(number) {
7
+ if ($isNaN(number) || number === 0) {
8
+ return number;
9
+ }
10
+ return number < 0 ? -1 : +1;
11
+ };
@@ -0,0 +1,183 @@
1
+ 'use strict';
2
+
3
+ var test = require('tape');
4
+ var v = require('es-value-fixtures');
5
+ var forEach = require('for-each');
6
+ var inspect = require('object-inspect');
7
+
8
+ var abs = require('../abs');
9
+ var floor = require('../floor');
10
+ var isFinite = require('../isFinite');
11
+ var isInteger = require('../isInteger');
12
+ var isNaN = require('../isNaN');
13
+ var isNegativeZero = require('../isNegativeZero');
14
+ var max = require('../max');
15
+ var min = require('../min');
16
+ var mod = require('../mod');
17
+ var pow = require('../pow');
18
+ var sign = require('../sign');
19
+
20
+ var maxArrayLength = require('../constants/maxArrayLength');
21
+ var maxSafeInteger = require('../constants/maxSafeInteger');
22
+ var maxValue = require('../constants/maxValue');
23
+
24
+ test('abs', function (t) {
25
+ t.equal(abs(-1), 1, 'abs(-1) === 1');
26
+ t.equal(abs(+1), 1, 'abs(+1) === 1');
27
+ t.equal(abs(+0), +0, 'abs(+0) === +0');
28
+ t.equal(abs(-0), +0, 'abs(-0) === +0');
29
+
30
+ t.end();
31
+ });
32
+
33
+ test('floor', function (t) {
34
+ t.equal(floor(-1.1), -2, 'floor(-1.1) === -2');
35
+ t.equal(floor(+1.1), 1, 'floor(+1.1) === 1');
36
+ t.equal(floor(+0), +0, 'floor(+0) === +0');
37
+ t.equal(floor(-0), -0, 'floor(-0) === -0');
38
+ t.equal(floor(-Infinity), -Infinity, 'floor(-Infinity) === -Infinity');
39
+ t.equal(floor(Number(Infinity)), Number(Infinity), 'floor(+Infinity) === +Infinity');
40
+ t.equal(floor(NaN), NaN, 'floor(NaN) === NaN');
41
+ t.equal(floor(0), +0, 'floor(0) === +0');
42
+ t.equal(floor(-0), -0, 'floor(-0) === -0');
43
+ t.equal(floor(1), 1, 'floor(1) === 1');
44
+ t.equal(floor(-1), -1, 'floor(-1) === -1');
45
+ t.equal(floor(1.1), 1, 'floor(1.1) === 1');
46
+ t.equal(floor(-1.1), -2, 'floor(-1.1) === -2');
47
+ t.equal(floor(maxValue), maxValue, 'floor(maxValue) === maxValue');
48
+ t.equal(floor(maxSafeInteger), maxSafeInteger, 'floor(maxSafeInteger) === maxSafeInteger');
49
+
50
+ t.end();
51
+ });
52
+
53
+ test('isFinite', function (t) {
54
+ t.equal(isFinite(0), true, 'isFinite(+0) === true');
55
+ t.equal(isFinite(-0), true, 'isFinite(-0) === true');
56
+ t.equal(isFinite(1), true, 'isFinite(1) === true');
57
+ t.equal(isFinite(Infinity), false, 'isFinite(Infinity) === false');
58
+ t.equal(isFinite(-Infinity), false, 'isFinite(-Infinity) === false');
59
+ t.equal(isFinite(NaN), false, 'isFinite(NaN) === false');
60
+
61
+ forEach(v.nonNumbers, function (nonNumber) {
62
+ t.equal(isFinite(nonNumber), false, 'isFinite(' + inspect(nonNumber) + ') === false');
63
+ });
64
+
65
+ t.end();
66
+ });
67
+
68
+ test('isInteger', function (t) {
69
+ forEach([].concat(
70
+ // @ts-expect-error TS sucks with concat
71
+ v.nonNumbers,
72
+ v.nonIntegerNumbers
73
+ ), function (nonInteger) {
74
+ t.equal(isInteger(nonInteger), false, 'isInteger(' + inspect(nonInteger) + ') === false');
75
+ });
76
+
77
+ t.end();
78
+ });
79
+
80
+ test('isNaN', function (t) {
81
+ forEach([].concat(
82
+ // @ts-expect-error TS sucks with concat
83
+ v.nonNumbers,
84
+ v.infinities,
85
+ v.zeroes,
86
+ v.integerNumbers
87
+ ), function (nonNaN) {
88
+ t.equal(isNaN(nonNaN), false, 'isNaN(' + inspect(nonNaN) + ') === false');
89
+ });
90
+
91
+ t.equal(isNaN(NaN), true, 'isNaN(NaN) === true');
92
+
93
+ t.end();
94
+ });
95
+
96
+ test('isNegativeZero', function (t) {
97
+ t.equal(isNegativeZero(-0), true, 'isNegativeZero(-0) === true');
98
+ t.equal(isNegativeZero(+0), false, 'isNegativeZero(+0) === false');
99
+ t.equal(isNegativeZero(1), false, 'isNegativeZero(1) === false');
100
+ t.equal(isNegativeZero(-1), false, 'isNegativeZero(-1) === false');
101
+ t.equal(isNegativeZero(NaN), false, 'isNegativeZero(NaN) === false');
102
+ t.equal(isNegativeZero(Infinity), false, 'isNegativeZero(Infinity) === false');
103
+ t.equal(isNegativeZero(-Infinity), false, 'isNegativeZero(-Infinity) === false');
104
+
105
+ forEach(v.nonNumbers, function (nonNumber) {
106
+ t.equal(isNegativeZero(nonNumber), false, 'isNegativeZero(' + inspect(nonNumber) + ') === false');
107
+ });
108
+
109
+ t.end();
110
+ });
111
+
112
+ test('max', function (t) {
113
+ t.equal(max(1, 2), 2, 'max(1, 2) === 2');
114
+ t.equal(max(1, 2, 3), 3, 'max(1, 2, 3) === 3');
115
+ t.equal(max(1, 2, 3, 4), 4, 'max(1, 2, 3, 4) === 4');
116
+ t.equal(max(1, 2, 3, 4, 5), 5, 'max(1, 2, 3, 4, 5) === 5');
117
+ t.equal(max(1, 2, 3, 4, 5, 6), 6, 'max(1, 2, 3, 4, 5, 6) === 6');
118
+ t.equal(max(1, 2, 3, 4, 5, 6, 7), 7, 'max(1, 2, 3, 4, 5, 6, 7) === 7');
119
+
120
+ t.end();
121
+ });
122
+
123
+ test('min', function (t) {
124
+ t.equal(min(1, 2), 1, 'min(1, 2) === 1');
125
+ t.equal(min(1, 2, 3), 1, 'min(1, 2, 3) === 1');
126
+ t.equal(min(1, 2, 3, 4), 1, 'min(1, 2, 3, 4) === 1');
127
+ t.equal(min(1, 2, 3, 4, 5), 1, 'min(1, 2, 3, 4, 5) === 1');
128
+ t.equal(min(1, 2, 3, 4, 5, 6), 1, 'min(1, 2, 3, 4, 5, 6) === 1');
129
+
130
+ t.end();
131
+ });
132
+
133
+ test('mod', function (t) {
134
+ t.equal(mod(1, 2), 1, 'mod(1, 2) === 1');
135
+ t.equal(mod(2, 2), 0, 'mod(2, 2) === 0');
136
+ t.equal(mod(3, 2), 1, 'mod(3, 2) === 1');
137
+ t.equal(mod(4, 2), 0, 'mod(4, 2) === 0');
138
+ t.equal(mod(5, 2), 1, 'mod(5, 2) === 1');
139
+ t.equal(mod(6, 2), 0, 'mod(6, 2) === 0');
140
+ t.equal(mod(7, 2), 1, 'mod(7, 2) === 1');
141
+ t.equal(mod(8, 2), 0, 'mod(8, 2) === 0');
142
+ t.equal(mod(9, 2), 1, 'mod(9, 2) === 1');
143
+ t.equal(mod(10, 2), 0, 'mod(10, 2) === 0');
144
+ t.equal(mod(11, 2), 1, 'mod(11, 2) === 1');
145
+
146
+ t.end();
147
+ });
148
+
149
+ test('pow', function (t) {
150
+ t.equal(pow(2, 2), 4, 'pow(2, 2) === 4');
151
+ t.equal(pow(2, 3), 8, 'pow(2, 3) === 8');
152
+ t.equal(pow(2, 4), 16, 'pow(2, 4) === 16');
153
+ t.equal(pow(2, 5), 32, 'pow(2, 5) === 32');
154
+ t.equal(pow(2, 6), 64, 'pow(2, 6) === 64');
155
+ t.equal(pow(2, 7), 128, 'pow(2, 7) === 128');
156
+ t.equal(pow(2, 8), 256, 'pow(2, 8) === 256');
157
+ t.equal(pow(2, 9), 512, 'pow(2, 9) === 512');
158
+ t.equal(pow(2, 10), 1024, 'pow(2, 10) === 1024');
159
+
160
+ t.end();
161
+ });
162
+
163
+ test('sign', function (t) {
164
+ t.equal(sign(-1), -1, 'sign(-1) === -1');
165
+ t.equal(sign(+1), +1, 'sign(+1) === +1');
166
+ t.equal(sign(+0), +0, 'sign(+0) === +0');
167
+ t.equal(sign(-0), -0, 'sign(-0) === -0');
168
+ t.equal(sign(NaN), NaN, 'sign(NaN) === NaN');
169
+ t.equal(sign(Infinity), +1, 'sign(Infinity) === +1');
170
+ t.equal(sign(-Infinity), -1, 'sign(-Infinity) === -1');
171
+ t.equal(sign(maxValue), +1, 'sign(maxValue) === +1');
172
+ t.equal(sign(maxSafeInteger), +1, 'sign(maxSafeInteger) === +1');
173
+
174
+ t.end();
175
+ });
176
+
177
+ test('constants', function (t) {
178
+ t.equal(typeof maxArrayLength, 'number', 'typeof maxArrayLength === "number"');
179
+ t.equal(typeof maxSafeInteger, 'number', 'typeof maxSafeInteger === "number"');
180
+ t.equal(typeof maxValue, 'number', 'typeof maxValue === "number"');
181
+
182
+ t.end();
183
+ });
@@ -0,0 +1,3 @@
1
+ {
2
+ "extends": "@ljharb/tsconfig",
3
+ }
package/package.json CHANGED
@@ -91,7 +91,7 @@
91
91
  "publishConfig": {
92
92
  "access": "public"
93
93
  },
94
- "version": "2.0.555",
94
+ "version": "2.0.557",
95
95
  "jest": {
96
96
  "coverageProvider": "v8",
97
97
  "testMatch": [