@dargmuesli/nuxt-vio 12.1.0 → 13.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.config/certificates/mkcert.sh +30 -0
 - package/nuxt.config.ts +7 -1
 - package/package.json +6 -25
 - package/utils/constants.ts +0 -37
 - package/utils/nuxt.ts +39 -0
 - package/playwright.config.ts +0 -99
 
| 
         @@ -0,0 +1,30 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            #!/bin/sh
         
     | 
| 
      
 2 
     | 
    
         
            +
            THIS=$(dirname "$(readlink -f "$0")")
         
     | 
| 
      
 3 
     | 
    
         
            +
             
     | 
| 
      
 4 
     | 
    
         
            +
            create() {
         
     | 
| 
      
 5 
     | 
    
         
            +
                NAME="$1"
         
     | 
| 
      
 6 
     | 
    
         
            +
                shift
         
     | 
| 
      
 7 
     | 
    
         
            +
                CONTENT=$*
         
     | 
| 
      
 8 
     | 
    
         
            +
             
     | 
| 
      
 9 
     | 
    
         
            +
                path="$THIS/$NAME"
         
     | 
| 
      
 10 
     | 
    
         
            +
                certfile="$path.crt"
         
     | 
| 
      
 11 
     | 
    
         
            +
                keyfile="$path.key"
         
     | 
| 
      
 12 
     | 
    
         
            +
             
     | 
| 
      
 13 
     | 
    
         
            +
                if [ "$CONTENT" != "" ]; then
         
     | 
| 
      
 14 
     | 
    
         
            +
                    # shellcheck disable=SC2086
         
     | 
| 
      
 15 
     | 
    
         
            +
                    mkcert \
         
     | 
| 
      
 16 
     | 
    
         
            +
                        -cert-file "$certfile" \
         
     | 
| 
      
 17 
     | 
    
         
            +
                        -ecdsa \
         
     | 
| 
      
 18 
     | 
    
         
            +
                        -key-file "$keyfile" $CONTENT
         
     | 
| 
      
 19 
     | 
    
         
            +
                fi
         
     | 
| 
      
 20 
     | 
    
         
            +
             
     | 
| 
      
 21 
     | 
    
         
            +
                cat "$(mkcert -CAROOT)/rootCA.pem" >> "$certfile"
         
     | 
| 
      
 22 
     | 
    
         
            +
            }
         
     | 
| 
      
 23 
     | 
    
         
            +
             
     | 
| 
      
 24 
     | 
    
         
            +
            echo "key crt" | tr ' ' '\n' | while read -r glob; do
         
     | 
| 
      
 25 
     | 
    
         
            +
                if test -n "$(find "$THIS" -maxdepth 1 -name "*.$glob" -print -quit)"; then
         
     | 
