{"_id":"@44north/classnames","_rev":"2-3013cd71177e5cc7d26faf8d32544878","name":"@44north/classnames","dist-tags":{"latest":"0.1.0"},"versions":{"0.0.0":{"name":"@44north/classnames","version":"0.0.0","main":"./dist/module.js","types":"./dist/module.d.ts","publishConfig":{"access":"public"},"repository":{"type":"git","url":"git+https://github.com/fortyfournorth/modules.git"},"homepage":"https://github.com/fortyfournorth/modules","bugs":{"url":"https://github.com/fortyfournorth/modules/issues"},"license":"MIT","scripts":{"build":"yarn clean && yarn compile","compile":"tsc -p tsconfig.build.json","clean":"rm -rf ./dist ./coverage","lint":"tslint src/*.ts","test":"jest --coverage","watch":"jest --watch","dev":"jest --watch"},"devDependencies":{"jest":"^26.6.3","jest-extended":"^0.11.5","ts-jest":"^26.4.4","typescript":"^4.1.3"},"gitHead":"3684af0166cd32afdb6a711b0447ecc4f5399451","description":"A Module to aid in managing classnames in your applications","_id":"@44north/classnames@0.0.0","_nodeVersion":"14.15.1","_npmVersion":"lerna/3.22.1/node@v14.15.1+x64 (darwin)","dist":{"integrity":"sha512-ZcXC7/uZw4spybbScJgyaDSRgaUynlq4G3zCGzUgpKxUi7CxH4qB2pigmq1fnVazeK5wUfnrNsDj6N3FL77/RA==","shasum":"54e183c1eecfdf924962ca10e4f592a0ddf9dc96","tarball":"https://registry.npmjs.org/@44north/classnames/-/classnames-0.0.0.tgz","fileCount":7,"unpackedSize":25829,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgAEN0CRA9TVsSAnZWagAApDIP/1dXqJr4VESAmtCjLngX\nmR5M6iVnG8RpTvHipqtxp4snmavSqFclgEh3ksK3q+32SWXRDcKolVWDAx5c\np+cs2Tu3ffmuoraGrG0quca3t/2p3rrKzqNZ3ybCt+fW3QBsE5YKDt584AAS\nzTUZ0MAvp99lpyFaj5aocPWPFbzSdTUZrwdnPWTkHrWBP2EfucOq9ara1LuJ\nDMkQQ3/e03mhHGNOBSe5zcnLJJzEzo0TU1FnB4Kkd3n7Y5i3ysI6nTNxrzTK\ndyu2bv6wFye8eW1HoDuLhLFURktf/na0WxFckPOlI5mnNvzHndLuPS1ot3+A\n78wqSN9LO3apG/5c6KcviIFLdbZiDQ2lmfBU02FFvBDjMg1ZEunG5Dr6827U\nix62ksUCA1ZBrszsCXsEQ6wEXTjXrFRfKUUEmR2QgkGZ2iP6tJxDdofriGOx\nAhpsaSgrdfX27Igb0RkhJGGJQrTw/zzJFCmbXWiKRFuJufAJBfAzEjsTY6qP\nZ16urdq1BunPgmTeyg4+aipWMKpfAQ1UPeosmXYBMgkYWsLgxVmIZfTYBlny\nxCXLPHdMfneQQy8XY+Iee3TBTuOras/N65xTrS0ZBKK1PxrCOC3ZFfnpc9il\nNSUbZrxZ3plIfPItg9AVZTH3Jh1zSmcsAWid0R3TbRg7HeVq6BPQLzP80q4n\nT0Gr\r\n=8DZy\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDGvA03Q5ikckdRE6HNZW23HslTGak2JzqwhDNQPAyn/wIgPZsSmRmmbMWCLSJVFgl7lAj24HTdd3Tm+SLcWuibGwA="}]},"_npmUser":{"name":"cvachon44n","email":"cvachon@fortyfournorth.ca"},"directories":{},"maintainers":[{"name":"cvachon44n","email":"cvachon@fortyfournorth.ca"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/classnames_0.0.0_1610630004208_0.13554872096547443"},"_hasShrinkwrap":false},"0.1.0":{"name":"@44north/classnames","version":"0.1.0","main":"./dist/module.js","types":"./dist/module.d.ts","publishConfig":{"access":"public"},"repository":{"type":"git","url":"git+https://github.com/fortyfournorth/modules.git"},"homepage":"https://github.com/fortyfournorth/modules","bugs":{"url":"https://github.com/fortyfournorth/modules/issues"},"license":"MIT","scripts":{"build":"yarn clean && yarn compile","compile":"tsc -p tsconfig.build.json","clean":"rm -rf ./dist ./coverage","lint":"tslint src/*.ts","test":"jest --coverage","watch":"jest --watch","dev":"jest --watch"},"devDependencies":{"jest":"^26.6.3","jest-extended":"^0.11.5","ts-jest":"^26.4.4","typescript":"^4.1.3"},"gitHead":"fb3889d163b66e4506ed82fc73ce19f0aa049a2c","description":"A Module to aid in managing classnames in your applications","_id":"@44north/classnames@0.1.0","_nodeVersion":"14.15.1","_npmVersion":"lerna/3.22.1/node@v14.15.1+x64 (darwin)","_npmUser":{"name":"cvachon44n","email":"cvachon@fortyfournorth.ca"},"dist":{"integrity":"sha512-RU4HQE8cBWmOhmsUsF6wWwC4uplA+CRTicEqQ46NGyNIXLt/i3S4+Czt77l0KLihSxaS+wTpcw2Zh/AafWYPXQ==","shasum":"95270a0c04cd8e9878decc357887c392fa1b2017","tarball":"https://registry.npmjs.org/@44north/classnames/-/classnames-0.1.0.tgz","fileCount":7,"unpackedSize":34986,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJglAHjCRA9TVsSAnZWagAAnOIP/jE2pfQf66ZZW5Ll4kse\n7BLydMTZM6kEggEKZS2+4h8qCDS3dte7kDwXrczqFW5W9igfxovKXkJlFnoG\nbvoIPrGRwt3FEX3sEWPeQluEB0LDw3/OCKaUwz9m4WFTIcYHGr9e7ELdRuEa\nkD90jVAsJINLUrD6bBnGQ/BDPcYDN8cmGZGj023+d8LIMO9uSNOZtKPIoPbZ\n0b2tpwjR384twNahApHmJ9w4EdLxOnlfOsu86bmjyL2c0wgxUt81xD0Hn5JK\nosu/GUG0xzOuKvXsFngymo6hvJi4oUoNr8Hu/Sa77AvR1Vjt/bH7Nh1naPoW\nasOlJf9a6o1sZsDhxKnzwzbNy8YvZTIK93JMQuzLShviME0+EoDIO5qf3Vm3\ngUMhv090Qy0WpNIr55KohdUfIgnuAZKuf9oAm2RSm+6RzR8pbK16xCHQ93AU\nPOpCfWO+jJ4I9B8ofYquzxsE4OWSMjNnO5i56xekUneePNAHXtJTbR7waplN\npJulrZ1Fmmvr2RNddzHadH0AsRQtYypCAy+qOr+Bw1JCTUKqPfs44s4ud5By\nNAngdK/j1vgtzJrNzg2XdTHUccf1jtlLzp8puarojD80FdXu51p1gKuQBuLF\nKjjLeg6lnqC7OtE2SaSRnZe1Z5+jKVK6yti48uZMB8QaXozx0F3p920PscPx\nz6/C\r\n=ZFTJ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIC35dm3zC8KstR1bR3JzbRAcC78qRY85w5g6xpbzu/ipAiEA+yX/66D2IvZpFv4WaHVmKR033LIXGP1uFbeRDjD95Gw="}]},"directories":{},"maintainers":[{"name":"cvachon44n","email":"cvachon@fortyfournorth.ca"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/classnames_0.1.0_1620312546734_0.6893499376617125"},"_hasShrinkwrap":false}},"time":{"created":"2021-01-14T13:13:23.964Z","0.0.0":"2021-01-14T13:13:24.327Z","modified":"2022-04-04T10:45:53.045Z","0.1.0":"2021-05-06T14:49:06.867Z"},"maintainers":[{"name":"cvachon44n","email":"cvachon@fortyfournorth.ca"}],"description":"A Module to aid in managing classnames in your applications","homepage":"https://github.com/fortyfournorth/modules","repository":{"type":"git","url":"git+https://github.com/fortyfournorth/modules.git"},"bugs":{"url":"https://github.com/fortyfournorth/modules/issues"},"license":"MIT","readme":"# @44north/classnames\n\nA Module to aid in managing classnames in your applications\n\n## Install\n\n```\nnpm install @44north/classnames\n```\n\nor\n\n```\nyarn add @44north/classnames\n```\n\n## Usage\n\n```js\nimport React from \"react\";\nimport { ClassNames } from \"@44north/classnames\";\n\nconst Page = () => <h1 classNames={new ClassNames(\"text-xl\").list()}>Hello World</h1>;\n```\n\n## API\n\n### .add()\n\nAdds a class to the instance\n\n```js\nimport { ClassNames } from \"@44north/classnames\";\n\nconst list = new ClassNames(\"a\", \"b\", \"c\").list();\n// list => \"a b c\"\n```\n\n```js\nconst list = new ClassNames().add(\"a\", \"b\", \"c\").list();\n// list => \"a b c\"\n```\n\n```js\nconst list = new ClassNames().add([\"a\", \"b\", \"c\"]).list();\n// list => \"a b c\"\n```\n\n```js\nconst list = new ClassNames().add(\"a b c\").list();\n// list => \"a b c\"\n```\n\n```js\nconst list = new ClassNames().add([\"a b c\"]).list();\n// list => \"a b c\"\n```\n\n```js\nconst list = new ClassNames(\"a\").add(new ClassNames([\"b\", \"c\"])).list();\n// list => \"a b c\"\n```\n\n#### Conditionals\n\nYou can pass an object as part of add with the classname as a key and value as a boolean.\n\n```js\nconst values = {\n    a: true,\n    b: false,\n    c: a !== b\n};\n\nconst list = new ClassNames(values).list();\n// list => \"a c\"\n```\n\n### .remove()\n\nremoves a class from the instance\n\n```js\nconst list = new ClassNames().add([\"a\", \"b\", \"c\"]).remove(\"a\").list();\n// list => \"b c\"\n```\n\n```js\nconst list = new ClassNames().add([\"a\", \"b\", \"c\"]).remove([\"a\", \"c\"]).list();\n// list => \"b\"\n```\n\n```js\nconst list = new ClassNames().add([\"a\", \"b\", \"c\"]).remove(\"a\", \"c\").list();\n// list => \"b\"\n```\n\n```js\nconst list = new ClassNames().add([\"mt-3\", \"mb-4\", \"pt-8\"]).remove(new RegExp(\"t-\")).list();\n// list => \"mb-4\"\n```\n\n### .list() / .toString()\n\nreturns this instance as a class formated string.\n\n```js\nconst list = new ClassNames().add([\"a\", \"b\", \"c\"]).list();\n// list => \"b c\"\n```\n\n```jsx\n<h1 classNames={new ClassNames(\"text-xl\").list()}>Hello World!</h1>\n```\n\n### .find()\n\nallows you to search the instance for a particular class\n\n```js\nconst list = new ClassNames().add([\"a\", \"b\", \"c\"]).find(\"b\");\n// list => [\"b\"]\n```\n\n```js\nconst list = new ClassNames().add([\"mt-3\", \"mb-4\", \"pt-8\"]).find(new RegExp(\"b\"));\n// list => \"mb-4\"\n```\n\n### .isEmpty()\n\nreturns if the instance has any classes\n\n```js\nconst value = new ClassNames([\"a\", \"b\", \"c\"]).isEmpty();\n// value => false\n```\n\n### .has()\n\nreturns if the instance has the provided value\n\n```js\nconst value = new ClassNames([\"a\", \"b\", \"c\"]).has(\"b\");\n// value => true\n```\n\n```js\nconst value = new ClassNames([\"mt-3\", \"mb-4\", \"pt-8\"]).has(new RegExp(\"z-\"));\n// value => false\n```\n\n### .isClassNames()\n\nreturns if the provided value is an instance of ClassName\n\n```js\nconst value = new ClassNames().isClassName([\"a\"]);\n// value => false\n```\n\n### .length\n\nreturns the number of classes added to the instance\n\n```js\nconst value = new ClassNames([\"a\", \"b\", \"c\"]).length;\n// value => 3\n```\n\n## Static Methods\n\n-   .add() - Alias of `new ClassNames().add()`\n-   .isClassNames() - Alias of `new ClassNames().isClassNames()`\n","readmeFilename":"README.md"}