ll-plus 2.2.21 → 2.2.22
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/es/components/checkbox/index.d.ts +4 -58
- package/es/components/checkbox/src/checkbox-group.vue.d.ts +4 -58
- package/es/components/checkbox/src/checkbox-group.vue2.mjs +65 -47
- package/es/components/checkbox/src/checkbox-group.vue2.mjs.map +1 -1
- package/es/components/checkbox/src/checkbox.d.ts +1 -0
- package/es/components/checkbox/src/checkbox.mjs +4 -0
- package/es/components/checkbox/src/checkbox.mjs.map +1 -1
- package/es/components/drawer/src/components/second-confirmation/index.d.ts +1 -1
- package/es/components/drawer/src/components/second-confirmation/src/second-confirmation.vue.d.ts +1 -1
- package/es/components/key-value/index.d.ts +1 -0
- package/es/components/key-value/src/config/key-value.mjs +2 -2
- package/es/components/key-value/src/config/key-value.mjs.map +1 -1
- package/es/components/key-value/src/key-value.vue.d.ts +1 -0
- package/es/components/key-value/src/key-value.vue2.mjs +56 -43
- package/es/components/key-value/src/key-value.vue2.mjs.map +1 -1
- package/es/components/modal/index.d.ts +1 -1
- package/es/components/modal/src/modal.vue.d.ts +1 -1
- package/es/components/modal/src/modal.vue2.mjs +11 -8
- package/es/components/modal/src/modal.vue2.mjs.map +1 -1
- package/es/components/tag-group/src/tag-group.vue2.mjs.map +1 -1
- package/es/components/uri-input/index.d.ts +4 -0
- package/es/components/uri-input/src/uri-input.d.ts +1 -0
- package/es/components/uri-input/src/uri-input.mjs +4 -0
- package/es/components/uri-input/src/uri-input.mjs.map +1 -1
- package/es/components/uri-input/src/uri-input.vue.d.ts +4 -0
- package/es/components/uri-input/src/uri-input.vue2.mjs +3 -2
- package/es/components/uri-input/src/uri-input.vue2.mjs.map +1 -1
- package/es/utils/props/runtime.d.ts +2 -2
- package/index.full.js +141 -99
- package/index.full.min.js +14 -14
- package/index.full.min.js.map +1 -1
- package/index.full.min.mjs +15 -15
- package/index.full.min.mjs.map +1 -1
- package/index.full.mjs +142 -100
- package/lib/components/checkbox/index.d.ts +4 -58
- package/lib/components/checkbox/src/checkbox-group.vue.d.ts +4 -58
- package/lib/components/checkbox/src/checkbox-group.vue2.js +63 -45
- package/lib/components/checkbox/src/checkbox-group.vue2.js.map +1 -1
- package/lib/components/checkbox/src/checkbox.d.ts +1 -0
- package/lib/components/checkbox/src/checkbox.js +4 -0
- package/lib/components/checkbox/src/checkbox.js.map +1 -1
- package/lib/components/drawer/src/components/second-confirmation/index.d.ts +1 -1
- package/lib/components/drawer/src/components/second-confirmation/src/second-confirmation.vue.d.ts +1 -1
- package/lib/components/key-value/index.d.ts +1 -0
- package/lib/components/key-value/src/config/key-value.js +2 -2
- package/lib/components/key-value/src/config/key-value.js.map +1 -1
- package/lib/components/key-value/src/key-value.vue.d.ts +1 -0
- package/lib/components/key-value/src/key-value.vue2.js +55 -42
- package/lib/components/key-value/src/key-value.vue2.js.map +1 -1
- package/lib/components/modal/index.d.ts +1 -1
- package/lib/components/modal/src/modal.vue.d.ts +1 -1
- package/lib/components/modal/src/modal.vue2.js +11 -8
- package/lib/components/modal/src/modal.vue2.js.map +1 -1
- package/lib/components/tag-group/src/tag-group.vue2.js.map +1 -1
- package/lib/components/uri-input/index.d.ts +4 -0
- package/lib/components/uri-input/src/uri-input.d.ts +1 -0
- package/lib/components/uri-input/src/uri-input.js +4 -0
- package/lib/components/uri-input/src/uri-input.js.map +1 -1
- package/lib/components/uri-input/src/uri-input.vue.d.ts +4 -0
- package/lib/components/uri-input/src/uri-input.vue2.js +3 -2
- package/lib/components/uri-input/src/uri-input.vue2.js.map +1 -1
- package/lib/utils/props/runtime.d.ts +2 -2
- package/package.json +1 -1
- package/theme-chalk/css/index.css +1 -1
- package/theme-chalk/css/key-value.css +1 -1
- package/types/packages/components/checkbox/index.d.ts +4 -58
- package/types/packages/components/checkbox/src/checkbox-group.vue.d.ts +4 -58
- package/types/packages/components/checkbox/src/checkbox.d.ts +1 -0
- package/types/packages/components/drawer/src/components/second-confirmation/index.d.ts +1 -1
- package/types/packages/components/drawer/src/components/second-confirmation/src/second-confirmation.vue.d.ts +1 -1
- package/types/packages/components/key-value/index.d.ts +1 -0
- package/types/packages/components/key-value/src/key-value.vue.d.ts +1 -0
- package/types/packages/components/modal/index.d.ts +1 -1
- package/types/packages/components/modal/src/modal.vue.d.ts +1 -1
- package/types/packages/components/uri-input/index.d.ts +4 -0
- package/types/packages/components/uri-input/src/uri-input.d.ts +1 -0
- package/types/packages/components/uri-input/src/uri-input.vue.d.ts +4 -0
- package/types/packages/utils/props/runtime.d.ts +2 -2
|
@@ -19,63 +19,81 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
|
19
19
|
const bem = createNamespace.createNamespace("checkbox-group");
|
|
20
20
|
const attrs = vue.useAttrs();
|
|
21
21
|
return (_ctx, _cache) => {
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
vue.
|
|
27
|
-
|
|
28
|
-
|
|
22
|
+
const _component_a_checkbox_group = vue.resolveComponent("a-checkbox-group");
|
|
23
|
+
return vue.openBlock(), vue.createElementBlock(
|
|
24
|
+
"div",
|
|
25
|
+
{
|
|
26
|
+
class: vue.normalizeClass(vue.unref(bem).b())
|
|
27
|
+
},
|
|
28
|
+
[
|
|
29
|
+
props.useGrid ? (vue.openBlock(), vue.createBlock(
|
|
30
|
+
_component_a_checkbox_group,
|
|
31
|
+
vue.normalizeProps(vue.mergeProps({ key: 0 }, vue.unref(attrs))),
|
|
29
32
|
{
|
|
30
33
|
default: vue.withCtx(() => [
|
|
31
|
-
|
|
32
|
-
vue.
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
{
|
|
34
|
+
vue.createVNode(
|
|
35
|
+
vue.unref(antDesignVue.Row),
|
|
36
|
+
vue.normalizeProps(vue.guardReactiveProps(props.rowOptions)),
|
|
37
|
+
{
|
|
38
|
+
default: vue.withCtx(() => [
|
|
39
|
+
(vue.openBlock(true), vue.createElementBlock(
|
|
40
|
+
vue.Fragment,
|
|
41
|
+
null,
|
|
42
|
+
vue.renderList(props.options, (item, idx) => {
|
|
43
|
+
return vue.openBlock(), vue.createBlock(vue.unref(antDesignVue.Col), vue.mergeProps({ ref_for: true }, item.colOptions, {
|
|
44
|
+
key: idx,
|
|
45
|
+
span: item.span || props.allSpan,
|
|
46
|
+
class: vue.unref(bem).e("item")
|
|
47
|
+
}), {
|
|
45
48
|
default: vue.withCtx(() => [
|
|
46
|
-
vue.
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
49
|
+
vue.createVNode(
|
|
50
|
+
checkbox$1.default,
|
|
51
|
+
vue.mergeProps({ ref_for: true }, item),
|
|
52
|
+
{
|
|
53
|
+
default: vue.withCtx(() => [
|
|
54
|
+
vue.renderSlot(_ctx.$slots, "default", vue.mergeProps({ ref_for: true }, item), () => [
|
|
55
|
+
vue.createTextVNode(
|
|
56
|
+
vue.toDisplayString(item.label),
|
|
57
|
+
1
|
|
58
|
+
/* TEXT */
|
|
59
|
+
)
|
|
60
|
+
])
|
|
61
|
+
]),
|
|
62
|
+
_: 2
|
|
63
|
+
/* DYNAMIC */
|
|
64
|
+
},
|
|
65
|
+
1040
|
|
66
|
+
/* FULL_PROPS, DYNAMIC_SLOTS */
|
|
67
|
+
)
|
|
53
68
|
]),
|
|
54
69
|
_: 2
|
|
55
70
|
/* DYNAMIC */
|
|
56
|
-
},
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
/*
|
|
67
|
-
)
|
|
71
|
+
}, 1040, ["span", "class"]);
|
|
72
|
+
}),
|
|
73
|
+
128
|
|
74
|
+
/* KEYED_FRAGMENT */
|
|
75
|
+
))
|
|
76
|
+
]),
|
|
77
|
+
_: 3
|
|
78
|
+
/* FORWARDED */
|
|
79
|
+
},
|
|
80
|
+
16
|
|
81
|
+
/* FULL_PROPS */
|
|
82
|
+
)
|
|
68
83
|
]),
|
|
69
84
|
_: 3
|
|
70
85
|
/* FORWARDED */
|
|
71
86
|
},
|
|
72
87
|
16
|
|
73
88
|
/* FULL_PROPS */
|
|
74
|
-
)
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
89
|
+
)) : (vue.openBlock(), vue.createBlock(_component_a_checkbox_group, vue.mergeProps({
|
|
90
|
+
key: 1,
|
|
91
|
+
options: props.options
|
|
92
|
+
}, vue.unref(attrs)), null, 16, ["options"]))
|
|
93
|
+
],
|
|
94
|
+
2
|
|
95
|
+
/* CLASS */
|
|
96
|
+
);
|
|
79
97
|
};
|
|
80
98
|
}
|
|
81
99
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checkbox-group.vue2.js","sources":["../../../../../packages/components/checkbox/src/checkbox-group.vue"],"sourcesContent":["<template>\n <
|
|
1
|
+
{"version":3,"file":"checkbox-group.vue2.js","sources":["../../../../../packages/components/checkbox/src/checkbox-group.vue"],"sourcesContent":["<template>\n <div :class=\"bem.b()\">\n <a-checkbox-group v-if=\"props.useGrid\" v-bind=\"attrs\">\n <Row v-bind=\"props.rowOptions\">\n <Col\n v-for=\"(item, idx) in props.options\"\n v-bind=\"item.colOptions\"\n :key=\"idx\"\n :span=\"item.span || props.allSpan\"\n :class=\"bem.e('item')\"\n >\n <checkbox v-bind=\"item\">\n <slot v-bind=\"item\">\n {{ item.label }}\n </slot>\n </checkbox>\n </Col>\n </Row>\n </a-checkbox-group>\n <a-checkbox-group v-else :options=\"props.options\" v-bind=\"attrs\" />\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { useAttrs } from 'vue'\nimport { Row, Col } from 'ant-design-vue'\nimport { checkboxGroupProps } from './checkbox'\nimport Checkbox from './checkbox.vue'\n\nimport { createNamespace } from '@ll-plus/utils'\n\ndefineOptions({ name: 'LlCheckboxGroup' })\n\nconst props = defineProps(checkboxGroupProps)\n\nconst bem = createNamespace('checkbox-group')\n\nconst attrs = useAttrs()\n</script>\n"],"names":["createNamespace","useAttrs"],"mappings":";;;;;;;;;;;;;;;;;AAiCA,IAAA,MAAM,KAAQ,GAAA,OAAA,CAAA;AAEd,IAAM,MAAA,GAAA,GAAMA,gCAAgB,gBAAgB,CAAA,CAAA;AAE5C,IAAA,MAAM,QAAQC,YAAS,EAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -198,6 +198,7 @@ export declare const checkboxGroupProps: {
|
|
|
198
198
|
};
|
|
199
199
|
}>>))[], unknown, unknown, () => void, boolean>;
|
|
200
200
|
readonly allSpan: import("ll-plus/es/utils").EpPropFinalized<NumberConstructor, unknown, unknown, 24, boolean>;
|
|
201
|
+
readonly useGrid: import("ll-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
|
|
201
202
|
};
|
|
202
203
|
export type CheckboxProps = ExtractPropTypes<typeof checkboxProps>;
|
|
203
204
|
export type CheckboxGroupProps = ExtractPropTypes<typeof checkboxGroupProps>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checkbox.js","sources":["../../../../../packages/components/checkbox/src/checkbox.ts"],"sourcesContent":["import { buildProps, definePropType } from '@ll-plus/utils'\n\nimport type { ExtractPropTypes } from 'vue'\n\nimport type { RowProps, ColProps, CheckboxOptionType } from 'ant-design-vue'\n\nimport type Checkbox from './checkbox.vue'\n\nimport type CheckboxGroup from './checkbox-group.vue'\n\ntype option = CheckboxOptionType & {\n colOptions?: ColProps\n label: string\n span?: number\n}\nexport const checkboxProps = buildProps({\n checkboxLabel: {\n type: String,\n default: ''\n }\n} as const)\n\nexport const checkboxGroupProps = buildProps({\n options: {\n type: definePropType<option[]>(Array),\n default: () => []\n },\n rowOptions: {\n type: definePropType<RowProps>(Object),\n default: () => {}\n },\n allSpan: {\n type: Number,\n default: 24\n }\n} as const)\n\n// props\nexport type CheckboxProps = ExtractPropTypes<typeof checkboxProps>\nexport type CheckboxGroupProps = ExtractPropTypes<typeof checkboxGroupProps>\n\n// instance\nexport type CheckboxInstance = InstanceType<typeof Checkbox>\nexport type CheckboxGroupInstance = InstanceType<typeof CheckboxGroup>\n"],"names":["buildProps","definePropType"],"mappings":";;;;;;AAeO,MAAM,gBAAgBA,kBAAW,CAAA;AAAA,EACtC,aAAe,EAAA;AAAA,IACb,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,EAAA;AAAA,GACX;AACF,CAAU,EAAA;AAEH,MAAM,qBAAqBA,kBAAW,CAAA;AAAA,EAC3C,OAAS,EAAA;AAAA,IACP,IAAA,EAAMC,uBAAyB,KAAK,CAAA;AAAA,IACpC,OAAA,EAAS,MAAM,EAAC;AAAA,GAClB;AAAA,EACA,UAAY,EAAA;AAAA,IACV,IAAA,EAAMA,uBAAyB,MAAM,CAAA;AAAA,IACrC,SAAS,MAAM;AAAA,KAAC;AAAA,GAClB;AAAA,EACA,OAAS,EAAA;AAAA,IACP,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,EAAA;AAAA,GACX;AACF,CAAU;;;;;"}
|
|
1
|
+
{"version":3,"file":"checkbox.js","sources":["../../../../../packages/components/checkbox/src/checkbox.ts"],"sourcesContent":["import { buildProps, definePropType } from '@ll-plus/utils'\n\nimport type { ExtractPropTypes } from 'vue'\n\nimport type { RowProps, ColProps, CheckboxOptionType } from 'ant-design-vue'\n\nimport type Checkbox from './checkbox.vue'\n\nimport type CheckboxGroup from './checkbox-group.vue'\n\ntype option = CheckboxOptionType & {\n colOptions?: ColProps\n label: string\n span?: number\n}\nexport const checkboxProps = buildProps({\n checkboxLabel: {\n type: String,\n default: ''\n }\n} as const)\n\nexport const checkboxGroupProps = buildProps({\n options: {\n type: definePropType<option[]>(Array),\n default: () => []\n },\n rowOptions: {\n type: definePropType<RowProps>(Object),\n default: () => {}\n },\n allSpan: {\n type: Number,\n default: 24\n },\n useGrid: {\n type: Boolean,\n default: false\n }\n} as const)\n\n// props\nexport type CheckboxProps = ExtractPropTypes<typeof checkboxProps>\nexport type CheckboxGroupProps = ExtractPropTypes<typeof checkboxGroupProps>\n\n// instance\nexport type CheckboxInstance = InstanceType<typeof Checkbox>\nexport type CheckboxGroupInstance = InstanceType<typeof CheckboxGroup>\n"],"names":["buildProps","definePropType"],"mappings":";;;;;;AAeO,MAAM,gBAAgBA,kBAAW,CAAA;AAAA,EACtC,aAAe,EAAA;AAAA,IACb,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,EAAA;AAAA,GACX;AACF,CAAU,EAAA;AAEH,MAAM,qBAAqBA,kBAAW,CAAA;AAAA,EAC3C,OAAS,EAAA;AAAA,IACP,IAAA,EAAMC,uBAAyB,KAAK,CAAA;AAAA,IACpC,OAAA,EAAS,MAAM,EAAC;AAAA,GAClB;AAAA,EACA,UAAY,EAAA;AAAA,IACV,IAAA,EAAMA,uBAAyB,MAAM,CAAA;AAAA,IACrC,SAAS,MAAM;AAAA,KAAC;AAAA,GAClB;AAAA,EACA,OAAS,EAAA;AAAA,IACP,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,EAAA;AAAA,GACX;AAAA,EACA,OAAS,EAAA;AAAA,IACP,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,KAAA;AAAA,GACX;AACF,CAAU;;;;;"}
|
|
@@ -91,7 +91,7 @@ export declare const LlSecondConfirmation: import("ll-plus/es/utils").SFCWithIns
|
|
|
91
91
|
getBindValue: import("vue").ComputedRef<import("ll-plus/es/index").IResultType>;
|
|
92
92
|
handleCancel: () => void;
|
|
93
93
|
handleOk: () => void;
|
|
94
|
-
handleResize: () => Promise<void>;
|
|
94
|
+
handleResize: (value: boolean) => Promise<void>;
|
|
95
95
|
readonly Modal: {
|
|
96
96
|
new (...args: any[]): import("@vue/runtime-core").CreateComponentPublicInstance<Readonly<import("vue").ExtractPropTypes<{
|
|
97
97
|
prefixCls: StringConstructor;
|
package/lib/components/drawer/src/components/second-confirmation/src/second-confirmation.vue.d.ts
CHANGED
|
@@ -90,7 +90,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
90
90
|
getBindValue: import("vue").ComputedRef<import("ll-plus/es/components").IResultType>;
|
|
91
91
|
handleCancel: () => void;
|
|
92
92
|
handleOk: () => void;
|
|
93
|
-
handleResize: () => Promise<void>;
|
|
93
|
+
handleResize: (value: boolean) => Promise<void>;
|
|
94
94
|
readonly Modal: {
|
|
95
95
|
new (...args: any[]): import("vue").CreateComponentPublicInstance<Readonly<import("vue").ExtractPropTypes<{
|
|
96
96
|
prefixCls: StringConstructor;
|
|
@@ -71,6 +71,7 @@ export declare const LlKeyValue: import("ll-plus/es/utils").SFCWithInstall<impor
|
|
|
71
71
|
bem: (blockSuffix: string, element: string, modifier: string) => string;
|
|
72
72
|
is: (name?: string) => string;
|
|
73
73
|
};
|
|
74
|
+
formItemContext: import("ant-design-vue/es/form/FormItemContext").FormItemContext;
|
|
74
75
|
innerValue: import("vue").Ref<{
|
|
75
76
|
key: any;
|
|
76
77
|
value: any;
|
|
@@ -41,7 +41,7 @@ const keyValueProps = runtime.buildProps({
|
|
|
41
41
|
type: runtime.definePropType(Object),
|
|
42
42
|
default: () => ({
|
|
43
43
|
type: "input",
|
|
44
|
-
placeholder: "\u8BF7\u8F93\
|
|
44
|
+
placeholder: "\u8BF7\u8F93\u5165key"
|
|
45
45
|
})
|
|
46
46
|
},
|
|
47
47
|
keyTypes: {
|
|
@@ -52,7 +52,7 @@ const keyValueProps = runtime.buildProps({
|
|
|
52
52
|
type: runtime.definePropType(Object),
|
|
53
53
|
default: () => ({
|
|
54
54
|
type: "input",
|
|
55
|
-
placeholder: "\u8BF7\u8F93\
|
|
55
|
+
placeholder: "\u8BF7\u8F93\u5165value"
|
|
56
56
|
})
|
|
57
57
|
},
|
|
58
58
|
disabledValue: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"key-value.js","sources":["../../../../../../packages/components/key-value/src/config/key-value.ts"],"sourcesContent":["import { buildProps, definePropType } from '@ll-plus/utils'\n\nimport type { ExtractPropTypes } from 'vue'\nimport { type FormColumn } from '@ll-plus/components'\nimport type { KeyValueItem } from './key-value-item'\nimport type KeyValue from '../key-value.vue'\n\nexport interface KeyType {\n label: string\n value: string\n option: FormColumn\n}\n\ntype KeyValueType = 'single' | 'doubt'\n\nexport const getKeyValueItem = () => ({\n key: null,\n value: null\n})\n\nexport const keyValueProps = buildProps({\n value: {\n type: definePropType<KeyValueItem[]>(Array),\n default: () => [{ key: '', value: '' }]\n },\n loading: {\n type: Boolean,\n default: false\n },\n disabled: {\n type: Boolean,\n default: false\n },\n keyLabel: {\n type: String,\n default: ''\n },\n valueLabel: {\n type: String,\n default: ''\n },\n addText: {\n type: String,\n default: '添加'\n },\n keyValueType: {\n type: definePropType<KeyValueType>(String),\n default: 'doubt'\n },\n keyType: {\n type: definePropType<FormColumn>(Object),\n default: () => ({\n type: 'input',\n placeholder: '请输入
|
|
1
|
+
{"version":3,"file":"key-value.js","sources":["../../../../../../packages/components/key-value/src/config/key-value.ts"],"sourcesContent":["import { buildProps, definePropType } from '@ll-plus/utils'\n\nimport type { ExtractPropTypes } from 'vue'\nimport { type FormColumn } from '@ll-plus/components'\nimport type { KeyValueItem } from './key-value-item'\nimport type KeyValue from '../key-value.vue'\n\nexport interface KeyType {\n label: string\n value: string\n option: FormColumn\n}\n\ntype KeyValueType = 'single' | 'doubt'\n\nexport const getKeyValueItem = () => ({\n key: null,\n value: null\n})\n\nexport const keyValueProps = buildProps({\n value: {\n type: definePropType<KeyValueItem[]>(Array),\n default: () => [{ key: '', value: '' }]\n },\n loading: {\n type: Boolean,\n default: false\n },\n disabled: {\n type: Boolean,\n default: false\n },\n keyLabel: {\n type: String,\n default: ''\n },\n valueLabel: {\n type: String,\n default: ''\n },\n addText: {\n type: String,\n default: '添加'\n },\n keyValueType: {\n type: definePropType<KeyValueType>(String),\n default: 'doubt'\n },\n keyType: {\n type: definePropType<FormColumn>(Object),\n default: () => ({\n type: 'input',\n placeholder: '请输入key'\n })\n },\n keyTypes: {\n type: definePropType<KeyType[]>(Array),\n default: () => []\n },\n valueType: {\n type: definePropType<FormColumn>(Object),\n default: () => ({\n type: 'input',\n placeholder: '请输入value'\n })\n },\n disabledValue: {\n type: definePropType<number[]>(Array),\n default: () => []\n },\n disabledKey: {\n type: definePropType<number[]>(Array),\n default: () => []\n },\n disabledDelete: {\n type: definePropType<number[]>(Array),\n default: () => []\n },\n disabledAdd: {\n type: Boolean,\n default: false\n }\n} as const)\n\nexport interface KeyValueAddEmits {\n index: number\n item: KeyValueItem\n value: KeyValueItem[]\n}\n\nexport const keyValueEmits = {\n change: (value: KeyValueItem[]) => !!value,\n add: (params: KeyValueAddEmits) => !!params,\n delete: (index: number) => typeof index === 'number',\n 'update:value': (value: KeyValueItem[]) => !!value\n}\n\n// props\nexport type KeyValueProps = ExtractPropTypes<typeof keyValueProps>\n// emits\nexport type KeyValueEmits = typeof keyValueEmits\n// instance\nexport type KeyValueInstance = InstanceType<typeof KeyValue>\n"],"names":["buildProps","definePropType"],"mappings":";;;;;;AAeO,MAAM,kBAAkB,OAAO;AAAA,EACpC,GAAK,EAAA,IAAA;AAAA,EACL,KAAO,EAAA,IAAA;AACT,CAAA,EAAA;AAEO,MAAM,gBAAgBA,kBAAW,CAAA;AAAA,EACtC,KAAO,EAAA;AAAA,IACL,IAAA,EAAMC,uBAA+B,KAAK,CAAA;AAAA,IAC1C,OAAA,EAAS,MAAM,CAAC,EAAE,KAAK,EAAI,EAAA,KAAA,EAAO,IAAI,CAAA;AAAA,GACxC;AAAA,EACA,OAAS,EAAA;AAAA,IACP,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,KAAA;AAAA,GACX;AAAA,EACA,QAAU,EAAA;AAAA,IACR,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,KAAA;AAAA,GACX;AAAA,EACA,QAAU,EAAA;AAAA,IACR,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,EAAA;AAAA,GACX;AAAA,EACA,UAAY,EAAA;AAAA,IACV,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,EAAA;AAAA,GACX;AAAA,EACA,OAAS,EAAA;AAAA,IACP,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,cAAA;AAAA,GACX;AAAA,EACA,YAAc,EAAA;AAAA,IACZ,IAAA,EAAMA,uBAA6B,MAAM,CAAA;AAAA,IACzC,OAAS,EAAA,OAAA;AAAA,GACX;AAAA,EACA,OAAS,EAAA;AAAA,IACP,IAAA,EAAMA,uBAA2B,MAAM,CAAA;AAAA,IACvC,SAAS,OAAO;AAAA,MACd,IAAM,EAAA,OAAA;AAAA,MACN,WAAa,EAAA,uBAAA;AAAA,KACf,CAAA;AAAA,GACF;AAAA,EACA,QAAU,EAAA;AAAA,IACR,IAAA,EAAMA,uBAA0B,KAAK,CAAA;AAAA,IACrC,OAAA,EAAS,MAAM,EAAC;AAAA,GAClB;AAAA,EACA,SAAW,EAAA;AAAA,IACT,IAAA,EAAMA,uBAA2B,MAAM,CAAA;AAAA,IACvC,SAAS,OAAO;AAAA,MACd,IAAM,EAAA,OAAA;AAAA,MACN,WAAa,EAAA,yBAAA;AAAA,KACf,CAAA;AAAA,GACF;AAAA,EACA,aAAe,EAAA;AAAA,IACb,IAAA,EAAMA,uBAAyB,KAAK,CAAA;AAAA,IACpC,OAAA,EAAS,MAAM,EAAC;AAAA,GAClB;AAAA,EACA,WAAa,EAAA;AAAA,IACX,IAAA,EAAMA,uBAAyB,KAAK,CAAA;AAAA,IACpC,OAAA,EAAS,MAAM,EAAC;AAAA,GAClB;AAAA,EACA,cAAgB,EAAA;AAAA,IACd,IAAA,EAAMA,uBAAyB,KAAK,CAAA;AAAA,IACpC,OAAA,EAAS,MAAM,EAAC;AAAA,GAClB;AAAA,EACA,WAAa,EAAA;AAAA,IACX,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,KAAA;AAAA,GACX;AACF,CAAU,EAAA;AAQH,MAAM,aAAgB,GAAA;AAAA,EAC3B,MAAQ,EAAA,CAAC,KAA0B,KAAA,CAAC,CAAC,KAAA;AAAA,EACrC,GAAK,EAAA,CAAC,MAA6B,KAAA,CAAC,CAAC,MAAA;AAAA,EACrC,MAAQ,EAAA,CAAC,KAAkB,KAAA,OAAO,KAAU,KAAA,QAAA;AAAA,EAC5C,cAAgB,EAAA,CAAC,KAA0B,KAAA,CAAC,CAAC,KAAA;AAC/C;;;;;;"}
|
|
@@ -71,6 +71,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
71
71
|
bem: (blockSuffix: string, element: string, modifier: string) => string;
|
|
72
72
|
is: (name?: string) => string;
|
|
73
73
|
};
|
|
74
|
+
formItemContext: import("ant-design-vue/es/form/FormItemContext").FormItemContext;
|
|
74
75
|
innerValue: import("vue").Ref<{
|
|
75
76
|
key: any;
|
|
76
77
|
value: any;
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
5
|
var vue = require('vue');
|
|
6
|
+
var antDesignVue = require('ant-design-vue');
|
|
6
7
|
require('../../../utils/index.js');
|
|
7
8
|
require('./config/index.js');
|
|
8
9
|
var keyValueItem = require('./components/key-value-item.vue.js');
|
|
@@ -19,6 +20,7 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
|
19
20
|
const props = __props;
|
|
20
21
|
const emits = __emit;
|
|
21
22
|
const bem = createNamespace.createNamespace("key-value");
|
|
23
|
+
const formItemContext = antDesignVue.Form.useInjectFormItemContext();
|
|
22
24
|
const innerValue = vue.ref([]);
|
|
23
25
|
const keyValueItems = vue.ref([]);
|
|
24
26
|
const keyValueTypeDict = vue.computed(() => {
|
|
@@ -44,6 +46,7 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
|
44
46
|
};
|
|
45
47
|
const handleChange = () => {
|
|
46
48
|
try {
|
|
49
|
+
formItemContext.onFieldChange();
|
|
47
50
|
emits("change", innerValue.value);
|
|
48
51
|
emits("update:value", innerValue.value);
|
|
49
52
|
} catch (error) {
|
|
@@ -74,48 +77,58 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
|
74
77
|
spinning: props.loading
|
|
75
78
|
}, {
|
|
76
79
|
default: vue.withCtx(() => [
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
80
|
+
vue.createElementVNode(
|
|
81
|
+
"div",
|
|
82
|
+
{
|
|
83
|
+
class: vue.normalizeClass(vue.unref(bem).e("list"))
|
|
84
|
+
},
|
|
85
|
+
[
|
|
86
|
+
(vue.openBlock(true), vue.createElementBlock(
|
|
87
|
+
vue.Fragment,
|
|
88
|
+
null,
|
|
89
|
+
vue.renderList(innerValue.value, (_item, idx) => {
|
|
90
|
+
return vue.openBlock(), vue.createBlock(keyValueItem.default, {
|
|
91
|
+
key: _item,
|
|
92
|
+
ref_for: true,
|
|
93
|
+
ref: (el) => keyValueItems.value[idx] = el,
|
|
94
|
+
value: innerValue.value[idx],
|
|
95
|
+
"onUpdate:value": ($event) => innerValue.value[idx] = $event,
|
|
96
|
+
idx,
|
|
97
|
+
"key-label": props.keyLabel,
|
|
98
|
+
"value-label": props.valueLabel,
|
|
99
|
+
"key-value-type-dict": keyValueTypeDict.value,
|
|
100
|
+
"show-delete": innerValue.value.length > 1,
|
|
101
|
+
"key-value-type": props.keyValueType,
|
|
102
|
+
"key-type": props.keyType,
|
|
103
|
+
"key-types": props.keyTypes,
|
|
104
|
+
"value-type": props.valueType,
|
|
105
|
+
disabled: props.disabled,
|
|
106
|
+
"disabled-value": props.disabledValue,
|
|
107
|
+
"disabled-key": props.disabledKey,
|
|
108
|
+
"disabled-delete": props.disabledDelete,
|
|
109
|
+
onDelete: ($event) => handleDelete(idx),
|
|
110
|
+
onChange: handleChange
|
|
111
|
+
}, vue.createSlots({
|
|
112
|
+
_: 2
|
|
113
|
+
/* DYNAMIC */
|
|
114
|
+
}, [
|
|
115
|
+
vue.renderList(Object.keys(_ctx.$slots), (item) => {
|
|
116
|
+
return {
|
|
117
|
+
name: item,
|
|
118
|
+
fn: vue.withCtx((data) => [
|
|
119
|
+
vue.renderSlot(_ctx.$slots, item, vue.mergeProps({ ref_for: true }, data || {}, { index: idx }))
|
|
120
|
+
])
|
|
121
|
+
};
|
|
122
|
+
})
|
|
123
|
+
]), 1032, ["value", "onUpdate:value", "idx", "key-label", "value-label", "key-value-type-dict", "show-delete", "key-value-type", "key-type", "key-types", "value-type", "disabled", "disabled-value", "disabled-key", "disabled-delete", "onDelete"]);
|
|
124
|
+
}),
|
|
125
|
+
128
|
|
126
|
+
/* KEYED_FRAGMENT */
|
|
127
|
+
))
|
|
128
|
+
],
|
|
129
|
+
2
|
|
130
|
+
/* CLASS */
|
|
131
|
+
),
|
|
119
132
|
vue.createVNode(_component_ll_button, {
|
|
120
133
|
class: vue.normalizeClass(vue.unref(bem).e("add")),
|
|
121
134
|
loading: _ctx.loading,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"key-value.vue2.js","sources":["../../../../../packages/components/key-value/src/key-value.vue"],"sourcesContent":["<template>\n <div :class=\"bem.b()\">\n <a-spin :spinning=\"props.loading\">\n <key-value-item\n
|
|
1
|
+
{"version":3,"file":"key-value.vue2.js","sources":["../../../../../packages/components/key-value/src/key-value.vue"],"sourcesContent":["<template>\n <div :class=\"bem.b()\">\n <a-spin :spinning=\"props.loading\">\n <div :class=\"bem.e('list')\">\n <key-value-item\n v-for=\"(_item, idx) in innerValue\"\n :key=\"_item\"\n :ref=\"el => (keyValueItems[idx] = el)\"\n v-model:value=\"innerValue[idx]\"\n :idx=\"idx\"\n :key-label=\"props.keyLabel\"\n :value-label=\"props.valueLabel\"\n :key-value-type-dict=\"keyValueTypeDict\"\n :show-delete=\"innerValue.length > 1\"\n :key-value-type=\"props.keyValueType\"\n :key-type=\"props.keyType\"\n :key-types=\"props.keyTypes\"\n :value-type=\"props.valueType\"\n :disabled=\"props.disabled\"\n :disabled-value=\"props.disabledValue\"\n :disabled-key=\"props.disabledKey\"\n :disabled-delete=\"props.disabledDelete\"\n @delete=\"handleDelete(idx)\"\n @change=\"handleChange\"\n >\n <template\n v-for=\"item in Object.keys($slots)\"\n :key=\"item\"\n #[item]=\"data\"\n >\n <slot :name=\"item\" v-bind=\"data || {}\" :index=\"idx\"></slot>\n </template>\n </key-value-item>\n </div>\n\n <ll-button\n :class=\"bem.e('add')\"\n :loading=\"loading\"\n :disabled=\"props.disabled || props.disabledAdd\"\n @click=\"handleAddItem\"\n >\n <div :class=\"bem.e('plus')\">\n <ll-icon\n v-if=\"!loading\"\n icon-name=\"icon-add\"\n :class=\"bem.e('icon-add')\"\n />\n {{ props.addText }}\n </div>\n </ll-button>\n </a-spin>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { ref, computed, watch } from 'vue'\nimport { Form } from 'ant-design-vue'\nimport { createNamespace } from '@ll-plus/utils'\nimport {\n keyValueProps,\n keyValueEmits,\n getKeyValueItem,\n type KeyValueItem\n} from './config'\nimport keyValueItem from './components/key-value-item.vue'\n\ndefineOptions({ name: 'LlKeyValue' })\n\nconst props = defineProps(keyValueProps)\nconst emits = defineEmits(keyValueEmits)\nconst bem = createNamespace('key-value')\nconst formItemContext = Form.useInjectFormItemContext()\n\nconst innerValue = ref<KeyValueItem[]>([])\n\nconst keyValueItems = ref<any[]>([])\n\nconst keyValueTypeDict = computed(() => {\n const obj = {}\n props.keyTypes.map(e => {\n obj[e.value] = e.option\n })\n return obj\n})\n\nconst handleAddItem = () => {\n innerValue.value.push(getKeyValueItem())\n emits('add', {\n index: innerValue.value.length - 1,\n item: innerValue.value[innerValue.value.length - 1],\n value: innerValue.value\n })\n handleChange()\n}\n\nconst handleDelete = (idx: number) => {\n innerValue.value.splice(idx, 1)\n emits('delete', idx)\n handleChange()\n}\n\nconst handleChange = () => {\n try {\n formItemContext.onFieldChange()\n emits('change', innerValue.value)\n emits('update:value', innerValue.value)\n } catch (error) {\n console.error(error)\n }\n}\n\nwatch(\n () => props.value,\n n => {\n innerValue.value = n && n.length > 0 ? n : [{ key: null, value: null }]\n },\n {\n immediate: true,\n deep: true\n }\n)\n</script>\n"],"names":["createNamespace","Form","ref","computed","getKeyValueItem","watch"],"mappings":";;;;;;;;;;;;;;;;;;;AAoEA,IAAA,MAAM,KAAQ,GAAA,OAAA,CAAA;AACd,IAAA,MAAM,KAAQ,GAAA,MAAA,CAAA;AACd,IAAM,MAAA,GAAA,GAAMA,gCAAgB,WAAW,CAAA,CAAA;AACvC,IAAM,MAAA,eAAA,GAAkBC,kBAAK,wBAAyB,EAAA,CAAA;AAEtD,IAAM,MAAA,UAAA,GAAaC,OAAoB,CAAA,EAAE,CAAA,CAAA;AAEzC,IAAM,MAAA,aAAA,GAAgBA,OAAW,CAAA,EAAE,CAAA,CAAA;AAEnC,IAAM,MAAA,gBAAA,GAAmBC,aAAS,MAAM;AACtC,MAAA,MAAM,MAAM,EAAC,CAAA;AACb,MAAM,KAAA,CAAA,QAAA,CAAS,IAAI,CAAK,CAAA,KAAA;AACtB,QAAI,GAAA,CAAA,CAAA,CAAE,KAAK,CAAA,GAAI,CAAE,CAAA,MAAA,CAAA;AAAA,OAClB,CAAA,CAAA;AACD,MAAO,OAAA,GAAA,CAAA;AAAA,KACR,CAAA,CAAA;AAED,IAAA,MAAM,gBAAgB,MAAM;AAC1B,MAAW,UAAA,CAAA,KAAA,CAAM,IAAK,CAAAC,wBAAA,EAAiB,CAAA,CAAA;AACvC,MAAA,KAAA,CAAM,KAAO,EAAA;AAAA,QACX,KAAA,EAAO,UAAW,CAAA,KAAA,CAAM,MAAS,GAAA,CAAA;AAAA,QACjC,MAAM,UAAW,CAAA,KAAA,CAAM,UAAW,CAAA,KAAA,CAAM,SAAS,CAAC,CAAA;AAAA,QAClD,OAAO,UAAW,CAAA,KAAA;AAAA,OACnB,CAAA,CAAA;AACD,MAAa,YAAA,EAAA,CAAA;AAAA,KACf,CAAA;AAEA,IAAM,MAAA,YAAA,GAAe,CAAC,GAAgB,KAAA;AACpC,MAAW,UAAA,CAAA,KAAA,CAAM,MAAO,CAAA,GAAA,EAAK,CAAC,CAAA,CAAA;AAC9B,MAAA,KAAA,CAAM,UAAU,GAAG,CAAA,CAAA;AACnB,MAAa,YAAA,EAAA,CAAA;AAAA,KACf,CAAA;AAEA,IAAA,MAAM,eAAe,MAAM;AACzB,MAAI,IAAA;AACF,QAAA,eAAA,CAAgB,aAAc,EAAA,CAAA;AAC9B,QAAM,KAAA,CAAA,QAAA,EAAU,WAAW,KAAK,CAAA,CAAA;AAChC,QAAM,KAAA,CAAA,cAAA,EAAgB,WAAW,KAAK,CAAA,CAAA;AAAA,eAC/B,KAAO,EAAA;AACd,QAAA,OAAA,CAAQ,MAAM,KAAK,CAAA,CAAA;AAAA,OACrB;AAAA,KACF,CAAA;AAEA,IAAAC,SAAA;AAAA,MACE,MAAM,KAAM,CAAA,KAAA;AAAA,MACZ,CAAK,CAAA,KAAA;AACH,QAAA,UAAA,CAAW,KAAQ,GAAA,CAAA,IAAK,CAAE,CAAA,MAAA,GAAS,CAAI,GAAA,CAAA,GAAI,CAAC,EAAE,GAAK,EAAA,IAAA,EAAM,KAAO,EAAA,IAAA,EAAM,CAAA,CAAA;AAAA,OACxE;AAAA,MACA;AAAA,QACE,SAAW,EAAA,IAAA;AAAA,QACX,IAAM,EAAA,IAAA;AAAA,OACR;AAAA,KACF,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -46,7 +46,7 @@ export declare const LlModal: import("ll-plus/es/utils").SFCWithInstall<import("
|
|
|
46
46
|
getBindValue: import("vue").ComputedRef<import("./src/modal").IResultType>;
|
|
47
47
|
handleCancel: () => void;
|
|
48
48
|
handleOk: () => void;
|
|
49
|
-
handleResize: () => Promise<void>;
|
|
49
|
+
handleResize: (value: boolean) => Promise<void>;
|
|
50
50
|
readonly Modal: {
|
|
51
51
|
new (...args: any[]): import("@vue/runtime-core").CreateComponentPublicInstance<Readonly<import("vue").ExtractPropTypes<{
|
|
52
52
|
prefixCls: StringConstructor;
|
|
@@ -46,7 +46,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
46
46
|
getBindValue: import("vue").ComputedRef<IResultType>;
|
|
47
47
|
handleCancel: () => void;
|
|
48
48
|
handleOk: () => void;
|
|
49
|
-
handleResize: () => Promise<void>;
|
|
49
|
+
handleResize: (value: boolean) => Promise<void>;
|
|
50
50
|
readonly Modal: {
|
|
51
51
|
new (...args: any[]): import("vue").CreateComponentPublicInstance<Readonly<import("vue").ExtractPropTypes<{
|
|
52
52
|
prefixCls: StringConstructor;
|
|
@@ -41,21 +41,24 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
|
41
41
|
const handleOk = () => {
|
|
42
42
|
emits("ok");
|
|
43
43
|
};
|
|
44
|
-
const handleResize = async () => {
|
|
44
|
+
const handleResize = async (value) => {
|
|
45
45
|
await vue.nextTick();
|
|
46
46
|
const ele = document.getElementsByClassName(symbolClass.value)[0];
|
|
47
47
|
const modalBody = ele.getElementsByClassName(`ant-modal-body`)[0];
|
|
48
|
-
|
|
48
|
+
const resizeObserver = new ResizeObserver((entries) => {
|
|
49
|
+
const { scrollHeight, clientHeight } = entries[0].target;
|
|
50
|
+
hasScroll.value = scrollHeight > clientHeight;
|
|
51
|
+
});
|
|
52
|
+
if (value) {
|
|
53
|
+
resizeObserver.observe(modalBody);
|
|
54
|
+
} else {
|
|
55
|
+
resizeObserver.unobserve(modalBody);
|
|
56
|
+
}
|
|
49
57
|
};
|
|
50
58
|
vue.watch(
|
|
51
59
|
() => props.open,
|
|
52
60
|
(val) => {
|
|
53
|
-
|
|
54
|
-
handleResize();
|
|
55
|
-
window.addEventListener("resize", handleResize);
|
|
56
|
-
} else {
|
|
57
|
-
window.removeEventListener("resize", handleResize);
|
|
58
|
-
}
|
|
61
|
+
handleResize(val);
|
|
59
62
|
}
|
|
60
63
|
);
|
|
61
64
|
return (_ctx, _cache) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"modal.vue2.js","sources":["../../../../../packages/components/modal/src/modal.vue"],"sourcesContent":["<template>\n <Modal\n v-bind=\"getBindValue\"\n ref=\"modal\"\n :open=\"props.open\"\n :title=\"props.title\"\n :wrap-class-name=\"`${bem.b()} ${props.wrapClassName}`\"\n :class=\"[props.class, symbolClass, hasScroll ? bem.is('has-scroll') : '']\"\n @cancel=\"handleCancel\"\n @ok=\"handleOk\"\n >\n <div :class=\"[bem.e('container'), bem.is(props.type)]\">\n <slot />\n </div>\n <template v-if=\"props.showFooter\" #footer>\n <slot name=\"footer\">\n <!-- 确认框 -->\n\n <ll-button\n v-if=\"props.showCancel && props.type !== 'confirm'\"\n :label=\"props.cancelText ? props.cancelText : '取消'\"\n @click=\"handleCancel\"\n >\n </ll-button>\n <ll-button\n type=\"primary\"\n :loading=\"props.loading\"\n :label=\"\n props.confirmText\n ? props.confirmText\n : props.type === 'confirm'\n ? '知道了'\n : '确认'\n \"\n @click=\"handleOk\"\n />\n </slot>\n </template>\n </Modal>\n</template>\n\n<script lang=\"ts\" setup>\nimport { useAttrs, ref, watch, nextTick, computed } from 'vue'\nimport { Modal } from 'ant-design-vue'\nimport { LlButton } from '@ll-plus/components'\nimport { createNamespace } from '@ll-plus/utils'\nimport { omit } from 'lodash-es'\nimport { modalProps, modalEmits } from './modal'\nimport type { IResultType } from './modal'\ndefineOptions({ name: 'LlModal' })\n// 1.props/ref\nconst props = defineProps(modalProps)\n// 2.emits\nconst emits = defineEmits(modalEmits)\n\nconst attrs = useAttrs()\n\nconst bem = createNamespace('modal')\n\nconst modal = ref<HTMLElement>()\nconst hasScroll = ref(false)\nconst symbolClass = ref(`ll-modal-${new Date().getTime()}`)\n\nconst getBindValue = computed(() => {\n const result: IResultType = {\n ...omit({ ...attrs }, [...Object.keys(modalProps), 'wrapClassName'])\n }\n if (props.showFooter === false) {\n result.footer = null\n }\n return result\n})\n\n// 3.methods\nconst handleCancel = () => {\n emits('cancel')\n emits('update:open')\n}\nconst handleOk = () => {\n emits('ok')\n}\nconst handleResize = async () => {\n await nextTick()\n const ele = document.getElementsByClassName(symbolClass.value)[0]\n const modalBody = ele.getElementsByClassName(`ant-modal-body`)[0]\n hasScroll.value =
|
|
1
|
+
{"version":3,"file":"modal.vue2.js","sources":["../../../../../packages/components/modal/src/modal.vue"],"sourcesContent":["<template>\n <Modal\n v-bind=\"getBindValue\"\n ref=\"modal\"\n :open=\"props.open\"\n :title=\"props.title\"\n :wrap-class-name=\"`${bem.b()} ${props.wrapClassName}`\"\n :class=\"[props.class, symbolClass, hasScroll ? bem.is('has-scroll') : '']\"\n @cancel=\"handleCancel\"\n @ok=\"handleOk\"\n >\n <div :class=\"[bem.e('container'), bem.is(props.type)]\">\n <slot />\n </div>\n <template v-if=\"props.showFooter\" #footer>\n <slot name=\"footer\">\n <!-- 确认框 -->\n\n <ll-button\n v-if=\"props.showCancel && props.type !== 'confirm'\"\n :label=\"props.cancelText ? props.cancelText : '取消'\"\n @click=\"handleCancel\"\n >\n </ll-button>\n <ll-button\n type=\"primary\"\n :loading=\"props.loading\"\n :label=\"\n props.confirmText\n ? props.confirmText\n : props.type === 'confirm'\n ? '知道了'\n : '确认'\n \"\n @click=\"handleOk\"\n />\n </slot>\n </template>\n </Modal>\n</template>\n\n<script lang=\"ts\" setup>\nimport { useAttrs, ref, watch, nextTick, computed } from 'vue'\nimport { Modal } from 'ant-design-vue'\nimport { LlButton } from '@ll-plus/components'\nimport { createNamespace } from '@ll-plus/utils'\nimport { omit } from 'lodash-es'\nimport { modalProps, modalEmits } from './modal'\nimport type { IResultType } from './modal'\ndefineOptions({ name: 'LlModal' })\n// 1.props/ref\nconst props = defineProps(modalProps)\n// 2.emits\nconst emits = defineEmits(modalEmits)\n\nconst attrs = useAttrs()\n\nconst bem = createNamespace('modal')\n\nconst modal = ref<HTMLElement>()\nconst hasScroll = ref(false)\nconst symbolClass = ref(`ll-modal-${new Date().getTime()}`)\n\nconst getBindValue = computed(() => {\n const result: IResultType = {\n ...omit({ ...attrs }, [...Object.keys(modalProps), 'wrapClassName'])\n }\n if (props.showFooter === false) {\n result.footer = null\n }\n return result\n})\n\n// 3.methods\nconst handleCancel = () => {\n emits('cancel')\n emits('update:open')\n}\nconst handleOk = () => {\n emits('ok')\n}\n\nconst handleResize = async (value: boolean) => {\n await nextTick()\n const ele = document.getElementsByClassName(symbolClass.value)[0]\n const modalBody = ele.getElementsByClassName(`ant-modal-body`)[0]\n const resizeObserver = new ResizeObserver(entries => {\n // 处理大小变化的回调函数\n const { scrollHeight, clientHeight } = entries[0].target\n hasScroll.value = scrollHeight > clientHeight\n })\n if (value) {\n resizeObserver.observe(modalBody)\n } else {\n resizeObserver.unobserve(modalBody)\n }\n}\n\n// 4.watch/computed\nwatch(\n () => props.open,\n val => {\n handleResize(val)\n }\n)\n</script>\n"],"names":["useAttrs","createNamespace","modal","ref","computed","omit","modalProps","nextTick","watch"],"mappings":";;;;;;;;;;;;;;;;;;;;AAmDA,IAAA,MAAM,KAAQ,GAAA,OAAA,CAAA;AAEd,IAAA,MAAM,KAAQ,GAAA,MAAA,CAAA;AAEd,IAAA,MAAM,QAAQA,YAAS,EAAA,CAAA;AAEvB,IAAM,MAAA,GAAA,GAAMC,gCAAgB,OAAO,CAAA,CAAA;AAEnC,IAAA,MAAMC,UAAQC,OAAiB,EAAA,CAAA;AAC/B,IAAM,MAAA,SAAA,GAAYA,QAAI,KAAK,CAAA,CAAA;AAC3B,IAAM,MAAA,WAAA,GAAcA,QAAI,CAAY,SAAA,EAAA,iBAAA,IAAI,MAAO,EAAA,OAAA,EAAS,CAAE,CAAA,CAAA,CAAA;AAE1D,IAAM,MAAA,YAAA,GAAeC,aAAS,MAAM;AAClC,MAAA,MAAM,MAAsB,GAAA;AAAA,QAC1B,GAAGC,aAAA,CAAK,EAAE,GAAG,KAAM,EAAA,EAAG,CAAC,GAAG,MAAO,CAAA,IAAA,CAAKC,gBAAU,CAAA,EAAG,eAAe,CAAC,CAAA;AAAA,OACrE,CAAA;AACA,MAAI,IAAA,KAAA,CAAM,eAAe,KAAO,EAAA;AAC9B,QAAA,MAAA,CAAO,MAAS,GAAA,IAAA,CAAA;AAAA,OAClB;AACA,MAAO,OAAA,MAAA,CAAA;AAAA,KACR,CAAA,CAAA;AAGD,IAAA,MAAM,eAAe,MAAM;AACzB,MAAA,KAAA,CAAM,QAAQ,CAAA,CAAA;AACd,MAAA,KAAA,CAAM,aAAa,CAAA,CAAA;AAAA,KACrB,CAAA;AACA,IAAA,MAAM,WAAW,MAAM;AACrB,MAAA,KAAA,CAAM,IAAI,CAAA,CAAA;AAAA,KACZ,CAAA;AAEA,IAAM,MAAA,YAAA,GAAe,OAAO,KAAmB,KAAA;AAC7C,MAAA,MAAMC,YAAS,EAAA,CAAA;AACf,MAAA,MAAM,MAAM,QAAS,CAAA,sBAAA,CAAuB,WAAY,CAAA,KAAK,EAAE,CAAC,CAAA,CAAA;AAChE,MAAA,MAAM,SAAY,GAAA,GAAA,CAAI,sBAAuB,CAAA,CAAA,cAAA,CAAgB,EAAE,CAAC,CAAA,CAAA;AAChE,MAAM,MAAA,cAAA,GAAiB,IAAI,cAAA,CAAe,CAAW,OAAA,KAAA;AAEnD,QAAA,MAAM,EAAE,YAAc,EAAA,YAAA,EAAiB,GAAA,OAAA,CAAQ,CAAC,CAAE,CAAA,MAAA,CAAA;AAClD,QAAA,SAAA,CAAU,QAAQ,YAAe,GAAA,YAAA,CAAA;AAAA,OAClC,CAAA,CAAA;AACD,MAAA,IAAI,KAAO,EAAA;AACT,QAAA,cAAA,CAAe,QAAQ,SAAS,CAAA,CAAA;AAAA,OAC3B,MAAA;AACL,QAAA,cAAA,CAAe,UAAU,SAAS,CAAA,CAAA;AAAA,OACpC;AAAA,KACF,CAAA;AAGA,IAAAC,SAAA;AAAA,MACE,MAAM,KAAM,CAAA,IAAA;AAAA,MACZ,CAAO,GAAA,KAAA;AACL,QAAA,YAAA,CAAa,GAAG,CAAA,CAAA;AAAA,OAClB;AAAA,KACF,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tag-group.vue2.js","sources":["../../../../../packages/components/tag-group/src/tag-group.vue"],"sourcesContent":["<template>\n <a-spin :spinning=\"loading\">\n <div ref=\"tagsTypeRef\" :class=\"bem.b()\">\n <div :class=\"bem.e('tag-container')\">\n <template v-for=\"(item, i) in value\" :key=\"i\">\n <div\n :ref=\"getTagRefs(i)\"\n :class=\"[\n bem.m('item'),\n !shownArr.includes(item) ? bem.is('hidden') : ''\n ]\"\n >\n <div :class=\"bem.m('text')\">\n {{ item }}\n </div>\n <span :class=\"bem.m('close')\" @click=\"handleDel(i)\">\n <ll-icon\n icon-name=\"icon-close2\"\n :color=\"'#909399'\"\n :class-name=\"bem.m('close-icon')\"\n />\n </span>\n </div>\n </template>\n </div>\n\n <div :class=\"bem.e('add-container')\">\n <div v-if=\"more > 0\" :class=\"bem.m('more')\">+{{ more }}</div>\n <Popover\n v-model:open=\"visible\"\n :overlay-class-name=\"bem.e('popover')\"\n arrow-point-at-center\n trigger=\"click\"\n placement=\"bottom\"\n >\n <template #content>\n <LlInput\n v-model:value=\"inputValue\"\n placeholder=\"输入后回车新建\"\n :prefix-icon=\"`icon-search`\"\n :style=\"{ width: '300px', paddingLeft: '18px' }\"\n @press-enter.prevent=\"handleEnter\"\n />\n <ul\n v-if=\"filterOptionsValue.length > 0\"\n :class=\"bem.m('select-box')\"\n >\n <li\n v-for=\"(item, i) in filterOptionsValue\"\n :key=\"i\"\n :class=\"bem.m('select-item')\"\n @click=\"handleClickFilter(item)\"\n >\n <span :class=\"bem.m('select-text')\">\n {{ item }}\n </span>\n <ll-icon\n v-if=\"value.indexOf(item) >= 0\"\n icon-name=\"icon-check\"\n :class=\"bem.m('select-check')\"\n color=\"#1890FF\"\n />\n </li>\n </ul>\n </template>\n <div\n ref=\"btnRef\"\n :class=\"[\n mouseMove || visible ? bem.is('active') : '',\n bem.m('add-item')\n ]\"\n @mouseover=\"mouseMove = true\"\n @mouseleave=\"mouseMove = false\"\n >\n <ll-icon\n icon-name=\"icon-add\"\n :color=\"'#666'\"\n :class-name=\"bem.m('add-icon')\"\n />\n </div>\n </Popover>\n </div>\n </div>\n </a-spin>\n</template>\n\n<script setup lang=\"ts\">\nimport { Form } from 'ant-design-vue'\nimport {\n ref,\n reactive,\n nextTick,\n onMounted,\n toRef,\n watch,\n onUnmounted\n} from 'vue'\nimport { Popover } from 'ant-design-vue'\nimport { createNamespace } from '@ll-plus/utils'\nimport { tagGroupProps, tagGroupEmits } from './tag-group'\nimport type { Ref } from 'vue'\ndefineOptions({ name: 'LlTagGroup' })\n\nconst props = defineProps(tagGroupProps)\nconst emits = defineEmits(tagGroupEmits)\nconst bem = createNamespace('tag-group')\nconst formItemContext = Form.useInjectFormItemContext()\n\nconst loading = ref(false)\nconst inputValue = ref('')\nconst visible = ref(false)\nconst value = toRef(props.value?.length ? props.value.split(',') : [])\nconst more = ref(0)\nconst btnRef = ref()\nconst mouseMove = ref(false)\nconst tagsTypeRef = ref<HTMLDivElement | null>(null)\nconst tagRefs: Ref<HTMLDivElement>[] = reactive([])\nconst filterOptionsValue = ref(props.options)\nconst innerOptions = ref(props.options)\nconst tagsTypeWidth = ref(0)\nconst shownArr = ref<string[]>([])\nconst getTagRefs = (i: number) => {\n return (el: any) => {\n if (el) {\n tagRefs[i] = toRef(el)\n } else {\n tagRefs.splice(i, 1)\n }\n }\n}\n\nconst getWidth = () => {\n nextTick(() => {\n setTimeout(() => {\n if (tagsTypeRef.value) {\n tagsTypeWidth.value = tagsTypeRef.value.offsetWidth - 90\n }\n }, 0)\n })\n}\n\nconst handleEnter = () => {\n let arr = value.value\n if (!inputValue.value) return\n if (innerOptions.value.indexOf(inputValue.value) < 0) {\n innerOptions.value.push(inputValue.value)\n emits('update:options', innerOptions.value)\n arr.push(inputValue.value)\n } else {\n if (arr.indexOf(inputValue.value) < 0) {\n arr.push(inputValue.value)\n } else {\n arr = arr.filter(e => e !== inputValue.value)\n }\n }\n value.value = arr\n // inputValue.value = ''\n}\n\nconst handleDel = (idx: number) => {\n value.value.splice(idx, 1)\n}\n\nconst handleClickFilter = (item: string) => {\n let arr = value.value\n if (arr.indexOf(item) >= 0) {\n arr = arr.filter(e => e !== item)\n } else {\n arr.push(item)\n }\n value.value = arr\n}\nwatch(\n () => props.options,\n n => {\n innerOptions.value = n\n },\n {\n deep: true,\n immediate: true\n }\n)\nwatch(\n [() => value.value.length, tagsTypeWidth],\n async (n, o) => {\n await nextTick()\n const arr: string[] = []\n let moreLeftValue = 0\n for (const i in value.value) {\n const tagetWidth = tagRefs[i].value.offsetWidth + 10\n\n if (moreLeftValue + tagetWidth >= n[1]) {\n break\n } else {\n moreLeftValue += tagetWidth\n arr.push(value.value[i])\n }\n }\n more.value = n[0] - arr.length > 0 ? n[0] - arr.length : 0\n shownArr.value = arr\n emits('update:value', value.value.join(','))\n emits('change', value.value.join(','))\n\n if (o[0]) {\n if (n[0] !== o[0]) {\n formItemContext.onFieldChange()\n formItemContext.onFieldBlur()\n }\n }\n },\n {\n deep: true,\n immediate: true\n }\n)\nwatch(\n () => [innerOptions, inputValue],\n () => {\n if (!inputValue.value) filterOptionsValue.value = innerOptions.value\n filterOptionsValue.value = innerOptions.value.filter(\n (e: string) => e.indexOf(inputValue.value) >= 0\n )\n },\n {\n deep: true,\n immediate: true\n }\n)\nonMounted(async () => {\n getWidth()\n window.addEventListener('resize', getWidth)\n})\nonUnmounted(() => {\n window.removeEventListener('resize', getWidth)\n})\n</script>\n"],"names":["createNamespace","Form","ref","toRef","reactive","nextTick","watch","onMounted","onUnmounted"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tag-group.vue2.js","sources":["../../../../../packages/components/tag-group/src/tag-group.vue"],"sourcesContent":["<template>\n <a-spin :spinning=\"loading\">\n <div ref=\"tagsTypeRef\" :class=\"bem.b()\">\n <div :class=\"bem.e('tag-container')\">\n <template v-for=\"(item, i) in value\" :key=\"i\">\n <div\n :ref=\"getTagRefs(i)\"\n :class=\"[\n bem.m('item'),\n !shownArr.includes(item) ? bem.is('hidden') : ''\n ]\"\n >\n <div :class=\"bem.m('text')\">\n {{ item }}\n </div>\n <span :class=\"bem.m('close')\" @click=\"handleDel(i)\">\n <ll-icon\n icon-name=\"icon-close2\"\n :color=\"'#909399'\"\n :class-name=\"bem.m('close-icon')\"\n />\n </span>\n </div>\n </template>\n </div>\n\n <div :class=\"bem.e('add-container')\">\n <div v-if=\"more > 0\" :class=\"bem.m('more')\">+{{ more }}</div>\n <Popover\n v-model:open=\"visible\"\n :overlay-class-name=\"bem.e('popover')\"\n arrow-point-at-center\n trigger=\"click\"\n placement=\"bottom\"\n >\n <template #content>\n <LlInput\n v-model:value=\"inputValue\"\n placeholder=\"输入后回车新建\"\n :prefix-icon=\"`icon-search`\"\n :style=\"{ width: '300px', paddingLeft: '18px' }\"\n @press-enter.prevent=\"handleEnter\"\n />\n <ul\n v-if=\"filterOptionsValue.length > 0\"\n :class=\"bem.m('select-box')\"\n >\n <li\n v-for=\"(item, i) in filterOptionsValue\"\n :key=\"i\"\n :class=\"bem.m('select-item')\"\n @click=\"handleClickFilter(item)\"\n >\n <span :class=\"bem.m('select-text')\">\n {{ item }}\n </span>\n <ll-icon\n v-if=\"value.indexOf(item) >= 0\"\n icon-name=\"icon-check\"\n :class=\"bem.m('select-check')\"\n color=\"#1890FF\"\n />\n </li>\n </ul>\n </template>\n <div\n ref=\"btnRef\"\n :class=\"[\n mouseMove || visible ? bem.is('active') : '',\n bem.m('add-item')\n ]\"\n @mouseover=\"mouseMove = true\"\n @mouseleave=\"mouseMove = false\"\n >\n <ll-icon\n icon-name=\"icon-add\"\n :color=\"'#666'\"\n :class-name=\"bem.m('add-icon')\"\n />\n </div>\n </Popover>\n </div>\n </div>\n </a-spin>\n</template>\n\n<script setup lang=\"ts\">\nimport {\n ref,\n reactive,\n nextTick,\n onMounted,\n toRef,\n watch,\n onUnmounted\n} from 'vue'\nimport { Form } from 'ant-design-vue'\n\nimport { Popover } from 'ant-design-vue'\nimport { createNamespace } from '@ll-plus/utils'\nimport { tagGroupProps, tagGroupEmits } from './tag-group'\nimport type { Ref } from 'vue'\ndefineOptions({ name: 'LlTagGroup' })\n\nconst props = defineProps(tagGroupProps)\nconst emits = defineEmits(tagGroupEmits)\nconst bem = createNamespace('tag-group')\nconst formItemContext = Form.useInjectFormItemContext()\n\nconst loading = ref(false)\nconst inputValue = ref('')\nconst visible = ref(false)\nconst value = toRef(props.value?.length ? props.value.split(',') : [])\nconst more = ref(0)\nconst btnRef = ref()\nconst mouseMove = ref(false)\nconst tagsTypeRef = ref<HTMLDivElement | null>(null)\nconst tagRefs: Ref<HTMLDivElement>[] = reactive([])\nconst filterOptionsValue = ref(props.options)\nconst innerOptions = ref(props.options)\nconst tagsTypeWidth = ref(0)\nconst shownArr = ref<string[]>([])\nconst getTagRefs = (i: number) => {\n return (el: any) => {\n if (el) {\n tagRefs[i] = toRef(el)\n } else {\n tagRefs.splice(i, 1)\n }\n }\n}\n\nconst getWidth = () => {\n nextTick(() => {\n setTimeout(() => {\n if (tagsTypeRef.value) {\n tagsTypeWidth.value = tagsTypeRef.value.offsetWidth - 90\n }\n }, 0)\n })\n}\n\nconst handleEnter = () => {\n let arr = value.value\n if (!inputValue.value) return\n if (innerOptions.value.indexOf(inputValue.value) < 0) {\n innerOptions.value.push(inputValue.value)\n emits('update:options', innerOptions.value)\n arr.push(inputValue.value)\n } else {\n if (arr.indexOf(inputValue.value) < 0) {\n arr.push(inputValue.value)\n } else {\n arr = arr.filter(e => e !== inputValue.value)\n }\n }\n value.value = arr\n // inputValue.value = ''\n}\n\nconst handleDel = (idx: number) => {\n value.value.splice(idx, 1)\n}\n\nconst handleClickFilter = (item: string) => {\n let arr = value.value\n if (arr.indexOf(item) >= 0) {\n arr = arr.filter(e => e !== item)\n } else {\n arr.push(item)\n }\n value.value = arr\n}\nwatch(\n () => props.options,\n n => {\n innerOptions.value = n\n },\n {\n deep: true,\n immediate: true\n }\n)\nwatch(\n [() => value.value.length, tagsTypeWidth],\n async (n, o) => {\n await nextTick()\n const arr: string[] = []\n let moreLeftValue = 0\n for (const i in value.value) {\n const tagetWidth = tagRefs[i].value.offsetWidth + 10\n\n if (moreLeftValue + tagetWidth >= n[1]) {\n break\n } else {\n moreLeftValue += tagetWidth\n arr.push(value.value[i])\n }\n }\n more.value = n[0] - arr.length > 0 ? n[0] - arr.length : 0\n shownArr.value = arr\n emits('update:value', value.value.join(','))\n emits('change', value.value.join(','))\n\n if (o[0]) {\n if (n[0] !== o[0]) {\n formItemContext.onFieldChange()\n formItemContext.onFieldBlur()\n }\n }\n },\n {\n deep: true,\n immediate: true\n }\n)\nwatch(\n () => [innerOptions, inputValue],\n () => {\n if (!inputValue.value) filterOptionsValue.value = innerOptions.value\n filterOptionsValue.value = innerOptions.value.filter(\n (e: string) => e.indexOf(inputValue.value) >= 0\n )\n },\n {\n deep: true,\n immediate: true\n }\n)\nonMounted(async () => {\n getWidth()\n window.addEventListener('resize', getWidth)\n})\nonUnmounted(() => {\n window.removeEventListener('resize', getWidth)\n})\n</script>\n"],"names":["createNamespace","Form","ref","toRef","reactive","nextTick","watch","onMounted","onUnmounted"],"mappings":"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"}
|
|
@@ -5,10 +5,12 @@ export declare const LlUriInput: import("ll-plus/es/utils").SFCWithInstall<impor
|
|
|
5
5
|
readonly value: import("ll-plus/es/utils").EpPropFinalized<readonly [StringConstructor, null], unknown, unknown, "", boolean>;
|
|
6
6
|
readonly suffix: import("ll-plus/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
|
|
7
7
|
readonly disabled: import("ll-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
|
|
8
|
+
readonly placeholder: import("ll-plus/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, "请输入", boolean>;
|
|
8
9
|
}, {
|
|
9
10
|
props: import("@vue/shared").LooseRequired<{
|
|
10
11
|
readonly value: any;
|
|
11
12
|
readonly disabled: import("ll-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
13
|
+
readonly placeholder: string;
|
|
12
14
|
readonly suffix: string;
|
|
13
15
|
readonly onChange?: ((value: string) => any) | undefined;
|
|
14
16
|
readonly "onUpdate:value"?: ((value: string) => any) | undefined;
|
|
@@ -34,12 +36,14 @@ export declare const LlUriInput: import("ll-plus/es/utils").SFCWithInstall<impor
|
|
|
34
36
|
readonly value: import("ll-plus/es/utils").EpPropFinalized<readonly [StringConstructor, null], unknown, unknown, "", boolean>;
|
|
35
37
|
readonly suffix: import("ll-plus/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
|
|
36
38
|
readonly disabled: import("ll-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
|
|
39
|
+
readonly placeholder: import("ll-plus/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, "请输入", boolean>;
|
|
37
40
|
}>> & {
|
|
38
41
|
onChange?: ((value: string) => any) | undefined;
|
|
39
42
|
"onUpdate:value"?: ((value: string) => any) | undefined;
|
|
40
43
|
}, {
|
|
41
44
|
readonly value: any;
|
|
42
45
|
readonly disabled: import("ll-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
|
|
46
|
+
readonly placeholder: string;
|
|
43
47
|
readonly suffix: string;
|
|
44
48
|
}, {}>>;
|
|
45
49
|
export default LlUriInput;
|
|
@@ -12,6 +12,7 @@ export declare const uriInputProps: {
|
|
|
12
12
|
readonly value: import("ll-plus/es/utils").EpPropFinalized<readonly [StringConstructor, null], unknown, unknown, "", boolean>;
|
|
13
13
|
readonly suffix: import("ll-plus/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
|
|
14
14
|
readonly disabled: import("ll-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
|
|
15
|
+
readonly placeholder: import("ll-plus/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, "请输入", boolean>;
|
|
15
16
|
};
|
|
16
17
|
export declare const uriInputEmits: {
|
|
17
18
|
'update:value': (value: string) => boolean;
|