sky-ui-kit 0.1.8 → 0.1.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components.json +314 -19
- package/dist/components/AppSelect.vue.d.ts +7 -0
- package/dist/components/DefenseMapLayout.vue.d.ts +11 -2
- package/dist/components/ManagementResourceLayout.vue.d.ts +19 -0
- package/dist/components/MapBottomProcessPanel.vue.d.ts +11 -0
- package/dist/components/MapPageLayout.vue.d.ts +21 -18
- package/dist/components/MapTimeline.vue.d.ts +9 -0
- package/dist/components/MapWorkspacePanel.vue.d.ts +11 -1
- package/dist/components/ModelWorkspacePanel.vue.d.ts +11 -1
- package/dist/components/ProcessDataTable.vue.d.ts +9 -1
- package/dist/components/ProjectMenu.vue.d.ts +11 -0
- package/dist/components/WorkbenchPanel.vue.d.ts +9 -0
- package/dist/components/index.d.ts +303 -67
- package/dist/components.js +2199 -2127
- package/dist/model-workspace.css +3 -3
- package/dist/style.css +4 -4
- package/dist/utils/dimensions.d.ts +5 -0
- package/docs/AI-CHANGELOG.md +41 -2
- package/docs/AI-GUIDE.md +39 -3
- package/docs/COMPONENT-API.md +124 -10
- package/docs/CSS-THEME.md +34 -0
- package/docs/INTEGRATION.md +34 -0
- package/llms-full.txt +239 -16
- package/llms.txt +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/** Numeric dimensions are VFit design units; CSS strings pass through unchanged. */
|
|
2
|
+
export type DesignLength = number | string;
|
|
3
|
+
export type DesignSpacing = DesignLength | readonly [DesignLength, DesignLength] | readonly [DesignLength, DesignLength, DesignLength] | readonly [DesignLength, DesignLength, DesignLength, DesignLength];
|
|
4
|
+
export declare function designLength(value: DesignLength): string;
|
|
5
|
+
export declare function designSpacing(value: DesignSpacing): string;
|
package/docs/AI-CHANGELOG.md
CHANGED
|
@@ -437,8 +437,47 @@ SVG 图库从主入口移到可选 icons 入口,SvgIcon 不再自动注册;
|
|
|
437
437
|
## 2026-10-30 · HTML / Vue 双接入文档
|
|
438
438
|
|
|
439
439
|
新增独立 model-workspace.css 发布出口,原生 HTML 用 CSS 和结构类,Vue 用主题组件与公共 CSS。补齐两套完整示例、主题切换、事件绑定和部署路径说明,未构建发布。
|
|
440
|
+
|
|
441
|
+
## 2026-11-02 · 0.1.8 发布准备
|
|
442
|
+
|
|
443
|
+
- 发布当前组件源码、按需入口及模型工作区主题;HTML 使用 model-workspace.css,Vue 使用组件与 style.css。清除旧消费项目锁记录。发布状态以 npm 注册表为准。
|
|
444
|
+
|
|
445
|
+
|
|
446
|
+
|
|
447
|
+
## 2026-11-03:可配置 VFit 尺寸(源码待发布)
|
|
448
|
+
|
|
449
|
+
数字尺寸代表设计单位,由组件转换为 `calc(var(--cp-font-1, 1px) * n)`;CSS 字符串原样使用,不额外注册 VFit 或 transform。DesignSpacing 支持单值及2/3/4项数组,遵循CSS间距顺序。0是有效值。调用方传裸字符串 `"12"` 不是合法CSS长度,应使用 `:gap="12"`;`"12px"` 是固定CSS像素。
|
|
450
|
+
|
|
451
|
+
所有新增参数有默认值;下表空字符串表示使用组件现有布局/样式默认值,不是0。根style可控制组件根尺寸,内部内边距通过对应props调整,无需deep覆盖。
|
|
452
|
+
|
|
453
|
+
| 组件 | 参数与默认值 |
|
|
454
|
+
| --- | --- |
|
|
455
|
+
| MapPageLayout | 新增gap=12;已有rightPanelWidth=328、leftPanelWidth=320、edge=12等参数兼容字符串并支持数字;top/bottom/toolbar/timeline偏移默认空字符串,沿用自动避让 |
|
|
456
|
+
| DefenseMapLayout | gap=4、padding=4、toolbarGap=12、toolbarPadding=12;topOffset默认64设计单位,兼容数字/字符串 |
|
|
457
|
+
| MapWorkspacePanel | headerPadding=16、bodyPadding=16、footerPadding=[12,16]、gap=16 |
|
|
458
|
+
| ModelWorkspacePanel | headerPadding=[12,16]、bodyPadding=16、footerPadding=[12,16]、gap=12 |
|
|
459
|
+
| WorkbenchPanel | width='auto'、height='auto'、padding=0、gap=0;gap只在调用方使用flex/grid时产生间距,不强改display |
|
|
460
|
+
| ManagementResourceLayout | gap=20、padding=[0,24,20](内容区域)、introPadding=24、filterGap=20、filterPadding=[20,24]、inputWidth=260、selectWidth=160、cascaderWidth=280、responsive=false |
|
|
461
|
+
| AppSelect | width='100%'、controlHeight=''(按size取主题小/中/大高度)、controlPadding=[0,10];多选内容可增高;浮层不再设100%最小宽度,使用底层fit-input-width等配置 |
|
|
462
|
+
| ProjectMenu | width=''、itemHeight=''、itemPadding=''、padding=''(分别保留横/纵菜单已有默认值)、gap=2 |
|
|
463
|
+
| MapTimeline | padding=[10,12]、gap=9、trackHeight=88、controlHeight=30;不改变播放/时次数据API |
|
|
464
|
+
| MapBottomProcessPanel | height=320、maxHeight='42dvh'、headerPadding=[10,16]、metaPadding=[8,16,0]、gap=12 |
|
|
465
|
+
| ProcessDataTable | cellPadding=[6,10]、paginationGap=12、paginationPadding=5 |
|
|
466
|
+
|
|
467
|
+
ManagementResourceLayout默认按VFit保持结构,不在700px阈值自动切换;旧调用方如需原断点布局显式传responsive=true。这是需要在升级说明中说明的行为变化。其内容区域padding与介绍区padding分开,避免改变原默认留白。
|
|
468
|
+
|
|
469
|
+
地图布局时间轴测量改为offsetHeight,使用布局坐标而非transform后的视口像素,防止再次乘入缩放系数。UiButton/UiSelect/UiTable等基础组件继续使用底层size、width、height及主题token,无重复同义接口。旧TemplateLayout保留兼容接口,不冒充MapPageLayout别名。
|
|
470
|
+
|
|
471
|
+
示例:
|
|
472
|
+
```vue
|
|
473
|
+
<MapWorkspacePanel title="降水统计" :header-padding="[12, 16]" :body-padding="[8, 12]" :gap="8">
|
|
474
|
+
业务内容
|
|
475
|
+
</MapWorkspacePanel>
|
|
476
|
+
<MapPageLayout :right-panel-width="320" :edge="12" :gap="8" />
|
|
477
|
+
```
|
|
478
|
+
预览入口:MapPageLayout布局演示,点击“查看紧凑尺寸”比较右栏宽度、边距与面板内边距。其他组件参数与默认值可在生成API查询。当前未构建、打包、发布或浏览器验证,用户预览确认后自行发版。
|
|
440
479
|
|
|
441
|
-
## 2026-11-
|
|
480
|
+
## 2026-11-03 · 0.1.9 发布准备
|
|
442
481
|
|
|
443
|
-
-
|
|
482
|
+
- 将当前布局、面板、尺寸适配与主题调整纳入新版,重新生成 AI 文档并检查组件包。发布结果以 npm 注册表为准。
|
|
444
483
|
|
package/docs/AI-GUIDE.md
CHANGED
|
@@ -231,6 +231,39 @@ MapLayerControl 参考平台 LayerControl/LayerTreeNode,提供底图选择、
|
|
|
231
231
|
|
|
232
232
|
flat 模式按钮此前错误使用 child 类而内部图标、文字使用 parent 类,导致 active 样式不匹配。统一按钮及内容层级类,保留现有单选、多选及事件逻辑。
|
|
233
233
|
|
|
234
|
+
## 2026-11-03:可配置 VFit 尺寸(源码待发布)
|
|
235
|
+
|
|
236
|
+
数字尺寸代表设计单位,由组件转换为 `calc(var(--cp-font-1, 1px) * n)`;CSS 字符串原样使用,不额外注册 VFit 或 transform。DesignSpacing 支持单值及2/3/4项数组,遵循CSS间距顺序。0是有效值。调用方传裸字符串 `"12"` 不是合法CSS长度,应使用 `:gap="12"`;`"12px"` 是固定CSS像素。
|
|
237
|
+
|
|
238
|
+
所有新增参数有默认值;下表空字符串表示使用组件现有布局/样式默认值,不是0。根style可控制组件根尺寸,内部内边距通过对应props调整,无需deep覆盖。
|
|
239
|
+
|
|
240
|
+
| 组件 | 参数与默认值 |
|
|
241
|
+
| --- | --- |
|
|
242
|
+
| MapPageLayout | 新增gap=12;已有rightPanelWidth=328、leftPanelWidth=320、edge=12等参数兼容字符串并支持数字;top/bottom/toolbar/timeline偏移默认空字符串,沿用自动避让 |
|
|
243
|
+
| DefenseMapLayout | gap=4、padding=4、toolbarGap=12、toolbarPadding=12;topOffset默认64设计单位,兼容数字/字符串 |
|
|
244
|
+
| MapWorkspacePanel | headerPadding=16、bodyPadding=16、footerPadding=[12,16]、gap=16 |
|
|
245
|
+
| ModelWorkspacePanel | headerPadding=[12,16]、bodyPadding=16、footerPadding=[12,16]、gap=12 |
|
|
246
|
+
| WorkbenchPanel | width='auto'、height='auto'、padding=0、gap=0;gap只在调用方使用flex/grid时产生间距,不强改display |
|
|
247
|
+
| ManagementResourceLayout | gap=20、padding=[0,24,20](内容区域)、introPadding=24、filterGap=20、filterPadding=[20,24]、inputWidth=260、selectWidth=160、cascaderWidth=280、responsive=false |
|
|
248
|
+
| AppSelect | width='100%'、controlHeight=''(按size取主题小/中/大高度)、controlPadding=[0,10];多选内容可增高;浮层不再设100%最小宽度,使用底层fit-input-width等配置 |
|
|
249
|
+
| ProjectMenu | width=''、itemHeight=''、itemPadding=''、padding=''(分别保留横/纵菜单已有默认值)、gap=2 |
|
|
250
|
+
| MapTimeline | padding=[10,12]、gap=9、trackHeight=88、controlHeight=30;不改变播放/时次数据API |
|
|
251
|
+
| MapBottomProcessPanel | height=320、maxHeight='42dvh'、headerPadding=[10,16]、metaPadding=[8,16,0]、gap=12 |
|
|
252
|
+
| ProcessDataTable | cellPadding=[6,10]、paginationGap=12、paginationPadding=5 |
|
|
253
|
+
|
|
254
|
+
ManagementResourceLayout默认按VFit保持结构,不在700px阈值自动切换;旧调用方如需原断点布局显式传responsive=true。这是需要在升级说明中说明的行为变化。其内容区域padding与介绍区padding分开,避免改变原默认留白。
|
|
255
|
+
|
|
256
|
+
地图布局时间轴测量改为offsetHeight,使用布局坐标而非transform后的视口像素,防止再次乘入缩放系数。UiButton/UiSelect/UiTable等基础组件继续使用底层size、width、height及主题token,无重复同义接口。旧TemplateLayout保留兼容接口,不冒充MapPageLayout别名。
|
|
257
|
+
|
|
258
|
+
示例:
|
|
259
|
+
```vue
|
|
260
|
+
<MapWorkspacePanel title="降水统计" :header-padding="[12, 16]" :body-padding="[8, 12]" :gap="8">
|
|
261
|
+
业务内容
|
|
262
|
+
</MapWorkspacePanel>
|
|
263
|
+
<MapPageLayout :right-panel-width="320" :edge="12" :gap="8" />
|
|
264
|
+
```
|
|
265
|
+
预览入口:MapPageLayout布局演示,点击“查看紧凑尺寸”比较右栏宽度、边距与面板内边距。其他组件参数与默认值可在生成API查询。当前未构建、打包、发布或浏览器验证,用户预览确认后自行发版。
|
|
266
|
+
|
|
234
267
|
<!-- GENERATED EXAMPLES -->
|
|
235
268
|
|
|
236
269
|
### 快速开始:安装最新正式版本
|
|
@@ -974,26 +1007,29 @@ const items = [{ key: 'overview', label: '运行概览' }, { key: 'data', label:
|
|
|
974
1007
|
```vue
|
|
975
1008
|
<script setup lang="ts">
|
|
976
1009
|
import { ref } from 'vue'
|
|
977
|
-
import { MapPageLayout, DefenseMapLayout, UiButton, MapTools, WorkbenchPanel } from 'sky-ui-kit'
|
|
1010
|
+
import { MapPageLayout, DefenseMapLayout, UiButton, MapTools, WorkbenchPanel, MapWorkspacePanel } from 'sky-ui-kit'
|
|
978
1011
|
const rightOpen = ref(true)
|
|
979
1012
|
const showTimeline = ref(true)
|
|
980
1013
|
const overlap = ref(false)
|
|
1014
|
+
const compactDimensions = ref(false)
|
|
981
1015
|
</script>
|
|
982
1016
|
<template>
|
|
983
1017
|
<div class="layout-demo-controls">
|
|
1018
|
+
<UiButton @click="compactDimensions = !compactDimensions">{{ compactDimensions ? '切回默认尺寸' : '查看紧凑尺寸' }}</UiButton>
|
|
984
1019
|
<UiButton @click="rightOpen = !rightOpen">{{ rightOpen ? '收起右栏' : '展开右栏' }}</UiButton>
|
|
985
1020
|
<UiButton @click="showTimeline = !showTimeline">{{ showTimeline ? '隐藏时间轴' : '显示时间轴' }}</UiButton>
|
|
986
1021
|
<UiButton @click="overlap = !overlap">{{ overlap ? '恢复正常避让' : '模拟模块遮挡' }}</UiButton>
|
|
987
1022
|
</div>
|
|
988
1023
|
<div class="layout-demo-map" >
|
|
989
|
-
<MapPageLayout v-model:right-open="rightOpen" :timeline-right="overlap ? 'var(--map-layout-edge)' : ''">
|
|
1024
|
+
<MapPageLayout v-model:right-open="rightOpen" :gap="compactDimensions ? 6 : 12" :edge="compactDimensions ? 6 : 12" :right-panel-width="compactDimensions ? 280 : 328" :timeline-right="overlap ? 'var(--map-layout-edge)' : ''">
|
|
990
1025
|
<template #top><span>地图标题 / 查询区域</span></template>
|
|
991
1026
|
<template #toolbar><MapTools :items="[{ key: 'layers', label: '图层' }]" /><WorkbenchPanel v-if="overlap" class="layout-demo-expanded">右上展开面板<br>鼠标移入时整个工具区域置顶</WorkbenchPanel></template>
|
|
992
|
-
<template #right><
|
|
1027
|
+
<template #right><MapWorkspacePanel title="可配置面板" :header-padding="compactDimensions ? [8, 12] : 16" :body-padding="compactDimensions ? [8, 12] : 16" :gap="compactDimensions ? 8 : 16">数字为 VFit 设计尺寸;默认值无需重复传入。<template #footer>鼠标移入当前区域时置顶</template></MapWorkspacePanel></template>
|
|
993
1028
|
<template #legend><WorkbenchPanel :class="{ 'layout-demo-overlap-legend': overlap }">图例 · 鼠标移入置顶</WorkbenchPanel></template>
|
|
994
1029
|
<template v-if="showTimeline" #timeline><WorkbenchPanel class="layout-demo-timeline">时间轴 / 过程图区域 · 鼠标移入置顶</WorkbenchPanel></template>
|
|
995
1030
|
</MapPageLayout>
|
|
996
1031
|
</div>
|
|
1032
|
+
<p>尺寸参数:数字自动跟随 VFit,数组为上/右/下/左间距,CSS 字符串原样使用。例如 :body-padding="[8, 12]"、:gap="8"。</p>
|
|
997
1033
|
<h3>会商布局 · 顶部操作区 + 四个地图位置</h3>
|
|
998
1034
|
<p>以下仅展示区域,不创建地图。保持两列布局,尺寸沿用 VFit 缩放变量;四个地图位置均分剩余高度,不产生内部滚动条。</p>
|
|
999
1035
|
<div class="layout-demo-map" >
|
package/docs/COMPONENT-API.md
CHANGED
|
@@ -27,6 +27,9 @@ Slots: No declared content slots.
|
|
|
27
27
|
|
|
28
28
|
| Name | Type | Required | Default expression |
|
|
29
29
|
|---|---|---|---|
|
|
30
|
+
| width | DesignLength | false | '100%' |
|
|
31
|
+
| controlHeight | DesignLength | false | '' |
|
|
32
|
+
| controlPadding | DesignSpacing | false | () => [0, 10] |
|
|
30
33
|
| modelValue | AppSelectValue | false | undefined |
|
|
31
34
|
| options | AppSelectOption[] | false | () => [] |
|
|
32
35
|
| emptyLabel | string | false | '暂无可选项' |
|
|
@@ -41,6 +44,10 @@ Slots: No declared content slots.
|
|
|
41
44
|
Slots: No declared content slots.
|
|
42
45
|
|
|
43
46
|
```ts
|
|
47
|
+
/** Numeric dimensions are VFit design units; CSS strings pass through unchanged. */
|
|
48
|
+
export type DesignLength = number | string
|
|
49
|
+
export type DesignSpacing = DesignLength | readonly [DesignLength, DesignLength] | readonly [DesignLength, DesignLength, DesignLength] | readonly [DesignLength, DesignLength, DesignLength, DesignLength]
|
|
50
|
+
|
|
44
51
|
export type AppSelectValue = string | number | boolean | Record<string, unknown> | AppSelectValue[] | null | undefined
|
|
45
52
|
export type AppSelectOption = {
|
|
46
53
|
label: string
|
|
@@ -55,6 +62,10 @@ export type AppSelectOption = {
|
|
|
55
62
|
|
|
56
63
|
| Name | Type | Required | Default expression |
|
|
57
64
|
|---|---|---|---|
|
|
65
|
+
| padding | DesignSpacing | false | () => [10, 12] |
|
|
66
|
+
| gap | DesignLength | false | 9 |
|
|
67
|
+
| trackHeight | DesignLength | false | 88 |
|
|
68
|
+
| controlHeight | DesignLength | false | 30 |
|
|
58
69
|
| modelValue | number | false | 0 |
|
|
59
70
|
| startTime | TimelineTimeInput | false | () => new Date() |
|
|
60
71
|
| points | TimelinePoint[] | false | () => [] |
|
|
@@ -89,6 +100,10 @@ export type AppSelectOption = {
|
|
|
89
100
|
Slots: date-select
|
|
90
101
|
|
|
91
102
|
```ts
|
|
103
|
+
/** Numeric dimensions are VFit design units; CSS strings pass through unchanged. */
|
|
104
|
+
export type DesignLength = number | string
|
|
105
|
+
export type DesignSpacing = DesignLength | readonly [DesignLength, DesignLength] | readonly [DesignLength, DesignLength, DesignLength] | readonly [DesignLength, DesignLength, DesignLength, DesignLength]
|
|
106
|
+
|
|
92
107
|
type IntervalUnit = 'minute' | 'hour' | 'day' | 'month' | 'year'
|
|
93
108
|
type TimelineKind = 'observed' | 'forecast'
|
|
94
109
|
type TimelineTimeInput = string | number | Date
|
|
@@ -178,6 +193,11 @@ export type TimeRangeQuickOption = {
|
|
|
178
193
|
|
|
179
194
|
| Name | Type | Required | Default expression |
|
|
180
195
|
|---|---|---|---|
|
|
196
|
+
| width | DesignLength | false | '' |
|
|
197
|
+
| itemHeight | DesignLength | false | '' |
|
|
198
|
+
| itemPadding | DesignSpacing | false | '' |
|
|
199
|
+
| padding | DesignSpacing | false | '' |
|
|
200
|
+
| gap | DesignLength | false | 2 |
|
|
181
201
|
| direction | 'horizontal' | 'vertical' | false | 'horizontal' |
|
|
182
202
|
| active | string | false | '' |
|
|
183
203
|
| items | ProjectMenuItem[] | false | () => [] |
|
|
@@ -191,6 +211,10 @@ export type TimeRangeQuickOption = {
|
|
|
191
211
|
Slots: No declared content slots.
|
|
192
212
|
|
|
193
213
|
```ts
|
|
214
|
+
/** Numeric dimensions are VFit design units; CSS strings pass through unchanged. */
|
|
215
|
+
export type DesignLength = number | string
|
|
216
|
+
export type DesignSpacing = DesignLength | readonly [DesignLength, DesignLength] | readonly [DesignLength, DesignLength, DesignLength] | readonly [DesignLength, DesignLength, DesignLength, DesignLength]
|
|
217
|
+
|
|
194
218
|
export interface ProjectMenuItem { key: string; label: string; disabled?: boolean; icon?: Component; children?: ProjectMenuItem[] }
|
|
195
219
|
export interface ProjectMenuGroup { label: string; items: ProjectMenuItem[] }
|
|
196
220
|
```
|
|
@@ -298,6 +322,9 @@ Slots: No declared content slots.
|
|
|
298
322
|
| times | string[] | true | undefined / no declared default |
|
|
299
323
|
| series | { name: string; data: (number | null)[] }[] | true | undefined / no declared default |
|
|
300
324
|
| loading | boolean | false | undefined / no declared default |
|
|
325
|
+
| cellPadding | DesignSpacing | false | () => [6, 10] |
|
|
326
|
+
| paginationGap | DesignLength | false | 12 |
|
|
327
|
+
| paginationPadding | DesignSpacing | false | 5 |
|
|
301
328
|
|
|
302
329
|
### Events
|
|
303
330
|
|
|
@@ -305,6 +332,13 @@ No declared events.
|
|
|
305
332
|
|
|
306
333
|
Slots: No declared content slots.
|
|
307
334
|
|
|
335
|
+
```ts
|
|
336
|
+
/** Numeric dimensions are VFit design units; CSS strings pass through unchanged. */
|
|
337
|
+
export type DesignLength = number | string
|
|
338
|
+
export type DesignSpacing = DesignLength | readonly [DesignLength, DesignLength] | readonly [DesignLength, DesignLength, DesignLength] | readonly [DesignLength, DesignLength, DesignLength, DesignLength]
|
|
339
|
+
|
|
340
|
+
```
|
|
341
|
+
|
|
308
342
|
## WorkbenchShell
|
|
309
343
|
|
|
310
344
|
### Props
|
|
@@ -332,6 +366,10 @@ Slots: header, sidebar-footer, workspace, default
|
|
|
332
366
|
|---|---|---|---|
|
|
333
367
|
| as | 'section' | 'aside' | 'div' | false | 'section' |
|
|
334
368
|
| floating | boolean | false | true |
|
|
369
|
+
| width | DesignLength | false | 'auto' |
|
|
370
|
+
| height | DesignLength | false | 'auto' |
|
|
371
|
+
| padding | DesignSpacing | false | 0 |
|
|
372
|
+
| gap | DesignLength | false | 0 |
|
|
335
373
|
|
|
336
374
|
### Events
|
|
337
375
|
|
|
@@ -339,6 +377,13 @@ No declared events.
|
|
|
339
377
|
|
|
340
378
|
Slots: default
|
|
341
379
|
|
|
380
|
+
```ts
|
|
381
|
+
/** Numeric dimensions are VFit design units; CSS strings pass through unchanged. */
|
|
382
|
+
export type DesignLength = number | string
|
|
383
|
+
export type DesignSpacing = DesignLength | readonly [DesignLength, DesignLength] | readonly [DesignLength, DesignLength, DesignLength] | readonly [DesignLength, DesignLength, DesignLength, DesignLength]
|
|
384
|
+
|
|
385
|
+
```
|
|
386
|
+
|
|
342
387
|
## MetricCard
|
|
343
388
|
|
|
344
389
|
### Props
|
|
@@ -443,17 +488,18 @@ Slots: left, top, toolbar, right, legend, timeline, content, default
|
|
|
443
488
|
|
|
444
489
|
| Name | Type | Required | Default expression |
|
|
445
490
|
|---|---|---|---|
|
|
491
|
+
| gap | DesignLength | false | 12 |
|
|
446
492
|
| rightOpen | boolean | false | false |
|
|
447
493
|
| rightPanelEnabled | boolean | false | true |
|
|
448
|
-
| rightPanelWidth |
|
|
449
|
-
| leftPanelWidth |
|
|
450
|
-
| edge |
|
|
451
|
-
| topOffset |
|
|
452
|
-
| bottomOffset |
|
|
453
|
-
| toolbarTop |
|
|
454
|
-
| timelineLeft |
|
|
455
|
-
| timelineRight |
|
|
456
|
-
| timelineBottom |
|
|
494
|
+
| rightPanelWidth | DesignLength | false | 'calc(var(--cp-font-1, 1px) * 328)' |
|
|
495
|
+
| leftPanelWidth | DesignLength | false | 'calc(var(--cp-font-1, 1px) * 320)' |
|
|
496
|
+
| edge | DesignLength | false | 'calc(var(--cp-font-1, 1px) * 12)' |
|
|
497
|
+
| topOffset | DesignLength | false | '' |
|
|
498
|
+
| bottomOffset | DesignLength | false | '' |
|
|
499
|
+
| toolbarTop | DesignLength | false | '' |
|
|
500
|
+
| timelineLeft | DesignLength | false | '' |
|
|
501
|
+
| timelineRight | DesignLength | false | '' |
|
|
502
|
+
| timelineBottom | DesignLength | false | '' |
|
|
457
503
|
|
|
458
504
|
### Events
|
|
459
505
|
|
|
@@ -462,6 +508,13 @@ Slots: left, top, toolbar, right, legend, timeline, content, default
|
|
|
462
508
|
|
|
463
509
|
Slots: left, top, toolbar, right, legend, timeline, content, default
|
|
464
510
|
|
|
511
|
+
```ts
|
|
512
|
+
/** Numeric dimensions are VFit design units; CSS strings pass through unchanged. */
|
|
513
|
+
export type DesignLength = number | string
|
|
514
|
+
export type DesignSpacing = DesignLength | readonly [DesignLength, DesignLength] | readonly [DesignLength, DesignLength, DesignLength] | readonly [DesignLength, DesignLength, DesignLength, DesignLength]
|
|
515
|
+
|
|
516
|
+
```
|
|
517
|
+
|
|
465
518
|
## RainfallRankingTable
|
|
466
519
|
|
|
467
520
|
### Props
|
|
@@ -800,6 +853,15 @@ Slots: message, primary, default, footer
|
|
|
800
853
|
| title | string | false | undefined / no declared default |
|
|
801
854
|
| description | string | false | undefined / no declared default |
|
|
802
855
|
| showIntro | boolean | false | true |
|
|
856
|
+
| gap | DesignLength | false | 20 |
|
|
857
|
+
| padding | DesignSpacing | false | () => [0, 24, 20] |
|
|
858
|
+
| introPadding | DesignSpacing | false | 24 |
|
|
859
|
+
| filterGap | DesignLength | false | 20 |
|
|
860
|
+
| filterPadding | DesignSpacing | false | () => [20, 24] |
|
|
861
|
+
| inputWidth | DesignLength | false | 260 |
|
|
862
|
+
| selectWidth | DesignLength | false | 160 |
|
|
863
|
+
| cascaderWidth | DesignLength | false | 280 |
|
|
864
|
+
| responsive | boolean | false | false |
|
|
803
865
|
|
|
804
866
|
### Events
|
|
805
867
|
|
|
@@ -807,6 +869,13 @@ No declared events.
|
|
|
807
869
|
|
|
808
870
|
Slots: summary, filters, heading, actions, default
|
|
809
871
|
|
|
872
|
+
```ts
|
|
873
|
+
/** Numeric dimensions are VFit design units; CSS strings pass through unchanged. */
|
|
874
|
+
export type DesignLength = number | string
|
|
875
|
+
export type DesignSpacing = DesignLength | readonly [DesignLength, DesignLength] | readonly [DesignLength, DesignLength, DesignLength] | readonly [DesignLength, DesignLength, DesignLength, DesignLength]
|
|
876
|
+
|
|
877
|
+
```
|
|
878
|
+
|
|
810
879
|
## GlobalMapLayerDock
|
|
811
880
|
|
|
812
881
|
### Props
|
|
@@ -872,6 +941,11 @@ Slots: footer
|
|
|
872
941
|
|
|
873
942
|
| Name | Type | Required | Default expression |
|
|
874
943
|
|---|---|---|---|
|
|
944
|
+
| height | DesignLength | false | 320 |
|
|
945
|
+
| maxHeight | DesignLength | false | '42dvh' |
|
|
946
|
+
| headerPadding | DesignSpacing | false | ()=>[10,16] |
|
|
947
|
+
| metaPadding | DesignSpacing | false | ()=>[8,16,0] |
|
|
948
|
+
| gap | DesignLength | false | 12 |
|
|
875
949
|
| title | string | true | undefined / no declared default |
|
|
876
950
|
| subtitle | string | false | '' |
|
|
877
951
|
| demo | boolean | false | false |
|
|
@@ -887,6 +961,13 @@ Slots: footer
|
|
|
887
961
|
|
|
888
962
|
Slots: No declared content slots.
|
|
889
963
|
|
|
964
|
+
```ts
|
|
965
|
+
/** Numeric dimensions are VFit design units; CSS strings pass through unchanged. */
|
|
966
|
+
export type DesignLength = number | string
|
|
967
|
+
export type DesignSpacing = DesignLength | readonly [DesignLength, DesignLength] | readonly [DesignLength, DesignLength, DesignLength] | readonly [DesignLength, DesignLength, DesignLength, DesignLength]
|
|
968
|
+
|
|
969
|
+
```
|
|
970
|
+
|
|
890
971
|
## MapWorkspacePanel
|
|
891
972
|
|
|
892
973
|
### Props
|
|
@@ -895,6 +976,10 @@ Slots: No declared content slots.
|
|
|
895
976
|
|---|---|---|---|
|
|
896
977
|
| title | string | true | undefined / no declared default |
|
|
897
978
|
| subtitle | string | false | undefined / no declared default |
|
|
979
|
+
| headerPadding | DesignSpacing | false | 16 |
|
|
980
|
+
| bodyPadding | DesignSpacing | false | 16 |
|
|
981
|
+
| footerPadding | DesignSpacing | false | () => [12, 16] |
|
|
982
|
+
| gap | DesignLength | false | 16 |
|
|
898
983
|
|
|
899
984
|
### Events
|
|
900
985
|
|
|
@@ -902,6 +987,13 @@ No declared events.
|
|
|
902
987
|
|
|
903
988
|
Slots: actions, default, footer
|
|
904
989
|
|
|
990
|
+
```ts
|
|
991
|
+
/** Numeric dimensions are VFit design units; CSS strings pass through unchanged. */
|
|
992
|
+
export type DesignLength = number | string
|
|
993
|
+
export type DesignSpacing = DesignLength | readonly [DesignLength, DesignLength] | readonly [DesignLength, DesignLength, DesignLength] | readonly [DesignLength, DesignLength, DesignLength, DesignLength]
|
|
994
|
+
|
|
995
|
+
```
|
|
996
|
+
|
|
905
997
|
## NationalHydroSidebar
|
|
906
998
|
|
|
907
999
|
### Props
|
|
@@ -971,7 +1063,11 @@ Slots: No declared content slots.
|
|
|
971
1063
|
|---|---|---|---|
|
|
972
1064
|
| structured | boolean | false | false |
|
|
973
1065
|
| columns | 1 | 2 | false | 2 |
|
|
974
|
-
|
|
|
1066
|
+
| gap | DesignLength | false | 4 |
|
|
1067
|
+
| padding | DesignSpacing | false | 4 |
|
|
1068
|
+
| toolbarGap | DesignLength | false | 12 |
|
|
1069
|
+
| toolbarPadding | DesignSpacing | false | 12 |
|
|
1070
|
+
| topOffset | DesignLength | false | 'calc(var(--cp-font-1, 1px) * 64)' |
|
|
975
1071
|
|
|
976
1072
|
### Events
|
|
977
1073
|
|
|
@@ -979,6 +1075,13 @@ No declared events.
|
|
|
979
1075
|
|
|
980
1076
|
Slots: toolbar, default
|
|
981
1077
|
|
|
1078
|
+
```ts
|
|
1079
|
+
/** Numeric dimensions are VFit design units; CSS strings pass through unchanged. */
|
|
1080
|
+
export type DesignLength = number | string
|
|
1081
|
+
export type DesignSpacing = DesignLength | readonly [DesignLength, DesignLength] | readonly [DesignLength, DesignLength, DesignLength] | readonly [DesignLength, DesignLength, DesignLength, DesignLength]
|
|
1082
|
+
|
|
1083
|
+
```
|
|
1084
|
+
|
|
982
1085
|
## ModelWorkspace
|
|
983
1086
|
|
|
984
1087
|
### Props
|
|
@@ -1016,6 +1119,10 @@ Slots: title, actions
|
|
|
1016
1119
|
| Name | Type | Required | Default expression |
|
|
1017
1120
|
|---|---|---|---|
|
|
1018
1121
|
| title | string | false | undefined / no declared default |
|
|
1122
|
+
| headerPadding | DesignSpacing | false | () => [12, 16] |
|
|
1123
|
+
| bodyPadding | DesignSpacing | false | 16 |
|
|
1124
|
+
| footerPadding | DesignSpacing | false | () => [12, 16] |
|
|
1125
|
+
| gap | DesignLength | false | 12 |
|
|
1019
1126
|
|
|
1020
1127
|
### Events
|
|
1021
1128
|
|
|
@@ -1023,6 +1130,13 @@ No declared events.
|
|
|
1023
1130
|
|
|
1024
1131
|
Slots: header, actions, default, footer
|
|
1025
1132
|
|
|
1133
|
+
```ts
|
|
1134
|
+
/** Numeric dimensions are VFit design units; CSS strings pass through unchanged. */
|
|
1135
|
+
export type DesignLength = number | string
|
|
1136
|
+
export type DesignSpacing = DesignLength | readonly [DesignLength, DesignLength] | readonly [DesignLength, DesignLength, DesignLength] | readonly [DesignLength, DesignLength, DesignLength, DesignLength]
|
|
1137
|
+
|
|
1138
|
+
```
|
|
1139
|
+
|
|
1026
1140
|
## UiAffix
|
|
1027
1141
|
|
|
1028
1142
|
固钉 · 导航组件. Original: ElAffix. Import from: sky-ui-kit. [API](https://element-plus.org/zh-CN/component/affix.html). See dist/components/element-plus.d.ts.
|
package/docs/CSS-THEME.md
CHANGED
|
@@ -248,3 +248,37 @@ import { DefenseMapLayout, UiButton } from 'sky-ui-kit'
|
|
|
248
248
|
|
|
249
249
|
|
|
250
250
|
独立 model-workspace.css 面向原生 HTML,无 Vue/Element Plus 样式依赖;与 style.css 的模型主题来自同一源文件,Vue 无需重复导入。
|
|
251
|
+
|
|
252
|
+
|
|
253
|
+
## 2026-11-03:可配置 VFit 尺寸(源码待发布)
|
|
254
|
+
|
|
255
|
+
数字尺寸代表设计单位,由组件转换为 `calc(var(--cp-font-1, 1px) * n)`;CSS 字符串原样使用,不额外注册 VFit 或 transform。DesignSpacing 支持单值及2/3/4项数组,遵循CSS间距顺序。0是有效值。调用方传裸字符串 `"12"` 不是合法CSS长度,应使用 `:gap="12"`;`"12px"` 是固定CSS像素。
|
|
256
|
+
|
|
257
|
+
所有新增参数有默认值;下表空字符串表示使用组件现有布局/样式默认值,不是0。根style可控制组件根尺寸,内部内边距通过对应props调整,无需deep覆盖。
|
|
258
|
+
|
|
259
|
+
| 组件 | 参数与默认值 |
|
|
260
|
+
| --- | --- |
|
|
261
|
+
| MapPageLayout | 新增gap=12;已有rightPanelWidth=328、leftPanelWidth=320、edge=12等参数兼容字符串并支持数字;top/bottom/toolbar/timeline偏移默认空字符串,沿用自动避让 |
|
|
262
|
+
| DefenseMapLayout | gap=4、padding=4、toolbarGap=12、toolbarPadding=12;topOffset默认64设计单位,兼容数字/字符串 |
|
|
263
|
+
| MapWorkspacePanel | headerPadding=16、bodyPadding=16、footerPadding=[12,16]、gap=16 |
|
|
264
|
+
| ModelWorkspacePanel | headerPadding=[12,16]、bodyPadding=16、footerPadding=[12,16]、gap=12 |
|
|
265
|
+
| WorkbenchPanel | width='auto'、height='auto'、padding=0、gap=0;gap只在调用方使用flex/grid时产生间距,不强改display |
|
|
266
|
+
| ManagementResourceLayout | gap=20、padding=[0,24,20](内容区域)、introPadding=24、filterGap=20、filterPadding=[20,24]、inputWidth=260、selectWidth=160、cascaderWidth=280、responsive=false |
|
|
267
|
+
| AppSelect | width='100%'、controlHeight=''(按size取主题小/中/大高度)、controlPadding=[0,10];多选内容可增高;浮层不再设100%最小宽度,使用底层fit-input-width等配置 |
|
|
268
|
+
| ProjectMenu | width=''、itemHeight=''、itemPadding=''、padding=''(分别保留横/纵菜单已有默认值)、gap=2 |
|
|
269
|
+
| MapTimeline | padding=[10,12]、gap=9、trackHeight=88、controlHeight=30;不改变播放/时次数据API |
|
|
270
|
+
| MapBottomProcessPanel | height=320、maxHeight='42dvh'、headerPadding=[10,16]、metaPadding=[8,16,0]、gap=12 |
|
|
271
|
+
| ProcessDataTable | cellPadding=[6,10]、paginationGap=12、paginationPadding=5 |
|
|
272
|
+
|
|
273
|
+
ManagementResourceLayout默认按VFit保持结构,不在700px阈值自动切换;旧调用方如需原断点布局显式传responsive=true。这是需要在升级说明中说明的行为变化。其内容区域padding与介绍区padding分开,避免改变原默认留白。
|
|
274
|
+
|
|
275
|
+
地图布局时间轴测量改为offsetHeight,使用布局坐标而非transform后的视口像素,防止再次乘入缩放系数。UiButton/UiSelect/UiTable等基础组件继续使用底层size、width、height及主题token,无重复同义接口。旧TemplateLayout保留兼容接口,不冒充MapPageLayout别名。
|
|
276
|
+
|
|
277
|
+
示例:
|
|
278
|
+
```vue
|
|
279
|
+
<MapWorkspacePanel title="降水统计" :header-padding="[12, 16]" :body-padding="[8, 12]" :gap="8">
|
|
280
|
+
业务内容
|
|
281
|
+
</MapWorkspacePanel>
|
|
282
|
+
<MapPageLayout :right-panel-width="320" :edge="12" :gap="8" />
|
|
283
|
+
```
|
|
284
|
+
预览入口:MapPageLayout布局演示,点击“查看紧凑尺寸”比较右栏宽度、边距与面板内边距。其他组件参数与默认值可在生成API查询。当前未构建、打包、发布或浏览器验证,用户预览确认后自行发版。
|
package/docs/INTEGRATION.md
CHANGED
|
@@ -172,3 +172,37 @@ flat 模式按钮此前错误使用 child 类而内部图标、文字使用 pare
|
|
|
172
172
|
|
|
173
173
|
|
|
174
174
|
原生 HTML:部署包内 dist/model-workspace.css 并用 link 引入及结构类;Vue:使用 ModelWorkspace 系列组件并引入公共 style.css。完整双方案见 MODEL-WORKSPACE.md,不要将本地磁盘/node_modules 路径部署到网站。
|
|
175
|
+
|
|
176
|
+
|
|
177
|
+
## 2026-11-03:可配置 VFit 尺寸(源码待发布)
|
|
178
|
+
|
|
179
|
+
数字尺寸代表设计单位,由组件转换为 `calc(var(--cp-font-1, 1px) * n)`;CSS 字符串原样使用,不额外注册 VFit 或 transform。DesignSpacing 支持单值及2/3/4项数组,遵循CSS间距顺序。0是有效值。调用方传裸字符串 `"12"` 不是合法CSS长度,应使用 `:gap="12"`;`"12px"` 是固定CSS像素。
|
|
180
|
+
|
|
181
|
+
所有新增参数有默认值;下表空字符串表示使用组件现有布局/样式默认值,不是0。根style可控制组件根尺寸,内部内边距通过对应props调整,无需deep覆盖。
|
|
182
|
+
|
|
183
|
+
| 组件 | 参数与默认值 |
|
|
184
|
+
| --- | --- |
|
|
185
|
+
| MapPageLayout | 新增gap=12;已有rightPanelWidth=328、leftPanelWidth=320、edge=12等参数兼容字符串并支持数字;top/bottom/toolbar/timeline偏移默认空字符串,沿用自动避让 |
|
|
186
|
+
| DefenseMapLayout | gap=4、padding=4、toolbarGap=12、toolbarPadding=12;topOffset默认64设计单位,兼容数字/字符串 |
|
|
187
|
+
| MapWorkspacePanel | headerPadding=16、bodyPadding=16、footerPadding=[12,16]、gap=16 |
|
|
188
|
+
| ModelWorkspacePanel | headerPadding=[12,16]、bodyPadding=16、footerPadding=[12,16]、gap=12 |
|
|
189
|
+
| WorkbenchPanel | width='auto'、height='auto'、padding=0、gap=0;gap只在调用方使用flex/grid时产生间距,不强改display |
|
|
190
|
+
| ManagementResourceLayout | gap=20、padding=[0,24,20](内容区域)、introPadding=24、filterGap=20、filterPadding=[20,24]、inputWidth=260、selectWidth=160、cascaderWidth=280、responsive=false |
|
|
191
|
+
| AppSelect | width='100%'、controlHeight=''(按size取主题小/中/大高度)、controlPadding=[0,10];多选内容可增高;浮层不再设100%最小宽度,使用底层fit-input-width等配置 |
|
|
192
|
+
| ProjectMenu | width=''、itemHeight=''、itemPadding=''、padding=''(分别保留横/纵菜单已有默认值)、gap=2 |
|
|
193
|
+
| MapTimeline | padding=[10,12]、gap=9、trackHeight=88、controlHeight=30;不改变播放/时次数据API |
|
|
194
|
+
| MapBottomProcessPanel | height=320、maxHeight='42dvh'、headerPadding=[10,16]、metaPadding=[8,16,0]、gap=12 |
|
|
195
|
+
| ProcessDataTable | cellPadding=[6,10]、paginationGap=12、paginationPadding=5 |
|
|
196
|
+
|
|
197
|
+
ManagementResourceLayout默认按VFit保持结构,不在700px阈值自动切换;旧调用方如需原断点布局显式传responsive=true。这是需要在升级说明中说明的行为变化。其内容区域padding与介绍区padding分开,避免改变原默认留白。
|
|
198
|
+
|
|
199
|
+
地图布局时间轴测量改为offsetHeight,使用布局坐标而非transform后的视口像素,防止再次乘入缩放系数。UiButton/UiSelect/UiTable等基础组件继续使用底层size、width、height及主题token,无重复同义接口。旧TemplateLayout保留兼容接口,不冒充MapPageLayout别名。
|
|
200
|
+
|
|
201
|
+
示例:
|
|
202
|
+
```vue
|
|
203
|
+
<MapWorkspacePanel title="降水统计" :header-padding="[12, 16]" :body-padding="[8, 12]" :gap="8">
|
|
204
|
+
业务内容
|
|
205
|
+
</MapWorkspacePanel>
|
|
206
|
+
<MapPageLayout :right-panel-width="320" :edge="12" :gap="8" />
|
|
207
|
+
```
|
|
208
|
+
预览入口:MapPageLayout布局演示,点击“查看紧凑尺寸”比较右栏宽度、边距与面板内边距。其他组件参数与默认值可在生成API查询。当前未构建、打包、发布或浏览器验证,用户预览确认后自行发版。
|