Skip to content

Commit

Permalink
feat: detect more modules
Browse files Browse the repository at this point in the history
  • Loading branch information
atinux committed Apr 6, 2024
1 parent 71bc38e commit c81e1e1
Show file tree
Hide file tree
Showing 4 changed files with 67 additions and 12 deletions.
9 changes: 8 additions & 1 deletion bin/vta.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,19 @@
import ora from 'ora'
import consola from 'consola'
import { defineCommand, runMain } from 'citty'
import { fileURLToPath } from 'url'
import { dirname, resolve } from 'path'
import { analyze } from '../src/index.mjs'
import { loadJsonFileSync } from 'load-json-file'

const __dirname = dirname(fileURLToPath(import.meta.url))
const pkg = loadJsonFileSync(resolve(__dirname, '../package.json'))

const main = defineCommand({
meta: {
name: 'vta',
description: 'Vue Telescope Analyzer'
description: 'Vue Telescope Analyzer',
version: pkg.version
},
args: {
url: {
Expand Down
41 changes: 38 additions & 3 deletions detectors/nuxt.modules.json
Original file line number Diff line number Diff line change
Expand Up @@ -301,7 +301,7 @@
"slug": "nuxt-content",
"name": "@nuxt/content",
"imgPath": null,
"url": "https://content.nuxtjs.org"
"url": "https://content.nuxt.com"
},
"detectors": {
"js": "window.$nuxt?.$options?.context?.app?.$content || window.__NUXT__?.config?.public?.content"
Expand Down Expand Up @@ -378,14 +378,16 @@
"slug": "nuxt-image",
"name": "@nuxt/image",
"imgPath": null,
"url": "https://image.nuxtjs.org"
"url": "https://image.nuxt.com"
},
"detectors": {
"html": "data-nuxt-img",
"js": [
"window.$nuxt?.$img",
"window.__NUXT__?.config?.public?.image",
"window.__unctx__?.get('nuxt-app')?.use()?.$img",
"[...document.querySelectorAll('*')].map((el) => el.__vue_app__?.config?.globalProperties?.$img).filter(Boolean).length"
"[...document.querySelectorAll('*')].map((el) => el.__vue_app__?.config?.globalProperties?.$img).filter(Boolean).length",
"useNuxtApp?.()._img"
]
}
},
Expand Down Expand Up @@ -509,5 +511,38 @@
"detectors": {
"js": "useNuxtApp?.()._appConfig?.ui?.variables || window.__unctx__?.get('nuxt-app')?.use()._appConfig?.ui?.variables"
}
},
"nuxt-mdc": {
"metas": {
"slug": "nuxt-mdc",
"name": "@nuxtjs/mdc",
"imgPath": null,
"url": "https://github.com/nuxt-modules/mdc"
},
"detectors": {
"js": "useNuxtApp?.().payload?.config?.public?.mdc || window.__unctx__?.get('nuxt-app')?.use().payload?.config?.public?.mdc"
}
},
"nuxt-studio": {
"metas": {
"slug": "nuxt-studio",
"name": "@nuxthq/studio",
"imgPath": null,
"url": "https://nuxt.studio"
},
"detectors": {
"js": "useNuxtApp?.().payload?.config?.public?.studio || window.__unctx__?.get('nuxt-app')?.use().payload?.config?.public?.studio"
}
},
"nuxt-plausible": {
"metas": {
"slug": "nuxt-plausible",
"name": "@nuxtjs/plausible",
"imgPath": null,
"url": "https://github.com/nuxt-modules/plausible"
},
"detectors": {
"js": "useNuxtApp?.().payload?.config?.public?.plausible || window.__unctx__?.get('nuxt-app')?.use().payload?.config?.public?.plausible"
}
}
}
8 changes: 8 additions & 0 deletions pnpm-lock.yaml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

21 changes: 13 additions & 8 deletions src/detectors.mjs
Original file line number Diff line number Diff line change
@@ -1,12 +1,17 @@
import { parsePatterns, asArray } from './utils.mjs'

import vue from '../detectors/vue.json' assert { type: 'json' }
import vueMeta from '../detectors/vue.meta.json' assert { type: 'json' }
import frameworks from '../detectors/frameworks.json' assert { type: 'json' }
import plugins from '../detectors/plugins.json' assert { type: 'json' }
import uis from '../detectors/uis.json' assert { type: 'json' }
import nuxtMeta from '../detectors/nuxt.meta.json' assert { type: 'json' }
import nuxtModules from '../detectors/nuxt.modules.json' assert { type: 'json' }
import { fileURLToPath } from 'url'
import { dirname, resolve } from 'path'
import { loadJsonFileSync } from 'load-json-file'

const __dirname = dirname(fileURLToPath(import.meta.url))

const vue = loadJsonFileSync(resolve(__dirname, '../detectors/vue.json'))
const vueMeta = loadJsonFileSync(resolve(__dirname, '../detectors/vue.meta.json'))
const frameworks = loadJsonFileSync(resolve(__dirname, '../detectors/frameworks.json'))
const plugins = loadJsonFileSync(resolve(__dirname, '../detectors/plugins.json'))
const uis = loadJsonFileSync(resolve(__dirname, '../detectors/uis.json'))
const nuxtMeta = loadJsonFileSync(resolve(__dirname, '../detectors/nuxt.meta.json'))
const nuxtModules = loadJsonFileSync(resolve(__dirname, '../detectors/nuxt.modules.json'))

const detectors = {
vue,
Expand Down

0 comments on commit c81e1e1

Please sign in to comment.