@quiteer/naive-extra 0.0.1

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.
Files changed (171) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +86 -0
  3. package/dist/components/breadcrumb/index.d.ts +0 -0
  4. package/dist/components/breadcrumb/index.vue.d.ts +3 -0
  5. package/dist/components/breadcrumb/props.d.ts +0 -0
  6. package/dist/components/button/action/index.d.ts +3 -0
  7. package/dist/components/button/action/index.vue.d.ts +118 -0
  8. package/dist/components/button/action/props.d.ts +63 -0
  9. package/dist/components/button/action/utils.d.ts +8 -0
  10. package/dist/components/button/base/index.d.ts +3 -0
  11. package/dist/components/button/base/index.vue.d.ts +36 -0
  12. package/dist/components/button/base/props.d.ts +27 -0
  13. package/dist/components/button/index.d.ts +4 -0
  14. package/dist/components/button/types.d.ts +2 -0
  15. package/dist/components/form/helper.d.ts +11 -0
  16. package/dist/components/form/index.d.ts +3 -0
  17. package/dist/components/form/index.vue.d.ts +642 -0
  18. package/dist/components/form/props.d.ts +34 -0
  19. package/dist/components/icon/IconPicker.vue.d.ts +13 -0
  20. package/dist/components/icon/iconify.d.ts +25 -0
  21. package/dist/components/icon/index.d.ts +3 -0
  22. package/dist/components/icon/index.vue.d.ts +12 -0
  23. package/dist/components/layout/const.d.ts +22 -0
  24. package/dist/components/layout/context.d.ts +77 -0
  25. package/dist/components/layout/index.d.ts +5 -0
  26. package/dist/components/layout/index.vue.d.ts +80 -0
  27. package/dist/components/layout/layout-parts/AppBreadcrumb.vue.d.ts +3 -0
  28. package/dist/components/layout/layout-parts/AppFooter.vue.d.ts +18 -0
  29. package/dist/components/layout/layout-parts/AppHeader.vue.d.ts +18 -0
  30. package/dist/components/layout/layout-parts/AppLeftLogoInfo.vue.d.ts +3 -0
  31. package/dist/components/layout/layout-parts/AppMain.vue.d.ts +18 -0
  32. package/dist/components/layout/layout-parts/AppSidebar.vue.d.ts +4067 -0
  33. package/dist/components/layout/layout-parts/LayoutTransition.vue.d.ts +58 -0
  34. package/dist/components/layout/mode.d.ts +0 -0
  35. package/dist/components/layout/props.d.ts +35 -0
  36. package/dist/components/layout/types.d.ts +59 -0
  37. package/dist/components/layout/utils.d.ts +97 -0
  38. package/dist/components/provider/index.d.ts +3 -0
  39. package/dist/components/provider/index.vue.d.ts +19 -0
  40. package/dist/components/provider/props.d.ts +33 -0
  41. package/dist/components/search-bar/index.d.ts +3 -0
  42. package/dist/components/search-bar/index.vue.d.ts +1288 -0
  43. package/dist/components/search-bar/props.d.ts +15 -0
  44. package/dist/components/table/TableSetting.vue.d.ts +15 -0
  45. package/dist/components/table/index.d.ts +4 -0
  46. package/dist/components/table/index.vue.d.ts +17246 -0
  47. package/dist/components/table/props.d.ts +26 -0
  48. package/dist/components/table/useColumn.d.ts +15 -0
  49. package/dist/components/upload/enum.d.ts +18 -0
  50. package/dist/components/upload/index.d.ts +4 -0
  51. package/dist/components/upload/index.vue.d.ts +17 -0
  52. package/dist/components/upload/props.d.ts +7 -0
  53. package/dist/const/defaults.d.ts +7 -0
  54. package/dist/const/index.d.ts +2 -0
  55. package/dist/const/types.d.ts +134 -0
  56. package/dist/context/color.d.ts +13 -0
  57. package/dist/context/common.d.ts +117 -0
  58. package/dist/context/index.d.ts +41 -0
  59. package/dist/context/layout.d.ts +52 -0
  60. package/dist/context/loading-bar.d.ts +14 -0
  61. package/dist/context/locale.d.ts +143 -0
  62. package/dist/context/menu.d.ts +212 -0
  63. package/dist/context/message.d.ts +14 -0
  64. package/dist/context/notification.d.ts +14 -0
  65. package/dist/context/table.d.ts +917 -0
  66. package/dist/context/theme.d.ts +20 -0
  67. package/dist/hooks/index.d.ts +6 -0
  68. package/dist/hooks/useAdmin.d.ts +0 -0
  69. package/dist/hooks/useForm.d.ts +54 -0
  70. package/dist/hooks/useLayout.d.ts +116 -0
  71. package/dist/hooks/useProviderContext.d.ts +17 -0
  72. package/dist/hooks/useTable.d.ts +66 -0
  73. package/dist/hooks/useThemeOverrides.d.ts +8 -0
  74. package/dist/hooks/useUpload.d.ts +22 -0
  75. package/dist/index.css +36 -0
  76. package/dist/index.d.ts +29 -0
  77. package/dist/index.js +6771 -0
  78. package/dist/share/compact.d.ts +16 -0
  79. package/dist/share/index.d.ts +2 -0
  80. package/dist/share/menu.d.ts +0 -0
  81. package/dist/share/route.d.ts +0 -0
  82. package/dist/share/slot.d.ts +6 -0
  83. package/dist/utils/form.d.ts +0 -0
  84. package/dist/utils/index.d.ts +0 -0
  85. package/dist/utils/transformRoutes.d.ts +67 -0
  86. package/dist/utils/tree.d.ts +6 -0
  87. package/package.json +53 -0
  88. package/src/auto-imports.d.ts +73 -0
  89. package/src/components/breadcrumb/index.ts +0 -0
  90. package/src/components/breadcrumb/index.vue +0 -0
  91. package/src/components/breadcrumb/props.ts +0 -0
  92. package/src/components/button/action/index.ts +4 -0
  93. package/src/components/button/action/index.vue +313 -0
  94. package/src/components/button/action/props.ts +78 -0
  95. package/src/components/button/action/utils.ts +122 -0
  96. package/src/components/button/base/index.ts +4 -0
  97. package/src/components/button/base/index.vue +156 -0
  98. package/src/components/button/base/props.ts +29 -0
  99. package/src/components/button/index.ts +4 -0
  100. package/src/components/button/types.ts +2 -0
  101. package/src/components/form/helper.ts +73 -0
  102. package/src/components/form/index.ts +5 -0
  103. package/src/components/form/index.vue +243 -0
  104. package/src/components/form/props.ts +75 -0
  105. package/src/components/icon/IconPicker.vue +255 -0
  106. package/src/components/icon/iconify.ts +80 -0
  107. package/src/components/icon/index.ts +7 -0
  108. package/src/components/icon/index.vue +23 -0
  109. package/src/components/layout/const.ts +102 -0
  110. package/src/components/layout/context.ts +189 -0
  111. package/src/components/layout/index.ts +8 -0
  112. package/src/components/layout/index.vue +64 -0
  113. package/src/components/layout/layout-parts/AppBreadcrumb.vue +108 -0
  114. package/src/components/layout/layout-parts/AppFooter.vue +26 -0
  115. package/src/components/layout/layout-parts/AppHeader.vue +112 -0
  116. package/src/components/layout/layout-parts/AppLeftLogoInfo.vue +30 -0
  117. package/src/components/layout/layout-parts/AppMain.vue +34 -0
  118. package/src/components/layout/layout-parts/AppSidebar.vue +174 -0
  119. package/src/components/layout/layout-parts/LayoutTransition.vue +366 -0
  120. package/src/components/layout/mode.ts +0 -0
  121. package/src/components/layout/props.ts +36 -0
  122. package/src/components/layout/types.ts +79 -0
  123. package/src/components/layout/utils.ts +201 -0
  124. package/src/components/provider/index.ts +5 -0
  125. package/src/components/provider/index.vue +69 -0
  126. package/src/components/provider/props.ts +45 -0
  127. package/src/components/search-bar/index.ts +5 -0
  128. package/src/components/search-bar/index.vue +282 -0
  129. package/src/components/search-bar/props.ts +26 -0
  130. package/src/components/table/TableSetting.vue +253 -0
  131. package/src/components/table/index.ts +14 -0
  132. package/src/components/table/index.vue +179 -0
  133. package/src/components/table/props.ts +29 -0
  134. package/src/components/table/useColumn.ts +104 -0
  135. package/src/components/upload/enum.ts +21 -0
  136. package/src/components/upload/index.ts +9 -0
  137. package/src/components/upload/index.vue +267 -0
  138. package/src/components/upload/props.ts +8 -0
  139. package/src/components.d.ts +154 -0
  140. package/src/const/defaults.ts +94 -0
  141. package/src/const/index.ts +2 -0
  142. package/src/const/types.ts +139 -0
  143. package/src/context/color.ts +53 -0
  144. package/src/context/common.ts +27 -0
  145. package/src/context/index.ts +141 -0
  146. package/src/context/layout.ts +34 -0
  147. package/src/context/loading-bar.ts +26 -0
  148. package/src/context/locale.ts +22 -0
  149. package/src/context/menu.ts +26 -0
  150. package/src/context/message.ts +30 -0
  151. package/src/context/notification.ts +29 -0
  152. package/src/context/table.ts +32 -0
  153. package/src/context/theme.ts +35 -0
  154. package/src/hooks/index.ts +6 -0
  155. package/src/hooks/useAdmin.ts +0 -0
  156. package/src/hooks/useForm.ts +272 -0
  157. package/src/hooks/useLayout.ts +300 -0
  158. package/src/hooks/useProviderContext.ts +47 -0
  159. package/src/hooks/useTable.ts +241 -0
  160. package/src/hooks/useThemeOverrides.ts +18 -0
  161. package/src/hooks/useUpload.ts +82 -0
  162. package/src/index.ts +59 -0
  163. package/src/share/compact.ts +35 -0
  164. package/src/share/index.ts +2 -0
  165. package/src/share/menu.ts +0 -0
  166. package/src/share/route.ts +0 -0
  167. package/src/share/slot.ts +29 -0
  168. package/src/utils/form.ts +0 -0
  169. package/src/utils/index.ts +0 -0
  170. package/src/utils/transformRoutes.ts +163 -0
  171. package/src/utils/tree.ts +31 -0
