vueless 0.0.8 → 0.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/package.json +4 -3
- package/src/service.tailwind/index.js +0 -7
- package/src/ui.image-icon/index.vue +16 -6
- package/.browserslistrc +0 -4
- package/.editorconfig +0 -12
- package/.eslintignore +0 -6
- package/.eslintrc.cjs +0 -66
- package/.storybook/configs/main.config.js +0 -20
- package/.storybook/decorators/vue3SourceDecorator.js +0 -119
- package/.storybook/index.pcss +0 -3
- package/.storybook/main.js +0 -20
- package/.storybook/manager-head.html +0 -10
- package/.storybook/manager.js +0 -6
- package/.storybook/preview-head.html +0 -72
- package/.storybook/preview.js +0 -42
- package/.storybook/themes/vueless.docs.theme.js +0 -41
- package/.storybook/themes/vueless.theme.js +0 -45
- package/.web-types-gen/index.js +0 -17
- package/.web-types-gen/lib/build.js +0 -252
- package/.web-types-gen/lib/config.js +0 -32
- package/index.pcss +0 -3
- package/postcss.config.js +0 -9
- package/public/images/logo.png +0 -0
- package/readme/UGroup.md +0 -25
- package/readme/UNotify.md +0 -53
- package/readme/UPage.md +0 -37
- package/readme/UTopLoader.md +0 -27
- package/readme/customization.md +0 -347
- package/readme/installation.md +0 -139
- package/readme/storybook-pages/Customisation.mdx +0 -6
- package/readme/storybook-pages/Installation.mdx +0 -7
- package/tailwind.config.js +0 -11
- package/vite.config.mjs +0 -39
- package/vueless.config.js +0 -7
- package/web-types.json +0 -7187
package/package.json
CHANGED
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "vueless",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.9",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"description": "Vue Styleless Component Framework.",
|
|
6
6
|
"homepage": "https://vueless.com",
|
|
7
7
|
"author": "Johnny Grid",
|
|
8
8
|
"main": "index.js",
|
|
9
9
|
"type": "module",
|
|
10
|
+
"files": ["src"],
|
|
10
11
|
"scripts": {
|
|
11
12
|
"lint": "eslint --ext .vue,.js,.ts --no-fix --ignore-path .eslintignore src/ .storybook/ tests/",
|
|
12
13
|
"lint:fix": "eslint --ext .vue,.js,.ts --fix --ignore-path .eslintignore src/ .storybook/ tests/",
|
|
@@ -14,9 +15,9 @@
|
|
|
14
15
|
"release": "release-it patch --ci",
|
|
15
16
|
"release:production": "release-it minor --ci",
|
|
16
17
|
"release:production-major": "release-it major --ci",
|
|
17
|
-
"sb:dev-full": "STORYBOOK_FULL=1 storybook dev -p 6006 --no-open",
|
|
18
|
+
"sb:dev-full": "STORYBOOK_VUELESS_ENV=1 STORYBOOK_FULL=1 storybook dev -p 6006 --no-open",
|
|
18
19
|
"sb:dev": "storybook dev -p 6006 --docs --no-open",
|
|
19
|
-
"sb:build": "storybook build",
|
|
20
|
+
"sb:build": "STORYBOOK_VUELESS_ENV=1 storybook build",
|
|
20
21
|
"sb:preview": "vite preview --host --outDir=storybook-static",
|
|
21
22
|
"vueless:update": "yarn add -D file:../vite-plugin-vueless file:../vueless-storybook",
|
|
22
23
|
"postinstall": "node .web-types-gen"
|
|
@@ -90,13 +90,6 @@ export default class TailwindServiceDefault {
|
|
|
90
90
|
brand: { ...brandPalette, DEFAULT: brandColor },
|
|
91
91
|
gray: grayPalette,
|
|
92
92
|
},
|
|
93
|
-
spacing: {
|
|
94
|
-
"safe-top": "env(safe-area-inset-top)",
|
|
95
|
-
"safe-bottom": "env(safe-area-inset-bottom)",
|
|
96
|
-
"safe-left": "env(safe-area-inset-left)",
|
|
97
|
-
"safe-right": "env(safe-area-inset-right)",
|
|
98
|
-
"mobile-menu-height": "3.5rem",
|
|
99
|
-
},
|
|
100
93
|
fontSize: {
|
|
101
94
|
"2xs": ["0.625rem", "0.875rem"], // 10px
|
|
102
95
|
},
|
|
@@ -147,12 +147,22 @@ const { config, wrapperAttrs, containerAttrs, iconAttrs } = useAttrs(props);
|
|
|
147
147
|
let generatedIcons = [];
|
|
148
148
|
|
|
149
149
|
if (import.meta.env.PROD) {
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
150
|
+
// when building storybook from inside the package (only for Vueless contributors).
|
|
151
|
+
if (import.meta.env.STORYBOOK_VUELESS_ENV) {
|
|
152
|
+
generatedIcons = Object.entries(
|
|
153
|
+
import.meta.glob(`../assets/images/.generated/**/*.svg`, {
|
|
154
|
+
eager: true,
|
|
155
|
+
query: "?component",
|
|
156
|
+
}),
|
|
157
|
+
);
|
|
158
|
+
} else {
|
|
159
|
+
generatedIcons = Object.entries(
|
|
160
|
+
import.meta.glob(`../../../../src/assets/images/.generated/**/*.svg`, {
|
|
161
|
+
eager: true,
|
|
162
|
+
query: "?component",
|
|
163
|
+
}),
|
|
164
|
+
);
|
|
165
|
+
}
|
|
156
166
|
}
|
|
157
167
|
|
|
158
168
|
const dynamicComponent = computed(() => {
|
package/.browserslistrc
DELETED
package/.editorconfig
DELETED
package/.eslintignore
DELETED
package/.eslintrc.cjs
DELETED
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
module.exports = {
|
|
2
|
-
root: true,
|
|
3
|
-
env: {
|
|
4
|
-
node: true,
|
|
5
|
-
browser: true,
|
|
6
|
-
es2020: true,
|
|
7
|
-
},
|
|
8
|
-
plugins: ["tailwindcss"],
|
|
9
|
-
extends: [
|
|
10
|
-
"eslint:recommended",
|
|
11
|
-
"plugin:vue/vue3-recommended",
|
|
12
|
-
"@vue/prettier",
|
|
13
|
-
"plugin:prettier/recommended",
|
|
14
|
-
"plugin:tailwindcss/recommended",
|
|
15
|
-
],
|
|
16
|
-
rules: {
|
|
17
|
-
"no-console": process.env.PROD ? "error" : "warn",
|
|
18
|
-
"no-debugger": process.env.PROD ? "error" : "warn",
|
|
19
|
-
"arrow-parens": ["error", "always"],
|
|
20
|
-
curly: ["error", "multi-line"],
|
|
21
|
-
"padding-line-between-statements": [
|
|
22
|
-
"error",
|
|
23
|
-
{ blankLine: "always", prev: ["const", "let", "var"], next: "*" },
|
|
24
|
-
{ blankLine: "any", prev: ["const", "let", "var"], next: ["const", "let", "var"] },
|
|
25
|
-
{ blankLine: "always", prev: "directive", next: "*" },
|
|
26
|
-
{ blankLine: "any", prev: "directive", next: "directive" },
|
|
27
|
-
{ blankLine: "always", prev: "block-like", next: "*" },
|
|
28
|
-
{ blankLine: "always", prev: "*", next: "block-like" },
|
|
29
|
-
{ blankLine: "always", prev: "*", next: "return" },
|
|
30
|
-
],
|
|
31
|
-
"vue/multi-word-component-names": [
|
|
32
|
-
"error",
|
|
33
|
-
{ ignores: ["index", "Component", "Modal", "Page"] },
|
|
34
|
-
],
|
|
35
|
-
"vue/max-len": ["error", { code: 120, template: 960, ignoreComments: true, ignoreUrls: true }],
|
|
36
|
-
"vue/padding-line-between-blocks": ["error", "always"],
|
|
37
|
-
"vue/v-on-event-hyphenation": ["error", "never"],
|
|
38
|
-
"vue/no-v-html": "off",
|
|
39
|
-
"tailwindcss/no-custom-classname": "off",
|
|
40
|
-
"prettier/prettier": ["warn", { printWidth: 100, tabWidth: 2 }],
|
|
41
|
-
},
|
|
42
|
-
overrides: [
|
|
43
|
-
{
|
|
44
|
-
files: ["src/**/default.config.{js,ts}"],
|
|
45
|
-
rules: {
|
|
46
|
-
"vue/max-len": ["error", { code: 140 }],
|
|
47
|
-
"prettier/prettier": ["warn", { printWidth: 120, tabWidth: 2 }],
|
|
48
|
-
},
|
|
49
|
-
},
|
|
50
|
-
{
|
|
51
|
-
files: [".storybook/preview.{js,ts}"],
|
|
52
|
-
rules: {
|
|
53
|
-
"vue/max-len": ["error", { code: 280 }],
|
|
54
|
-
"prettier/prettier": ["warn", { printWidth: 280, tabWidth: 2 }],
|
|
55
|
-
},
|
|
56
|
-
},
|
|
57
|
-
{
|
|
58
|
-
files: ["**/*.{stories}.{js,ts,jsx,tsx}"],
|
|
59
|
-
extends: ["plugin:storybook/recommended"],
|
|
60
|
-
},
|
|
61
|
-
],
|
|
62
|
-
parserOptions: {
|
|
63
|
-
ecmaVersion: "latest",
|
|
64
|
-
module: "esnext",
|
|
65
|
-
},
|
|
66
|
-
};
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import vuelessDocsTheme from "../themes/vueless.docs.theme";
|
|
2
|
-
import colors from "tailwindcss/colors.js";
|
|
3
|
-
|
|
4
|
-
export const docs = {
|
|
5
|
-
theme: vuelessDocsTheme,
|
|
6
|
-
source: {
|
|
7
|
-
language: "html",
|
|
8
|
-
},
|
|
9
|
-
};
|
|
10
|
-
|
|
11
|
-
export const backgrounds = {
|
|
12
|
-
default: "white",
|
|
13
|
-
values: [
|
|
14
|
-
{ name: "white", value: colors.white },
|
|
15
|
-
{ name: "light", value: colors.gray[50] },
|
|
16
|
-
{ name: "dark", value: colors.gray[900] },
|
|
17
|
-
],
|
|
18
|
-
};
|
|
19
|
-
|
|
20
|
-
export const layout = "fullscreen";
|
|
@@ -1,119 +0,0 @@
|
|
|
1
|
-
import { addons, makeDecorator } from "@storybook/preview-api";
|
|
2
|
-
import { h, onMounted, watch } from "vue";
|
|
3
|
-
import { setBrandColor } from "vueless/src/service.ui";
|
|
4
|
-
|
|
5
|
-
export const vue3SourceDecorator = makeDecorator({
|
|
6
|
-
name: "vue3SourceDecorator",
|
|
7
|
-
wrapper: (storyFn, context) => {
|
|
8
|
-
const story = storyFn(context);
|
|
9
|
-
|
|
10
|
-
// this returns a new component that computes the source code when mounted
|
|
11
|
-
// and emits an events that is handled by addons-docs
|
|
12
|
-
// watch args and re-emit on change
|
|
13
|
-
return {
|
|
14
|
-
components: { story },
|
|
15
|
-
setup() {
|
|
16
|
-
onMounted(() => {
|
|
17
|
-
setSourceCode();
|
|
18
|
-
});
|
|
19
|
-
|
|
20
|
-
watch(context.args, () => {
|
|
21
|
-
setSourceCode();
|
|
22
|
-
});
|
|
23
|
-
|
|
24
|
-
setBrandColor();
|
|
25
|
-
|
|
26
|
-
function setSourceCode() {
|
|
27
|
-
try {
|
|
28
|
-
const src = context.originalStoryFn(context.args).template;
|
|
29
|
-
const code = templateSourceCode(src, context.args, context.argTypes);
|
|
30
|
-
const channel = addons.getChannel();
|
|
31
|
-
|
|
32
|
-
const emitFormattedTemplate = async () => {
|
|
33
|
-
const prettier = await import("prettier2");
|
|
34
|
-
const prettierHtml = await import("prettier2/parser-html");
|
|
35
|
-
|
|
36
|
-
const formattedCode = prettier.format(code, {
|
|
37
|
-
parser: "html",
|
|
38
|
-
plugins: [prettierHtml],
|
|
39
|
-
htmlWhitespaceSensitivity: "ignore",
|
|
40
|
-
});
|
|
41
|
-
|
|
42
|
-
// emits an event when the transformation is completed
|
|
43
|
-
channel.emit("storybook/docs/snippet-rendered", {
|
|
44
|
-
id: context.id,
|
|
45
|
-
args: context.args,
|
|
46
|
-
source: formattedCode,
|
|
47
|
-
});
|
|
48
|
-
};
|
|
49
|
-
|
|
50
|
-
emitFormattedTemplate();
|
|
51
|
-
} catch (e) {
|
|
52
|
-
// eslint-disable-next-line no-console
|
|
53
|
-
console.warn("Failed to render code", e);
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
return () => h("div", { style: `padding: 2rem 1.5rem 3rem 1.5rem;` }, [h(story)]);
|
|
58
|
-
},
|
|
59
|
-
};
|
|
60
|
-
},
|
|
61
|
-
});
|
|
62
|
-
|
|
63
|
-
function templateSourceCode(templateSource, args, argTypes) {
|
|
64
|
-
const componentArgs = {};
|
|
65
|
-
|
|
66
|
-
for (const [key, val] of Object.entries(argTypes)) {
|
|
67
|
-
const value = args[key];
|
|
68
|
-
|
|
69
|
-
if (
|
|
70
|
-
typeof val !== "undefined" &&
|
|
71
|
-
val.table &&
|
|
72
|
-
val.table.category === "props" &&
|
|
73
|
-
value !== val.defaultValue
|
|
74
|
-
) {
|
|
75
|
-
componentArgs[key] = val;
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
|
|
79
|
-
const slotTemplateCode =
|
|
80
|
-
// eslint-disable-next-line vue/max-len
|
|
81
|
-
'<template v-for="(slot, index) of slots" :key="index" v-slot:[slot]><template v-if="args[slot]">{{ args[slot] }}</template></template>';
|
|
82
|
-
const templateDefaultRegEx = /<template #default>([\s\S]*?)<\/template>/g;
|
|
83
|
-
|
|
84
|
-
return templateSource
|
|
85
|
-
.replace(/>[\s]+</g, "><")
|
|
86
|
-
.trim()
|
|
87
|
-
.replace(slotTemplateCode, "")
|
|
88
|
-
.replace(templateDefaultRegEx, "$1")
|
|
89
|
-
.replace(
|
|
90
|
-
'v-bind="args"',
|
|
91
|
-
Object.keys(componentArgs)
|
|
92
|
-
.map((key) => " " + propToSource(kebabCase(key), args[key]))
|
|
93
|
-
.join(""),
|
|
94
|
-
);
|
|
95
|
-
}
|
|
96
|
-
|
|
97
|
-
function propToSource(key, val) {
|
|
98
|
-
const type = typeof val;
|
|
99
|
-
|
|
100
|
-
switch (type) {
|
|
101
|
-
case "boolean":
|
|
102
|
-
return val ? key : "";
|
|
103
|
-
case "string":
|
|
104
|
-
return `${key}="${val}"`;
|
|
105
|
-
default:
|
|
106
|
-
return `:${key}="${val}"`;
|
|
107
|
-
}
|
|
108
|
-
}
|
|
109
|
-
|
|
110
|
-
function kebabCase(str) {
|
|
111
|
-
return str
|
|
112
|
-
.split("")
|
|
113
|
-
.map((letter, idx) => {
|
|
114
|
-
return letter.toUpperCase() === letter
|
|
115
|
-
? `${idx !== 0 ? "-" : ""}${letter.toLowerCase()}`
|
|
116
|
-
: letter;
|
|
117
|
-
})
|
|
118
|
-
.join("");
|
|
119
|
-
}
|
package/.storybook/index.pcss
DELETED
package/.storybook/main.js
DELETED
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
/** @type { import('@storybook/vue3-vite').StorybookConfig } */
|
|
2
|
-
export default {
|
|
3
|
-
stories: ["../src/**/*.stories.@(js|jsx|ts|tsx)", "../src/**/*.@(mdx)"],
|
|
4
|
-
addons: [
|
|
5
|
-
"@storybook/addon-links",
|
|
6
|
-
"@storybook/addon-essentials",
|
|
7
|
-
"@storybook/addon-interactions",
|
|
8
|
-
],
|
|
9
|
-
framework: {
|
|
10
|
-
name: "@storybook/vue3-vite",
|
|
11
|
-
options: {},
|
|
12
|
-
},
|
|
13
|
-
docs: {
|
|
14
|
-
autodocs: true,
|
|
15
|
-
},
|
|
16
|
-
env: (config) => ({
|
|
17
|
-
...config,
|
|
18
|
-
BASE_URL: "/",
|
|
19
|
-
}),
|
|
20
|
-
};
|
package/.storybook/manager.js
DELETED
|
@@ -1,72 +0,0 @@
|
|
|
1
|
-
<!--
|
|
2
|
-
Overrides content of preview IFRAME HTML page's <head> tag,
|
|
3
|
-
affecting rendered component(s) below Canvas and Docs tabs.
|
|
4
|
-
-->
|
|
5
|
-
<!-- Fonts overriding -->
|
|
6
|
-
<link rel="dns-prefetch" href="https://fonts.googleapis.com">
|
|
7
|
-
<link rel="dns-prefetch" href="https://fonts.gstatic.com">
|
|
8
|
-
<link rel="preconnect" crossorigin="anonymous" href="https://fonts.googleapis.com">
|
|
9
|
-
<link rel="preconnect" crossorigin="anonymous" href="https://fonts.gstatic.com">
|
|
10
|
-
<link rel="stylesheet" crossorigin="anonymous" href="https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;700&display=swap">
|
|
11
|
-
|
|
12
|
-
<!-- Styles overriding -->
|
|
13
|
-
<style>
|
|
14
|
-
body {
|
|
15
|
-
font-family: Roboto, sans-serif;
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
#storybook-docs h2 {
|
|
19
|
-
margin-top: 32px !important;
|
|
20
|
-
margin-bottom: 24px !important;
|
|
21
|
-
padding-bottom: 8px !important;
|
|
22
|
-
font-weight: bold !important;
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
.docblock-argstable-body {
|
|
26
|
-
filter: none !important;
|
|
27
|
-
border-radius: 0.5rem !important;
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
.docblock-argstable-body tr:not([title]) > td {
|
|
31
|
-
background-color: white !important;
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
.docblock-argstable-body tr td {
|
|
35
|
-
border-radius: 0 !important;
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
.sbdocs-preview {
|
|
39
|
-
box-shadow: none !important;
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
.docblock-argstable [type='checkbox']:checked,
|
|
43
|
-
.docblock-argstable [type='radio']:checked {
|
|
44
|
-
background-color: rgb(17 24 39) !important;
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
.docblock-argstable [type='checkbox']:focus,
|
|
48
|
-
.docblock-argstable [type='radio']:focus {
|
|
49
|
-
@apply !ring-gray-300;
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
.markdown {
|
|
53
|
-
.docblock-source {
|
|
54
|
-
margin: 0px 0 24px !important;
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
code {
|
|
58
|
-
background-color: #f3f4f6 !important;
|
|
59
|
-
border-color: #d1d5db !important;
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
.sbdocs-a {
|
|
63
|
-
border-bottom: dashed 1px #4b5563;
|
|
64
|
-
color: #4b5563;
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
.sbdocs-a:hover {
|
|
68
|
-
border-bottom: none;
|
|
69
|
-
color: #4b5563;
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
</style>
|
package/.storybook/preview.js
DELETED
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
import { setup } from "@storybook/vue3";
|
|
2
|
-
import { backgrounds, docs, layout } from "./configs/main.config";
|
|
3
|
-
import { vue3SourceDecorator } from "./decorators/vue3SourceDecorator";
|
|
4
|
-
|
|
5
|
-
// Vue plugins
|
|
6
|
-
import { createStore } from "vuex";
|
|
7
|
-
import NotifyServiceDefault from "vueless/src/ui.notify/services";
|
|
8
|
-
|
|
9
|
-
// Tailwind styles
|
|
10
|
-
import "./index.pcss";
|
|
11
|
-
|
|
12
|
-
// Common stores
|
|
13
|
-
import loader from "vueless/src/ui.loader-rendering/store";
|
|
14
|
-
import loaderTop from "vueless/src/ui.loader-top/store";
|
|
15
|
-
import breakpoint from "vueless/src/ui.viewport/store";
|
|
16
|
-
|
|
17
|
-
// Create store instance
|
|
18
|
-
const store = createStore({
|
|
19
|
-
modules: { loader, loaderTop, breakpoint },
|
|
20
|
-
});
|
|
21
|
-
|
|
22
|
-
// Create storybook app instance
|
|
23
|
-
const storybookApp = (app) => {
|
|
24
|
-
app.use(store);
|
|
25
|
-
app.use(new NotifyServiceDefault().notifyInstance);
|
|
26
|
-
};
|
|
27
|
-
|
|
28
|
-
// Setup storybook
|
|
29
|
-
setup(storybookApp);
|
|
30
|
-
|
|
31
|
-
// Set storybook config
|
|
32
|
-
export default {
|
|
33
|
-
decorators: [vue3SourceDecorator],
|
|
34
|
-
parameters: {
|
|
35
|
-
layout,
|
|
36
|
-
docs,
|
|
37
|
-
backgrounds,
|
|
38
|
-
options: {
|
|
39
|
-
storySort: (a, b) => (a.id === b.id ? 0 : a.name === "Docs" && a.id.localeCompare(b.id, undefined, { numeric: true })),
|
|
40
|
-
},
|
|
41
|
-
},
|
|
42
|
-
};
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
import { create } from "@storybook/theming/create";
|
|
2
|
-
import colors from "tailwindcss/colors.js";
|
|
3
|
-
|
|
4
|
-
export default create({
|
|
5
|
-
base: "light",
|
|
6
|
-
// Typography
|
|
7
|
-
fontBase: '"Roboto", sans-serif',
|
|
8
|
-
fontCode: "monospace",
|
|
9
|
-
|
|
10
|
-
// Main colors
|
|
11
|
-
colorPrimary: colors.gray["900"],
|
|
12
|
-
colorSecondary: colors.gray["500"],
|
|
13
|
-
|
|
14
|
-
// UI
|
|
15
|
-
appBg: colors.gray["100"],
|
|
16
|
-
appPreviewBg: colors.gray["50"],
|
|
17
|
-
appBorderColor: colors.gray["200"],
|
|
18
|
-
appContentBg: colors.gray["50"],
|
|
19
|
-
appBorderRadius: 8,
|
|
20
|
-
|
|
21
|
-
// Text colors
|
|
22
|
-
textColor: colors.gray["900"],
|
|
23
|
-
textInverseColor: colors.gray["50"],
|
|
24
|
-
|
|
25
|
-
// Toolbar default and active colors
|
|
26
|
-
barTextColor: colors.gray["500"],
|
|
27
|
-
barHoverColor: colors.gray["600"],
|
|
28
|
-
barSelectedColor: colors.gray["700"],
|
|
29
|
-
barBg: colors.white,
|
|
30
|
-
|
|
31
|
-
// Form colors
|
|
32
|
-
inputBg: colors.white,
|
|
33
|
-
inputBorder: colors.gray["300"],
|
|
34
|
-
inputTextColor: colors.gray["900"],
|
|
35
|
-
inputBorderRadius: 4,
|
|
36
|
-
|
|
37
|
-
buttonBg: colors.gray["100"],
|
|
38
|
-
buttonBorder: colors.gray["200"],
|
|
39
|
-
booleanBg: colors.gray["50"],
|
|
40
|
-
booleanSelectedBg: colors.gray["200"],
|
|
41
|
-
});
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
import { create } from "@storybook/theming/create";
|
|
2
|
-
import colors from "tailwindcss/colors.js";
|
|
3
|
-
|
|
4
|
-
export default create({
|
|
5
|
-
base: "light",
|
|
6
|
-
// Typography
|
|
7
|
-
fontBase: '"Roboto", sans-serif',
|
|
8
|
-
fontCode: "monospace",
|
|
9
|
-
|
|
10
|
-
brandTitle: "Vueless UI",
|
|
11
|
-
brandUrl: "https://vueless.com",
|
|
12
|
-
brandImage: "/images/logo.png",
|
|
13
|
-
brandTarget: "_blank",
|
|
14
|
-
|
|
15
|
-
// Main colors
|
|
16
|
-
colorPrimary: colors.gray["900"],
|
|
17
|
-
colorSecondary: colors.gray["500"],
|
|
18
|
-
|
|
19
|
-
// UI
|
|
20
|
-
appBg: colors.white,
|
|
21
|
-
appPreviewBg: colors.gray["50"],
|
|
22
|
-
appBorderColor: colors.gray["300"],
|
|
23
|
-
appBorderRadius: 0,
|
|
24
|
-
|
|
25
|
-
// Text colors
|
|
26
|
-
textColor: colors.gray["900"],
|
|
27
|
-
textInverseColor: colors.gray["50"],
|
|
28
|
-
|
|
29
|
-
// Toolbar default and active colors
|
|
30
|
-
barTextColor: colors.gray["500"],
|
|
31
|
-
barHoverColor: colors.gray["600"],
|
|
32
|
-
barSelectedColor: colors.gray["700"],
|
|
33
|
-
barBg: colors.gray["50"],
|
|
34
|
-
|
|
35
|
-
// Form colors
|
|
36
|
-
inputBg: colors.white,
|
|
37
|
-
inputBorder: colors.gray["300"],
|
|
38
|
-
inputTextColor: colors.gray["900"],
|
|
39
|
-
inputBorderRadius: 4,
|
|
40
|
-
|
|
41
|
-
buttonBg: colors.gray["100"],
|
|
42
|
-
buttonBorder: colors.gray["100"],
|
|
43
|
-
booleanBg: colors.white,
|
|
44
|
-
booleanSelectedBg: colors.gray["100"],
|
|
45
|
-
});
|
package/.web-types-gen/index.js
DELETED
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
2
|
-
import minimist from "minimist";
|
|
3
|
-
import { extractConfig } from "./lib/config.js";
|
|
4
|
-
import build from "./lib/build.js";
|
|
5
|
-
|
|
6
|
-
const {
|
|
7
|
-
_: pathArray,
|
|
8
|
-
configFile,
|
|
9
|
-
watch,
|
|
10
|
-
cwd,
|
|
11
|
-
} = minimist(process.argv.slice(2), {
|
|
12
|
-
alias: { c: "configFile", w: "watch" },
|
|
13
|
-
});
|
|
14
|
-
|
|
15
|
-
const conf = await extractConfig(cwd || process.cwd(), watch, configFile, pathArray);
|
|
16
|
-
|
|
17
|
-
build(conf);
|