{"_id":"@cipscis/throttle-with-debounce","name":"@cipscis/throttle-with-debounce","dist-tags":{"latest":"1.0.0"},"versions":{"1.0.0":{"name":"@cipscis/throttle-with-debounce","version":"1.0.0","description":"Throttle functions while also providing a debounce at the end of the throttled period.","main":"./dist/throttle-with-debounce.js","type":"module","types":"dist/throttle-with-debounce.d.ts","scripts":{"server":"node server/server.js","build":"gulp build","watch":"gulp","start":"concurrently --kill-others \"npm run server\" \"npm run watch\"","test":"eslint src/** && tsc && jasmine","prepare":"gulp clean && eslint src/** && tsc && jasmine"},"author":{"name":"Mark Hanna"},"repository":{"type":"git","url":"git+https://github.com/cipscis/throttle-with-debounce.git"},"license":"Hippocratic-2.1","devDependencies":{"@types/jasmine":"^3.8.2","@typescript-eslint/eslint-plugin":"^5.18.0","@typescript-eslint/parser":"^5.18.0","concurrently":"^6.1.0","dotenv":"^10.0.0","eslint":"^8.13.0","express":"^4.17.1","gulp":"^4.0.2","gulp-sass":"^5.0.0","jasmine":"^3.9.0","resolve-typescript-plugin":"^1.1.0","sass":"^1.34.1","ts-loader":"^9.2.5","typescript":"^4.5.2","webpack":"^5.40.0"},"engines":{"node":">=14"},"gitHead":"6812b87abe771f9fc5aaa45522731b2a914f768c","bugs":{"url":"https://github.com/cipscis/throttle-with-debounce/issues"},"homepage":"https://github.com/cipscis/throttle-with-debounce#readme","_id":"@cipscis/throttle-with-debounce@1.0.0","_nodeVersion":"14.17.1","_npmVersion":"6.14.13","dist":{"integrity":"sha512-zQRX/vPg7iZNtJaxr3h6fwalteOtz1ikUj+p/5dFC5j1EUfpaXCJ7OGbUW+kFXYH9ODQC1+xPKHP5e61HXZERw==","shasum":"0f28fccd50ffd6695a9959d6ebf3cea39c69984f","tarball":"https://registry.npmjs.org/@cipscis/throttle-with-debounce/-/throttle-with-debounce-1.0.0.tgz","fileCount":6,"unpackedSize":9073,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCFDdHY8jzJsv+thR6M8ohC0oGQliuNGlIQ8843dSdyhwIhAIOmI6CFBY+DNgtxhc+tikepdBazJptPumu9wxRUsbLy"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiWOVeACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrkdA//R3DHgm+WdVyD5aL06LQD4HIppQ4CeKgkyTVCxoibznLyTQoP\r\nOpXIMhLzCcsL0hJH/oJBHUBlFE0QrlpDIqsebz9mkpj7U3f5CsnNcr9/NAYb\r\nt4Aj5DDhzsiS1ZSXZBZibRvD5jtYxp4QfsV/To58pzGBSWPzEMnfvtZZok5k\r\neh/ACwfwVTDtxlrI39A+pf06+ZGGfeTNEzx2oL/4bdSGIWk9ralc0lbrWKEt\r\n/8ccmSGUd3IEhy2jGFZdHYuy1z89uayhFBQbHlvQU+eivP7Sfuh0Fjbicu91\r\nkoROIrJWwPUvfwBwh+rlWW+MqfD8LzkGhwAiXiSqyOHPmYOACpxNSeue5flh\r\ntjNy2fE5IklYH1JlYL+gGMtmLdKz8AK8074wvxnhuLAkBFwLXVXCdw4cW3QW\r\nKy0ClKcemLd6FyNOeWE7SHv1Gr1uLH0z1Zi5Evu9S8kfUA36QWq2HwE5ukCC\r\nsd7gYpxy17iHd+GKdvm0TMA5ChwZ666t9GCd4PgZxGLwOM4LJ7Umjjgtl3a/\r\nfR2Y+X42CUfZSIJvBTrAiQbw8GUQPiLF4gONMYf0cydY5mcZJJoaxThK0qeu\r\nuthg34GGvQhaVeYnKHuRpOji4vKsXhEkauQa2FVgx+pnoPB7CfP7hgthi8dH\r\nMJ9VSczUBHDYtsVAbnW2Eg5nYrvyeGI21xw=\r\n=V4jM\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"cipscis","email":"cipscis+npm@gmail.com"},"directories":{},"maintainers":[{"name":"cipscis","email":"cipscis+npm@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/throttle-with-debounce_1.0.0_1649993054252_0.017304110292168273"},"_hasShrinkwrap":false}},"time":{"created":"2022-04-15T03:24:14.187Z","1.0.0":"2022-04-15T03:24:14.422Z","modified":"2022-04-15T03:24:14.564Z"},"maintainers":[{"name":"cipscis","email":"cipscis+npm@gmail.com"}],"description":"Throttle functions while also providing a debounce at the end of the throttled period.","homepage":"https://github.com/cipscis/throttle-with-debounce#readme","repository":{"type":"git","url":"git+https://github.com/cipscis/throttle-with-debounce.git"},"author":{"name":"Mark Hanna"},"bugs":{"url":"https://github.com/cipscis/throttle-with-debounce/issues"},"license":"Hippocratic-2.1","readme":"# throttle-with-debounce\r\n\r\n![Build and deploy status badge](https://github.com/cipscis/throttle-with-debounce/actions/workflows/build-and-deploy.yml/badge.svg)\r\n\r\n## Install\r\n\r\nRun `npm install @cipscis/throttle-with-debounce`\r\n\r\n## Usage\r\n\r\nSee [Throttle with Debounce documentation](https://cipscis.github.io/throttle-with-debounce/)\r\n\r\n## Development\r\n\r\nYou will need to install [Node.js](https://nodejs.org/en/) before working on this package.\r\n\r\n1. Clone the repository using `git clone https://github.com/cipscis/throttle-with-debounce.git`.\r\n2. Run `npm install` to install development dependencies.\r\n3. Create a [`.env`](#env) file.\r\n4. Run `npm start` to run the local server and watch CSS and JS files for changes.\r\n\r\nThis project creates six npm tasks:\r\n\r\n* `npm run server` runs a Node.js server on the port specified in the [`.env`](#env) file, using [Express](https://expressjs.com/).\r\n\r\n* `npm run build` compiles CSS files using [gulp-sass](https://www.npmjs.com/package/gulp-sass), then compiles TypeScript and bundles JavaScript using [Webpack](https://webpack.js.org/).\r\n\r\n* `npm run watch` first runs the `build` task, then watches the relevant directories and reruns the `build` task if it sees any changes.\r\n\r\n* `npm start` runs both the `server` and `watch` tasks simultaneously.\r\n\r\n* `npm test` lints and compiles any TypeScript, then runs any configured test suites using [Jasmine](https://jasmine.github.io/).\r\n\r\n* `npm run prepare` first removes directories containing compiled files, then lints and compiles any TypeScript, then runs any configured test suites using [Jasmine](https://jasmine.github.io/). You should never need to run this task manually, [the `prepare` script runs automatically](https://docs.npmjs.com/cli/v7/using-npm/scripts#life-cycle-scripts) when npm prepares your package for publishing.\r\n\r\nUsually, you will just want to run `npm start`.\r\n\r\n### .env\r\n\r\nThe `.env` file contains the following environment variables:\r\n\r\n* `PROJECT_NAME` `(string)`\r\n\r\nIf present, used by [Express](https://expressjs.com/) to set up redirects for emulating [GitHub Pages](#github-pages).\r\n\r\n* `MODE` `(string 'development' | 'production')`\r\n\r\nUsed by Webpack to determine what optimisations to use and how to generate sourcemaps.\r\n\r\n* `PORT` `(int)`\r\n\r\nUsed by [Express](https://expressjs.com/) to determine which port to use when running a local Node.js server.\r\n\r\nAn example `.env` file you can use for development is:\r\n\r\n```\r\nPROJECT_NAME = \"throttle-with-debounce\"\r\nMODE = \"development\"\r\nPORT = \"8080\"\r\n```\r\n\r\nThis file is intended to differ from environment to environment, so it is ignored by Git.\r\n\r\n## Dependencies\r\n\r\nNone.\r\n\r\n## Dev Dependencies\r\n\r\n### Development\r\n\r\nThese dependencies are used when working on the project locally.\r\n\r\n* [Node.js](https://nodejs.org/en/): Runtime environment\r\n\r\n* [npm](https://www.npmjs.com/): Package manager\r\n\r\n* [Gulp](https://gulpjs.com/): Task runner\r\n\r\n* [TypeScript](https://www.typescriptlang.org/): JavaScript extension for static type checking\r\n\r\n* [Jasmine](https://jasmine.github.io/): Testing framework\r\n\r\n\t* [@types/jasmine](https://www.npmjs.com/package/@types/jasmine): TypeScript types for Jasmine\r\n\r\n* [sass](https://www.npmjs.com/package/sass): Compiling CSS from [Sass](https://sass-lang.com/)\r\n\r\n\t* [gulp-sass](https://www.npmjs.com/package/gulp-sass): Using the `sass` compiler with Gulp\r\n\r\n* [Webpack](https://webpack.js.org/): For JavaScript dependency management, used with Gulp\r\n\r\n\t* [ts-loader](https://github.com/TypeStrong/ts-loader): For compiling TypeScript using Webpack\r\n\r\n\t* [resolve-typescript-plugin](https://github.com/softwareventures/resolve-typescript-plugin): For using ES Module syntax with Webpack's `ts-loader`\r\n\r\n* [Express](https://expressjs.com/): Running a Node.js server, accessed at `http://localhost:<PORT>`\r\n\r\n* [Concurrently](https://www.npmjs.com/package/concurrently): Running server and development build tasks concurrently\r\n\r\n* [dotenv](https://www.npmjs.com/package/dotenv): Reading environment variables from [`.env`](#env) file\r\n\r\n* [eslint](https://www.npmjs.com/package/eslint): Linting TypeScript files\r\n\r\n\t* [@typescript-eslint/eslint-plugin](https://www.npmjs.com/package/@typescript-eslint/eslint-plugin): Allows `eslint` to lint TypeScript\r\n\r\n\t* [@typescript-eslint/parser](https://www.npmjs.com/package/@typescript-eslint/parser): Allows `eslint` to parse TypeScript\r\n\r\n### Deploy\r\n\r\nThese dependencies are used for deploying the project to GitHub Pages.\r\n\r\n* [checkout](https://github.com/marketplace/actions/checkout): Used to check out the repository to a workspace so it can be built\r\n\r\n* [Deploy to GitHub Pages](https://github.com/marketplace/actions/deploy-to-github-pages): Used to deploy the project to GitHub pages once it has been built\r\n","readmeFilename":"README.md"}