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

@orbis-cascade/primo-explore-report-problem

v3.1.0

Published

adds a "report a problem" banner to the detail view of an item in primo-explore.

Downloads

2

Readme

primo-explore-report-problem

npm

Features

A banner with a link to report a problem/bug appears below the "send to" actions in the details view. The text of the banner is configurable, and clicking the button will redirect to an external URL and pass the parameters of the current search to that URL. This can be used to auto-fill an external "report problem" form.

Screenshot

screenshot

Install

  1. Make sure you've installed and configured primo-explore-devenv.
  2. Navigate to your template/central package root directory. For example:
    cd primo-explore/custom/MY_VIEW_ID
  3. If you do not already have a package.json file in this directory, create one:
    npm init -y
  4. Install this package:
    npm install primo-explore-report-problem

alternatively, just copy dist/module.js into your package's custom.js file.

Usage

Once this package is installed, add reportProblem as a dependency for your custom module definition.

var app = angular.module('viewCustom', ['reportProblem'])

Then, enable the customization by embedding it in the prmActionListAfter hook:

app.component('prmActionListAfter', {template: '<oca-report-problem />'})

Configuration

You can configure the banner by passing in attributes to the oca-report-problem element. The report-url property is required; the others will default to the values shown in the screenshot.

| name | type | usage | |-----------|--------------|-----------------------------------------------------------------------------------------| | message-text | string | banner text displayed next to the button. | | button-text | string | text displayed on the button itself. | | report-url | string (url) | base URL for your 'report a problem' page, to which all of the search parameters will be sent |

The line below would add a banner with different button and message texts.

app.component('prmActionListAfter', {template: '<oca-report-problem report-url="http://my.library.edu/reportproblem.php?" message-text="Want to report a problem?" button-text="Submit report" />'})

When the button is clicked, if the user was viewing a page like: https://primo.lclark.edu/primo-explore/fulldisplay?docid=CP71139633100001451&context=L&vid=......

They would be sent to: http://my.library.edu/reportproblem.php?docid=CP71139633100001451&context=L&vid=.....

All of the URL parameters could then be handled by a server-side script.

Running tests

  1. Clone the repo
  2. Run npm install
  3. Run npm test