@vef-framework/dev 1.0.9
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/README.md +25 -0
- package/bin/vef.js +18 -0
- package/client.d.js +2 -0
- package/client.d.ts +18 -0
- package/dist/cli.d.ts +1 -0
- package/dist/cli.js +3 -0
- package/dist/commitlint-config.d.ts +7 -0
- package/dist/commitlint-config.js +3 -0
- package/dist/config.d.ts +23 -0
- package/dist/config.js +3 -0
- package/dist/constants.d.ts +44 -0
- package/dist/constants.js +3 -0
- package/dist/eslint-config.d.ts +7 -0
- package/dist/eslint-config.js +3 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.js +3 -0
- package/dist/modules.d.js +2 -0
- package/dist/plugin-app-config.d.ts +27 -0
- package/dist/plugin-app-config.js +3 -0
- package/dist/plugin-conventional-config.d.ts +48 -0
- package/dist/plugin-conventional-config.js +3 -0
- package/dist/plugin-eslint.d.ts +6 -0
- package/dist/plugin-eslint.js +3 -0
- package/dist/plugin-html.d.ts +7 -0
- package/dist/plugin-html.js +3 -0
- package/dist/plugin-icons.d.ts +7 -0
- package/dist/plugin-icons.js +3 -0
- package/dist/plugin-injection.d.ts +7 -0
- package/dist/plugin-injection.js +3 -0
- package/dist/plugin-inspect.d.ts +6 -0
- package/dist/plugin-inspect.js +3 -0
- package/dist/plugin-react-swc.d.ts +6 -0
- package/dist/plugin-react-swc.js +3 -0
- package/dist/plugin-router.d.ts +6 -0
- package/dist/plugin-router.js +3 -0
- package/dist/plugin-stylelint.d.ts +6 -0
- package/dist/plugin-stylelint.js +3 -0
- package/dist/plugin-svgr.d.ts +6 -0
- package/dist/plugin-svgr.js +3 -0
- package/dist/plugin-tailwindcss.d.ts +7 -0
- package/dist/plugin-tailwindcss.js +3 -0
- package/dist/plugin-webfont.d.ts +6 -0
- package/dist/plugin-webfont.js +3 -0
- package/dist/stylelint-config.d.ts +7 -0
- package/dist/stylelint-config.js +3 -0
- package/dist/tailwind-config.d.ts +7 -0
- package/dist/tailwind-config.js +3 -0
- package/dist/types.d.ts +15 -0
- package/package.json +81 -0
- package/tsconfig.app.json +31 -0
- package/tsconfig.node.json +24 -0
package/README.md
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# The Development tools of VEF Framework
|
|
2
|
+
|
|
3
|
+
VEF framework made by Venus is built on top of React, and it provides a set of components that are essential for building a modern web application. These components are designed to be highly customizable and reusable, allowing developers to build complex and dynamic user interfaces with ease.
|
|
4
|
+
|
|
5
|
+
## Installation
|
|
6
|
+
|
|
7
|
+
To install the VEF framework dev, you can use pnpm or any other package manager you like:
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
pnpm add @vef-framework/dev
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
## Usage
|
|
14
|
+
|
|
15
|
+
To use the VEF framework dev in your project, you can import them from the package, for example:
|
|
16
|
+
|
|
17
|
+
```ts
|
|
18
|
+
import { xxx } from "@vef-framework/dev";
|
|
19
|
+
|
|
20
|
+
const result = xxx();
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
## Documentation
|
|
24
|
+
|
|
25
|
+
For more details on how to use the VEF framework dev, please refer to the [official documentation](https://vef.ilxqx.com/docs).
|
package/bin/vef.js
ADDED
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
import module from "node:module";
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Start VEF CLI
|
|
7
|
+
*
|
|
8
|
+
* @returns The entry module of VEF CLI
|
|
9
|
+
*/
|
|
10
|
+
function start() {
|
|
11
|
+
try {
|
|
12
|
+
module.enableCompileCache();
|
|
13
|
+
} catch {}
|
|
14
|
+
|
|
15
|
+
return import("../dist/cli.js");
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
start();
|
package/client.d.js
ADDED
package/client.d.ts
ADDED
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/// <reference types="vite/client" />
|
|
2
|
+
|
|
3
|
+
/// <reference types="vite-plugin-svgr/client" />
|
|
4
|
+
|
|
5
|
+
/// <reference types="unplugin-icons/types/react" />
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* The version of the vef framework
|
|
9
|
+
*/
|
|
10
|
+
declare const __VEF_FRAMEWORK_VERSION__: string;
|
|
11
|
+
/**
|
|
12
|
+
* The version of the app
|
|
13
|
+
*/
|
|
14
|
+
declare const __VEF_APP_VERSION__: string;
|
|
15
|
+
/**
|
|
16
|
+
* The configuration of the app
|
|
17
|
+
*/
|
|
18
|
+
declare const __VEF_APP_CONFIG__: Readonly<Record<string, string>>;
|
package/dist/cli.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
package/dist/cli.js
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
/*! VefFramework version: 1.0.9, build time: 2024-12-19T05:12:56.660Z, made by Venus. */
|
|
2
|
+
import e from"chalk";import{program as n}from"commander";import i from"consola";import t from"fs-extra";import{resolve as o}from"node:path";import s from"node:process";import{loadConfigFromFile as c,createServer as a,build as r,preview as f}from"vite";const{exists:l,readJsonSync:d,writeFile:u,readJson:m,writeJson:g}=t,p=s.cwd();const w=function(){const e=o(import.meta.dirname,"../package.json");return d(e,{encoding:"utf-8"}).version}();function v(e,n){return n||("build"===e?"production":"development")}async function y(e,n,t){const s=o(p,e||"vef.config.ts");if(!await l(s))throw i.error(`Config file not found: ${s}, it is required for VEF Framework`),new Error(`Config file not found: ${s}`);const a=await c({command:n,mode:t},s);return a?.config??{}}function S(e,n){i.error(`Error during ${e}:`,n),s.exit(1)}n.name("vef").description(e.magenta("VEF Framework CLI")).addHelpText("before",e.blue("VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus.")).addHelpText("before",e.bgGreenBright(`Version: ${w}`)).version(w).option("--mode <mode>","Specify running mode (will override default NODE_ENV)"),n.command("dev").description("Start dev server").option("-c, --config <file>","Specify vef config file","vef.config.ts").action((async e=>{try{const i=v("serve",n.opts().mode);s.env.NODE_ENV=i,s.env.VEF_FRAMEWORK_VERSION=w;const t=await y(e.config,"serve",i),o=await a({...t,mode:i,configFile:!1,logLevel:"info"});await o.listen(),o.printUrls(),o.bindCLIShortcuts({print:!0})}catch(e){S("dev server startup",e)}})),n.command("build").description("Build for production").option("-c, --config <file>","Specify vef config file","vef.config.ts").action((async e=>{try{const t=v("build",n.opts().mode);s.env.NODE_ENV=t,s.env.VEF_FRAMEWORK_VERSION=w;const o=await y(e.config,"build",t);await r({...o,mode:t,configFile:!1,logLevel:"info"}),i.success("Build completed successfully!")}catch(e){S("build",e)}})),n.command("preview").description("Preview the build").option("-c, --config <file>","Specify vef config file","vef.config.ts").action((async e=>{try{const i=v("build",n.opts().mode);s.env.NODE_ENV=i,s.env.VEF_FRAMEWORK_VERSION=w;const t=await y(e.config,"build",i),o=await f({...t,mode:i,configFile:!1,logLevel:"info"});o.printUrls(),o.bindCLIShortcuts({print:!0})}catch(e){S("preview server startup",e)}})),n.command("prepare").description("Sets up the project for development mode").action((async()=>{await l(o(p,".husky"))||((await import("husky")).default(),i.success("Successfully set up husky")),await l(o(p,".husky/pre-commit"))||(await u(o(p,".husky/pre-commit"),"npx lint-staged"),i.success("Successfully set up pre-commit hook")),await l(o(p,".husky/commit-msg"))||(await u(o(p,".husky/commit-msg"),"npx --no -- commitlint --edit $1"),i.success("Successfully set up commit-msg hook"));const e=await m(o(p,"package.json"),{encoding:"utf-8"}),{scripts:n,"lint-staged":t}=e;let s=!1;n.prepare||(n.prepare="vef prepare",s=!0),t||(e["lint-staged"]={"*.{js,ts,tsx,json,jsonc,yaml,toml,md}":["eslint --fix","git add"],"*.{css,scss}":["stylelint --fix","git add"]},s=!0),s&&(await g(o(p,"package.json"),e,{encoding:"utf-8",spaces:2}),i.success("Successfully set up prepare script and lint-staged"))})),n.command("generate").description("Generate the critical base files for the project").action((async()=>{await async function(){const e=o(p,"index.html");await u(e,"")}(),i.success("Successfully generated index.html file"),await async function(){const e=o(p,"env.d.ts");await u(e,'/// <reference types="@vef-framework/dev/client" />\n')}(),i.success("Successfully generated env.d.ts file"),await async function(){const e=o(p,"tailwind.config.js");await u(e,'import { defineTailwindConfig } from "@vef-framework/dev";\n\nexport default defineTailwindConfig();\n')}(),i.success("Successfully generated tailwind.config.js file"),await async function(){const e=o(p,"eslint.config.js");await u(e,'import { defineEslintConfig } from "@vef-framework/dev";\n\nexport default defineEslintConfig();\n')}(),i.success("Successfully generated eslint.config.js file"),await async function(){const e=o(p,"stylelint.config.js");await u(e,'import { defineStylelintConfig } from "@vef-framework/dev";\n\nexport default defineStylelintConfig();\n')}(),i.success("Successfully generated stylelint.config.js file"),await async function(){const e=o(p,"commitlint.config.ts");await u(e,'import { defineCommitlintConfig } from "@vef-framework/dev";\n\nexport default defineCommitlintConfig();\n')}(),i.success("Successfully generated commitlint.config.ts file"),await async function(){const e=o(p,"vef.config.ts");await u(e,'import { defineConfig } from "@vef-framework/dev";\n\nexport default defineConfig({\n projectDir: import.meta.dirname,\n});\n')}(),i.success("Successfully generated vef.config.ts file"),await async function(){const e=o(p,"tsconfig.app.json");await u(e,'{\n "extends": "@vef-framework/dev/tsconfig.app.json",\n "include": ["env.d.ts", "src"]\n}\n')}(),i.success("Successfully generated tsconfig.app.json file"),await async function(){const e=o(p,"tsconfig.node.json");await u(e,'{\n "extends": "@vef-framework/dev/tsconfig.node.json",\n "include": ["vef.config.ts", "tailwind.config.ts", "commitlint.config.ts]\n}\n')}(),i.success("Successfully generated tsconfig.node.json file"),await async function(){const e=o(p,"tsconfig.json");await u(e,'{\n "files": [],\n "references": [\n { "path": "./tsconfig.app.json" },\n { "path": "./tsconfig.node.json" }\n ]\n}\n')}(),i.success("Successfully generated tsconfig.json file"),await async function(){const e=o(p,".gitignore");await u(e,"# Logs\nlogs\n*.log\nnpm-debug.log*\nyarn-debug.log*\nyarn-error.log*\npnpm-debug.log*\nlerna-debug.log*\n\nnode_modules\n.DS_Store\n/dist/\n/dist-ssr/\ncoverage\n*.local\n\n/cypress/videos/\n/cypress/screenshots/\n\n# Editor directories and files\n.vscode/*\n!.vscode/extensions.json\n!.vscode/settings.json\n.idea\n*.suo\n*.ntvs*\n*.njsproj\n*.sln\n*.sw?\n\n*.tsbuildinfo\n\n# Project files\nenv/*.local\nsrc/**/*.gen.ts\n")}(),i.success("Successfully generated .gitignore file")})),n.parse();
|
|
3
|
+
/*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
/*! VefFramework version: 1.0.9, build time: 2024-12-19T05:12:56.660Z, made by Venus. */
|
|
2
|
+
function t(){return{extends:["@commitlint/config-conventional"],formatter:"@commitlint/format"}}export{t as defineCommitlintConfig};
|
|
3
|
+
/*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
|
package/dist/config.d.ts
ADDED
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { type ProxyOptions } from "vite";
|
|
2
|
+
/**
|
|
3
|
+
* The options to define the vef config
|
|
4
|
+
*/
|
|
5
|
+
export interface DefineConfigOptions {
|
|
6
|
+
/**
|
|
7
|
+
* The directory of the project
|
|
8
|
+
*/
|
|
9
|
+
projectDir: string;
|
|
10
|
+
/**
|
|
11
|
+
* The proxies of the dev server
|
|
12
|
+
*/
|
|
13
|
+
proxies?: Record<string, string | ProxyOptions>;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Define the vite config
|
|
17
|
+
*
|
|
18
|
+
* @param options - The options to define the vite config
|
|
19
|
+
* @param options.projectDir - The directory of the project
|
|
20
|
+
* @param options.proxies - The proxies of the dev server
|
|
21
|
+
* @returns The vite config
|
|
22
|
+
*/
|
|
23
|
+
export declare function defineConfig({ projectDir, proxies, }: DefineConfigOptions): import("vite").UserConfigFnPromise;
|
package/dist/config.js
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
/*! VefFramework version: 1.0.9, build time: 2024-12-19T05:12:56.660Z, made by Venus. */
|
|
2
|
+
import o from"consola";import i from"fs-extra";import{resolve as r}from"node:path";import{defineConfig as t,loadEnv as n}from"vite";import{ENV_DIR as p,ENV_BUILD_PREFIX as s}from"./constants.js";import{createAppConfigPlugin as e}from"./plugin-app-config.js";import{createConventionalConfigPlugin as m}from"./plugin-conventional-config.js";import{createEslintPlugin as a}from"./plugin-eslint.js";import{createHtmlPlugin as f}from"./plugin-html.js";import{createIconsPlugin as u}from"./plugin-icons.js";import{createInjectionPlugin as c}from"./plugin-injection.js";import{createInspectPlugin as l}from"./plugin-inspect.js";import{createReactSwcPlugin as g}from"./plugin-react-swc.js";import{createRouterPlugin as j}from"./plugin-router.js";import{createStylelintPlugin as _}from"./plugin-stylelint.js";import{createSvgrPlugin as P}from"./plugin-svgr.js";import{createTailwindcssPlugin as D}from"./plugin-tailwindcss.js";import{createWebfontPlugin as E}from"./plugin-webfont.js";const{readJson:U}=i;function b({projectDir:i,proxies:b}){return t((async({mode:t})=>{const B=n(t,p,s);Object.keys(B).length>0&&(o.info("Loading environment variables:"),console.table(B));const I=await async function(o){const i=await U(r(o,"package.json"),{encoding:"utf-8"});return i.version}(i);return{plugins:[l(),m({appVersion:I,projectDir:i,basePublicPath:B.VEF_BUILD_BASE_PUBLIC_PATH,outputDir:B.VEF_BUILD_OUTPUT_DIR,serverPort:Number(B.VEF_BUILD_SERVER_PORT),proxies:b}),g(),f(),D(),c(),e({basePublicPath:B.VEF_BUILD_BASE_PUBLIC_PATH,outputDir:B.VEF_BUILD_OUTPUT_DIR,appName:B.VEF_APP_NAME}),u(i),P(),E(),j(),a(),_()]}}))}export{b as defineConfig};
|
|
3
|
+
/*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The directory of the public files
|
|
3
|
+
*/
|
|
4
|
+
export declare const PUBLIC_DIR = "public";
|
|
5
|
+
/**
|
|
6
|
+
* The directory of the environment files
|
|
7
|
+
*/
|
|
8
|
+
export declare const ENV_DIR = "env";
|
|
9
|
+
/**
|
|
10
|
+
* The directory of the assets
|
|
11
|
+
*/
|
|
12
|
+
export declare const ASSETS_DIR = "assets";
|
|
13
|
+
/**
|
|
14
|
+
* The prefix of the environment variables for the app
|
|
15
|
+
*/
|
|
16
|
+
export declare const ENV_APP_PREFIX = "VEF_APP_";
|
|
17
|
+
/**
|
|
18
|
+
* The prefix of the environment variables for the build tools
|
|
19
|
+
*/
|
|
20
|
+
export declare const ENV_BUILD_PREFIX = "VEF_BUILD_";
|
|
21
|
+
/**
|
|
22
|
+
* The directory of the source files
|
|
23
|
+
*/
|
|
24
|
+
export declare const SRC_DIR = "src";
|
|
25
|
+
/**
|
|
26
|
+
* The default output directory of the build
|
|
27
|
+
*/
|
|
28
|
+
export declare const DEFAULT_OUTPUT_DIR = "dist";
|
|
29
|
+
/**
|
|
30
|
+
* The default port of the dev server
|
|
31
|
+
*/
|
|
32
|
+
export declare const DEFAULT_SERVER_PORT = 3833;
|
|
33
|
+
/**
|
|
34
|
+
* The default name of the app
|
|
35
|
+
*/
|
|
36
|
+
export declare const DEFAULT_APP_NAME = "APP";
|
|
37
|
+
/**
|
|
38
|
+
* The directory of the pages
|
|
39
|
+
*/
|
|
40
|
+
export declare const PAGES_DIR = "pages";
|
|
41
|
+
/**
|
|
42
|
+
* The directory of the router
|
|
43
|
+
*/
|
|
44
|
+
export declare const ROUTER_DIR = "router";
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
/*! VefFramework version: 1.0.9, build time: 2024-12-19T05:12:56.660Z, made by Venus. */
|
|
2
|
+
const s="public",e="env",t="assets",r="VEF_APP_",P="VEF_BUILD_",_="src",c="dist",o=3833,p="APP",a="pages",i="router";export{t as ASSETS_DIR,p as DEFAULT_APP_NAME,c as DEFAULT_OUTPUT_DIR,o as DEFAULT_SERVER_PORT,r as ENV_APP_PREFIX,P as ENV_BUILD_PREFIX,e as ENV_DIR,a as PAGES_DIR,s as PUBLIC_DIR,i as ROUTER_DIR,_ as SRC_DIR};
|
|
3
|
+
/*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
/*! VefFramework version: 1.0.9, build time: 2024-12-19T05:12:56.660Z, made by Venus. */
|
|
2
|
+
import{antfu as r}from"@antfu/eslint-config";import e from"eslint-plugin-tailwindcss";function o(){return r({ignores:["**/node_modules","**/dist","**/public"],stylistic:{indent:2,jsx:!0,quotes:"double",semi:!0,overrides:{"style/line-comment-position":["error",{position:"above"}],"style/jsx-self-closing-comp":["error",{component:!0,html:!0}],"style/jsx-newline":["error",{prevent:!0,allowMultilines:!0}],"style/jsx-props-no-multi-spaces":"error","style/jsx-sort-props":["error",{callbacksLast:!0,shorthandFirst:!0,shorthandLast:!1,multiline:"last",ignoreCase:!0,noSortAlphabetically:!1,reservedFirst:["key","ref"]}],"style/newline-per-chained-call":["error",{ignoreChainWithDepth:2}],"style/object-property-newline":"error","style/brace-style":["error","1tbs"],"style/arrow-parens":["error","as-needed"],"style/multiline-comment-style":["error","starred-block"],"style/implicit-arrow-linebreak":["error","beside"],"style/no-extra-semi":"error","style/array-element-newline":["error",{consistent:!0,multiline:!0,minItems:7}],"style/function-call-argument-newline":["error","consistent"],"style/padding-line-between-statements":["error",{blankLine:"always",prev:"*",next:["block","multiline-block-like","type","interface","enum","function","function-overload"]},{blankLine:"always",prev:["block","multiline-block-like","type","interface","enum","function","function-overload"],next:"*"}],"style/jsx-pascal-case":["error",{allowAllCaps:!1,allowLeadingUnderscore:!1,allowNamespace:!1,ignore:[]}],"style/switch-colon-spacing":["error",{before:!1,after:!0}],"style/object-curly-newline":["error",{ObjectExpression:{multiline:!0,consistent:!0,minProperties:3},ObjectPattern:{multiline:!0,consistent:!0,minProperties:3},ImportDeclaration:{consistent:!0,multiline:!0},ExportDeclaration:{consistent:!0,multiline:!0}}],"style/no-extra-parens":["error","all",{nestedBinaryExpressions:!1,ternaryOperandBinaryExpressions:!1,ignoreJSX:"multi-line"}]}},javascript:{overrides:{"no-duplicate-imports":["error",{includeExports:!0}],"prefer-object-spread":"error","func-style":["error","declaration",{allowArrowFunctions:!0}],curly:["error","all"],"no-useless-escape":"error","no-useless-concat":"error","no-unused-private-class-members":"error","no-unsafe-optional-chaining":"error","no-dupe-else-if":"error","no-eq-null":"error","no-extra-label":"error","no-negated-condition":"error","no-invalid-this":"error","arrow-body-style":["error","as-needed"],"prefer-object-has-own":"error","prefer-numeric-literals":"error","prefer-named-capture-group":"error","prefer-destructuring":"error","object-shorthand":"error","require-atomic-updates":"error","require-await":"error",camelcase:["error",{properties:"always",ignoreGlobals:!0}],"no-promise-executor-return":["error",{allowVoid:!0}],"sort-imports":"off","no-console":"off"}},typescript:{overrides:{"ts/no-unused-expressions":["error",{enforceForJSX:!0}],"ts/no-unused-vars":["error",{args:"after-used",caughtErrors:"all",destructuredArrayIgnorePattern:"^_",ignoreRestSiblings:!0}],"ts/array-type":["error",{default:"array-simple",readonly:"array-simple"}],"ts/consistent-type-assertions":["error",{assertionStyle:"as",objectLiteralTypeAssertions:"allow"}],"ts/consistent-type-definitions":["error","interface"],"ts/max-params":["error",{max:5}]}},react:{overrides:{"react-naming-convention/component-name":["error","PascalCase"],"react-naming-convention/filename-extension":["error",{allow:"as-needed",extensions:[".tsx"]}],"react-hooks-extra/no-redundant-custom-hook":"error","react-hooks-extra/no-unnecessary-use-memo":"error","react-hooks-extra/no-unnecessary-use-callback":"error","react-naming-convention/use-state":"error","react-refresh/only-export-components":"error","react-hooks/exhaustive-deps":["error",{additionalHooks:"^use(Deep|Shallow)Compare"}],"react/no-clone-element":"off","react/no-class-component":"error","react/no-children-prop":"off","react/no-children-to-array":"off","react/no-children-for-each":"off","react/no-children-count":"off"}},jsx:!0,regexp:!0,jsonc:!0,yaml:!0,toml:!0,markdown:{overrides:{"markdown/fenced-code-language":"error","markdown/no-duplicate-headings":"error","markdown/no-empty-links":"error"}},test:!0,formatters:{markdown:"prettier",prettierOptions:{singleQuote:!1,semi:!0,tabWidth:2,useTabs:!1,trailingComma:"all",endOfLine:"lf",printWidth:160,proseWrap:"never",arrowParens:"avoid",htmlWhitespaceSensitivity:"strict",bracketSameLine:!0,bracketSpacing:!0,quoteProps:"as-needed",jsxSingleQuote:!1,singleAttributePerLine:!1}}},{rules:{"unicorn/filename-case":["error",{case:"kebabCase",ignore:["README.md"]}],"unicorn/prefer-date-now":"error","unicorn/prefer-string-trim-start-end":"error","unicorn/prefer-string-raw":"error","unicorn/prefer-object-from-entries":"error","unicorn/prefer-default-parameters":"error","unicorn/prefer-array-find":"error","unicorn/prefer-array-flat":"error","unicorn/prefer-array-flat-map":"error","unicorn/prefer-array-index-of":"error","unicorn/prefer-array-some":"error","unicorn/prefer-logical-operator-over-ternary":"error","unicorn/no-array-push-push":"error","unicorn/no-empty-file":"error","unicorn/no-array-for-each":"error","unicorn/no-for-loop":"error","unicorn/no-unnecessary-await":"error","unicorn/no-unnecessary-polyfills":"error","unicorn/no-useless-undefined":"error","unicorn/no-useless-switch-case":"error","unicorn/no-useless-spread":"error","unicorn/no-console-spaces":"error","unicorn/no-unused-properties":"error","unicorn/no-useless-promise-resolve-reject":"error","import/order":"off","import/first":"error","import/export":"error","import/no-named-as-default":"off","import/no-named-default":"off","perfectionist/sort-imports":["error",{type:"natural"}],"perfectionist/sort-exports":["error",{type:"natural"}],"perfectionist/sort-named-imports":["error",{type:"natural",groupKind:"values-first"}],"perfectionist/sort-named-exports":["error",{type:"natural",groupKind:"values-first"}]}},{ignores:["**/*.md","**/*.md/*.{ts,tsx}"],rules:{"react-naming-convention/filename":["error",{rule:"kebab-case",excepts:[".*.md/.*.ts"]}]}},...e.configs["flat/recommended"],{rules:{"tailwindcss/migration-from-tailwind-2":"off","tailwindcss/no-arbitrary-value":"off","tailwindcss/classnames-order":"error","tailwindcss/enforces-negative-arbitrary-values":"error","tailwindcss/enforces-shorthand":"error","tailwindcss/no-custom-classname":["error",{whitelist:["vef-.*"]}],"tailwindcss/no-contradicting-classname":"error","tailwindcss/no-unnecessary-arbitrary-value":"error"}})}export{o as defineEslintConfig};
|
|
3
|
+
/*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
|
package/dist/index.d.ts
ADDED
package/dist/index.js
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
/*! VefFramework version: 1.0.9, build time: 2024-12-19T05:12:56.660Z, made by Venus. */
|
|
2
|
+
export{defineCommitlintConfig}from"./commitlint-config.js";export{defineConfig}from"./config.js";export{defineEslintConfig}from"./eslint-config.js";export{defineStylelintConfig}from"./stylelint-config.js";export{defineTailwindConfig}from"./tailwind-config.js";
|
|
3
|
+
/*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The options for the app config plugin
|
|
3
|
+
*/
|
|
4
|
+
export interface PluginAppConfigOptions {
|
|
5
|
+
/**
|
|
6
|
+
* The base public path
|
|
7
|
+
*/
|
|
8
|
+
basePublicPath?: string;
|
|
9
|
+
/**
|
|
10
|
+
* The output directory of the build
|
|
11
|
+
*/
|
|
12
|
+
outputDir?: string;
|
|
13
|
+
/**
|
|
14
|
+
* The name of the app
|
|
15
|
+
*/
|
|
16
|
+
appName?: string;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* The plugin for the app config
|
|
20
|
+
*
|
|
21
|
+
* @param options - The options of the plugin
|
|
22
|
+
* @param options.basePublicPath - The base public path
|
|
23
|
+
* @param options.outputDir - The output directory of the build
|
|
24
|
+
* @param options.appName - The name of the app
|
|
25
|
+
* @returns The plugin
|
|
26
|
+
*/
|
|
27
|
+
export declare function createAppConfigPlugin({ basePublicPath, outputDir, appName, }: PluginAppConfigOptions): import("vite").Plugin<any> | import("vite").Plugin<any>[];
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
/*! VefFramework version: 1.0.9, build time: 2024-12-19T05:12:56.660Z, made by Venus. */
|
|
2
|
+
import e from"unplugin-config/vite";import{DEFAULT_OUTPUT_DIR as n,ENV_APP_PREFIX as i,DEFAULT_APP_NAME as t}from"./constants.js";function p({basePublicPath:p,outputDir:o,appName:a=t}){return e({appName:`VEF_${a}`,baseDir:p,configFile:{generate:!0,fileName:"app.config.js",outputDir:o??n},htmlInjection:{enable:!0,position:"head-prepend",templates:["index.html"]},envVariables:{prefix:i,files:["env/.env","env/.env.production"]}})}export{p as createAppConfigPlugin};
|
|
3
|
+
/*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import type { Plugin, ProxyOptions } from "vite";
|
|
2
|
+
/**
|
|
3
|
+
* The options of the vite plugin for the conventional config
|
|
4
|
+
*/
|
|
5
|
+
export interface PluginConventionalConfigOptions {
|
|
6
|
+
/**
|
|
7
|
+
* The name of the app
|
|
8
|
+
*/
|
|
9
|
+
appName?: string;
|
|
10
|
+
/**
|
|
11
|
+
* The version of the app
|
|
12
|
+
*/
|
|
13
|
+
appVersion: string;
|
|
14
|
+
/**
|
|
15
|
+
* The directory of the project
|
|
16
|
+
*/
|
|
17
|
+
projectDir: string;
|
|
18
|
+
/**
|
|
19
|
+
* The base public path
|
|
20
|
+
*/
|
|
21
|
+
basePublicPath?: string;
|
|
22
|
+
/**
|
|
23
|
+
* The output directory of the build
|
|
24
|
+
*/
|
|
25
|
+
outputDir?: string;
|
|
26
|
+
/**
|
|
27
|
+
* The port of the server
|
|
28
|
+
*/
|
|
29
|
+
serverPort?: number;
|
|
30
|
+
/**
|
|
31
|
+
* The proxies of the server
|
|
32
|
+
*/
|
|
33
|
+
proxies?: Record<string, string | ProxyOptions>;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* The plugin for the conventional config
|
|
37
|
+
*
|
|
38
|
+
* @param options - The options of the plugin
|
|
39
|
+
* @param options.appName - The name of the app
|
|
40
|
+
* @param options.appVersion - The version of the app
|
|
41
|
+
* @param options.basePublicPath - The base public path
|
|
42
|
+
* @param options.projectDir - The directory of the project
|
|
43
|
+
* @param options.outputDir - The output directory of the build
|
|
44
|
+
* @param options.serverPort - The port of the server
|
|
45
|
+
* @param options.proxies - The proxies of the server
|
|
46
|
+
* @returns The plugin
|
|
47
|
+
*/
|
|
48
|
+
export declare function createConventionalConfigPlugin({ appName, appVersion, basePublicPath, projectDir, outputDir, serverPort, proxies, }: PluginConventionalConfigOptions): Plugin;
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
/*! VefFramework version: 1.0.9, build time: 2024-12-19T05:12:56.660Z, made by Venus. */
|
|
2
|
+
import e from"autoprefixer";import{resolve as n}from"node:path";import o from"node:process";import s from"tailwindcss";import{ENV_DIR as i,ENV_BUILD_PREFIX as r,ENV_APP_PREFIX as t,DEFAULT_APP_NAME as c,SRC_DIR as a,DEFAULT_OUTPUT_DIR as d,ASSETS_DIR as u,DEFAULT_SERVER_PORT as l}from"./constants.js";function m({appName:m,appVersion:p,basePublicPath:_,projectDir:f,outputDir:v,serverPort:g,proxies:h}){return{name:"vef-framework:conventional-config",config(F,{command:O}){const y="serve"===O;return{appType:"spa",root:f,base:_,publicDir:"public",envDir:i,envPrefix:[r,t],define:{__VEF_FRAMEWORK_VERSION__:`"${o.env.VEF_FRAMEWORK_VERSION}"`,__VEF_APP_VERSION__:`"${p}"`,__VEF_APP_CONFIG__:y?`\n (function () {\n const env = import.meta.env;\n const config = Object.keys(env).filter(key => key.startsWith(${JSON.stringify(t)}))\n .reduce((acc, key) => {\n acc[key] = env[key];\n return acc;\n }, {});\n return Object.freeze(config);\n })()\n `:`window.__PRODUCTION__VEF_${m??c}__CONF__`},resolve:{alias:{"@":a}},css:{modules:{scopeBehaviour:"local",localsConvention:"camelCase"},postcss:{plugins:[s({config:n(f,"tailwind.config.ts")}),e()]}},esbuild:{drop:["console","debugger"]},build:{outDir:v??d,target:"modules",assetsDir:u,assetsInlineLimit:10240,reportCompressedSize:!1,chunkSizeWarningLimit:512,minify:"terser",cssMinify:"lightningcss",sourcemap:!1,rollupOptions:{input:{main:"index.html"},output:{banner:`/*! Powered by VEF Framework v${o.env.VEF_FRAMEWORK_VERSION}.${p?` App version v${p}.`:""} Built at ${(new Date).toISOString()} */`,chunkFileNames:`${u}/js/[name]-[hash].js`,entryFileNames:`${u}/js/[name]-[hash].js`,assetFileNames:`${u}/[ext]/[name]-[hash].[ext]`,manualChunks:e=>e.includes("/node_modules/react/")||e.includes("/node_modules/react-dom/")?"react":e.includes("/node_modules/antd/")||e.includes("/node_modules/@rc-component/")||e.includes("/node_modules/rc-")?"ui":e.includes("/node_modules/pinyin-pro/")?"pinyin":e.includes("/node_modules/@ant-design/icons/")||e.includes("/node_modules/@ant-design/icons-svg/")||e.includes("/node_modules/lucide-react/")?"icons":e.includes("/node_modules/@vef-framework/")?"vef":e.includes("/node_modules/")?"lib":void 0}}},server:{port:g||l,host:!0,open:!0,proxy:h}}}}}export{m as createConventionalConfigPlugin};
|
|
3
|
+
/*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
/*! VefFramework version: 1.0.9, build time: 2024-12-19T05:12:56.660Z, made by Venus. */
|
|
2
|
+
import e from"vite-plugin-eslint2";function t(){return e({fix:!0,test:!0,dev:!0,build:!0,cache:!0,cacheLocation:"node_modules/.cache/.eslintcache",include:["*.{js,ts,json,jsonc,yaml,toml,md}","src/**/*.{ts,tsx,json,jsonc,yaml,toml,md}"],exclude:["node_modules","virtual:","vef:"],emitError:!0,emitWarning:!0,emitWarningAsError:!0})}export{t as createEslintPlugin};
|
|
3
|
+
/*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
/*! VefFramework version: 1.0.9, build time: 2024-12-19T05:12:56.660Z, made by Venus. */
|
|
2
|
+
import{minify as e}from"html-minifier-terser";const t="index.html",r='\n<!doctype html>\n<html lang="en">\n <head>\n <meta charset="UTF-8" />\n <link rel="icon" type="image/svg+xml" href="%VEF_APP_FAVICON%" />\n <meta name="viewport" content="width=device-width, initial-scale=1.0" />\n <meta name="description" content="Powered by VEF Framework" />\n <title>%VEF_APP_TITLE%</title>\n </head>\n <body>\n <div id="root"></div>\n <script type="module" src="src/main.tsx"><\/script>\n </body>\n</html>\n';function n(){return[{name:"vef-framework:html",resolveId(e){if(e===t)return t},load(e){if(e===t)return r},transformIndexHtml:{order:"pre",handler:()=>r}},{name:"vite-plugin-vef-framework-html-minify",enforce:"post",async generateBundle(r,n){for(const r of Object.values(n))"asset"===r.type&&"string"==typeof r.source&&r.fileName===t&&(r.source=await e(r.source,{collapseBooleanAttributes:!0,collapseInlineTagWhitespace:!0,collapseWhitespace:!0,conservativeCollapse:!1,keepClosingSlash:!0,minifyCSS:!0,minifyJS:!0,minifyURLs:!0,noNewlinesBeforeTagClose:!0,quoteCharacter:'"',removeAttributeQuotes:!1,removeComments:!0,removeEmptyAttributes:!0,removeOptionalTags:!1,removeRedundantAttributes:!0,removeScriptTypeAttributes:!1,removeTagWhitespace:!1,removeEmptyElements:!1,removeStyleLinkTypeAttributes:!1,sortAttributes:!0,sortClassName:!0,trimCustomFragments:!0,useShortDoctype:!0,html5:!0}))}}]}export{n as createHtmlPlugin};
|
|
3
|
+
/*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
/*! VefFramework version: 1.0.9, build time: 2024-12-19T05:12:56.660Z, made by Venus. */
|
|
2
|
+
import{resolve as o,dirname as t}from"node:path";import{fileURLToPath as e}from"node:url";import l from"unplugin-icons/vite";function r(r){return l({autoInstall:!1,compiler:"jsx",jsx:"react",defaultClass:"inline-block",scale:1.2,collectionsNodeResolvePath:[r,o(t(e(import.meta.url)),"..")]})}export{r as createIconsPlugin};
|
|
3
|
+
/*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
/*! VefFramework version: 1.0.9, build time: 2024-12-19T05:12:56.660Z, made by Venus. */
|
|
2
|
+
import{basename as t,dirname as n}from"node:path";function r(){return{name:"vef-framework:injection",transform:(r,i)=>"src"===t(n(i))&&t(i).startsWith("main.ts")?`import "vef:tailwind.css";\n${r}`:null}}export{r as createInjectionPlugin};
|
|
3
|
+
/*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
/*! VefFramework version: 1.0.9, build time: 2024-12-19T05:12:56.660Z, made by Venus. */
|
|
2
|
+
import i from"vite-plugin-inspect";function t(){return i({dev:!0,build:!1})}export{t as createInspectPlugin};
|
|
3
|
+
/*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
/*! VefFramework version: 1.0.9, build time: 2024-12-19T05:12:56.660Z, made by Venus. */
|
|
2
|
+
import e from"@vitejs/plugin-react-swc";function t(){return e({devTarget:"esnext"})}export{t as createReactSwcPlugin};
|
|
3
|
+
/*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
/*! VefFramework version: 1.0.9, build time: 2024-12-19T05:12:56.660Z, made by Venus. */
|
|
2
|
+
import{TanStackRouterVite as e}from"@tanstack/router-plugin/vite";import{resolve as o,dirname as t}from"node:path";import{fileURLToPath as r}from"node:url";import{SRC_DIR as n,PAGES_DIR as i,ROUTER_DIR as a}from"./constants.js";function u(){return e({routesDirectory:o(t(r(import.meta.url)),n,i),generatedRouteTree:o(t(r(import.meta.url)),n,a,"routes.gen.ts"),quoteStyle:"double",semicolons:!0,disableTypes:!1,addExtensions:!1,disableLogging:!1,disableManifestGeneration:!1,routeTreeFileFooter:["/* Auto-generated by @vef-framework/dev, do not edit */"],routeFileIgnorePattern:"components",indexToken:"index",routeToken:"",enableRouteGeneration:!0,autoCodeSplitting:!1})}export{u as createRouterPlugin};
|
|
3
|
+
/*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
/*! VefFramework version: 1.0.9, build time: 2024-12-19T05:12:56.660Z, made by Venus. */
|
|
2
|
+
import e from"vite-plugin-stylelint";function i(){return e({fix:!0,test:!0,dev:!0,build:!0,cache:!0,cacheLocation:"node_modules/.cache/.stylelintcache",include:["src/**/*.{scss,css}"],exclude:["node_modules","virtual:","vef:"],emitError:!0,emitWarning:!0,emitWarningAsError:!0})}export{i as createStylelintPlugin};
|
|
3
|
+
/*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
/*! VefFramework version: 1.0.9, build time: 2024-12-19T05:12:56.660Z, made by Venus. */
|
|
2
|
+
import s from"vite-plugin-svgr";function i(){return s({include:"**/*.svg?react",esbuildOptions:{platform:"browser",minify:!0,jsx:"automatic"},svgrOptions:{plugins:["@svgr/plugin-svgo","@svgr/plugin-jsx"],icon:!1,dimensions:!1,prettier:!0,memo:!0,svgo:!0,ref:!1,typescript:!0,jsxRuntime:"automatic",svgoConfig:{multipass:!0,datauri:"base64",js2svg:{indent:2,pretty:!0},plugins:["preset-default",{name:"prefixIds",params:{prefix:"vef"}},{name:"cleanupIds",params:{force:!0,remove:!0,minify:!0}}]},svgProps:{}}})}export{i as createSvgrPlugin};
|
|
3
|
+
/*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
/*! VefFramework version: 1.0.9, build time: 2024-12-19T05:12:56.660Z, made by Venus. */
|
|
2
|
+
const i="vef:tailwind.css",n=`\0${i}`;function t(){return{name:"vef-framework:tailwindcss",resolveId(t){if(t===i)return n},load(i){if(i===n)return"@tailwind base;\n@tailwind components;\n@tailwind utilities;"}}}export{t as createTailwindcssPlugin};
|
|
3
|
+
/*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
/*! VefFramework version: 1.0.9, build time: 2024-12-19T05:12:56.660Z, made by Venus. */
|
|
2
|
+
import t from"vite-plugin-webfont-dl";function a(){return t(["https://fonts.googleapis.com/css2?family=PT+Sans+Caption:wght@400;700&family=PT+Sans:ital,wght@0,400;0,700;1,400;1,700&display=swap","https://fonts.googleapis.com/css2?family=Martian+Mono:wght@100..800&family=PT+Sans+Caption:wght@400;700&family=PT+Sans:ital,wght@0,400;0,700;1,400;1,700&display=swap"])}export{a as createWebfontPlugin};
|
|
3
|
+
/*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
/*! VefFramework version: 1.0.9, build time: 2024-12-19T05:12:56.660Z, made by Venus. */
|
|
2
|
+
import e from"stylelint-config-recess-order/groups";function n(){return{extends:["stylelint-config-standard-scss","stylelint-config-recommended"],plugins:["stylelint-order"],rules:{"order/order":["dollar-variables","at-variables","custom-properties","less-mixins","declarations","at-rules","rules"],"order/properties-order":e.map((e=>({...e,emptyLineBefore:"always",noEmptyLineBetween:!0}))),"declaration-empty-line-before":null,"at-rule-no-unknown":null,"function-no-unknown":null,"number-max-precision":null,"color-hex-length":"long","color-hex-alpha":"never","color-named":"never","unit-allowed-list":["px","em","rem","%","vw","vh","fr","deg","rad","grad","turn","ms","s"],"scss/function-no-unknown":[!0,{ignoreFunctions:[]}],"scss/at-rule-no-unknown":[!0,{ignoreAtRules:[]}]}}}export{n as defineStylelintConfig};
|
|
3
|
+
/*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
/*! VefFramework version: 1.0.9, build time: 2024-12-19T05:12:56.660Z, made by Venus. */
|
|
2
|
+
import e from"@tailwindcss/container-queries";import r from"tailwindcss/colors.js";function v(){return{content:["src/**/*.{ts,tsx}"],plugins:[e],theme:{colors:{inherit:"inherit",current:"currentColor",transparent:"transparent",black:"#000000",white:"var(--vef-color-white)",primary:"var(--vef-color-primary)","primary-hover":"var(--vef-color-primary-hover)","primary-active":"var(--vef-color-primary-active)",success:"var(--vef-color-success)","success-hover":"var(--vef-color-success-hover)","success-active":"var(--vef-color-success-active)",warning:"var(--vef-color-warning)","warning-hover":"var(--vef-color-warning-hover)","warning-active":"var(--vef-color-warning-active)",error:"var(--vef-color-error)","error-hover":"var(--vef-color-error-hover)","error-active":"var(--vef-color-error-active)",info:"var(--vef-color-info)","info-hover":"var(--vef-color-info-hover)","info-active":"var(--vef-color-info-active)",link:"var(--vef-color-link)","link-hover":"var(--vef-color-link-hover)","link-active":"var(--vef-color-link-active)",blue:{DEFAULT:"var(--vef-blue-6)",1:"var(--vef-blue-1)",2:"var(--vef-blue-2)",3:"var(--vef-blue-3)",4:"var(--vef-blue-4)",5:"var(--vef-blue-5)",6:"var(--vef-blue-6)",7:"var(--vef-blue-7)",8:"var(--vef-blue-8)",9:"var(--vef-blue-9)",10:"var(--vef-blue-10)"},purple:{DEFAULT:"var(--vef-purple-6)",1:"var(--vef-purple-1)",2:"var(--vef-purple-2)",3:"var(--vef-purple-3)",4:"var(--vef-purple-4)",5:"var(--vef-purple-5)",6:"var(--vef-purple-6)",7:"var(--vef-purple-7)",8:"var(--vef-purple-8)",9:"var(--vef-purple-9)",10:"var(--vef-purple-10)"},cyan:{DEFAULT:"var(--vef-cyan-6)",1:"var(--vef-cyan-1)",2:"var(--vef-cyan-2)",3:"var(--vef-cyan-3)",4:"var(--vef-cyan-4)",5:"var(--vef-cyan-5)",6:"var(--vef-cyan-6)",7:"var(--vef-cyan-7)",8:"var(--vef-cyan-8)",9:"var(--vef-cyan-9)",10:"var(--vef-cyan-10)"},green:{DEFAULT:"var(--vef-green-6)",1:"var(--vef-green-1)",2:"var(--vef-green-2)",3:"var(--vef-green-3)",4:"var(--vef-green-4)",5:"var(--vef-green-5)",6:"var(--vef-green-6)",7:"var(--vef-green-7)",8:"var(--vef-green-8)",9:"var(--vef-green-9)",10:"var(--vef-green-10)"},magenta:{DEFAULT:"var(--vef-magenta-6)",1:"var(--vef-magenta-1)",2:"var(--vef-magenta-2)",3:"var(--vef-magenta-3)",4:"var(--vef-magenta-4)",5:"var(--vef-magenta-5)",6:"var(--vef-magenta-6)",7:"var(--vef-magenta-7)",8:"var(--vef-magenta-8)",9:"var(--vef-magenta-9)",10:"var(--vef-magenta-10)"},pink:{DEFAULT:"var(--vef-pink-6)",1:"var(--vef-pink-1)",2:"var(--vef-pink-2)",3:"var(--vef-pink-3)",4:"var(--vef-pink-4)",5:"var(--vef-pink-5)",6:"var(--vef-pink-6)",7:"var(--vef-pink-7)",8:"var(--vef-pink-8)",9:"var(--vef-pink-9)",10:"var(--vef-pink-10)"},red:{DEFAULT:"var(--vef-red-6)",1:"var(--vef-red-1)",2:"var(--vef-red-2)",3:"var(--vef-red-3)",4:"var(--vef-red-4)",5:"var(--vef-red-5)",6:"var(--vef-red-6)",7:"var(--vef-red-7)",8:"var(--vef-red-8)",9:"var(--vef-red-9)",10:"var(--vef-red-10)"},orange:{DEFAULT:"var(--vef-orange-6)",1:"var(--vef-orange-1)",2:"var(--vef-orange-2)",3:"var(--vef-orange-3)",4:"var(--vef-orange-4)",5:"var(--vef-orange-5)",6:"var(--vef-orange-6)",7:"var(--vef-orange-7)",8:"var(--vef-orange-8)",9:"var(--vef-orange-9)",10:"var(--vef-orange-10)"},yellow:{DEFAULT:"var(--vef-yellow-6)",1:"var(--vef-yellow-1)",2:"var(--vef-yellow-2)",3:"var(--vef-yellow-3)",4:"var(--vef-yellow-4)",5:"var(--vef-yellow-5)",6:"var(--vef-yellow-6)",7:"var(--vef-yellow-7)",8:"var(--vef-yellow-8)",9:"var(--vef-yellow-9)",10:"var(--vef-yellow-10)"},volcano:{DEFAULT:"var(--vef-volcano-6)",1:"var(--vef-volcano-1)",2:"var(--vef-volcano-2)",3:"var(--vef-volcano-3)",4:"var(--vef-volcano-4)",5:"var(--vef-volcano-5)",6:"var(--vef-volcano-6)",7:"var(--vef-volcano-7)",8:"var(--vef-volcano-8)",9:"var(--vef-volcano-9)",10:"var(--vef-volcano-10)"},geekblue:{DEFAULT:"var(--vef-geekblue-6)",1:"var(--vef-geekblue-1)",2:"var(--vef-geekblue-2)",3:"var(--vef-geekblue-3)",4:"var(--vef-geekblue-4)",5:"var(--vef-geekblue-5)",6:"var(--vef-geekblue-6)",7:"var(--vef-geekblue-7)",8:"var(--vef-geekblue-8)",9:"var(--vef-geekblue-9)",10:"var(--vef-geekblue-10)"},gold:{DEFAULT:"var(--vef-gold-6)",1:"var(--vef-gold-1)",2:"var(--vef-gold-2)",3:"var(--vef-gold-3)",4:"var(--vef-gold-4)",5:"var(--vef-gold-5)",6:"var(--vef-gold-6)",7:"var(--vef-gold-7)",8:"var(--vef-gold-8)",9:"var(--vef-gold-9)",10:"var(--vef-gold-10)"},lime:{DEFAULT:"var(--vef-lime-6)",1:"var(--vef-lime-1)",2:"var(--vef-lime-2)",3:"var(--vef-lime-3)",4:"var(--vef-lime-4)",5:"var(--vef-lime-5)",6:"var(--vef-lime-6)",7:"var(--vef-lime-7)",8:"var(--vef-lime-8)",9:"var(--vef-lime-9)",10:"var(--vef-lime-10)"},slate:{DEFAULT:r.slate[500],1:r.slate[50],2:r.slate[100],3:r.slate[200],4:r.slate[300],5:r.slate[400],6:r.slate[500],7:r.slate[600],8:r.slate[700],9:r.slate[800],10:r.slate[900]}},extend:{textColor:{"primary-alt":"var(--vef-color-primary-text)","primary-alt-hover":"var(--vef-color-primary-text-hover)","primary-alt-active":"var(--vef-color-primary-text-active)","success-alt":"var(--vef-color-success-text)","success-alt-hover":"var(--vef-color-success-text-hover)","success-alt-active":"var(--vef-color-success-text-active)","warning-alt":"var(--vef-color-warning-text)","warning-alt-hover":"var(--vef-color-warning-text-hover)","warning-alt-active":"var(--vef-color-warning-text-active)","error-alt":"var(--vef-color-error-text)","error-alt-hover":"var(--vef-color-error-text-hover)","error-alt-active":"var(--vef-color-error-text-active)","info-alt":"var(--vef-color-info-text)","info-alt-hover":"var(--vef-color-info-text-hover)","info-alt-active":"var(--vef-color-info-text-active)",base:"var(--vef-color-text-base)",default:"var(--vef-color-text)",secondary:"var(--vef-color-text-secondary)",tertiary:"var(--vef-color-text-tertiary)",quaternary:"var(--vef-color-text-quaternary)",placeholder:"var(--vef-color-text-placeholder)",disabled:"var(--vef-color-text-disabled)",heading:"var(--vef-color-text-heading)",label:"var(--vef-color-text-label)",description:"var(--vef-color-text-description)","light-solid":"var(--vef-color-text-light-solid)",highlight:"var(--vef-color-highlight)",icon:"var(--vef-color-icon)","icon-hover":"var(--vef-color-icon-hover)"},outlineColor:{error:"var(--vef-color-error-outline)",warning:"var(--vef-color-warning-outline)"},backgroundColor:{"primary-alt":"var(--vef-color-primary-bg)","primary-alt-hover":"var(--vef-color-primary-bg-hover)","success-alt":"var(--vef-color-success-bg)","success-alt-hover":"var(--vef-color-success-bg-hover)","warning-alt":"var(--vef-color-warning-bg)","warning-alt-hover":"var(--vef-color-warning-bg-hover)","error-alt":"var(--vef-color-error-bg)","error-alt-hover":"var(--vef-color-error-bg-hover)","info-alt":"var(--vef-color-info-bg)","info-alt-hover":"var(--vef-color-info-bg-hover)",base:"var(--vef-color-bg-base)",layout:"var(--vef-color-bg-layout)",spotlight:"var(--vef-color-bg-spotlight)",solid:"var(--vef-color-bg-solid)","solid-hover":"var(--vef-color-bg-solid-hover)","solid-active":"var(--vef-color-bg-solid-active)",container:"var(--vef-color-bg-container)","container-disabled":"var(--vef-color-bg-container-disabled)",elevated:"var(--vef-color-bg-elevated)",blur:"var(--vef-color-bg-blur)",fill:"var(--vef-color-fill)","fill-secondary":"var(--vef-color-fill-secondary)","fill-tertiary":"var(--vef-color-fill-tertiary)","fill-quaternary":"var(--vef-color-fill-quaternary)","fill-content":"var(--vef-color-fill-content)","fill-content-hover":"var(--vef-color-fill-content-hover)","fill-alt":"var(--vef-color-fill-alter)",mask:"var(--vef-color-bg-mask)","text-hover":"var(--vef-color-bg-text-hover)","text-active":"var(--vef-color-bg-text-active)","control-item-hover":"var(--vef-control-item-bg-hover)","control-item-active":"var(--vef-control-item-bg-active)","control-item-active-hover":"var(--vef-control-item-bg-active-hover)","control-item-active-disabled":"var(--vef-control-item-bg-active-disabled)"},borderColor:{"primary-alt":"var(--vef-color-primary-border)","primary-alt-hover":"var(--vef-color-primary-border-hover)","success-alt":"var(--vef-color-success-border)","success-alt-hover":"var(--vef-color-success-border-hover)","warning-alt":"var(--vef-color-warning-border)","warning-alt-hover":"var(--vef-color-warning-border-hover)","error-alt":"var(--vef-color-error-border)","error-alt-hover":"var(--vef-color-error-border-hover)","info-alt":"var(--vef-color-info-border)","info-alt-hover":"var(--vef-color-info-border-hover)",base:"var(--vef-color-border)",secondary:"var(--vef-color-border-secondary)"},fontFamily:{base:"var(--vef-font-family)",code:"var(--vef-font-family-code)"},fontSize:{base:"var(--vef-font-size)",sm:"var(--vef-font-size-sm)",lg:"var(--vef-font-size-lg)",xl:"var(--vef-font-size-xl)",heading1:"var(--vef-font-size-heading-1)",heading2:"var(--vef-font-size-heading-2)",heading3:"var(--vef-font-size-heading-3)",heading4:"var(--vef-font-size-heading-4)",heading5:"var(--vef-font-size-heading-5)"},fontWeight:{strong:"var(--vef-font-weight-strong)"},borderWidth:{base:"var(--vef-line-width)",bold:"var(--vef-line-width-bold)"},borderRadius:{DEFAULT:"var(--vef-border-radius)",xs:"var(--vef-border-radius-xs)",sm:"var(--vef-border-radius-sm)",lg:"var(--vef-border-radius-lg)",outer:"var(--vef-border-radius-outer)"},height:{control:"var(--vef-control-height)","control-sm":"var(--vef-control-height-sm)","control-xs":"var(--vef-control-height-xs)","control-lg":"var(--vef-control-height-lg)",font:"var(--vef-font-height)","font-sm":"var(--vef-font-height-sm)","font-lg":"var(--vef-font-height-lg)"},lineHeight:{base:"var(--vef-line-height)",sm:"var(--vef-line-height-sm)",lg:"var(--vef-line-height-lg)","heading-1":"var(--vef-line-height-heading-1)","heading-2":"var(--vef-line-height-heading-2)","heading-3":"var(--vef-line-height-heading-3)","heading-4":"var(--vef-line-height-heading-4)","heading-5":"var(--vef-line-height-heading-5)"},spacing:{base:"var(--vef-margin)",xxs:"var(--vef-margin-xxs)",xs:"var(--vef-margin-xs)",sm:"var(--vef-margin-sm)",md:"var(--vef-margin-md)",lg:"var(--vef-margin-lg)",xl:"var(--vef-margin-xl)",xxl:"var(--vef-margin-xxl)"},boxShadow:{base:"var(--vef-box-shadow)",secondary:"var(--vef-box-shadow-secondary)",tertiary:"var(--vef-box-shadow-tertiary)",card:"var(--vef-box-shadow-card)",elevated:"0 0 1px rgb(0 0 0 / 30%), 0 4px 14px rgb(0 0 0 / 10%)"},transitionDuration:{fast:"var(--vef-motion-duration-fast)",mid:"var(--vef-motion-duration-mid)",slow:"var(--vef-motion-duration-slow)"},transitionTimingFunction:{"ease-out-circ":"var(--vef-motion-ease-out-circ)","ease-in-out-circ":"var(--vef-motion-ease-in-out-circ)","ease-out":"var(--vef-motion-ease-out)","ease-in-out":"var(--vef-motion-ease-in-out)","ease-out-back":"var(--vef-motion-ease-out-back)","ease-in-back":"var(--vef-motion-ease-in-back)","ease-in-quint":"var(--vef-motion-ease-in-quint)","ease-out-quint":"var(--vef-motion-ease-out-quint)"},zIndex:{base:"var(--vef-z-index-base)",popup:"var(--vef-z-index-popup)"}}}}}export{v as defineTailwindConfig};
|
|
3
|
+
/*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
|
package/dist/types.d.ts
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The development environment configuration
|
|
3
|
+
*/
|
|
4
|
+
export interface DevelopmentEnvConfig {
|
|
5
|
+
/**
|
|
6
|
+
* The port of the dev server
|
|
7
|
+
*/
|
|
8
|
+
port: number;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* The production environment configuration
|
|
12
|
+
*/
|
|
13
|
+
export interface ProductionEnvConfig {
|
|
14
|
+
}
|
|
15
|
+
export type EnvConfig = DevelopmentEnvConfig & ProductionEnvConfig;
|
package/package.json
ADDED
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@vef-framework/dev",
|
|
3
|
+
"type": "module",
|
|
4
|
+
"version": "1.0.9",
|
|
5
|
+
"private": false,
|
|
6
|
+
"packageManager": "pnpm@9.15.0",
|
|
7
|
+
"description": "The development tools of the VEF framework",
|
|
8
|
+
"author": "Venus",
|
|
9
|
+
"keywords": [
|
|
10
|
+
"vef",
|
|
11
|
+
"vef-framework",
|
|
12
|
+
"vef-dev"
|
|
13
|
+
],
|
|
14
|
+
"main": "dist/index.js",
|
|
15
|
+
"types": "dist/index.d.ts",
|
|
16
|
+
"bin": {
|
|
17
|
+
"vef": "bin/vef.js"
|
|
18
|
+
},
|
|
19
|
+
"files": [
|
|
20
|
+
"*"
|
|
21
|
+
],
|
|
22
|
+
"engines": {
|
|
23
|
+
"node": ">=20"
|
|
24
|
+
},
|
|
25
|
+
"dependencies": {
|
|
26
|
+
"@antfu/eslint-config": "3.11.2",
|
|
27
|
+
"@commitlint/cli": "19.6.0",
|
|
28
|
+
"@commitlint/config-conventional": "19.6.0",
|
|
29
|
+
"@commitlint/format": "19.5.0",
|
|
30
|
+
"@commitlint/types": "19.5.0",
|
|
31
|
+
"@eslint-react/eslint-plugin": "1.19.0",
|
|
32
|
+
"@iconify-json/hugeicons": "^1.2.2",
|
|
33
|
+
"@iconify-json/lucide": "^1.2.19",
|
|
34
|
+
"@iconify-json/mingcute": "^1.2.2",
|
|
35
|
+
"@iconify-json/tabler": "^1.2.13",
|
|
36
|
+
"@svgr/plugin-svgo": "^8.1.0",
|
|
37
|
+
"@tailwindcss/container-queries": "^0.1.1",
|
|
38
|
+
"@tanstack/react-query-devtools": "^5.62.7",
|
|
39
|
+
"@tanstack/router-devtools": "^1.90.0",
|
|
40
|
+
"@tanstack/router-plugin": "^1.87.13",
|
|
41
|
+
"@vitejs/plugin-react-swc": "^3.7.2",
|
|
42
|
+
"autoprefixer": "^10.4.20",
|
|
43
|
+
"browserslist": "^4.24.3",
|
|
44
|
+
"chalk": "^5.3.0",
|
|
45
|
+
"commander": "^12.1.0",
|
|
46
|
+
"consola": "^3.2.3",
|
|
47
|
+
"dotenv": "^16.4.7",
|
|
48
|
+
"eslint": "9.16.0",
|
|
49
|
+
"eslint-plugin-format": "0.1.3",
|
|
50
|
+
"eslint-plugin-react-hooks": "5.1.0",
|
|
51
|
+
"eslint-plugin-react-refresh": "0.4.16",
|
|
52
|
+
"eslint-plugin-tailwindcss": "^3.17.5",
|
|
53
|
+
"execa": "9.5.2",
|
|
54
|
+
"fs-extra": "^11.2.0",
|
|
55
|
+
"html-minifier-terser": "^7.2.0",
|
|
56
|
+
"husky": "9.1.7",
|
|
57
|
+
"lightningcss": "^1.28.2",
|
|
58
|
+
"lint-staged": "^15.2.11",
|
|
59
|
+
"postcss": "^8.4.49",
|
|
60
|
+
"sass-embedded": "^1.83.0",
|
|
61
|
+
"stylelint": "^16.12.0",
|
|
62
|
+
"stylelint-config-recess-order": "^5.1.1",
|
|
63
|
+
"stylelint-config-recommended": "^14.0.1",
|
|
64
|
+
"stylelint-config-standard-scss": "^14.0.0",
|
|
65
|
+
"stylelint-order": "^6.0.4",
|
|
66
|
+
"tailwindcss": "^3.4.16",
|
|
67
|
+
"terser": "^5.37.0",
|
|
68
|
+
"tslib": "2.8.1",
|
|
69
|
+
"unplugin-config": "^0.1.5",
|
|
70
|
+
"unplugin-icons": "^0.22.0",
|
|
71
|
+
"vite": "^6.0.3",
|
|
72
|
+
"vite-plugin-eslint2": "^5.0.3",
|
|
73
|
+
"vite-plugin-inspect": "^0.10.3",
|
|
74
|
+
"vite-plugin-stylelint": "^6.0.0",
|
|
75
|
+
"vite-plugin-svgr": "^4.3.0",
|
|
76
|
+
"vite-plugin-webfont-dl": "^3.10.3"
|
|
77
|
+
},
|
|
78
|
+
"publishConfig": {
|
|
79
|
+
"access": "public"
|
|
80
|
+
}
|
|
81
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
{
|
|
2
|
+
"compilerOptions": {
|
|
3
|
+
"composite": true,
|
|
4
|
+
"tsBuildInfoFile": "./node_modules/.tmp/tsconfig.app.tsbuildinfo",
|
|
5
|
+
"target": "ES2022",
|
|
6
|
+
"jsx": "react-jsx",
|
|
7
|
+
"lib": ["ES2022", "DOM", "DOM.Iterable"],
|
|
8
|
+
"moduleDetection": "force",
|
|
9
|
+
"useDefineForClassFields": true,
|
|
10
|
+
"module": "ES2022",
|
|
11
|
+
"moduleResolution": "Bundler",
|
|
12
|
+
"allowImportingTsExtensions": false,
|
|
13
|
+
|
|
14
|
+
/* Linting */
|
|
15
|
+
"strict": true,
|
|
16
|
+
"noFallthroughCasesInSwitch": true,
|
|
17
|
+
"noImplicitAny": true,
|
|
18
|
+
"noImplicitOverride": true,
|
|
19
|
+
"noUnusedLocals": true,
|
|
20
|
+
"noUnusedParameters": true,
|
|
21
|
+
"declaration": true,
|
|
22
|
+
"emitDeclarationOnly": true,
|
|
23
|
+
"importHelpers": true,
|
|
24
|
+
"noEmit": true,
|
|
25
|
+
"allowSyntheticDefaultImports": true,
|
|
26
|
+
"esModuleInterop": true,
|
|
27
|
+
"isolatedModules": true,
|
|
28
|
+
"skipLibCheck": true,
|
|
29
|
+
"noUncheckedSideEffectImports": true
|
|
30
|
+
}
|
|
31
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
{
|
|
2
|
+
"compilerOptions": {
|
|
3
|
+
"composite": true,
|
|
4
|
+
"tsBuildInfoFile": "./node_modules/.tmp/tsconfig.node.tsbuildinfo",
|
|
5
|
+
"target": "ES2022",
|
|
6
|
+
"lib": ["ES2022"],
|
|
7
|
+
"module": "NodeNext",
|
|
8
|
+
"moduleResolution": "NodeNext",
|
|
9
|
+
"allowImportingTsExtensions": false,
|
|
10
|
+
|
|
11
|
+
/* Linting */
|
|
12
|
+
"strict": true,
|
|
13
|
+
"noFallthroughCasesInSwitch": true,
|
|
14
|
+
"noImplicitAny": true,
|
|
15
|
+
"noImplicitOverride": true,
|
|
16
|
+
"noUnusedLocals": true,
|
|
17
|
+
"noUnusedParameters": true,
|
|
18
|
+
"importHelpers": true,
|
|
19
|
+
"noEmit": true,
|
|
20
|
+
"allowSyntheticDefaultImports": true,
|
|
21
|
+
"esModuleInterop": true,
|
|
22
|
+
"skipLibCheck": true
|
|
23
|
+
}
|
|
24
|
+
}
|