保誠-保戶業務員媒合平台
Tomas
2023-08-14 7521c6641773e25c2ebefeb228fa8733856a849e
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
export default {
  // Disable server-side rendering: https://go.nuxtjs.dev/ssr-mode
  ssr: false,
 
  // Target: https://go.nuxtjs.dev/config-target
  target: 'static',
 
  // Global page headers: https://go.nuxtjs.dev/config-head
  head: {
    title: '保誠人壽保險顧問媒合平台',
    htmlAttrs: {
      lang: 'en'
    },
    meta: [
      { charset: 'utf-8' },
      { name: 'viewport', content: 'width=device-width, initial-scale=1' },
      { hid: 'description', name: 'description', content: '' },
      { name: 'format-detection', content: 'telephone=no' }
    ],
    link: [
      { rel: 'icon', type: 'image/x-icon', href: '/favicon.ico' }
    ]
  },
  layoutTransition:'pam-fade-in',
  pageTransition:'pam-fade-in',
  // Global CSS: https://go.nuxtjs.dev/config-css
  css: [
    'element-ui/lib/theme-chalk/index.css',
    'swiper/css/swiper.css',
    'vue-scroll-picker/dist/style.css',
    '~/assets/scss/main.scss',
    '~/assets/pam-animation.css'
  ],
  // Plugins to run before rendering page: https://go.nuxtjs.dev/config-plugins
  plugins: [
    '~/plugins/element-ui.js',
    { src: '~/plugins/vue-awesome-swiper.js', mode: 'client' },
    '~/plugins/service.ts',
    '~/plugins/vue-scroll-picker',
    '~/plugins/filters/date.filter.ts',
    '~/plugins/filters/age.filter.ts',
    '~/plugins/filters/consultation-method.filter.ts',
    '~/plugins/filters/appointment-fail-reason.filter.ts',
    '~/plugins/filters/serve-area.filter.ts',
  ],
 
  // Auto import components: https://go.nuxtjs.dev/config-components
  components: true,
  // loading
  loading: '~/components/loading.vue',
 
  // Modules for dev and build (recommended): https://go.nuxtjs.dev/config-modules
  buildModules: [
    // https://go.nuxtjs.dev/typescript
    '@nuxt/typescript-build',
    '@nuxtjs/axios',
    '@nuxtjs/style-resources',
    ['@nuxtjs/dotenv', { filename: '.env.' + process.env.ENV }],
    '@nuxtjs/gtm',
  ],
 
  // Modules: https://go.nuxtjs.dev/config-modules
  // modules: [
  //   '@nuxtjs/gtm',
  // ],
 
  // plugins: [
  //   '~/plugins/gtm'
  //  ],
 
  gtm: {
    enabled: true, /* see below */
    debug: false,
 
    id: process.env.ENV === 'prod'
      ? 'GTM-TFKVGTH'
      : process.env.ENV === 'uat' ? 'GTM-W2XMVJZT' : 'GTM_XXXXXXX',
    layer: 'dataLayer',
    variables: {},
 
    pageTracking: true,
    pageViewEventName: 'nuxtRoute',
 
    autoInit: true,
    respectDoNotTrack: true,
 
    scriptId: 'gtm-script',
    scriptDefer: false,
    scriptURL: 'https://www.googletagmanager.com/gtm.js',
    crossOrigin: false,
 
    noscript: true,
    noscriptId: 'gtm-noscript',
    noscriptURL: 'https://www.googletagmanager.com/ns.html'
  },
 
  publicRuntimeConfig: {
    gtm: {
      id: process.env.GOOGLE_TAG_MANAGER_ID
    }
  },
 
  // Build Configuration: https://go.nuxtjs.dev/config-build
  build: {
  },
  styleResources: {
    scss: [
      '~/assets/scss/main.scss'
    ]
  },
  router: {
    base: process.env.ENV === 'dev' ? '' : '/pam/',
    mode: 'hash',
    middleware: [ 'isLogin', 'getUrlQuery', 'errorRoute']
  }
}