| 
      
 26 
     | 
    
         
            +
                    rm "$THIS"/*."$glob"
         
     | 
| 
      
 27 
     | 
    
         
            +
                fi
         
     | 
| 
      
 28 
     | 
    
         
            +
            done
         
     | 
| 
      
 29 
     | 
    
         
            +
             
     | 
| 
      
 30 
     | 
    
         
            +
            create "ssl" "localhost" "127.0.0.1" "0.0.0.0"
         
     | 
    
        package/nuxt.config.ts
    CHANGED
    
    | 
         @@ -8,9 +8,9 @@ import { 
     | 
|
| 
       8 
8 
     | 
    
         
             
              SITE_NAME,
         
     | 
| 
       9 
9 
     | 
    
         
             
              TIMEZONE_COOKIE_NAME,
         
     | 
| 
       10 
10 
     | 
    
         
             
              GTAG_COOKIE_ID,
         
     | 
| 
       11 
     | 
    
         
            -
              VIO_NUXT_BASE_CONFIG,
         
     | 
| 
       12 
11 
     | 
    
         
             
              GET_CSP,
         
     | 
| 
       13 
12 
     | 
    
         
             
            } from './utils/constants'
         
     | 
| 
      
 13 
     | 
    
         
            +
            import { VIO_NUXT_BASE_CONFIG } from './utils/nuxt'
         
     | 
| 
       14 
14 
     | 
    
         | 
| 
       15 
15 
     | 
    
         
             
            const currentDir = dirname(fileURLToPath(import.meta.url))
         
     | 
| 
       16 
16 
     | 
    
         | 
| 
         @@ -29,6 +29,12 @@ export default defineNuxtConfig( 
     | 
|
| 
       29 
29 
     | 
    
         
             
                      name: 'layout',
         
     | 
| 
       30 
30 
     | 
    
         
             
                    },
         
     | 
| 
       31 
31 
     | 
    
         
             
                  },
         
     | 
| 
      
 32 
     | 
    
         
            +
                  devServer: {
         
     | 
| 
      
 33 
     | 
    
         
            +
                    https: {
         
     | 
| 
      
 34 
     | 
    
         
            +
                      key: './.config/certificates/ssl.key',
         
     | 
| 
      
 35 
     | 
    
         
            +
                      cert: './.config/certificates/ssl.crt',
         
     | 
| 
      
 36 
     | 
    
         
            +
                    },
         
     | 
| 
      
 37 
     | 
    
         
            +
                  },
         
     | 
| 
       32 
38 
     | 
    
         
             
                  devtools: {
         
     | 
| 
       33 
39 
     | 
    
         
             
                    timeline: {
         
     | 
| 
       34 
40 
     | 
    
         
             
                      enabled: true,
         
     | 
    
        package/package.json
    CHANGED
    
    | 
         @@ -1,6 +1,6 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            {
         
     | 
| 
       2 
2 
     | 
    
         
             
              "name": "@dargmuesli/nuxt-vio",
         
     | 
| 
       3 
     | 
    
         
            -
              "version": " 
     | 
| 
      
 3 
     | 
    
         
            +
              "version": "13.0.0",
         
     | 
| 
       4 
4 
     | 
    
         
             
              "repository": {
         
     | 
| 
       5 
5 
     | 
    
         
             
                "type": "git",
         
     | 
| 
       6 
6 
     | 
    
         
             
                "url": "git+https://github.com/dargmuesli/vio.git"
         
     | 
| 
         @@ -66,11 +66,10 @@ 
     | 
|
| 
       66 
66 
     | 
    
         
             
                "jose": "5.4.0",
         
     | 
| 
       67 
67 
     | 
    
         
             
                "nuxt-gtag": "2.0.6",
         
     | 
| 
       68 
68 
     | 
    
         
             
                "nuxt-security": "1.4.3",
         
     | 
| 
       69 
     | 
    
         
            -
                "sweetalert2": "11.11.1"
         
     | 
| 
      
 69 
     | 
    
         
            +
                "sweetalert2": "11.11.1",
         
     | 
| 
      
 70 
     | 
    
         
            +
                "vue-tsc": "2.0.21"
         
     | 
| 
       70 
71 
     | 
    
         
             
              },
         
     | 
| 
       71 
72 
     | 
    
         
             
              "devDependencies": {
         
     | 
| 
       72 
     | 
    
         
            -
                "@axe-core/playwright": "4.9.1",
         
     | 
| 
       73 
     | 
    
         
            -
                "@playwright/test": "1.44.1",
         
     | 
| 
       74 
73 
     | 
    
         
             
                "@unhead/vue": "1.9.13",
         
     | 
| 
       75 
74 
     | 
    
         
             
                "@urql/devtools": "2.0.3",
         
     | 
| 
       76 
75 
     | 
    
         
             
                "@urql/exchange-graphcache": "7.1.1",
         
     | 
| 
         @@ -94,15 +93,12 @@ 
     | 
|
| 
       94 
93 
     | 
    
         
             
                "stylelint-config-standard": "36.0.0",
         
     | 
| 
       95 
94 
     | 
    
         
             
                "stylelint-no-unsupported-browser-features": "8.0.1",
         
     | 
| 
       96 
95 
     | 
    
         
             
                "tailwindcss": "3.4.4",
         
     | 
| 
       97 
     | 
    
         
            -
                "ufo": "1.5.3",
         
     | 
| 
       98 
96 
     | 
    
         
             
                "unhead": "1.9.13",
         
     | 
| 
       99 
97 
     | 
    
         
             
                "vue": "3.4.29",
         
     | 
| 
       100 
     | 
    
         
            -
                "vue-router": "4.3.3" 
     | 
| 
       101 
     | 
    
         
            -
                "vue-tsc": "2.0.21"
         
     | 
| 
      
 98 
     | 
    
         
            +
                "vue-router": "4.3.3"
         
     | 
| 
       102 
99 
     | 
    
         
             
              },
         
     | 
| 
       103 
100 
     | 
    
         
             
              "peerDependencies": {
         
     | 
| 
       104 
101 
     | 
    
         
             
                "nuxt": "3.12.2",
         
     | 
| 
       105 
     | 
    
         
            -
                "playwright-core": "1.44.1",
         
     | 
| 
       106 
102 
     | 
    
         
             
                "vue": "3.4.29",
         
     | 
| 
       107 
103 
     | 
    
         
             
                "vue-router": "4.3.3"
         
     | 
| 
       108 
104 
     | 
    
         
             
              },
         
     | 
| 
         @@ -110,7 +106,6 @@ 
     | 
|
| 
       110 
106 
     | 
    
         
             
                "build": "pnpm run build:node",
         
     | 
| 
       111 
107 
     | 
    
         
             
                "build:node": "nuxt build .playground",
         
     | 
| 
       112 
108 
     | 
    
         
             
                "build:static": "nuxt generate .playground",
         
     | 
| 
       113 
     | 
    
         
            -
                "build:static:test": "cross-env NODE_ENV=production SITE_URL=http://localhost:3002 pnpm run build:static",
         
     | 
| 
       114 
109 
     | 
    
         
             
                "dev": "pnpm run start:dev",
         
     | 
| 
       115 
110 
     | 
    
         
             
                "generate": "pnpm run build:static",
         
     | 
| 
       116 
111 
     | 
    
         
             
                "lint:fix": "pnpm run lint:js --fix && pnpm run lint:ts --fix && pnpm run lint:style --fix",
         
     | 
| 
         @@ -119,24 +114,10 @@ 
     | 
|
| 
       119 
114 
     | 
    
         
             
                "lint:style": "stylelint --cache \"**/*.{vue,css}\" --ignore-path .gitignore",
         
     | 
