fix: missing dependencies after import
This commit is contained in:
parent
3e74fe7de6
commit
4657fe8ccc
|
|
@ -615,22 +615,22 @@ export const Index = {
|
||||||
name: 'ActivityGoal',
|
name: 'ActivityGoal',
|
||||||
type: 'components:example',
|
type: 'components:example',
|
||||||
registryDependencies: ['button', 'card', 'themes', 'config'],
|
registryDependencies: ['button', 'card', 'themes', 'config'],
|
||||||
component: () => import('../src/lib/registry/default/example/Cards/ActivityGoal.vue').then(m => m.default),
|
component: () => import('../src/lib/registry/default/example/ActivityGoal.vue').then(m => m.default),
|
||||||
files: ['../src/lib/registry/default/example/Cards/ActivityGoal.vue'],
|
files: ['../src/lib/registry/default/example/ActivityGoal.vue'],
|
||||||
},
|
},
|
||||||
DataTable: {
|
DataTable: {
|
||||||
name: 'DataTable',
|
name: 'DataTable',
|
||||||
type: 'components:example',
|
type: 'components:example',
|
||||||
registryDependencies: ['button', 'checkbox', 'dropdown-menu', 'input', 'table', 'card', 'utils'],
|
registryDependencies: ['button', 'checkbox', 'dropdown-menu', 'input', 'table', 'card', 'utils'],
|
||||||
component: () => import('../src/lib/registry/default/example/Cards/DataTable.vue').then(m => m.default),
|
component: () => import('../src/lib/registry/default/example/DataTable.vue').then(m => m.default),
|
||||||
files: ['../src/lib/registry/default/example/Cards/DataTable.vue'],
|
files: ['../src/lib/registry/default/example/DataTable.vue'],
|
||||||
},
|
},
|
||||||
Metric: {
|
Metric: {
|
||||||
name: 'Metric',
|
name: 'Metric',
|
||||||
type: 'components:example',
|
type: 'components:example',
|
||||||
registryDependencies: ['card', 'config'],
|
registryDependencies: ['card', 'config'],
|
||||||
component: () => import('../src/lib/registry/default/example/Cards/Metric.vue').then(m => m.default),
|
component: () => import('../src/lib/registry/default/example/Metric.vue').then(m => m.default),
|
||||||
files: ['../src/lib/registry/default/example/Cards/Metric.vue'],
|
files: ['../src/lib/registry/default/example/Metric.vue'],
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
'new-york': {
|
'new-york': {
|
||||||
|
|
@ -1247,22 +1247,22 @@ export const Index = {
|
||||||
name: 'ActivityGoal',
|
name: 'ActivityGoal',
|
||||||
type: 'components:example',
|
type: 'components:example',
|
||||||
registryDependencies: ['button', 'card', 'themes', 'config'],
|
registryDependencies: ['button', 'card', 'themes', 'config'],
|
||||||
component: () => import('../src/lib/registry/new-york/example/Cards/ActivityGoal.vue').then(m => m.default),
|
component: () => import('../src/lib/registry/new-york/example/ActivityGoal.vue').then(m => m.default),
|
||||||
files: ['../src/lib/registry/new-york/example/Cards/ActivityGoal.vue'],
|
files: ['../src/lib/registry/new-york/example/ActivityGoal.vue'],
|
||||||
},
|
},
|
||||||
DataTable: {
|
DataTable: {
|
||||||
name: 'DataTable',
|
name: 'DataTable',
|
||||||
type: 'components:example',
|
type: 'components:example',
|
||||||
registryDependencies: ['button', 'checkbox', 'dropdown-menu', 'input', 'table', 'card', 'utils'],
|
registryDependencies: ['button', 'checkbox', 'dropdown-menu', 'input', 'table', 'card', 'utils'],
|
||||||
component: () => import('../src/lib/registry/new-york/example/Cards/DataTable.vue').then(m => m.default),
|
component: () => import('../src/lib/registry/new-york/example/DataTable.vue').then(m => m.default),
|
||||||
files: ['../src/lib/registry/new-york/example/Cards/DataTable.vue'],
|
files: ['../src/lib/registry/new-york/example/DataTable.vue'],
|
||||||
},
|
},
|
||||||
Metric: {
|
Metric: {
|
||||||
name: 'Metric',
|
name: 'Metric',
|
||||||
type: 'components:example',
|
type: 'components:example',
|
||||||
registryDependencies: ['card', 'config'],
|
registryDependencies: ['card', 'config'],
|
||||||
component: () => import('../src/lib/registry/new-york/example/Cards/Metric.vue').then(m => m.default),
|
component: () => import('../src/lib/registry/new-york/example/Metric.vue').then(m => m.default),
|
||||||
files: ['../src/lib/registry/new-york/example/Cards/Metric.vue'],
|
files: ['../src/lib/registry/new-york/example/Metric.vue'],
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -6,10 +6,15 @@ import type { Registry } from '../../lib/registry'
|
||||||
|
|
||||||
const DEPENDENCIES = new Map<string, string[]>([
|
const DEPENDENCIES = new Map<string, string[]>([
|
||||||
['radix-vue', []],
|
['radix-vue', []],
|
||||||
|
['@vueuse/core', []],
|
||||||
['v-calendar', []],
|
['v-calendar', []],
|
||||||
['@tanstack/vue-table', []],
|
['@tanstack/vue-table', []],
|
||||||
['vee-validate', ['@vee-validate/zod', 'zod']],
|
['vee-validate', ['@vee-validate/zod', 'zod']],
|
||||||
])
|
])
|
||||||
|
// Some dependencies latest tag were not compatible with Vue3.
|
||||||
|
const DEPENDENCIES_WITH_TAGS = new Map<string, string>([
|
||||||
|
['v-calendar', 'v-calendar@next'],
|
||||||
|
])
|
||||||
const REGISTRY_DEPENDENCY = '@/'
|
const REGISTRY_DEPENDENCY = '@/'
|
||||||
|
|
||||||
type ArrayItem<T> = T extends Array<infer X> ? X : never
|
type ArrayItem<T> = T extends Array<infer X> ? X : never
|
||||||
|
|
@ -139,7 +144,11 @@ async function getDependencies(filename: string) {
|
||||||
Object.values(compiled.imports!).forEach((value) => {
|
Object.values(compiled.imports!).forEach((value) => {
|
||||||
const source = value.source
|
const source = value.source
|
||||||
const peerDeps = DEPENDENCIES.get(source)
|
const peerDeps = DEPENDENCIES.get(source)
|
||||||
|
const taggedDeps = DEPENDENCIES_WITH_TAGS.get(source)
|
||||||
if (peerDeps !== undefined) {
|
if (peerDeps !== undefined) {
|
||||||
|
if (taggedDeps !== undefined)
|
||||||
|
dependencies.add(taggedDeps)
|
||||||
|
else
|
||||||
dependencies.add(source)
|
dependencies.add(source)
|
||||||
peerDeps.forEach(dep => dependencies.add(dep))
|
peerDeps.forEach(dep => dependencies.add(dep))
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -108,7 +108,8 @@
|
||||||
{
|
{
|
||||||
"name": "calendar",
|
"name": "calendar",
|
||||||
"dependencies": [
|
"dependencies": [
|
||||||
"v-calendar"
|
"@vueuse/core",
|
||||||
|
"v-calendar@next"
|
||||||
],
|
],
|
||||||
"registryDependencies": [
|
"registryDependencies": [
|
||||||
"utils"
|
"utils"
|
||||||
|
|
@ -302,7 +303,9 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "input",
|
"name": "input",
|
||||||
"dependencies": [],
|
"dependencies": [
|
||||||
|
"@vueuse/core"
|
||||||
|
],
|
||||||
"registryDependencies": [
|
"registryDependencies": [
|
||||||
"utils"
|
"utils"
|
||||||
],
|
],
|
||||||
|
|
@ -590,7 +593,9 @@
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "textarea",
|
"name": "textarea",
|
||||||
"dependencies": [],
|
"dependencies": [
|
||||||
|
"@vueuse/core"
|
||||||
|
],
|
||||||
"registryDependencies": [
|
"registryDependencies": [
|
||||||
"utils"
|
"utils"
|
||||||
],
|
],
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,8 @@
|
||||||
{
|
{
|
||||||
"name": "calendar",
|
"name": "calendar",
|
||||||
"dependencies": [
|
"dependencies": [
|
||||||
"v-calendar"
|
"@vueuse/core",
|
||||||
|
"v-calendar@next"
|
||||||
],
|
],
|
||||||
"registryDependencies": [
|
"registryDependencies": [
|
||||||
"utils"
|
"utils"
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,8 @@
|
||||||
{
|
{
|
||||||
"name": "input",
|
"name": "input",
|
||||||
"dependencies": [],
|
"dependencies": [
|
||||||
|
"@vueuse/core"
|
||||||
|
],
|
||||||
"registryDependencies": [
|
"registryDependencies": [
|
||||||
"utils"
|
"utils"
|
||||||
],
|
],
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,8 @@
|
||||||
{
|
{
|
||||||
"name": "textarea",
|
"name": "textarea",
|
||||||
"dependencies": [],
|
"dependencies": [
|
||||||
|
"@vueuse/core"
|
||||||
|
],
|
||||||
"registryDependencies": [
|
"registryDependencies": [
|
||||||
"utils"
|
"utils"
|
||||||
],
|
],
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,8 @@
|
||||||
{
|
{
|
||||||
"name": "calendar",
|
"name": "calendar",
|
||||||
"dependencies": [
|
"dependencies": [
|
||||||
"v-calendar"
|
"@vueuse/core",
|
||||||
|
"v-calendar@next"
|
||||||
],
|
],
|
||||||
"registryDependencies": [
|
"registryDependencies": [
|
||||||
"utils"
|
"utils"
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,8 @@
|
||||||
{
|
{
|
||||||
"name": "input",
|
"name": "input",
|
||||||
"dependencies": [],
|
"dependencies": [
|
||||||
|
"@vueuse/core"
|
||||||
|
],
|
||||||
"registryDependencies": [
|
"registryDependencies": [
|
||||||
"utils"
|
"utils"
|
||||||
],
|
],
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,8 @@
|
||||||
{
|
{
|
||||||
"name": "textarea",
|
"name": "textarea",
|
||||||
"dependencies": [],
|
"dependencies": [
|
||||||
|
"@vueuse/core"
|
||||||
|
],
|
||||||
"registryDependencies": [
|
"registryDependencies": [
|
||||||
"utils"
|
"utils"
|
||||||
],
|
],
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user