@vueless/nuxt 1.0.1-beta.9 → 1.1.1-beta.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/LICENSE +1 -1
- package/README.md +58 -6
- package/dist/LICENSE +1 -1
- package/dist/README.md +58 -6
- package/dist/module.d.mts +2 -2
- package/dist/module.json +1 -1
- package/dist/module.mjs +8 -52
- package/dist/package.json +21 -15
- package/dist/runtime/plugin.js +8 -10
- package/package.json +21 -15
package/LICENSE
CHANGED
package/README.md
CHANGED
|
@@ -1,17 +1,56 @@
|
|
|
1
|
+

|
|
2
|
+
|
|
1
3
|
# Vueless Nuxt Module
|
|
2
4
|
|
|
3
|
-
|
|
5
|
+
Nuxt module for the [Vueless](https://github.com/vuelessjs/vueless) UI library.
|
|
6
|
+
|
|
7
|
+
Vueless is an open-source UI library and design system framework for Vue.js 3 and Nuxt.js 3 / 4, built on top of Tailwind CSS v4.
|
|
8
|
+
|
|
9
|
+
It’s completely styleless, allowing you to extend or override default styles without modifying the components themselves — only your custom styles are included in the final build.
|
|
10
|
+
|
|
11
|
+
Vueless is simple enough for everyday use and powerful enough for advanced scenarios, making it ideal for quickly building beautiful UIs in minutes or developing a fully customized corporate UI library that strictly follows your design guidelines.
|
|
12
|
+
|
|
13
|
+
[Documentation](https://docs.vueless.com/) | [UI Components](https://ui.vueless.com/) | [Website](http://vueless.com/)
|
|
14
|
+
|
|
15
|
+
### Key features
|
|
16
|
+
|
|
17
|
+
- 🧩 65+ UI components (including range date picker, multi-selects, and nested table)
|
|
18
|
+
- 🪄 Automatic on-demand component import (as you use them)
|
|
19
|
+
- 📘 Built-in Storybook support
|
|
20
|
+
- 🌈 Beautiful, modern default UI theme
|
|
21
|
+
- 🌗 Light and dark mode support
|
|
22
|
+
- 🌀 Unstyled mode
|
|
23
|
+
- 🎨️ Flexible color palettes
|
|
24
|
+
- 🎛️ Runtime theme and color switching
|
|
25
|
+
- 🧬 Design tokens powered by CSS variables
|
|
26
|
+
- ✨ Powerful yet simple styling customization system
|
|
27
|
+
- 🌍 Internationalization (i18n)
|
|
28
|
+
- ♿️ Accessibility (a11y)
|
|
29
|
+
- ⚙️ Server-side rendering (SSR) friendly
|
|
30
|
+
- 🖼️ 1000+ built-in SVG icons
|
|
31
|
+
- 🧪️ 1200+ unit tests ensuring consistent logic
|
|
32
|
+
- 🛡️ Full TypeScript support with type safety
|
|
4
33
|
|
|
5
|
-
|
|
34
|
+
### Advanced Features
|
|
35
|
+
|
|
36
|
+
- 🧰 Copy and extend existing components
|
|
37
|
+
- 🧱 Create your own components
|
|
38
|
+
- 🔧️ Define default values for props
|
|
39
|
+
- 🔩️ Add or hide props to components
|
|
40
|
+
- 🧿 `npm` package ships full source without TypeScript transpilation for better DX.
|
|
41
|
+
|
|
42
|
+
## Quick Start
|
|
43
|
+
|
|
44
|
+
1. Install Vueless Nuxt module.
|
|
6
45
|
|
|
7
46
|
```bash
|
|
8
|
-
npm
|
|
47
|
+
npm install @vueless/nuxt
|
|
9
48
|
npx vueless init
|
|
10
49
|
```
|
|
11
50
|
|
|
12
|
-
2. Register `@vueless/nuxt` into the Nuxt config modules section in `nuxt.config.{ts,js}`
|
|
13
51
|
|
|
14
|
-
|
|
52
|
+
2. Register `@vueless/nuxt` into the Nuxt config modules section.
|
|
53
|
+
```javascript
|
|
15
54
|
export default defineNuxtConfig({
|
|
16
55
|
modules: [
|
|
17
56
|
'@vueless/nuxt'
|
|
@@ -27,4 +66,17 @@ export default defineNuxtConfig({
|
|
|
27
66
|
@import "vueless";
|
|
28
67
|
```
|
|
29
68
|
|
|
30
|
-
|
|
69
|
+
## Contributing
|
|
70
|
+
|
|
71
|
+
* We encourage you to contribute to Vueless! Please check out the
|
|
72
|
+
[contributing to Vueless](CONTRIBUTING.md) for guidelines.
|
|
73
|
+
* Trying to report a possible security vulnerability in Vueless? Please
|
|
74
|
+
check out our [security policy](SECURITY.md) for guidelines.
|
|
75
|
+
* Everyone interacting in Vueless and its sub-projects' codebases, issue trackers, chats, and mailing lists is expected to follow our [code of conduct](CODE_OF_CONDUCT.md) rules.
|
|
76
|
+
|
|
77
|
+
## License
|
|
78
|
+
|
|
79
|
+
Vueless is released under the [MIT License](https://opensource.org/licenses/MIT).
|
|
80
|
+
|
|
81
|
+
---
|
|
82
|
+
From Ukrainians to a Peaceful World 🇺🇦
|
package/dist/LICENSE
CHANGED
package/dist/README.md
CHANGED
|
@@ -1,17 +1,56 @@
|
|
|
1
|
+

|
|
2
|
+
|
|
1
3
|
# Vueless Nuxt Module
|
|
2
4
|
|
|
3
|
-
|
|
5
|
+
Nuxt module for the [Vueless](https://github.com/vuelessjs/vueless) UI library.
|
|
6
|
+
|
|
7
|
+
Vueless is an open-source UI library and design system framework for Vue.js 3 and Nuxt.js 3 / 4, built on top of Tailwind CSS v4.
|
|
8
|
+
|
|
9
|
+
It’s completely styleless, allowing you to extend or override default styles without modifying the components themselves — only your custom styles are included in the final build.
|
|
10
|
+
|
|
11
|
+
Vueless is simple enough for everyday use and powerful enough for advanced scenarios, making it ideal for quickly building beautiful UIs in minutes or developing a fully customized corporate UI library that strictly follows your design guidelines.
|
|
12
|
+
|
|
13
|
+
[Documentation](https://docs.vueless.com/) | [UI Components](https://ui.vueless.com/) | [Website](http://vueless.com/)
|
|
14
|
+
|
|
15
|
+
### Key features
|
|
16
|
+
|
|
17
|
+
- 🧩 65+ UI components (including range date picker, multi-selects, and nested table)
|
|
18
|
+
- 🪄 Automatic on-demand component import (as you use them)
|
|
19
|
+
- 📘 Built-in Storybook support
|
|
20
|
+
- 🌈 Beautiful, modern default UI theme
|
|
21
|
+
- 🌗 Light and dark mode support
|
|
22
|
+
- 🌀 Unstyled mode
|
|
23
|
+
- 🎨️ Flexible color palettes
|
|
24
|
+
- 🎛️ Runtime theme and color switching
|
|
25
|
+
- 🧬 Design tokens powered by CSS variables
|
|
26
|
+
- ✨ Powerful yet simple styling customization system
|
|
27
|
+
- 🌍 Internationalization (i18n)
|
|
28
|
+
- ♿️ Accessibility (a11y)
|
|
29
|
+
- ⚙️ Server-side rendering (SSR) friendly
|
|
30
|
+
- 🖼️ 1000+ built-in SVG icons
|
|
31
|
+
- 🧪️ 1200+ unit tests ensuring consistent logic
|
|
32
|
+
- 🛡️ Full TypeScript support with type safety
|
|
4
33
|
|
|
5
|
-
|
|
34
|
+
### Advanced Features
|
|
35
|
+
|
|
36
|
+
- 🧰 Copy and extend existing components
|
|
37
|
+
- 🧱 Create your own components
|
|
38
|
+
- 🔧️ Define default values for props
|
|
39
|
+
- 🔩️ Add or hide props to components
|
|
40
|
+
- 🧿 `npm` package ships full source without TypeScript transpilation for better DX.
|
|
41
|
+
|
|
42
|
+
## Quick Start
|
|
43
|
+
|
|
44
|
+
1. Install Vueless Nuxt module.
|
|
6
45
|
|
|
7
46
|
```bash
|
|
8
|
-
npm
|
|
47
|
+
npm install @vueless/nuxt
|
|
9
48
|
npx vueless init
|
|
10
49
|
```
|
|
11
50
|
|
|
12
|
-
2. Register `@vueless/nuxt` into the Nuxt config modules section in `nuxt.config.{ts,js}`
|
|
13
51
|
|
|
14
|
-
|
|
52
|
+
2. Register `@vueless/nuxt` into the Nuxt config modules section.
|
|
53
|
+
```javascript
|
|
15
54
|
export default defineNuxtConfig({
|
|
16
55
|
modules: [
|
|
17
56
|
'@vueless/nuxt'
|
|
@@ -27,4 +66,17 @@ export default defineNuxtConfig({
|
|
|
27
66
|
@import "vueless";
|
|
28
67
|
```
|
|
29
68
|
|
|
30
|
-
|
|
69
|
+
## Contributing
|
|
70
|
+
|
|
71
|
+
* We encourage you to contribute to Vueless! Please check out the
|
|
72
|
+
[contributing to Vueless](CONTRIBUTING.md) for guidelines.
|
|
73
|
+
* Trying to report a possible security vulnerability in Vueless? Please
|
|
74
|
+
check out our [security policy](SECURITY.md) for guidelines.
|
|
75
|
+
* Everyone interacting in Vueless and its sub-projects' codebases, issue trackers, chats, and mailing lists is expected to follow our [code of conduct](CODE_OF_CONDUCT.md) rules.
|
|
76
|
+
|
|
77
|
+
## License
|
|
78
|
+
|
|
79
|
+
Vueless is released under the [MIT License](https://opensource.org/licenses/MIT).
|
|
80
|
+
|
|
81
|
+
---
|
|
82
|
+
From Ukrainians to a Peaceful World 🇺🇦
|
package/dist/module.d.mts
CHANGED
|
@@ -2,12 +2,12 @@ import * as _nuxt_schema from '@nuxt/schema';
|
|
|
2
2
|
|
|
3
3
|
declare const _default: _nuxt_schema.NuxtModule<{
|
|
4
4
|
include: never[];
|
|
5
|
-
|
|
5
|
+
basePath: string;
|
|
6
6
|
debug: boolean;
|
|
7
7
|
postcss: boolean;
|
|
8
8
|
}, {
|
|
9
9
|
include: never[];
|
|
10
|
-
|
|
10
|
+
basePath: string;
|
|
11
11
|
debug: boolean;
|
|
12
12
|
postcss: boolean;
|
|
13
13
|
}, false>;
|
package/dist/module.json
CHANGED
package/dist/module.mjs
CHANGED
|
@@ -1,14 +1,9 @@
|
|
|
1
|
-
import fs from 'node:fs';
|
|
2
|
-
import path from 'node:path';
|
|
3
|
-
import { cwd } from 'node:process';
|
|
4
|
-
import { pathToFileURL } from 'node:url';
|
|
5
|
-
import { createRequire } from 'node:module';
|
|
6
1
|
import { defineNuxtModule, createResolver, hasNuxtModule, addPlugin, addComponent, addImportsDir } from '@nuxt/kit';
|
|
7
2
|
import { TailwindCSS, Vueless } from 'vueless/plugin-vite';
|
|
3
|
+
import { getVuelessConfig } from 'vueless/utils/node/vuelessConfig.js';
|
|
8
4
|
import { autoImportUserConfigs, cacheMergedConfigs } from 'vueless/utils/node/helper.js';
|
|
9
|
-
import { NUXT_MODULE_ENV, VUELESS_PACKAGE_DIR, COMPONENTS
|
|
5
|
+
import { NUXT_MODULE_ENV, VUELESS_PACKAGE_DIR, COMPONENTS } from 'vueless/constants';
|
|
10
6
|
|
|
11
|
-
const require = createRequire(import.meta.url);
|
|
12
7
|
const module = defineNuxtModule({
|
|
13
8
|
meta: {
|
|
14
9
|
name: "@vueless/nuxt",
|
|
@@ -19,16 +14,15 @@ const module = defineNuxtModule({
|
|
|
19
14
|
},
|
|
20
15
|
defaults: {
|
|
21
16
|
include: [],
|
|
22
|
-
|
|
17
|
+
basePath: "",
|
|
23
18
|
debug: false,
|
|
24
19
|
postcss: false
|
|
25
20
|
},
|
|
26
21
|
async setup(_options, _nuxt) {
|
|
27
|
-
|
|
22
|
+
if (_nuxt.options._prepare) return;
|
|
28
23
|
const { resolve } = createResolver(import.meta.url);
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
_nuxt.options.runtimeConfig.public.vueless = vuelessConfig;
|
|
24
|
+
const { include, debug, postcss, basePath } = _options;
|
|
25
|
+
_nuxt.options.runtimeConfig.public.vueless = await getVuelessConfig(basePath);
|
|
32
26
|
if (hasNuxtModule("@nuxtjs/i18n")) {
|
|
33
27
|
_nuxt.hook("i18n:registerModule", (register) => {
|
|
34
28
|
register({
|
|
@@ -43,20 +37,10 @@ const module = defineNuxtModule({
|
|
|
43
37
|
config.plugins = config.plugins || [];
|
|
44
38
|
config.plugins.push(
|
|
45
39
|
TailwindCSS({ postcss }),
|
|
46
|
-
Vueless({ env: NUXT_MODULE_ENV,
|
|
40
|
+
Vueless({ env: NUXT_MODULE_ENV, basePath, debug, include })
|
|
47
41
|
);
|
|
48
42
|
});
|
|
49
|
-
|
|
50
|
-
const chokidarPath = require.resolve("chokidar");
|
|
51
|
-
const chokidar = await import(pathToFileURL(chokidarPath).href);
|
|
52
|
-
const watcher = chokidar.watch(dependencies, { ignoreInitial: true });
|
|
53
|
-
watcher.on("change", async () => {
|
|
54
|
-
const { dependencies: newDependencies } = await getVuelessConfig();
|
|
55
|
-
watcher.unwatch(dependencies);
|
|
56
|
-
watcher.add(newDependencies);
|
|
57
|
-
_nuxt.callHook("restart");
|
|
58
|
-
});
|
|
59
|
-
}
|
|
43
|
+
await autoImportUserConfigs(basePath);
|
|
60
44
|
await cacheMergedConfigs(VUELESS_PACKAGE_DIR);
|
|
61
45
|
addPlugin(resolve("./runtime/plugin"));
|
|
62
46
|
for (const [componentName, componentPath] of Object.entries(COMPONENTS)) {
|
|
@@ -69,33 +53,5 @@ const module = defineNuxtModule({
|
|
|
69
53
|
addImportsDir("vueless/utils");
|
|
70
54
|
}
|
|
71
55
|
});
|
|
72
|
-
async function getVuelessConfig() {
|
|
73
|
-
const esbuildPath = require.resolve("esbuild");
|
|
74
|
-
const esbuild = await import(pathToFileURL(esbuildPath).href);
|
|
75
|
-
const esbuildConfig = {
|
|
76
|
-
bundle: true,
|
|
77
|
-
platform: "node",
|
|
78
|
-
format: "esm",
|
|
79
|
-
target: "ESNext",
|
|
80
|
-
loader: { ".ts": "ts" },
|
|
81
|
-
write: false,
|
|
82
|
-
metafile: true
|
|
83
|
-
// Generate dependency tree
|
|
84
|
-
};
|
|
85
|
-
const configPathJs = path.join(cwd(), `${VUELESS_CONFIG_FILE_NAME}.js`);
|
|
86
|
-
const configPathTs = path.join(cwd(), `${VUELESS_CONFIG_FILE_NAME}.ts`);
|
|
87
|
-
let result = null;
|
|
88
|
-
if (fs.existsSync(configPathJs)) {
|
|
89
|
-
result = await esbuild.build({ ...esbuildConfig, entryPoints: [configPathJs] });
|
|
90
|
-
}
|
|
91
|
-
if (fs.existsSync(configPathTs)) {
|
|
92
|
-
result = await esbuild.build({ ...esbuildConfig, entryPoints: [configPathTs] });
|
|
93
|
-
}
|
|
94
|
-
const code = result?.outputFiles?.[0]?.text || "";
|
|
95
|
-
return {
|
|
96
|
-
vuelessConfig: (await import(`data:text/javascript,${encodeURIComponent(code)}`)).default || {},
|
|
97
|
-
dependencies: Object.keys(result?.metafile?.inputs || {})
|
|
98
|
-
};
|
|
99
|
-
}
|
|
100
56
|
|
|
101
57
|
export { module as default };
|
package/dist/package.json
CHANGED
|
@@ -1,25 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vueless/nuxt",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.1.1-beta.0",
|
|
4
4
|
"description": "Nuxt Styleless UI Component Library, powered by Tailwind CSS.",
|
|
5
5
|
"author": "Johnny Grid <hello@vueless.com> (https://vueless.com)",
|
|
6
6
|
"homepage": "https://vueless.com",
|
|
7
7
|
"license": "MIT",
|
|
8
|
-
"type": "module",
|
|
9
8
|
"publishConfig": {
|
|
10
9
|
"access": "public"
|
|
11
10
|
},
|
|
12
|
-
"exports": {
|
|
13
|
-
".": {
|
|
14
|
-
"types": "./dist/types.d.mts",
|
|
15
|
-
"import": "./dist/module.mjs",
|
|
16
|
-
"require": "./dist/module.mjs"
|
|
17
|
-
}
|
|
18
|
-
},
|
|
19
|
-
"main": "./dist/module.mjs",
|
|
20
|
-
"files": [
|
|
21
|
-
"dist"
|
|
22
|
-
],
|
|
23
11
|
"scripts": {
|
|
24
12
|
"dev": "npm run dev:prepare && nuxi dev playground",
|
|
25
13
|
"dev:prepare": "nuxi cleanup && nuxi prepare && nuxi cleanup playground && nuxt-module-build build --stub && nuxt-module-build prepare && nuxi prepare playground",
|
|
@@ -30,15 +18,19 @@
|
|
|
30
18
|
"release:patch": "release-it patch --ci --npm.publish --git.tag --github.release",
|
|
31
19
|
"release:minor": "release-it minor --ci --npm.publish --git.tag --github.release",
|
|
32
20
|
"release:major": "release-it major --ci --npm.publish --git.tag --github.release",
|
|
21
|
+
"ts:check": "vue-tsc --noEmit && cd playground && vue-tsc --noEmit",
|
|
33
22
|
"lint": "eslint . --no-fix",
|
|
34
23
|
"lint:fix": "eslint . --fix",
|
|
35
24
|
"lint:ci": "eslint . --no-fix --max-warnings=0",
|
|
36
25
|
"test": "vitest run",
|
|
37
26
|
"test:watch": "vitest watch",
|
|
38
|
-
"
|
|
27
|
+
"sb:dev": "storybook dev -p 6006 --no-open",
|
|
28
|
+
"sb:dev:docs": "storybook dev -p 6006 --docs --no-open",
|
|
29
|
+
"sb:build": "storybook build --docs",
|
|
30
|
+
"sb:preview": "vite preview --host --outDir=storybook-static"
|
|
39
31
|
},
|
|
40
32
|
"dependencies": {
|
|
41
|
-
"vueless": "^1.
|
|
33
|
+
"vueless": "^1.2.3"
|
|
42
34
|
},
|
|
43
35
|
"devDependencies": {
|
|
44
36
|
"@material-symbols/svg-500": "^0.34.1",
|
|
@@ -49,6 +41,7 @@
|
|
|
49
41
|
"@nuxt/schema": "^4.0.3",
|
|
50
42
|
"@nuxt/test-utils": "^3.19.2",
|
|
51
43
|
"@types/node": "latest",
|
|
44
|
+
"@vueless/storybook": "^1.2.2",
|
|
52
45
|
"changelogen": "^0.6.2",
|
|
53
46
|
"eslint": "^9.33.0",
|
|
54
47
|
"nuxt": "^4.0.3",
|
|
@@ -57,6 +50,19 @@
|
|
|
57
50
|
"vitest": "^3.2.4",
|
|
58
51
|
"vue-tsc": "^3.0.5"
|
|
59
52
|
},
|
|
53
|
+
"sideEffects": false,
|
|
54
|
+
"type": "module",
|
|
55
|
+
"exports": {
|
|
56
|
+
".": {
|
|
57
|
+
"types": "./dist/types.d.mts",
|
|
58
|
+
"import": "./dist/module.mjs",
|
|
59
|
+
"require": "./dist/module.mjs"
|
|
60
|
+
}
|
|
61
|
+
},
|
|
62
|
+
"main": "./dist/module.mjs",
|
|
63
|
+
"files": [
|
|
64
|
+
"dist"
|
|
65
|
+
],
|
|
60
66
|
"repository": {
|
|
61
67
|
"type": "git",
|
|
62
68
|
"url": "git+https://github.com/vuelessjs/vueless-module-nuxt.git"
|
package/dist/runtime/plugin.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { defineNuxtPlugin, useRuntimeConfig } from "#app";
|
|
1
2
|
import { createVueless, createVueI18nAdapter, setTheme, ColorMode, vClickOutside, vTooltip, vuelessConfig } from "vueless";
|
|
2
3
|
import {
|
|
3
4
|
TEXT,
|
|
@@ -5,14 +6,11 @@ import {
|
|
|
5
6
|
ROUNDING,
|
|
6
7
|
PRIMARY_COLOR,
|
|
7
8
|
NEUTRAL_COLOR,
|
|
8
|
-
AUTO_MODE_KEY,
|
|
9
9
|
COLOR_MODE_KEY,
|
|
10
10
|
DARK_MODE_CLASS,
|
|
11
11
|
LIGHT_MODE_CLASS,
|
|
12
12
|
DISABLED_OPACITY
|
|
13
13
|
} from "vueless/constants";
|
|
14
|
-
import { useRuntimeConfig } from "#imports";
|
|
15
|
-
import { defineNuxtPlugin } from "#app";
|
|
16
14
|
function parseCookies(cookieHeader) {
|
|
17
15
|
if (!cookieHeader) return {};
|
|
18
16
|
return cookieHeader.split(";").reduce((acc, cookie) => {
|
|
@@ -24,8 +22,10 @@ function parseCookies(cookieHeader) {
|
|
|
24
22
|
}, {});
|
|
25
23
|
}
|
|
26
24
|
export default defineNuxtPlugin((_nuxtApp) => {
|
|
27
|
-
const
|
|
28
|
-
|
|
25
|
+
const vuelessOptions = {};
|
|
26
|
+
if (import.meta.env.PROD) {
|
|
27
|
+
vuelessOptions.config = useRuntimeConfig().public.vueless;
|
|
28
|
+
}
|
|
29
29
|
if ("$i18n" in _nuxtApp) {
|
|
30
30
|
vuelessOptions.i18n = {
|
|
31
31
|
adapter: createVueI18nAdapter({ global: _nuxtApp.$i18n })
|
|
@@ -38,8 +38,8 @@ export default defineNuxtPlugin((_nuxtApp) => {
|
|
|
38
38
|
if (import.meta.server) {
|
|
39
39
|
const event = _nuxtApp.ssrContext?.event;
|
|
40
40
|
const cookies = parseCookies(event?.node.req.headers.cookie);
|
|
41
|
-
const primary = cookies?.[`vl-${PRIMARY_COLOR}`];
|
|
42
|
-
const neutral = cookies?.[`vl-${NEUTRAL_COLOR}`];
|
|
41
|
+
const primary = cookies?.[`vl-${PRIMARY_COLOR}`] ?? void 0;
|
|
42
|
+
const neutral = cookies?.[`vl-${NEUTRAL_COLOR}`] ?? void 0;
|
|
43
43
|
const textXs = Number(cookies?.[`vl-${TEXT}-xs`]);
|
|
44
44
|
const textSm = Number(cookies?.[`vl-${TEXT}-sm`]);
|
|
45
45
|
const textMd = Number(cookies?.[`vl-${TEXT}-md`]);
|
|
@@ -69,9 +69,7 @@ export default defineNuxtPlugin((_nuxtApp) => {
|
|
|
69
69
|
const disabledOpacityValue = Number(cookies?.[`vl-${DISABLED_OPACITY}`]);
|
|
70
70
|
const disabledOpacity = !Number.isNaN(disabledOpacityValue) ? disabledOpacityValue : void 0;
|
|
71
71
|
const colorMode = cookies?.[COLOR_MODE_KEY] || vuelessConfig.colorMode || ColorMode.Light;
|
|
72
|
-
const
|
|
73
|
-
const isCachedAutoMode = Boolean(!Number.isNaN(autoModeValue) ? autoModeValue : void 0);
|
|
74
|
-
const themeRootVariables = setTheme({ primary, neutral, text, outline, rounding, disabledOpacity, colorMode }, isCachedAutoMode);
|
|
72
|
+
const themeRootVariables = setTheme({ primary, neutral, text, outline, rounding, disabledOpacity, colorMode });
|
|
75
73
|
const colorModeClass = colorMode === ColorMode.Dark ? DARK_MODE_CLASS : LIGHT_MODE_CLASS;
|
|
76
74
|
_nuxtApp.ssrContext?.head.push({
|
|
77
75
|
style: [{ innerHTML: themeRootVariables }],
|
package/package.json
CHANGED
|
@@ -1,25 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vueless/nuxt",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.1.1-beta.0",
|
|
4
4
|
"description": "Nuxt Styleless UI Component Library, powered by Tailwind CSS.",
|
|
5
5
|
"author": "Johnny Grid <hello@vueless.com> (https://vueless.com)",
|
|
6
6
|
"homepage": "https://vueless.com",
|
|
7
7
|
"license": "MIT",
|
|
8
|
-
"type": "module",
|
|
9
8
|
"publishConfig": {
|
|
10
9
|
"access": "public"
|
|
11
10
|
},
|
|
12
|
-
"exports": {
|
|
13
|
-
".": {
|
|
14
|
-
"types": "./dist/types.d.mts",
|
|
15
|
-
"import": "./dist/module.mjs",
|
|
16
|
-
"require": "./dist/module.mjs"
|
|
17
|
-
}
|
|
18
|
-
},
|
|
19
|
-
"main": "./dist/module.mjs",
|
|
20
|
-
"files": [
|
|
21
|
-
"dist"
|
|
22
|
-
],
|
|
23
11
|
"scripts": {
|
|
24
12
|
"dev": "npm run dev:prepare && nuxi dev playground",
|
|
25
13
|
"dev:prepare": "nuxi cleanup && nuxi prepare && nuxi cleanup playground && nuxt-module-build build --stub && nuxt-module-build prepare && nuxi prepare playground",
|
|
@@ -30,15 +18,19 @@
|
|
|
30
18
|
"release:patch": "release-it patch --ci --npm.publish --git.tag --github.release",
|
|
31
19
|
"release:minor": "release-it minor --ci --npm.publish --git.tag --github.release",
|
|
32
20
|
"release:major": "release-it major --ci --npm.publish --git.tag --github.release",
|
|
21
|
+
"ts:check": "vue-tsc --noEmit && cd playground && vue-tsc --noEmit",
|
|
33
22
|
"lint": "eslint . --no-fix",
|
|
34
23
|
"lint:fix": "eslint . --fix",
|
|
35
24
|
"lint:ci": "eslint . --no-fix --max-warnings=0",
|
|
36
25
|
"test": "vitest run",
|
|
37
26
|
"test:watch": "vitest watch",
|
|
38
|
-
"
|
|
27
|
+
"sb:dev": "storybook dev -p 6006 --no-open",
|
|
28
|
+
"sb:dev:docs": "storybook dev -p 6006 --docs --no-open",
|
|
29
|
+
"sb:build": "storybook build --docs",
|
|
30
|
+
"sb:preview": "vite preview --host --outDir=storybook-static"
|
|
39
31
|
},
|
|
40
32
|
"dependencies": {
|
|
41
|
-
"vueless": "^1.
|
|
33
|
+
"vueless": "^1.2.3"
|
|
42
34
|
},
|
|
43
35
|
"devDependencies": {
|
|
44
36
|
"@material-symbols/svg-500": "^0.34.1",
|
|
@@ -49,6 +41,7 @@
|
|
|
49
41
|
"@nuxt/schema": "^4.0.3",
|
|
50
42
|
"@nuxt/test-utils": "^3.19.2",
|
|
51
43
|
"@types/node": "latest",
|
|
44
|
+
"@vueless/storybook": "^1.2.2",
|
|
52
45
|
"changelogen": "^0.6.2",
|
|
53
46
|
"eslint": "^9.33.0",
|
|
54
47
|
"nuxt": "^4.0.3",
|
|
@@ -57,6 +50,19 @@
|
|
|
57
50
|
"vitest": "^3.2.4",
|
|
58
51
|
"vue-tsc": "^3.0.5"
|
|
59
52
|
},
|
|
53
|
+
"sideEffects": false,
|
|
54
|
+
"type": "module",
|
|
55
|
+
"exports": {
|
|
56
|
+
".": {
|
|
57
|
+
"types": "./dist/types.d.mts",
|
|
58
|
+
"import": "./dist/module.mjs",
|
|
59
|
+
"require": "./dist/module.mjs"
|
|
60
|
+
}
|
|
61
|
+
},
|
|
62
|
+
"main": "./dist/module.mjs",
|
|
63
|
+
"files": [
|
|
64
|
+
"dist"
|
|
65
|
+
],
|
|
60
66
|
"repository": {
|
|
61
67
|
"type": "git",
|
|
62
68
|
"url": "git+https://github.com/vuelessjs/vueless-module-nuxt.git"
|