| 
       120 
115 
     | 
    
         
             
                "lint:ts": "nuxt typecheck",
         
     | 
| 
       121 
116 
     | 
    
         
             
                "lint": "pnpm run lint:js && pnpm run lint:ts && pnpm run lint:style",
         
     | 
| 
       122 
     | 
    
         
            -
                "prepare": "nuxt prepare && nuxt prepare .playground",
         
     | 
| 
      
 117 
     | 
    
         
            +
                "prepare": "nuxt prepare && nuxt prepare .playground && ./.config/certificates/mkcert.sh",
         
     | 
| 
       123 
118 
     | 
    
         
             
                "preview": "nuxt preview .playground",
         
     | 
| 
       124 
119 
     | 
    
         
             
                "start:dev": "nuxt dev .playground",
         
     | 
| 
       125 
120 
     | 
    
         
             
                "start:node": "node .playground/.output/server/index.mjs",
         
     | 
| 
       126 
     | 
    
         
            -
                "start:static": "serve .playground/.output/public" 
     | 
| 
       127 
     | 
    
         
            -
                "start:static:test": "cross-env PORT=3002 pnpm run start:static",
         
     | 
| 
       128 
     | 
    
         
            -
                "test:e2e:docker:br": "pnpm run test:e2e:docker:build && pnpm run test:e2e:docker:run",
         
     | 
| 
       129 
     | 
    
         
            -
                "test:e2e:docker:build": "docker build -t test-e2e_development --build-arg UID=$(id -u) --build-arg GID=$(id -g) --target test-e2e_development ..",
         
     | 
| 
       130 
     | 
    
         
            -
                "test:e2e:docker:run": "docker run --rm -v \"$PWD/..:/srv/app\" -v \"$(pnpm store path):/srv/.pnpm-store\" test-e2e_development",
         
     | 
| 
       131 
     | 
    
         
            -
                "test:e2e:docker:server:dev:update": "pnpm run test:e2e:docker:server:dev --update-snapshots",
         
     | 
| 
       132 
     | 
    
         
            -
                "test:e2e:docker:server:dev": "pnpm run test:e2e:docker:br pnpm --dir src run test:e2e:server:dev",
         
     | 
| 
       133 
     | 
    
         
            -
                "test:e2e:docker:server:node:update": "pnpm run test:e2e:docker:server:node --update-snapshots",
         
     | 
| 
       134 
     | 
    
         
            -
                "test:e2e:docker:server:node": "pnpm run test:e2e:docker:br pnpm --dir src run test:e2e:server:node",
         
     | 
| 
       135 
     | 
    
         
            -
                "test:e2e:docker:server:static:update": "pnpm run test:e2e:docker:server:static --update-snapshots",
         
     | 
