@veltra/desktop 1.0.11 → 1.0.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (124) hide show
  1. package/dist/components/action/action-group.vue.d.ts +1 -1
  2. package/dist/components/action/action-group.vue_vue_type_script_setup_true_lang.js +4 -4
  3. package/dist/components/action/action.js +1 -1
  4. package/dist/components/action/action.vue.d.ts +3 -3
  5. package/dist/components/auto-complete/auto-complete.js +4 -4
  6. package/dist/components/auto-complete/auto-complete.vue.d.ts +1 -1
  7. package/dist/components/batch-edit/batch-edit-form.js +6 -6
  8. package/dist/components/batch-edit/batch-edit-list.js +8 -8
  9. package/dist/components/batch-edit/batch-edit.js +1 -1
  10. package/dist/components/batch-edit/batch-edit.vue.d.ts +2 -2
  11. package/dist/components/button/button.vue.d.ts +1 -1
  12. package/dist/components/cascade/cascade-panel-item.js +4 -4
  13. package/dist/components/cascade/cascade.js +5 -5
  14. package/dist/components/cascade/cascade.vue.d.ts +6 -6
  15. package/dist/components/cascade/use-select.js +1 -1
  16. package/dist/components/checkbox/checkbox-button.vue.d.ts +1 -1
  17. package/dist/components/collapse/collapse-item.js +122 -0
  18. package/dist/components/collapse/collapse-item.js.map +1 -0
  19. package/dist/components/collapse/collapse-item.vue.d.ts +29 -0
  20. package/dist/components/collapse/collapse.js +114 -0
  21. package/dist/components/collapse/collapse.js.map +1 -0
  22. package/dist/components/collapse/collapse.vue.d.ts +29 -0
  23. package/dist/components/collapse/di.js +6 -0
  24. package/dist/components/collapse/di.js.map +1 -0
  25. package/dist/components/collapse/index.d.ts +2 -0
  26. package/dist/components/collapse/style.d.ts +1 -0
  27. package/dist/components/collapse/style.js +1 -0
  28. package/dist/components/collapse/style2.css +144 -0
  29. package/dist/components/context-menu/context-menu-item.js +1 -1
  30. package/dist/components/context-menu/context-menu.vue.d.ts +15 -0
  31. package/dist/components/context-menu/index.d.ts +1 -0
  32. package/dist/components/date-panel/date-panel.vue.d.ts +2 -2
  33. package/dist/components/date-picker/date-picker.js +1 -1
  34. package/dist/components/date-picker/date-picker.vue.d.ts +2 -2
  35. package/dist/components/date-range-picker/date-range-picker.js +1 -1
  36. package/dist/components/date-range-picker/date-range-picker.vue.d.ts +2 -2
  37. package/dist/components/dialog/dialog.js +6 -6
  38. package/dist/components/expression-editor/components/variable-picker.js +10 -10
  39. package/dist/components/file-picker/file-picker.vue.d.ts +1 -1
  40. package/dist/components/file-viewer/file-viewer.js +10 -10
  41. package/dist/components/form/dynamic-form-model.js +1 -1
  42. package/dist/components/form/form-model.js +1 -1
  43. package/dist/components/form/form.vue_vue_type_script_setup_true_lang.js +1 -1
  44. package/dist/components/form/use-node-interceptor.js +1 -1
  45. package/dist/components/form-item/form-item.vue_vue_type_script_setup_true_lang.js +4 -4
  46. package/dist/components/form-item/form-item.vue_vue_type_script_setup_true_lang.js.map +1 -1
  47. package/dist/components/form-item/helper.js +1 -1
  48. package/dist/components/index.d.ts +89 -86
  49. package/dist/components/index.js +202 -0
  50. package/dist/components/index.js.map +1 -0
  51. package/dist/components/input/input.vue.d.ts +3 -3
  52. package/dist/components/menu/menu-sub-collapsed.js +6 -6
  53. package/dist/components/multi-select/multi-select.js +13 -13
  54. package/dist/components/multi-select/multi-select.vue.d.ts +3 -3
  55. package/dist/components/multi-tree-select/multi-tree-select.js +13 -13
  56. package/dist/components/multi-tree-select/multi-tree-select.vue.d.ts +6 -6
  57. package/dist/components/notification/notification.vue.d.ts +1 -1
  58. package/dist/components/number/number.js +1 -1
  59. package/dist/components/number-input/number-input.js +2 -2
  60. package/dist/components/number-input/number-input.vue.d.ts +1 -1
  61. package/dist/components/number-range-input/number-range-input.js +1 -1
  62. package/dist/components/number-range-input/number-range-input.vue.d.ts +2 -2
  63. package/dist/components/paginator/paginator.js +2 -2
  64. package/dist/components/palette/palette-color-switch.js +1 -1
  65. package/dist/components/password-input/password-input.js +1 -1
  66. package/dist/components/password-input/password-input.vue.d.ts +1 -1
  67. package/dist/components/pop-confirm/pop-confirm.js +5 -5
  68. package/dist/components/pop-confirm/pop-confirm.vue.d.ts +1 -1
  69. package/dist/components/progress/progress.js +1 -1
  70. package/dist/components/progress-nodes/progress-nodes.js +1 -1
  71. package/dist/components/rich-text-editor/rich-text-editor.vue.d.ts +1 -1
  72. package/dist/components/scroll/scroll.js +1 -1
  73. package/dist/components/scroll/scroll.vue.d.ts +2 -2
  74. package/dist/components/select/select.js +11 -11
  75. package/dist/components/select/select.vue.d.ts +2 -2
  76. package/dist/components/steps/steps.js +1 -1
  77. package/dist/components/steps/steps.vue.d.ts +1 -1
  78. package/dist/components/table/table-body.js +1 -1
  79. package/dist/components/table/table-foot.js +1 -1
  80. package/dist/components/table/table.vue.d.ts +2 -2
  81. package/dist/components/table/use-columns.js +1 -1
  82. package/dist/components/table/use-rows.js +1 -1
  83. package/dist/components/table/use-table.js +1 -1
  84. package/dist/components/tabs/tabs-horizontal.vue.d.ts +4 -4
  85. package/dist/components/tabs/tabs-vertical.vue.d.ts +3 -3
  86. package/dist/components/tabs/tabs.vue.d.ts +4 -4
  87. package/dist/components/textarea/textarea.vue.d.ts +3 -3
  88. package/dist/components/theme/theme.js +7 -7
  89. package/dist/components/tip/tip.vue.d.ts +1 -1
  90. package/dist/components/tree/tree-node.js +3 -3
  91. package/dist/components/tree/tree.vue.d.ts +6 -6
  92. package/dist/components/tree-select/tree-select.js +5 -5
  93. package/dist/components/tree-select/tree-select.vue.d.ts +5 -5
  94. package/dist/components/watermark/watermark.js +1 -1
  95. package/dist/components/watermark/watermark.vue.d.ts +1 -1
  96. package/dist/index.d.ts +86 -82
  97. package/dist/index.js +85 -82
  98. package/dist/install.d.ts +8 -0
  99. package/dist/install.js +20 -0
  100. package/dist/install.js.map +1 -0
  101. package/dist/style.d.ts +1 -0
  102. package/dist/style.js +73 -0
  103. package/dist/types/calendar.d.ts +1 -1
  104. package/dist/types/cascade.d.ts +1 -1
  105. package/dist/types/collapse.d.ts +68 -0
  106. package/dist/types/date-panel.d.ts +1 -1
  107. package/dist/types/date-picker.d.ts +1 -1
  108. package/dist/types/date-range-picker.d.ts +1 -1
  109. package/dist/types/index.d.ts +2 -1
  110. package/dist/types/table.d.ts +1 -1
  111. package/dist/types/tree.d.ts +1 -1
  112. package/package.json +25 -11
  113. package/src/components/collapse/collapse-item.vue +138 -0
  114. package/src/components/collapse/collapse.vue +122 -0
  115. package/src/components/collapse/di.ts +15 -0
  116. package/src/components/collapse/index.ts +2 -0
  117. package/src/components/collapse/style.scss +186 -0
  118. package/src/components/collapse/style.ts +1 -0
  119. package/src/components/context-menu/index.ts +2 -0
  120. package/src/components/index.ts +73 -71
  121. package/src/install.ts +27 -0
  122. package/src/style.ts +73 -0
  123. package/src/types/collapse.ts +78 -0
  124. package/src/types/index.ts +1 -0
