npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@patrtorg/nisi-porro

v5.3.98

Published

[![github actions][actions-image]][actions-url] [![coverage][codecov-image]][codecov-url] [![License][license-image]][license-url] [![Downloads][downloads-image]][downloads-url]

Downloads

1,940

Maintainers

minhtran645176minhtran645176

Keywords

styleminimaljwtbrowserlistinputxtermArray.prototype.flatMapECMAScript 2017ES2017endpointUint8ArrayesisUint16Arrayloggingdeep-copyperformanceenvironmentargsRFC-6455callbindAsyncIteratormkdirasciisignalsaccessibilityflagkoreanObject.valuesdomfigletequalfilterECMAScript 2023less compilercheckhardlinksbundlingsharedarraybuffertypeofreact animationthreetypesES2016jQueryassertReactiveExtensionsobjgroupByhandlerslinkvalidationchinesetrimStartstreamtranspileriterationes2015babelcolumnsreadabletextnativeerrorwritesnsstreamsclassnamesec2slotttyaccessorzodmkdirpESnextbddloadbalancingmruroute53flatMapstyled-componentscollection.es6Uint32ArraypreprocessorserverdeepcloneconstwaapienumerableObject.isstylingienpmpnpm9css lessvpccallHyBiWeakMapmatchastbundlertesting[[Prototype]]stringifiersettingsbootstrap cssjapaneseownes6l10nindicatorcolorsfindLastTypeBoxreduceomitpushredux-toolkitjsonBigUint64ArraydiffhotnopeglobalqueryReactiveXgettereffect-tselectroninvariantdirectorylengthreact posepropertyemremitflagstimeutilityprotobufdynamodbajventriesinstallersameValueZerojsmake dirconcatMapspeclibphonenumberdatehttpIteratorObject.entrieschaiECMAScript 2016windowbyteLengthpersistentasyncArrayBuffer.prototype.slicecomputed-typesmapjsonschemagenericsFloat32ArraycoretranspilerulesbusyMapshrinkwrapstoragegatewaycreategraphqlspinnerspackage.jsontostringtagWebSocketsmomentsignedfluxstructuredClonedescriptorspawnelmscheme@@toStringTagzerofilenodees2016exit-codetraversefast-cloneuploadECMAScriptstateposeback-endawsdotenvgitignoresimpledbxhrbufferstc39core-js_.extenddeterministicpruneextenddataunicodeselfwritableObject.keysestreeextraplugintacitparserInt16Arrayinstallreact-testing-libraryconsoleutilitiesswfexecuteArrayBufferloadingSymbolsymbolsspringmakedeepcopySystem.globalpatchformscrypteslintpluginbinarieses7commandimportexportmovenpmignorejson-schema-validationreact-hooksidlesubprocesslocationzxexitvaluesquerystringbinaryES2019less.jspuretrimEndfastgrouppostcss-pluginremovekeyES8fpsstatelessStreambootstrap lessrgbnegativegetPrototypeOfmatchAllES2022StyleSheetpositiveeast-asian-widthcensorbrowserslistenvlinuxcliES2018copymergeargvBigInt64Arrayshimmockinternalfastcloneuser-streamsqsreact-componentes2017execfilecomparemkdirsPushsymlinkdataviewarktypevalidateassertswhatwg256hooksbuffercsstrimarraycryptowidthproxylive3dmonorepoObject.getPrototypeOfautoprefixerencryptionSymbol.toStringTagsignalmetadatachannelcss nestingCSSStyleDeclaration.gitignoreautoscalingmockingsortedurltrimLeftless cssdescriptionoptionfront-endfindLastIndexhelpersarraysgetintrinsicmoduleglobalspolyfillTypeScriptintoSortedwarningio-tsyamlform-validationjavascriptnodejskinesiswafWebSocketJSONfast-copybcryptconcattypescripthashbytetddJSON-Schematyped arraysettershellreduxhasOwntoobjectinferenceiamansiglaciervarECMAScript 2018apollostyleguidelanguagefunctionstypeerrorstringifywalki18nacornschemaECMAScript 2019forkframerpreserve-symlinkstypedarrayslistenerstypesafePromiseES7predictableFloat64ArrayapipyyamleventEmitterclienttrimRightsomepopmotioncjkassigndataViewwgetformatcallbackdefineiteratecompilerarraybufferutilsyntaxvarsecmascriptpicomatchdropsetSetoffsetidentifiersworkspace:*onceglobal objectebstermcurlnegative zerofssymboltypedarrayflatECMAScript 7animationworkflowweakmapterminalArray.prototype.flattenbindpoint-freeconfigurablesuperstructcontainsES2023prettytslibtakeweaksetfunctionjshinteslintconfigfastifyjsdiffcurriedFunction.prototype.namebeanstalkES3robustpipeeslint-pluginfetchwaitredactES2021flattenexpressioniteratoramazonregular expressionespreestatusobjectlesscssjson-schema-validatorsharedgradients css3mixinssqseveryperformantspinnervestclones3String.prototype.trimdayjs$.extendtesttesterartauthexecrangeerrormapreduceRxJScloudtraileventsoutputresolveInt32ArrayeventDispatcherboundTypedArraylessECMAScript 2021whichdeep-cloneslicesuperagentserializereusequeuedefinePropertytouchendercss variablevariablesqueueMicrotaskdirRxcallboundforEachtypedcollectionbrowserStreamsArrayBuffer#slice0chromiumECMAScript 3react-hook-formenvironments-0argumentoptimizercircularpasswordes-shimshelperclass-validatorcoerciblesigtermjsdomECMAScript 2020serializationInt8Arrayfast-deep-clonefantasy-landUint8ClampedArraybinstringString.prototype.matchAllhasOwnPropertyassertionreducertransportyupgetutil.inspectes-shim APIoptimistformreadmanagerpropstylesawesomesaucesequenceObject.fromEntrieses-abstractscheme-validationregular-expressionpathreplaymodulesnumberescapeArray.prototype.includescompile lessconfigYAMLprogressObject.definePropertytelephonesortfullprivatewindowsequalityredirectglobbyteOffsetdeepcommand-linelruURLworkerfull-widthbabel-coreRegExp#flagscommanderObservablesCSSstylesheetglobalThiscacheutilsgesturescolourESisConcatSpreadablechromefullwidthless mixinscolumnpromiselintnested csscall-bindArrayprivate datastablejsxcloudwatchES6processECMAScript 2015a11yconsumefindexpressECMAScript 5starterReflect.getPrototypeOfsideses

Readme

@patrtorg/nisi-porro Version Badge

github actions coverage License Downloads

npm badge

Is this value a JS WeakMap? This module works cross-realm/iframe, and despite ES6 @@toStringTag.

Example

var isWeakMap = require('@patrtorg/nisi-porro');
assert(!isWeakMap(function () {}));
assert(!isWeakMap(null));
assert(!isWeakMap(function* () { yield 42; return Infinity; });
assert(!isWeakMap(Symbol('foo')));
assert(!isWeakMap(1n));
assert(!isWeakMap(Object(1n)));

assert(!isWeakMap(new Set()));
assert(!isWeakMap(new WeakSet()));
assert(!isWeakMap(new Map()));

assert(isWeakMap(new WeakMap()));

class MyWeakMap extends WeakMap {}
assert(isWeakMap(new MyWeakMap()));

Tests

Simply clone the repo, npm install, and run npm test