@@ -0,0 +1,20 @@
1
+ import { ComputedRef } from 'vue';
2
+ import { NaiveExtraThemeConfig } from '../const';
3
+ import { BuiltInGlobalTheme } from 'naive-ui/es/themes/interface';
4
+ /**
5
+ * 主题管理模块
6
+ *
7
+ * 负责应用明暗模式的响应式计算,支持跟随系统主题 (OS Theme)。
8
+ *
9
+ * @param mergedConfig - 合并后的完整主题配置
10
+ * @returns 包含当前是否为暗黑模式 (isDark) 及 Naive UI 主题对象 (theme) 的计算引用
11
+ *
12
+ * @example
13
+ * ```ts
14
+ * const { isDark, theme } = useThemeModule(mergedConfig)
15
+ * ```
16
+ */
17
+ export declare function useThemeModule(mergedConfig: ComputedRef<Required<NaiveExtraThemeConfig>>): {
18
+ isDark: ComputedRef<boolean>;
19
+ theme: ComputedRef< BuiltInGlobalTheme | null>;
20
+ };
@@ -0,0 +1,6 @@
1
+ export * from './useForm';
2
+ export * from './useLayout';
3
+ export * from './useProviderContext';
4
+ export * from './useTable';
5
+ export * from './useThemeOverrides';
6
+ export * from './useUpload';
File without changes
@@ -0,0 +1,54 @@
1
+ import { Ref } from 'vue';
2
+ import { FormSchema } from '../components/form/props';
3
+ import { Recordable } from '..';
4
+ interface Option {
5
+ label: string;
6
+ value: any;
7
+ disabled?: boolean;
8
+ }
9
+ /**
10
+ * 基于表单 `schemas` 提供便捷的查询与更新工具
11
+ *
12
+ * 适用于外部通过接口动态配置下拉选项、默认值、组件属性等场景,
13
+ * 对传入的 `schemas` 进行就地更新(保持响应式)。
14
+ *
15
+ * @param schemas - 表单项描述数组,建议传入响应式引用
16
+ * @returns 返回一组对 `schemas` 的操作方法
17
+ *
18
+ * @example
19
+ * ```ts
20
+ * const { setOptions, setComponentProps } = useForm(schemas)
21
+ * setOptions('status', [{ label: '启用', value: 1 }])
22
+ * setComponentProps('status', { clearable: true })
23
+ * ```
24
+ *
25
+ * @remarks
26
+ * - 所有更新均为原地更新,适配 Vue 的响应式数组/对象
27
+ * - 仅对存在的字段进行更新,不会抛异常
28
+ *
29
+ * @security
30
+ * 请勿在 `componentProps` 中写入敏感信息
31
+ *
32
+ * @performance
33
+ * 操作复杂度均为 O(n) 或更低,适合一般表单规模
34
+ */
35
+ export declare function useForm(schemas: FormSchema[], formRef?: Ref<any>): {
36
+ useItemByField: (field: string) => FormSchema< Recordable<string>> | undefined;
37
+ setOptions: (field: string, options: Option[]) => void;
38
+ getOptions: (field: string) => Option[] | undefined;
39
+ setComponentProps: (field: string, props: Record<string, any>) => void;
40
+ setDefaultValue: (field: string, value: any) => void;
41
+ replaceSchema: (field: string, patch: Partial<FormSchema>) => void;
42
+ upsertSchema: (schema: FormSchema) => void;
43
+ removeSchema: (field: string) => boolean;
44
+ listFields: () => string[];
45
+ toRulesMap: () => Record<string, object[]>;
46
+ getFormRef: () => any;
47
+ bindFormRef: (ref: Ref<any>) => void;
48
+ validate: () => Promise<void> | undefined;
49
+ resetFields: () => Promise<void> | undefined;
50
+ clearValidate: () => Promise<void> | undefined;
51
+ getFieldsValue: () => Record<string, any> | undefined;
52
+ setFieldsValue: (values: Record<string, any>) => void;
53
+ };
54
+ export {};
@@ -0,0 +1,116 @@
1
+ import { MenuOption } from 'naive-ui';
2
+ import { ComputedRef, Ref, WritableComputedRef } from 'vue';
3
+ import { RouteRecordRaw } from 'vue-router';
4
+ import { LayoutType, RouteMeta } from '../components/layout/types';
5
+ export interface UseLayoutContext {
6
+ type: 'left-menu' | string;
7
+ bordered: boolean;
8
+ inverted: boolean;
9
+ isCollapsed: boolean;
10
+ headerHeight: number;
11
+ footerHeight: number;
12
+ showFooter: boolean;
13
+ siderWidth: number;
14
+ siderMixedWidth: number;
15
+ collapsedWidth: number;
16
+ routes: RouteLike[];
17
+ activeKey: string;
18
+ menuOptions: MenuOption[];
19
+ accordion: boolean;
20
+ homePath?: string;
21
+ excludePaths?: string[];
22
+ updateIsCollapsed: (v: boolean) => void;
23
+ updateInverted: (v: boolean) => void;
24
+ updateActiveKey: (v: string) => void;
25
+ }
26
+ export interface UseLayoutReturn {
27
+ collapsed: Ref<boolean>;
28
+ baseRoutes: any;
29
+ addRoute: (route: RouteRecordRaw) => void;
30
+ addRoutes: (routes: RouteRecordRaw[]) => void;
31
+ removeRoute: (id: string) => void;
32
+ toggle: () => void;
33
+ setCollapsed: (v: boolean) => void;
34
+ activeKey: Ref<string>;
35
+ setActiveKey: (key: string) => void;
36
+ menuOptions: ComputedRef<MenuOption[]>;
37
+ context: UseLayoutContext;
38
+ type: WritableComputedRef<LayoutType>;
39
+ bordered: Ref<boolean>;
40
+ inverted: Ref<boolean>;
41
+ headerHeight: Ref<number>;
42
+ footerHeight: Ref<number>;
43
+ siderWidth: Ref<number>;
44
+ siderMixedWidth: Ref<number>;
45
+ collapsedWidth: Ref<number>;
46
+ accordion: Ref<boolean>;
47
+ }
48
+ /**
49
+ * 获取扁平路由列表(基于 Vue Router)
50
+ *
51
+ * 读取 `useRouter().getRoutes()` 并转换为简化的 `RouteRecordRaw[]`(扁平结构)。
52
+ * 自动补充 `meta.title` 兜底为 `name`,并过滤 `meta.showInMenu === false` 的项。
53
+ *
54
+ * @returns 扁平路由数组,适配菜单转换
55
+ *
56
+ * @example
57
+ * ```ts
58
+ * const routes = getRoutes()
59
+ * ```
60
+ */
61
+ export interface RouteLike {
62
+ path: string;
63
+ name?: string;
64
+ meta?: RouteMeta;
65
+ children?: RouteLike[];
66
+ }
67
+ export declare function useActiveKey(initialKey?: string): {
68
+ activeKey: Ref<string>;
69
+ setActiveKey: (key: string) => void;
70
+ };
71
+ /**
72
+ * 创建布局辅助方法集合
73
+ *
74
+ * 提供统一的布局状态管理(折叠、激活键)、菜单生成以及用于 provide/inject 的上下文对象构建。
75
+ *
76
+ * @param option - 布局初始化与参数配置
77
+ * @param option.routes - 路由数组或其 Ref(用于生成菜单)
78
+ * @param option.initialCollapsed - 初始折叠状态,默认 false
79
+ * @param option.initialActiveKey - 初始激活菜单键,默认 ''
80
+ * @param option.bordered - 是否显示边框,支持布尔或 Ref
81
+ * @param option.inverted - 是否启用反色样式,支持布尔或 Ref
82
+ * @param option.headerHeight - 头部高度,支持 number 或 Ref<number>
83
+ * @param option.footerHeight - 底部高度,支持 number 或 Ref<number>
84
+ * @param option.siderWidth - 侧栏宽度,支持 number 或 Ref<number>
85
+ * @param option.collapsedWidth - 折叠宽度,支持 number 或 Ref<number>
86
+ * @returns 返回包含状态控制、菜单选项与上下文的辅助对象
87
+ * @throws {TypeError} 在编译期校验参数类型,不在运行时抛错
88
+ *
89
+ * @remarks
90
+ * - 统一创建 ComputedRef 包裹的配置,确保在 provide/inject 下保持响应式
91
+ * - `routes` 支持数组或 Ref,内部自动转换为响应式
92
+ *
93
+ * @security
94
+ * - 无副作用,仅管理 UI 状态与映射
95
+ *
96
+ * @performance
97
+ * - 主要开销为菜单映射与少量 computed,通常可忽略
98
+ */
99
+ export declare function useLayout(option: {
100
+ baseRoutes: Readonly<Ref<RouteRecordRaw[]> | RouteRecordRaw[]>;
101
+ menuOptions?: Ref<MenuOption[]> | MenuOption[];
102
+ initialCollapsed?: boolean;
103
+ initialActiveKey?: string;
104
+ type?: LayoutType;
105
+ bordered?: boolean;
106
+ inverted?: boolean;
107
+ headerHeight?: number;
108
+ footerHeight?: number;
109
+ showFooter?: boolean;
110
+ siderWidth?: number;
111
+ siderMixedWidth?: number;
112
+ collapsedWidth?: number;
113
+ accordion?: boolean;
114
+ homePath?: string;
115
+ excludePaths?: string[];
116
+ }): UseLayoutReturn;
@@ -0,0 +1,17 @@
1
+ import { NaiveExtraContext } from '../context/index';
2
+ /**
3
+ * 消费主题配置上下文
4
+ *
5
+ * 为用户提供访问和更新全局配置的能力。
6
+ *
7
+ * @returns {NaiveExtraContext} 包含配置状态、合并后的配置、以及更新方法
8
+ *
9
+ * @example
10
+ * ```ts
11
+ * const { mergedConfig, updateConfig } = useProviderContext()
12
+ *
13
+ * // 更新品牌色
14
+ * updateConfig({ palette: { primary: '#ff0000' } })
15
+ * ```
16
+ */
17
+ export declare function useProviderContext(): NaiveExtraContext;
@@ -0,0 +1,66 @@
1
+ import { DataTableColumn } from 'naive-ui';
2
+ import { QuiTable } from '../components/table';
3
+ import { ref } from 'vue';
4
+ interface UseTableReturn<T> {
5
+ tableRef: ReturnType<typeof ref<InstanceType<typeof QuiTable>>>;
6
+ refresh: (isReset?: boolean) => void;
7
+ downloadCsv: (fileName?: string) => void;
8
+ setActions: (columnOption: Partial<DataTableColumn<T>>) => void;
9
+ setColumns: (columns: DataTableColumn<T>[]) => void;
10
+ getColumns: () => DataTableColumn<T>[] | undefined;
11
+ setSize: (size: 'small' | 'medium' | 'large') => void;
12
+ setStriped: (striped: boolean) => void;
13
+ getPagination: () => any;
14
+ setPagination: (patch: Partial<{
15
+ page: number;
16
+ pageSize: number;
17
+ }>) => void;
18
+ getData: <TRow = any>() => TRow[] | undefined;
19
+ setData: (rows: T[]) => void;
20
+ setFetch: (fn: (pageInfo: {
21
+ pageNum: number;
22
+ pageSize: number;
23
+ }) => Promise<{
24
+ list: T[];
25
+ total: number;
26
+ }>) => void;
27
+ withSearch: (getSearchParams: () => Record<string, any>, remote: (args: {
28
+ pageNum: number;
29
+ pageSize: number;
30
+ } & Record<string, any>) => Promise<{
31
+ list: T[];
32
+ total: number;
33
+ }>) => void;
34
+ createImageColumn: (key: keyof T & string, title?: string, width?: number) => DataTableColumn<T>;
35
+ createIndexColumn: (title?: string, width?: number) => DataTableColumn<T>;
36
+ createTextColumn: (key: keyof T & string, title: string, width?: number) => DataTableColumn<T>;
37
+ createMoneyColumn: (key: keyof T & string, title?: string, precision?: number) => DataTableColumn<T>;
38
+ }
39
+ /**
40
+ * 表格辅助函数集合
41
+ *
42
+ * 提供对 `QuiTable` 实例的常用操作封装,以及常用列的构造器。
43
+ * 适合在业务或示例中快速调用刷新、导出、追加操作列等能力。
44
+ *
45
+ * @returns 一组表格操作与便捷列构造器
46
+ *
47
+ * @example
48
+ * ```ts
49
+ * const { tableRef, refresh, downloadCsv, setActions } = useTable()
50
+ * refresh(true)
51
+ * downloadCsv('export')
52
+ * setActions({ title: '操作', render: (row) => h('div', {}, '查看') })
53
+ * ```
54
+ *
55
+ * @remarks
56
+ * - 所有实例方法均基于 `QuiTable` 的 `defineExpose` 能力安全调用
57
+ * - 列构造器仅提供基础构造,仍可按需覆盖属性
58
+ *
59
+ * @security
60
+ * - 导出文件名由调用方决定,请避免包含敏感信息
61
+ *
62
+ * @performance
63
+ * - 方法本身为轻量封装,不引入额外复杂度
64
+ */
65
+ export declare function useTable<T = Record<string, any>>(): UseTableReturn<T>;
66
+ export {};
@@ -0,0 +1,8 @@
1
+ import { Ref } from 'vue';
2
+ import { lightTheme } from 'naive-ui';
3
+ /**
4
+ * 获取 Naive UI 特定组件的主题覆盖配置
5
+ * 核心价值在于提供完整的 TypeScript 类型提示,方便用户在业务代码中访问或动态计算样式。
6
+ *
7
+ */
8
+ export declare function useThemeOverrides<K extends keyof typeof lightTheme>(componentName: K): Ref<(typeof lightTheme)[K]>;
@@ -0,0 +1,22 @@
1
+ import { UploadProps } from 'naive-ui';
2
+ import { Props as QuiUploadProps } from '../components/upload/props';
3
+ /**
4
+ * 上传组件属性辅助函数
5
+ *
6
+ * 提供一组便捷的方法来生成不同类型的上传组件属性配置(如图片、视频、音频)。
7
+ *
8
+ * @param config - 基础上传配置
9
+ * @returns 包含获取不同类型上传属性的方法对象
10
+ *
11
+ * @example
12
+ * ```ts
13
+ * const { getImageUploadProps } = useUploadProps({ max: 5 })
14
+ * const props = getImageUploadProps({ action: '/upload' })
15
+ * ```
16
+ */
17
+ export declare function useUploadProps(config: QuiUploadProps): {
18
+ getUploadProps: (option?: UploadProps) => UploadProps;
19
+ getImageUploadProps: (option?: UploadProps) => UploadProps;
20
+ getVedioUploadProps: (option?: UploadProps) => UploadProps;
21
+ getAudioUploadProps: (option?: UploadProps) => UploadProps;
22
+ };
package/dist/index.css ADDED
@@ -0,0 +1,36 @@
1
+
2
+ .icon-picker[data-v-af038852] {
3
+ font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
4
+ }
5
+ .table-toolbar-right-icon[data-v-5cdbcf47] {
6
+ margin-left: 12px;
7
+ font-size: 16px;
8
+ color: var(--text-color);
9
+ cursor: pointer;
10
+ }
11
+ .table-toolbar-right-icon[data-v-5cdbcf47] :hover {
12
+ color: #1890ff;
13
+ }
14
+ .table-toolbar-inner .table-toolbar-inner-checkbox[data-v-5cdbcf47] {
15
+ display: flex;
16
+ align-items: center;
17
+ padding: 5px;
18
+ }
19
+ .table-toolbar-inner .table-toolbar-inner-checkbox[data-v-5cdbcf47]:hover {
20
+ background: var(--n-merged-td-color-hover);
21
+ }
22
+ .table-toolbar-inner .table-toolbar-inner-checkbox .drag-icon[data-v-5cdbcf47] {
23
+ display: inline-flex;
24
+ margin-right: 8px;
25
+ cursor: move;
26
+ }
27
+ .table-toolbar-inner .table-toolbar-inner-checkbox .drag-icon-hidden[data-v-5cdbcf47] {
28
+ visibility: hidden;
29
+ cursor: default;
30
+ }
31
+ .table-toolbar-inner .table-toolbar-inner-checkbox .fixed-item[data-v-5cdbcf47] {
32
+ display: flex;
33
+ align-items: center;
34
+ justify-content: flex-end;
35
+ margin-left: auto;
36
+ }@supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))){*, ::before, ::after, ::backdrop{--un-bg-opacity:100%;--un-text-opacity:100%;--un-border-opacity:100%;}}@property --un-text-opacity{syntax:"<percentage>";inherits:false;initial-value:100%;}@property --un-border-opacity{syntax:"<percentage>";inherits:false;initial-value:100%;}@property --un-bg-opacity{syntax:"<percentage>";inherits:false;initial-value:100%;}:root, :host {--spacing: 0.25rem;--radius-DEFAULT: 0.25rem;--default-transition-timingFunction: cubic-bezier(0.4, 0, 0.2, 1);--default-transition-duration: 150ms;--colors-white: #fff;--colors-gray-200: oklch(92.8% 0.006 264.531);--colors-gray-400: oklch(70.7% 0.022 261.325);--colors-gray-50: oklch(98.5% 0.002 247.839);--colors-gray-500: oklch(55.1% 0.027 264.364);--colors-amber-DEFAULT: oklch(82.8% 0.189 84.429);--colors-red-500: oklch(63.7% 0.237 25.331);--colors-cyan-400: oklch(78.9% 0.154 211.53);--text-sm-fontSize: 0.875rem;--text-sm-lineHeight: 1.25rem;--text-3xl-fontSize: 1.875rem;--text-3xl-lineHeight: 2.25rem;--colors-gray-100: oklch(96.7% 0.003 264.542);--colors-gray-800: oklch(27.8% 0.033 256.848);--colors-gray-900: oklch(21% 0.034 264.665);--colors-gray-700: oklch(37.3% 0.034 259.733);--colors-gray-600: oklch(44.6% 0.03 256.802);--font-sans: ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono: ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--default-font-family: var(--font-sans);--default-monoFont-family: var(--font-mono);}/* 1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4) 2. Remove default margins and padding 3. Reset all borders.*/*,::after,::before,::backdrop,::file-selector-button { box-sizing: border-box; /* 1 */ margin: 0; /* 2 */ padding: 0; /* 2 */ border: 0 solid; /* 3 */}/* 1. Use a consistent sensible line-height in all browsers. 2. Prevent adjustments of font size after orientation changes in iOS. 3. Use a more readable tab size. 4. Use the user's configured `sans` font-family by default. 5. Use the user's configured `sans` font-feature-settings by default. 6. Use the user's configured `sans` font-variation-settings by default. 7. Disable tap highlights on iOS.*/html,:host { line-height: 1.5; /* 1 */ -webkit-text-size-adjust: 100%; /* 2 */ tab-size: 4; /* 3 */ font-family: var( --default-font-family, ui-sans-serif, system-ui, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji' ); /* 4 */ font-feature-settings: var(--default-font-featureSettings, normal); /* 5 */ font-variation-settings: var(--default-font-variationSettings, normal); /* 6 */ -webkit-tap-highlight-color: transparent; /* 7 */}/* 1. Add the correct height in Firefox. 2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655) 3. Reset the default border style to a 1px solid border.*/hr { height: 0; /* 1 */ color: inherit; /* 2 */ border-top-width: 1px; /* 3 */}/* Add the correct text decoration in Chrome, Edge, and Safari.*/abbr:where([title]) { -webkit-text-decoration: underline dotted; text-decoration: underline dotted;}/* Remove the default font size and weight for headings.*/h1,h2,h3,h4,h5,h6 { font-size: inherit; font-weight: inherit;}/* Reset links to optimize for opt-in styling instead of opt-out.*/a { color: inherit; -webkit-text-decoration: inherit; text-decoration: inherit;}/* Add the correct font weight in Edge and Safari.*/b,strong { font-weight: bolder;}/* 1. Use the user's configured `mono` font-family by default. 2. Use the user's configured `mono` font-feature-settings by default. 3. Use the user's configured `mono` font-variation-settings by default. 4. Correct the odd `em` font sizing in all browsers.*/code,kbd,samp,pre { font-family: var( --default-monoFont-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace ); /* 1 */ font-feature-settings: var(--default-monoFont-featureSettings, normal); /* 2 */ font-variation-settings: var(--default-monoFont-variationSettings, normal); /* 3 */ font-size: 1em; /* 4 */}/* Add the correct font size in all browsers.*/small { font-size: 80%;}/* Prevent `sub` and `sup` elements from affecting the line height in all browsers.*/sub,sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline;}sub { bottom: -0.25em;}sup { top: -0.5em;}/* 1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297) 2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016) 3. Remove gaps between table borders by default.*/table { text-indent: 0; /* 1 */ border-color: inherit; /* 2 */ border-collapse: collapse; /* 3 */}/* Use the modern Firefox focus style for all focusable elements.*/:-moz-focusring { outline: auto;}/* Add the correct vertical alignment in Chrome and Firefox.*/progress { vertical-align: baseline;}/* Add the correct display in Chrome and Safari.*/summary { display: list-item;}/* Make lists unstyled by default.*/ol,ul,menu { list-style: none;}/* 1. Make replaced elements `display: block` by default. (https://github.com/mozdevs/cssremedy/issues/14) 2. Add `vertical-align: middle` to align replaced elements more sensibly by default. (https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210) This can trigger a poorly considered lint error in some tools but is included by design.*/img,svg,video,canvas,audio,iframe,embed,object { display: block; /* 1 */ vertical-align: middle; /* 2 */}/* Constrain images and videos to the parent width and preserve their intrinsic aspect ratio. (https://github.com/mozdevs/cssremedy/issues/14)*/img,video { max-width: 100%; height: auto;}/* 1. Inherit font styles in all browsers. 2. Remove border radius in all browsers. 3. Remove background color in all browsers. 4. Ensure consistent opacity for disabled states in all browsers.*/button,input,select,optgroup,textarea,::file-selector-button { font: inherit; /* 1 */ font-feature-settings: inherit; /* 1 */ font-variation-settings: inherit; /* 1 */ letter-spacing: inherit; /* 1 */ color: inherit; /* 1 */ border-radius: 0; /* 2 */ background-color: transparent; /* 3 */ opacity: 1; /* 4 */}/* Restore default font weight.*/:where(select:is([multiple], [size])) optgroup { font-weight: bolder;}/* Restore indentation.*/:where(select:is([multiple], [size])) optgroup option { padding-inline-start: 20px;}/* Restore space after button.*/::file-selector-button { margin-inline-end: 4px;}/* Reset the default placeholder opacity in Firefox. (https://github.com/tailwindlabs/tailwindcss/issues/3300)*/::placeholder { opacity: 1;}/* Set the default placeholder color to a semi-transparent version of the current text color in browsers that do not crash when using `color-mix(…)` with `currentcolor`. (https://github.com/tailwindlabs/tailwindcss/issues/17194)*/@supports (not (-webkit-appearance: -apple-pay-button)) /* Not Safari */ or (contain-intrinsic-size: 1px) /* Safari 17+ */ { ::placeholder { color: color-mix(in oklab, currentcolor 50%, transparent); }}/* Prevent resizing textareas horizontally by default.*/textarea { resize: vertical;}/* Remove the inner padding in Chrome and Safari on macOS.*/::-webkit-search-decoration { -webkit-appearance: none;}/* 1. Ensure date/time inputs have the same height when empty in iOS Safari. 2. Ensure text alignment can be changed on date/time inputs in iOS Safari.*/::-webkit-date-and-time-value { min-height: 1lh; /* 1 */ text-align: inherit; /* 2 */}/* Prevent height from changing on date/time inputs in macOS Safari when the input is set to `display: block`.*/::-webkit-datetime-edit { display: inline-flex;}/* Remove excess padding from pseudo-elements in date/time inputs to ensure consistent height across browsers.*/::-webkit-datetime-edit-fields-wrapper { padding: 0;}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field,::-webkit-datetime-edit-second-field,::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-meridiem-field { padding-block: 0;}/* Center dropdown marker shown on inputs with paired `<datalist>`s in Chrome. (https://github.com/tailwindlabs/tailwindcss/issues/18499)*/::-webkit-calendar-picker-indicator { line-height: 1;}/* Remove the additional `:invalid` styles in Firefox. (https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737)*/:-moz-ui-invalid { box-shadow: none;}/* Correct the inability to style the border radius in iOS Safari.*/button,input:where([type='button'], [type='reset'], [type='submit']),::file-selector-button { appearance: button;}/* Correct the cursor style of increment and decrement buttons in Safari.*/::-webkit-inner-spin-button,::-webkit-outer-spin-button { height: auto;}/* Make elements with the HTML hidden attribute stay hidden by default.*/[hidden]:where(:not([hidden~='until-found'])) { display: none !important;}.i-ant-design-reload-outlined{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 1024 1024' display='inline-block' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='m909.1 209.3l-56.4 44.1C775.8 155.1 656.2 92 521.9 92C290 92 102.3 279.5 102 511.5C101.7 743.7 289.8 932 521.9 932c181.3 0 335.8-115 394.6-276.1c1.5-4.2-.7-8.9-4.9-10.3l-56.7-19.5a8 8 0 0 0-10.1 4.8c-1.8 5-3.8 10-5.9 14.9c-17.3 41-42.1 77.8-73.7 109.4A344.8 344.8 0 0 1 655.9 829c-42.3 17.9-87.4 27-133.8 27c-46.5 0-91.5-9.1-133.8-27A341.5 341.5 0 0 1 279 755.2a342.2 342.2 0 0 1-73.7-109.4c-17.9-42.4-27-87.4-27-133.9s9.1-91.5 27-133.9c17.3-41 42.1-77.8 73.7-109.4s68.4-56.4 109.3-73.8c42.3-17.9 87.4-27 133.8-27c46.5 0 91.5 9.1 133.8 27a341.5 341.5 0 0 1 109.3 73.8c9.9 9.9 19.2 20.4 27.8 31.4l-60.2 47a8 8 0 0 0 3 14.1l175.6 43c5 1.2 9.9-2.6 9.9-7.7l.8-180.9c-.1-6.6-7.8-10.3-13-6.2'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;background-color:currentColor;color:inherit;display:inline-block;width:1em;height:1em;}.i-ic-outline-settings{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' display='inline-block' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M19.43 12.98c.04-.32.07-.64.07-.98s-.03-.66-.07-.98l2.11-1.65c.19-.15.24-.42.12-.64l-2-3.46a.5.5 0 0 0-.61-.22l-2.49 1c-.52-.4-1.08-.73-1.69-.98l-.38-2.65A.49.49 0 0 0 14 2h-4c-.25 0-.46.18-.49.42l-.38 2.65c-.61.25-1.17.59-1.69.98l-2.49-1a.6.6 0 0 0-.18-.03c-.17 0-.34.09-.43.25l-2 3.46c-.13.22-.07.49.12.64l2.11 1.65c-.04.32-.07.65-.07.98s.03.66.07.98l-2.11 1.65c-.19.15-.24.42-.12.64l2 3.46a.5.5 0 0 0 .61.22l2.49-1c.52.4 1.08.73 1.69.98l.38 2.65c.03.24.24.42.49.42h4c.25 0 .46-.18.49-.42l.38-2.65c.61-.25 1.17-.59 1.69-.98l2.49 1q.09.03.18.03c.17 0 .34-.09.43-.25l2-3.46c.12-.22.07-.49-.12-.64zm-1.98-1.71c.04.31.05.52.05.73s-.02.43-.05.73l-.14 1.13l.89.7l1.08.84l-.7 1.21l-1.27-.51l-1.04-.42l-.9.68c-.43.32-.84.56-1.25.73l-1.06.43l-.16 1.13l-.2 1.35h-1.4l-.19-1.35l-.16-1.13l-1.06-.43c-.43-.18-.83-.41-1.23-.71l-.91-.7l-1.06.43l-1.27.51l-.7-1.21l1.08-.84l.89-.7l-.14-1.13c-.03-.31-.05-.54-.05-.74s.02-.43.05-.73l.14-1.13l-.89-.7l-1.08-.84l.7-1.21l1.27.51l1.04.42l.9-.68c.43-.32.84-.56 1.25-.73l1.06-.43l.16-1.13l.2-1.35h1.39l.19 1.35l.16 1.13l1.06.43c.43.18.83.41 1.23.71l.91.7l1.06-.43l1.27-.51l.7 1.21l-1.07.85l-.89.7zM12 8c-2.21 0-4 1.79-4 4s1.79 4 4 4s4-1.79 4-4s-1.79-4-4-4m0 6c-1.1 0-2-.9-2-2s.9-2 2-2s2 .9 2 2s-.9 2-2 2'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;background-color:currentColor;color:inherit;display:inline-block;width:1em;height:1em;}.i-ic-round-refresh{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' display='inline-block' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M17.65 6.35a7.95 7.95 0 0 0-6.48-2.31c-3.67.37-6.69 3.35-7.1 7.02C3.52 15.91 7.27 20 12 20a7.98 7.98 0 0 0 7.21-4.56c.32-.67-.16-1.44-.9-1.44c-.37 0-.72.2-.88.53a5.994 5.994 0 0 1-6.8 3.31c-2.22-.49-4.01-2.3-4.48-4.52A6.002 6.002 0 0 1 12 6c1.66 0 3.14.69 4.22 1.78l-1.51 1.51c-.63.63-.19 1.71.7 1.71H19c.55 0 1-.45 1-1V6.41c0-.89-1.08-1.34-1.71-.71z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;background-color:currentColor;color:inherit;display:inline-block;width:1em;height:1em;}.i-ic-round-search{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' display='inline-block' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M15.5 14h-.79l-.28-.27a6.5 6.5 0 0 0 1.48-5.34c-.47-2.78-2.79-5-5.59-5.34a6.505 6.505 0 0 0-7.27 7.27c.34 2.8 2.56 5.12 5.34 5.59a6.5 6.5 0 0 0 5.34-1.48l.27.28v.79l4.25 4.25c.41.41 1.08.41 1.49 0s.41-1.08 0-1.49zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5S14 7.01 14 9.5S11.99 14 9.5 14'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;background-color:currentColor;color:inherit;display:inline-block;width:1em;height:1em;}.i-material-symbols-info-outline{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' display='inline-block' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M11 17h2v-6h-2zm1-8q.425 0 .713-.288T13 8t-.288-.712T12 7t-.712.288T11 8t.288.713T12 9m0 13q-2.075 0-3.9-.788t-3.175-2.137T2.788 15.9T2 12t.788-3.9t2.137-3.175T8.1 2.788T12 2t3.9.788t3.175 2.137T21.213 8.1T22 12t-.788 3.9t-2.137 3.175t-3.175 2.138T12 22m0-2q3.35 0 5.675-2.325T20 12t-2.325-5.675T12 4T6.325 6.325T4 12t2.325 5.675T12 20m0-8'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;background-color:currentColor;color:inherit;display:inline-block;width:1em;height:1em;}.i-material-symbols\:upload-file{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' display='inline-block' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M11 19h2v-4.175l1.6 1.6L16 15l-4-4l-4 4l1.425 1.4L11 14.825zm-5 3q-.825 0-1.412-.587T4 20V4q0-.825.588-1.412T6 2h8l6 6v12q0 .825-.587 1.413T18 22zm7-13h5l-5-5z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;background-color:currentColor;color:inherit;display:inline-block;width:1em;height:1em;}.i-mdi-arrow-collapse-vertical{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' display='inline-block' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M4 12h16v2H4zm0-3h16v2H4zm12-5l-4 4l-4-4h3V1h2v3zM8 19l4-4l4 4h-3v3h-2v-3z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;background-color:currentColor;color:inherit;display:inline-block;width:1em;height:1em;}.i-mdi-arrow-expand-vertical{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' display='inline-block' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M13 9v6h3l-4 4l-4-4h3V9H8l4-4l4 4zM4 2h16v2H4zm0 18h16v2H4z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;background-color:currentColor;color:inherit;display:inline-block;width:1em;height:1em;}.i-mdi-arrow-up-down-bold{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' display='inline-block' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M10 8H6l6-6l6 6h-4v8h4l-6 6l-6-6h4z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;background-color:currentColor;color:inherit;display:inline-block;width:1em;height:1em;}.i-mdi-file-excel{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' display='inline-block' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8zm1.8 18H14l-2-3.4l-2 3.4H8.2l2.9-4.5L8.2 11H10l2 3.4l2-3.4h1.8l-2.9 4.5zM13 9V3.5L18.5 9z'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;background-color:currentColor;color:inherit;display:inline-block;width:1em;height:1em;}.i-nimbus-drag{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 16 16' display='inline-block' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='m15.46 7l-3.2-2.19l-.71 1l2.29 1.57H8.62V2.16l1.57 2.29l1-.71L9 .54a1.25 1.25 0 0 0-2 0l-2.22 3.2l1 .71l1.59-2.29v5.22H2.16l2.29-1.57l-.71-1L.54 7a1.25 1.25 0 0 0 0 2l3.2 2.19l.71-1l-2.29-1.57h5.21v5.22l-1.56-2.29l-1 .71L7 15.46a1.25 1.25 0 0 0 2.06 0l2.19-3.2l-1-.71l-1.63 2.29V8.62h5.22l-2.29 1.57l.71 1L15.46 9a1.25 1.25 0 0 0 0-2'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;background-color:currentColor;color:inherit;display:inline-block;width:1em;height:1em;}.i-ph-caret-line-left-bold{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 256 256' display='inline-block' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M200.49 199.51a12 12 0 0 1-17 17l-80-80a12 12 0 0 1 0-17l80-80a12 12 0 0 1 17 17L129 128ZM72 36a12 12 0 0 0-12 12v160a12 12 0 0 0 24 0V48a12 12 0 0 0-12-12'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;background-color:currentColor;color:inherit;display:inline-block;width:1em;height:1em;}.i-ph-caret-line-right-bold{--un-icon:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 256 256' display='inline-block' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='currentColor' d='M152.49 119.51a12 12 0 0 1 0 17l-80 80a12 12 0 0 1-17-17L127 128L55.51 56.49a12 12 0 0 1 17-17ZM184 36a12 12 0 0 0-12 12v160a12 12 0 0 0 24 0V48a12 12 0 0 0-12-12'/%3E%3C/svg%3E");-webkit-mask:var(--un-icon) no-repeat;mask:var(--un-icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;background-color:currentColor;color:inherit;display:inline-block;width:1em;height:1em;}.i-skill-icons\:vuejs-dark{background:url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 256 256' display='inline-block' width='1em' height='1em' xmlns='http://www.w3.org/2000/svg' %3E%3Cg fill='none'%3E%3Crect width='256' height='256' fill='%23242938' rx='60'/%3E%3Cpath fill='%2341B883' d='M182 50h36l-90 155.25L38 50h68.85L128 86l20.7-36z'/%3E%3Cpath fill='%2341B883' d='m38 50l90 155.25L218 50h-36l-54 93.15L73.55 50z'/%3E%3Cpath fill='%23fff' d='M73.55 50L128 143.6L182 50h-33.3L128 86l-21.15-36z'/%3E%3C/g%3E%3C/svg%3E") no-repeat;background-size:100% 100%;background-color:transparent;display:inline-block;width:1em;height:1em;}.flex-center{display:flex;align-items:center;justify-content:center;}.flex-col{display:flex;flex-direction:column;}.flex-col-stretch{display:flex;flex-direction:column;align-items:stretch;}.flex-1-hidden{flex:1 1 0%;overflow:hidden;}.cursor-pointer{cursor:pointer;-webkit-user-select:none;user-select:none;}.ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.text-16px{font-size:16px;}.text-3xl{font-size:var(--text-3xl-fontSize);line-height:var(--un-leading, var(--text-3xl-lineHeight));}.text-4{font-size:1rem;}.text-5{font-size:1.25rem;}.text-58px{font-size:58px;}.text-sm{font-size:var(--text-sm-fontSize);line-height:var(--un-leading, var(--text-sm-lineHeight));}.text-amber{color:color-mix(in srgb, var(--colors-amber-DEFAULT) var(--un-text-opacity), transparent) /* oklch(82.8% 0.189 84.429) */;}.text-cyan-400{color:color-mix(in srgb, var(--colors-cyan-400) var(--un-text-opacity), transparent) /* oklch(78.9% 0.154 211.53) */;}.text-gray-400{color:color-mix(in srgb, var(--colors-gray-400) var(--un-text-opacity), transparent) /* oklch(70.7% 0.022 261.325) */;}.text-gray-500{color:color-mix(in srgb, var(--colors-gray-500) var(--un-text-opacity), transparent) /* oklch(55.1% 0.027 264.364) */;}.text-icon{color:color-mix(in srgb, var(--icon-color) var(--un-text-opacity), transparent) /* var(--icon-color) */;}.text-primary-600{color:color-mix(in srgb, var(--primary-600) var(--un-text-opacity), transparent) /* var(--primary-600) */;}.text-red-500{color:color-mix(in srgb, var(--colors-red-500) var(--un-text-opacity), transparent) /* oklch(63.7% 0.237 25.331) */;}.color-\#d8d8db{color:color-mix(in oklab, #d8d8db var(--un-text-opacity), transparent) /* #d8d8db */;}.dark .dark\:color-\#a1a1a2{color:color-mix(in oklab, #a1a1a2 var(--un-text-opacity), transparent) /* #a1a1a2 */;}.mx-auto{margin-inline:auto;}.mb-12px{margin-bottom:12px;}.ml-1{margin-left:calc(var(--spacing) * 1);}.ms{margin-inline-start:calc(var(--spacing) * 4);}.mt-1{margin-top:calc(var(--spacing) * 1);}.mt-12px{margin-top:12px;}.mt-8px{margin-top:8px;}.p-3{padding:calc(var(--spacing) * 3);}.p-4{padding:calc(var(--spacing) * 4);}.px{padding-inline:calc(var(--spacing) * 4);}.px-2{padding-inline:calc(var(--spacing) * 2);}.py-1{padding-block:calc(var(--spacing) * 1);}.py-4{padding-block:calc(var(--spacing) * 4);}.text-center{text-align:center;}.b,.border{border-width:1px;}.border-b{border-bottom-width:1px;}.border-t{border-top-width:1px;}.border-gray-200{border-color:color-mix(in srgb, var(--colors-gray-200) var(--un-border-opacity), transparent) /* oklch(92.8% 0.006 264.531) */;}.border-primary-200{border-color:color-mix(in srgb, var(--primary-200) var(--un-border-opacity), transparent) /* var(--primary-200) */;}.border-transparent{border-color:transparent;}.dark .dark\:border-gray-700{border-color:color-mix(in srgb, var(--colors-gray-700) var(--un-border-opacity), transparent) /* oklch(37.3% 0.034 259.733) */;}.dark .dark\:hover\:border-gray-600:hover{border-color:color-mix(in srgb, var(--colors-gray-600) var(--un-border-opacity), transparent) /* oklch(44.6% 0.03 256.802) */;}.hover\:border-gray-200:hover{border-color:color-mix(in srgb, var(--colors-gray-200) var(--un-border-opacity), transparent) /* oklch(92.8% 0.006 264.531) */;}.rounded{border-radius:var(--radius-DEFAULT);}.bg-gray-50{background-color:color-mix(in srgb, var(--colors-gray-50) var(--un-bg-opacity), transparent) /* oklch(98.5% 0.002 247.839) */;}.bg-primary-50{background-color:color-mix(in srgb, var(--primary-50) var(--un-bg-opacity), transparent) /* var(--primary-50) */;}.bg-white{background-color:color-mix(in srgb, var(--colors-white) var(--un-bg-opacity), transparent) /* #fff */;}.bg-white\/80{background-color:color-mix(in srgb, var(--colors-white) 80%, transparent) /* #fff */;}.dark .dark\:bg-gray-800{background-color:color-mix(in srgb, var(--colors-gray-800) var(--un-bg-opacity), transparent) /* oklch(27.8% 0.033 256.848) */;}.dark .dark\:bg-gray-800\/80{background-color:color-mix(in srgb, var(--colors-gray-800) 80%, transparent) /* oklch(27.8% 0.033 256.848) */;}.dark .dark\:bg-gray-900\/50{background-color:color-mix(in srgb, var(--colors-gray-900) 50%, transparent) /* oklch(21% 0.034 264.665) */;}.dark .dark\:hover\:bg-gray-700:hover{background-color:color-mix(in srgb, var(--colors-gray-700) var(--un-bg-opacity), transparent) /* oklch(37.3% 0.034 259.733) */;}.hover\:bg-gray-100:hover{background-color:color-mix(in srgb, var(--colors-gray-100) var(--un-bg-opacity), transparent) /* oklch(96.7% 0.003 264.542) */;}.opacity-0{opacity:0%;}.opacity-80{opacity:80%;}.flex{display:flex;}.inline-flex{display:inline-flex;}.flex-1{flex:1 1 0%;}.flex-shrink{flex-shrink:1;}.gap-2{gap:calc(var(--spacing) * 2);}.h-\[600px\]{height:600px;}.h-full{height:100%;}.min-h-\[200px\]{min-height:200px;}.w-0{width:calc(var(--spacing) * 0);}.w-full{width:100%;}.aspect-square{aspect-ratio:1/1;}.inline{display:inline;}.hidden{display:none;}.visible{visibility:visible;}.cursor-default{cursor:default;}.select-none{-webkit-user-select:none;user-select:none;}.transform{transform:var(--un-rotate-x) var(--un-rotate-y) var(--un-rotate-z) var(--un-skew-x) var(--un-skew-y);}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,--un-gradient-from,--un-gradient-via,--un-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter;transition-timing-function:var(--un-ease, var(--default-transition-timingFunction));transition-duration:var(--un-duration, var(--default-transition-duration));}.transition-all{transition-property:all;transition-timing-function:var(--un-ease, var(--default-transition-timingFunction));transition-duration:var(--un-duration, var(--default-transition-duration));}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,--un-gradient-from,--un-gradient-via,--un-gradient-to;transition-timing-function:var(--un-ease, var(--default-transition-timingFunction));transition-duration:var(--un-duration, var(--default-transition-duration));}.transition-width{transition-property:width;transition-timing-function:var(--un-ease, var(--default-transition-timingFunction));transition-duration:var(--un-duration, var(--default-transition-duration));}.duration-200{--un-duration:200ms;transition-duration:200ms;}.duration-300{--un-duration:300ms;transition-duration:300ms;}.items-center{align-items:center;}.inset-0{inset:calc(var(--spacing) * 0);}.justify-center{justify-content:center;}.absolute{position:absolute;}.fixed{position:fixed;}.relative{position:relative;}.z-10{z-index:10;}.overflow-hidden{overflow:hidden;}.filter{filter:var(--un-blur,) var(--un-brightness,) var(--un-contrast,) var(--un-grayscale,) var(--un-hue-rotate,) var(--un-invert,) var(--un-saturate,) var(--un-sepia,) var(--un-drop-shadow,);}@supports (color: color-mix(in lab, red, red)){.text-amber{color:color-mix(in oklab, var(--colors-amber-DEFAULT) var(--un-text-opacity), transparent) /* oklch(82.8% 0.189 84.429) */;}.text-cyan-400{color:color-mix(in oklab, var(--colors-cyan-400) var(--un-text-opacity), transparent) /* oklch(78.9% 0.154 211.53) */;}.text-gray-400{color:color-mix(in oklab, var(--colors-gray-400) var(--un-text-opacity), transparent) /* oklch(70.7% 0.022 261.325) */;}.text-gray-500{color:color-mix(in oklab, var(--colors-gray-500) var(--un-text-opacity), transparent) /* oklch(55.1% 0.027 264.364) */;}.text-red-500{color:color-mix(in oklab, var(--colors-red-500) var(--un-text-opacity), transparent) /* oklch(63.7% 0.237 25.331) */;}.border-gray-200{border-color:color-mix(in oklab, var(--colors-gray-200) var(--un-border-opacity), transparent) /* oklch(92.8% 0.006 264.531) */;}.dark .dark\:border-gray-700{border-color:color-mix(in oklab, var(--colors-gray-700) var(--un-border-opacity), transparent) /* oklch(37.3% 0.034 259.733) */;}.dark .dark\:hover\:border-gray-600:hover{border-color:color-mix(in oklab, var(--colors-gray-600) var(--un-border-opacity), transparent) /* oklch(44.6% 0.03 256.802) */;}.hover\:border-gray-200:hover{border-color:color-mix(in oklab, var(--colors-gray-200) var(--un-border-opacity), transparent) /* oklch(92.8% 0.006 264.531) */;}.bg-gray-50{background-color:color-mix(in oklab, var(--colors-gray-50) var(--un-bg-opacity), transparent) /* oklch(98.5% 0.002 247.839) */;}.bg-white{background-color:color-mix(in oklab, var(--colors-white) var(--un-bg-opacity), transparent) /* #fff */;}.bg-white\/80{background-color:color-mix(in oklab, var(--colors-white) 80%, transparent) /* #fff */;}.dark .dark\:bg-gray-800{background-color:color-mix(in oklab, var(--colors-gray-800) var(--un-bg-opacity), transparent) /* oklch(27.8% 0.033 256.848) */;}.dark .dark\:bg-gray-800\/80{background-color:color-mix(in oklab, var(--colors-gray-800) 80%, transparent) /* oklch(27.8% 0.033 256.848) */;}.dark .dark\:bg-gray-900\/50{background-color:color-mix(in oklab, var(--colors-gray-900) 50%, transparent) /* oklch(21% 0.034 264.665) */;}.dark .dark\:hover\:bg-gray-700:hover{background-color:color-mix(in oklab, var(--colors-gray-700) var(--un-bg-opacity), transparent) /* oklch(37.3% 0.034 259.733) */;}.hover\:bg-gray-100:hover{background-color:color-mix(in oklab, var(--colors-gray-100) var(--un-bg-opacity), transparent) /* oklch(96.7% 0.003 264.542) */;}}
@@ -0,0 +1,29 @@
1
+ import { DialogApi, LoadingBarApi, MessageApi, NotificationApi } from 'naive-ui';
2
+ import { QuiActionButton, QuiBaseButton } from './components/button';
3
+ import { QuiForm } from './components/form';
4
+ import { QuiIcon, QuiIconPicker } from './components/icon';
5
+ import { DEFAULT_LAYOUT_TYPE, QuiLayout } from './components/layout';
6
+ import { QuiProvider } from './components/provider';
7
+ import { QuiSearchBar } from './components/search-bar';
8
+ import { QuiTable } from './components/table';
9
+ import { AcceptType, QuiUpload } from './components/upload';
10
+ export { QuiActionButton, QuiBaseButton, QuiForm, QuiIcon, QuiIconPicker, QuiLayout, QuiProvider, QuiSearchBar, QuiTable, QuiUpload };
11
+ export { AcceptType };
12
+ export { DEFAULT_LAYOUT_TYPE };
13
+ export type { ActionItem, BaseButtonProps } from './components/button';
14
+ export type { CustomSwitchProps, FormProps, FormSchema } from './components/form';
15
+ export type { LayoutProps, LayoutType, RouteMeta } from './components/layout';
16
+ export type { ProviderProps } from './components/provider';
17
+ export type { SearchBarProps } from './components/search-bar';
18
+ export type { TableColumn, TableColumns, TableExportType, TableFetchFn, TableProps, TableSettings, TableSize } from './components/table';
19
+ export type { UploadProps } from './components/upload';
20
+ export * from './context';
21
+ export * from './hooks';
22
+ declare global {
23
+ interface Window {
24
+ $message?: MessageApi;
25
+ $dialog?: DialogApi;
26
+ $notification?: NotificationApi;
27
+ $loadingBar?: LoadingBarApi;
28
+ }
29
+ }