@hbdlzy/ui-core 0.1.0 → 0.1.2
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 +61 -3
- package/components.manifest.json +239 -24
- package/dist/index.cjs +1 -1
- package/dist/index.js +3005 -13
- package/dist/style.css +1 -0
- package/package.json +5 -3
- package/src/components/BaseCard/BaseCard.types.ts +38 -0
- package/src/components/BaseCard/BaseCard.vue +250 -0
- package/src/components/BaseCard/README.md +164 -0
- package/src/components/BaseCard/index.ts +5 -0
- package/src/components/BaseEChart/BaseEChart.types.ts +35 -0
- package/src/components/BaseEChart/BaseEChart.vue +327 -0
- package/src/components/BaseEChart/README.md +136 -0
- package/src/components/BaseEChart/index.ts +5 -0
- package/src/components/BaseExportButton/BaseExportButton.vue +1 -1
- package/src/components/BaseExportButton/README.md +104 -8
- package/src/components/BaseTable/BaseTable.types.ts +174 -0
- package/src/components/BaseTable/BaseTable.vue +809 -0
- package/src/components/BaseTable/README.md +398 -0
- package/src/components/BaseTable/index.ts +25 -0
- package/src/components/OutlinedCascader/OutlinedCascader.types.ts +28 -0
- package/src/components/OutlinedCascader/OutlinedCascader.vue +250 -0
- package/src/components/OutlinedCascader/README.md +91 -0
- package/src/components/OutlinedCascader/index.ts +10 -0
- package/src/components/OutlinedDatePicker/OutlinedDatePicker.types.ts +40 -0
- package/src/components/OutlinedDatePicker/OutlinedDatePicker.vue +365 -0
- package/src/components/OutlinedDatePicker/README.md +137 -0
- package/src/components/OutlinedDatePicker/index.ts +11 -0
- package/src/components/OutlinedDateTimePicker/OutlinedDateTimePicker.types.ts +34 -0
- package/src/components/OutlinedDateTimePicker/OutlinedDateTimePicker.vue +421 -0
- package/src/components/OutlinedDateTimePicker/README.md +88 -0
- package/src/components/OutlinedDateTimePicker/index.ts +11 -0
- package/src/components/OutlinedInput/OutlinedInput.types.ts +32 -0
- package/src/components/OutlinedInput/OutlinedInput.vue +307 -0
- package/src/components/OutlinedInput/README.md +154 -0
- package/src/components/OutlinedInput/index.ts +10 -0
- package/src/components/OutlinedSelect/OutlinedSelect.types.ts +48 -0
- package/src/components/OutlinedSelect/OutlinedSelect.vue +359 -0
- package/src/components/OutlinedSelect/README.md +166 -0
- package/src/components/OutlinedSelect/index.ts +12 -0
- package/src/components/OutlinedTimePicker/OutlinedTimePicker.types.ts +36 -0
- package/src/components/OutlinedTimePicker/OutlinedTimePicker.vue +303 -0
- package/src/components/OutlinedTimePicker/README.md +93 -0
- package/src/components/OutlinedTimePicker/index.ts +10 -0
- package/src/components/OutlinedTreeSelect/OutlinedTreeSelect.types.ts +56 -0
- package/src/components/OutlinedTreeSelect/OutlinedTreeSelect.vue +354 -0
- package/src/components/OutlinedTreeSelect/README.md +107 -0
- package/src/components/OutlinedTreeSelect/index.ts +12 -0
- package/src/echarts/index.ts +12 -0
- package/src/excel/exportExcel.ts +36 -10
- package/src/index.ts +29 -0
package/README.md
CHANGED
|
@@ -1,20 +1,78 @@
|
|
|
1
|
-
|
|
1
|
+
# @hbdlzy/ui-core
|
|
2
2
|
|
|
3
3
|
`@hbdlzy/ui-core` 负责沉淀跨项目复用的基础 UI 组件和无业务依赖的前端工具。
|
|
4
4
|
|
|
5
5
|
## 当前内容
|
|
6
6
|
|
|
7
|
+
- `BaseTable`
|
|
8
|
+
- `BaseCard`
|
|
9
|
+
- `BaseEChart`
|
|
7
10
|
- `BaseExportButton`
|
|
11
|
+
- `OutlinedInput`
|
|
12
|
+
- `OutlinedSelect`
|
|
13
|
+
- `OutlinedDatePicker`
|
|
14
|
+
- `OutlinedDateTimePicker`
|
|
15
|
+
- `OutlinedTimePicker`
|
|
16
|
+
- `OutlinedCascader`
|
|
17
|
+
- `OutlinedTreeSelect`
|
|
18
|
+
- `echarts`
|
|
8
19
|
- `exportExcel`
|
|
9
20
|
|
|
10
21
|
## 使用方式
|
|
11
22
|
|
|
12
23
|
```ts
|
|
13
|
-
import {
|
|
24
|
+
import {
|
|
25
|
+
BaseTable,
|
|
26
|
+
BaseCard,
|
|
27
|
+
BaseEChart,
|
|
28
|
+
BaseExportButton,
|
|
29
|
+
OutlinedInput,
|
|
30
|
+
OutlinedSelect,
|
|
31
|
+
OutlinedDatePicker,
|
|
32
|
+
OutlinedDateTimePicker,
|
|
33
|
+
OutlinedTimePicker,
|
|
34
|
+
OutlinedCascader,
|
|
35
|
+
OutlinedTreeSelect,
|
|
36
|
+
echarts,
|
|
37
|
+
exportExcel
|
|
38
|
+
} from '@hbdlzy/ui-core'
|
|
14
39
|
```
|
|
15
40
|
|
|
41
|
+
## 详细文档
|
|
42
|
+
|
|
43
|
+
- `BaseTable`: [src/components/BaseTable/README.md](./src/components/BaseTable/README.md)
|
|
44
|
+
- `BaseCard`: [src/components/BaseCard/README.md](./src/components/BaseCard/README.md)
|
|
45
|
+
- `BaseEChart`: [src/components/BaseEChart/README.md](./src/components/BaseEChart/README.md)
|
|
46
|
+
- `BaseExportButton`: [src/components/BaseExportButton/README.md](./src/components/BaseExportButton/README.md)
|
|
47
|
+
- `OutlinedInput`: [src/components/OutlinedInput/README.md](./src/components/OutlinedInput/README.md)
|
|
48
|
+
- `OutlinedSelect`: [src/components/OutlinedSelect/README.md](./src/components/OutlinedSelect/README.md)
|
|
49
|
+
- `OutlinedDatePicker`: [src/components/OutlinedDatePicker/README.md](./src/components/OutlinedDatePicker/README.md)
|
|
50
|
+
- `OutlinedDateTimePicker`: [src/components/OutlinedDateTimePicker/README.md](./src/components/OutlinedDateTimePicker/README.md)
|
|
51
|
+
- `OutlinedTimePicker`: [src/components/OutlinedTimePicker/README.md](./src/components/OutlinedTimePicker/README.md)
|
|
52
|
+
- `OutlinedCascader`: [src/components/OutlinedCascader/README.md](./src/components/OutlinedCascader/README.md)
|
|
53
|
+
- `OutlinedTreeSelect`: [src/components/OutlinedTreeSelect/README.md](./src/components/OutlinedTreeSelect/README.md)
|
|
54
|
+
- AI 清单: [components.manifest.json](./components.manifest.json)
|
|
55
|
+
|
|
56
|
+
## 当前导出能力
|
|
57
|
+
|
|
58
|
+
- 组件
|
|
59
|
+
- `BaseTable`
|
|
60
|
+
- `BaseCard`
|
|
61
|
+
- `BaseEChart`
|
|
62
|
+
- `BaseExportButton`
|
|
63
|
+
- `OutlinedInput`
|
|
64
|
+
- `OutlinedSelect`
|
|
65
|
+
- `OutlinedDatePicker`
|
|
66
|
+
- `OutlinedDateTimePicker`
|
|
67
|
+
- `OutlinedTimePicker`
|
|
68
|
+
- `OutlinedCascader`
|
|
69
|
+
- `OutlinedTreeSelect`
|
|
70
|
+
- 工具
|
|
71
|
+
- `echarts`
|
|
72
|
+
- `exportExcel`
|
|
73
|
+
|
|
16
74
|
## 设计原则
|
|
17
75
|
|
|
18
76
|
- 只做基础 UI 和交互
|
|
19
77
|
- 不直接依赖接口、路由、store
|
|
20
|
-
- 每个组件必须配套 README 和 AI manifest
|
|
78
|
+
- 每个组件必须配套 README 和 AI manifest
|
package/components.manifest.json
CHANGED
|
@@ -4,47 +4,262 @@
|
|
|
4
4
|
"updatedAt": "2026-04-21",
|
|
5
5
|
"components": [
|
|
6
6
|
{
|
|
7
|
-
"name": "
|
|
7
|
+
"name": "BaseTable",
|
|
8
8
|
"category": "ui-core",
|
|
9
9
|
"entry": "@hbdlzy/ui-core",
|
|
10
|
-
"importName": "
|
|
11
|
-
"docs": "packages/ui-core/src/components/
|
|
12
|
-
"description": "
|
|
10
|
+
"importName": "BaseTable",
|
|
11
|
+
"docs": "packages/ui-core/src/components/BaseTable/README.md",
|
|
12
|
+
"description": "统一封装分页、远程请求、排序参数映射、结果适配和常见列渲染能力的基础表格组件。",
|
|
13
13
|
"props": [
|
|
14
|
+
{ "name": "columns", "type": "BaseTableColumn[]", "required": true },
|
|
15
|
+
{ "name": "data", "type": "Record<string, any>[]", "required": false },
|
|
16
|
+
{ "name": "request", "type": "BaseTableRequestHandler", "required": false },
|
|
17
|
+
{ "name": "requestParams", "type": "Record<string, unknown>", "required": false },
|
|
14
18
|
{
|
|
15
|
-
"name": "
|
|
16
|
-
"type": "string",
|
|
17
|
-
"default": "导出"
|
|
18
|
-
},
|
|
19
|
-
{
|
|
20
|
-
"name": "fileName",
|
|
21
|
-
"type": "string",
|
|
22
|
-
"default": ""
|
|
23
|
-
},
|
|
24
|
-
{
|
|
25
|
-
"name": "excelOptions",
|
|
26
|
-
"type": "ExcelExportOptions",
|
|
19
|
+
"name": "resultAdapter",
|
|
20
|
+
"type": "(result: unknown, params: BaseTableRequestParams) => { rows?: Record<string, any>[]; total?: number }",
|
|
27
21
|
"required": false
|
|
28
22
|
},
|
|
23
|
+
{ "name": "defaultSort", "type": "BaseTableSortState", "required": false },
|
|
24
|
+
{ "name": "sortFieldKey", "type": "string", "default": "sortField" },
|
|
25
|
+
{ "name": "sortOrderKey", "type": "string", "default": "sortOrder" },
|
|
29
26
|
{
|
|
30
|
-
"name": "
|
|
31
|
-
"type": "() =>
|
|
27
|
+
"name": "sortMapper",
|
|
28
|
+
"type": "(payload: BaseTableSortPayload) => Record<string, unknown> | void",
|
|
32
29
|
"required": false
|
|
33
30
|
},
|
|
34
|
-
{
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
31
|
+
{ "name": "hasSelection", "type": "boolean", "default": false },
|
|
32
|
+
{ "name": "hasIndex", "type": "boolean", "default": false },
|
|
33
|
+
{ "name": "showPagination", "type": "boolean", "default": true }
|
|
34
|
+
],
|
|
35
|
+
"emits": ["row-action", "selection-change", "sort-change", "page-change", "size-change", "loaded"]
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
"name": "BaseCard",
|
|
39
|
+
"category": "ui-core",
|
|
40
|
+
"entry": "@hbdlzy/ui-core",
|
|
41
|
+
"importName": "BaseCard",
|
|
42
|
+
"docs": "packages/ui-core/src/components/BaseCard/README.md",
|
|
43
|
+
"description": "统一封装卡片标题区、右侧信息区、导出触发区和常用视觉参数的基础容器组件。",
|
|
44
|
+
"props": [
|
|
45
|
+
{ "name": "title", "type": "string", "default": "" },
|
|
46
|
+
{ "name": "metaText", "type": "string", "default": "" },
|
|
47
|
+
{ "name": "showHeader", "type": "boolean", "default": true },
|
|
48
|
+
{ "name": "showTitleMarker", "type": "boolean", "default": true },
|
|
49
|
+
{ "name": "showExport", "type": "boolean", "default": false },
|
|
50
|
+
{ "name": "exportPayload", "type": "unknown", "required": false },
|
|
51
|
+
{ "name": "padding", "type": "string | number", "default": 20 },
|
|
52
|
+
{ "name": "borderColor", "type": "string", "default": "var(--border-color)" },
|
|
53
|
+
{ "name": "backgroundColor", "type": "string", "default": "var(--border-bg-color)" },
|
|
54
|
+
{ "name": "markerColor", "type": "string", "default": "var(--el-color-primary)" }
|
|
55
|
+
],
|
|
56
|
+
"emits": ["export"]
|
|
57
|
+
},
|
|
58
|
+
{
|
|
59
|
+
"name": "BaseEChart",
|
|
60
|
+
"category": "ui-core",
|
|
61
|
+
"entry": "@hbdlzy/ui-core",
|
|
62
|
+
"importName": "BaseEChart",
|
|
63
|
+
"docs": "packages/ui-core/src/components/BaseEChart/README.md",
|
|
64
|
+
"description": "统一封装 ECharts 初始化、setOption、自动 resize、实例销毁和实例方法暴露。",
|
|
65
|
+
"props": [
|
|
66
|
+
{ "name": "option", "type": "EChartOption", "required": false },
|
|
67
|
+
{ "name": "theme", "type": "string | object", "required": false },
|
|
68
|
+
{ "name": "initOptions", "type": "EChartInitOptions", "required": false },
|
|
69
|
+
{ "name": "setOptionOptions", "type": "boolean | EChartSetOptionOptions", "required": false },
|
|
70
|
+
{ "name": "loading", "type": "boolean", "default": false },
|
|
71
|
+
{ "name": "autoResize", "type": "boolean", "default": true },
|
|
72
|
+
{ "name": "useDefaultColors", "type": "boolean", "default": true }
|
|
73
|
+
],
|
|
74
|
+
"emits": ["ready"]
|
|
75
|
+
},
|
|
76
|
+
{
|
|
77
|
+
"name": "BaseExportButton",
|
|
78
|
+
"category": "ui-core",
|
|
79
|
+
"entry": "@hbdlzy/ui-core",
|
|
80
|
+
"importName": "BaseExportButton",
|
|
81
|
+
"docs": "packages/ui-core/src/components/BaseExportButton/README.md",
|
|
82
|
+
"description": "统一处理前端 Excel 导出和后端 blob 下载的基础导出按钮。",
|
|
83
|
+
"props": [
|
|
84
|
+
{ "name": "label", "type": "string", "default": "导出" },
|
|
85
|
+
{ "name": "fileName", "type": "string", "default": "" },
|
|
86
|
+
{ "name": "excelOptions", "type": "ExcelExportOptions", "required": false },
|
|
87
|
+
{ "name": "requestHandler", "type": "() => Promise<ExportResponseLike>", "required": false },
|
|
88
|
+
{ "name": "beforeExport", "type": "() => boolean | Promise<boolean>", "required": false }
|
|
39
89
|
],
|
|
40
90
|
"emits": ["start", "success", "error"]
|
|
91
|
+
},
|
|
92
|
+
{
|
|
93
|
+
"name": "OutlinedInput",
|
|
94
|
+
"category": "ui-core",
|
|
95
|
+
"entry": "@hbdlzy/ui-core",
|
|
96
|
+
"importName": "OutlinedInput",
|
|
97
|
+
"docs": "packages/ui-core/src/components/OutlinedInput/README.md",
|
|
98
|
+
"description": "统一封装浮动标签、数值校验、属性透传和常用实例方法暴露的表单输入组件。",
|
|
99
|
+
"props": [
|
|
100
|
+
{ "name": "value", "type": "string | number", "required": false },
|
|
101
|
+
{ "name": "placeholder", "type": "string", "default": "" },
|
|
102
|
+
{ "name": "label", "type": "string", "default": "" },
|
|
103
|
+
{ "name": "typeInput", "type": "string", "default": "text" },
|
|
104
|
+
{ "name": "isNumber", "type": "boolean", "default": false },
|
|
105
|
+
{ "name": "regex", "type": "RegExp", "required": false },
|
|
106
|
+
{ "name": "inputHeight", "type": "number", "default": 40 },
|
|
107
|
+
{ "name": "isBorder", "type": "boolean", "default": false },
|
|
108
|
+
{ "name": "suffixText", "type": "string", "default": "" },
|
|
109
|
+
{ "name": "clearable", "type": "boolean", "default": false },
|
|
110
|
+
{ "name": "showWordLimit", "type": "boolean", "default": true }
|
|
111
|
+
],
|
|
112
|
+
"emits": ["input", "update:value", "warning", "focus", "blur", "change", "clear"]
|
|
113
|
+
},
|
|
114
|
+
{
|
|
115
|
+
"name": "OutlinedSelect",
|
|
116
|
+
"category": "ui-core",
|
|
117
|
+
"entry": "@hbdlzy/ui-core",
|
|
118
|
+
"importName": "OutlinedSelect",
|
|
119
|
+
"docs": "packages/ui-core/src/components/OutlinedSelect/README.md",
|
|
120
|
+
"description": "统一封装浮动标签、选项映射、弹层焦点控制和实例方法暴露的表单下拉组件。",
|
|
121
|
+
"props": [
|
|
122
|
+
{ "name": "value", "type": "string | number | boolean | object | unknown[]", "required": false },
|
|
123
|
+
{ "name": "options", "type": "OutlinedSelectOption[]", "required": false },
|
|
124
|
+
{ "name": "placeholder", "type": "string", "default": "" },
|
|
125
|
+
{ "name": "label", "type": "string", "default": "" },
|
|
126
|
+
{ "name": "multiple", "type": "boolean", "default": false },
|
|
127
|
+
{ "name": "filterable", "type": "boolean", "default": true },
|
|
128
|
+
{ "name": "clearable", "type": "boolean", "default": true },
|
|
129
|
+
{ "name": "collapseTags", "type": "boolean", "default": false },
|
|
130
|
+
{ "name": "keyValue", "type": "string", "default": "value" },
|
|
131
|
+
{ "name": "labelValue", "type": "string", "default": "label" },
|
|
132
|
+
{ "name": "inputHeight", "type": "number", "default": 40 },
|
|
133
|
+
{ "name": "isBorder", "type": "boolean", "default": false }
|
|
134
|
+
],
|
|
135
|
+
"emits": ["input", "update:value", "change", "focus", "blur", "visible-change", "clear"]
|
|
136
|
+
},
|
|
137
|
+
{
|
|
138
|
+
"name": "OutlinedDatePicker",
|
|
139
|
+
"category": "ui-core",
|
|
140
|
+
"entry": "@hbdlzy/ui-core",
|
|
141
|
+
"importName": "OutlinedDatePicker",
|
|
142
|
+
"docs": "packages/ui-core/src/components/OutlinedDatePicker/README.md",
|
|
143
|
+
"description": "统一封装浮动标签、日期禁用规则、格式映射和实例方法暴露的表单日期组件。",
|
|
144
|
+
"props": [
|
|
145
|
+
{ "name": "value", "type": "string | number | Date | Array<string | number | Date>", "required": false },
|
|
146
|
+
{ "name": "placeholder", "type": "string", "default": "" },
|
|
147
|
+
{ "name": "label", "type": "string", "default": "" },
|
|
148
|
+
{ "name": "typeDate", "type": "string", "default": "date" },
|
|
149
|
+
{ "name": "format", "type": "string", "default": "YYYY-MM-DD" },
|
|
150
|
+
{ "name": "valueFormat", "type": "string", "required": false },
|
|
151
|
+
{ "name": "timeValue", "type": "boolean", "default": false },
|
|
152
|
+
{ "name": "disabledDate", "type": "string | number | Date | ((date: Date) => boolean)", "required": false },
|
|
153
|
+
{ "name": "inputHeight", "type": "number", "default": 40 },
|
|
154
|
+
{ "name": "isBorder", "type": "boolean", "default": false }
|
|
155
|
+
],
|
|
156
|
+
"emits": ["input", "update:value", "change", "focus", "blur", "visible-change"]
|
|
157
|
+
},
|
|
158
|
+
{
|
|
159
|
+
"name": "OutlinedDateTimePicker",
|
|
160
|
+
"category": "ui-core",
|
|
161
|
+
"entry": "@hbdlzy/ui-core",
|
|
162
|
+
"importName": "OutlinedDateTimePicker",
|
|
163
|
+
"docs": "packages/ui-core/src/components/OutlinedDateTimePicker/README.md",
|
|
164
|
+
"description": "统一封装日期时间组合输入、浮动标签、禁用日期规则和日期时间面板实例方法暴露。",
|
|
165
|
+
"props": [
|
|
166
|
+
{ "name": "value", "type": "string", "required": false },
|
|
167
|
+
{ "name": "placeholder", "type": "string", "default": "" },
|
|
168
|
+
{ "name": "label", "type": "string", "default": "" },
|
|
169
|
+
{ "name": "inputHeight", "type": "number", "default": 40 },
|
|
170
|
+
{ "name": "isBorder", "type": "boolean", "default": false },
|
|
171
|
+
{ "name": "disabledDate", "type": "string | number | Date | ((date: Date) => boolean)", "required": false },
|
|
172
|
+
{ "name": "separatorText", "type": "string", "default": "-" },
|
|
173
|
+
{ "name": "timePlaceholder", "type": "string", "default": "时间" },
|
|
174
|
+
{ "name": "clearable", "type": "boolean", "default": false }
|
|
175
|
+
],
|
|
176
|
+
"emits": ["input", "update:value", "change", "focus", "blur", "visible-change"]
|
|
177
|
+
},
|
|
178
|
+
{
|
|
179
|
+
"name": "OutlinedTimePicker",
|
|
180
|
+
"category": "ui-core",
|
|
181
|
+
"entry": "@hbdlzy/ui-core",
|
|
182
|
+
"importName": "OutlinedTimePicker",
|
|
183
|
+
"docs": "packages/ui-core/src/components/OutlinedTimePicker/README.md",
|
|
184
|
+
"description": "统一封装时间选择控件的单值模式、范围模式、浮动标签和实例方法暴露。",
|
|
185
|
+
"props": [
|
|
186
|
+
{ "name": "value", "type": "string | number | Date | Array<string | number | Date> | null", "required": false },
|
|
187
|
+
{ "name": "placeholder", "type": "string", "default": "" },
|
|
188
|
+
{ "name": "label", "type": "string", "default": "" },
|
|
189
|
+
{ "name": "disabled", "type": "boolean", "default": false },
|
|
190
|
+
{ "name": "clearable", "type": "boolean", "default": true },
|
|
191
|
+
{ "name": "isRange", "type": "boolean", "default": false },
|
|
192
|
+
{ "name": "startPlaceholder", "type": "string", "default": "开始时间" },
|
|
193
|
+
{ "name": "endPlaceholder", "type": "string", "default": "结束时间" },
|
|
194
|
+
{ "name": "rangeSeparator", "type": "string", "default": "-" },
|
|
195
|
+
{ "name": "format", "type": "string", "default": "HH:mm" },
|
|
196
|
+
{ "name": "valueFormat", "type": "string", "required": false },
|
|
197
|
+
{ "name": "arrowControl", "type": "boolean", "default": false },
|
|
198
|
+
{ "name": "inputHeight", "type": "number", "default": 40 },
|
|
199
|
+
{ "name": "isBorder", "type": "boolean", "default": false }
|
|
200
|
+
],
|
|
201
|
+
"emits": ["input", "update:value", "change", "focus", "blur", "visible-change", "clear"]
|
|
202
|
+
},
|
|
203
|
+
{
|
|
204
|
+
"name": "OutlinedCascader",
|
|
205
|
+
"category": "ui-core",
|
|
206
|
+
"entry": "@hbdlzy/ui-core",
|
|
207
|
+
"importName": "OutlinedCascader",
|
|
208
|
+
"docs": "packages/ui-core/src/components/OutlinedCascader/README.md",
|
|
209
|
+
"description": "统一封装级联选择的浮动标签、选项映射、弹层显隐和实例方法暴露。",
|
|
210
|
+
"props": [
|
|
211
|
+
{ "name": "value", "type": "Array<string | number>", "required": false },
|
|
212
|
+
{ "name": "options", "type": "Record<string, unknown>[]", "required": false },
|
|
213
|
+
{ "name": "clearable", "type": "boolean", "default": false },
|
|
214
|
+
{ "name": "propsValue", "type": "Record<string, unknown>", "required": false },
|
|
215
|
+
{ "name": "placeholder", "type": "string", "default": "" },
|
|
216
|
+
{ "name": "label", "type": "string", "default": "" },
|
|
217
|
+
{ "name": "popperClass", "type": "string", "default": "" },
|
|
218
|
+
{ "name": "disabled", "type": "boolean", "default": false },
|
|
219
|
+
{ "name": "inputHeight", "type": "number", "default": 40 },
|
|
220
|
+
{ "name": "isBorder", "type": "boolean", "default": false },
|
|
221
|
+
{ "name": "filterable", "type": "boolean", "default": true },
|
|
222
|
+
{ "name": "levels", "type": "boolean", "default": true }
|
|
223
|
+
],
|
|
224
|
+
"emits": ["input", "update:value", "change", "focus", "blur", "visible-change"]
|
|
225
|
+
},
|
|
226
|
+
{
|
|
227
|
+
"name": "OutlinedTreeSelect",
|
|
228
|
+
"category": "ui-core",
|
|
229
|
+
"entry": "@hbdlzy/ui-core",
|
|
230
|
+
"importName": "OutlinedTreeSelect",
|
|
231
|
+
"docs": "packages/ui-core/src/components/OutlinedTreeSelect/README.md",
|
|
232
|
+
"description": "统一封装树形下拉选择的字段映射、浮动标签、弹层显隐和实例方法暴露。",
|
|
233
|
+
"props": [
|
|
234
|
+
{ "name": "value", "type": "string | number | boolean | object | Array<string | number | boolean | object>", "required": false },
|
|
235
|
+
{ "name": "data", "type": "OutlinedTreeSelectNode[]", "required": false },
|
|
236
|
+
{ "name": "propsValue", "type": "Record<string, unknown>", "required": false },
|
|
237
|
+
{ "name": "placeholder", "type": "string", "default": "" },
|
|
238
|
+
{ "name": "label", "type": "string", "default": "" },
|
|
239
|
+
{ "name": "disabled", "type": "boolean", "default": false },
|
|
240
|
+
{ "name": "clearable", "type": "boolean", "default": true },
|
|
241
|
+
{ "name": "filterable", "type": "boolean", "default": true },
|
|
242
|
+
{ "name": "multiple", "type": "boolean", "default": false },
|
|
243
|
+
{ "name": "showCheckbox", "type": "boolean", "default": false },
|
|
244
|
+
{ "name": "checkStrictly", "type": "boolean", "default": false },
|
|
245
|
+
{ "name": "nodeKey", "type": "string", "default": "value" },
|
|
246
|
+
{ "name": "keyValue", "type": "string", "default": "value" },
|
|
247
|
+
{ "name": "labelValue", "type": "string", "default": "label" },
|
|
248
|
+
{ "name": "childrenValue", "type": "string", "default": "children" }
|
|
249
|
+
],
|
|
250
|
+
"emits": ["input", "update:value", "change", "focus", "blur", "visible-change", "clear"]
|
|
41
251
|
}
|
|
42
252
|
],
|
|
43
253
|
"utilities": [
|
|
254
|
+
{
|
|
255
|
+
"name": "echarts",
|
|
256
|
+
"entry": "@hbdlzy/ui-core",
|
|
257
|
+
"description": "统一导出的 echarts 对象,可直接调用 graphic、format 等内置能力。"
|
|
258
|
+
},
|
|
44
259
|
{
|
|
45
260
|
"name": "exportExcel",
|
|
46
261
|
"entry": "@hbdlzy/ui-core",
|
|
47
|
-
"description": "
|
|
262
|
+
"description": "支持多级表头和自动列宽的纯前端 Excel 导出工具。"
|
|
48
263
|
}
|
|
49
264
|
]
|
|
50
265
|
}
|
package/dist/index.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});var c=require("vue"),g=require("element-plus"),w=require("xlsx"),O=require("file-saver");function D(e){if(e&&e.__esModule)return e;var r=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});return e&&Object.keys(e).forEach(function(t){if(t!=="default"){var n=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(r,t,n.get?n:{enumerable:!0,get:function(){return e[t]}})}}),r.default=e,Object.freeze(r)}var x=D(w);const S="Sheet1",A=16;function h(e){var r;return(r=e.children)!=null&&r.length?e.children.reduce((t,n)=>t+h(n),0):1}function y(e,r=1){return e.reduce((t,n)=>{var o;return(o=n.children)!=null&&o.length?Math.max(t,y(n.children,r+1)):Math.max(t,r)},r)}function b(e){const r=`${e!=null?e:""}`;return Array.from(r).reduce((t,n)=>t+(n.charCodeAt(0)>255?2:1),0)}function _(e,r){return r?r.split(".").reduce((t,n)=>{if(t!=null)return t[n]},e):""}function N(e,r,t){return typeof t.formatter=="function"?t.formatter(e,r,t):_(e,t.key)}function q(e){const r=y(e),t=e.reduce((u,s)=>u+h(s),0),n=Array.from({length:r},()=>Array.from({length:t}).fill("")),o=[],l=[];let f=0;const d=(u,s)=>{var p;const a=f,i=h(u);if(n[s][a]=u.label,(p=u.children)!=null&&p.length){u.children.forEach(m=>d(m,s+1)),i>1&&o.push({s:{r:s,c:a},e:{r:s,c:a+i-1}});return}l.push(u),f+=1,s<r-1&&o.push({s:{r:s,c:a},e:{r:r-1,c:a}})};return e.forEach(u=>d(u,0)),{headerRows:n,leafColumns:l,merges:o}}function H(e,r,t,n){return e.map((o,l)=>{var s;const f=b(o.label),d=r.reduce((a,i)=>Math.max(a,b(i[l])),0);return{wch:(s=o.width)!=null?s:n?Math.max(t,f,d):t}})}function k(e){return e.endsWith(".xlsx")?e:`${e}.xlsx`}function F(e){const{fileName:r,sheetName:t=S,data:n,autoWidth:o=!0,defaultColumnWidth:l=A}=e,f=e.columns.filter(m=>!!m);if(!f.length)throw new Error("Excel export columns can not be empty.");const{headerRows:d,leafColumns:u,merges:s}=q(f),a=n.map((m,B)=>u.map(M=>N(m,B,M))),i=x.utils.aoa_to_sheet([...d,...a]);i["!merges"]=s,i["!cols"]=H(u,a,l,o);const p=x.utils.book_new();x.utils.book_append_sheet(p,i,t),x.writeFile(p,k(r))}const L="export-file";function z(e,r){var o;if(!e)return"";const t=r.toLowerCase(),n=Object.keys(e).find(l=>l.toLowerCase()===t);return n&&(o=e[n])!=null?o:""}function C(e){if(!e)return"";const r=e.match(/filename\*=UTF-8''([^;]+)/i);if(r!=null&&r[1])return decodeURIComponent(r[1].replace(/["']/g,""));const t=e.match(/filename="?([^";]+)"?/i);return t!=null&&t[1]?decodeURIComponent(t[1].replace(/["']/g,"")):""}function E(e){return`${e!=null?e:""}`.trim()||L}function T(e){return e instanceof Blob?e:new Blob([e])}function v(e,r=""){const t=z(e.headers,"content-disposition"),n=E(C(t)||r);return O.saveAs(T(e.data),n),n}const j=c.defineComponent({__name:"BaseExportButton",props:{label:{type:String,default:"\u5BFC\u51FA"},type:{type:String,default:"primary"},size:{type:String,default:"default"},plain:{type:Boolean,default:!1},link:{type:Boolean,default:!1},text:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},fileName:{type:String,default:""},excelOptions:Object,requestHandler:Function,beforeExport:Function,successMessage:{type:String,default:"\u5BFC\u51FA\u6210\u529F"},errorMessage:{type:String,default:"\u5BFC\u51FA\u5931\u8D25\uFF0C\u8BF7\u7A0D\u540E\u91CD\u8BD5"},autoMessage:{type:Boolean,default:!0}},emits:["start","success","error"],setup(e,{emit:r}){const t=e,n=r,o=c.ref(!1),l=c.computed(()=>t.excelOptions&&t.requestHandler?"invalid":t.excelOptions?"excel":t.requestHandler?"request":"none"),f=c.computed(()=>t.disabled||o.value||l.value==="none");async function d(){return t.beforeExport?await t.beforeExport()!==!1:!0}async function u(){if(o.value||t.disabled)return;if(l.value==="none"){g.ElMessage.warning("\u8BF7\u5148\u914D\u7F6E\u5BFC\u51FA\u903B\u8F91");return}if(l.value==="invalid"){const a=new Error("BaseExportButton \u4E0D\u80FD\u540C\u65F6\u63A5\u6536 excelOptions \u548C requestHandler");n("error",a),g.ElMessage.error(a.message);return}if(!!await d()){o.value=!0,n("start");try{if(l.value==="excel"&&t.excelOptions){F(t.excelOptions),t.autoMessage&&g.ElMessage.success(t.successMessage),n("success",{mode:"excel",fileName:E(t.excelOptions.fileName)});return}if(l.value==="request"&&t.requestHandler){const a=await t.requestHandler(),i=v(a,t.fileName);t.autoMessage&&g.ElMessage.success(t.successMessage),n("success",{mode:"request",fileName:i})}}catch(a){console.error(a),t.autoMessage&&g.ElMessage.error(t.errorMessage),n("error",a)}finally{o.value=!1}}}return(s,a)=>{const i=c.resolveComponent("el-button");return c.openBlock(),c.createBlock(i,{class:"base-export-button",type:e.type,size:e.size,plain:e.plain,link:e.link,text:e.text,disabled:f.value,loading:o.value,onClick:u},{default:c.withCtx(()=>[c.renderSlot(s.$slots,"default",{},()=>[c.createTextVNode(c.toDisplayString(e.label),1)])]),_:3},8,["type","size","plain","link","text","disabled","loading"])}}});exports.BaseExportButton=j;exports.downloadExportResponse=v;exports.exportExcel=F;exports.extractFileNameFromDisposition=C;exports.normalizeExportFileName=E;
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});var Ae=require("echarts"),e=require("vue"),fe=require("element-plus"),Fe=require("exceljs"),Se=require("file-saver");function Ne(n){return n&&typeof n=="object"&&"default"in n?n:{default:n}}function He(n){if(n&&n.__esModule)return n;var _=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});return n&&Object.keys(n).forEach(function(s){if(s!=="default"){var a=Object.getOwnPropertyDescriptor(n,s);Object.defineProperty(_,s,a.get?a:{enumerable:!0,get:function(){return n[s]}})}}),_.default=n,Object.freeze(_)}var he=He(Ae),Re=Ne(Fe);var oe=(n,_)=>{const s=n.__vccOpts||n;for(const[a,u]of _)s[a]=u;return s};const Le={key:0,class:"base-card__header"},Ie={class:"base-card__header-left"},qe={key:0,class:"base-card__title-wrap"},We={key:0,class:"base-card__title-marker"},Ue={key:2,class:"base-card__title"},Ye={key:0,class:"base-card__header-right"},je={key:0,class:"base-card__meta"},Ke=["disabled"],Ge={class:"base-card__body"},Je={key:0,class:"base-card__tip"},Ze={class:"base-card__content"},Xe=e.defineComponent({name:"BaseCard",__name:"BaseCard",props:{title:{default:""},metaText:{default:""},showHeader:{type:Boolean,default:!0},showRight:{type:Boolean,default:!0},showTitleMarker:{type:Boolean,default:!0},showExport:{type:Boolean,default:!1},exportText:{default:"\u5BFC\u51FA"},exportDisabled:{type:Boolean,default:!1},exportPayload:{},padding:{default:20},radius:{default:8},borderColor:{default:"var(--border-color)"},backgroundColor:{default:"var(--border-bg-color)"},shadowColor:{default:"var(--border-projection)"},headerGap:{default:16},headerMarginBottom:{default:20},leftGap:{default:16},rightGap:{default:16},titleColor:{default:"var(--el-text-color-primary)"},titleSize:{default:18},titleWeight:{default:500},markerColor:{default:"var(--el-color-primary)"},markerWidth:{default:4},markerHeight:{default:24},markerRadius:{default:"0 4px 4px 0"},markerGap:{default:10},metaColor:{default:"#808080"},metaSize:{default:16},exportColor:{default:"var(--el-color-primary)"}},emits:["export"],setup(n,{emit:_}){const s=n,a=_,u=e.useSlots(),b=e.computed(()=>Boolean(s.title)||Boolean(u["title-label"])),S=e.computed(()=>Boolean(u.title)),m=e.computed(()=>Boolean(u["header-right"])),f=e.computed(()=>s.showRight&&(m.value||Boolean(s.metaText)||s.showExport)),g=e.computed(()=>s.showHeader&&(b.value||S.value||f.value)),C=e.computed(()=>({title:s.title||void 0,metaText:s.metaText||void 0})),h=e.computed(()=>({"--base-card-padding":T(s.padding),"--base-card-radius":T(s.radius),"--base-card-border-color":s.borderColor,"--base-card-background-color":s.backgroundColor,"--base-card-shadow-color":s.shadowColor,"--base-card-header-gap":T(s.headerGap),"--base-card-header-margin-bottom":T(s.headerMarginBottom),"--base-card-left-gap":T(s.leftGap),"--base-card-right-gap":T(s.rightGap),"--base-card-title-color":s.titleColor,"--base-card-title-size":T(s.titleSize),"--base-card-title-weight":H(s.titleWeight),"--base-card-marker-color":s.markerColor,"--base-card-marker-width":T(s.markerWidth),"--base-card-marker-height":T(s.markerHeight),"--base-card-marker-radius":T(s.markerRadius),"--base-card-marker-gap":T(s.markerGap),"--base-card-meta-color":s.metaColor,"--base-card-meta-size":T(s.metaSize),"--base-card-export-color":s.exportColor})),N=()=>{a("export",s.exportPayload===void 0?C.value:s.exportPayload)};function T(z,P="px"){if(!(z==null||z===""))return typeof z=="number"?`${z}${P}`:z}function H(z){if(!(z==null||z===""))return String(z)}return(z,P)=>(e.openBlock(),e.createElementBlock("div",{class:"base-card",style:e.normalizeStyle(h.value)},[g.value?(e.openBlock(),e.createElementBlock("div",Le,[e.createElementVNode("div",Ie,[b.value?(e.openBlock(),e.createElementBlock("div",qe,[n.showTitleMarker?(e.openBlock(),e.createElementBlock("span",We)):e.createCommentVNode("",!0),z.$slots["title-label"]?e.renderSlot(z.$slots,"title-label",{key:1},void 0,!0):(e.openBlock(),e.createElementBlock("h4",Ue,e.toDisplayString(n.title),1))])):e.createCommentVNode("",!0),e.renderSlot(z.$slots,"title",{},void 0,!0)]),f.value?(e.openBlock(),e.createElementBlock("div",Ye,[e.renderSlot(z.$slots,"header-right",{},void 0,!0),n.metaText?(e.openBlock(),e.createElementBlock("span",je,e.toDisplayString(n.metaText),1)):e.createCommentVNode("",!0),n.showExport?(e.openBlock(),e.createElementBlock("button",{key:1,class:"base-card__export",type:"button",disabled:n.exportDisabled,onClick:N},e.toDisplayString(n.exportText),9,Ke)):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),e.createElementVNode("div",Ge,[z.$slots.tip?(e.openBlock(),e.createElementBlock("div",Je,[e.renderSlot(z.$slots,"tip",{},void 0,!0)])):e.createCommentVNode("",!0),e.createElementVNode("div",Ze,[e.renderSlot(z.$slots,"default",{},void 0,!0)])])],4))}});var Qe=oe(Xe,[["__scopeId","data-v-6bfddf1c"]]);const et={class:"base-table"},tt={key:0,class:"base-table__toolbar"},at={class:"base-table__toolbar-left"},lt={key:0,class:"base-table__toolbar-right"},nt={key:0,class:"base-table__actions"},ot={key:2,class:"base-table__tags"},rt={key:1},st=["innerHTML"],it=["onClick"],ut={key:6,class:"base-table__text"},ct=e.defineComponent({name:"BaseTable",__name:"BaseTable",props:{columns:{},data:{default:()=>[]},request:{},requestParams:{default:()=>({})},resultAdapter:{},autoLoad:{type:Boolean,default:!0},reloadOnParamsChange:{type:Boolean,default:!0},reloadOnSortChange:{type:Boolean,default:!0},rowKey:{default:"id"},height:{default:"100%"},border:{type:Boolean,default:!1},stripe:{type:Boolean,default:!1},showToolbar:{type:Boolean,default:!0},showPagination:{type:Boolean,default:!0},hasSelection:{type:Boolean,default:!1},hasIndex:{type:Boolean,default:!1},indexLabel:{default:"\u5E8F\u53F7"},indexWidth:{default:60},selectionWidth:{default:50},rowSelectable:{},pagination:{default:()=>({})},currentPageKey:{default:"pageNum"},pageSizeKey:{default:"pageSize"},defaultSort:{default:()=>({prop:void 0,order:null})},sortFieldKey:{default:"sortField"},sortOrderKey:{default:"sortOrder"},sortOrderMap:{default:()=>({ascending:"asc",descending:"desc"})},sortMapper:{},emptyText:{default:"\u6682\u65E0\u6570\u636E"},loadingText:{default:"\u52A0\u8F7D\u4E2D..."}},emits:["selection-change","sort-change","row-action","cell-click","cell-input","page-change","size-change","update:pagination","loaded","request-error"],setup(n,{expose:_,emit:s}){var ke,Ce;const a=n,u=s,b=e.useSlots(),S=e.ref(),m=e.ref(!1),f=e.ref(p(a.data)),g=e.ref([]),C=e.reactive({prop:(ke=a.defaultSort)==null?void 0:ke.prop,order:((Ce=a.defaultSort)==null?void 0:Ce.order)||null}),h=e.reactive({currentPage:1,pageSize:20,total:0,pageSizes:[10,20,50,100]});z(a.pagination);const N=e.computed(()=>de(a.height)),T=e.computed(()=>a.showToolbar&&(Boolean(b.toolbar)||a.showPagination)),H=e.computed(()=>{if(!(!C.prop||!C.order))return{prop:C.prop,order:C.order}});e.watch(()=>a.data,o=>{a.request||I(o||[])},{deep:!0}),e.watch(()=>a.pagination,o=>{z(o)},{deep:!0}),e.watch(()=>a.requestParams,()=>{a.request&&a.reloadOnParamsChange&&a.autoLoad&&(h.currentPage=1,F())},{deep:!0}),e.watch(()=>a.defaultSort,o=>{C.prop=o==null?void 0:o.prop,C.order=(o==null?void 0:o.order)||null},{deep:!0}),e.onMounted(()=>{var o;if(a.request&&a.autoLoad){F();return}a.request||(f.value=p(a.data),(o=a.pagination)!=null&&o.total||(h.total=f.value.length,P()))});function z(o){h.currentPage=Number((o==null?void 0:o.currentPage)||h.currentPage||1),h.pageSize=Number((o==null?void 0:o.pageSize)||h.pageSize||20),h.total=Number((o==null?void 0:o.total)||(o==null?void 0:o.total)===0?o.total:h.total||f.value.length),h.pageSizes=Array.isArray(o==null?void 0:o.pageSizes)&&o.pageSizes.length?[...o.pageSizes]:[...h.pageSizes.length?h.pageSizes:[10,20,50,100]]}function P(){u("update:pagination",{currentPage:h.currentPage,pageSize:h.pageSize,total:h.total,pageSizes:[...h.pageSizes]})}async function F(o){if(Array.isArray(o)){I(o);return}if(!a.request){I(a.data||[]);return}m.value=!0;const v=t();try{const $=await a.request(v),G=r($,v);f.value=G.rows,h.total=G.total,P(),u("loaded",{rows:[...f.value],total:h.total,params:v})}catch($){f.value=[],h.total=0,P(),u("request-error",$)}finally{m.value=!1}}async function R(){await F()}async function L(){h.currentPage=1,P(),await F()}function I(o){var v,$;f.value=p(o),a.request||(h.total=Number(($=(v=a.pagination)==null?void 0:v.total)!=null?$:f.value.length),P())}function A(){var o;(o=S.value)==null||o.clearSelection(),g.value=[]}function q(o,v){var $;($=S.value)==null||$.toggleRowSelection(o,v)}function W(){return[...g.value]}function Y(){return[...f.value]}function U(o){g.value=o,u("selection-change",o)}function M(o){const v=a.columns.find(G=>String(G.prop||"")===String(o.prop||""));C.prop=o.prop,C.order=o.order;const $=be(v,o.prop,o.order);u("sort-change",$),a.request&&a.reloadOnSortChange&&(h.currentPage=1,P(),F())}function D(o){h.currentPage=o,P(),u("page-change",o),a.request&&F()}function B(o){h.pageSize=o,h.currentPage=1,P(),u("size-change",o),a.request&&F()}function O(o,v,$){u("row-action",{row:o,action:v,column:$})}function k(o,v){var $;($=v.clickHandler)==null||$.call(v,o,v),u("cell-click",{row:o,column:v,value:y(o,v)})}function l(o,v,$){var G;!$.prop||(v[$.prop]=o,(G=$.inputHandler)==null||G.call($,o,v,$),u("cell-input",{row:v,column:$,value:o}))}function t(){const o={...a.requestParams,currentPage:h.currentPage,pageSize:h.pageSize,[a.currentPageKey]:h.currentPage,[a.pageSizeKey]:h.pageSize},v=a.columns.find(ne=>String(ne.prop||"")===String(C.prop||"")),$=be(v,C.prop,C.order),G=Ee($);return{...o,...G}}function r(o,v){var ue,ee;if(a.resultAdapter){const Q=a.resultAdapter(o,v),ce=p(Q==null?void 0:Q.rows);return{rows:ce,total:Number((ue=Q==null?void 0:Q.total)!=null?ue:ce.length)}}if(Array.isArray(o))return{rows:p(o),total:o.length};const $=o||{},G=$.data&&typeof $.data=="object"?$.data:$,ne=G.records||G.list||G.items||[],ie=p(ne);return{rows:ie,total:Number((ee=G.total)!=null?ee:ie.length)}}function p(o){return Array.isArray(o)?[...o]:[]}function x(o){return String(o.prop||o.label)}function i(o){return o.prop?String(o.prop):void 0}function y(o,v){if(!!v.prop)return o[v.prop]}function d(o,v){if(v.formatter){const $=v.formatter(o,v);return me($,pe(v))}return me(y(o,v),pe(v))}function V(o,v){if(v.html)return v.html(o,v);const $=y(o,v);return $==null?"":String($)}function c(o){var v;return o.kind==="actions"||Boolean((v=o.actions)==null?void 0:v.length)}function w(o){return o.kind==="link"||Boolean(o.clickable)}function j(o,v){return(o.actions||[]).filter($=>typeof $.visible=="function"?$.visible(v):$.visible!==!1)}function te(o,v){return typeof o.disabled=="function"?o.disabled(v):Boolean(o.disabled)}function K(o){return o.slotName||(o.prop?`cell-${String(o.prop)}`:"")}function ae(o){return o.headerSlotName||(o.prop?`header-${String(o.prop)}`:"")}function X(o){const v=K(o);return Boolean(v&&b[v])}function le(o){const v=ae(o);return Boolean(v&&b[v])}function re(o,v){const $=y(o,v),G=Array.isArray($)?$:[$],ne=v.optionValueKey||"value",ie=v.optionLabelKey||"label",ue=v.optionTagTypeKey||"tagType";return G.filter(ee=>ee!=null&&ee!=="").map(ee=>{const Q=(v.options||[]).find(ce=>ce[ne]===ee);return Q?{label:String(Q[ie]),value:Q[ne],tagType:Q[ue],color:Q.color}:{label:String(ee),value:ee,tagType:"info"}})}function se(o){return{width:de(o.imageWidth||50),height:de(o.imageHeight||50)}}function ye(o){return typeof o=="string"?o:o&&typeof o=="object"&&"url"in o?String(o.url||""):""}function Ve(o,v){const $=ye(y(o,v));return $?[$]:[]}function pe(o){return o.emptyText||"--"}function ze(o){return a.request&&o.sortable===!0?"custom":o.sortable||!1}function be(o,v,$=null){return{column:o,prop:v,order:$,field:Me(o,v),direction:Oe($)}}function Ee(o){var $;if(!o.field||!o.direction)return{};const v=($=a.sortMapper)==null?void 0:$.call(a,o);return v&&typeof v=="object"?v:{[a.sortFieldKey]:o.field,[a.sortOrderKey]:o.direction}}function Me(o,v){return(o==null?void 0:o.sortField)||v}function Oe(o){return o==="ascending"?a.sortOrderMap.ascending:o==="descending"?a.sortOrderMap.descending:null}function me(o,v="--"){return o===0?"0":o==null||o===""?v:String(o)}function de(o){if(!(o==null||o===""))return typeof o=="number"?`${o}px`:o}return _({load:F,refresh:R,setData:I,resetPage:L,clearSelection:A,toggleRowSelection:q,getSelectionRows:W,getRows:Y}),(o,v)=>{const $=e.resolveComponent("el-pagination"),G=e.resolveComponent("el-empty"),ne=e.resolveComponent("el-table-column"),ie=e.resolveComponent("el-button"),ue=e.resolveComponent("el-image"),ee=e.resolveComponent("el-tag"),Q=e.resolveComponent("el-input"),ce=e.resolveComponent("el-table"),Pe=e.resolveDirective("loading");return e.openBlock(),e.createElementBlock("div",et,[T.value?(e.openBlock(),e.createElementBlock("div",tt,[e.createElementVNode("div",at,[e.renderSlot(o.$slots,"toolbar",{},void 0,!0)]),n.showPagination?(e.openBlock(),e.createElementBlock("div",lt,[e.createVNode($,{small:"",background:"",layout:"total, prev, pager, next, sizes, jumper",total:h.total,"current-page":h.currentPage,"page-size":h.pageSize,"page-sizes":h.pageSizes,"pager-count":5,"popper-append-to-body":!1,onSizeChange:B,onCurrentChange:D},null,8,["total","current-page","page-size","page-sizes"])])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),e.withDirectives((e.openBlock(),e.createBlock(ce,{ref_key:"tableRef",ref:S,data:f.value,"row-key":n.rowKey,height:N.value,border:n.border,stripe:n.stripe,"default-sort":H.value,"highlight-current-row":"",onSelectionChange:U,onSortChange:M},{empty:e.withCtx(()=>[e.createVNode(G,{description:n.emptyText},null,8,["description"])]),default:e.withCtx(()=>[n.hasSelection?(e.openBlock(),e.createBlock(ne,{key:0,type:"selection",width:n.selectionWidth,align:"center",selectable:n.rowSelectable},null,8,["width","selectable"])):e.createCommentVNode("",!0),n.hasIndex?(e.openBlock(),e.createBlock(ne,{key:1,type:"index",label:n.indexLabel,width:n.indexWidth,fixed:"left",align:"center"},null,8,["label","width"])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.columns,E=>(e.openBlock(),e.createBlock(ne,{key:x(E),prop:i(E),label:E.label,type:E.type||void 0,width:de(E.width),"min-width":de(E.minWidth),fixed:E.fixed,align:E.align||"left","header-align":E.headerAlign||E.align||"left",sortable:ze(E),"show-overflow-tooltip":E.showOverflowTooltip!==!1,"class-name":E.className,"label-class-name":E.headerClassName},e.createSlots({default:e.withCtx(J=>[X(E)?e.renderSlot(o.$slots,K(E),{key:0,row:J.row,columnConfig:E,columnIndex:J.$index,value:y(J.row,E)},void 0,!0):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[c(E)?(e.openBlock(),e.createElementBlock("div",nt,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(j(E,J.row),Z=>(e.openBlock(),e.createBlock(ie,{key:`${Z.type}-${Z.label}`,link:"",type:Z.buttonType||(Z.type==="delete"?"danger":"primary"),disabled:te(Z,J.row),onClick:Ut=>O(J.row,Z,E)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(Z.label),1)]),_:2},1032,["type","disabled","onClick"]))),128))])):E.kind==="image"?(e.openBlock(),e.createBlock(ue,{key:1,class:"base-table__image",style:e.normalizeStyle(se(E)),src:ye(y(J.row,E)),"preview-src-list":Ve(J.row,E),fit:E.imageFit||"cover"},null,8,["style","src","preview-src-list","fit"])):E.kind==="tag"?(e.openBlock(),e.createElementBlock("div",ot,[re(J.row,E).length?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(re(J.row,E),Z=>(e.openBlock(),e.createBlock(ee,{key:String(Z.value),type:Z.tagType||"info",style:e.normalizeStyle(Z.color?{color:Z.color,borderColor:`${Z.color}33`,backgroundColor:`${Z.color}1a`}:void 0),size:"small"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(Z.label),1)]),_:2},1032,["type","style"]))),128)):(e.openBlock(),e.createElementBlock("span",rt,e.toDisplayString(pe(E)),1))])):E.kind==="html"?(e.openBlock(),e.createElementBlock("div",{key:3,innerHTML:V(J.row,E)},null,8,st)):E.kind==="input"?(e.openBlock(),e.createBlock(Q,{key:4,"model-value":me(y(J.row,E),""),type:E.inputType||"text","onUpdate:modelValue":Z=>l(Z,J.row,E)},null,8,["model-value","type","onUpdate:modelValue"])):w(E)?(e.openBlock(),e.createElementBlock("button",{key:5,class:"base-table__link",type:"button",onClick:Z=>k(J.row,E)},e.toDisplayString(d(J.row,E)),9,it)):(e.openBlock(),e.createElementBlock("div",ut,e.toDisplayString(d(J.row,E)),1))],64))]),_:2},[le(E)?{name:"header",fn:e.withCtx(J=>[e.renderSlot(o.$slots,ae(E),e.mergeProps({ref_for:!0},J,{columnConfig:E}),void 0,!0)]),key:"0"}:void 0]),1032,["prop","label","type","width","min-width","fixed","align","header-align","sortable","show-overflow-tooltip","class-name","label-class-name"]))),128))]),_:3},8,["data","row-key","height","border","stripe","default-sort"])),[[Pe,m.value]])])}}});var dt=oe(ct,[["__scopeId","data-v-429ba785"]]);const ft=e.defineComponent({__name:"BaseEChart",props:{option:{default:()=>({})},theme:{},initOptions:{default:()=>({renderer:"canvas"})},setOptionOptions:{type:Boolean,default:()=>({notMerge:!1,lazyUpdate:!0})},loading:{type:Boolean,default:!1},loadingOptions:{},autoResize:{type:Boolean,default:!0},useDefaultColors:{type:Boolean,default:!0},colorStorageKey:{default:"echartsColor"},defaultColors:{default:()=>[]},group:{default:void 0}},emits:["ready"],setup(n,{expose:_,emit:s}){const a=n,u=s,b=e.ref(null),S=e.ref(null),m=e.shallowRef(null);let f=null,g=null,C;const h=()=>{g!==null&&(cancelAnimationFrame(g),g=null)},N=()=>{if(!a.useDefaultColors||typeof window=="undefined")return a.defaultColors;try{const t=window.sessionStorage.getItem(a.colorStorageKey),r=t?JSON.parse(t):[];return r.length>0?r:a.defaultColors}catch{return a.defaultColors}},T=(t={})=>{if(t.color)return t;const r=N();return!r||r.length===0?t:{...t,color:r}},H=()=>{if(!S.value)return null;const t=he.getInstanceByDom(S.value);t==null||t.dispose();const r=he.init(S.value,a.theme,a.initOptions);return a.group&&(r.group=a.group),m.value=r,u("ready",r),r},z=()=>m.value,P=()=>{var t;return(t=m.value)!=null?t:H()},F=(t,r=a.setOptionOptions)=>{const p=P();if(!p)return null;const x=T(t);return p.setOption(x,r),p},R=(t="default",r)=>{const p=P();!p||p.showLoading(t,r)},L=()=>{var t;(t=m.value)==null||t.hideLoading()},I=()=>{if(a.loading){R("default",a.loadingOptions);return}L()},A=t=>{C=t,h(),g=requestAnimationFrame(()=>{var r;(r=m.value)==null||r.resize(C),C=void 0,g=null})},q=()=>{A()},W=()=>{f==null||f.disconnect(),f=null,window.removeEventListener("resize",q)},Y=()=>{W(),!(!a.autoResize||!b.value)&&(f=new ResizeObserver(()=>{A()}),f.observe(b.value),window.addEventListener("resize",q))},U=()=>{var t;(t=m.value)==null||t.clear()},M=()=>{var t;(t=m.value)==null||t.dispose(),m.value=null},D=()=>{M()},B=t=>{var r;(r=m.value)==null||r.dispatchAction(t)},O=(t,r,p)=>{const x=P();x==null||x.on(t,r,p)},k=(t,r)=>{if(!!m.value){if(!t){m.value.off();return}if(r){m.value.off(t,r);return}m.value.off(t)}},l=async()=>{M(),await e.nextTick(),H(),F(a.option),I(),A()};return e.watch(()=>a.option,t=>{F(t)},{deep:!0}),e.watch(()=>a.loading,()=>{I()}),e.watch(()=>a.loadingOptions,()=>{a.loading&&I()},{deep:!0}),e.watch(()=>a.group,t=>{!m.value||(m.value.group=t!=null?t:"")}),e.watch(()=>a.autoResize,async t=>{W(),t&&(await e.nextTick(),Y(),A())}),e.watch(()=>a.theme,()=>{l()},{deep:!0}),e.watch(()=>a.initOptions,()=>{l()},{deep:!0}),e.onMounted(async()=>{await e.nextTick(),H(),F(a.option),I(),Y(),A()}),e.onUnmounted(()=>{W(),h(),M()}),_({getInstance:z,setOption:F,resize:A,dispatchAction:B,showLoading:R,hideLoading:L,clear:U,dispose:D,on:O,off:k}),(t,r)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"containerRef",ref:b,class:"base-echart"},[e.createElementVNode("div",{ref_key:"chartRef",ref:S,class:"base-echart__inner"},null,512)],512))}});var pt=oe(ft,[["__scopeId","data-v-51bc4772"]]);const mt="Sheet1",ht=16,gt="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";function ge(n){var _;return(_=n.children)!=null&&_.length?n.children.reduce((s,a)=>s+ge(a),0):1}function we(n,_=1){return n.reduce((s,a)=>{var u;return(u=a.children)!=null&&u.length?Math.max(s,we(a.children,_+1)):Math.max(s,_)},_)}function Be(n){const _=`${n!=null?n:""}`;return Array.from(_).reduce((s,a)=>s+(a.charCodeAt(0)>255?2:1),0)}function vt(n,_){return _?_.split(".").reduce((s,a)=>{if(s!=null)return s[a]},n):""}function yt(n,_,s){return typeof s.formatter=="function"?s.formatter(n,_,s):vt(n,s.key)}function bt(n){const _=we(n),s=n.reduce((f,g)=>f+ge(g),0),a=Array.from({length:_},()=>Array.from({length:s}).fill("")),u=[],b=[];let S=0;const m=(f,g)=>{var N;const C=S,h=ge(f);if(a[g][C]=f.label,(N=f.children)!=null&&N.length){f.children.forEach(T=>m(T,g+1)),h>1&&u.push({s:{r:g,c:C},e:{r:g,c:C+h-1}});return}b.push(f),S+=1,g<_-1&&u.push({s:{r:g,c:C},e:{r:_-1,c:C}})};return n.forEach(f=>m(f,0)),{headerRows:a,leafColumns:b,merges:u}}function kt(n,_,s,a){return n.map((u,b)=>{var g;const S=Be(u.label),m=_.reduce((C,h)=>Math.max(C,Be(h[b])),0);return(g=u.width)!=null?g:a?Math.max(s,S,m):s})}function Ct(n){return n.endsWith(".xlsx")?n:`${n}.xlsx`}function Bt(n,_){_.forEach((s,a)=>{n.getColumn(a+1).width=s})}function _t(n,_){_.forEach(s=>{n.mergeCells(s.s.r+1,s.s.c+1,s.e.r+1,s.e.c+1)})}async function xe(n){const{fileName:_,sheetName:s=mt,data:a,autoWidth:u=!0,defaultColumnWidth:b=ht}=n,S=n.columns.filter(P=>!!P);if(!S.length)throw new Error("Excel export columns can not be empty.");const{headerRows:m,leafColumns:f,merges:g}=bt(S),C=a.map((P,F)=>f.map(R=>yt(P,F,R))),h=kt(f,C,b,u),N=new Re.default.Workbook,T=N.addWorksheet(s);[...m,...C].forEach(P=>{T.addRow(P)}),_t(T,g),Bt(T,h);const H=await N.xlsx.writeBuffer(),z=new Blob([H],{type:gt});Se.saveAs(z,Ct(_))}const St="export-file";function wt(n,_){var u;if(!n)return"";const s=_.toLowerCase(),a=Object.keys(n).find(b=>b.toLowerCase()===s);return a&&(u=n[a])!=null?u:""}function $e(n){if(!n)return"";const _=n.match(/filename\*=UTF-8''([^;]+)/i);if(_!=null&&_[1])return decodeURIComponent(_[1].replace(/["']/g,""));const s=n.match(/filename="?([^";]+)"?/i);return s!=null&&s[1]?decodeURIComponent(s[1].replace(/["']/g,"")):""}function ve(n){return`${n!=null?n:""}`.trim()||St}function xt(n){return n instanceof Blob?n:new Blob([n])}function De(n,_=""){const s=wt(n.headers,"content-disposition"),a=ve($e(s)||_);return Se.saveAs(xt(n.data),a),a}const $t=e.defineComponent({__name:"BaseExportButton",props:{label:{type:String,default:"\u5BFC\u51FA"},type:{type:String,default:"primary"},size:{type:String,default:"default"},plain:{type:Boolean,default:!1},link:{type:Boolean,default:!1},text:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},fileName:{type:String,default:""},excelOptions:Object,requestHandler:Function,beforeExport:Function,successMessage:{type:String,default:"\u5BFC\u51FA\u6210\u529F"},errorMessage:{type:String,default:"\u5BFC\u51FA\u5931\u8D25\uFF0C\u8BF7\u7A0D\u540E\u91CD\u8BD5"},autoMessage:{type:Boolean,default:!0}},emits:["start","success","error"],setup(n,{emit:_}){const s=n,a=_,u=e.ref(!1),b=e.computed(()=>s.excelOptions&&s.requestHandler?"invalid":s.excelOptions?"excel":s.requestHandler?"request":"none"),S=e.computed(()=>s.disabled||u.value||b.value==="none");async function m(){return s.beforeExport?await s.beforeExport()!==!1:!0}async function f(){if(u.value||s.disabled)return;if(b.value==="none"){fe.ElMessage.warning("\u8BF7\u5148\u914D\u7F6E\u5BFC\u51FA\u903B\u8F91");return}if(b.value==="invalid"){const C=new Error("BaseExportButton \u4E0D\u80FD\u540C\u65F6\u63A5\u6536 excelOptions \u548C requestHandler");a("error",C),fe.ElMessage.error(C.message);return}if(!!await m()){u.value=!0,a("start");try{if(b.value==="excel"&&s.excelOptions){await xe(s.excelOptions),s.autoMessage&&fe.ElMessage.success(s.successMessage),a("success",{mode:"excel",fileName:ve(s.excelOptions.fileName)});return}if(b.value==="request"&&s.requestHandler){const C=await s.requestHandler(),h=De(C,s.fileName);s.autoMessage&&fe.ElMessage.success(s.successMessage),a("success",{mode:"request",fileName:h})}}catch(C){console.error(C),s.autoMessage&&fe.ElMessage.error(s.errorMessage),a("error",C)}finally{u.value=!1}}}return(g,C)=>{const h=e.resolveComponent("el-button");return e.openBlock(),e.createBlock(h,{class:"base-export-button",type:n.type,size:n.size,plain:n.plain,link:n.link,text:n.text,disabled:S.value,loading:u.value,onClick:f},{default:e.withCtx(()=>[e.renderSlot(g.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(n.label),1)])]),_:3},8,["type","size","plain","link","text","disabled","loading"])}}});const Dt={class:"outlined-input__suffix-text"},Tt=e.defineComponent({name:"OutlinedInput",inheritAttrs:!1,__name:"OutlinedInput",props:{value:{default:""},disabled:{type:Boolean,default:!1},regex:{},placeholder:{default:""},label:{default:""},maxlength:{},max:{},min:{},typeInput:{default:"text"},showPassword:{type:Boolean,default:!1},isNumber:{type:Boolean,default:!1},inputHeight:{default:40},isBorder:{type:Boolean,default:!1},suffixText:{default:""},clearable:{type:Boolean,default:!1},showWordLimit:{type:Boolean,default:!0},marginBottom:{default:20},paddingTop:{default:20}},emits:["input","update:value","warning","focus","blur","change","clear"],setup(n,{expose:_,emit:s}){var k;const a=/^\d+$/,u=n,b=s,S=e.useAttrs(),m=e.ref(null),f=e.ref((k=u.value)!=null?k:""),g=e.ref(!1);e.watch(()=>u.value,l=>{f.value=l!=null?l:""},{immediate:!0});const C=e.computed(()=>S.class),h=e.computed(()=>S.style),N=e.computed(()=>{const{class:l,style:t,...r}=S;return r}),T=e.computed(()=>u.typeInput||"text"),H=e.computed(()=>{const l=N.value.autosize;return l!==void 0&&l!==!1}),z=e.computed(()=>({"outlined-input--bordered":u.isBorder,"outlined-input--textarea-default":T.value==="textarea"&&!H.value})),P=e.computed(()=>({marginBottom:O(u.marginBottom),paddingTop:O(u.paddingTop)})),F=e.computed(()=>{if(T.value!=="textarea")return{height:`${u.inputHeight}px`}}),R=e.computed(()=>u.label||u.placeholder||""),L=e.computed(()=>B(f.value)),I=e.computed(()=>({"outlined-input__label--floating":g.value||L.value,"outlined-input__label--placeholder":!g.value&&!L.value,"outlined-input__label--filled":L.value&&!g.value}));function A(l){const t=D(l);f.value=t,M(t)}function q(l){g.value=!0,b("focus",l)}function W(l){g.value=!1,M(f.value),b("blur",l)}function Y(l){const t=D(l);f.value=t,b("change",t)}function U(){b("clear")}function M(l){b("input",l),b("update:value",l)}function D(l){const t=l!=null?l:"";if(!u.isNumber)return t;const r=String(t);return r?(u.regex||a).test(r)?t:(b("warning",r),""):""}function B(l){return l!=null&&String(l)!==""}function O(l){return typeof l=="number"?`${l}px`:l}return _({focus:()=>{var l;(l=m.value)==null||l.focus()},blur:()=>{var l;(l=m.value)==null||l.blur()},clear:()=>{var l;(l=m.value)==null||l.clear()},select:()=>{var l;(l=m.value)==null||l.select()},getInputRef:()=>m.value}),(l,t)=>{const r=e.resolveComponent("el-input");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["outlined-input",[z.value,C.value]]),style:e.normalizeStyle([P.value,h.value])},[e.createVNode(r,e.mergeProps({ref_key:"inputRef",ref:m},N.value,{"model-value":f.value,type:T.value,placeholder:n.placeholder,disabled:n.disabled,maxlength:n.maxlength,max:n.max,min:n.min,"show-password":n.showPassword,"show-word-limit":n.showWordLimit,clearable:n.clearable,style:F.value,"onUpdate:modelValue":A,onFocus:q,onBlur:W,onChange:Y,onClear:U}),e.createSlots({_:2},[l.$slots.prefix?{name:"prefix",fn:e.withCtx(()=>[e.renderSlot(l.$slots,"prefix",{},void 0,!0)]),key:"0"}:void 0,l.$slots.prepend?{name:"prepend",fn:e.withCtx(()=>[e.renderSlot(l.$slots,"prepend",{},void 0,!0)]),key:"1"}:void 0,l.$slots.append?{name:"append",fn:e.withCtx(()=>[e.renderSlot(l.$slots,"append",{},void 0,!0)]),key:"2"}:void 0,l.$slots.suffix||n.suffixText?{name:"suffix",fn:e.withCtx(()=>[e.renderSlot(l.$slots,"suffix",{},()=>[e.createElementVNode("span",Dt,e.toDisplayString(n.suffixText),1)],!0)]),key:"3"}:void 0]),1040,["model-value","type","placeholder","disabled","maxlength","max","min","show-password","show-word-limit","clearable","style"]),R.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["outlined-input__label",I.value])},e.toDisplayString(R.value),3)):e.createCommentVNode("",!0)],6)}}});var Vt=oe(Tt,[["__scopeId","data-v-2bf89ccd"]]);const zt=e.defineComponent({name:"OutlinedSelect",inheritAttrs:!1,__name:"OutlinedSelect",props:{value:{type:[String,Number,Boolean,Object,null,Array],default:void 0},options:{default:()=>[]},placeholder:{default:""},label:{default:""},disabled:{type:Boolean,default:!1},typeInput:{default:""},showPassword:{type:Boolean,default:!1},collapseTags:{type:Boolean,default:!1},collapseTagsTooltip:{type:Boolean,default:!0},filterable:{type:Boolean,default:!0},clearable:{type:Boolean,default:!0},multiple:{type:Boolean,default:!1},inputHeight:{default:40},isBorder:{type:Boolean,default:!1},keyValue:{default:"value"},labelValue:{default:"label"},noCheck:{type:Boolean,default:!1},maxCollapseTags:{default:5},marginBottom:{default:20},paddingTop:{default:20}},emits:["input","update:value","change","focus","blur","visible-change","clear"],setup(n,{expose:_,emit:s}){const a=n,u=s,b=e.useAttrs(),S=e.useSlots(),m=e.ref(null),f=e.ref(k(a.value,a.multiple)),g=e.ref(!1),C=e.ref(!1),h=e.ref(!1);e.watch(()=>[a.value,a.multiple],([i,y])=>{f.value=k(i,y)},{immediate:!0});const N=e.computed(()=>b.class),T=e.computed(()=>b.style),H=e.computed(()=>{const{class:i,style:y,...d}=b;return d}),z=e.computed(()=>({"outlined-select--bordered":a.isBorder})),P=e.computed(()=>({marginBottom:x(a.marginBottom),paddingTop:x(a.paddingTop)})),F=e.computed(()=>({minHeight:`${a.inputHeight}px`,height:a.multiple?"auto":`${a.inputHeight}px`})),R=e.computed(()=>a.label||a.placeholder||""),L=e.computed(()=>Boolean(S.default)),I=e.computed(()=>a.multiple?Array.isArray(f.value)&&f.value.length>0:p(f.value)),A=e.computed(()=>a.noCheck?g.value:g.value||I.value),q=e.computed(()=>({"outlined-select__label--floating":A.value,"outlined-select__label--placeholder":!A.value,"outlined-select__label--filled":!a.noCheck&&I.value&&!g.value}));function W(i){const y=k(i,a.multiple);f.value=y,O(y)}function Y(i){const y=k(i,a.multiple);f.value=y,u("change",y)}function U(i){C.value=!1,g.value=!0,u("focus",i)}function M(i){C.value=!0,h.value||(g.value=!1,O(f.value)),u("blur",i)}function D(i){h.value=i,!i&&C.value&&(g.value=!1),u("visible-change",i)}function B(){u("clear")}function O(i){u("input",i),u("update:value",i)}function k(i,y){return y?Array.isArray(i)?i:i==null||i===""?[]:[i]:i!=null?i:""}function l(i){const y=i[a.labelValue];return y==null?"":String(y)}function t(i){var y;return(y=i[a.keyValue])!=null?y:null}function r(i,y){const d=t(i);return`${y}-${typeof d=="object"?JSON.stringify(d):String(d)}`}function p(i){return i!=null&&String(i)!==""}function x(i){return typeof i=="number"?`${i}px`:i}return _({focus:()=>{var i,y;(y=(i=m.value)==null?void 0:i.focus)==null||y.call(i)},blur:()=>{var i,y;(y=(i=m.value)==null?void 0:i.blur)==null||y.call(i)},clear:()=>{var i,y;if((y=(i=m.value)==null?void 0:i.blur)==null||y.call(i),a.multiple){f.value=[],O([]),u("change",[]),u("clear");return}f.value="",O(""),u("change",""),u("clear")},toggleMenu:()=>{var i,y;(y=(i=m.value)==null?void 0:i.toggleMenu)==null||y.call(i)},getSelectRef:()=>m.value}),(i,y)=>{const d=e.resolveComponent("el-option"),V=e.resolveComponent("el-select");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["outlined-select",[z.value,N.value]]),style:e.normalizeStyle([P.value,T.value])},[e.createVNode(V,e.mergeProps({ref_key:"selectRef",ref:m},H.value,{class:"outlined-select__control","model-value":f.value,placeholder:n.placeholder,disabled:n.disabled,multiple:n.multiple,filterable:n.filterable,clearable:n.clearable,"collapse-tags":n.collapseTags,"collapse-tags-tooltip":n.collapseTagsTooltip,"max-collapse-tags":n.maxCollapseTags,style:F.value,"onUpdate:modelValue":W,onFocus:U,onBlur:M,onChange:Y,onVisibleChange:D,onClear:B}),{empty:e.withCtx(()=>[e.renderSlot(i.$slots,"empty",{},void 0,!0)]),header:e.withCtx(()=>[e.renderSlot(i.$slots,"header",{},void 0,!0)]),footer:e.withCtx(()=>[e.renderSlot(i.$slots,"footer",{},void 0,!0)]),tag:e.withCtx(c=>[e.renderSlot(i.$slots,"tag",e.normalizeProps(e.guardReactiveProps(c)),void 0,!0)]),default:e.withCtx(()=>[L.value?e.renderSlot(i.$slots,"default",{key:0},void 0,!0):(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(n.options,(c,w)=>(e.openBlock(),e.createBlock(d,{key:r(c,w),label:l(c),value:t(c),disabled:Boolean(c.disabled)},null,8,["label","value","disabled"]))),128))]),_:3},16,["model-value","placeholder","disabled","multiple","filterable","clearable","collapse-tags","collapse-tags-tooltip","max-collapse-tags","style"]),R.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["outlined-select__label",q.value])},e.toDisplayString(R.value),3)):e.createCommentVNode("",!0)],6)}}});var Et=oe(zt,[["__scopeId","data-v-7bd2b5f2"]]);const Mt=e.defineComponent({name:"OutlinedDatePicker",inheritAttrs:!1,__name:"OutlinedDatePicker",props:{value:{default:""},placeholder:{default:""},label:{default:""},disabled:{type:Boolean,default:!1},timeValue:{type:Boolean,default:!1},typeDate:{default:"date"},format:{default:"YYYY-MM-DD"},valueFormat:{default:""},showPassword:{type:Boolean,default:!1},multiple:{type:Boolean,default:!1},inputHeight:{default:40},isBorder:{type:Boolean,default:!1},disabledDate:{type:[String,Number,Date,Function],default:void 0},marginBottom:{default:20},paddingTop:{default:20}},emits:["input","update:value","change","focus","blur","visible-change"],setup(n,{expose:_,emit:s}){var y;const a=n,u=s,b=e.useAttrs(),S=e.ref(null),m=e.ref((y=a.value)!=null?y:""),f=e.ref(!1),g=e.ref(!1),C=e.ref(!1);e.watch(()=>a.value,d=>{m.value=d!=null?d:""},{immediate:!0});const h=e.computed(()=>b.class),N=e.computed(()=>b.style),T=e.computed(()=>a.valueFormat||a.format),H=e.computed(()=>t(a.disabledDate)),z=e.computed(()=>b.defaultTime!==void 0?b.defaultTime:b["default-time"]!==void 0?b["default-time"]:a.timeValue?new Date().setHours(0,0,0,0):new Date),P=e.computed(()=>{if(b.disabledHours!==void 0)return b.disabledHours;if(b["disabled-hours"]!==void 0)return b["disabled-hours"];if(!!p())return()=>{const d=new Date().getHours();return Array.from({length:d},(V,c)=>c)}}),F=e.computed(()=>{if(b.disabledMinutes!==void 0)return b.disabledMinutes;if(b["disabled-minutes"]!==void 0)return b["disabled-minutes"];if(!!p())return()=>{const d=new Date().getMinutes();return Array.from({length:d},(V,c)=>c)}}),R=e.computed(()=>{const{class:d,style:V,...c}=b;return{...c,defaultTime:z.value,disabledDate:H.value,disabledHours:P.value,disabledMinutes:F.value}}),L=e.computed(()=>({"outlined-date-picker--bordered":a.isBorder})),I=e.computed(()=>({marginBottom:i(a.marginBottom),paddingTop:i(a.paddingTop)})),A=e.computed(()=>({height:`${a.inputHeight}px`})),q=e.computed(()=>a.label||a.placeholder||""),W=e.computed(()=>x(m.value)),Y=e.computed(()=>({"outlined-date-picker__label--floating":f.value||W.value,"outlined-date-picker__label--placeholder":!f.value&&!W.value,"outlined-date-picker__label--filled":W.value&&!f.value}));function U(d){const V=l(d);m.value=V,k(V)}function M(d){const V=l(d);m.value=V,u("change",V)}function D(d){g.value=!1,f.value=!0,u("focus",d)}function B(d){g.value=!0,C.value||(f.value=!1,k(m.value)),u("blur",d)}function O(d){C.value=d,!d&&g.value&&(f.value=!1),u("visible-change",d)}function k(d){u("input",d),u("update:value",d)}function l(d){return d!=null?d:""}function t(d){if(!d)return;if(typeof d=="function")return d;const V=r(d);return c=>c.getTime()<V-864e5}function r(d){return d==="nowDate"?Date.now():d instanceof Date?d.getTime():typeof d=="number"?d:new Date(d).getTime()}function p(){return Boolean(a.disabledDate)&&a.typeDate.toLowerCase().includes("time")}function x(d){return Array.isArray(d)?d.length>0:d!=null&&String(d)!==""}function i(d){return typeof d=="number"?`${d}px`:d}return _({focus:()=>{var d,V;(V=(d=S.value)==null?void 0:d.focus)==null||V.call(d)},blur:()=>{var d,V;(V=(d=S.value)==null?void 0:d.blur)==null||V.call(d)},handleOpen:()=>{var d,V;(V=(d=S.value)==null?void 0:d.handleOpen)==null||V.call(d)},handleClose:()=>{var d,V;(V=(d=S.value)==null?void 0:d.handleClose)==null||V.call(d)},getPickerRef:()=>S.value}),(d,V)=>{const c=e.resolveComponent("el-date-picker");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["outlined-date-picker",[L.value,h.value]]),style:e.normalizeStyle([I.value,N.value])},[e.createVNode(c,e.mergeProps({ref_key:"pickerRef",ref:S},R.value,{class:"outlined-date-picker__control","model-value":m.value,type:n.typeDate,format:n.format,"value-format":T.value,placeholder:n.placeholder,disabled:n.disabled,style:A.value,"onUpdate:modelValue":U,onFocus:D,onBlur:B,onChange:M,onVisibleChange:O}),null,16,["model-value","type","format","value-format","placeholder","disabled","style"]),q.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["outlined-date-picker__label",Y.value])},e.toDisplayString(q.value),3)):e.createCommentVNode("",!0)],6)}}});var Ot=oe(Mt,[["__scopeId","data-v-c95a293c"]]),Pt=typeof globalThis!="undefined"?globalThis:typeof window!="undefined"?window:typeof global!="undefined"?global:typeof self!="undefined"?self:{},Te={exports:{}};(function(n,_){(function(s,a){n.exports=a()})(Pt,function(){var s=1e3,a=6e4,u=36e5,b="millisecond",S="second",m="minute",f="hour",g="day",C="week",h="month",N="quarter",T="year",H="date",z="Invalid Date",P=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,F=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,R={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(k){var l=["th","st","nd","rd"],t=k%100;return"["+k+(l[(t-20)%10]||l[t]||l[0])+"]"}},L=function(k,l,t){var r=String(k);return!r||r.length>=l?k:""+Array(l+1-r.length).join(t)+k},I={s:L,z:function(k){var l=-k.utcOffset(),t=Math.abs(l),r=Math.floor(t/60),p=t%60;return(l<=0?"+":"-")+L(r,2,"0")+":"+L(p,2,"0")},m:function k(l,t){if(l.date()<t.date())return-k(t,l);var r=12*(t.year()-l.year())+(t.month()-l.month()),p=l.clone().add(r,h),x=t-p<0,i=l.clone().add(r+(x?-1:1),h);return+(-(r+(t-p)/(x?p-i:i-p))||0)},a:function(k){return k<0?Math.ceil(k)||0:Math.floor(k)},p:function(k){return{M:h,y:T,w:C,d:g,D:H,h:f,m,s:S,ms:b,Q:N}[k]||String(k||"").toLowerCase().replace(/s$/,"")},u:function(k){return k===void 0}},A="en",q={};q[A]=R;var W="$isDayjsObject",Y=function(k){return k instanceof B||!(!k||!k[W])},U=function k(l,t,r){var p;if(!l)return A;if(typeof l=="string"){var x=l.toLowerCase();q[x]&&(p=x),t&&(q[x]=t,p=x);var i=l.split("-");if(!p&&i.length>1)return k(i[0])}else{var y=l.name;q[y]=l,p=y}return!r&&p&&(A=p),p||!r&&A},M=function(k,l){if(Y(k))return k.clone();var t=typeof l=="object"?l:{};return t.date=k,t.args=arguments,new B(t)},D=I;D.l=U,D.i=Y,D.w=function(k,l){return M(k,{locale:l.$L,utc:l.$u,x:l.$x,$offset:l.$offset})};var B=function(){function k(t){this.$L=U(t.locale,null,!0),this.parse(t),this.$x=this.$x||t.x||{},this[W]=!0}var l=k.prototype;return l.parse=function(t){this.$d=function(r){var p=r.date,x=r.utc;if(p===null)return new Date(NaN);if(D.u(p))return new Date;if(p instanceof Date)return new Date(p);if(typeof p=="string"&&!/Z$/i.test(p)){var i=p.match(P);if(i){var y=i[2]-1||0,d=(i[7]||"0").substring(0,3);return x?new Date(Date.UTC(i[1],y,i[3]||1,i[4]||0,i[5]||0,i[6]||0,d)):new Date(i[1],y,i[3]||1,i[4]||0,i[5]||0,i[6]||0,d)}}return new Date(p)}(t),this.init()},l.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds()},l.$utils=function(){return D},l.isValid=function(){return this.$d.toString()!==z},l.isSame=function(t,r){var p=M(t);return this.startOf(r)<=p&&p<=this.endOf(r)},l.isAfter=function(t,r){return M(t)<this.startOf(r)},l.isBefore=function(t,r){return this.endOf(r)<M(t)},l.$g=function(t,r,p){return D.u(t)?this[r]:this.set(p,t)},l.unix=function(){return Math.floor(this.valueOf()/1e3)},l.valueOf=function(){return this.$d.getTime()},l.startOf=function(t,r){var p=this,x=!!D.u(r)||r,i=D.p(t),y=function(ae,X){var le=D.w(p.$u?Date.UTC(p.$y,X,ae):new Date(p.$y,X,ae),p);return x?le:le.endOf(g)},d=function(ae,X){return D.w(p.toDate()[ae].apply(p.toDate("s"),(x?[0,0,0,0]:[23,59,59,999]).slice(X)),p)},V=this.$W,c=this.$M,w=this.$D,j="set"+(this.$u?"UTC":"");switch(i){case T:return x?y(1,0):y(31,11);case h:return x?y(1,c):y(0,c+1);case C:var te=this.$locale().weekStart||0,K=(V<te?V+7:V)-te;return y(x?w-K:w+(6-K),c);case g:case H:return d(j+"Hours",0);case f:return d(j+"Minutes",1);case m:return d(j+"Seconds",2);case S:return d(j+"Milliseconds",3);default:return this.clone()}},l.endOf=function(t){return this.startOf(t,!1)},l.$set=function(t,r){var p,x=D.p(t),i="set"+(this.$u?"UTC":""),y=(p={},p[g]=i+"Date",p[H]=i+"Date",p[h]=i+"Month",p[T]=i+"FullYear",p[f]=i+"Hours",p[m]=i+"Minutes",p[S]=i+"Seconds",p[b]=i+"Milliseconds",p)[x],d=x===g?this.$D+(r-this.$W):r;if(x===h||x===T){var V=this.clone().set(H,1);V.$d[y](d),V.init(),this.$d=V.set(H,Math.min(this.$D,V.daysInMonth())).$d}else y&&this.$d[y](d);return this.init(),this},l.set=function(t,r){return this.clone().$set(t,r)},l.get=function(t){return this[D.p(t)]()},l.add=function(t,r){var p,x=this;t=Number(t);var i=D.p(r),y=function(c){var w=M(x);return D.w(w.date(w.date()+Math.round(c*t)),x)};if(i===h)return this.set(h,this.$M+t);if(i===T)return this.set(T,this.$y+t);if(i===g)return y(1);if(i===C)return y(7);var d=(p={},p[m]=a,p[f]=u,p[S]=s,p)[i]||1,V=this.$d.getTime()+t*d;return D.w(V,this)},l.subtract=function(t,r){return this.add(-1*t,r)},l.format=function(t){var r=this,p=this.$locale();if(!this.isValid())return p.invalidDate||z;var x=t||"YYYY-MM-DDTHH:mm:ssZ",i=D.z(this),y=this.$H,d=this.$m,V=this.$M,c=p.weekdays,w=p.months,j=p.meridiem,te=function(X,le,re,se){return X&&(X[le]||X(r,x))||re[le].slice(0,se)},K=function(X){return D.s(y%12||12,X,"0")},ae=j||function(X,le,re){var se=X<12?"AM":"PM";return re?se.toLowerCase():se};return x.replace(F,function(X,le){return le||function(re){switch(re){case"YY":return String(r.$y).slice(-2);case"YYYY":return D.s(r.$y,4,"0");case"M":return V+1;case"MM":return D.s(V+1,2,"0");case"MMM":return te(p.monthsShort,V,w,3);case"MMMM":return te(w,V);case"D":return r.$D;case"DD":return D.s(r.$D,2,"0");case"d":return String(r.$W);case"dd":return te(p.weekdaysMin,r.$W,c,2);case"ddd":return te(p.weekdaysShort,r.$W,c,3);case"dddd":return c[r.$W];case"H":return String(y);case"HH":return D.s(y,2,"0");case"h":return K(1);case"hh":return K(2);case"a":return ae(y,d,!0);case"A":return ae(y,d,!1);case"m":return String(d);case"mm":return D.s(d,2,"0");case"s":return String(r.$s);case"ss":return D.s(r.$s,2,"0");case"SSS":return D.s(r.$ms,3,"0");case"Z":return i}return null}(X)||i.replace(":","")})},l.utcOffset=function(){return 15*-Math.round(this.$d.getTimezoneOffset()/15)},l.diff=function(t,r,p){var x,i=this,y=D.p(r),d=M(t),V=(d.utcOffset()-this.utcOffset())*a,c=this-d,w=function(){return D.m(i,d)};switch(y){case T:x=w()/12;break;case h:x=w();break;case N:x=w()/3;break;case C:x=(c-V)/6048e5;break;case g:x=(c-V)/864e5;break;case f:x=c/u;break;case m:x=c/a;break;case S:x=c/s;break;default:x=c}return p?x:D.a(x)},l.daysInMonth=function(){return this.endOf(h).$D},l.$locale=function(){return q[this.$L]},l.locale=function(t,r){if(!t)return this.$L;var p=this.clone(),x=U(t,r,!0);return x&&(p.$L=x),p},l.clone=function(){return D.w(this.$d,this)},l.toDate=function(){return new Date(this.valueOf())},l.toJSON=function(){return this.isValid()?this.toISOString():null},l.toISOString=function(){return this.$d.toISOString()},l.toString=function(){return this.$d.toUTCString()},k}(),O=B.prototype;return M.prototype=O,[["$ms",b],["$s",S],["$m",m],["$H",f],["$W",g],["$M",h],["$y",T],["$D",H]].forEach(function(k){O[k[1]]=function(l){return this.$g(l,k[0],k[1])}}),M.extend=function(k,l){return k.$i||(k(l,B,M),k.$i=!0),M},M.locale=U,M.isDayjs=Y,M.unix=function(k){return M(1e3*k)},M.en=q[A],M.Ls=q,M.p={},M})})(Te);var _e=Te.exports;const At={class:"outlined-date-time-picker__separator"},Ft=e.defineComponent({name:"OutlinedDateTimePicker",inheritAttrs:!1,__name:"OutlinedDateTimePicker",props:{value:{default:""},placeholder:{default:""},label:{default:""},inputHeight:{default:40},isBorder:{type:Boolean,default:!1},disabledDate:{type:[String,Number,Date,Function],default:void 0},separatorText:{default:"-"},timePlaceholder:{default:"\u65F6\u95F4"},clearable:{type:Boolean,default:!1},marginBottom:{default:20},paddingTop:{default:20}},emits:["input","update:value","change","focus","blur","visible-change"],setup(n,{expose:_,emit:s}){const a=n,u=s,b=e.useAttrs(),S=e.ref(null),m=e.ref(null),f=e.ref(null),g=e.ref(null),C=e.ref(!1),h=e.ref(!1),N=e.ref(!1),T=e.ref(!1),H=e.ref(!1),z=e.ref(!1);e.watch(()=>a.value,c=>{D(c)},{immediate:!0});const P=e.computed(()=>b.class),F=e.computed(()=>b.style),R=e.computed(()=>a.label||a.placeholder||""),L=e.computed(()=>({"outlined-date-time-picker__field--bordered":a.isBorder})),I=e.computed(()=>({marginBottom:V(a.marginBottom),paddingTop:V(a.paddingTop)})),A=e.computed(()=>({height:`${a.inputHeight}px`})),q=e.computed(()=>i(a.disabledDate)),W=e.computed(()=>{if(!!d())return()=>{const c=new Date().getHours();return Array.from({length:c},(w,j)=>j)}}),Y=e.computed(()=>{if(!!d())return()=>{const c=new Date().getMinutes();return Array.from({length:c},(w,j)=>j)}}),U=e.computed(()=>({"outlined-date-time-picker__label--floating":C.value||Boolean(f.value),"outlined-date-time-picker__label--placeholder":!C.value&&!f.value,"outlined-date-time-picker__label--filled":Boolean(f.value)&&!C.value})),M=e.computed(()=>({"outlined-date-time-picker__label--floating":h.value||Boolean(g.value),"outlined-date-time-picker__label--placeholder":!h.value&&!g.value,"outlined-date-time-picker__label--filled":Boolean(g.value)&&!h.value}));function D(c){if(!c){f.value=null,g.value=null;return}const[w,j]=c.split(" ");f.value=w||null,g.value=j||null}function B(c){f.value=c||null}function O(c){g.value=c||null}function k(){f.value&&!g.value&&(g.value=_e().format("HH:mm")),x()}function l(){x()}function t(c){return w=>{c==="date"?(N.value=!1,C.value=!0):(T.value=!1,h.value=!0),u("focus",{field:c,event:w})}}function r(c,w){c==="date"?(N.value=!0,H.value||(C.value=!1,x())):(T.value=!0,z.value||(h.value=!1,x())),u("blur",{field:c,event:w})}function p(c,w){c==="date"?(H.value=w,!w&&N.value&&(C.value=!1)):(z.value=w,!w&&T.value&&(h.value=!1)),u("visible-change",{field:c,visible:w})}function x(){const c=f.value&&g.value?`${f.value} ${g.value}`:"";u("input",c),u("update:value",c),u("change",c)}function i(c){if(!c)return;if(typeof c=="function")return c;const w=y(c);return j=>j.getTime()<w-864e5}function y(c){return c==="nowDate"?Date.now():c instanceof Date?c.getTime():typeof c=="number"?c:new Date(c).getTime()}function d(){return Boolean(a.disabledDate)&&f.value===_e().format("YYYY-MM-DD")}function V(c){return typeof c=="number"?`${c}px`:c}return _({focusDate:()=>{var c,w;(w=(c=S.value)==null?void 0:c.focus)==null||w.call(c)},focusTime:()=>{var c,w;(w=(c=m.value)==null?void 0:c.focus)==null||w.call(c)},blurDate:()=>{var c,w;(w=(c=S.value)==null?void 0:c.blur)==null||w.call(c)},blurTime:()=>{var c,w;(w=(c=m.value)==null?void 0:c.blur)==null||w.call(c)},openDatePanel:()=>{var c,w;(w=(c=S.value)==null?void 0:c.handleOpen)==null||w.call(c)},openTimePanel:()=>{var c,w;(w=(c=m.value)==null?void 0:c.handleOpen)==null||w.call(c)},getDatePickerRef:()=>S.value,getTimePickerRef:()=>m.value}),(c,w)=>{const j=e.resolveComponent("el-date-picker"),te=e.resolveComponent("el-time-picker");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["outlined-date-time-picker",[P.value]]),style:e.normalizeStyle(F.value)},[e.createElementVNode("div",{class:e.normalizeClass(["outlined-date-time-picker__field",L.value]),style:e.normalizeStyle(I.value)},[e.createVNode(j,{ref_key:"datePickerRef",ref:S,class:"outlined-date-time-picker__control","model-value":f.value,type:"date",format:"YYYY-MM-DD","value-format":"YYYY-MM-DD",placeholder:n.placeholder,clearable:n.clearable,"disabled-date":q.value,style:e.normalizeStyle(A.value),"onUpdate:modelValue":B,onFocus:w[0]||(w[0]=K=>t("date")),onBlur:w[1]||(w[1]=K=>r("date",K)),onChange:k,onVisibleChange:w[2]||(w[2]=K=>p("date",K))},null,8,["model-value","placeholder","clearable","disabled-date","style"]),R.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["outlined-date-time-picker__label",U.value])},e.toDisplayString(R.value),3)):e.createCommentVNode("",!0)],6),e.createElementVNode("span",At,e.toDisplayString(n.separatorText),1),e.createElementVNode("div",{class:e.normalizeClass(["outlined-date-time-picker__field",L.value]),style:e.normalizeStyle(I.value)},[e.createVNode(te,{ref_key:"timePickerRef",ref:m,class:"outlined-date-time-picker__control","model-value":g.value,format:"HH:mm","value-format":"HH:mm",placeholder:n.timePlaceholder,clearable:n.clearable,disabled:!f.value,"disabled-hours":W.value,"disabled-minutes":Y.value,style:e.normalizeStyle(A.value),"onUpdate:modelValue":O,onFocus:w[3]||(w[3]=K=>t("time")),onBlur:w[4]||(w[4]=K=>r("time",K)),onChange:l,onVisibleChange:w[5]||(w[5]=K=>p("time",K))},null,8,["model-value","placeholder","clearable","disabled","disabled-hours","disabled-minutes","style"]),e.createElementVNode("div",{class:e.normalizeClass(["outlined-date-time-picker__label",M.value])},e.toDisplayString(n.timePlaceholder),3)],6)],6)}}});var Nt=oe(Ft,[["__scopeId","data-v-f2fefd22"]]);const Ht=e.defineComponent({name:"OutlinedTimePicker",inheritAttrs:!1,__name:"OutlinedTimePicker",props:{value:{default:""},placeholder:{default:""},label:{default:""},disabled:{type:Boolean,default:!1},clearable:{type:Boolean,default:!0},isRange:{type:Boolean,default:!1},startPlaceholder:{default:"\u5F00\u59CB\u65F6\u95F4"},endPlaceholder:{default:"\u7ED3\u675F\u65F6\u95F4"},rangeSeparator:{default:"-"},format:{default:"HH:mm"},valueFormat:{default:""},arrowControl:{type:Boolean,default:!1},inputHeight:{default:40},isBorder:{type:Boolean,default:!1},marginBottom:{default:20},paddingTop:{default:20}},emits:["input","update:value","change","focus","blur","visible-change","clear"],setup(n,{expose:_,emit:s}){const a=n,u=s,b=e.useAttrs(),S=e.ref(null),m=e.ref(B(a.value,a.isRange)),f=e.ref(!1),g=e.ref(!1),C=e.ref(!1);e.watch(()=>[a.value,a.isRange],([l,t])=>{m.value=B(l,t)},{immediate:!0});const h=e.computed(()=>b.class),N=e.computed(()=>b.style),T=e.computed(()=>a.valueFormat||a.format),H=e.computed(()=>{const{class:l,style:t,...r}=b;return r}),z=e.computed(()=>({"outlined-time-picker--bordered":a.isBorder})),P=e.computed(()=>({marginBottom:k(a.marginBottom),paddingTop:k(a.paddingTop)})),F=e.computed(()=>({height:`${a.inputHeight}px`})),R=e.computed(()=>a.label||a.placeholder||""),L=e.computed(()=>Array.isArray(m.value)?m.value.length>0:O(m.value)),I=e.computed(()=>({"outlined-time-picker__label--floating":f.value||L.value,"outlined-time-picker__label--placeholder":!f.value&&!L.value,"outlined-time-picker__label--filled":L.value&&!f.value}));function A(l){const t=B(l,a.isRange);m.value=t,D(t)}function q(l){const t=B(l,a.isRange);m.value=t,u("change",t)}function W(l){g.value=!1,f.value=!0,u("focus",l)}function Y(l){g.value=!0,C.value||(f.value=!1,D(m.value)),u("blur",l)}function U(l){C.value=l,!l&&g.value&&(f.value=!1),u("visible-change",l)}function M(){u("clear")}function D(l){u("input",l),u("update:value",l)}function B(l,t){return t?Array.isArray(l)?l:l==null||l===""?[]:[l]:l!=null?l:""}function O(l){return l!=null&&String(l)!==""}function k(l){return typeof l=="number"?`${l}px`:l}return _({focus:()=>{var l,t;(t=(l=S.value)==null?void 0:l.focus)==null||t.call(l)},blur:()=>{var l,t;(t=(l=S.value)==null?void 0:l.blur)==null||t.call(l)},handleOpen:()=>{var l,t;(t=(l=S.value)==null?void 0:l.handleOpen)==null||t.call(l)},handleClose:()=>{var l,t;(t=(l=S.value)==null?void 0:l.handleClose)==null||t.call(l)},clear:()=>{const l=a.isRange?[]:"";m.value=l,D(l),u("change",l),u("clear")},getPickerRef:()=>S.value}),(l,t)=>{const r=e.resolveComponent("el-time-picker");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["outlined-time-picker",[z.value,h.value]]),style:e.normalizeStyle([P.value,N.value])},[e.createVNode(r,e.mergeProps({ref_key:"pickerRef",ref:S},H.value,{class:"outlined-time-picker__control","model-value":m.value,"is-range":n.isRange,format:n.format,"value-format":T.value,placeholder:n.placeholder,"start-placeholder":n.startPlaceholder,"end-placeholder":n.endPlaceholder,"range-separator":n.rangeSeparator,disabled:n.disabled,clearable:n.clearable,"arrow-control":n.arrowControl,style:F.value,"onUpdate:modelValue":A,onFocus:W,onBlur:Y,onChange:q,onVisibleChange:U,onClear:M}),null,16,["model-value","is-range","format","value-format","placeholder","start-placeholder","end-placeholder","range-separator","disabled","clearable","arrow-control","style"]),R.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["outlined-time-picker__label",I.value])},e.toDisplayString(R.value),3)):e.createCommentVNode("",!0)],6)}}});var Rt=oe(Ht,[["__scopeId","data-v-6a467b88"]]);const Lt=e.defineComponent({name:"OutlinedCascader",inheritAttrs:!1,__name:"OutlinedCascader",props:{value:{default:()=>[]},options:{default:()=>[]},clearable:{type:Boolean,default:!1},propsValue:{default:void 0},placeholder:{default:""},label:{default:""},popperClass:{default:""},disabled:{type:Boolean,default:!1},inputHeight:{default:40},isBorder:{type:Boolean,default:!1},filterable:{type:Boolean,default:!0},levels:{type:Boolean,default:!0},marginBottom:{default:20},paddingTop:{default:20}},emits:["input","update:value","change","focus","blur","visible-change"],setup(n,{expose:_,emit:s}){const a=n,u=s,b=e.useAttrs(),S=e.ref(null),m=e.ref(M(a.value)),f=e.ref(!1),g=e.ref(!1),C=e.ref(!1);e.watch(()=>a.value,B=>{m.value=M(B)},{immediate:!0});const h=e.computed(()=>b.class),N=e.computed(()=>b.style),T=e.computed(()=>{const{class:B,style:O,...k}=b;return k}),H=e.computed(()=>({"outlined-cascader--bordered":a.isBorder})),z=e.computed(()=>({marginBottom:D(a.marginBottom),paddingTop:D(a.paddingTop)})),P=e.computed(()=>({width:"100%",height:`${a.inputHeight}px`})),F=e.computed(()=>a.label||a.placeholder||""),R=e.computed(()=>m.value.length>0),L=e.computed(()=>({"outlined-cascader__label--floating":f.value||R.value,"outlined-cascader__label--placeholder":!f.value&&!R.value,"outlined-cascader__label--filled":R.value&&!f.value}));function I(B){const O=M(B);m.value=O,U(O)}function A(B){const O=M(B);m.value=O,u("change",O)}function q(B){g.value=!1,f.value=!0,u("focus",B)}function W(B){g.value=!0,C.value||(f.value=!1,U(m.value)),u("blur",B)}function Y(B){C.value=B,!B&&g.value&&(f.value=!1),u("visible-change",B)}function U(B){u("input",B),u("update:value",B)}function M(B){return Array.isArray(B)?B:[]}function D(B){return typeof B=="number"?`${B}px`:B}return _({focus:()=>{var B,O;(O=(B=S.value)==null?void 0:B.togglePopperVisible)==null||O.call(B,!0)},blur:()=>{var B,O;(O=(B=S.value)==null?void 0:B.togglePopperVisible)==null||O.call(B,!1)},togglePopperVisible:()=>{var B,O;(O=(B=S.value)==null?void 0:B.togglePopperVisible)==null||O.call(B)},clear:()=>{m.value=[],U([]),u("change",[])},getCascaderRef:()=>S.value}),(B,O)=>{const k=e.resolveComponent("el-cascader");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["outlined-cascader",[H.value,h.value]]),style:e.normalizeStyle([z.value,N.value])},[e.createVNode(k,e.mergeProps({ref_key:"cascaderRef",ref:S},T.value,{class:"outlined-cascader__control","model-value":m.value,options:n.options,props:n.propsValue,clearable:n.clearable,placeholder:n.placeholder,filterable:n.filterable,"show-all-levels":n.levels,disabled:n.disabled,"popper-class":n.popperClass,style:P.value,"onUpdate:modelValue":I,onFocus:q,onBlur:W,onChange:A,onVisibleChange:Y}),null,16,["model-value","options","props","clearable","placeholder","filterable","show-all-levels","disabled","popper-class","style"]),F.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["outlined-cascader__label",L.value])},e.toDisplayString(F.value),3)):e.createCommentVNode("",!0)],6)}}});var It=oe(Lt,[["__scopeId","data-v-2c93c0e4"]]);const qt=e.defineComponent({name:"OutlinedTreeSelect",inheritAttrs:!1,__name:"OutlinedTreeSelect",props:{value:{type:[String,Number,Boolean,Object,null,Array],default:void 0},data:{default:()=>[]},propsValue:{default:void 0},placeholder:{default:""},label:{default:""},disabled:{type:Boolean,default:!1},clearable:{type:Boolean,default:!0},filterable:{type:Boolean,default:!0},multiple:{type:Boolean,default:!1},showCheckbox:{type:Boolean,default:!1},checkStrictly:{type:Boolean,default:!1},checkOnClickNode:{type:Boolean,default:!1},defaultExpandAll:{type:Boolean,default:!1},expandOnClickNode:{type:Boolean,default:!1},renderAfterExpand:{type:Boolean,default:!1},collapseTags:{type:Boolean,default:!1},collapseTagsTooltip:{type:Boolean,default:!0},maxCollapseTags:{default:5},popperClass:{default:""},nodeKey:{default:"value"},keyValue:{default:"value"},labelValue:{default:"label"},childrenValue:{default:"children"},disabledValue:{default:"disabled"},inputHeight:{default:40},isBorder:{type:Boolean,default:!1},marginBottom:{default:20},paddingTop:{default:20}},emits:["input","update:value","change","focus","blur","visible-change","clear"],setup(n,{expose:_,emit:s}){const a=n,u=s,b=e.useAttrs(),S=e.ref(null),m=e.ref(O(a.value,A())),f=e.ref(!1),g=e.ref(!1),C=e.ref(!1);e.watch(()=>[a.value,a.multiple,a.showCheckbox],([t])=>{m.value=O(t,A())},{immediate:!0});const h=e.computed(()=>b.class),N=e.computed(()=>b.style),T=e.computed(()=>{const{class:t,style:r,...p}=b;return p}),H=e.computed(()=>({"outlined-tree-select--bordered":a.isBorder})),z=e.computed(()=>({marginBottom:l(a.marginBottom),paddingTop:l(a.paddingTop)})),P=e.computed(()=>({minHeight:`${a.inputHeight}px`,height:A()?"auto":`${a.inputHeight}px`})),F=e.computed(()=>a.propsValue?a.propsValue:{value:a.keyValue,label:a.labelValue,children:a.childrenValue,disabled:a.disabledValue}),R=e.computed(()=>a.label||a.placeholder||""),L=e.computed(()=>A()?Array.isArray(m.value)&&m.value.length>0:k(m.value)),I=e.computed(()=>({"outlined-tree-select__label--floating":f.value||L.value,"outlined-tree-select__label--placeholder":!f.value&&!L.value,"outlined-tree-select__label--filled":L.value&&!f.value}));function A(){return a.multiple||a.showCheckbox}function q(t){const r=O(t,A());m.value=r,B(r)}function W(t){const r=O(t,A());m.value=r,u("change",r)}function Y(t){g.value=!1,f.value=!0,u("focus",t)}function U(t){g.value=!0,C.value||(f.value=!1,B(m.value)),u("blur",t)}function M(t){C.value=t,!t&&g.value&&(f.value=!1),u("visible-change",t)}function D(){u("clear")}function B(t){u("input",t),u("update:value",t)}function O(t,r){return r?Array.isArray(t)?t:t==null||t===""?[]:[t]:t!=null?t:""}function k(t){return t!=null&&String(t)!==""}function l(t){return typeof t=="number"?`${t}px`:t}return _({focus:()=>{var t,r;(r=(t=S.value)==null?void 0:t.focus)==null||r.call(t)},blur:()=>{var t,r;(r=(t=S.value)==null?void 0:t.blur)==null||r.call(t)},clear:()=>{if(A()){m.value=[],B([]),u("change",[]),u("clear");return}m.value="",B(""),u("change",""),u("clear")},getTreeSelectRef:()=>S.value}),(t,r)=>{const p=e.resolveComponent("el-tree-select");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["outlined-tree-select",[H.value,h.value]]),style:e.normalizeStyle([z.value,N.value])},[e.createVNode(p,e.mergeProps({ref_key:"treeSelectRef",ref:S},T.value,{class:"outlined-tree-select__control","model-value":m.value,data:n.data,props:F.value,placeholder:n.placeholder,disabled:n.disabled,clearable:n.clearable,filterable:n.filterable,multiple:n.multiple,"show-checkbox":n.showCheckbox,"check-strictly":n.checkStrictly,"check-on-click-node":n.checkOnClickNode,"default-expand-all":n.defaultExpandAll,"expand-on-click-node":n.expandOnClickNode,"render-after-expand":n.renderAfterExpand,"collapse-tags":n.collapseTags,"collapse-tags-tooltip":n.collapseTagsTooltip,"max-collapse-tags":n.maxCollapseTags,"popper-class":n.popperClass,"node-key":n.nodeKey,style:P.value,"onUpdate:modelValue":q,onFocus:Y,onBlur:U,onChange:W,onVisibleChange:M,onClear:D}),{empty:e.withCtx(()=>[e.renderSlot(t.$slots,"empty",{},void 0,!0)]),header:e.withCtx(()=>[e.renderSlot(t.$slots,"header",{},void 0,!0)]),footer:e.withCtx(()=>[e.renderSlot(t.$slots,"footer",{},void 0,!0)]),_:3},16,["model-value","data","props","placeholder","disabled","clearable","filterable","multiple","show-checkbox","check-strictly","check-on-click-node","default-expand-all","expand-on-click-node","render-after-expand","collapse-tags","collapse-tags-tooltip","max-collapse-tags","popper-class","node-key","style"]),R.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["outlined-tree-select__label",I.value])},e.toDisplayString(R.value),3)):e.createCommentVNode("",!0)],6)}}});var Wt=oe(qt,[["__scopeId","data-v-8403e6ea"]]);exports.echarts=he;exports.BaseCard=Qe;exports.BaseEChart=pt;exports.BaseExportButton=$t;exports.BaseTable=dt;exports.OutlinedCascader=It;exports.OutlinedDatePicker=Ot;exports.OutlinedDateTimePicker=Nt;exports.OutlinedInput=Vt;exports.OutlinedSelect=Et;exports.OutlinedTimePicker=Rt;exports.OutlinedTreeSelect=Wt;exports.downloadExportResponse=De;exports.exportExcel=xe;exports.extractFileNameFromDisposition=$e;exports.normalizeExportFileName=ve;
|