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

@gatekeeper_technology/report-utils

v1.2.3

Published

Gatekeeper's pdf/email Utils - shared in NPM

Downloads

9,123

Readme

Gatekeeper's report utils

Gatekeeper's pdf/email Utils - shared in NPM

Set-up

  1. Create a .npmrc file containing: //registry.npmjs.org/:_authToken=<publish-npm-token>. You can find the publish npm-token on onePassword.

Updating

  1. Put your code changes in index.js.
    • If you added a new function, write jest test cases for it.
  2. Update the version number in the package.json.
  3. Describe your changes in the README.md changelog.
  4. Test your code before publishing:
    • Navigate one directory back
    • Open the terminal.
    • Execute npm install @gatekeeper_technology/report-utils.
    • If any error fix them.
    • Navigate back into the report-utils directory
      • Make sure you have jest installed on your machine.
    • run npm test to test that all the functions are working correctly.
  5. Execute cd report-utils and npm publish in the terminal.
  6. Commit & Push your changes to GitHub.

Using this package in a JourneyApps CloudCode Task.

  • In your CloudCode, open the package.json file and make sure you have the following code:
    "dependencies": {
    	"@gatekeeper_technology/report-utils": "<current-version-number>"
    }
    , where <current-version-number> is the version number saved in this repo's package.json file.
  • In the JavaScript code add the following line at the top of the page: const utils = require("@gatekeeper_technology/report-utils");.
  • Create a .npmrc file (in the CC task) containing: //registry.npmjs.org/:_authToken=<read-only-npm-token>. You can find the read-only npm-token on 1Password.
  • You can check at the top of this repo's index.js file to see which functions we export. We should update the list of functionality soon.
  • Happy coding!

Functionality

This package has three parts

  • date_time_utils - Functions that format JavaScript datetime objects to a readable/printable format
  • email_utils - These functions ensure that the specified email addresses do not violate any of the SendGrid v3 requirements and implements whitelisting
  • photo_attachment_utils -

Changelog

[1.2.1]

Removed

  • dist ignore file in .npmignore.

[1.2.0]

Added

  • Added postToJourneyBackend function
  • Added journeyApps npm packages as dependencies to assist with the reportUtil package.
  • Added sortArrayByField function
  • Added generateHTML function
  • Added formatText function
  • Added getImageContentForPDF function

Changed

  • Migrated to TypeScript
  • All date functions should now be able to accept Day variables.
  • .gitignore file now ignores compiled files.
  • isAttachment(s)Uploaded functions no longer reschedules. It now throws an error with the cause = attachments-uploading

[1.1.10]

Removed

  • Removed loadBase64 function in a race against time.

[1.1.9]

Added

  • Jest Test cases
  • formatText, sortArrayByField and generateHTML functions
  • .d.ts files.

[1.1.8]

Changed

  • Added more validation on general utils

Added

  • Unit Tests on General Utils.

Removed

  • console.error() on date Utils.

[1.1.7]

Changed

  • Fixed funky way of throwing errors
  • Added a new utils folder with small internal utils

[1.1.6]

Changed

  • When retrying a task, we don't need to specify the CloudCode task name as we can access it programmatically

[1.1.5]

Added

  • isSameDay: Checks if the given two dates falls on the same day (second date value defaults to now).
  • compareDates: Checks if the given two dates falls on the same date and time (return 0), date 1 is before date 2 (returns -1), otherwise returns 1 (second date value defaults to now).

Removed

  • isToday: Can be used via the isSameDay() function
  • isPastDate and isFutureDate: Can be user via the compareDates() function

Changed

  • Improved Test file (WIP)

[1.1.4]

Added

  • areEqualDates
  • areEqualDateTimes
  • isToday
  • getStartOfWeek
  • getEndOfWeek
  • getWeekNumber
  • isFutureDate
  • isPastDate

[1.1.3]

Fixed

  • A bug where you cannot import the report-utils package in the /mobile side of an App.

[1.1.2]

Changed

  • [TESTING] Moved the loadImageBase64 function to index.js to see if the required("fs") problem is fixed.

[1.1.1]

Changed

  • [TESTING] Moved the require("fs") out of the function.

[1.1.0]

Changed

  • Refactored the file structure to separate the concerns.
  • Replaced displayPhoto with journeyPhotoToBase64, it now has a more descriptive name
  • Replaced loadPhotoOrSignature with getPhotoOrSignatureData, it's now up to the developer to load the data into a data hash.
  • Replaced loadSignatureBase64 with encodeBase64ImagePNG, renamed function and changed the input parameter to the actual image data.

[1.00.07]

Added

  • index.js: Added the ability to specify in which environments to enable email whitelisting.

[1.00.06]

Changed

  • index.js: Emails are first trimmed and toLowerCase'd before checking if it is valid.

[1.00.05]

Changed

  • index.js: Changed the way loadAttachments function receives retry_count value.

[1.00.04]

Fixed

  • index.js: a Bug where the loadPhotoOrSignature function was out of date.

[1.00.03]

Changed

  • index.js: Emails check now convert all emails to lowercase before checking for duplicates.

[1.00.02]

Added

  • index.js: Added function displayTimeWithSeconds.

Changed

  • index.js: improved javadocs commenting .

[1.00.01]

Changed

  • Readme.md: explanation improved.
  • index.js: Added functions displayDateTime and displayTime.

[1.00.00]

Added

  • package.json: Added.
  • index.js: Added and populated with Gatekeeper's handlebarUtil functions.
  • .npmignore: Added.
  • .gitignore: Added.
  • README.md: Added with description, set-up and change-log.