@jasperdai/uikit-base-component-vue2 0.3.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/README.md +34 -0
- package/dist/ThemeProvider-DcrhE6dp.js +49 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.js +6 -0
- package/dist/providers/UIKitProvider/contexts/ThemeProvider/ThemeProvider.js +5 -0
- package/dist/providers/UIKitProvider/contexts/ThemeProvider/colorGenerator.d.ts +9 -0
- package/dist/providers/UIKitProvider/contexts/ThemeProvider/colorGenerator.js +60 -0
- package/dist/providers/UIKitProvider/contexts/ThemeProvider/useThemeProvider.d.ts +6 -0
- package/dist/providers/UIKitProvider/contexts/ThemeProvider/useThemeProvider.js +17 -0
- package/dist/providers/UIKitProvider/contexts/UIKitProvider/UIKitProvider.js +26 -0
- package/dist/providers/UIKitProvider/contexts/UIKitProvider/useUIKitProvider.d.ts +6 -0
- package/dist/providers/UIKitProvider/contexts/UIKitProvider/useUIKitProvider.js +7 -0
- package/dist/providers/UIKitProvider/index.d.ts +4 -0
- package/dist/providers/UIKitProvider/index.js +6 -0
- package/dist/styles/index.css +1 -0
- package/dist/styles/styles/themes/dark.scss +168 -0
- package/dist/styles/styles/themes/light.scss +168 -0
- package/dist/styles/styles/variables.scss +3 -0
- package/dist/vite-env.d.js +1 -0
- package/package.json +26 -0
- package/tsconfig.json +30 -0
- package/tsconfig.node.json +11 -0
- package/vite.config.ts +68 -0
- package/vue-shims.d.ts +4 -0
package/README.md
ADDED
@@ -0,0 +1,34 @@
|
|
1
|
+
# vue2-uikit-provider
|
2
|
+
|
3
|
+
## 1 Usage
|
4
|
+
|
5
|
+
### 1.1 Use UIKitProvider Components
|
6
|
+
|
7
|
+
```vue
|
8
|
+
<script lang="ts" setup>
|
9
|
+
import { UIKitProvider } from '@tencentcloud/uikit-base-component-vue2';
|
10
|
+
</script>
|
11
|
+
|
12
|
+
<template>
|
13
|
+
<UIKitProvider theme="light">
|
14
|
+
|
15
|
+
</UIKitProvider>
|
16
|
+
</template>
|
17
|
+
```
|
18
|
+
|
19
|
+
### 1.2 Use Hook useUIKit
|
20
|
+
|
21
|
+
```vue
|
22
|
+
<template>
|
23
|
+
<div>{{ theme }}</div>
|
24
|
+
<button @click="setTheme('dark')">set theme to dark</button>
|
25
|
+
<button @click="setTheme('light')">set theme to light</button>
|
26
|
+
</template>
|
27
|
+
|
28
|
+
<script lang="ts" setup>
|
29
|
+
import { useUIKit } from '@tencentcloud/uikit-base-component-vue2';
|
30
|
+
|
31
|
+
const { theme, setTheme } = useUIKit();
|
32
|
+
</script>
|
33
|
+
|
34
|
+
```
|
@@ -0,0 +1,49 @@
|
|
1
|
+
import './styles/index.css';import { useTheme as r } from "./providers/UIKitProvider/contexts/ThemeProvider/useThemeProvider.js";
|
2
|
+
function s(e, t, o, d, f, i, l, u) {
|
3
|
+
var n = typeof e == "function" ? e.options : e;
|
4
|
+
return t && (n.render = t, n.staticRenderFns = o, n._compiled = !0), i && (n._scopeId = "data-v-" + i), {
|
5
|
+
exports: e,
|
6
|
+
options: n
|
7
|
+
};
|
8
|
+
}
|
9
|
+
const a = {
|
10
|
+
name: "ThemeProvider",
|
11
|
+
props: {
|
12
|
+
theme: {
|
13
|
+
type: [String, Object],
|
14
|
+
required: !0,
|
15
|
+
validator: function(e) {
|
16
|
+
return typeof e == "string" || e instanceof Object;
|
17
|
+
}
|
18
|
+
}
|
19
|
+
},
|
20
|
+
data() {
|
21
|
+
const { setTheme: e } = r();
|
22
|
+
return {
|
23
|
+
setTheme: e
|
24
|
+
};
|
25
|
+
},
|
26
|
+
mounted() {
|
27
|
+
if (console.log(this.theme, "jasper2"), typeof this.theme == "object") {
|
28
|
+
const { themeStyle: e, primaryColor: t } = this.theme;
|
29
|
+
this.setTheme({ themeStyle: e, primaryColor: t });
|
30
|
+
} else
|
31
|
+
this.setTheme(this.theme);
|
32
|
+
}
|
33
|
+
};
|
34
|
+
var m = function() {
|
35
|
+
var t = this, o = t._self._c;
|
36
|
+
return o("div", { staticClass: "uikit-theme-context" }, [t._t("default")], 2);
|
37
|
+
}, c = [], h = /* @__PURE__ */ s(
|
38
|
+
a,
|
39
|
+
m,
|
40
|
+
c,
|
41
|
+
!1,
|
42
|
+
null,
|
43
|
+
"89cdd6e7"
|
44
|
+
);
|
45
|
+
const p = h.exports;
|
46
|
+
export {
|
47
|
+
p as T,
|
48
|
+
s as n
|
49
|
+
};
|
package/dist/index.d.ts
ADDED
package/dist/index.js
ADDED
@@ -0,0 +1,9 @@
|
|
1
|
+
export declare class ThemeColorGenerator {
|
2
|
+
private static readonly COLOR_TYPES;
|
3
|
+
private static readonly DEFAULT_COLOR;
|
4
|
+
private static getCurrentPrimaryColor;
|
5
|
+
private static replaceColorVariable;
|
6
|
+
private static updateCSSVariables;
|
7
|
+
static applyThemeColor(): void;
|
8
|
+
static watchThemeColor(): void;
|
9
|
+
}
|
@@ -0,0 +1,60 @@
|
|
1
|
+
var n = Object.defineProperty;
|
2
|
+
var m = (r, t, e) => t in r ? n(r, t, { enumerable: !0, configurable: !0, writable: !0, value: e }) : r[t] = e;
|
3
|
+
var a = (r, t, e) => m(r, typeof t != "symbol" ? t + "" : t, e);
|
4
|
+
const h = {
|
5
|
+
"--text-color-link": "var(--uikit-color-theme-6)",
|
6
|
+
"--text-color-link-hover": "var(--uikit-color-theme-5)",
|
7
|
+
"--text-color-link-disabled": "var(--uikit-color-theme-2)",
|
8
|
+
"--bg-color-bubble-own": "var(--uikit-color-theme-7)",
|
9
|
+
"--list-color-focused": "var(--uikit-color-theme-2)",
|
10
|
+
"--button-color-primary-default": "var(--uikit-color-theme-6)",
|
11
|
+
"--button-color-primary-hover": "var(--uikit-color-theme-5)",
|
12
|
+
"--button-color-primary-active": "var(--uikit-color-theme-7)",
|
13
|
+
"--button-color-primary-disabled": "var(--uikit-color-theme-2)",
|
14
|
+
"--checkbox-color-selected": "var(--uikit-color-theme-5)",
|
15
|
+
"--toast-color-default": "var(--uikit-color-theme-2)",
|
16
|
+
"--switch-color-on": "var(--uikit-color-theme-5)",
|
17
|
+
"--slider-color-filled": "var(--uikit-color-theme-5)"
|
18
|
+
}, i = class i {
|
19
|
+
static getCurrentPrimaryColor() {
|
20
|
+
const t = document.documentElement;
|
21
|
+
return getComputedStyle(t).getPropertyValue("--primary-color").trim().toLowerCase();
|
22
|
+
}
|
23
|
+
static replaceColorVariable(t, e) {
|
24
|
+
const o = new RegExp(`var\\(--uikit-color-(${i.COLOR_TYPES.join("|")})-(\\d+)\\)`);
|
25
|
+
return t.replace(o, (s, l, c) => `var(--uikit-color-${e}-${c})`);
|
26
|
+
}
|
27
|
+
static updateCSSVariables(t, e) {
|
28
|
+
const o = document.documentElement;
|
29
|
+
Object.entries(t).forEach(([s, l]) => {
|
30
|
+
if (l.includes("var(--uikit-color-")) {
|
31
|
+
const c = this.replaceColorVariable(l, e);
|
32
|
+
o.style.setProperty(s, c);
|
33
|
+
}
|
34
|
+
});
|
35
|
+
}
|
36
|
+
static applyThemeColor() {
|
37
|
+
const t = this.getCurrentPrimaryColor();
|
38
|
+
if (!this.COLOR_TYPES.includes(t)) {
|
39
|
+
console.warn(`Unsupported color type: ${t}, using default color: ${this.DEFAULT_COLOR}`);
|
40
|
+
return;
|
41
|
+
}
|
42
|
+
const e = h;
|
43
|
+
this.updateCSSVariables(e, t);
|
44
|
+
}
|
45
|
+
static watchThemeColor() {
|
46
|
+
new MutationObserver((e) => {
|
47
|
+
e.forEach((o) => {
|
48
|
+
o.type === "attributes" && o.attributeName === "style" && this.applyThemeColor();
|
49
|
+
});
|
50
|
+
}).observe(document.documentElement, {
|
51
|
+
attributes: !0,
|
52
|
+
attributeFilter: ["style"]
|
53
|
+
});
|
54
|
+
}
|
55
|
+
};
|
56
|
+
a(i, "COLOR_TYPES", ["theme", "green", "red", "orange"]), a(i, "DEFAULT_COLOR", "theme");
|
57
|
+
let u = i;
|
58
|
+
export {
|
59
|
+
u as ThemeColorGenerator
|
60
|
+
};
|
@@ -0,0 +1,17 @@
|
|
1
|
+
import r from "vue";
|
2
|
+
import { ThemeColorGenerator as l } from "./colorGenerator.js";
|
3
|
+
const o = r.observable({
|
4
|
+
value: ""
|
5
|
+
});
|
6
|
+
function p() {
|
7
|
+
function t(e) {
|
8
|
+
o.value = typeof e == "object" ? e.themeStyle : e, document.documentElement.setAttribute("tui-theme-mode", `${o.value}`), typeof e == "object" && e.primaryColor && (document.documentElement.style.setProperty("--primary-color", e.primaryColor), l.applyThemeColor()), console.log(o.value, "jasper1");
|
9
|
+
}
|
10
|
+
return {
|
11
|
+
theme: o,
|
12
|
+
setTheme: t
|
13
|
+
};
|
14
|
+
}
|
15
|
+
export {
|
16
|
+
p as useTheme
|
17
|
+
};
|
@@ -0,0 +1,26 @@
|
|
1
|
+
import { n as t, T as n } from "../../../../ThemeProvider-DcrhE6dp.js";
|
2
|
+
const o = {
|
3
|
+
components: {
|
4
|
+
ThemeProvider: n
|
5
|
+
},
|
6
|
+
props: {
|
7
|
+
theme: {
|
8
|
+
type: String | Object
|
9
|
+
}
|
10
|
+
}
|
11
|
+
};
|
12
|
+
var s = function() {
|
13
|
+
var e = this, r = e._self._c;
|
14
|
+
return r("ThemeProvider", { attrs: { theme: e.theme } }, [e._t("default")], 2);
|
15
|
+
}, _ = [], a = /* @__PURE__ */ t(
|
16
|
+
o,
|
17
|
+
s,
|
18
|
+
_,
|
19
|
+
!1,
|
20
|
+
null,
|
21
|
+
null
|
22
|
+
);
|
23
|
+
const i = a.exports;
|
24
|
+
export {
|
25
|
+
i as default
|
26
|
+
};
|
@@ -0,0 +1 @@
|
|
1
|
+
:root[tui-theme-mode=dark],.tui-theme-dark{--uikit-color-theme-1: #1C2333;--uikit-color-theme-2: #243047;--uikit-color-theme-3: #2F4875;--uikit-color-theme-4: #305BA6;--uikit-color-theme-5: #2B6AD6;--uikit-color-theme-6: #4086FF;--uikit-color-theme-7: #5C9DFF;--uikit-color-theme-8: #78B0FF;--uikit-color-theme-9: #9CC7FF;--uikit-color-theme-10: #C2DEFF;--uikit-color-black-1: rgba(0, 0, 0, 100%);--uikit-color-black-2: rgba(0, 0, 0, 90%);--uikit-color-black-3: rgba(0, 0, 0, 72%);--uikit-color-black-4: rgba(0, 0, 0, 55%);--uikit-color-black-5: rgba(0, 0, 0, 40%);--uikit-color-black-6: rgba(0, 0, 0, 25%);--uikit-color-black-7: rgba(0, 0, 0, 12%);--uikit-color-black-8: rgba(0, 0, 0, 6%);--uikit-color-white-1: rgba(255, 255, 255, 100%);--uikit-color-white-2: rgba(255, 255, 255, 93%);--uikit-color-white-3: rgba(255, 255, 255, 75%);--uikit-color-white-4: rgba(255, 255, 255, 55%);--uikit-color-white-5: rgba(255, 255, 255, 42%);--uikit-color-white-6: rgba(255, 255, 255, 30%);--uikit-color-white-7: rgba(255, 255, 255, 14%);--uikit-color-gray-1: #131417;--uikit-color-gray-2: #1F2024;--uikit-color-gray-3: #2B2C30;--uikit-color-gray-4: #3A3C42;--uikit-color-gray-5: #48494F;--uikit-color-gray-6: #54565C;--uikit-color-gray-7: #676A70;--uikit-color-green-1: #1A2620;--uikit-color-green-2: #22352C;--uikit-color-green-3: #2F4F3F;--uikit-color-green-4: #377355;--uikit-color-green-5: #368F65;--uikit-color-green-6: #38A673;--uikit-color-green-7: #62B58B;--uikit-color-green-8: #8BC7A9;--uikit-color-green-9: #A9D4BD;--uikit-color-green-10: #C8E5D5;--uikit-color-red-1: #2B1C1F;--uikit-color-red-2: #422324;--uikit-color-red-3: #613234;--uikit-color-red-4: #8A4242;--uikit-color-red-5: #C2544E;--uikit-color-red-6: #E6594C;--uikit-color-red-7: #E57A6E;--uikit-color-red-8: #F3A599;--uikit-color-red-9: #FACBC3;--uikit-color-red-10: #FAE4DE;--uikit-color-orange-1: #211A19;--uikit-color-orange-2: #35231A;--uikit-color-orange-3: #462E1F;--uikit-color-orange-4: #653C21;--uikit-color-orange-5: #96562A;--uikit-color-orange-6: #E37F32;--uikit-color-orange-7: #E39552;--uikit-color-orange-8: #EEAD72;--uikit-color-orange-9: #F7CFA4;--uikit-color-orange-10: #F9E9D1;--uikit-color-transparent: rgba(255, 255, 255, 0%);--text-color-primary: var(--uikit-color-white-2);--text-color-secondary: var(--uikit-color-white-4);--text-color-tertiary: var(--uikit-color-white-6);--text-color-disabled: var(--uikit-color-white-7);--text-color-button: var(--uikit-color-white-1);--text-color-button-disabled: var(--uikit-color-white-5);--text-color-link: var(--uikit-color-theme-6);--text-color-link-hover: var(--uikit-color-theme-5);--text-color-link-disabled: var(--uikit-color-theme-2);--text-color-link-active: var(--uikit-color-theme-7);--text-color-anti-primary: var(--uikit-color-black-2);--text-color-anti-secondary: var(--uikit-color-black-4);--text-color-warning: var(--uikit-color-orange-6);--text-color-success: var(--uikit-color-green-6);--text-color-error: var(--uikit-color-red-6);--bg-color-topbar: var(--uikit-color-gray-1);--bg-color-operate: var(--uikit-color-gray-2);--bg-color-dialog: var(--uikit-color-gray-2);--bg-color-dialog-module: var(--uikit-color-gray-3);--bg-color-entrycard: var(--uikit-color-gray-3);--bg-color-function: var(--uikit-color-gray-4);--bg-color-bottombar: var(--uikit-color-gray-3);--bg-color-input: var(--uikit-color-gray-3);--bg-color-bubble-reciprocal: var(--uikit-color-gray-3);--bg-color-bubble-own: var(--uikit-color-theme-7);--bg-color-default: var(--uikit-color-gray-1);--bg-color-tag-mask: var(--uikit-color-black-4);--bg-color-element-mask: var(--uikit-color-black-6);--bg-color-mask: var(--uikit-color-black-4);--bg-color-mask-disappeared: var(--uikit-color-black-8);--bg-color-mask-begin: var(--uikit-color-black-2);--stroke-color-primary: var(--uikit-color-gray-4);--stroke-color-secondary: var(--uikit-color-gray-3);--stroke-color-module: var(--uikit-color-gray-5);--shadow-color: var(--uikit-color-black-8);--list-color-default: var(--uikit-color-gray-2);--list-color-hover: var(--uikit-color-gray-3);--list-color-focused: var(--uikit-color-theme-2);--button-color-primary-default: var(--uikit-color-theme-6);--button-color-primary-hover: var(--uikit-color-theme-5);--button-color-primary-active: var(--uikit-color-theme-7);--button-color-primary-disabled: var(--uikit-color-theme-2);--button-color-secondary-default: var(--uikit-color-gray-4);--button-color-secondary-hover: var(--uikit-color-gray-3);--button-color-secondary-active: var(--uikit-color-gray-5);--button-color-secondary-disabled: var(--uikit-color-gray-3);--button-color-accept: var(--uikit-color-green-6);--button-color-hangup: var(--uikit-color-red-6);--button-color-on: var(--uikit-color-white-1);--button-color-off: var(--uikit-color-black-5);--dropdown-color-default: var(--uikit-color-gray-3);--dropdown-color-hover: var(--uikit-color-gray-4);--dropdown-color-active: var(--uikit-color-gray-2);--scroll-bar-color-default: var(--uikit-color-white-7);--scroll-bar-color-hover: var(--uikit-color-white-6);--floating-color-default: var(--uikit-color-gray-3);--floating-color-operate: var(--uikit-color-gray-4);--checkbox-color-selected: var(--uikit-color-theme-5);--toast-color-warning: var(--uikit-color-orange-2);--toast-color-success: var(--uikit-color-green-2);--toast-color-error: var(--uikit-color-red-2);--toast-color-default: var(--uikit-color-theme-2);--switch-color-off: var(--uikit-color-gray-4);--switch-color-on: var(--uikit-color-theme-5);--switch-color-button: var(--uikit-color-white-1);--slider-color-filled: var(--uikit-color-theme-5);--slider-color-empty: var(--uikit-color-gray-5);--slider-color-button: var(--uikit-color-white-1);--tab-color-selected: var(--uikit-color-gray-5);--tab-color-unselected: var(--uikit-color-gray-4);--tab-color-option: var(--uikit-color-gray-4)}:root[tui-theme-mode=light],.tui-theme-light{--uikit-color-theme-1: #EBF3FF;--uikit-color-theme-2: #CCE2FF;--uikit-color-theme-3: #ADCFFF;--uikit-color-theme-4: #7AAFFF;--uikit-color-theme-5: #4588F5;--uikit-color-theme-6: #1C66E5;--uikit-color-theme-7: #0D49BF;--uikit-color-theme-8: #033099;--uikit-color-theme-9: #001F73;--uikit-color-theme-10: #00124D;--uikit-color-black-1: rgba(0, 0, 0, 100%);--uikit-color-black-2: rgba(0, 0, 0, 90%);--uikit-color-black-3: rgba(0, 0, 0, 72%);--uikit-color-black-4: rgba(0, 0, 0, 55%);--uikit-color-black-5: rgba(0, 0, 0, 40%);--uikit-color-black-6: rgba(0, 0, 0, 25%);--uikit-color-black-7: rgba(0, 0, 0, 12%);--uikit-color-black-8: rgba(0, 0, 0, 6%);--uikit-color-white-1: rgba(255, 255, 255, 100%);--uikit-color-white-2: rgba(255, 255, 255, 93%);--uikit-color-white-3: rgba(255, 255, 255, 75%);--uikit-color-white-4: rgba(255, 255, 255, 55%);--uikit-color-white-5: rgba(255, 255, 255, 42%);--uikit-color-white-6: rgba(255, 255, 255, 30%);--uikit-color-white-7: rgba(255, 255, 255, 14%);--uikit-color-gray-1: #F9FAFC;--uikit-color-gray-2: #F0F2F7;--uikit-color-gray-3: #E6E9F0;--uikit-color-gray-4: #D1D4DE;--uikit-color-gray-5: #C0C3CC;--uikit-color-gray-6: #B3B6BE;--uikit-color-gray-7: #A5A9B0;--uikit-color-green-1: #DCFAE9;--uikit-color-green-2: #B6F0D1;--uikit-color-green-3: #84E3B5;--uikit-color-green-4: #5AD69E;--uikit-color-green-5: #3CC98C;--uikit-color-green-6: #0ABF77;--uikit-color-green-7: #09A768;--uikit-color-green-8: #078F59;--uikit-color-green-9: #067049;--uikit-color-green-10: #044D37;--uikit-color-red-1: #FFE7E6;--uikit-color-red-2: #FCC9C7;--uikit-color-red-3: #FAAEAC;--uikit-color-red-4: #F58989;--uikit-color-red-5: #E86666;--uikit-color-red-6: #E54545;--uikit-color-red-7: #C93439;--uikit-color-red-8: #AD2934;--uikit-color-red-9: #8F222D;--uikit-color-red-10: #6B1A27;--uikit-color-orange-1: #FFEEDB;--uikit-color-orange-2: #FFD6B2;--uikit-color-orange-3: #FFBE85;--uikit-color-orange-4: #FFA455;--uikit-color-orange-5: #FF8B2B;--uikit-color-orange-6: #FF7200;--uikit-color-orange-7: #E05D00;--uikit-color-orange-8: #BF4900;--uikit-color-orange-9: #8F370B;--uikit-color-orange-10: #662200;--uikit-color-transparent: rgba(255, 255, 255, 0%);--text-color-primary: var(--uikit-color-black-2);--text-color-secondary: var(--uikit-color-black-4);--text-color-tertiary: var(--uikit-color-black-5);--text-color-disabled: var(--uikit-color-black-6);--text-color-button: var(--uikit-color-white-1);--text-color-button-disabled: var(--uikit-color-white-1);--text-color-link: var(--uikit-color-theme-6);--text-color-link-hover: var(--uikit-color-theme-5);--text-color-link-disabled: var(--uikit-color-theme-2);--text-color-link-active: var(--uikit-color-theme-7);--text-color-anti-primary: var(--uikit-color-black-2);--text-color-anti-secondary: var(--uikit-color-black-4);--text-color-warning: var(--uikit-color-orange-6);--text-color-success: var(--uikit-color-green-6);--text-color-error: var(--uikit-color-red-6);--bg-color-topbar: var(--uikit-color-gray-1);--bg-color-operate: var(--uikit-color-white-1);--bg-color-dialog: var(--uikit-color-white-1);--bg-color-dialog-module: var(--uikit-color-gray-2);--bg-color-entrycard: var(--uikit-color-gray-2);--bg-color-function: var(--uikit-color-gray-2);--bg-color-bottombar: var(--uikit-color-white-1);--bg-color-input: var(--uikit-color-gray-2);--bg-color-bubble-reciprocal: var(--uikit-color-gray-2);--bg-color-bubble-own: var(--uikit-color-theme-2);--bg-color-default: var(--uikit-color-gray-2);--bg-color-tag-mask: var(--uikit-color-white-4);--bg-color-element-mask: var(--uikit-color-black-6);--bg-color-mask: var(--uikit-color-black-4);--bg-color-mask-disappeared: var(--uikit-color-white-7);--bg-color-mask-begin: var(--uikit-color-white-1);--stroke-color-primary: var(--uikit-color-gray-3);--stroke-color-secondary: var(--uikit-color-gray-2);--stroke-color-module: var(--uikit-color-gray-3);--shadow-color: var(--uikit-color-black-8);--list-color-default: var(--uikit-color-white-1);--list-color-hover: var(--uikit-color-gray-1);--list-color-focused: var(--uikit-color-theme-1);--button-color-primary-default: var(--uikit-color-theme-6);--button-color-primary-hover: var(--uikit-color-theme-5);--button-color-primary-active: var(--uikit-color-theme-7);--button-color-primary-disabled: var(--uikit-color-theme-2);--button-color-secondary-default: var(--uikit-color-gray-2);--button-color-secondary-hover: var(--uikit-color-gray-1);--button-color-secondary-active: var(--uikit-color-gray-3);--button-color-secondary-disabled: var(--uikit-color-gray-1);--button-color-accept: var(--uikit-color-green-6);--button-color-hangup: var(--uikit-color-red-6);--button-color-on: var(--uikit-color-white-1);--button-color-off: var(--uikit-color-black-5);--dropdown-color-default: var(--uikit-color-white-1);--dropdown-color-hover: var(--uikit-color-gray-1);--dropdown-color-active: var(--uikit-color-theme-2);--scroll-bar-color-default: var(--uikit-color-black-7);--scroll-bar-color-hover: var(--uikit-color-black-6);--floating-color-default: var(--uikit-color-white-1);--floating-color-operate: var(--uikit-color-gray-2);--checkbox-color-selected: var(--uikit-color-theme-6);--toast-color-warning: var(--uikit-color-orange-1);--toast-color-success: var(--uikit-color-green-1);--toast-color-error: var(--uikit-color-red-1);--toast-color-default: var(--uikit-color-theme-1);--switch-color-off: var(--uikit-color-gray-4);--switch-color-on: var(--uikit-color-theme-6);--switch-color-button: var(--uikit-color-white-1);--slider-color-filled: var(--uikit-color-theme-6);--slider-color-empty: var(--uikit-color-gray-3);--slider-color-button: var(--uikit-color-white-1);--tab-color-selected: var(--uikit-color-theme-2);--tab-color-unselected: var(--uikit-color-gray-2);--tab-color-option: var(--uikit-color-gray-3)}.uikit-theme-context[data-v-89cdd6e7]{width:100%;height:100%}
|
@@ -0,0 +1,168 @@
|
|
1
|
+
:root[tui-theme-mode="dark"],
|
2
|
+
.tui-theme-dark {
|
3
|
+
--uikit-color-theme-1: #1C2333;
|
4
|
+
--uikit-color-theme-2: #243047;
|
5
|
+
--uikit-color-theme-3: #2F4875;
|
6
|
+
--uikit-color-theme-4: #305BA6;
|
7
|
+
--uikit-color-theme-5: #2B6AD6;
|
8
|
+
--uikit-color-theme-6: #4086FF;
|
9
|
+
--uikit-color-theme-7: #5C9DFF;
|
10
|
+
--uikit-color-theme-8: #78B0FF;
|
11
|
+
--uikit-color-theme-9: #9CC7FF;
|
12
|
+
--uikit-color-theme-10: #C2DEFF;
|
13
|
+
|
14
|
+
--uikit-color-black-1: rgba(0, 0, 0, 100%);
|
15
|
+
--uikit-color-black-2: rgba(0, 0, 0, 90%);
|
16
|
+
--uikit-color-black-3: rgba(0, 0, 0, 72%);
|
17
|
+
--uikit-color-black-4: rgba(0, 0, 0, 55%);
|
18
|
+
--uikit-color-black-5: rgba(0, 0, 0, 40%);
|
19
|
+
--uikit-color-black-6: rgba(0, 0, 0, 25%);
|
20
|
+
--uikit-color-black-7: rgba(0, 0, 0, 12%);
|
21
|
+
--uikit-color-black-8: rgba(0, 0, 0, 6%);
|
22
|
+
--uikit-color-white-1: rgba(255, 255, 255, 100%);
|
23
|
+
--uikit-color-white-2: rgba(255, 255, 255, 93%);
|
24
|
+
--uikit-color-white-3: rgba(255, 255, 255, 75%);
|
25
|
+
--uikit-color-white-4: rgba(255, 255, 255, 55%);
|
26
|
+
--uikit-color-white-5: rgba(255, 255, 255, 42%);
|
27
|
+
--uikit-color-white-6: rgba(255, 255, 255, 30%);
|
28
|
+
--uikit-color-white-7: rgba(255, 255, 255, 14%);
|
29
|
+
--uikit-color-gray-1: #131417;
|
30
|
+
--uikit-color-gray-2: #1F2024;
|
31
|
+
--uikit-color-gray-3: #2B2C30;
|
32
|
+
--uikit-color-gray-4: #3A3C42;
|
33
|
+
--uikit-color-gray-5: #48494F;
|
34
|
+
--uikit-color-gray-6: #54565C;
|
35
|
+
--uikit-color-gray-7: #676A70;
|
36
|
+
--uikit-color-green-1: #1A2620;
|
37
|
+
--uikit-color-green-2: #22352C;
|
38
|
+
--uikit-color-green-3: #2F4F3F;
|
39
|
+
--uikit-color-green-4: #377355;
|
40
|
+
--uikit-color-green-5: #368F65;
|
41
|
+
--uikit-color-green-6: #38A673;
|
42
|
+
--uikit-color-green-7: #62B58B;
|
43
|
+
--uikit-color-green-8: #8BC7A9;
|
44
|
+
--uikit-color-green-9: #A9D4BD;
|
45
|
+
--uikit-color-green-10: #C8E5D5;
|
46
|
+
--uikit-color-red-1: #2B1C1F;
|
47
|
+
--uikit-color-red-2: #422324;
|
48
|
+
--uikit-color-red-3: #613234;
|
49
|
+
--uikit-color-red-4: #8A4242;
|
50
|
+
--uikit-color-red-5: #C2544E;
|
51
|
+
--uikit-color-red-6: #E6594C;
|
52
|
+
--uikit-color-red-7: #E57A6E;
|
53
|
+
--uikit-color-red-8: #F3A599;
|
54
|
+
--uikit-color-red-9: #FACBC3;
|
55
|
+
--uikit-color-red-10: #FAE4DE;
|
56
|
+
--uikit-color-orange-1: #211A19;
|
57
|
+
--uikit-color-orange-2: #35231A;
|
58
|
+
--uikit-color-orange-3: #462E1F;
|
59
|
+
--uikit-color-orange-4: #653C21;
|
60
|
+
--uikit-color-orange-5: #96562A;
|
61
|
+
--uikit-color-orange-6: #E37F32;
|
62
|
+
--uikit-color-orange-7: #E39552;
|
63
|
+
--uikit-color-orange-8: #EEAD72;
|
64
|
+
--uikit-color-orange-9: #F7CFA4;
|
65
|
+
--uikit-color-orange-10: #F9E9D1;
|
66
|
+
--uikit-color-transparent: rgba(255, 255, 255, 0%);
|
67
|
+
|
68
|
+
// text
|
69
|
+
--text-color-primary: var(--uikit-color-white-2);
|
70
|
+
--text-color-secondary: var(--uikit-color-white-4);
|
71
|
+
--text-color-tertiary: var(--uikit-color-white-6);
|
72
|
+
--text-color-disabled: var(--uikit-color-white-7);
|
73
|
+
--text-color-button: var(--uikit-color-white-1);
|
74
|
+
--text-color-button-disabled: var(--uikit-color-white-5);
|
75
|
+
--text-color-link: var(--uikit-color-theme-6);
|
76
|
+
--text-color-link-hover: var(--uikit-color-theme-5);
|
77
|
+
--text-color-link-disabled: var(--uikit-color-theme-2);
|
78
|
+
--text-color-link-active: var(--uikit-color-theme-7);
|
79
|
+
--text-color-anti-primary: var(--uikit-color-black-2);
|
80
|
+
--text-color-anti-secondary: var(--uikit-color-black-4);
|
81
|
+
--text-color-warning: var(--uikit-color-orange-6);
|
82
|
+
--text-color-success: var(--uikit-color-green-6);
|
83
|
+
--text-color-error: var(--uikit-color-red-6);
|
84
|
+
|
85
|
+
// background
|
86
|
+
--bg-color-topbar: var(--uikit-color-gray-1);
|
87
|
+
--bg-color-operate: var(--uikit-color-gray-2);
|
88
|
+
--bg-color-dialog: var(--uikit-color-gray-2);
|
89
|
+
--bg-color-dialog-module: var(--uikit-color-gray-3);
|
90
|
+
--bg-color-entrycard: var(--uikit-color-gray-3);
|
91
|
+
--bg-color-function: var(--uikit-color-gray-4);
|
92
|
+
--bg-color-bottombar: var(--uikit-color-gray-3);
|
93
|
+
--bg-color-input: var(--uikit-color-gray-3);
|
94
|
+
--bg-color-bubble-reciprocal: var(--uikit-color-gray-3);
|
95
|
+
--bg-color-bubble-own: var(--uikit-color-theme-7);
|
96
|
+
--bg-color-default: var(--uikit-color-gray-1);
|
97
|
+
--bg-color-tag-mask: var(--uikit-color-black-4);
|
98
|
+
--bg-color-element-mask: var(--uikit-color-black-6);
|
99
|
+
--bg-color-mask: var(--uikit-color-black-4);
|
100
|
+
--bg-color-mask-disappeared: var(--uikit-color-black-8);
|
101
|
+
--bg-color-mask-begin: var(--uikit-color-black-2);
|
102
|
+
|
103
|
+
// border
|
104
|
+
--stroke-color-primary: var(--uikit-color-gray-4);
|
105
|
+
--stroke-color-secondary: var(--uikit-color-gray-3);
|
106
|
+
--stroke-color-module: var(--uikit-color-gray-5);
|
107
|
+
|
108
|
+
// shadow
|
109
|
+
--shadow-color: var(--uikit-color-black-8);
|
110
|
+
|
111
|
+
// status
|
112
|
+
--list-color-default: var(--uikit-color-gray-2);
|
113
|
+
--list-color-hover: var(--uikit-color-gray-3);
|
114
|
+
--list-color-focused: var(--uikit-color-theme-2);
|
115
|
+
|
116
|
+
// button
|
117
|
+
--button-color-primary-default: var(--uikit-color-theme-6);
|
118
|
+
--button-color-primary-hover: var(--uikit-color-theme-5);
|
119
|
+
--button-color-primary-active: var(--uikit-color-theme-7);
|
120
|
+
--button-color-primary-disabled: var(--uikit-color-theme-2);
|
121
|
+
--button-color-secondary-default: var(--uikit-color-gray-4);
|
122
|
+
--button-color-secondary-hover: var(--uikit-color-gray-3);
|
123
|
+
--button-color-secondary-active: var(--uikit-color-gray-5);
|
124
|
+
--button-color-secondary-disabled: var(--uikit-color-gray-3);
|
125
|
+
--button-color-accept: var(--uikit-color-green-6);
|
126
|
+
--button-color-hangup: var(--uikit-color-red-6);
|
127
|
+
--button-color-on: var(--uikit-color-white-1);
|
128
|
+
--button-color-off: var(--uikit-color-black-5);
|
129
|
+
|
130
|
+
// dropdown
|
131
|
+
--dropdown-color-default: var(--uikit-color-gray-3);
|
132
|
+
--dropdown-color-hover: var(--uikit-color-gray-4);
|
133
|
+
--dropdown-color-active: var(--uikit-color-gray-2);
|
134
|
+
|
135
|
+
// scroll-bar
|
136
|
+
--scroll-bar-color-default: var(--uikit-color-white-7);
|
137
|
+
--scroll-bar-color-hover: var(--uikit-color-white-6);
|
138
|
+
|
139
|
+
// floating
|
140
|
+
--floating-color-default: var(--uikit-color-gray-3);
|
141
|
+
--floating-color-operate: var(--uikit-color-gray-4);
|
142
|
+
|
143
|
+
// checkbox
|
144
|
+
--checkbox-color-selected: var(--uikit-color-theme-5);
|
145
|
+
|
146
|
+
// toast
|
147
|
+
--toast-color-warning: var(--uikit-color-orange-2);
|
148
|
+
--toast-color-success: var(--uikit-color-green-2);
|
149
|
+
--toast-color-error: var(--uikit-color-red-2);
|
150
|
+
--toast-color-default: var(--uikit-color-theme-2);
|
151
|
+
|
152
|
+
// switch
|
153
|
+
--switch-color-off: var(--uikit-color-gray-4);
|
154
|
+
--switch-color-on: var(--uikit-color-theme-5);
|
155
|
+
--switch-color-button: var(--uikit-color-white-1);
|
156
|
+
|
157
|
+
// slider
|
158
|
+
--slider-color-filled: var(--uikit-color-theme-5);
|
159
|
+
--slider-color-empty: var(--uikit-color-gray-5);
|
160
|
+
--slider-color-button: var(--uikit-color-white-1);
|
161
|
+
|
162
|
+
// tab
|
163
|
+
--tab-color-selected: var(--uikit-color-gray-5);
|
164
|
+
--tab-color-unselected: var(--uikit-color-gray-4);
|
165
|
+
--tab-color-option: var(--uikit-color-gray-4);
|
166
|
+
|
167
|
+
// todo-tag
|
168
|
+
}
|
@@ -0,0 +1,168 @@
|
|
1
|
+
:root[tui-theme-mode="light"],
|
2
|
+
.tui-theme-light {
|
3
|
+
--uikit-color-theme-1: #EBF3FF;
|
4
|
+
--uikit-color-theme-2: #CCE2FF;
|
5
|
+
--uikit-color-theme-3: #ADCFFF;
|
6
|
+
--uikit-color-theme-4: #7AAFFF;
|
7
|
+
--uikit-color-theme-5: #4588F5;
|
8
|
+
--uikit-color-theme-6: #1C66E5;
|
9
|
+
--uikit-color-theme-7: #0D49BF;
|
10
|
+
--uikit-color-theme-8: #033099;
|
11
|
+
--uikit-color-theme-9: #001F73;
|
12
|
+
--uikit-color-theme-10: #00124D;
|
13
|
+
|
14
|
+
--uikit-color-black-1: rgba(0, 0, 0, 100%);
|
15
|
+
--uikit-color-black-2: rgba(0, 0, 0, 90%);
|
16
|
+
--uikit-color-black-3: rgba(0, 0, 0, 72%);
|
17
|
+
--uikit-color-black-4: rgba(0, 0, 0, 55%);
|
18
|
+
--uikit-color-black-5: rgba(0, 0, 0, 40%);
|
19
|
+
--uikit-color-black-6: rgba(0, 0, 0, 25%);
|
20
|
+
--uikit-color-black-7: rgba(0, 0, 0, 12%);
|
21
|
+
--uikit-color-black-8: rgba(0, 0, 0, 6%);
|
22
|
+
--uikit-color-white-1: rgba(255, 255, 255, 100%);
|
23
|
+
--uikit-color-white-2: rgba(255, 255, 255, 93%);
|
24
|
+
--uikit-color-white-3: rgba(255, 255, 255, 75%);
|
25
|
+
--uikit-color-white-4: rgba(255, 255, 255, 55%);
|
26
|
+
--uikit-color-white-5: rgba(255, 255, 255, 42%);
|
27
|
+
--uikit-color-white-6: rgba(255, 255, 255, 30%);
|
28
|
+
--uikit-color-white-7: rgba(255, 255, 255, 14%);
|
29
|
+
--uikit-color-gray-1: #F9FAFC;
|
30
|
+
--uikit-color-gray-2: #F0F2F7;
|
31
|
+
--uikit-color-gray-3: #E6E9F0;
|
32
|
+
--uikit-color-gray-4: #D1D4DE;
|
33
|
+
--uikit-color-gray-5: #C0C3CC;
|
34
|
+
--uikit-color-gray-6: #B3B6BE;
|
35
|
+
--uikit-color-gray-7: #A5A9B0;
|
36
|
+
--uikit-color-green-1: #DCFAE9;
|
37
|
+
--uikit-color-green-2: #B6F0D1;
|
38
|
+
--uikit-color-green-3: #84E3B5;
|
39
|
+
--uikit-color-green-4: #5AD69E;
|
40
|
+
--uikit-color-green-5: #3CC98C;
|
41
|
+
--uikit-color-green-6: #0ABF77;
|
42
|
+
--uikit-color-green-7: #09A768;
|
43
|
+
--uikit-color-green-8: #078F59;
|
44
|
+
--uikit-color-green-9: #067049;
|
45
|
+
--uikit-color-green-10: #044D37;
|
46
|
+
--uikit-color-red-1: #FFE7E6;
|
47
|
+
--uikit-color-red-2: #FCC9C7;
|
48
|
+
--uikit-color-red-3: #FAAEAC;
|
49
|
+
--uikit-color-red-4: #F58989;
|
50
|
+
--uikit-color-red-5: #E86666;
|
51
|
+
--uikit-color-red-6: #E54545;
|
52
|
+
--uikit-color-red-7: #C93439;
|
53
|
+
--uikit-color-red-8: #AD2934;
|
54
|
+
--uikit-color-red-9: #8F222D;
|
55
|
+
--uikit-color-red-10: #6B1A27;
|
56
|
+
--uikit-color-orange-1: #FFEEDB;
|
57
|
+
--uikit-color-orange-2: #FFD6B2;
|
58
|
+
--uikit-color-orange-3: #FFBE85;
|
59
|
+
--uikit-color-orange-4: #FFA455;
|
60
|
+
--uikit-color-orange-5: #FF8B2B;
|
61
|
+
--uikit-color-orange-6: #FF7200;
|
62
|
+
--uikit-color-orange-7: #E05D00;
|
63
|
+
--uikit-color-orange-8: #BF4900;
|
64
|
+
--uikit-color-orange-9: #8F370B;
|
65
|
+
--uikit-color-orange-10: #662200;
|
66
|
+
--uikit-color-transparent: rgba(255, 255, 255, 0%);
|
67
|
+
|
68
|
+
// text
|
69
|
+
--text-color-primary: var(--uikit-color-black-2);
|
70
|
+
--text-color-secondary: var(--uikit-color-black-4);
|
71
|
+
--text-color-tertiary: var(--uikit-color-black-5);
|
72
|
+
--text-color-disabled: var(--uikit-color-black-6);
|
73
|
+
--text-color-button: var(--uikit-color-white-1);
|
74
|
+
--text-color-button-disabled: var(--uikit-color-white-1);
|
75
|
+
--text-color-link: var(--uikit-color-theme-6);
|
76
|
+
--text-color-link-hover: var(--uikit-color-theme-5);
|
77
|
+
--text-color-link-disabled: var(--uikit-color-theme-2);
|
78
|
+
--text-color-link-active: var(--uikit-color-theme-7);
|
79
|
+
--text-color-anti-primary: var(--uikit-color-black-2);
|
80
|
+
--text-color-anti-secondary: var(--uikit-color-black-4);
|
81
|
+
--text-color-warning: var(--uikit-color-orange-6);
|
82
|
+
--text-color-success: var(--uikit-color-green-6);
|
83
|
+
--text-color-error: var(--uikit-color-red-6);
|
84
|
+
|
85
|
+
// background
|
86
|
+
--bg-color-topbar: var(--uikit-color-gray-1);
|
87
|
+
--bg-color-operate: var(--uikit-color-white-1);
|
88
|
+
--bg-color-dialog: var(--uikit-color-white-1);
|
89
|
+
--bg-color-dialog-module: var(--uikit-color-gray-2);
|
90
|
+
--bg-color-entrycard: var(--uikit-color-gray-2);
|
91
|
+
--bg-color-function: var(--uikit-color-gray-2);
|
92
|
+
--bg-color-bottombar: var(--uikit-color-white-1);
|
93
|
+
--bg-color-input: var(--uikit-color-gray-2);
|
94
|
+
--bg-color-bubble-reciprocal: var(--uikit-color-gray-2);
|
95
|
+
--bg-color-bubble-own: var(--uikit-color-theme-2);
|
96
|
+
--bg-color-default: var(--uikit-color-gray-2);
|
97
|
+
--bg-color-tag-mask: var(--uikit-color-white-4);
|
98
|
+
--bg-color-element-mask: var(--uikit-color-black-6);
|
99
|
+
--bg-color-mask: var(--uikit-color-black-4);
|
100
|
+
--bg-color-mask-disappeared: var(--uikit-color-white-7);
|
101
|
+
--bg-color-mask-begin: var(--uikit-color-white-1);
|
102
|
+
|
103
|
+
// border
|
104
|
+
--stroke-color-primary: var(--uikit-color-gray-3);
|
105
|
+
--stroke-color-secondary: var(--uikit-color-gray-2);
|
106
|
+
--stroke-color-module: var(--uikit-color-gray-3);
|
107
|
+
|
108
|
+
// shadow
|
109
|
+
--shadow-color: var(--uikit-color-black-8);
|
110
|
+
|
111
|
+
// status
|
112
|
+
--list-color-default: var(--uikit-color-white-1);
|
113
|
+
--list-color-hover: var(--uikit-color-gray-1);
|
114
|
+
--list-color-focused: var(--uikit-color-theme-1);
|
115
|
+
|
116
|
+
// button
|
117
|
+
--button-color-primary-default: var(--uikit-color-theme-6);
|
118
|
+
--button-color-primary-hover: var(--uikit-color-theme-5);
|
119
|
+
--button-color-primary-active: var(--uikit-color-theme-7);
|
120
|
+
--button-color-primary-disabled: var(--uikit-color-theme-2);
|
121
|
+
--button-color-secondary-default: var(--uikit-color-gray-2);
|
122
|
+
--button-color-secondary-hover: var(--uikit-color-gray-1);
|
123
|
+
--button-color-secondary-active: var(--uikit-color-gray-3);
|
124
|
+
--button-color-secondary-disabled: var(--uikit-color-gray-1);
|
125
|
+
--button-color-accept: var(--uikit-color-green-6);
|
126
|
+
--button-color-hangup: var(--uikit-color-red-6);
|
127
|
+
--button-color-on: var(--uikit-color-white-1);
|
128
|
+
--button-color-off: var(--uikit-color-black-5);
|
129
|
+
|
130
|
+
// dropdown
|
131
|
+
--dropdown-color-default: var(--uikit-color-white-1);
|
132
|
+
--dropdown-color-hover: var(--uikit-color-gray-1);
|
133
|
+
--dropdown-color-active: var(--uikit-color-theme-2);
|
134
|
+
|
135
|
+
// scroll-bar
|
136
|
+
--scroll-bar-color-default: var(--uikit-color-black-7);
|
137
|
+
--scroll-bar-color-hover: var(--uikit-color-black-6);
|
138
|
+
|
139
|
+
// floating
|
140
|
+
--floating-color-default: var(--uikit-color-white-1);
|
141
|
+
--floating-color-operate: var(--uikit-color-gray-2);
|
142
|
+
|
143
|
+
// checkbox
|
144
|
+
--checkbox-color-selected: var(--uikit-color-theme-6);
|
145
|
+
|
146
|
+
// toast
|
147
|
+
--toast-color-warning: var(--uikit-color-orange-1);
|
148
|
+
--toast-color-success: var(--uikit-color-green-1);
|
149
|
+
--toast-color-error: var(--uikit-color-red-1);
|
150
|
+
--toast-color-default: var(--uikit-color-theme-1);
|
151
|
+
|
152
|
+
// switch
|
153
|
+
--switch-color-off: var(--uikit-color-gray-4);
|
154
|
+
--switch-color-on: var(--uikit-color-theme-6);
|
155
|
+
--switch-color-button: var(--uikit-color-white-1);
|
156
|
+
|
157
|
+
// slider
|
158
|
+
--slider-color-filled: var(--uikit-color-theme-6);
|
159
|
+
--slider-color-empty: var(--uikit-color-gray-3);
|
160
|
+
--slider-color-button: var(--uikit-color-white-1);
|
161
|
+
|
162
|
+
// tab
|
163
|
+
--tab-color-selected: var(--uikit-color-theme-2);
|
164
|
+
--tab-color-unselected: var(--uikit-color-gray-2);
|
165
|
+
--tab-color-option: var(--uikit-color-gray-3);
|
166
|
+
|
167
|
+
// todo-tag
|
168
|
+
}
|
@@ -0,0 +1 @@
|
|
1
|
+
|
package/package.json
ADDED
@@ -0,0 +1,26 @@
|
|
1
|
+
{
|
2
|
+
"name": "@jasperdai/uikit-base-component-vue2",
|
3
|
+
"version": "0.3.0",
|
4
|
+
"type": "module",
|
5
|
+
"main": "./dist/index.js",
|
6
|
+
"scripts": {
|
7
|
+
"dev": "vite build --watch",
|
8
|
+
"build": "vite build",
|
9
|
+
"publish": "npm publish --access public"
|
10
|
+
},
|
11
|
+
"peerDependencies": {
|
12
|
+
"vue": "^2.7.16"
|
13
|
+
},
|
14
|
+
"devDependencies": {
|
15
|
+
"@originjs/vite-plugin-commonjs": "^1.0.3",
|
16
|
+
"sass": "^1.72.0",
|
17
|
+
"typescript": "^5.5.4",
|
18
|
+
"vite": "^5.2.0",
|
19
|
+
"vite-plugin-dts": "^3.7.3",
|
20
|
+
"vue-tsc": "^2.0.6",
|
21
|
+
"@vitejs/plugin-vue2": "^2.3.1",
|
22
|
+
"glob": "^11.0.0",
|
23
|
+
"vite-plugin-lib-inject-css": "^2.1.1",
|
24
|
+
"vite-plugin-static-copy": "^2.2.0"
|
25
|
+
}
|
26
|
+
}
|
package/tsconfig.json
ADDED
@@ -0,0 +1,30 @@
|
|
1
|
+
{
|
2
|
+
"compilerOptions": {
|
3
|
+
"target": "ES2020",
|
4
|
+
"useDefineForClassFields": true,
|
5
|
+
"module": "ESNext",
|
6
|
+
"lib": ["ES2020", "DOM", "DOM.Iterable"],
|
7
|
+
"skipLibCheck": true,
|
8
|
+
|
9
|
+
/* Bundler mode */
|
10
|
+
"moduleResolution": "bundler",
|
11
|
+
"allowImportingTsExtensions": true,
|
12
|
+
"resolveJsonModule": true,
|
13
|
+
"isolatedModules": true,
|
14
|
+
"noEmit": true,
|
15
|
+
"jsx": "preserve",
|
16
|
+
|
17
|
+
/* Linting */
|
18
|
+
"strict": true,
|
19
|
+
"noUnusedLocals": true,
|
20
|
+
"noUnusedParameters": true,
|
21
|
+
"noFallthroughCasesInSwitch": true
|
22
|
+
},
|
23
|
+
"include": [
|
24
|
+
"src/**/*.ts",
|
25
|
+
"src/**/*.tsx",
|
26
|
+
"src/**/*.vue",
|
27
|
+
"vue-shims.d.ts"
|
28
|
+
],
|
29
|
+
"references": [{ "path": "./tsconfig.node.json" }]
|
30
|
+
}
|
package/vite.config.ts
ADDED
@@ -0,0 +1,68 @@
|
|
1
|
+
import { extname, relative, resolve } from 'path';
|
2
|
+
import { fileURLToPath } from 'node:url';
|
3
|
+
import { glob } from 'glob';
|
4
|
+
import { defineConfig } from 'vite';
|
5
|
+
import dts from 'vite-plugin-dts';
|
6
|
+
import vue2 from '@vitejs/plugin-vue2';
|
7
|
+
import { libInjectCss } from 'vite-plugin-lib-inject-css';
|
8
|
+
import { viteStaticCopy } from 'vite-plugin-static-copy';
|
9
|
+
import { peerDependencies } from './package.json';
|
10
|
+
|
11
|
+
export default defineConfig({
|
12
|
+
resolve: {
|
13
|
+
alias: {
|
14
|
+
'@': resolve(__dirname, '/src'),
|
15
|
+
},
|
16
|
+
},
|
17
|
+
build: {
|
18
|
+
lib: {
|
19
|
+
entry: resolve(__dirname, 'src/index.ts'),
|
20
|
+
formats: ['es'],
|
21
|
+
},
|
22
|
+
rollupOptions: {
|
23
|
+
external: [
|
24
|
+
...Object.keys(peerDependencies),
|
25
|
+
],
|
26
|
+
input: getInputEntries(),
|
27
|
+
output: {
|
28
|
+
assetFileNames: 'styles/index[extname]',
|
29
|
+
entryFileNames: '[name].js',
|
30
|
+
},
|
31
|
+
},
|
32
|
+
},
|
33
|
+
plugins: [
|
34
|
+
vue2(),
|
35
|
+
libInjectCss(),
|
36
|
+
dts({
|
37
|
+
include: ['src/**/*.ts', 'src/**/*.vue'],
|
38
|
+
}),
|
39
|
+
viteStaticCopy({
|
40
|
+
targets: [
|
41
|
+
{
|
42
|
+
src: './src/providers/UIKitProvider/styles',
|
43
|
+
dest: 'styles',
|
44
|
+
},
|
45
|
+
],
|
46
|
+
}),
|
47
|
+
],
|
48
|
+
css: {
|
49
|
+
preprocessorOptions: {
|
50
|
+
scss: {
|
51
|
+
api: 'modern-compiler',
|
52
|
+
},
|
53
|
+
},
|
54
|
+
},
|
55
|
+
});
|
56
|
+
|
57
|
+
function getInputEntries() {
|
58
|
+
const inputEntries = Object.fromEntries(
|
59
|
+
glob.sync('src/**/*.{ts,vue}', {}).map(file => [
|
60
|
+
relative(
|
61
|
+
'src',
|
62
|
+
file.slice(0, file.length - extname(file).length),
|
63
|
+
),
|
64
|
+
fileURLToPath(new URL(file, import.meta.url)),
|
65
|
+
]),
|
66
|
+
);
|
67
|
+
return inputEntries;
|
68
|
+
}
|
package/vue-shims.d.ts
ADDED