@dxtmisha/configuration 0.4.6 → 0.6.1

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/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@dxtmisha/configuration",
3
3
  "private": false,
4
- "version": "0.4.6",
4
+ "version": "0.6.1",
5
5
  "type": "module",
6
6
  "description": "Shared configuration files for DXT UI - Vite configs and TypeScript configs for building UI components",
7
7
  "keywords": [
@@ -30,6 +30,7 @@
30
30
  "viteconfig/",
31
31
  "README.md",
32
32
  "package.json",
33
+ "tsconfig.app.json",
33
34
  "LICENSE"
34
35
  ],
35
36
  "exports": {
@@ -45,6 +46,14 @@
45
46
  "types": "./viteconfig/viteComponentOnly.config.d.ts",
46
47
  "default": "./viteconfig/viteComponentOnly.config.js"
47
48
  },
49
+ "./viteComponents": {
50
+ "types": "./viteconfig/viteComponents.config.d.ts",
51
+ "default": "./viteconfig/viteComponents.config.js"
52
+ },
53
+ "./viteConstructors": {
54
+ "types": "./viteconfig/viteConstructors.config.d.ts",
55
+ "default": "./viteconfig/viteConstructors.config.js"
56
+ },
48
57
  "./viteFlags": {
49
58
  "types": "./viteconfig/viteFlags.config.d.ts",
50
59
  "default": "./viteconfig/viteFlags.config.js"
@@ -53,6 +62,10 @@
53
62
  "types": "./viteconfig/viteLibraries.config.d.ts",
54
63
  "default": "./viteconfig/viteLibraries.config.js"
55
64
  },
65
+ "./viteLibrariesRollup": {
66
+ "types": "./viteconfig/viteLibrariesRollup.config.d.ts",
67
+ "default": "./viteconfig/viteLibrariesRollup.config.js"
68
+ },
56
69
  "./viteMdx": {
57
70
  "types": "./viteconfig/viteMdx.config.d.ts",
58
71
  "default": "./viteconfig/viteMdx.config.js"
@@ -60,7 +73,7 @@
60
73
  "./tsconfig/*": "./tsconfig/*"
61
74
  },
62
75
  "engines": {
63
- "node": ">=18.0.0"
76
+ "node": ">=20.0.0"
64
77
  },
65
78
  "peerDependencies": {
66
79
  "vite": "*",
@@ -7,9 +7,6 @@
7
7
  "noUnusedParameters": true,
8
8
  "noFallthroughCasesInSwitch": true,
9
9
  "noUncheckedSideEffectImports": true,
10
- "types": [
11
- "vite/client",
12
- "@types/mdx"
13
- ]
10
+ "types": ["vite/client"]
14
11
  }
15
12
  }
@@ -0,0 +1,11 @@
1
+ {
2
+ "extends": "@dxtmisha/configuration/tsconfig/tsconfig.app.json",
3
+ "compilerOptions": {
4
+ "tsBuildInfoFile": "./node_modules/.tmp/tsconfig.app.tsbuildinfo"
5
+ },
6
+ "include": [
7
+ "src/**/*.ts",
8
+ "src/**/*.tsx",
9
+ "src/**/*.vue"
10
+ ]
11
+ }
@@ -1,11 +1,12 @@
1
1
  import { defineConfig } from 'vite'
2
2
  import { builtinModules } from 'node:module'
3
+ import path from 'node:path'
3
4
 
4
5
  import vue from '@vitejs/plugin-vue'
5
6
  import dts from 'vite-plugin-dts'
6
7
 
7
- import autoprefixer from 'autoprefixer'
8
- import cssnanoPlugin from 'cssnano'
8
+ import browserslist from 'browserslist'
9
+ import { browserslistToTargets } from 'lightningcss'
9
10
 
10
11
  // https://vite.dev/config/
11
12
 
@@ -15,7 +16,7 @@ import cssnanoPlugin from 'cssnano'
15
16
  * Создаёт базовую конфигурацию Vite для библиотек с функциями/композаблами/классами.
16
17
  * @param name global library name / глобальное имя библиотеки
17
18
  * @param target build target / цель сборки
18
- * @param entry entry points / входные точки сборки
19
+ * @param {string|string[]} entry entry points / входные точки сборки
19
20
  * @param include glob patterns for d.ts / паттерны для генерации d.ts
20
21
  * @param includeExtended extra patterns / дополнительные паттерны
21
22
  * @param external external dependencies / внешние зависимости