| 
       136 
     | 
    
         
            -
                "test:e2e:docker:server:static": "pnpm run test:e2e:docker:br pnpm --dir src run test:e2e:server:static",
         
     | 
| 
       137 
     | 
    
         
            -
                "test:e2e:server:dev": "cross-env PORT=3000 SITE_URL=http://localhost:3000 VIO_SERVER=dev pnpm run test:e2e",
         
     | 
| 
       138 
     | 
    
         
            -
                "test:e2e:server:node": "cross-env NODE_ENV=production NUXT_PUBLIC_I18N_BASE_URL=http://localhost:3001 NUXT_PUBLIC_SITE_URL=http://localhost:3001 PORT=3001 VIO_SERVER=node pnpm run test:e2e",
         
     | 
| 
       139 
     | 
    
         
            -
                "test:e2e:server:static": "cross-env NODE_ENV=production PORT=3002 SITE_URL=http://localhost:3002 VIO_SERVER=static pnpm run test:e2e",
         
     | 
| 
       140 
     | 
    
         
            -
                "test:e2e": "playwright test"
         
     | 
| 
      
 121 
     | 
    
         
            +
                "start:static": "serve .playground/.output/public --ssl-cert ./.config/certificates/ssl.crt --ssl-key ./.config/certificates/ssl.key"
         
     | 
| 
       141 
122 
     | 
    
         
             
              }
         
     | 
| 
       142 
123 
     | 
    
         
             
            }
         
     | 
    
        package/utils/constants.ts
    CHANGED
    
    | 
         @@ -166,40 +166,3 @@ export const TITLE_TEMPLATE = ({ 
     | 
|
| 
       166 
166 
     | 
    
         
             
              title?: string | null
         
     | 
| 
       167 
167 
     | 
    
         
             
            }) => (title && title !== siteName ? `${title} · ${siteName}` : siteName)
         
     | 
| 
       168 
168 
     | 
    
         
             
            export const VERIFICATION_FORMAT_UUID = helpers.regex(REGEX_UUID)
         
     | 
| 
       169 
     | 
    
         
            -
            export const VIO_NUXT_BASE_CONFIG = ({
         
     | 
| 
       170 
     | 
    
         
            -
              siteName,
         
     | 
| 
       171 
     | 
    
         
            -
              stagingHost,
         
     | 
| 
       172 
     | 
    
         
            -
            }: {
         
     | 
| 
       173 
     | 
    
         
            -
              siteName: string
         
     | 
| 
       174 
     | 
    
         
            -
              stagingHost?: string
         
     | 
| 
       175 
     | 
    
         
            -
            }) =>
         
     | 
| 
       176 
     | 
    
         
            -
              ({
         
     | 
| 
       177 
     | 
    
         
            -
                app: {
         
     | 
| 
       178 
     | 
    
         
            -
                  head: {
         
     | 
| 
       179 
     | 
    
         
            -
                    title: siteName, // fallback data to prevent invalid html at generation
         
     | 
| 
       180 
     | 
    
         
            -
                  },
         
     | 
| 
       181 
     | 
    
         
            -
                },
         
     | 
| 
       182 
     | 
    
         
            -
                runtimeConfig: {
         
     | 
| 
       183 
     | 
    
         
            -
                  public: {
         
     | 
| 
       184 
     | 
    
         
            -
                    vio: {
         
     | 
| 
       185 
     | 
    
         
            -
                      ...(stagingHost
         
     | 
| 
       186 
     | 
    
         
            -
                        ? {
         
     | 
| 
       187 
     | 
    
         
            -
                            stagingHost:
         
     | 
| 
       188 
     | 
    
         
            -
                              process.env.NODE_ENV !== 'production' &&
         
     | 
| 
       189 
     | 
    
         
            -
                              !process.env.NUXT_PUBLIC_SITE_URL
         
     | 
| 
       190 
     | 
    
         
            -
                                ? stagingHost
         
     | 
| 
       191 
     | 
    
         
            -
                                : undefined,
         
     | 
| 
       192 
     | 
    
         
            -
                          }
         
     | 
| 
       193 
     | 
    
         
            -
                        : {}),
         
     | 
| 
       194 
     | 
    
         
            -
                    },
         
     | 
| 
       195 
     | 
    
         
            -
                  },
         
     | 
| 
       196 
     | 
    
         
            -
                },
         
     | 
| 
       197 
     | 
    
         
            -
             
     | 
| 
       198 
     | 
    
         
            -
                // modules
         
     | 
| 
       199 
     | 
    
         
            -
                i18n: {
         
     | 
| 
       200 
     | 
    
         
            -
                  ...I18N_MODULE_CONFIG, // `langDir`, `lazy` and `locales` must be configured to extend a layer having lazy-loaded translations (https://v8.i18n.nuxtjs.org/guide/layers#locales)
         
     | 
| 
       201 
     | 
    
         
            -
                },
         
     | 
| 
       202 
     | 
    
         
            -
                site: {
         
     | 
| 
       203 
     | 
    
         
            -
                  name: siteName,
         
     | 
| 
       204 
     | 
    
         
            -
                },
         
     | 
| 
       205 
     | 
    
         
            -
              }) as Parameters<typeof defineNuxtConfig>[0]
         
     | 
    
        package/utils/nuxt.ts
    ADDED
    
    | 
         @@ -0,0 +1,39 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            import { I18N_MODULE_CONFIG } from './constants'
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            export const VIO_NUXT_BASE_CONFIG = ({
         
     | 
| 
      
 4 
     | 
    
         
            +
              siteName,
         
     | 
| 
      
 5 
     | 
    
         
            +
              stagingHost,
         
     | 
| 
      
 6 
     | 
    
         
            +
            }: {
         
     | 
| 
      
 7 
     | 
    
         
            +
              siteName: string
         
     | 
| 
      
 8 
     | 
    
         
            +
              stagingHost?: string
         
     | 
| 
      
 9 
     | 
    
         
            +
            }) =>
         
     | 
