straw-ui-vue 0.1.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 +42 -0
- package/dist/_virtual/_plugin-vue_export-helper.cjs +1 -0
- package/dist/_virtual/_plugin-vue_export-helper.js +8 -0
- package/dist/components/st-button/index.d.ts +162 -0
- package/dist/components/st-button/st-button.vue.cjs +1 -0
- package/dist/components/st-button/st-button.vue.d.ts +29 -0
- package/dist/components/st-button/st-button.vue.js +5 -0
- package/dist/components/st-button/st-button.vue_vue_type_script_setup_true_lang.cjs +1 -0
- package/dist/components/st-button/st-button.vue_vue_type_script_setup_true_lang.js +81 -0
- package/dist/components/st-button/types.d.ts +49 -0
- package/dist/components/st-button.cjs +1 -0
- package/dist/components/st-button.js +6 -0
- package/dist/components/st-checkbox/index.d.ts +153 -0
- package/dist/components/st-checkbox/st-checkbox.vue.cjs +1 -0
- package/dist/components/st-checkbox/st-checkbox.vue.d.ts +27 -0
- package/dist/components/st-checkbox/st-checkbox.vue.js +5 -0
- package/dist/components/st-checkbox/st-checkbox.vue_vue_type_script_setup_true_lang.cjs +1 -0
- package/dist/components/st-checkbox/st-checkbox.vue_vue_type_script_setup_true_lang.js +109 -0
- package/dist/components/st-checkbox/types.d.ts +20 -0
- package/dist/components/st-checkbox-group/index.d.ts +171 -0
- package/dist/components/st-checkbox-group/st-checkbox-group.vue.cjs +1 -0
- package/dist/components/st-checkbox-group/st-checkbox-group.vue.d.ts +29 -0
- package/dist/components/st-checkbox-group/st-checkbox-group.vue.js +5 -0
- package/dist/components/st-checkbox-group/st-checkbox-group.vue_vue_type_script_setup_true_lang.cjs +1 -0
- package/dist/components/st-checkbox-group/st-checkbox-group.vue_vue_type_script_setup_true_lang.js +63 -0
- package/dist/components/st-checkbox-group/types.d.ts +43 -0
- package/dist/components/st-checkbox-group.cjs +1 -0
- package/dist/components/st-checkbox-group.js +6 -0
- package/dist/components/st-checkbox.cjs +1 -0
- package/dist/components/st-checkbox.js +6 -0
- package/dist/components/st-dialog/index.d.ts +243 -0
- package/dist/components/st-dialog/st-dialog.vue.cjs +1 -0
- package/dist/components/st-dialog/st-dialog.vue.d.ts +41 -0
- package/dist/components/st-dialog/st-dialog.vue.js +5 -0
- package/dist/components/st-dialog/st-dialog.vue_vue_type_script_setup_true_lang.cjs +1 -0
- package/dist/components/st-dialog/st-dialog.vue_vue_type_script_setup_true_lang.js +175 -0
- package/dist/components/st-dialog/types.d.ts +29 -0
- package/dist/components/st-dialog.cjs +1 -0
- package/dist/components/st-dialog.js +6 -0
- package/dist/components/st-input/index.d.ts +315 -0
- package/dist/components/st-input/st-input.vue.cjs +1 -0
- package/dist/components/st-input/st-input.vue.d.ts +48 -0
- package/dist/components/st-input/st-input.vue.js +7 -0
- package/dist/components/st-input/st-input.vue_vue_type_script_setup_true_lang.cjs +1 -0
- package/dist/components/st-input/st-input.vue_vue_type_script_setup_true_lang.js +146 -0
- package/dist/components/st-input/types.d.ts +68 -0
- package/dist/components/st-input.cjs +1 -0
- package/dist/components/st-input.js +6 -0
- package/dist/components/st-menu/index.d.ts +217 -0
- package/dist/components/st-menu/st-menu-node.vue.cjs +1 -0
- package/dist/components/st-menu/st-menu-node.vue.d.ts +14 -0
- package/dist/components/st-menu/st-menu-node.vue.js +5 -0
- package/dist/components/st-menu/st-menu-node.vue_vue_type_script_setup_true_lang.cjs +1 -0
- package/dist/components/st-menu/st-menu-node.vue_vue_type_script_setup_true_lang.js +107 -0
- package/dist/components/st-menu/st-menu.vue.cjs +1 -0
- package/dist/components/st-menu/st-menu.vue.d.ts +26 -0
- package/dist/components/st-menu/st-menu.vue.js +5 -0
- package/dist/components/st-menu/st-menu.vue_vue_type_script_setup_true_lang.cjs +1 -0
- package/dist/components/st-menu/st-menu.vue_vue_type_script_setup_true_lang.js +86 -0
- package/dist/components/st-menu/types.d.ts +82 -0
- package/dist/components/st-menu.cjs +1 -0
- package/dist/components/st-menu.js +7 -0
- package/dist/components/st-popover/index.d.ts +243 -0
- package/dist/components/st-popover/st-popover.vue.cjs +1 -0
- package/dist/components/st-popover/st-popover.vue.d.ts +37 -0
- package/dist/components/st-popover/st-popover.vue.js +5 -0
- package/dist/components/st-popover/st-popover.vue_vue_type_script_setup_true_lang.cjs +1 -0
- package/dist/components/st-popover/st-popover.vue_vue_type_script_setup_true_lang.js +355 -0
- package/dist/components/st-popover/types.d.ts +103 -0
- package/dist/components/st-popover.cjs +1 -0
- package/dist/components/st-popover.js +6 -0
- package/dist/components/st-radio/index.d.ts +135 -0
- package/dist/components/st-radio/st-radio.vue.cjs +1 -0
- package/dist/components/st-radio/st-radio.vue.d.ts +28 -0
- package/dist/components/st-radio/st-radio.vue.js +5 -0
- package/dist/components/st-radio/st-radio.vue_vue_type_script_setup_true_lang.cjs +1 -0
- package/dist/components/st-radio/st-radio.vue_vue_type_script_setup_true_lang.js +88 -0
- package/dist/components/st-radio/types.d.ts +15 -0
- package/dist/components/st-radio-group/index.d.ts +180 -0
- package/dist/components/st-radio-group/st-radio-group.vue.cjs +1 -0
- package/dist/components/st-radio-group/st-radio-group.vue.d.ts +35 -0
- package/dist/components/st-radio-group/st-radio-group.vue.js +5 -0
- package/dist/components/st-radio-group/st-radio-group.vue_vue_type_script_setup_true_lang.cjs +1 -0
- package/dist/components/st-radio-group/st-radio-group.vue_vue_type_script_setup_true_lang.js +66 -0
- package/dist/components/st-radio-group/types.d.ts +43 -0
- package/dist/components/st-radio-group.cjs +1 -0
- package/dist/components/st-radio-group.js +6 -0
- package/dist/components/st-radio.cjs +1 -0
- package/dist/components/st-radio.js +6 -0
- package/dist/components/st-select/index.d.ts +306 -0
- package/dist/components/st-select/st-select.vue.cjs +1 -0
- package/dist/components/st-select/st-select.vue.d.ts +47 -0
- package/dist/components/st-select/st-select.vue.js +5 -0
- package/dist/components/st-select/st-select.vue_vue_type_script_setup_true_lang.cjs +1 -0
- package/dist/components/st-select/st-select.vue_vue_type_script_setup_true_lang.js +200 -0
- package/dist/components/st-select/types.d.ts +85 -0
- package/dist/components/st-select.cjs +1 -0
- package/dist/components/st-select.js +6 -0
- package/dist/components/st-sidebar/index.d.ts +63 -0
- package/dist/components/st-sidebar/st-sidebar.vue.cjs +1 -0
- package/dist/components/st-sidebar/st-sidebar.vue.d.ts +11 -0
- package/dist/components/st-sidebar/st-sidebar.vue.js +5 -0
- package/dist/components/st-sidebar/st-sidebar.vue_vue_type_script_setup_true_lang.cjs +1 -0
- package/dist/components/st-sidebar/st-sidebar.vue_vue_type_script_setup_true_lang.js +108 -0
- package/dist/components/st-sidebar/types.d.ts +56 -0
- package/dist/components/st-sidebar-item/index.d.ts +63 -0
- package/dist/components/st-sidebar-item/st-sidebar-item.vue.cjs +1 -0
- package/dist/components/st-sidebar-item/st-sidebar-item.vue.d.ts +11 -0
- package/dist/components/st-sidebar-item/st-sidebar-item.vue.js +5 -0
- package/dist/components/st-sidebar-item/st-sidebar-item.vue_vue_type_script_setup_true_lang.cjs +1 -0
- package/dist/components/st-sidebar-item/st-sidebar-item.vue_vue_type_script_setup_true_lang.js +38 -0
- package/dist/components/st-sidebar-item/types.d.ts +19 -0
- package/dist/components/st-sidebar-item.cjs +1 -0
- package/dist/components/st-sidebar-item.js +6 -0
- package/dist/components/st-sidebar.cjs +1 -0
- package/dist/components/st-sidebar.js +6 -0
- package/dist/components/st-splitter/index.d.ts +88 -0
- package/dist/components/st-splitter/st-splitter.vue.cjs +1 -0
- package/dist/components/st-splitter/st-splitter.vue.d.ts +16 -0
- package/dist/components/st-splitter/st-splitter.vue.js +5 -0
- package/dist/components/st-splitter/st-splitter.vue_vue_type_script_setup_true_lang.cjs +1 -0
- package/dist/components/st-splitter/st-splitter.vue_vue_type_script_setup_true_lang.js +29 -0
- package/dist/components/st-splitter/types.d.ts +192 -0
- package/dist/components/st-splitter/useSplitter.cjs +1 -0
- package/dist/components/st-splitter/useSplitter.d.ts +24 -0
- package/dist/components/st-splitter/useSplitter.js +129 -0
- package/dist/components/st-splitter-panel/index.d.ts +180 -0
- package/dist/components/st-splitter-panel/st-splitter-panel.vue.cjs +1 -0
- package/dist/components/st-splitter-panel/st-splitter-panel.vue.d.ts +33 -0
- package/dist/components/st-splitter-panel/st-splitter-panel.vue.js +5 -0
- package/dist/components/st-splitter-panel/st-splitter-panel.vue_vue_type_script_setup_true_lang.cjs +1 -0
- package/dist/components/st-splitter-panel/st-splitter-panel.vue_vue_type_script_setup_true_lang.js +164 -0
- package/dist/components/st-splitter-panel/types.d.ts +27 -0
- package/dist/components/st-splitter-panel.cjs +1 -0
- package/dist/components/st-splitter-panel.js +6 -0
- package/dist/components/st-splitter.cjs +1 -0
- package/dist/components/st-splitter.js +7 -0
- package/dist/components/st-toggle/index.d.ts +159 -0
- package/dist/components/st-toggle/st-toggle.vue.cjs +1 -0
- package/dist/components/st-toggle/st-toggle.vue.d.ts +25 -0
- package/dist/components/st-toggle/st-toggle.vue.js +5 -0
- package/dist/components/st-toggle/st-toggle.vue_vue_type_script_setup_true_lang.cjs +1 -0
- package/dist/components/st-toggle/st-toggle.vue_vue_type_script_setup_true_lang.js +62 -0
- package/dist/components/st-toggle/types.d.ts +38 -0
- package/dist/components/st-toggle.cjs +1 -0
- package/dist/components/st-toggle.js +6 -0
- package/dist/components/st-tooltip/index.d.ts +183 -0
- package/dist/components/st-tooltip/st-tooltip.vue.cjs +1 -0
- package/dist/components/st-tooltip/st-tooltip.vue.d.ts +29 -0
- package/dist/components/st-tooltip/st-tooltip.vue.js +5 -0
- package/dist/components/st-tooltip/st-tooltip.vue_vue_type_script_setup_true_lang.cjs +1 -0
- package/dist/components/st-tooltip/st-tooltip.vue_vue_type_script_setup_true_lang.js +71 -0
- package/dist/components/st-tooltip/types.d.ts +79 -0
- package/dist/components/st-tooltip.cjs +1 -0
- package/dist/components/st-tooltip.js +6 -0
- package/dist/components/st-tree/index.d.ts +114 -0
- package/dist/components/st-tree/st-tree-node.vue.cjs +1 -0
- package/dist/components/st-tree/st-tree-node.vue.d.ts +4 -0
- package/dist/components/st-tree/st-tree-node.vue.js +5 -0
- package/dist/components/st-tree/st-tree-node.vue_vue_type_script_setup_true_lang.cjs +1 -0
- package/dist/components/st-tree/st-tree-node.vue_vue_type_script_setup_true_lang.js +87 -0
- package/dist/components/st-tree/st-tree.vue.cjs +1 -0
- package/dist/components/st-tree/st-tree.vue.d.ts +50 -0
- package/dist/components/st-tree/st-tree.vue.js +5 -0
- package/dist/components/st-tree/st-tree.vue_vue_type_script_setup_true_lang.cjs +1 -0
- package/dist/components/st-tree/st-tree.vue_vue_type_script_setup_true_lang.js +59 -0
- package/dist/components/st-tree/types.d.ts +87 -0
- package/dist/components/st-tree.cjs +1 -0
- package/dist/components/st-tree.js +6 -0
- package/dist/components/types.d.ts +41 -0
- package/dist/index.cjs +1 -0
- package/dist/index.css +2 -0
- package/dist/index.d.ts +3005 -0
- package/dist/index.js +47 -0
- package/dist/utils/cn.cjs +1 -0
- package/dist/utils/cn.d.ts +11 -0
- package/dist/utils/cn.js +8 -0
- package/dist/utils/cva/index.cjs +1 -0
- package/dist/utils/cva/index.d.ts +9 -0
- package/dist/utils/cva/index.js +25 -0
- package/dist/utils/cva/types.d.ts +45 -0
- package/dist/utils/directive/index.cjs +1 -0
- package/dist/utils/directive/index.d.ts +4 -0
- package/dist/utils/directive/index.js +10 -0
- package/dist/utils/directive/intersection.cjs +1 -0
- package/dist/utils/directive/intersection.d.ts +6 -0
- package/dist/utils/directive/intersection.js +20 -0
- package/dist/utils/directive/interval.cjs +1 -0
- package/dist/utils/directive/interval.d.ts +6 -0
- package/dist/utils/directive/interval.js +14 -0
- package/dist/utils/directive/move.cjs +1 -0
- package/dist/utils/directive/move.d.ts +6 -0
- package/dist/utils/directive/move.js +42 -0
- package/dist/utils/directive/resize.cjs +1 -0
- package/dist/utils/directive/resize.d.ts +6 -0
- package/dist/utils/directive/resize.js +17 -0
- package/dist/utils/with-install.cjs +1 -0
- package/dist/utils/with-install.d.ts +4 -0
- package/dist/utils/with-install.js +10 -0
- package/package.json +87 -0
package/dist/index.js
ADDED
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import e from "./utils/directive/index.js";
|
|
2
|
+
import { cn as t } from "./utils/cn.js";
|
|
3
|
+
import { cva as n } from "./utils/cva/index.js";
|
|
4
|
+
import { StButton as r } from "./components/st-button.js";
|
|
5
|
+
import { StCheckbox as i } from "./components/st-checkbox.js";
|
|
6
|
+
import { StCheckboxGroup as a } from "./components/st-checkbox-group.js";
|
|
7
|
+
import { StRadio as o } from "./components/st-radio.js";
|
|
8
|
+
import { StRadioGroup as s } from "./components/st-radio-group.js";
|
|
9
|
+
import { StInput as c } from "./components/st-input.js";
|
|
10
|
+
import { StPopover as l } from "./components/st-popover.js";
|
|
11
|
+
import { StTooltip as u } from "./components/st-tooltip.js";
|
|
12
|
+
import { StSelect as d } from "./components/st-select.js";
|
|
13
|
+
import { StDialog as f } from "./components/st-dialog.js";
|
|
14
|
+
import { StMenu as p, StMenuNode as m } from "./components/st-menu.js";
|
|
15
|
+
import { StSidebar as h } from "./components/st-sidebar.js";
|
|
16
|
+
import { StSidebarItem as g } from "./components/st-sidebar-item.js";
|
|
17
|
+
import { StSplitter as _ } from "./components/st-splitter.js";
|
|
18
|
+
import { StSplitterPanel as v } from "./components/st-splitter-panel.js";
|
|
19
|
+
import { StTree as y } from "./components/st-tree.js";
|
|
20
|
+
import { StToggle as b } from "./components/st-toggle.js";
|
|
21
|
+
//#region src/index.ts
|
|
22
|
+
var x = {
|
|
23
|
+
install(t) {
|
|
24
|
+
t.use(e), t.use(r), t.use(i), t.use(a), t.use(o), t.use(s), t.use(c), t.use(l), t.use(u), t.use(d), t.use(f), t.use(p), t.use(m), t.use(h), t.use(g), t.use(_), t.use(v), t.use(y), t.use(b);
|
|
25
|
+
},
|
|
26
|
+
Directive: e,
|
|
27
|
+
StButton: r,
|
|
28
|
+
StCheckbox: i,
|
|
29
|
+
StCheckboxGroup: a,
|
|
30
|
+
StRadio: o,
|
|
31
|
+
StRadioGroup: s,
|
|
32
|
+
StInput: c,
|
|
33
|
+
StPopover: l,
|
|
34
|
+
StTooltip: u,
|
|
35
|
+
StSelect: d,
|
|
36
|
+
StDialog: f,
|
|
37
|
+
StMenu: p,
|
|
38
|
+
StMenuNode: m,
|
|
39
|
+
StSidebar: h,
|
|
40
|
+
StSidebarItem: g,
|
|
41
|
+
StSplitter: _,
|
|
42
|
+
StSplitterPanel: v,
|
|
43
|
+
StTree: y,
|
|
44
|
+
StToggle: b
|
|
45
|
+
};
|
|
46
|
+
//#endregion
|
|
47
|
+
export { e as Directive, r as StButton, i as StCheckbox, a as StCheckboxGroup, f as StDialog, c as StInput, p as StMenu, m as StMenuNode, l as StPopover, o as StRadio, s as StRadioGroup, d as StSelect, h as StSidebar, g as StSidebarItem, _ as StSplitter, v as StSplitterPanel, b as StToggle, u as StTooltip, y as StTree, t as cn, n as cva, x as default };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
let e=require("clsx");var t=(0,require("tailwind-merge").extendTailwindMerge)({extend:{classGroups:{"font-size":[{text:[e=>/^\d+(\.\d+)?$/.test(e)]}]}}});function n(...n){return t((0,e.clsx)(n))}exports.cn=n;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { ClassValue } from 'clsx';
|
|
2
|
+
/**
|
|
3
|
+
* 合并类名工具函数
|
|
4
|
+
* 结合 clsx 和自定义的 tailwind-merge,智能合并多个类名
|
|
5
|
+
* clsx 负责处理条件类名和过滤空值
|
|
6
|
+
* customTwMerge 负责解决 Tailwind CSS 类名冲突,并正确区分尺寸和颜色类
|
|
7
|
+
* @param inputs 类名参数,可以是字符串、对象、数组等
|
|
8
|
+
* @returns 合并后的类名字符串
|
|
9
|
+
*/
|
|
10
|
+
declare function cn(...inputs: ClassValue[]): string;
|
|
11
|
+
export { cn };
|
package/dist/utils/cn.js
ADDED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { clsx as e } from "clsx";
|
|
2
|
+
import { extendTailwindMerge as t } from "tailwind-merge";
|
|
3
|
+
var n = t({ extend: { classGroups: { "font-size": [{ text: [(e) => /^\d+(\.\d+)?$/.test(e)] }] } } });
|
|
4
|
+
function r(...t) {
|
|
5
|
+
return n(e(t));
|
|
6
|
+
}
|
|
7
|
+
//#endregion
|
|
8
|
+
export { r as cn };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const e=require("../cn.cjs");function t(t){let{base:n,variants:r,defaultVariants:i,compoundVariants:a}=t;return t=>{let o={...i,...t},s=[];if(n&&s.push(n),r)for(let e of Object.keys(r)){let t=r[e];if(t){let n=o[e];if(n!=null){let e=String(n);t[e]&&s.push(t[e])}}}if(a)for(let e of a)Object.entries(e.variants).every(([e,t])=>o[e]===t)&&s.push(e.className);return e.cn(...s)}}exports.cva=t;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { CVAConfig, CVAReturnFunction, VariantValues } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* 创建一个类变体权威函数
|
|
4
|
+
* 用于声明式管理组件变体类名
|
|
5
|
+
* @param config CVA 配置对象
|
|
6
|
+
* @returns 返回一个函数,该函数接收变体属性并返回合并后的类名
|
|
7
|
+
*/
|
|
8
|
+
declare function cva<Variants extends VariantValues>(config: CVAConfig<Variants>): CVAReturnFunction<Variants>;
|
|
9
|
+
export { cva };
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { cn as e } from "../cn.js";
|
|
2
|
+
//#region src/utils/cva/index.ts
|
|
3
|
+
function t(t) {
|
|
4
|
+
let { base: n, variants: r, defaultVariants: i, compoundVariants: a } = t;
|
|
5
|
+
return (t) => {
|
|
6
|
+
let o = {
|
|
7
|
+
...i,
|
|
8
|
+
...t
|
|
9
|
+
}, s = [];
|
|
10
|
+
if (n && s.push(n), r) for (let e of Object.keys(r)) {
|
|
11
|
+
let t = r[e];
|
|
12
|
+
if (t) {
|
|
13
|
+
let n = o[e];
|
|
14
|
+
if (n != null) {
|
|
15
|
+
let e = String(n);
|
|
16
|
+
t[e] && s.push(t[e]);
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
if (a) for (let e of a) Object.entries(e.variants).every(([e, t]) => o[e] === t) && s.push(e.className);
|
|
21
|
+
return e(...s);
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
//#endregion
|
|
25
|
+
export { t as cva };
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CVA 变体值映射类型
|
|
3
|
+
* 用于定义每个变体属性的可能值
|
|
4
|
+
*/
|
|
5
|
+
type VariantValues = Record<string, string | boolean | number | undefined>;
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* CVA 变体配置类型
|
|
9
|
+
* 用于定义每个变体属性对应值的类名映射
|
|
10
|
+
*/
|
|
11
|
+
type VariantConfig<Variants extends VariantValues> = {
|
|
12
|
+
[VariantKey in keyof Variants]?: {
|
|
13
|
+
[Value in Variants[VariantKey] as string]: string;
|
|
14
|
+
};
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* CVA 复合变体配置类型
|
|
19
|
+
* 用于定义当多个变体条件同时满足时应用的类名
|
|
20
|
+
*/
|
|
21
|
+
type CompoundVariant<Variants extends VariantValues> = {
|
|
22
|
+
variants: Partial<Variants>;
|
|
23
|
+
className: string;
|
|
24
|
+
};
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* CVA 配置接口
|
|
28
|
+
* 用于定义组件变体的完整配置
|
|
29
|
+
*/
|
|
30
|
+
interface CVAConfig<Variants extends VariantValues> {
|
|
31
|
+
base?: string;
|
|
32
|
+
variants?: VariantConfig<Variants>;
|
|
33
|
+
defaultVariants?: Partial<Variants>;
|
|
34
|
+
compoundVariants?: Array<CompoundVariant<Variants>>;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
/**
|
|
38
|
+
* CVA 返回函数类型
|
|
39
|
+
* 接收变体属性并返回合并后的类名字符串
|
|
40
|
+
*/
|
|
41
|
+
type CVAReturnFunction<Variants extends VariantValues> = (props?: Partial<Variants>) => string;
|
|
42
|
+
|
|
43
|
+
export type { VariantValues, VariantConfig, CompoundVariant, CVAConfig, CVAReturnFunction };
|
|
44
|
+
|
|
45
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const e=require("./intersection.cjs"),t=require("./interval.cjs"),n=require("./move.cjs"),r=require("./resize.cjs");var i={install(i){i.directive(`intersection`,e.default),i.directive(`interval`,t.default),i.directive(`move`,n.default),i.directive(`resize`,r.default)}};exports.default=i;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import e from "./intersection.js";
|
|
2
|
+
import t from "./interval.js";
|
|
3
|
+
import n from "./move.js";
|
|
4
|
+
import r from "./resize.js";
|
|
5
|
+
//#region src/utils/directive/index.ts
|
|
6
|
+
var i = { install(i) {
|
|
7
|
+
i.directive("intersection", e), i.directive("interval", t), i.directive("move", n), i.directive("resize", r);
|
|
8
|
+
} };
|
|
9
|
+
//#endregion
|
|
10
|
+
export { i as default };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e=new WeakMap,t=new IntersectionObserver(t=>{for(let n of t){let t=e.get(n.target),r=t?.handler,i=t?.params;r&&r({...n.boundingClientRect,isIntersecting:n.isIntersecting},n,i)}}),n={mounted(n,r){let i=r.value&&typeof r.value==`object`?r.value:{handler:r.value};(i.enabled??!0)&&(e.set(n,i),t.observe(n))},unmounted(e,n){t.unobserve(e)}};exports.default=n;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
//#region src/utils/directive/intersection.ts
|
|
2
|
+
var e = /* @__PURE__ */ new WeakMap(), t = new IntersectionObserver((t) => {
|
|
3
|
+
for (let n of t) {
|
|
4
|
+
let t = e.get(n.target), r = t?.handler, i = t?.params;
|
|
5
|
+
r && r({
|
|
6
|
+
...n.boundingClientRect,
|
|
7
|
+
isIntersecting: n.isIntersecting
|
|
8
|
+
}, n, i);
|
|
9
|
+
}
|
|
10
|
+
}), n = {
|
|
11
|
+
mounted(n, r) {
|
|
12
|
+
let i = r.value && typeof r.value == "object" ? r.value : { handler: r.value };
|
|
13
|
+
(i.enabled ?? !0) && (e.set(n, i), t.observe(n));
|
|
14
|
+
},
|
|
15
|
+
unmounted(e, n) {
|
|
16
|
+
t.unobserve(e);
|
|
17
|
+
}
|
|
18
|
+
};
|
|
19
|
+
//#endregion
|
|
20
|
+
export { n as default };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e=new Map,t={mounted(t,n){let r=n.value&&typeof n.value==`object`?n.value:{handler:n.value},i=r.enabled??!0,a=r.timeout??1e3,o=r.params;i&&e.set(t,setInterval(()=>{n.value(t,o)},a))},unmounted(t,n){e.has(t)&&(clearInterval(e.get(t)),e.delete(t))}};exports.default=t;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
//#region src/utils/directive/interval.ts
|
|
2
|
+
var e = /* @__PURE__ */ new Map(), t = {
|
|
3
|
+
mounted(t, n) {
|
|
4
|
+
let r = n.value && typeof n.value == "object" ? n.value : { handler: n.value }, i = r.enabled ?? !0, a = r.timeout ?? 1e3, o = r.params;
|
|
5
|
+
i && e.set(t, setInterval(() => {
|
|
6
|
+
n.value(t, o);
|
|
7
|
+
}, a));
|
|
8
|
+
},
|
|
9
|
+
unmounted(t, n) {
|
|
10
|
+
e.has(t) && (clearInterval(e.get(t)), e.delete(t));
|
|
11
|
+
}
|
|
12
|
+
};
|
|
13
|
+
//#endregion
|
|
14
|
+
export { t as default };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e=null,t=new Map;function n(e){return t.get(e)||e===document.body?e:n(e.parentNode)}function r(r){r.stopPropagation(),r.preventDefault(),e=n(r.target);let o=t.get(e),s=o?.cb?.mousedown,c=o?.move??!0,l=o?.params;if(c){o.position||={};let t=o.position;e.classList.replace(`cursor-grab`,`cursor-grabbing`),t.ol=r.pageX,t.ot=r.pageY,t.l=t.l??0,t.t=t.t??0}s&&s(r,l),document.addEventListener(`mousemove`,i),document.addEventListener(`mouseup`,a,{once:!0})}function i(n){let r=t.get(e),i=r?.handler??r?.cb?.mousemove,a=r?.target,o=r?.move??!0,s=r?.params;if(o){let e=r.position,t=n.pageX-e.ol+e.l,i=n.pageY-e.ot+e.t;a.style.transform=`translate(${t}px, ${i}px)`}i&&i(n,s)}function a(n){let r=t.get(e),a=r?.cb?.mousedown,o=r?.move??!0,s=r?.params;if(o){let t=r.position;t.l=n.pageX-t.ol+t.l,t.t=n.pageY-t.ot+t.t,e.classList.replace(`cursor-grabbing`,`cursor-grab`)}a&&a(n,s),document.removeEventListener(`mousemove`,i)}var o={mounted(e,n){let i=n.value&&typeof n.value==`object`?n.value:{handler:n.value},a=i.enabled??!0,o=i?.move??!0;i.target=typeof i.target==`string`?document.querySelector(`.${i.target}`):e,a&&(o&&e.classList.add(`cursor-grab`),t.set(e,i),e.addEventListener(`mousedown`,r))},unmounted(e,n){t.delete(e),e.removeEventListener(`mousedown`,r)}};exports.default=o;
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
//#region src/utils/directive/move.ts
|
|
2
|
+
var e = null, t = /* @__PURE__ */ new Map();
|
|
3
|
+
function n(e) {
|
|
4
|
+
return t.get(e) || e === document.body ? e : n(e.parentNode);
|
|
5
|
+
}
|
|
6
|
+
function r(r) {
|
|
7
|
+
r.stopPropagation(), r.preventDefault(), e = n(r.target);
|
|
8
|
+
let o = t.get(e), s = o?.cb?.mousedown, c = o?.move ?? !0, l = o?.params;
|
|
9
|
+
if (c) {
|
|
10
|
+
o.position ||= {};
|
|
11
|
+
let t = o.position;
|
|
12
|
+
e.classList.replace("cursor-grab", "cursor-grabbing"), t.ol = r.pageX, t.ot = r.pageY, t.l = t.l ?? 0, t.t = t.t ?? 0;
|
|
13
|
+
}
|
|
14
|
+
s && s(r, l), document.addEventListener("mousemove", i), document.addEventListener("mouseup", a, { once: !0 });
|
|
15
|
+
}
|
|
16
|
+
function i(n) {
|
|
17
|
+
let r = t.get(e), i = r?.handler ?? r?.cb?.mousemove, a = r?.target, o = r?.move ?? !0, s = r?.params;
|
|
18
|
+
if (o) {
|
|
19
|
+
let e = r.position, t = n.pageX - e.ol + e.l, i = n.pageY - e.ot + e.t;
|
|
20
|
+
a.style.transform = `translate(${t}px, ${i}px)`;
|
|
21
|
+
}
|
|
22
|
+
i && i(n, s);
|
|
23
|
+
}
|
|
24
|
+
function a(n) {
|
|
25
|
+
let r = t.get(e), a = r?.cb?.mousedown, o = r?.move ?? !0, s = r?.params;
|
|
26
|
+
if (o) {
|
|
27
|
+
let t = r.position;
|
|
28
|
+
t.l = n.pageX - t.ol + t.l, t.t = n.pageY - t.ot + t.t, e.classList.replace("cursor-grabbing", "cursor-grab");
|
|
29
|
+
}
|
|
30
|
+
a && a(n, s), document.removeEventListener("mousemove", i);
|
|
31
|
+
}
|
|
32
|
+
var o = {
|
|
33
|
+
mounted(e, n) {
|
|
34
|
+
let i = n.value && typeof n.value == "object" ? n.value : { handler: n.value }, a = i.enabled ?? !0, o = i?.move ?? !0;
|
|
35
|
+
i.target = typeof i.target == "string" ? document.querySelector(`.${i.target}`) : e, a && (o && e.classList.add("cursor-grab"), t.set(e, i), e.addEventListener("mousedown", r));
|
|
36
|
+
},
|
|
37
|
+
unmounted(e, n) {
|
|
38
|
+
t.delete(e), e.removeEventListener("mousedown", r);
|
|
39
|
+
}
|
|
40
|
+
};
|
|
41
|
+
//#endregion
|
|
42
|
+
export { o as default };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e=new WeakMap,t=new ResizeObserver(t=>{for(let n of t){let t=e.get(n.target),r=t?.handler,i=t?.params;r&&r(n.contentRect,n,i)}}),n={mounted(n,r){let i=r.value&&typeof r.value==`object`?r.value:{handler:r.value};(i.enabled??!0)&&(e.set(n,i),t.observe(n))},unmounted(e,n){t.unobserve(e)}};exports.default=n;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
//#region src/utils/directive/resize.ts
|
|
2
|
+
var e = /* @__PURE__ */ new WeakMap(), t = new ResizeObserver((t) => {
|
|
3
|
+
for (let n of t) {
|
|
4
|
+
let t = e.get(n.target), r = t?.handler, i = t?.params;
|
|
5
|
+
r && r(n.contentRect, n, i);
|
|
6
|
+
}
|
|
7
|
+
}), n = {
|
|
8
|
+
mounted(n, r) {
|
|
9
|
+
let i = r.value && typeof r.value == "object" ? r.value : { handler: r.value };
|
|
10
|
+
(i.enabled ?? !0) && (e.set(n, i), t.observe(n));
|
|
11
|
+
},
|
|
12
|
+
unmounted(e, n) {
|
|
13
|
+
t.unobserve(e);
|
|
14
|
+
}
|
|
15
|
+
};
|
|
16
|
+
//#endregion
|
|
17
|
+
export { n as default };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
function e(e){let t=e;return t.install=t=>{let n=e.name||e.__name;n&&t.component(n,e)},t}exports.withInstall=e;
|
package/package.json
ADDED
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "straw-ui-vue",
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"description": "A Vue 3 directive library",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"main": "./dist/index.cjs",
|
|
7
|
+
"module": "./dist/index.js",
|
|
8
|
+
"types": "./dist/index.d.ts",
|
|
9
|
+
"author": {
|
|
10
|
+
"name": "叶落ぃ无尘"
|
|
11
|
+
},
|
|
12
|
+
"exports": {
|
|
13
|
+
".": {
|
|
14
|
+
"types": "./dist/index.d.ts",
|
|
15
|
+
"import": "./dist/index.js",
|
|
16
|
+
"require": "./dist/index.cjs"
|
|
17
|
+
},
|
|
18
|
+
"./components/*": {
|
|
19
|
+
"types": "./dist/components/*/index.d.ts",
|
|
20
|
+
"import": "./dist/components/*.js",
|
|
21
|
+
"require": "./dist/components/*.cjs"
|
|
22
|
+
},
|
|
23
|
+
"./style.css": "./dist/index.css"
|
|
24
|
+
},
|
|
25
|
+
"files": [
|
|
26
|
+
"dist",
|
|
27
|
+
"README.md"
|
|
28
|
+
],
|
|
29
|
+
"sideEffects": [
|
|
30
|
+
"**/*.css",
|
|
31
|
+
"**/*.less"
|
|
32
|
+
],
|
|
33
|
+
"scripts": {
|
|
34
|
+
"dev": "vite",
|
|
35
|
+
"build": "vite build",
|
|
36
|
+
"copy-types": "node scripts/copy-types.mjs",
|
|
37
|
+
"build:lib": "vite build && vue-tsc -p tsconfig.app.json --emitDeclarationOnly && npm run copy-types",
|
|
38
|
+
"type-check": "vue-tsc -p tsconfig.app.json --noEmit",
|
|
39
|
+
"preview": "vite preview",
|
|
40
|
+
"format": "prettier --write --experimental-cli src/",
|
|
41
|
+
"docs:dev": "vitepress dev docs",
|
|
42
|
+
"docs:build": "vitepress build docs",
|
|
43
|
+
"prepublishOnly": "npm run build:lib"
|
|
44
|
+
},
|
|
45
|
+
"keywords": [
|
|
46
|
+
"vue3",
|
|
47
|
+
"vue",
|
|
48
|
+
"directives",
|
|
49
|
+
"component-library"
|
|
50
|
+
],
|
|
51
|
+
"license": "MIT",
|
|
52
|
+
"repository": {
|
|
53
|
+
"type": "git",
|
|
54
|
+
"url": ""
|
|
55
|
+
},
|
|
56
|
+
"peerDependencies": {
|
|
57
|
+
"vue": "^3.3.0",
|
|
58
|
+
"clsx": "^2.1.0",
|
|
59
|
+
"tailwind-merge": "^3.6.0"
|
|
60
|
+
},
|
|
61
|
+
"dependencies": {},
|
|
62
|
+
"devDependencies": {
|
|
63
|
+
"@iconify/json": "2.2.483",
|
|
64
|
+
"@tsconfig/node24": "24.0.4",
|
|
65
|
+
"@types/node": "25.9.2",
|
|
66
|
+
"@unocss/preset-wind4": "66.7.0",
|
|
67
|
+
"@vitejs/plugin-vue": "6.0.7",
|
|
68
|
+
"@vitejs/plugin-vue-jsx": "5.1.5",
|
|
69
|
+
"@vue/tsconfig": "0.9.1",
|
|
70
|
+
"clsx": "2.1.1",
|
|
71
|
+
"less": "4.6.4",
|
|
72
|
+
"npm-run-all2": "9.0.1",
|
|
73
|
+
"pinia": "3.0.4",
|
|
74
|
+
"prettier": "3.8.3",
|
|
75
|
+
"tailwind-merge": "3.6.0",
|
|
76
|
+
"typescript": "6.0.3",
|
|
77
|
+
"unocss": "66.7.0",
|
|
78
|
+
"vite": "8.0.16",
|
|
79
|
+
"vite-plugin-vue-devtools": "8.1.2",
|
|
80
|
+
"vue": "3.5.35",
|
|
81
|
+
"vue-router": "5.1.0",
|
|
82
|
+
"vue-tsc": "3.3.3"
|
|
83
|
+
},
|
|
84
|
+
"engines": {
|
|
85
|
+
"node": "^20.19.0 || >=22.12.0"
|
|
86
|
+
}
|
|
87
|
+
}
|