@byu-oit/nuxt-common

BYU Front End common module for Nuxt.js

Usage no npm install needed!

<script type="module">
  import byuOitNuxtCommon from 'https://cdn.skypack.dev/@byu-oit/nuxt-common';
</script>

README

Nuxt setup

Common packages, plus a small set of plugins, for OIT Vue frontend apps

  • AppDynamics

Add AppDynamics monitoring.

Usage: Set a build environment variable NUXT_ENV_APP_DYNAMICS_KEY, or a config environment variable appDynamicsKey

  • Axios

Automatically attempt token refresh on WSO2 401 error, and automatically pop up a Vuetify dialog on any other response errors

Usage: enabled automatically. To disable the error popup (e.g. if you want to completely handle the error yourself), either set a global environment variable NUXT_ENV_NO_AXIOS_AUTO_ERROR, or add noAutoError to the config for individual axios calls, e.g.

  this.$axios.$get(url, { noAutoError: true })
  • Filters

A few convenient Vue filters

  • moment - a slightly-enhanced vue-moment filter that won't complain about null values

  • yearTerm - convert year-term integers to full text, e.g. "20213" becomes "Spring 2021"

  • stripHtml - strip HTML tags, i.e. extract plain-text content from HTML content

  • Implicit Grant

Wraps WSO2 implicit grant process. Defaults the entire site to forced auto-login on load.

Usage: Set environment variables NUXT_ENV_OAUTH_CLIENT_ID and NUXT_ENV_OAUTH_CALLBACK_URL To disable auto-login (i.e. allow some public pages), set environment variable NUXT_ENV_OAUTH_DISABLE_AUTO_LOGIN