| 
      
 10 
     | 
    
         
            +
              ({
         
     | 
| 
      
 11 
     | 
    
         
            +
                app: {
         
     | 
| 
      
 12 
     | 
    
         
            +
                  head: {
         
     | 
| 
      
 13 
     | 
    
         
            +
                    title: siteName, // fallback data to prevent invalid html at generation
         
     | 
| 
      
 14 
     | 
    
         
            +
                  },
         
     | 
| 
      
 15 
     | 
    
         
            +
                },
         
     | 
| 
      
 16 
     | 
    
         
            +
                runtimeConfig: {
         
     | 
| 
      
 17 
     | 
    
         
            +
                  public: {
         
     | 
| 
      
 18 
     | 
    
         
            +
                    vio: {
         
     | 
| 
      
 19 
     | 
    
         
            +
                      ...(stagingHost
         
     | 
| 
      
 20 
     | 
    
         
            +
                        ? {
         
     | 
| 
      
 21 
     | 
    
         
            +
                            stagingHost:
         
     | 
| 
      
 22 
     | 
    
         
            +
                              process.env.NODE_ENV !== 'production' &&
         
     | 
| 
      
 23 
     | 
    
         
            +
                              !process.env.NUXT_PUBLIC_SITE_URL
         
     | 
| 
      
 24 
     | 
    
         
            +
                                ? stagingHost
         
     | 
| 
      
 25 
     | 
    
         
            +
                                : undefined,
         
     | 
| 
      
 26 
     | 
    
         
            +
                          }
         
     | 
| 
      
 27 
     | 
    
         
            +
                        : {}),
         
     | 
| 
      
 28 
     | 
    
         
            +
                    },
         
     | 
| 
      
 29 
     | 
    
         
            +
                  },
         
     | 
| 
      
 30 
     | 
    
         
            +
                },
         
     | 
| 
      
 31 
     | 
    
         
            +
             
     | 
| 
      
 32 
     | 
    
         
            +
                // modules
         
     | 
| 
      
 33 
     | 
    
         
            +
                i18n: {
         
     | 
| 
      
 34 
     | 
    
         
            +
                  ...I18N_MODULE_CONFIG, // `langDir`, `lazy` and `locales` must be configured to extend a layer having lazy-loaded translations (https://v8.i18n.nuxtjs.org/guide/layers#locales)
         
     | 
| 
      
 35 
     | 
    
         
            +
                },
         
     | 
| 
      
 36 
     | 
    
         
            +
                site: {
         
     | 
| 
      
 37 
     | 
    
         
            +
                  name: siteName,
         
     | 
| 
      
 38 
     | 
    
         
            +
                },
         
     | 
| 
      
 39 
     | 
    
         
            +
              }) as Parameters<typeof defineNuxtConfig>[0]
         
     | 
    
        package/playwright.config.ts
    DELETED
    
    | 
         @@ -1,99 +0,0 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            import { defineConfig, devices } from '@playwright/test'
         
     | 