@@ -37,6 +38,7 @@ export const viteBasicFunction = (
37
38
  external = [
38
39
  ...builtinModules,
39
40
  ...builtinModules.map(m => `node:${m}`),
41
+ 'typescript',
40
42
  'vue',
41
43
  'vue-router',
42
44
  '@vue/runtime-core',
@@ -58,7 +60,8 @@ export const viteBasicFunction = (
58
60
  '@dxtmisha/styles',
59
61
  '@dxtmisha/wiki',
60
62
  '@emotion/react',
61
- '@emotion/styled'
63
+ '@emotion/styled',
64
+ '@napi-rs/canvas'
62
65
  ],
63
66
  externalExtended = [],
64
67
  fileCssName = 'style.css',
@@ -74,7 +77,7 @@ export const viteBasicFunction = (
74
77
  },
75
78
  rollupOptions: {
76
79
  external: (id) => {
77
- if (id.includes('node_modules')) {
80
+ if (!id.startsWith('.') && !path.isAbsolute(id)) {
78
81
  return true
79
82
  }
80
83
 
@@ -102,12 +105,14 @@ export const viteBasicFunction = (
102
105
  }
103
106
  }
104
107
  },
108
+ optimizeDeps: {
109
+ exclude: ['@napi-rs/canvas', 'fsevents']
110
+ },
105
111
  css: {
106
- postcss: {
107
- plugins: [
108
- autoprefixer(),
109
- cssnanoPlugin({ preset: 'default' })
110
- ]
112
+ transformer: 'lightningcss',
113
+ lightningcss: {
114
+ // Настройки целей браузеров (автоматически берет из browserslist если не задано)
115
+ targets: browserslistToTargets(browserslist('>= 0.25%'))
111
116
  }
112
117
  },
113
118
  plugins: [
@@ -131,7 +136,7 @@ export const viteBasicFunction = (
131
136
  '**/vite-env.d.ts'
132
137
  ],
133
138
  include: [
134
- ...entry,
139
+ ...(Array.isArray(entry) ? entry : [entry]),
135
140
  ...include,
136
141
  ...includeExtended
137
142
  ],
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Vite configuration for building components.
3
+ *
4
+ * Конфигурация Vite для сборки компонентов.
5
+ */
6
+ export declare const viteComponents: {}
@@ -0,0 +1,28 @@
1
+ import { mergeConfig } from 'vite'
2
+ import mdx from '@mdx-js/rollup'
3
+
4
+ import { viteBasicFunction } from './viteBasicFunction.config.js'
5
+ import { getLibraryEntries } from '../functions/getLibraryEntries.js'
6
+
7
+ // https://vite.dev/config/
8
+ /**
9
+ * Vite configuration for building components.
10
+ *
11
+ * Конфигурация Vite для сборки компонентов.
12
+ */
13
+ export const viteComponents = mergeConfig(
14
+ viteBasicFunction(
15
+ undefined,
16
+ undefined,
17
+ getLibraryEntries(),
18
+ undefined,
19
+ undefined,
20
+ undefined,
21
+ undefined,
22
+ undefined,
23
+ true
24
+ ),
25
+ {
26
+ plugins: [mdx()]
27
+ }
28
+ )
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Vite configuration for constructors.
3
+ *
4
+ * Конфигурация Vite для конструкторов.
5
+ */
6
+ export declare const viteConstructors: {}
@@ -0,0 +1,31 @@
1
+ import { mergeConfig } from 'vite'
2
+ import mdx from '@mdx-js/rollup'
3
+
4
+ import { viteBasicFunction } from './viteBasicFunction.config.js'
5
+ import { getLibraryEntries } from '../functions/getLibraryEntries.js'
6
+
7
+ // https://vite.dev/config/
8
+ /**
9
+ * Vite configuration for constructors.
10
+ *
11
+ * Конфигурация Vite для конструкторов.
12
+ */
13
+ export const viteConstructors = mergeConfig(
14
+ viteBasicFunction(
15
+ undefined,
16
+ undefined,
17
+ [
18
+ ...getLibraryEntries(),
19
+ 'src/library.ts'
20
+ ],
21
+ undefined,
22
+ undefined,
23
+ undefined,
24
+ undefined,
25
+ undefined,
26
+ false
27
+ ),
28
+ {
29
+ plugins: [mdx()]
30
+ }
31
+ )
@@ -1,23 +1,9 @@
1
- import fs from 'node:fs'
2
- import path from 'node:path'
3
-
4
1
  import { viteBasicFunction } from './viteBasicFunction.config.js'
2
+ import { getLibraryEntries } from '../functions/getLibraryEntries.js'
5
3
 
6
4
  // https://vite.dev/config/
7
5
  export const viteLibraries = viteBasicFunction(
8
6
  undefined,
9
7
  undefined,
10
- [
11
- ...(() => {
12
- const dir = path.join('src', 'library')
13
-
14
- if (fs.existsSync(dir)) {
15
- return fs.readdirSync(dir)
16
- .filter(file => file.endsWith('.ts'))
17
- .map(file => path.join(dir, file))
18
- }
19
-
20
- return []
21
- })()
22
- ]
8
+ getLibraryEntries()
23
9
  )
@@ -0,0 +1 @@
1
+ export declare const viteLibrariesRollup: {}
@@ -0,0 +1,15 @@
1
+ import { viteBasicFunction } from './viteBasicFunction.config.js'
2
+ import { getLibraryEntries } from '../functions/getLibraryEntries.js'
3
+
4
+ // https://vite.dev/config/
5
+ export const viteLibrariesRollup = viteBasicFunction(
6
+ undefined,
7
+ undefined,
8
+ getLibraryEntries(),
9
+ undefined,
10
+ undefined,
11
+ undefined,
12
+ undefined,
13
+ undefined,
14
+ true
15
+ )