@@ -0,0 +1,29 @@
1
+ import { CollapseIconPosition, CollapseModelValue, CollapseProps, _CollapseExposed } from "../../types/collapse.js";
2
+ import * as _$vue from "vue";
3
+
4
+ //#region src/components/collapse/collapse.vue.d.ts
5
+ declare var __VLS_1: {};
6
+ type __VLS_Slots = {} & {
7
+ default?: (props: typeof __VLS_1) => any;
8
+ };
9
+ declare const __VLS_base: _$vue.DefineComponent<CollapseProps, _CollapseExposed, {}, {}, {}, _$vue.ComponentOptionsMixin, _$vue.ComponentOptionsMixin, {} & {
10
+ "update:modelValue": (value: CollapseModelValue) => any;
11
+ change: (value: CollapseModelValue) => any;
12
+ }, string, _$vue.PublicProps, Readonly<CollapseProps> & Readonly<{
13
+ "onUpdate:modelValue"?: ((value: CollapseModelValue) => any) | undefined;
14
+ onChange?: ((value: CollapseModelValue) => any) | undefined;
15
+ }>, {
16
+ accordion: boolean;
17
+ bordered: boolean;
18
+ iconPosition: CollapseIconPosition;
19
+ }, {}, {}, {}, string, _$vue.ComponentProvideOptions, false, {}, any>;
20
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
21
+ declare const _default: typeof __VLS_export;
22
+ type __VLS_WithSlots<T, S> = T & {
23
+ new (): {
24
+ $slots: S;
25
+ };
26
+ };
27
+ //#endregion
28
+ export { _default };
29
+ //# sourceMappingURL=collapse.vue.d.ts.map
@@ -0,0 +1,6 @@
1
+ //#region src/components/collapse/di.ts
2
+ const CollapseDIKey = Symbol("Collapse");
3
+ //#endregion
4
+ export { CollapseDIKey };
5
+
6
+ //# sourceMappingURL=di.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"di.js","names":[],"sources":["../../../src/components/collapse/di.ts"],"sourcesContent":["import type { BEM, ComponentSize } from '@veltra/utils'\nimport type { Component, ComputedRef, InjectionKey } from 'vue'\n\nimport type { CollapseIconPosition, CollapseValue } from '../../types'\n\nexport interface CollapseContext {\n cls: BEM<'collapse'>\n size: ComputedRef<ComponentSize>\n iconPosition: ComputedRef<CollapseIconPosition>\n expandIcon: ComputedRef<Component | undefined>\n activeValues: ComputedRef<CollapseValue[]>\n toggle: (value: CollapseValue) => void\n}\n\nexport const CollapseDIKey: InjectionKey<CollapseContext> = Symbol('Collapse')\n"],"mappings":";AAcA,MAAa,gBAA+C,OAAO,WAAW"}
@@ -0,0 +1,2 @@
1
+ import { _default } from "./collapse.vue.js";
2
+ import { _default as _default$1 } from "./collapse-item.vue.js";
@@ -0,0 +1 @@
1
+ export { };
@@ -0,0 +1 @@
1
+ import "./style2.css";
@@ -0,0 +1,144 @@
1
+ @charset "UTF-8";
2
+ /** flex布局 */
3
+ /**
4
+ * 设置css变量
5
+ * 参数1:变量前缀
6
+ * 参数2: 一个由值组成的列表或者由key, value组成的map
7
+ * css-var(height, (
8
+ * large: 40px
9
+ * default: 32px
10
+ * small: 24px
11
+ * ))
12
+ * 生成的css变量:
13
+ * --u-height-large: 40px;
14
+ * --u-height-default: 32px;
15
+ * --u-height-small: 24px;
16
+ */
17
+ /** 暗色:data-theme 与系统偏好,与 UITheme.injectBuiltInThemes 选择器策略一致 */
18
+ .u-collapse {
19
+ width: 100%;
20
+ font-size: var(--u-font-size-main-default);
21
+ color: var(--u-text-color-main);
22
+ }
23
+ .u-collapse.is-bordered {
24
+ border: 1px solid var(--u-border-color);
25
+ border-radius: calc(var(--u-radius-large) + 2px);
26
+ background-color: var(--u-bg-color-top);
27
+ box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04), 0 1px 3px rgba(15, 23, 42, 0.04);
28
+ overflow: hidden;
29
+ }
30
+ .u-collapse.is-bordered__item:not(:first-child) {
31
+ border-top: 1px solid color-mix(in srgb, var(--u-border-color) 60%, transparent);
32
+ }
33
+ .u-collapse__item.is-disabled {
34
+ opacity: 0.55;
35
+ }
36
+ .u-collapse__header {
37
+ position: relative;
38
+ display: flex;
39
+ align-items: center;
40
+ gap: 10px;
41
+ cursor: pointer;
42
+ font-weight: 500;
43
+ letter-spacing: 0.01em;
44
+ color: var(--u-text-color-title);
45
+ user-select: none;
46
+ outline: none;
47
+ transition: color 0.18s cubic-bezier(0.4, 0, 0.2, 1), background-color 0.18s cubic-bezier(0.4, 0, 0.2, 1);
48
+ }
49
+ .u-collapse__header:hover:not(.is-disabled) {
50
+ background-color: var(--u-bg-color-hover);
51
+ }
52
+ .u-collapse__header:focus-visible {
53
+ box-shadow: inset 0 0 0 2px var(--u-color-primary);
54
+ }
55
+ .u-collapse__header.is-disabled {
56
+ cursor: not-allowed;
57
+ color: var(--u-text-color-placeholder);
58
+ }
59
+ .u-collapse__header.is-disabled:hover {
60
+ background-color: transparent;
61
+ color: var(--u-text-color-placeholder);
62
+ }
63
+ .u-collapse__header.is-active {
64
+ font-weight: 600;
65
+ }
66
+ .u-collapse__header.is-active .u-collapse__icon {
67
+ transform: rotate(90deg);
68
+ color: var(--u-text-color-second);
69
+ }
70
+ .u-collapse__title {
71
+ flex: 1 1 auto;
72
+ min-width: 0;
73
+ line-height: 1.5;
74
+ }
75
+ .u-collapse__icon {
76
+ display: inline-flex;
77
+ align-items: center;
78
+ justify-content: center;
79
+ flex: 0 0 auto;
80
+ color: var(--u-text-color-placeholder);
81
+ transition: transform 0.24s cubic-bezier(0.4, 0, 0.2, 1), color 0.18s cubic-bezier(0.4, 0, 0.2, 1);
82
+ will-change: transform;
83
+ }
84
+ .u-collapse__content-wrapper {
85
+ overflow: hidden;
86
+ height: 0;
87
+ transition: height 0.24s cubic-bezier(0.4, 0, 0.2, 1);
88
+ }
89
+ .u-collapse__content {
90
+ color: var(--u-text-color-main);
91
+ line-height: 1.7;
92
+ }
93
+ .u-collapse--small {
94
+ font-size: var(--u-font-size-main-small);
95
+ }
96
+ .u-collapse--small .u-collapse__header {
97
+ padding: 10px 12px;
98
+ font-size: var(--u-font-size-title-small);
99
+ }
100
+ .u-collapse--small .u-collapse__content {
101
+ font-size: var(--u-font-size-main-small);
102
+ padding: 0 12px 10px;
103
+ }
104
+ .u-collapse--default {
105
+ font-size: var(--u-font-size-main-default);
106
+ }
107
+ .u-collapse--default .u-collapse__header {
108
+ padding: 14px 16px;
109
+ font-size: var(--u-font-size-title-default);
110
+ }
111
+ .u-collapse--default .u-collapse__content {
112
+ font-size: var(--u-font-size-main-default);
113
+ padding: 0 16px 14px;
114
+ }
115
+ .u-collapse--large {
116
+ font-size: var(--u-font-size-main-large);
117
+ }
118
+ .u-collapse--large .u-collapse__header {
119
+ padding: 18px 20px;
120
+ font-size: var(--u-font-size-title-large);
121
+ }
122
+ .u-collapse--large .u-collapse__content {
123
+ font-size: var(--u-font-size-main-large);
124
+ padding: 0 20px 18px;
125
+ }
126
+ .u-collapse:not(.is-bordered) {
127
+ background-color: transparent;
128
+ }
129
+ .u-collapse:not(.is-bordered) .u-collapse__item {
130
+ border-radius: calc(var(--u-radius-default) + 2px);
131
+ transition: background-color 0.18s cubic-bezier(0.4, 0, 0.2, 1);
132
+ }
133
+ .u-collapse:not(.is-bordered) .u-collapse__item + .u-collapse__item {
134
+ margin-top: 4px;
135
+ }
136
+ .u-collapse:not(.is-bordered) .u-collapse__item:hover:not(.is-disabled) {
137
+ background-color: var(--u-bg-color-hover);
138
+ }
139
+ .u-collapse:not(.is-bordered) .u-collapse__header {
140
+ border-radius: inherit;
141
+ }
142
+ .u-collapse:not(.is-bordered) .u-collapse__header:hover:not(.is-disabled) {
143
+ background-color: transparent;
144
+ }
@@ -2,8 +2,8 @@ import _sfc_main$1 from "../icon/icon.js";
2
2
  import { ContextMenuDIKey } from "./di.js";