| 
       2 
     | 
    
         
            -
            import { SITE_URL } from './utils/constants'
         
     | 
| 
       3 
     | 
    
         
            -
             
     | 
| 
       4 
     | 
    
         
            -
            /**
         
     | 
| 
       5 
     | 
    
         
            -
             * Read environment variables from file.
         
     | 
| 
       6 
     | 
    
         
            -
             * https://github.com/motdotla/dotenv
         
     | 
| 
       7 
     | 
    
         
            -
             */
         
     | 
| 
       8 
     | 
    
         
            -
            // require('dotenv').config();
         
     | 
| 
       9 
     | 
    
         
            -
             
     | 
| 
       10 
     | 
    
         
            -
            /**
         
     | 
| 
       11 
     | 
    
         
            -
             * See https://playwright.dev/docs/test-configuration.
         
     | 
| 
       12 
     | 
    
         
            -
             */
         
     | 
| 
       13 
     | 
    
         
            -
            export default defineConfig({
         
     | 
| 
       14 
     | 
    
         
            -
              expect: {
         
     | 
| 
       15 
     | 
    
         
            -
                toHaveScreenshot: {
         
     | 
| 
       16 
     | 
    
         
            -
                  maxDiffPixelRatio: 0.01,
         
     | 
| 
       17 
     | 
    
         
            -
                },
         
     | 
| 
       18 
     | 
    
         
            -
              },
         
     | 
| 
       19 
     | 
    
         
            -
             
     | 
| 
       20 
     | 
    
         
            -
              /* Fail the build on CI if you accidentally left test.only in the source code. */
         
     | 
| 
       21 
     | 
    
         
            -
              forbidOnly: !!process.env.CI,
         
     | 
| 
       22 
     | 
    
         
            -
             
     | 
| 
       23 
     | 
    
         
            -
              /* Run tests in files in parallel */
         
     | 
| 
       24 
     | 
    
         
            -
              fullyParallel: true,
         
     | 
| 
       25 
     | 
    
         
            -
             
     | 
| 
       26 
     | 
    
         
            -
              outputDir: 'tests/e2e/results',
         
     | 
| 
       27 
     | 
    
         
            -
             
     | 
| 
       28 
     | 
    
         
            -
              /* Configure projects for major browsers */
         
     | 
| 
       29 
     | 
    
         
            -
              projects: [
         
     | 
| 
       30 
     | 
    
         
            -
                {
         
     | 
| 
       31 
     | 
    
         
            -
                  name: 'chromium',
         
     | 
| 
       32 
     | 
    
         
            -
                  use: { ...devices['Desktop Chrome'] },
         
     | 
| 
       33 
     | 
    
         
            -
                },
         
     | 
| 
       34 
     | 
    
         
            -
             
     | 
| 
       35 
     | 
    
         
            -
                {
         
     | 
| 
       36 
     | 
    
         
            -
                  name: 'firefox',
         
     | 
| 
       37 
     | 
    
         
            -
                  use: { ...devices['Desktop Firefox'] },
         
     | 
| 
       38 
     | 
    
         
            -
                },
         
     | 
| 
       39 
     | 
    
         
            -
             
     | 
| 
       40 
     | 
    
         
            -
                {
         
     | 
| 
       41 
     | 
    
         
            -
                  name: 'webkit',
         
     | 
| 
       42 
     | 
    
         
            -
                  use: { ...devices['Desktop Safari'] },
         
     | 
| 
       43 
     | 
    
         
            -
                },
         
     | 
| 
       44 
     | 
    
         
            -
             
     | 
| 
       45 
     | 
    
         
            -
                /* Test against mobile viewports. */
         
     | 
| 
       46 
     | 
    
         
            -
                // {
         
     | 
| 
       47 
     | 
    
         
            -
                //   name: 'Mobile Chrome',
         
     | 
| 
       48 
     | 
    
         
            -
                //   use: { ...devices['Pixel 5'] },
         
     | 
| 
       49 
     | 
    
         
            -
                // },
         
     | 
| 
       50 
     | 
    
         
            -
                // {
         
     | 
| 
       51 
     | 
    
         
            -
                //   name: 'Mobile Safari',
         
     | 
| 
       52 
     | 
    
         
            -
                //   use: { ...devices['iPhone 12'] },
         
     | 
| 
       53 
     | 
    
         
            -
                // },
         
     | 
| 
       54 
     | 
    
         
            -
             
     | 
| 
       55 
     | 
    
         
            -
                /* Test against branded browsers. */
         
     | 
| 
       56 
     | 
    
         
            -
                // {
         
     | 
| 
       57 
     | 
    
         
            -
                //   name: 'Microsoft Edge',
         
     | 
| 
       58 
     | 
    
         
            -
                //   use: { ...devices['Desktop Edge'], channel: 'msedge' },
         
     | 
| 
       59 
     | 
    
         
            -
                // },
         
     | 
| 
       60 
     | 
    
         
            -
                // {
         
     | 
| 
       61 
     | 
    
         
            -
                //   name: 'Google Chrome',
         
     | 
| 
       62 
     | 
    
         
            -
                //   use: { ..devices['Desktop Chrome'], channel: 'chrome' },
         
     | 
| 
       63 
     | 
    
         
            -
                // },
         
     | 
| 
       64 
     | 
    
         
            -
              ],
         
     | 
| 
       65 
     | 
    
         
            -
             
     | 
| 
       66 
     | 
    
         
            -
              /* Reporter to use. See https://playwright.dev/docs/test-reporters */
         
     | 
| 
       67 
     | 
    
         
            -
              reporter: [['html', { outputFolder: 'tests/e2e/report' }]],
         
     | 
| 
       68 
     | 
    
         
            -
             
     | 
| 
       69 
     | 
    
         
            -
              /* Retry on CI only */
         
     | 
| 
       70 
     | 
    
         
            -
              retries: process.env.CI ? 1 : 0,
         
     | 
| 
       71 
     | 
    
         
            -
             
     | 
| 
       72 
     | 
    
         
            -
              testDir: './tests/e2e/specs',
         
     | 
| 
       73 
     | 
    
         
            -
             
     | 
| 
       74 
     | 
    
         
            -
              /* Shared settings for all the projects below. See https://playwright.dev/docs/api/class-testoptions. */
         
     | 
| 
       75 
     | 
    
         
            -
              use: {
         
     | 
| 
       76 
     | 
    
         
            -
                /* Base URL to use in actions like `await page.goto('/')`. */
         
     | 
| 
       77 
     | 
    
         
            -
                baseURL: SITE_URL,
         
     | 
| 
       78 
     | 
    
         
            -
             
     | 
| 
       79 
     | 
    
         
            -
                // TODO: remove once tests run without it
         
     | 
| 
       80 
     | 
    
         
            -
                ignoreHTTPSErrors: true,
         
     | 
| 
       81 
     | 
    
         
            -
             
     | 
| 
       82 
     | 
    
         
            -
                /* Collect trace when retrying the failed test. See https://playwright.dev/docs/trace-viewer */
         
     | 
| 
       83 
     | 
    
         
            -
                trace: 'on-first-retry',
         
     | 
| 
       84 
     | 
    
         
            -
              },
         
     | 
| 
       85 
     | 
    
         
            -
             
     | 
| 
       86 
     | 
    
         
            -
              /* Run your local dev server before starting the tests */
         
     | 
| 
       87 
     | 
    
         
            -
              webServer: {
         
     | 
| 
       88 
     | 
    
         
            -
                command: `pnpm run start:${process.env.VIO_SERVER || 'dev'}`,
         
     | 
| 
       89 
     | 
    
         
            -
                env: {
         
     | 
| 
       90 
     | 
    
         
            -
                  NUXT_PUBLIC_VIO_IS_TESTING: 'true',
         
     | 
| 
       91 
     | 
    
         
            -
                },
         
     | 
| 
       92 
     | 
    
         
            -
                ignoreHTTPSErrors: true, // TODO: remove once tests run without it
         
     | 
| 
       93 
     | 
    
         
            -
                timeout: process.env.NODE_ENV === 'production' ? 10000 : 100000,
         
     | 
| 
       94 
     | 
    
         
            -
                url: SITE_URL,
         
     | 
| 
       95 
     | 
    
         
            -
                reuseExistingServer: !process.env.CI,
         
     | 
| 
       96 
     | 
    
         
            -
              },
         
     | 
| 
       97 
     | 
    
         
            -
             
     | 
| 
       98 
     | 
    
         
            -
              workers: undefined,
         
     | 
| 
       99 
     | 
    
         
            -
            })
         
     |