From 8a680aa5aa553093e620bdaa41a014e9fee2e13c Mon Sep 17 00:00:00 2001 From: Claude Date: Fri, 23 Oct 2026 00:41:58 +0000 Subject: [PATCH 1/2] docs: add missing JSDoc examples in `utils/type-of` Added missing `@example` blocks to the `typeOf` JSDoc in `lib/main.js` and `lib/polyfill.js` (main function JSDoc carries `@example` in 97% of `utils` packages; 89% of sibling builtin/polyfill implementation files). Co-Authored-By: Claude Opus 5.5 Claude-Session: https://claude.ai/code/session_01E6UUPEB3GQKNEpi1ddopv1 --- lib/node_modules/@stdlib/utils/type-of/lib/main.js | 8 ++++++++ lib/node_modules/@stdlib/utils/type-of/lib/polyfill.js | 8 ++++++++ 2 files changed, 16 insertions(+) diff --git a/lib/node_modules/@stdlib/utils/type-of/lib/main.js b/lib/node_modules/@stdlib/utils/type-of/lib/main.js index 4a17563d2ccb..fb101db4e6a1 100644 --- a/lib/node_modules/@stdlib/utils/type-of/lib/main.js +++ b/lib/node_modules/@stdlib/utils/type-of/lib/main.js @@ -53,6 +53,14 @@ var ctorName = require( '@stdlib/utils/constructor-name' ); * * @param {*} v - input value * @returns {string} string indicating the value's type +* +* @example +* var str = typeOf( 'a' ); +* // returns 'string' +* +* @example +* var str = typeOf( 5 ); +* // returns 'number' */ function typeOf( v ) { var type; diff --git a/lib/node_modules/@stdlib/utils/type-of/lib/polyfill.js b/lib/node_modules/@stdlib/utils/type-of/lib/polyfill.js index 856e26e438af..a9926f8ecc6d 100644 --- a/lib/node_modules/@stdlib/utils/type-of/lib/polyfill.js +++ b/lib/node_modules/@stdlib/utils/type-of/lib/polyfill.js @@ -30,6 +30,14 @@ var ctorName = require( '@stdlib/utils/constructor-name' ); * * @param {*} v - input value * @returns {string} string indicating the value's type +* +* @example +* var str = typeOf( 'a' ); +* // returns 'string' +* +* @example +* var str = typeOf( 5 ); +* // returns 'number' */ function typeOf( v ) { return ctorName( v ).toLowerCase(); From dadd930860a5b7bfd5d399f5fb9ddd8aecf0ecbf Mon Sep 17 00:00:00 2001 From: Claude Date: Fri, 23 Oct 2026 00:44:40 +0000 Subject: [PATCH 2/2] refactor: use `@stdlib/string/base/lowercase` in `utils/type-of` Replaces `String.prototype.toLowerCase` with `@stdlib/string/base/lowercase` to satisfy the `no-restricted-syntax` lint rule, which is enforced on the files modified in the preceding commit. Co-Authored-By: Claude Opus 5.5 Claude-Session: https://claude.ai/code/session_01E6UUPEB3GQKNEpi1ddopv1 --- lib/node_modules/@stdlib/utils/type-of/lib/main.js | 3 ++- lib/node_modules/@stdlib/utils/type-of/lib/polyfill.js | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/lib/node_modules/@stdlib/utils/type-of/lib/main.js b/lib/node_modules/@stdlib/utils/type-of/lib/main.js index fb101db4e6a1..f305cd2e1141 100644 --- a/lib/node_modules/@stdlib/utils/type-of/lib/main.js +++ b/lib/node_modules/@stdlib/utils/type-of/lib/main.js @@ -21,6 +21,7 @@ // MODULES // var ctorName = require( '@stdlib/utils/constructor-name' ); +var lowercase = require( '@stdlib/string/base/lowercase' ); // NOTES // @@ -73,7 +74,7 @@ function typeOf( v ) { // If the `typeof` operator returned something other than `object`, we are done. Otherwise, we need to check for an internal class name or search for a constructor. if ( type === 'object' ) { - return ctorName( v ).toLowerCase(); + return lowercase( ctorName( v ) ); } return type; } diff --git a/lib/node_modules/@stdlib/utils/type-of/lib/polyfill.js b/lib/node_modules/@stdlib/utils/type-of/lib/polyfill.js index a9926f8ecc6d..f8b46020cab8 100644 --- a/lib/node_modules/@stdlib/utils/type-of/lib/polyfill.js +++ b/lib/node_modules/@stdlib/utils/type-of/lib/polyfill.js @@ -21,6 +21,7 @@ // MODULES // var ctorName = require( '@stdlib/utils/constructor-name' ); +var lowercase = require( '@stdlib/string/base/lowercase' ); // MAIN // @@ -40,7 +41,7 @@ var ctorName = require( '@stdlib/utils/constructor-name' ); * // returns 'number' */ function typeOf( v ) { - return ctorName( v ).toLowerCase(); + return lowercase( ctorName( v ) ); }