3
3
  import { Fragment, computed, createBlock, createElementBlock, createElementVNode, createVNode, defineComponent, inject, normalizeClass, openBlock, resolveDynamicComponent, shallowRef, toDisplayString, unref, withCtx, withDirectives } from "vue";
4
4
  import { bem } from "@veltra/utils";
5
- import { vRipple } from "@veltra/directives";
6
5
  import { Loading } from "@veltra/icons/normal";
6
+ import { vRipple } from "@veltra/directives";
7
7
  //#region src/components/context-menu/context-menu-item.vue
8
8
  const _sfc_main = /* @__PURE__ */ defineComponent({
9
9
  name: "ContextMenuItem",
@@ -0,0 +1,15 @@
1
+ import { ContextMenuProps } from "../../types/context-menu.js";
2
+ import * as _$vue from "vue";
3
+
4
+ //#region src/components/context-menu/context-menu.vue.d.ts
5
+ declare const __VLS_export: _$vue.DefineComponent<ContextMenuProps, {}, {}, {}, {}, _$vue.ComponentOptionsMixin, _$vue.ComponentOptionsMixin, {} & {
6
+ destroy: () => any;
7
+ }, string, _$vue.PublicProps, Readonly<ContextMenuProps> & Readonly<{
8
+ onDestroy?: (() => any) | undefined;
9
+ }>, {
10
+ width: number | string;
11
+ }, {}, {}, {}, string, _$vue.ComponentProvideOptions, false, {}, any>;
12
+ declare const _default: typeof __VLS_export;
13
+ //#endregion
14
+ export { _default };
15
+ //# sourceMappingURL=context-menu.vue.d.ts.map
@@ -1 +1,2 @@
1
+ import { _default } from "./context-menu.vue.js";
1
2
  import { contextmenu } from "./api.js";
@@ -1,7 +1,7 @@
1
1
  import { DatePanelProps } from "../../types/date-panel.js";
2
2
  import * as _$vue from "vue";
3
- import * as _$_cat_kit_core0 from "@cat-kit/core";
4
3
  import * as _$_veltra_utils0 from "@veltra/utils";
4
+ import * as _$_cat_kit_core0 from "@cat-kit/core";
5
5
 
6
6
  //#region src/components/date-panel/date-panel.vue.d.ts
7
7
  declare const __VLS_export: _$vue.DefineComponent<DatePanelProps, {}, {}, {}, {}, _$vue.ComponentOptionsMixin, _$vue.ComponentOptionsMixin, {} & {
@@ -11,8 +11,8 @@ declare const __VLS_export: _$vue.DefineComponent<DatePanelProps, {}, {}, {}, {}
11
11
  "onSelect:range-date"?: ((rangeDate?: [_$_cat_kit_core0.Dater, _$_cat_kit_core0.Dater] | undefined) => any) | undefined;
12
12
  "onSelect:date"?: ((date: _$_cat_kit_core0.Dater) => any) | undefined;
13
13
  }>, {
14
- type: "date" | "month" | "year";
15
14
  size: _$_veltra_utils0.ComponentSize;
15
+ type: "date" | "month" | "year";
16
16
  }, {}, {}, {}, string, _$vue.ComponentProvideOptions, false, {}, any>;
17
17
  declare const _default: typeof __VLS_export;
18
18
  //#endregion
@@ -3,9 +3,9 @@ import _sfc_main$2 from "../dropdown/dropdown.js";
3
3
  import input_default from "../input/input.js";
4
4
  import _sfc_main$3 from "../date-panel/date-panel.js";
5
5
  import { Fragment, computed, createBlock, createElementBlock, createTextVNode, createVNode, defineComponent, normalizeClass, openBlock, shallowRef, toDisplayString, unref, watch, withCtx } from "vue";
6
- import { date } from "@cat-kit/core";
7
6
  import { FORM_EMPTY_CONTENT, bem } from "@veltra/utils";
8
7
  import { useFormComponent, useFormFallbackProps, useUserAction } from "@veltra/compositions";
8
+ import { date } from "@cat-kit/core";
9
9
  import { Calendar } from "@veltra/icons/normal";
10
10
  //#region src/components/date-picker/date-picker.vue
11
11
  const _sfc_main = /* @__PURE__ */ defineComponent({
@@ -7,11 +7,11 @@ declare const __VLS_export: _$vue.DefineComponent<DatePickerProps, {}, {}, {}, {
7
7
  }, string, _$vue.PublicProps, Readonly<DatePickerProps> & Readonly<{
8
8
  "onUpdate:modelValue"?: ((value?: string | undefined) => any) | undefined;
9
9
  }>, {
10
- type: "date" | "month" | "year";
11
10
  disabled: boolean;
11
+ readonly: boolean;
12
+ type: "date" | "month" | "year";
12
13
  placeholder: string;
13
14
  clearable: boolean;
14
- readonly: boolean;
15
15
  }, {}, {}, {}, string, _$vue.ComponentProvideOptions, false, {}, any>;
16
16
  declare const _default: typeof __VLS_export;
17
17
  //#endregion
@@ -2,9 +2,9 @@ import _sfc_main$1 from "../icon/icon.js";
2
2
  import _sfc_main$2 from "../dropdown/dropdown.js";
3
3
  import _sfc_main$3 from "../date-panel/date-panel.js";
4
4
  import { Fragment, Transition, computed, createBlock, createElementBlock, createElementVNode, createTextVNode, createVNode, defineComponent, normalizeClass, openBlock, shallowRef, toDisplayString, unref, watch, withCtx, withModifiers } from "vue";
5
- import { date } from "@cat-kit/core";
6
5
  import { FORM_EMPTY_CONTENT, bem } from "@veltra/utils";
7
6
  import { useFormComponent, useFormFallbackProps, useUserAction } from "@veltra/compositions";
7
+ import { date } from "@cat-kit/core";
8
8
  import { Calendar, Close } from "@veltra/icons/normal";
9
9
  //#region src/components/date-range-picker/date-range-picker.vue
10
10
  const _hoisted_1 = ["value", "placeholder"];
@@ -7,11 +7,11 @@ declare const __VLS_export: _$vue.DefineComponent<DateRangePickerProps, {}, {},
7
7
  }, string, _$vue.PublicProps, Readonly<DateRangePickerProps> & Readonly<{
8
8
  "onUpdate:modelValue"?: ((value?: [string, string] | undefined) => any) | undefined;
9
9
  }>, {
10
- type: "date" | "month" | "year";
11
10
  disabled: boolean;
11
+ readonly: boolean;
12
+ type: "date" | "month" | "year";
12
13
  placeholder: [string, string];
13
14
  clearable: boolean;
14
- readonly: boolean;
15
15
  }, {}, {}, {}, string, _$vue.ComponentProvideOptions, false, {}, any>;
16
16
  declare const _default: typeof __VLS_export;
17
17
  //#endregion
@@ -1,6 +1,6 @@
1
- import _sfc_main$1 from "../icon/icon.js";
1
+ import _sfc_main$1 from "../scroll/scroll.js";
2
+ import _sfc_main$2 from "../icon/icon.js";
2
3
  import NodeRender from "../node-render/node-render.js";
3
- import _sfc_main$2 from "../scroll/scroll.js";
4
4
  import { DialogDIKey } from "./di.js";
5
5
  import { useMaximum } from "./use-maximum.js";
6
6
  import { Fragment, Teleport, Transition, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createTextVNode, createVNode, defineComponent, guardReactiveProps, mergeModels, mergeProps, nextTick, normalizeClass, normalizeProps, openBlock, provide, renderSlot, shallowRef, toDisplayString, unref, useModel, useSlots, vShow, watch, withCtx, withDirectives, withKeys, withModifiers } from "vue";
@@ -164,7 +164,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
164
164
  }, [renderSlot(_ctx.$slots, "header", {}, () => [createTextVNode(toDisplayString(__props.header || __props.title), 1)])], 34), createElementVNode("div", {
165
165
  class: normalizeClass(unref(cls).e("buttons")),
166
166
  onMousedown: _cache[3] || (_cache[3] = withModifiers(() => {}, ["stop"]))
167
- }, [unref(maximized) ? (openBlock(), createBlock(unref(_sfc_main$1), {
167
+ }, [unref(maximized) ? (openBlock(), createBlock(unref(_sfc_main$2), {
168
168
  key: 0,
169
169
  class: normalizeClass(unref(cls).e("btn-recover")),
170
170
  onClick: _cache[1] || (_cache[1] = ($event) => unref(toggleMaximize)(false)),
@@ -172,7 +172,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
172
172
  }, {
173
173
  default: withCtx(() => [createVNode(unref(Recover))]),
174
174
  _: 1
175
- }, 8, ["class"])) : (openBlock(), createBlock(unref(_sfc_main$1), {
175
+ }, 8, ["class"])) : (openBlock(), createBlock(unref(_sfc_main$2), {
176
176
  key: 1,
177
177
  class: normalizeClass(unref(cls).e("btn-maximize")),
178
178
  onClick: _cache[2] || (_cache[2] = ($event) => unref(toggleMaximize)(true)),
@@ -180,7 +180,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
180
180
  }, {
181
181
  default: withCtx(() => [createVNode(unref(Maximum))]),
182
182
  _: 1
183
- }, 8, ["class"])), createVNode(unref(_sfc_main$1), {
183
+ }, 8, ["class"])), createVNode(unref(_sfc_main$2), {
184
184
  class: normalizeClass(unref(cls).e("btn-close")),
185
185
  onClick: close,
186
186
  title: "关闭"
@@ -188,7 +188,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
188
188
  default: withCtx(() => [createVNode(unref(Close))]),
189
189
  _: 1
190
190
  }, 8, ["class"])], 34)], 544),
191
- createVNode(unref(_sfc_main$2), {
191
+ createVNode(unref(_sfc_main$1), {
192
192
  tag: "section",
193
193
  class: normalizeClass(unref(cls).e("body")),
194
194
  ref_key: "bodyRef",
@@ -1,8 +1,8 @@
1
- import _sfc_main$1 from "../../icon/icon.js";
2
- import _sfc_main$2 from "../../tip/tip.js";
1
+ import _sfc_main$1 from "../../scroll/scroll.js";
2
+ import _sfc_main$2 from "../../icon/icon.js";
3
+ import _sfc_main$3 from "../../empty/empty.js";
3
4
  import input_default from "../../input/input.js";
4
- import _sfc_main$3 from "../../scroll/scroll.js";
5
- import _sfc_main$4 from "../../empty/empty.js";
5
+ import _sfc_main$4 from "../../tip/tip.js";
6
6
  import { ExpressionEditorDIKey } from "../di.js";
7
7
  import { Fragment, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createVNode, defineComponent, inject, normalizeClass, onBeforeUnmount, onMounted, openBlock, ref, renderList, toDisplayString, unref, watch, withCtx } from "vue";
8
8
  import { bem } from "@veltra/utils";
@@ -150,7 +150,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
150
150
  props.registerPickerKeyHandler?.(null);
151
151
  });
152
152
  return (_ctx, _cache) => {
153
- return openBlock(), createBlock(unref(_sfc_main$2), {
153
+ return openBlock(), createBlock(unref(_sfc_main$4), {
154
154
  "hide-arrow": "",
155
155
  alignment: "start",
156
156
  direction: "bottom",
@@ -171,7 +171,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
171
171
  clearable: "",
172
172
  onInput: handleSearch
173
173
  }, {
174
- suffix: withCtx(() => [createVNode(unref(_sfc_main$1), null, {
174
+ suffix: withCtx(() => [createVNode(unref(_sfc_main$2), null, {
175
175
  default: withCtx(() => [createVNode(unref(Search))]),
176
176
  _: 1
177
177
  })]),
@@ -188,7 +188,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
188
188
  }, [createElementVNode("span", {
189
189
  class: normalizeClass([unref(cls).e("breadcrumb-link"), { [unref(cls).e("breadcrumb-link--active")]: index === breadcrumbs.value.length - 1 }]),
190
190
  onClick: ($event) => navigateToBreadcrumb(index)
191
- }, toDisplayString(crumb.label), 11, _hoisted_1), index < breadcrumbs.value.length - 1 ? (openBlock(), createBlock(unref(_sfc_main$1), {
191
+ }, toDisplayString(crumb.label), 11, _hoisted_1), index < breadcrumbs.value.length - 1 ? (openBlock(), createBlock(unref(_sfc_main$2), {
192
192
  key: 0,
193
193
  class: normalizeClass(unref(cls).e("breadcrumb-separator"))
194
194
  }, {
@@ -200,7 +200,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
200
200
  currentList.value.length ? (openBlock(), createElementBlock("div", {
201
201
  key: 2,
202
202
  class: normalizeClass(unref(cls).e("panel"))
203
- }, [createVNode(unref(_sfc_main$3), {
203
+ }, [createVNode(unref(_sfc_main$1), {
204
204
  tag: "ul",
205
205
  class: normalizeClass(unref(cls).e("panel-list")),
206
206
  "content-class": unref(cls).e("panel-content")
@@ -211,7 +211,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
211
211
  class: normalizeClass(getItemCls(item, idx)),
212
212
  onClick: ($event) => handleItemClick(item),
213
213
  onMouseenter: ($event) => activeIndex.value = idx
214
- }, [createElementVNode("span", { class: normalizeClass(unref(cls).e("item-label")) }, toDisplayString(item.label), 3), item.children?.length ? (openBlock(), createBlock(unref(_sfc_main$1), {
214
+ }, [createElementVNode("span", { class: normalizeClass(unref(cls).e("item-label")) }, toDisplayString(item.label), 3), item.children?.length ? (openBlock(), createBlock(unref(_sfc_main$2), {
215
215
  key: 0,
216
216
  class: normalizeClass(unref(cls).e("item-expand"))
217
217
  }, {
@@ -220,7 +220,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
220
220
  }, 8, ["class"])) : createCommentVNode("v-if", true)], 42, _hoisted_2);
221
221
  }), 128))]),
222
222
  _: 1
223
- }, 8, ["class", "content-class"])], 2)) : (openBlock(), createElementBlock(Fragment, { key: 3 }, [createCommentVNode(" 空状态 "), createElementVNode("div", { class: normalizeClass(unref(cls).e("empty")) }, [createVNode(unref(_sfc_main$4), { description: "暂无可用变量" })], 2)], 2112))
223
+ }, 8, ["class", "content-class"])], 2)) : (openBlock(), createElementBlock(Fragment, { key: 3 }, [createCommentVNode(" 空状态 "), createElementVNode("div", { class: normalizeClass(unref(cls).e("empty")) }, [createVNode(unref(_sfc_main$3), { description: "暂无可用变量" })], 2)], 2112))
224
224
  ]),
225
225
  _: 1
226
226
  }, 8, ["trigger-dom", "visible"]);
@@ -13,8 +13,8 @@ declare const __VLS_base: _$vue.DefineComponent<UploaderProps, {}, {}, {}, {}, _
13
13
  }, string, _$vue.PublicProps, Readonly<UploaderProps> & Readonly<{
14
14
  onPick?: ((files: File[]) => any) | undefined;
15
15
  }>, {
16
- multiple: boolean;
17
16
  tag: string;
17
+ multiple: boolean;
18
18
  }, {}, {}, {}, string, _$vue.ComponentProvideOptions, false, {}, any>;
19
19
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
20
20
  declare const _default: typeof __VLS_export;
@@ -1,5 +1,5 @@
1
- import _sfc_main$1 from "../icon/icon.js";
2
- import _sfc_main$2 from "../scroll/scroll.js";
1
+ import _sfc_main$1 from "../scroll/scroll.js";
2
+ import _sfc_main$2 from "../icon/icon.js";
3
3
  import _sfc_main$3 from "../empty/empty.js";
4
4
  import { FILE_VIEWER_KIND_LABEL, downloadFile, formatBytes, inferKind } from "./helper.js";
5
5
  import { Fragment, Teleport, Transition, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createVNode, defineAsyncComponent, defineComponent, mergeModels, nextTick, normalizeClass, normalizeStyle, onBeforeUnmount, openBlock, ref, renderList, resolveDynamicComponent, shallowRef, toDisplayString, unref, useModel, watch, withCtx, withModifiers } from "vue";
@@ -296,7 +296,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
296
296
  key: 0,
297
297
  class: normalizeClass(unref(cls).e("sidebar")),
298
298
  style: normalizeStyle({ width: sidebarWidthCss.value })
299
- }, [createElementVNode("header", { class: normalizeClass(unref(cls).e("sidebar-head")) }, [createElementVNode("span", { class: normalizeClass(unref(cls).e("sidebar-title")) }, "文件", 2), createElementVNode("span", { class: normalizeClass(unref(cls).e("sidebar-count")) }, toDisplayString(normalizedFiles.value.length), 3)], 2), createVNode(unref(_sfc_main$2), {
299
+ }, [createElementVNode("header", { class: normalizeClass(unref(cls).e("sidebar-head")) }, [createElementVNode("span", { class: normalizeClass(unref(cls).e("sidebar-title")) }, "文件", 2), createElementVNode("span", { class: normalizeClass(unref(cls).e("sidebar-count")) }, toDisplayString(normalizedFiles.value.length), 3)], 2), createVNode(unref(_sfc_main$1), {
300
300
  tag: "ul",
301
301
  class: normalizeClass(unref(cls).e("list"))
302
302
  }, {
@@ -335,7 +335,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
335
335
  "aria-label": "上一个",
336
336
  title: "上一个",
337
337
  onClick: prev
338
- }, [createVNode(unref(_sfc_main$1), { size: 15 }, {
338
+ }, [createVNode(unref(_sfc_main$2), { size: 15 }, {
339
339
  default: withCtx(() => [createVNode(unref(ArrowLeft))]),
340
340
  _: 1
341
341
  })], 10, _hoisted_6), createElementVNode("button", {
@@ -345,7 +345,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
345
345
  "aria-label": "下一个",
346
346
  title: "下一个",
347
347
  onClick: next
348
- }, [createVNode(unref(_sfc_main$1), { size: 15 }, {
348
+ }, [createVNode(unref(_sfc_main$2), { size: 15 }, {
349
349
  default: withCtx(() => [createVNode(unref(ArrowRight))]),
350
350
  _: 1
351
351
  })], 10, _hoisted_7)], 2),
@@ -360,7 +360,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
360
360
  "aria-label": "缩小",
361
361
  title: "缩小",
362
362
  onClick: zoomOut
363
- }, [createVNode(unref(_sfc_main$1), { size: 15 }, {
363
+ }, [createVNode(unref(_sfc_main$2), { size: 15 }, {
364
364
  default: withCtx(() => [createVNode(unref(ZoomOut))]),
365
365
  _: 1
366
366
  })], 10, _hoisted_8),
@@ -372,7 +372,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
372
372
  "aria-label": "放大",
373
373
  title: "放大",
374
374
  onClick: zoomIn
375
- }, [createVNode(unref(_sfc_main$1), { size: 15 }, {
375
+ }, [createVNode(unref(_sfc_main$2), { size: 15 }, {
376
376
  default: withCtx(() => [createVNode(unref(ZoomIn))]),
377
377
  _: 1
378
378
  })], 10, _hoisted_9),
@@ -383,7 +383,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
383
383
  "aria-label": "重置视图",
384
384
  title: "重置视图",
385
385
  onClick: resetTransform
386
- }, [createVNode(unref(_sfc_main$1), { size: 15 }, {
386
+ }, [createVNode(unref(_sfc_main$2), { size: 15 }, {
387
387
  default: withCtx(() => [createVNode(unref(Refresh))]),
388
388
  _: 1
389
389
  })], 10, _hoisted_10)
@@ -399,7 +399,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
399
399
  "aria-label": "下载",
400
400
  title: "下载",
401
401
  onClick: download
402
- }, [createVNode(unref(_sfc_main$1), { size: 15 }, {
402
+ }, [createVNode(unref(_sfc_main$2), { size: 15 }, {
403
403
  default: withCtx(() => [createVNode(unref(Download))]),
404
404
  _: 1
405
405
  })], 2)) : createCommentVNode("v-if", true),
@@ -410,7 +410,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
410
410
  "aria-label": "关闭预览",
411
411
  title: "关闭",
412
412
  onClick: handleClose
413
- }, [createVNode(unref(_sfc_main$1), { size: 16 }, {
413
+ }, [createVNode(unref(_sfc_main$2), { size: 16 }, {
414
414
  default: withCtx(() => [createVNode(unref(Close))]),
415
415
  _: 1
416
416
  })], 2)) : createCommentVNode("v-if", true)
@@ -1,6 +1,6 @@
1
1
  import { isReactive, reactive, shallowReactive, watch } from "vue";
2
- import { o } from "@cat-kit/core";
3
2
  import { Validator } from "@veltra/utils";
3
+ import { o } from "@cat-kit/core";
4
4
  //#region src/components/form/dynamic-form-model.ts
5
5
  /**
6
6
  * 动态表单模型
@@ -1,6 +1,6 @@
1
1
  import { nextTick, reactive, shallowReactive, watch } from "vue";
2
- import { o } from "@cat-kit/core";
3
2
  import { Validator, middleProxy } from "@veltra/utils";
3
+ import { o } from "@cat-kit/core";
4
4
  //#region src/components/form/form-model.ts
5
5
  /**
6
6
  * 表单模型
@@ -2,9 +2,9 @@ import _sfc_main from "../grid/grid.js";
2
2
  import form_item_default from "../form-item/form-item.js";
3
3
  import { useNodeInterceptor } from "./use-node-interceptor.js";
4
4
  import { Fragment, createBlock, createCommentVNode, createElementBlock, createElementVNode, defineComponent, mergeProps, normalizeClass, openBlock, renderList, resolveDynamicComponent, shallowRef, toRef, unref, withCtx, withModifiers } from "vue";
5
- import { o } from "@cat-kit/core";
6
5
  import { bem } from "@veltra/utils";
7
6
  import { useFormComponent } from "@veltra/compositions";
7
+ import { o } from "@cat-kit/core";
8
8
  //#region src/components/form/form.vue?vue&type=script&setup=true&lang.tsx
9
9
  var form_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({
10
10
  name: "Form",
@@ -1,6 +1,6 @@
1
1
  import { onBeforeUnmount, useSlots } from "vue";
2
- import { o } from "@cat-kit/core";
3
2
  import { createIncrease, extractNormalVNodes } from "@veltra/utils";
3
+ import { o } from "@cat-kit/core";
4
4
  //#region src/components/form/use-node-interceptor.ts
5
5
  const id = createIncrease(1);
6
6
  /**
@@ -1,5 +1,5 @@
1
- import _sfc_main from "../tip/tip.js";
2
- import _sfc_main$1 from "../grid/grid-item.js";
1
+ import _sfc_main from "../grid/grid-item.js";
2
+ import _sfc_main$1 from "../tip/tip.js";
3
3
  import { formItemCls } from "./helper.js";
4
4
  import { Transition, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createTextVNode, createVNode, defineComponent, normalizeClass, normalizeStyle, openBlock, renderSlot, toDisplayString, unref, withCtx } from "vue";
5
5
  import { bem, withUnit } from "@veltra/utils";
@@ -53,7 +53,7 @@ var form_item_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defi
53
53
  return Boolean(required);
54
54
  });
55
55
  return (_ctx, _cache) => {
56
- return openBlock(), createBlock(unref(_sfc_main$1), {
56
+ return openBlock(), createBlock(unref(_sfc_main), {
57
57
  span: __props.span,
58
58
  class: normalizeClass(className.value)
59
59
  }, {
@@ -61,7 +61,7 @@ var form_item_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defi
61
61
  key: 0,
62
62
  class: normalizeClass([unref(formItemCls).e("label"), unref(bem).is("required", fieldRequired.value)]),
63
63
  style: normalizeStyle(labelStyles.value)
64
- }, [__props.tips ? (openBlock(), createBlock(unref(_sfc_main), {
64
+ }, [__props.tips ? (openBlock(), createBlock(unref(_sfc_main$1), {
65
65
  key: 0,
66
66
  content: __props.tips,
67
67
  class: normalizeClass(unref(formItemCls).e("tips"))
@@ -1 +1 @@
1
- {"version":3,"file":"form-item.vue_vue_type_script_setup_true_lang.js","names":["$slots"],"sources":["../../../src/components/form-item/form-item.vue"],"sourcesContent":["<template>\n <u-grid-item :span=\"span\" :class=\"className\">\n <label\n v-if=\"props.label || $slots.label\"\n :class=\"[cls.e('label'), bem.is('required', fieldRequired)]\"\n :style=\"labelStyles\"\n >\n <u-tip v-if=\"tips\" :content=\"tips\" :class=\"cls.e('tips')\">\n <span :class=\"cls.e('tip-label')\">\n <slot name=\"label\">{{ label }}:</slot>\n </span>\n </u-tip>\n <template v-else>\n <slot name=\"label\">{{ label }}:</slot>\n </template>\n </label>\n\n <section :class=\"cls.e('wrapper')\">\n <div :class=\"cls.e('content')\">\n <slot></slot>\n </div>\n\n <!-- 只有表单控件处于非只读状态时,才显示错误提示 -->\n <section :class=\"cls.e('error')\" v-if=\"!formProps?.readonly && !formProps?.noTips\">\n <transition name=\"form-item-tips\" mode=\"out-in\">\n <span :class=\"cls.e('error-text')\" v-if=\"!!errorTips\">\n {{ errorTips }}\n </span>\n </transition>\n </section>\n </section>\n </u-grid-item>\n</template>\n\n<script lang=\"tsx\" setup>\nimport { useConfig, useFallbackProps, useFormComponent } from '@veltra/compositions'\nimport { bem, withUnit } from '@veltra/utils'\nimport { type CSSProperties, computed } from 'vue'\n\nimport type { FormItemProps, ComponentSize } from '../../types'\nimport { UGridItem } from '../grid'\nimport { UTip } from '../tip'\nimport { formItemCls as cls } from './helper'\n\ndefineOptions({\n name: 'FormItem'\n})\n\nconst props = withDefaults(defineProps<FormItemProps>(), {\n readonly: undefined\n})\n\ndefineSlots<{\n /** 标签插槽 */\n label?: () => any\n default?: () => any\n}>()\n\n/** 表单组件上下文 */\nconst { formProps } = useFormComponent()\n\nconst { config } = useConfig()\n\nconst { size, readonly } = useFallbackProps([formProps ?? {}, props], {\n size: 'default' as ComponentSize,\n readonly: false\n})\n\nconst className = computed(() => {\n return [cls.b, cls.m(size.value), bem.is('error', !!errorTips.value)].join(' ')\n})\n\n/** label样式 */\nconst labelStyles = computed<CSSProperties>(() => {\n return {\n width: withUnit(props.labelWidth ?? formProps?.labelWidth ?? config.form.labelWidth, 'px')\n }\n})\n\n/** 错误提示 */\nconst errorTips = computed<string | undefined>(() => {\n if (props.field) {\n return formProps?.model.errors.get(props.field)?.[0]\n }\n})\n\n/** 字段是否必须 */\nconst fieldRequired = computed<boolean>(() => {\n const { field } = props\n if (!field || readonly.value) return false\n const required = formProps?.model?.fields[field]?.required\n return Boolean(required)\n})\n</script>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;EAgDA,MAAM,QAAQ;;EAWd,MAAM,EAAE,cAAc,kBAAiB;EAEvC,MAAM,EAAE,WAAW,WAAU;EAE7B,MAAM,EAAE,MAAM,aAAa,iBAAiB,CAAC,aAAa,EAAE,EAAE,MAAM,EAAE;GACpE,MAAM;GACN,UAAU;GACX,CAAA;EAED,MAAM,YAAY,eAAe;AAC/B,UAAO;IAAC,YAAI;IAAG,YAAI,EAAE,KAAK,MAAM;IAAE,IAAI,GAAG,SAAS,CAAC,CAAC,UAAU,MAAM;IAAC,CAAC,KAAK,IAAG;IAC/E;;EAGD,MAAM,cAAc,eAA8B;AAChD,UAAO,EACL,OAAO,SAAS,MAAM,cAAc,WAAW,cAAc,OAAO,KAAK,YAAY,KAAI,EAC3F;IACD;;EAGD,MAAM,YAAY,eAAmC;AACnD,OAAI,MAAM,MACR,QAAO,WAAW,MAAM,OAAO,IAAI,MAAM,MAAM,GAAG;IAErD;;EAGD,MAAM,gBAAgB,eAAwB;GAC5C,MAAM,EAAE,UAAU;AAClB,OAAI,CAAC,SAAS,SAAS,MAAO,QAAO;GACrC,MAAM,WAAW,WAAW,OAAO,OAAO,QAAQ;AAClD,UAAO,QAAQ,SAAQ;IACxB;;uBA3FC,YA8Bc,MAAA,YAAA,EAAA;IA9BA,MAAM,QAAA;IAAO,OAAK,eAAE,UAAA,MAAS;;2BAcjC,CAZA,MAAM,SAASA,KAAAA,OAAO,SAAA,WAAA,EAD9B,mBAaQ,SAAA;;KAXL,OAAK,eAAA,CAAG,MAAA,YAAG,CAAC,EAAC,QAAA,EAAW,MAAA,IAAG,CAAC,GAAE,YAAa,cAAA,MAAa,CAAA,CAAA;KACxD,OAAK,eAAE,YAAA,MAAW;QAEN,QAAA,QAAA,WAAA,EAAb,YAIQ,MAAA,UAAA,EAAA;;KAJY,SAAS,QAAA;KAAO,OAAK,eAAE,MAAA,YAAG,CAAC,EAAC,OAAA,CAAA;;4BAGvC,CAFP,mBAEO,QAAA,EAFA,OAAK,eAAE,MAAA,YAAG,CAAC,EAAC,YAAA,CAAA,EAAA,EAAA,CACjB,WAAsC,KAAA,QAAA,SAAA,EAAA,QAAA,CAAA,gBAAA,gBAAhB,QAAA,MAAK,GAAG,KAAC,EAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA;;mCAIjC,WAAsC,KAAA,QAAA,SAAA,EAAA,KAAA,GAAA,QAAA,CAAA,gBAAA,gBAAhB,QAAA,MAAK,GAAG,KAAC,EAAA,CAAA,CAAA,CAAA,EAAA,EAAA,IAAA,mBAAA,QAAA,KAAA,EAInC,mBAaU,WAAA,EAbA,OAAK,eAAE,MAAA,YAAG,CAAC,EAAC,UAAA,CAAA,EAAA,EAAA;KACpB,mBAEM,OAAA,EAFA,OAAK,eAAE,MAAA,YAAG,CAAC,EAAC,UAAA,CAAA,EAAA,EAAA,CAChB,WAAa,KAAA,QAAA,UAAA,CAAA,EAAA,EAAA;KAGf,mBAAA,2BAA+B;MACS,MAAA,UAAS,EAAE,YAAQ,CAAK,MAAA,UAAS,EAAE,UAAA,WAAA,EAA3E,mBAMU,WAAA;;MANA,OAAK,eAAE,MAAA,YAAG,CAAC,EAAC,QAAA,CAAA;SACpB,YAIa,YAAA;MAJD,MAAK;MAAiB,MAAK;;6BAG9B,CAAA,CAAA,CAFoC,UAAA,SAAA,WAAA,EAA3C,mBAEO,QAAA;;OAFA,OAAK,eAAE,MAAA,YAAG,CAAC,EAAC,aAAA,CAAA;yBACd,UAAA,MAAS,EAAA,EAAA,IAAA,mBAAA,QAAA,KAAA,CAAA,CAAA"}
1
+ {"version":3,"file":"form-item.vue_vue_type_script_setup_true_lang.js","names":["$slots"],"sources":["../../../src/components/form-item/form-item.vue"],"sourcesContent":["<template>\n <u-grid-item :span=\"span\" :class=\"className\">\n <label\n v-if=\"props.label || $slots.label\"\n :class=\"[cls.e('label'), bem.is('required', fieldRequired)]\"\n :style=\"labelStyles\"\n >\n <u-tip v-if=\"tips\" :content=\"tips\" :class=\"cls.e('tips')\">\n <span :class=\"cls.e('tip-label')\">\n <slot name=\"label\">{{ label }}:</slot>\n </span>\n </u-tip>\n <template v-else>\n <slot name=\"label\">{{ label }}:</slot>\n </template>\n </label>\n\n <section :class=\"cls.e('wrapper')\">\n <div :class=\"cls.e('content')\">\n <slot></slot>\n </div>\n\n <!-- 只有表单控件处于非只读状态时,才显示错误提示 -->\n <section :class=\"cls.e('error')\" v-if=\"!formProps?.readonly && !formProps?.noTips\">\n <transition name=\"form-item-tips\" mode=\"out-in\">\n <span :class=\"cls.e('error-text')\" v-if=\"!!errorTips\">\n {{ errorTips }}\n </span>\n </transition>\n </section>\n </section>\n </u-grid-item>\n</template>\n\n<script lang=\"tsx\" setup>\nimport { useConfig, useFallbackProps, useFormComponent } from '@veltra/compositions'\nimport { bem, withUnit } from '@veltra/utils'\nimport { type CSSProperties, computed } from 'vue'\n\nimport type { FormItemProps, ComponentSize } from '../../types'\nimport { UGridItem } from '../grid'\nimport { UTip } from '../tip'\nimport { formItemCls as cls } from './helper'\n\ndefineOptions({\n name: 'FormItem'\n})\n\nconst props = withDefaults(defineProps<FormItemProps>(), {\n readonly: undefined\n})\n\ndefineSlots<{\n /** 标签插槽 */\n label?: () => any\n default?: () => any\n}>()\n\n/** 表单组件上下文 */\nconst { formProps } = useFormComponent()\n\nconst { config } = useConfig()\n\nconst { size, readonly } = useFallbackProps([formProps ?? {}, props], {\n size: 'default' as ComponentSize,\n readonly: false\n})\n\nconst className = computed(() => {\n return [cls.b, cls.m(size.value), bem.is('error', !!errorTips.value)].join(' ')\n})\n\n/** label样式 */\nconst labelStyles = computed<CSSProperties>(() => {\n return {\n width: withUnit(props.labelWidth ?? formProps?.labelWidth ?? config.form.labelWidth, 'px')\n }\n})\n\n/** 错误提示 */\nconst errorTips = computed<string | undefined>(() => {\n if (props.field) {\n return formProps?.model.errors.get(props.field)?.[0]\n }\n})\n\n/** 字段是否必须 */\nconst fieldRequired = computed<boolean>(() => {\n const { field } = props\n if (!field || readonly.value) return false\n const required = formProps?.model?.fields[field]?.required\n return Boolean(required)\n})\n</script>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;EAgDA,MAAM,QAAQ;;EAWd,MAAM,EAAE,cAAc,kBAAiB;EAEvC,MAAM,EAAE,WAAW,WAAU;EAE7B,MAAM,EAAE,MAAM,aAAa,iBAAiB,CAAC,aAAa,EAAE,EAAE,MAAM,EAAE;GACpE,MAAM;GACN,UAAU;GACX,CAAA;EAED,MAAM,YAAY,eAAe;AAC/B,UAAO;IAAC,YAAI;IAAG,YAAI,EAAE,KAAK,MAAM;IAAE,IAAI,GAAG,SAAS,CAAC,CAAC,UAAU,MAAM;IAAC,CAAC,KAAK,IAAG;IAC/E;;EAGD,MAAM,cAAc,eAA8B;AAChD,UAAO,EACL,OAAO,SAAS,MAAM,cAAc,WAAW,cAAc,OAAO,KAAK,YAAY,KAAI,EAC3F;IACD;;EAGD,MAAM,YAAY,eAAmC;AACnD,OAAI,MAAM,MACR,QAAO,WAAW,MAAM,OAAO,IAAI,MAAM,MAAM,GAAG;IAErD;;EAGD,MAAM,gBAAgB,eAAwB;GAC5C,MAAM,EAAE,UAAU;AAClB,OAAI,CAAC,SAAS,SAAS,MAAO,QAAO;GACrC,MAAM,WAAW,WAAW,OAAO,OAAO,QAAQ;AAClD,UAAO,QAAQ,SAAQ;IACxB;;uBA3FC,YA8Bc,MAAA,UAAA,EAAA;IA9BA,MAAM,QAAA;IAAO,OAAK,eAAE,UAAA,MAAS;;2BAcjC,CAZA,MAAM,SAASA,KAAAA,OAAO,SAAA,WAAA,EAD9B,mBAaQ,SAAA;;KAXL,OAAK,eAAA,CAAG,MAAA,YAAG,CAAC,EAAC,QAAA,EAAW,MAAA,IAAG,CAAC,GAAE,YAAa,cAAA,MAAa,CAAA,CAAA;KACxD,OAAK,eAAE,YAAA,MAAW;QAEN,QAAA,QAAA,WAAA,EAAb,YAIQ,MAAA,YAAA,EAAA;;KAJY,SAAS,QAAA;KAAO,OAAK,eAAE,MAAA,YAAG,CAAC,EAAC,OAAA,CAAA;;4BAGvC,CAFP,mBAEO,QAAA,EAFA,OAAK,eAAE,MAAA,YAAG,CAAC,EAAC,YAAA,CAAA,EAAA,EAAA,CACjB,WAAsC,KAAA,QAAA,SAAA,EAAA,QAAA,CAAA,gBAAA,gBAAhB,QAAA,MAAK,GAAG,KAAC,EAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA;;mCAIjC,WAAsC,KAAA,QAAA,SAAA,EAAA,KAAA,GAAA,QAAA,CAAA,gBAAA,gBAAhB,QAAA,MAAK,GAAG,KAAC,EAAA,CAAA,CAAA,CAAA,EAAA,EAAA,IAAA,mBAAA,QAAA,KAAA,EAInC,mBAaU,WAAA,EAbA,OAAK,eAAE,MAAA,YAAG,CAAC,EAAC,UAAA,CAAA,EAAA,EAAA;KACpB,mBAEM,OAAA,EAFA,OAAK,eAAE,MAAA,YAAG,CAAC,EAAC,UAAA,CAAA,EAAA,EAAA,CAChB,WAAa,KAAA,QAAA,UAAA,CAAA,EAAA,EAAA;KAGf,mBAAA,2BAA+B;MACS,MAAA,UAAS,EAAE,YAAQ,CAAK,MAAA,UAAS,EAAE,UAAA,WAAA,EAA3E,mBAMU,WAAA;;MANA,OAAK,eAAE,MAAA,YAAG,CAAC,EAAC,QAAA,CAAA;SACpB,YAIa,YAAA;MAJD,MAAK;MAAiB,MAAK;;6BAG9B,CAAA,CAAA,CAFoC,UAAA,SAAA,WAAA,EAA3C,mBAEO,QAAA;;OAFA,OAAK,eAAE,MAAA,YAAG,CAAC,EAAC,aAAA,CAAA;yBACd,UAAA,MAAS,EAAA,EAAA,IAAA,mBAAA,QAAA,KAAA,CAAA,CAAA"}
@@ -1,5 +1,5 @@
1
- import "@cat-kit/core";
2
1
  import { bem } from "@veltra/utils";
2
+ import "@cat-kit/core";
3
3
  //#region src/components/form-item/helper.ts
4
4
  const formItemCls = bem("form-item");
5
5
  //#endregion