// https://nuxt.com/docs/api/configuration/nuxt-config
import {Buffer} from "buffer";

export default defineNuxtConfig({
  modules: [
    '@pinia/nuxt',
    '@vee-validate/nuxt',
    'dayjs-nuxt'
  ],
  ssr: false,
  dayjs: { locales: ['en'],
    defaultLocale: 'en',
    defaultTimezone: 'America/Los_Angeles',
    plugins: ['utc', 'timezone', 'relativeTime'],
  },
  veeValidate: {
    autoImports: true,
    componentNames: {
      Form: 'VeeForm',
      Field: 'VeeField',
      ErrorMessage: 'VeeErrorMessage',
      FieldArray: 'VeeFieldArray'
    }
  },
  build: {
    transpile: ['vuetify','@vuepic/vue-datepicker'],
  },
  app: {
    head: {
      title: 'ProU Course Registration',
      link: [
        {rel: 'icon', type: 'image/x-icon', href: '/favicon.ico'},
        {
          rel: "stylesheet",
          href: "https://use.typekit.net/ahf2jsh.css"
        }
      ]
    }
  },
  css: [
      '~/assets/css/styles.css',
  ],
  runtimeConfig: {
    ADMIN_D7_USERNAME: process.env.VUE_APP_D7_USERNAME,
    ADMIN_D7_PW: process.env.VUE_APP_D7_PW,
    BT_API_PRIV: process.env.BT_API_PRIV, // Server-side only
    public: {
      ADMIN_API: process.env.VUE_APP_API_URL,
      BASIC_AUTH: Buffer.from(`${process.env.VUE_APP_D7_USERNAME}:${process.env.VUE_APP_D7_PW}`).toString('base64'),
      COURSE_BASE: process.env.VUE_APP_COURSES_URL,
      CLASSROOM_URL: process.env.VUE_APP_CLASSROOM_URL,
      BT_TOKEN: process.env.BT_TOKEN,
      BT_MERCHANT_ID: process.env.BT_MERCHANT_ID,
      BT_API_PUB: process.env.BT_API_PUB,
      PU_BT_API_URL: process.env.PU_BT_API_URL,
    }
  },
  compatibilityDate: '2024-04-03',
  devtools: { enabled: true },
  vite: {
    server: {
      allowedHosts: [
        "bakka"
      ]
    }
  }
})
