ll-plus 2.6.2 → 2.6.4
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/advanced-filtering/index.d.ts +284 -284
- package/es/components/advanced-filtering/src/advanced-filtering.vue.d.ts +142 -142
- package/es/components/advanced-filtering/src/components/advanced-filtering-params.vue.d.ts +142 -142
- package/es/components/breadcrumb-card/index.d.ts +1 -1
- package/es/components/breadcrumb-card/src/breadcrumb-card.vue.d.ts +1 -1
- package/es/components/cascader/index.d.ts +8 -8
- package/es/components/cascader/src/cascader.vue.d.ts +8 -8
- package/es/components/checkbox/index.d.ts +217 -217
- package/es/components/checkbox/src/checkbox-group.vue.d.ts +217 -217
- package/es/components/checkbox/src/checkbox.d.ts +56 -56
- package/es/components/drawer/index.d.ts +5 -5
- 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/drawer/src/drawer.vue.d.ts +5 -5
- package/es/components/easy-cron/index.d.ts +95 -95
- package/es/components/easy-cron/src/components/easy-cron-inner.vue.d.ts +88 -88
- package/es/components/easy-cron/src/components/easy-cron-modal.vue.d.ts +88 -88
- package/es/components/easy-cron/src/easy-cron.vue.d.ts +95 -95
- package/es/components/form/index.d.ts +142 -142
- package/es/components/form/src/components/form-component.vue.d.ts +1 -1
- package/es/components/form/src/config/form.d.ts +56 -56
- package/es/components/form/src/form.vue.d.ts +141 -141
- package/es/components/icon-base/index.d.ts +13 -0
- package/es/components/icon-base/src/icon-base.d.ts +7 -1
- package/es/components/icon-base/src/icon-base.vue.d.ts +13 -0
- package/es/components/input/index.d.ts +33 -33
- package/es/components/input/src/input.vue.d.ts +33 -33
- package/es/components/key-value/index.d.ts +678 -678
- package/es/components/key-value/src/components/key-value-item.vue.d.ts +226 -226
- package/es/components/key-value/src/key-value.vue.d.ts +678 -678
- package/es/components/modal/index.d.ts +1 -1
- package/es/components/modal/src/modal.vue.d.ts +1 -1
- package/es/components/new-drawer/index.d.ts +7 -7
- package/es/components/new-drawer/src/drawer.vue.d.ts +7 -7
- package/es/components/new-modal/index.d.ts +2 -2
- package/es/components/new-modal/src/modal.vue.d.ts +2 -2
- package/es/components/operate-icon/index.d.ts +3201 -0
- package/es/components/operate-icon/src/operate-icon.vue.d.ts +3201 -0
- package/es/components/rich-text-editor/index.d.ts +1 -1
- package/es/components/rich-text-editor/src/rich-text-editor.vue.d.ts +1 -1
- package/es/components/select/index.d.ts +4 -4
- package/es/components/select/src/select.vue.d.ts +4 -4
- package/es/components/select-group/index.d.ts +2 -2
- package/es/components/select-group/src/select-group.d.ts +1 -1
- package/es/components/select-group/src/select-group.vue.d.ts +2 -2
- package/es/components/table/index.d.ts +6 -6
- package/es/components/table/src/components/main-table.vue.d.ts +2 -2
- package/es/components/table/src/config/table.d.ts +2 -2
- package/es/components/table/src/table.vue.d.ts +6 -6
- package/es/components/textarea/index.d.ts +5 -5
- package/es/components/textarea/src/textarea.vue.d.ts +5 -5
- package/es/components/tooltip/index.d.ts +4 -4
- package/es/components/tooltip/src/tooltip.d.ts +1 -1
- package/es/components/tooltip/src/tooltip.vue.d.ts +4 -4
- package/es/components/tree-search/index.d.ts +1 -1
- package/es/components/tree-search/src/tree-search.vue.d.ts +1 -1
- package/es/components/upload-drag/index.d.ts +2 -2
- package/es/components/upload-drag/src/upload-drag.vue.d.ts +2 -2
- package/es/packages/components/cropper/src/cropper-modal.vue2.mjs +22 -5
- package/es/packages/components/cropper/src/cropper-modal.vue2.mjs.map +1 -1
- package/es/packages/components/icon-base/src/icon-base.mjs +6 -0
- package/es/packages/components/icon-base/src/icon-base.mjs.map +1 -1
- package/es/packages/components/icon-base/src/icon-base.vue2.mjs +5 -3
- package/es/packages/components/icon-base/src/icon-base.vue2.mjs.map +1 -1
- package/es/packages/components/operate-icon/src/operate-icon.vue2.mjs +1 -1
- package/es/packages/components/operate-icon/src/operate-icon.vue2.mjs.map +1 -1
- package/es/packages/components/table/src/components/pagination.vue2.mjs +0 -2
- package/es/packages/components/table/src/components/pagination.vue2.mjs.map +1 -1
- package/es/utils/props/runtime.d.ts +2 -2
- package/index.full.js +32 -9
- package/index.full.min.js +4 -4
- package/index.full.min.js.map +1 -1
- package/index.full.min.mjs +18 -18
- package/index.full.min.mjs.map +1 -1
- package/index.full.mjs +32 -9
- package/lib/components/advanced-filtering/index.d.ts +284 -284
- package/lib/components/advanced-filtering/src/advanced-filtering.vue.d.ts +142 -142
- package/lib/components/advanced-filtering/src/components/advanced-filtering-params.vue.d.ts +142 -142
- package/lib/components/breadcrumb-card/index.d.ts +1 -1
- package/lib/components/breadcrumb-card/src/breadcrumb-card.vue.d.ts +1 -1
- package/lib/components/cascader/index.d.ts +8 -8
- package/lib/components/cascader/src/cascader.vue.d.ts +8 -8
- package/lib/components/checkbox/index.d.ts +217 -217
- package/lib/components/checkbox/src/checkbox-group.vue.d.ts +217 -217
- package/lib/components/checkbox/src/checkbox.d.ts +56 -56
- package/lib/components/drawer/index.d.ts +5 -5
- 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/drawer/src/drawer.vue.d.ts +5 -5
- package/lib/components/easy-cron/index.d.ts +95 -95
- package/lib/components/easy-cron/src/components/easy-cron-inner.vue.d.ts +88 -88
- package/lib/components/easy-cron/src/components/easy-cron-modal.vue.d.ts +88 -88
- package/lib/components/easy-cron/src/easy-cron.vue.d.ts +95 -95
- package/lib/components/form/index.d.ts +142 -142
- package/lib/components/form/src/components/form-component.vue.d.ts +1 -1
- package/lib/components/form/src/config/form.d.ts +56 -56
- package/lib/components/form/src/form.vue.d.ts +141 -141
- package/lib/components/icon-base/index.d.ts +13 -0
- package/lib/components/icon-base/src/icon-base.d.ts +7 -1
- package/lib/components/icon-base/src/icon-base.vue.d.ts +13 -0
- package/lib/components/input/index.d.ts +33 -33
- package/lib/components/input/src/input.vue.d.ts +33 -33
- package/lib/components/key-value/index.d.ts +678 -678
- package/lib/components/key-value/src/components/key-value-item.vue.d.ts +226 -226
- package/lib/components/key-value/src/key-value.vue.d.ts +678 -678
- package/lib/components/modal/index.d.ts +1 -1
- package/lib/components/modal/src/modal.vue.d.ts +1 -1
- package/lib/components/new-drawer/index.d.ts +7 -7
- package/lib/components/new-drawer/src/drawer.vue.d.ts +7 -7
- package/lib/components/new-modal/index.d.ts +2 -2
- package/lib/components/new-modal/src/modal.vue.d.ts +2 -2
- package/lib/components/operate-icon/index.d.ts +3201 -0
- package/lib/components/operate-icon/src/operate-icon.vue.d.ts +3201 -0
- package/lib/components/rich-text-editor/index.d.ts +1 -1
- package/lib/components/rich-text-editor/src/rich-text-editor.vue.d.ts +1 -1
- package/lib/components/select/index.d.ts +4 -4
- package/lib/components/select/src/select.vue.d.ts +4 -4
- package/lib/components/select-group/index.d.ts +2 -2
- package/lib/components/select-group/src/select-group.d.ts +1 -1
- package/lib/components/select-group/src/select-group.vue.d.ts +2 -2
- package/lib/components/table/index.d.ts +6 -6
- package/lib/components/table/src/components/main-table.vue.d.ts +2 -2
- package/lib/components/table/src/config/table.d.ts +2 -2
- package/lib/components/table/src/table.vue.d.ts +6 -6
- package/lib/components/textarea/index.d.ts +5 -5
- package/lib/components/textarea/src/textarea.vue.d.ts +5 -5
- package/lib/components/tooltip/index.d.ts +4 -4
- package/lib/components/tooltip/src/tooltip.d.ts +1 -1
- package/lib/components/tooltip/src/tooltip.vue.d.ts +4 -4
- package/lib/components/tree-search/index.d.ts +1 -1
- package/lib/components/tree-search/src/tree-search.vue.d.ts +1 -1
- package/lib/components/upload-drag/index.d.ts +2 -2
- package/lib/components/upload-drag/src/upload-drag.vue.d.ts +2 -2
- package/lib/packages/components/cropper/src/cropper-modal.vue2.js +21 -4
- package/lib/packages/components/cropper/src/cropper-modal.vue2.js.map +1 -1
- package/lib/packages/components/icon-base/src/icon-base.js +6 -0
- package/lib/packages/components/icon-base/src/icon-base.js.map +1 -1
- package/lib/packages/components/icon-base/src/icon-base.vue2.js +4 -2
- package/lib/packages/components/icon-base/src/icon-base.vue2.js.map +1 -1
- package/lib/packages/components/operate-icon/src/operate-icon.vue2.js +1 -1
- package/lib/packages/components/operate-icon/src/operate-icon.vue2.js.map +1 -1
- package/lib/packages/components/table/src/components/pagination.vue2.js +0 -2
- package/lib/packages/components/table/src/components/pagination.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/new-modal.css +1 -1
- package/types/packages/components/advanced-filtering/index.d.ts +284 -284
- package/types/packages/components/advanced-filtering/src/advanced-filtering.vue.d.ts +142 -142
- package/types/packages/components/advanced-filtering/src/components/advanced-filtering-params.vue.d.ts +142 -142
- package/types/packages/components/breadcrumb-card/index.d.ts +1 -1
- package/types/packages/components/breadcrumb-card/src/breadcrumb-card.vue.d.ts +1 -1
- package/types/packages/components/cascader/index.d.ts +8 -8
- package/types/packages/components/cascader/src/cascader.vue.d.ts +8 -8
- package/types/packages/components/checkbox/index.d.ts +217 -217
- package/types/packages/components/checkbox/src/checkbox-group.vue.d.ts +217 -217
- package/types/packages/components/checkbox/src/checkbox.d.ts +56 -56
- package/types/packages/components/drawer/index.d.ts +5 -5
- 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/drawer/src/drawer.vue.d.ts +5 -5
- package/types/packages/components/easy-cron/index.d.ts +95 -95
- package/types/packages/components/easy-cron/src/components/easy-cron-inner.vue.d.ts +88 -88
- package/types/packages/components/easy-cron/src/components/easy-cron-modal.vue.d.ts +88 -88
- package/types/packages/components/easy-cron/src/easy-cron.vue.d.ts +95 -95
- package/types/packages/components/form/index.d.ts +142 -142
- package/types/packages/components/form/src/components/form-component.vue.d.ts +1 -1
- package/types/packages/components/form/src/config/form.d.ts +56 -56
- package/types/packages/components/form/src/form.vue.d.ts +141 -141
- package/types/packages/components/icon-base/index.d.ts +13 -0
- package/types/packages/components/icon-base/src/icon-base.d.ts +7 -1
- package/types/packages/components/icon-base/src/icon-base.vue.d.ts +13 -0
- package/types/packages/components/input/index.d.ts +33 -33
- package/types/packages/components/input/src/input.vue.d.ts +33 -33
- package/types/packages/components/key-value/index.d.ts +678 -678
- package/types/packages/components/key-value/src/components/key-value-item.vue.d.ts +226 -226
- package/types/packages/components/key-value/src/key-value.vue.d.ts +678 -678
- 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/new-drawer/index.d.ts +7 -7
- package/types/packages/components/new-drawer/src/drawer.vue.d.ts +7 -7
- package/types/packages/components/new-modal/index.d.ts +2 -2
- package/types/packages/components/new-modal/src/modal.vue.d.ts +2 -2
- package/types/packages/components/operate-icon/index.d.ts +3201 -0
- package/types/packages/components/operate-icon/src/operate-icon.vue.d.ts +3201 -0
- package/types/packages/components/rich-text-editor/index.d.ts +1 -1
- package/types/packages/components/rich-text-editor/src/rich-text-editor.vue.d.ts +1 -1
- package/types/packages/components/select/index.d.ts +4 -4
- package/types/packages/components/select/src/select.vue.d.ts +4 -4
- package/types/packages/components/select-group/index.d.ts +2 -2
- package/types/packages/components/select-group/src/select-group.d.ts +1 -1
- package/types/packages/components/select-group/src/select-group.vue.d.ts +2 -2
- package/types/packages/components/table/index.d.ts +6 -6
- package/types/packages/components/table/src/components/main-table.vue.d.ts +2 -2
- package/types/packages/components/table/src/config/table.d.ts +2 -2
- package/types/packages/components/table/src/table.vue.d.ts +6 -6
- package/types/packages/components/textarea/index.d.ts +5 -5
- package/types/packages/components/textarea/src/textarea.vue.d.ts +5 -5
- package/types/packages/components/tooltip/index.d.ts +4 -4
- package/types/packages/components/tooltip/src/tooltip.d.ts +1 -1
- package/types/packages/components/tooltip/src/tooltip.vue.d.ts +4 -4
- package/types/packages/components/tree-search/index.d.ts +1 -1
- package/types/packages/components/tree-search/src/tree-search.vue.d.ts +1 -1
- package/types/packages/components/upload-drag/index.d.ts +2 -2
- package/types/packages/components/upload-drag/src/upload-drag.vue.d.ts +2 -2
- package/types/packages/utils/props/runtime.d.ts +2 -2
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { defineComponent, ref, resolveComponent, openBlock, createElementBlock, Fragment, createVNode, withCtx, createElementVNode, normalizeClass, unref, createBlock, createCommentVNode, renderSlot } from 'vue';
|
|
1
|
+
import { defineComponent, ref, watch, resolveComponent, openBlock, createElementBlock, Fragment, createVNode, withCtx, createElementVNode, normalizeClass, unref, createBlock, createCommentVNode, normalizeStyle, renderSlot } from 'vue';
|
|
2
2
|
import '../../../utils/index.mjs';
|
|
3
3
|
import CropperImage from './cropper-image.vue.mjs';
|
|
4
4
|
import { cropperModalProps, cropperModalEmits } from './cropper-image.mjs';
|
|
@@ -34,6 +34,8 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
34
34
|
return false;
|
|
35
35
|
}
|
|
36
36
|
function handleOpen() {
|
|
37
|
+
if (props.disabled)
|
|
38
|
+
return;
|
|
37
39
|
open.value = true;
|
|
38
40
|
}
|
|
39
41
|
function handleCropend({ imgBase64 }) {
|
|
@@ -57,6 +59,17 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
57
59
|
avatar.value = previewSource.value;
|
|
58
60
|
open.value = false;
|
|
59
61
|
}
|
|
62
|
+
watch(
|
|
63
|
+
() => props.avatar,
|
|
64
|
+
(val) => {
|
|
65
|
+
console.log({ val });
|
|
66
|
+
src.value = val;
|
|
67
|
+
avatar.value = val;
|
|
68
|
+
},
|
|
69
|
+
{
|
|
70
|
+
immediate: true
|
|
71
|
+
}
|
|
72
|
+
);
|
|
60
73
|
return (_ctx, _cache) => {
|
|
61
74
|
const _component_ll_icon = resolveComponent("ll-icon");
|
|
62
75
|
const _component_ll_button = resolveComponent("ll-button");
|
|
@@ -98,7 +111,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
98
111
|
class: normalizeClass(unref(bem).e("cropper"))
|
|
99
112
|
},
|
|
100
113
|
[
|
|
101
|
-
src.value ? (openBlock(), createBlock(CropperImage, {
|
|
114
|
+
src.value && open.value ? (openBlock(), createBlock(CropperImage, {
|
|
102
115
|
key: 0,
|
|
103
116
|
src: src.value,
|
|
104
117
|
height: "300px",
|
|
@@ -379,6 +392,9 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
379
392
|
"div",
|
|
380
393
|
{
|
|
381
394
|
class: normalizeClass(unref(bem).e("cropper-avatar")),
|
|
395
|
+
style: normalizeStyle({
|
|
396
|
+
cursor: props.disabled ? "not-allowed" : "pointer"
|
|
397
|
+
}),
|
|
382
398
|
onClick: handleOpen
|
|
383
399
|
},
|
|
384
400
|
[
|
|
@@ -386,12 +402,13 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
386
402
|
createVNode(_component_ll_image, {
|
|
387
403
|
src: avatar.value,
|
|
388
404
|
width: 64,
|
|
389
|
-
height: 64
|
|
405
|
+
height: 64,
|
|
406
|
+
preview: false
|
|
390
407
|
}, null, 8, ["src"])
|
|
391
408
|
])
|
|
392
409
|
],
|
|
393
|
-
|
|
394
|
-
/* CLASS */
|
|
410
|
+
6
|
|
411
|
+
/* CLASS, STYLE */
|
|
395
412
|
)
|
|
396
413
|
],
|
|
397
414
|
64
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cropper-modal.vue2.mjs","sources":["../../../../../../packages/components/cropper/src/cropper-modal.vue"],"sourcesContent":["<template>\n <ll-modal\n :open=\"open\"\n :title=\"props.title\"\n :width=\"props.width\"\n :keyboard=\"false\"\n :mask-closable=\"false\"\n :ok-text=\"'确定'\"\n @cancel=\"open = false\"\n @ok=\"handleOk\"\n >\n <div :class=\"bem.b()\">\n <div :class=\"bem.e('left')\">\n <div :class=\"bem.e('cropper')\">\n <cropper-image\n v-if=\"src\"\n :src=\"src\"\n height=\"300px\"\n :circled=\"circled\"\n @cropend=\"handleCropend\"\n @on-ready=\"handleReady\"\n />\n </div>\n <div :class=\"bem.e('toolbar')\">\n <a-upload\n :file-list=\"[]\"\n accept=\"image/*\"\n :before-upload=\"handleBeforeUpload\"\n >\n <ll-tooltip :title=\"'选择图片'\" placement=\"bottom\">\n <ll-button\n type=\"primary\"\n size=\"small\"\n @click=\"handlerToolbar('reset')\"\n >\n <ll-icon icon-name=\"icon-upload\" />\n </ll-button>\n </ll-tooltip>\n </a-upload>\n <ll-space>\n <ll-tooltip :tip=\"'重置'\" placement=\"bottom\">\n <ll-button\n type=\"primary\"\n size=\"small\"\n :disabled=\"!src\"\n @click=\"handlerToolbar('reset')\"\n >\n <ll-icon icon-name=\"icon-refresh\" />\n </ll-button>\n </ll-tooltip>\n <ll-tooltip :tip=\"'逆时针旋转'\" placement=\"bottom\">\n <ll-button\n type=\"primary\"\n size=\"small\"\n :disabled=\"!src\"\n @click=\"handlerToolbar('rotate', -45)\"\n >\n <ll-icon icon-name=\"icon-counter-clockwise\" />\n </ll-button>\n </ll-tooltip>\n <ll-tooltip :tip=\"'顺时针旋转'\" placement=\"bottom\">\n <ll-button\n type=\"primary\"\n size=\"small\"\n :disabled=\"!src\"\n @click=\"handlerToolbar('rotate', 45)\"\n >\n <ll-icon icon-name=\"icon-flip-horizontal\" />\n </ll-button>\n </ll-tooltip>\n <ll-tooltip :tip=\"'水平翻转'\" placement=\"bottom\">\n <ll-button\n type=\"primary\"\n size=\"small\"\n :disabled=\"!src\"\n @click=\"handlerToolbar('scaleX')\"\n >\n <ll-icon icon-name=\"icon-flip-horizontal\" />\n </ll-button>\n </ll-tooltip>\n <ll-tooltip :tip=\"'垂直翻转'\" placement=\"bottom\">\n <ll-button\n type=\"primary\"\n size=\"small\"\n :disabled=\"!src\"\n @click=\"handlerToolbar('scaleY')\"\n >\n <ll-icon icon-name=\"icon-flip-vertical\" />\n </ll-button>\n </ll-tooltip>\n <ll-tooltip :tip=\"'放大'\" placement=\"bottom\">\n <ll-button\n type=\"primary\"\n size=\"small\"\n :disabled=\"!src\"\n @click=\"handlerToolbar('zoom', 0.1)\"\n >\n <ll-icon icon-name=\"icon-amplify1\" />\n </ll-button>\n </ll-tooltip>\n <ll-tooltip :tip=\"'缩小'\" placement=\"bottom\">\n <ll-button\n type=\"primary\"\n size=\"small\"\n :disabled=\"!src\"\n @click=\"handlerToolbar('zoom', -0.1)\"\n >\n <ll-icon icon-name=\"icon-scale\" />\n </ll-button>\n </ll-tooltip>\n </ll-space>\n </div>\n </div>\n <div :class=\"bem.e('right')\">\n <div :class=\"bem.e('preview')\">\n <img v-if=\"previewSource\" :src=\"previewSource\" :alt=\"'预览'\" />\n </div>\n <template v-if=\"previewSource\">\n <div :class=\"bem.e('group')\">\n <ll-image\n :preview=\"false\"\n :src=\"previewSource\"\n :width=\"32\"\n :height=\"32\"\n />\n <ll-image\n :preview=\"false\"\n :src=\"previewSource\"\n :width=\"48\"\n :height=\"48\"\n />\n <ll-image\n :preview=\"false\"\n :src=\"previewSource\"\n :width=\"64\"\n :height=\"64\"\n />\n <ll-image\n :preview=\"false\"\n :src=\"previewSource\"\n :width=\"80\"\n :height=\"80\"\n />\n </div>\n </template>\n </div>\n </div>\n </ll-modal>\n <div
|
|
1
|
+
{"version":3,"file":"cropper-modal.vue2.mjs","sources":["../../../../../../packages/components/cropper/src/cropper-modal.vue"],"sourcesContent":["<template>\n <ll-modal\n :open=\"open\"\n :title=\"props.title\"\n :width=\"props.width\"\n :keyboard=\"false\"\n :mask-closable=\"false\"\n :ok-text=\"'确定'\"\n @cancel=\"open = false\"\n @ok=\"handleOk\"\n >\n <div :class=\"bem.b()\">\n <div :class=\"bem.e('left')\">\n <div :class=\"bem.e('cropper')\">\n <cropper-image\n v-if=\"src && open\"\n :src=\"src\"\n height=\"300px\"\n :circled=\"circled\"\n @cropend=\"handleCropend\"\n @on-ready=\"handleReady\"\n />\n </div>\n <div :class=\"bem.e('toolbar')\">\n <a-upload\n :file-list=\"[]\"\n accept=\"image/*\"\n :before-upload=\"handleBeforeUpload\"\n >\n <ll-tooltip :title=\"'选择图片'\" placement=\"bottom\">\n <ll-button\n type=\"primary\"\n size=\"small\"\n @click=\"handlerToolbar('reset')\"\n >\n <ll-icon icon-name=\"icon-upload\" />\n </ll-button>\n </ll-tooltip>\n </a-upload>\n <ll-space>\n <ll-tooltip :tip=\"'重置'\" placement=\"bottom\">\n <ll-button\n type=\"primary\"\n size=\"small\"\n :disabled=\"!src\"\n @click=\"handlerToolbar('reset')\"\n >\n <ll-icon icon-name=\"icon-refresh\" />\n </ll-button>\n </ll-tooltip>\n <ll-tooltip :tip=\"'逆时针旋转'\" placement=\"bottom\">\n <ll-button\n type=\"primary\"\n size=\"small\"\n :disabled=\"!src\"\n @click=\"handlerToolbar('rotate', -45)\"\n >\n <ll-icon icon-name=\"icon-counter-clockwise\" />\n </ll-button>\n </ll-tooltip>\n <ll-tooltip :tip=\"'顺时针旋转'\" placement=\"bottom\">\n <ll-button\n type=\"primary\"\n size=\"small\"\n :disabled=\"!src\"\n @click=\"handlerToolbar('rotate', 45)\"\n >\n <ll-icon icon-name=\"icon-flip-horizontal\" />\n </ll-button>\n </ll-tooltip>\n <ll-tooltip :tip=\"'水平翻转'\" placement=\"bottom\">\n <ll-button\n type=\"primary\"\n size=\"small\"\n :disabled=\"!src\"\n @click=\"handlerToolbar('scaleX')\"\n >\n <ll-icon icon-name=\"icon-flip-horizontal\" />\n </ll-button>\n </ll-tooltip>\n <ll-tooltip :tip=\"'垂直翻转'\" placement=\"bottom\">\n <ll-button\n type=\"primary\"\n size=\"small\"\n :disabled=\"!src\"\n @click=\"handlerToolbar('scaleY')\"\n >\n <ll-icon icon-name=\"icon-flip-vertical\" />\n </ll-button>\n </ll-tooltip>\n <ll-tooltip :tip=\"'放大'\" placement=\"bottom\">\n <ll-button\n type=\"primary\"\n size=\"small\"\n :disabled=\"!src\"\n @click=\"handlerToolbar('zoom', 0.1)\"\n >\n <ll-icon icon-name=\"icon-amplify1\" />\n </ll-button>\n </ll-tooltip>\n <ll-tooltip :tip=\"'缩小'\" placement=\"bottom\">\n <ll-button\n type=\"primary\"\n size=\"small\"\n :disabled=\"!src\"\n @click=\"handlerToolbar('zoom', -0.1)\"\n >\n <ll-icon icon-name=\"icon-scale\" />\n </ll-button>\n </ll-tooltip>\n </ll-space>\n </div>\n </div>\n <div :class=\"bem.e('right')\">\n <div :class=\"bem.e('preview')\">\n <img v-if=\"previewSource\" :src=\"previewSource\" :alt=\"'预览'\" />\n </div>\n <template v-if=\"previewSource\">\n <div :class=\"bem.e('group')\">\n <ll-image\n :preview=\"false\"\n :src=\"previewSource\"\n :width=\"32\"\n :height=\"32\"\n />\n <ll-image\n :preview=\"false\"\n :src=\"previewSource\"\n :width=\"48\"\n :height=\"48\"\n />\n <ll-image\n :preview=\"false\"\n :src=\"previewSource\"\n :width=\"64\"\n :height=\"64\"\n />\n <ll-image\n :preview=\"false\"\n :src=\"previewSource\"\n :width=\"80\"\n :height=\"80\"\n />\n </div>\n </template>\n </div>\n </div>\n </ll-modal>\n <div\n :class=\"bem.e('cropper-avatar')\"\n :style=\"{\n cursor: props.disabled ? 'not-allowed' : 'pointer'\n }\"\n @click=\"handleOpen\"\n >\n <slot :src=\"avatar\">\n <ll-image :src=\"avatar\" :width=\"64\" :height=\"64\" :preview=\"false\" />\n </slot>\n </div>\n</template>\n<script lang=\"ts\" setup>\n//@ts-ignore\nimport type Cropper from 'cropperjs'\n\nimport { ref, watch } from 'vue'\nimport { createNamespace, dataURLtoBlob, type Nullable } from '@ll-plus/utils'\nimport CropperImage from './cropper-image.vue'\nimport {\n cropperModalProps,\n cropperModalEmits,\n type CropendResult\n} from './cropper-image'\n\ndefineOptions({ name: 'LlCropperModal' })\nconst props = defineProps(cropperModalProps)\nconst emits = defineEmits(cropperModalEmits)\nconst bem = createNamespace('cropper-modal')\nconst src = ref(props.avatar || '')\nconst avatar = ref(props.avatar || '')\nconst open = ref(false)\nconst previewSource = ref('')\n\nconst cropper = ref<Nullable<Cropper>>()\nlet scaleX = 1\nlet scaleY = 1\n\n// Block upload\nfunction handleBeforeUpload(file: File) {\n const reader = new FileReader()\n reader.readAsDataURL(file)\n src.value = ''\n previewSource.value = ''\n reader.onload = function (e) {\n src.value = (e.target?.result as string) ?? ''\n // filename = file.name\n }\n return false\n}\nfunction handleOpen() {\n if (props.disabled) return\n open.value = true\n}\nfunction handleCropend({ imgBase64 }: CropendResult) {\n previewSource.value = imgBase64\n}\n\nfunction handleReady(cropperInstance: Cropper) {\n cropper.value = cropperInstance\n}\nfunction handlerToolbar(event: string, arg?: number) {\n if (event === 'scaleX') {\n scaleX = arg = scaleX === -1 ? 1 : -1\n }\n if (event === 'scaleY') {\n scaleY = arg = scaleY === -1 ? 1 : -1\n }\n cropper?.value?.[event]?.(arg)\n}\n\nasync function handleOk() {\n const blob = dataURLtoBlob(previewSource.value)\n emits('confirm', { blob, previewSource: previewSource.value })\n avatar.value = previewSource.value\n open.value = false\n}\n\nwatch(\n () => props.avatar,\n val => {\n console.log({ val })\n src.value = val\n avatar.value = val\n },\n {\n immediate: true\n }\n)\n</script>\n"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"icon-base.mjs","sources":["../../../../../../packages/components/icon-base/src/icon-base.ts"],"sourcesContent":["import { buildProps, definePropType } from '@ll-plus/utils'\n\nimport type { ExtractPropTypes } from 'vue'\nimport type IconBase from './icon-base.vue'\n\nexport const iconTypes = ['default', 'primary'] as const\nexport const iconBaseProps = buildProps({\n /**\n * @description icon的类型\n */\n iconType: {\n type: String,\n values: iconTypes\n },\n /**\n * @description icon的class\n */\n class: {\n type: String\n },\n /**\n * @description tooltip的class\n */\n tooltipClass: {\n type: String\n },\n /**\n * @description 是否显示tooltip\n */\n isShowTooltip: {\n type: Boolean,\n default: true\n },\n /**\n * @description tooltip的提示语\n */\n tooltipTitle: {\n type: String\n },\n /**\n * @description 是否显示button的容器\n */\n isShowContainer: {\n type: Boolean,\n default: true\n },\n /**\n * @description 是否禁用\n */\n disabled: {\n type: Boolean\n },\n /**\n * @description icon的name\n */\n iconName: {\n type: String\n },\n /**\n * @description 是否显示icon右边的文字\n */\n isShowTitle: {\n type: Boolean\n },\n /**\n * @description 点击按钮传递的数据\n */\n data: {\n type: definePropType<any>(undefined)\n },\n /**\n * @description 按钮点击事件\n */\n onClick: {\n type: Function\n }\n} as const)\n\n// props\nexport type IconBaseProps = ExtractPropTypes<typeof iconBaseProps>\nexport type IconTypes = IconBaseProps['iconType']\n\n// instance\nexport type IconBaseInstance = InstanceType<typeof IconBase>\n"],"names":[],"mappings":";;;;AAKa,MAAA,SAAA,GAAY,CAAC,SAAA,EAAW,SAAS,EAAA;AACvC,MAAM,gBAAgB,UAAW,CAAA;AAAA;AAAA;AAAA;AAAA,EAItC,QAAU,EAAA;AAAA,IACR,IAAM,EAAA,MAAA;AAAA,IACN,MAAQ,EAAA,SAAA;AAAA,GACV;AAAA;AAAA;AAAA;AAAA,EAIA,KAAO,EAAA;AAAA,IACL,IAAM,EAAA,MAAA;AAAA,GACR;AAAA;AAAA;AAAA;AAAA,EAIA,YAAc,EAAA;AAAA,IACZ,IAAM,EAAA,MAAA;AAAA,GACR;AAAA;AAAA;AAAA;AAAA,EAIA,aAAe,EAAA;AAAA,IACb,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,IAAA;AAAA,GACX;AAAA;AAAA;AAAA;AAAA,EAIA,YAAc,EAAA;AAAA,IACZ,IAAM,EAAA,MAAA;AAAA,GACR;AAAA;AAAA;AAAA;AAAA,EAIA,eAAiB,EAAA;AAAA,IACf,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,IAAA;AAAA,GACX;AAAA;AAAA;AAAA;AAAA,EAIA,QAAU,EAAA;AAAA,IACR,IAAM,EAAA,OAAA;AAAA,GACR;AAAA;AAAA;AAAA;AAAA,EAIA,QAAU,EAAA;AAAA,IACR,IAAM,EAAA,MAAA;AAAA,GACR;AAAA;AAAA;AAAA;AAAA,EAIA,WAAa,EAAA;AAAA,IACX,IAAM,EAAA,OAAA;AAAA,GACR;AAAA;AAAA;AAAA;AAAA,EAIA,IAAM,EAAA;AAAA,IACJ,IAAA,EAAM,eAAoB,KAAS,CAAA,CAAA;AAAA,GACrC;AAAA;AAAA;AAAA;AAAA,EAIA,OAAS,EAAA;AAAA,IACP,IAAM,EAAA,QAAA;AAAA,GACR;AACF,CAAU;;;;"}
|
|
1
|
+
{"version":3,"file":"icon-base.mjs","sources":["../../../../../../packages/components/icon-base/src/icon-base.ts"],"sourcesContent":["import { buildProps, definePropType } from '@ll-plus/utils'\n\nimport type { ExtractPropTypes, CSSProperties } from 'vue'\nimport type IconBase from './icon-base.vue'\n\nexport const iconTypes = ['default', 'primary'] as const\nexport const iconBaseProps = buildProps({\n /**\n * @description icon的类型\n */\n iconType: {\n type: String,\n values: iconTypes\n },\n /**\n * @description icon的class\n */\n class: {\n type: String\n },\n /**\n * @description icon的style\n */\n style: {\n type: definePropType<CSSProperties>(Object)\n },\n /**\n * @description tooltip的class\n */\n tooltipClass: {\n type: String\n },\n /**\n * @description 是否显示tooltip\n */\n isShowTooltip: {\n type: Boolean,\n default: true\n },\n /**\n * @description tooltip的提示语\n */\n tooltipTitle: {\n type: String\n },\n /**\n * @description 是否显示button的容器\n */\n isShowContainer: {\n type: Boolean,\n default: true\n },\n /**\n * @description 是否禁用\n */\n disabled: {\n type: Boolean\n },\n /**\n * @description icon的name\n */\n iconName: {\n type: String\n },\n /**\n * @description 是否显示icon右边的文字\n */\n isShowTitle: {\n type: Boolean\n },\n /**\n * @description 点击按钮传递的数据\n */\n data: {\n type: definePropType<any>(undefined)\n },\n /**\n * @description 按钮点击事件\n */\n onClick: {\n type: Function\n }\n} as const)\n\n// props\nexport type IconBaseProps = ExtractPropTypes<typeof iconBaseProps>\nexport type IconTypes = IconBaseProps['iconType']\n\n// instance\nexport type IconBaseInstance = InstanceType<typeof IconBase>\n"],"names":[],"mappings":";;;;AAKa,MAAA,SAAA,GAAY,CAAC,SAAA,EAAW,SAAS,EAAA;AACvC,MAAM,gBAAgB,UAAW,CAAA;AAAA;AAAA;AAAA;AAAA,EAItC,QAAU,EAAA;AAAA,IACR,IAAM,EAAA,MAAA;AAAA,IACN,MAAQ,EAAA,SAAA;AAAA,GACV;AAAA;AAAA;AAAA;AAAA,EAIA,KAAO,EAAA;AAAA,IACL,IAAM,EAAA,MAAA;AAAA,GACR;AAAA;AAAA;AAAA;AAAA,EAIA,KAAO,EAAA;AAAA,IACL,IAAA,EAAM,eAA8B,MAAM,CAAA;AAAA,GAC5C;AAAA;AAAA;AAAA;AAAA,EAIA,YAAc,EAAA;AAAA,IACZ,IAAM,EAAA,MAAA;AAAA,GACR;AAAA;AAAA;AAAA;AAAA,EAIA,aAAe,EAAA;AAAA,IACb,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,IAAA;AAAA,GACX;AAAA;AAAA;AAAA;AAAA,EAIA,YAAc,EAAA;AAAA,IACZ,IAAM,EAAA,MAAA;AAAA,GACR;AAAA;AAAA;AAAA;AAAA,EAIA,eAAiB,EAAA;AAAA,IACf,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,IAAA;AAAA,GACX;AAAA;AAAA;AAAA;AAAA,EAIA,QAAU,EAAA;AAAA,IACR,IAAM,EAAA,OAAA;AAAA,GACR;AAAA;AAAA;AAAA;AAAA,EAIA,QAAU,EAAA;AAAA,IACR,IAAM,EAAA,MAAA;AAAA,GACR;AAAA;AAAA;AAAA;AAAA,EAIA,WAAa,EAAA;AAAA,IACX,IAAM,EAAA,OAAA;AAAA,GACR;AAAA;AAAA;AAAA;AAAA,EAIA,IAAM,EAAA;AAAA,IACJ,IAAA,EAAM,eAAoB,KAAS,CAAA,CAAA;AAAA,GACrC;AAAA;AAAA;AAAA;AAAA,EAIA,OAAS,EAAA;AAAA,IACP,IAAM,EAAA,QAAA;AAAA,GACR;AACF,CAAU;;;;"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { defineComponent, computed, resolveComponent, openBlock, createElementBlock, Fragment, createCommentVNode, createBlock, normalizeClass, withCtx, createVNode, unref, toDisplayString } from 'vue';
|
|
1
|
+
import { defineComponent, computed, resolveComponent, openBlock, createElementBlock, Fragment, createCommentVNode, createBlock, normalizeClass, withCtx, createVNode, normalizeStyle, unref, toDisplayString } from 'vue';
|
|
2
2
|
import '../../../utils/index.mjs';
|
|
3
3
|
import { iconBaseProps } from './icon-base.mjs';
|
|
4
4
|
import { createNamespace } from '../../../utils/create-namespace.mjs';
|
|
@@ -41,6 +41,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
41
41
|
type: "text",
|
|
42
42
|
disabled: _ctx.disabled,
|
|
43
43
|
class: normalizeClass(`${btnClass.value}`),
|
|
44
|
+
style: normalizeStyle(_ctx.style),
|
|
44
45
|
onClick: handleClickBtn
|
|
45
46
|
}, {
|
|
46
47
|
default: withCtx(() => [
|
|
@@ -61,7 +62,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
61
62
|
]),
|
|
62
63
|
_: 1
|
|
63
64
|
/* STABLE */
|
|
64
|
-
}, 8, ["disabled", "class"])
|
|
65
|
+
}, 8, ["disabled", "class", "style"])
|
|
65
66
|
]),
|
|
66
67
|
_: 1
|
|
67
68
|
/* STABLE */
|
|
@@ -74,6 +75,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
74
75
|
type: "text",
|
|
75
76
|
disabled: _ctx.disabled,
|
|
76
77
|
class: normalizeClass(`${btnClass.value}`),
|
|
78
|
+
style: normalizeStyle(_ctx.style),
|
|
77
79
|
onClick: handleClickBtn
|
|
78
80
|
}, {
|
|
79
81
|
default: withCtx(() => [
|
|
@@ -94,7 +96,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
94
96
|
]),
|
|
95
97
|
_: 1
|
|
96
98
|
/* STABLE */
|
|
97
|
-
}, 8, ["disabled", "class"])
|
|
99
|
+
}, 8, ["disabled", "class", "style"])
|
|
98
100
|
],
|
|
99
101
|
64
|
|
100
102
|
/* STABLE_FRAGMENT */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"icon-base.vue2.mjs","sources":["../../../../../../packages/components/icon-base/src/icon-base.vue"],"sourcesContent":["<template>\n <!-- 有文字提示弹窗 -->\n <template v-if=\"isShowTooltip\">\n <ll-tooltip :tip=\"tooltipTitle\" :class=\"tooltipClass\">\n <a-button\n type=\"text\"\n :disabled=\"disabled\"\n :class=\"`${btnClass}`\"\n @click=\"handleClickBtn\"\n >\n <ll-icon v-if=\"iconName\" :icon-name=\"iconName\" />\n <span v-if=\"isShowTitle\" :class=\"bem.e('text')\">{{\n tooltipTitle\n }}</span>\n </a-button>\n </ll-tooltip>\n </template>\n <!-- 没有文字提示弹窗 -->\n <template v-else>\n <a-button\n type=\"text\"\n :disabled=\"disabled\"\n :class=\"`${btnClass}`\"\n @click=\"handleClickBtn\"\n >\n <ll-icon v-if=\"iconName\" :icon-name=\"iconName\" />\n <span v-if=\"isShowTitle\" :class=\"bem.e('text')\">{{ tooltipTitle }}</span>\n </a-button>\n </template>\n</template>\n<script lang=\"ts\" setup>\nimport { computed } from 'vue'\n\nimport { createNamespace } from '@ll-plus/utils'\nimport { iconBaseProps } from './icon-base'\n\n// 1.defineOptions\ndefineOptions({\n name: 'LlIconBase'\n})\n\n// 2.props\nconst props = defineProps(iconBaseProps)\n\n// 3.computed/const\n// button的类名样式\nconst btnClass = computed(() => {\n const isDefault = props.iconType === 'default' || !props.iconType\n // 1.类型的class\n const typeClass = isDefault ? bem.m('default') : bem.m('primary')\n // 2.是否要裸露的class\n const exposedClass = props.isShowContainer\n ? bem.m('container')\n : bem.m('exposed')\n // 3.有文本的class\n const hasTextClass = props.isShowTitle ? bem.m('has-text') : ''\n // 4.禁用的class\n const disabledClass = props.disabled\n ? isDefault\n ? bem.is('default-disable')\n : bem.is('primary-disable')\n : ''\n return `${\n props.class\n } ${bem.b()} ${typeClass} ${exposedClass} ${hasTextClass} ${disabledClass}`\n})\nconst bem = createNamespace('icon-base')\n\n// 4.methods\nconst handleClickBtn = (e: Event) =>\n props.onClick && props.onClick(e, props.data)\n</script>\n"],"names":[],"mappings":";;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"icon-base.vue2.mjs","sources":["../../../../../../packages/components/icon-base/src/icon-base.vue"],"sourcesContent":["<template>\n <!-- 有文字提示弹窗 -->\n <template v-if=\"isShowTooltip\">\n <ll-tooltip :tip=\"tooltipTitle\" :class=\"tooltipClass\">\n <a-button\n type=\"text\"\n :disabled=\"disabled\"\n :class=\"`${btnClass}`\"\n :style=\"style\"\n @click=\"handleClickBtn\"\n >\n <ll-icon v-if=\"iconName\" :icon-name=\"iconName\" />\n <span v-if=\"isShowTitle\" :class=\"bem.e('text')\">{{\n tooltipTitle\n }}</span>\n </a-button>\n </ll-tooltip>\n </template>\n <!-- 没有文字提示弹窗 -->\n <template v-else>\n <a-button\n type=\"text\"\n :disabled=\"disabled\"\n :class=\"`${btnClass}`\"\n :style=\"style\"\n @click=\"handleClickBtn\"\n >\n <ll-icon v-if=\"iconName\" :icon-name=\"iconName\" />\n <span v-if=\"isShowTitle\" :class=\"bem.e('text')\">{{ tooltipTitle }}</span>\n </a-button>\n </template>\n</template>\n<script lang=\"ts\" setup>\nimport { computed } from 'vue'\n\nimport { createNamespace } from '@ll-plus/utils'\nimport { iconBaseProps } from './icon-base'\n\n// 1.defineOptions\ndefineOptions({\n name: 'LlIconBase'\n})\n\n// 2.props\nconst props = defineProps(iconBaseProps)\n\n// 3.computed/const\n// button的类名样式\nconst btnClass = computed(() => {\n const isDefault = props.iconType === 'default' || !props.iconType\n // 1.类型的class\n const typeClass = isDefault ? bem.m('default') : bem.m('primary')\n // 2.是否要裸露的class\n const exposedClass = props.isShowContainer\n ? bem.m('container')\n : bem.m('exposed')\n // 3.有文本的class\n const hasTextClass = props.isShowTitle ? bem.m('has-text') : ''\n // 4.禁用的class\n const disabledClass = props.disabled\n ? isDefault\n ? bem.is('default-disable')\n : bem.is('primary-disable')\n : ''\n return `${\n props.class\n } ${bem.b()} ${typeClass} ${exposedClass} ${hasTextClass} ${disabledClass}`\n})\nconst bem = createNamespace('icon-base')\n\n// 4.methods\nconst handleClickBtn = (e: Event) =>\n props.onClick && props.onClick(e, props.data)\n</script>\n"],"names":[],"mappings":";;;;;;;;;;;;;AA4CA,IAAA,MAAM,KAAQ,GAAA,OAAA,CAAA;AAId,IAAM,MAAA,QAAA,GAAW,SAAS,MAAM;AAC9B,MAAA,MAAM,SAAY,GAAA,KAAA,CAAM,QAAa,KAAA,SAAA,IAAa,CAAC,KAAM,CAAA,QAAA,CAAA;AAEzD,MAAM,MAAA,SAAA,GAAY,YAAY,GAAI,CAAA,CAAA,CAAE,SAAS,CAAI,GAAA,GAAA,CAAI,EAAE,SAAS,CAAA,CAAA;AAEhE,MAAM,MAAA,YAAA,GAAe,MAAM,eACvB,GAAA,GAAA,CAAI,EAAE,WAAW,CAAA,GACjB,GAAI,CAAA,CAAA,CAAE,SAAS,CAAA,CAAA;AAEnB,MAAA,MAAM,eAAe,KAAM,CAAA,WAAA,GAAc,GAAI,CAAA,CAAA,CAAE,UAAU,CAAI,GAAA,EAAA,CAAA;AAE7D,MAAM,MAAA,aAAA,GAAgB,KAAM,CAAA,QAAA,GACxB,SACE,GAAA,GAAA,CAAI,EAAG,CAAA,iBAAiB,CACxB,GAAA,GAAA,CAAI,EAAG,CAAA,iBAAiB,CAC1B,GAAA,EAAA,CAAA;AACJ,MAAA,OAAO,CACL,EAAA,KAAA,CAAM,KACR,CAAA,CAAA,EAAI,IAAI,CAAE,EAAC,CAAI,CAAA,EAAA,SAAS,CAAI,CAAA,EAAA,YAAY,CAAI,CAAA,EAAA,YAAY,IAAI,aAAa,CAAA,CAAA,CAAA;AAAA,KAC1E,CAAA,CAAA;AACD,IAAM,MAAA,GAAA,GAAM,gBAAgB,WAAW,CAAA,CAAA;AAGvC,IAAM,MAAA,cAAA,GAAiB,CAAC,CACtB,KAAA,KAAA,CAAM,WAAW,KAAM,CAAA,OAAA,CAAQ,CAAG,EAAA,KAAA,CAAM,IAAI,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -70,7 +70,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
70
70
|
() => [props.list, props.showDropdown],
|
|
71
71
|
(data) => {
|
|
72
72
|
const [newList, showDropdown] = data;
|
|
73
|
-
const list = newList ? newList : defualtList.value;
|
|
73
|
+
const list = newList ? newList.filter(Boolean) : defualtList.value;
|
|
74
74
|
const length = list.length;
|
|
75
75
|
if (length >= props.showIconLimit && showDropdown) {
|
|
76
76
|
showIconList.value = list.slice(
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"operate-icon.vue2.mjs","sources":["../../../../../../packages/components/operate-icon/src/operate-icon.vue"],"sourcesContent":["<template>\n <div :class=\"operateIconClass\">\n <!-- 显示的icon -->\n <ll-icon-base\n v-for=\"(item, index) in showIconList\"\n v-bind=\"item\"\n :key=\"item.iconName\"\n :data=\"data\"\n :tooltip-class=\"bem.e(marginButtonClass(index, showIconList.length - 1))\"\n />\n <!-- 下拉提示的icon -->\n <a-dropdown\n v-if=\"showDropdown && modalIconList.length\"\n :overlay-class-name=\"bem.e('dropdown')\"\n :open=\"dropdownOpen\"\n @open-change=\"handleDropdownOpenChange\"\n >\n <div\n :class=\"bem.e('dropdown-container')\"\n @mouseenter=\"handleIconMouseenter\"\n >\n <ll-icon-base\n :is-show-tooltip=\"false\"\n :is-show-container=\"showIconList[0].isShowContainer\"\n :icon-type=\"showIconList[0].iconType\"\n :data=\"data\"\n icon-name=\"icon-more\"\n :class=\"bem.e('icon-more')\"\n :on-click=\"e => handleClickMoreButton(e, data)\"\n />\n </div>\n <template #overlay>\n <a-menu>\n <slot>\n <a-menu-item\n v-for=\"item in modalIconList\"\n :key=\"item.iconName\"\n @click=\"handleDropdownParentClick\"\n >\n <ll-icon-base v-bind=\"item\" :data=\"data\" />\n </a-menu-item>\n </slot>\n </a-menu>\n </template>\n </a-dropdown>\n </div>\n</template>\n<script lang=\"ts\" setup>\nimport { ref, computed, watch } from 'vue'\n\nimport { createNamespace } from '@ll-plus/utils'\n\nimport { IconBaseProps, LlIconBase } from '@ll-plus/components'\nimport { operateIconProps, operateIconEmits } from './operate-icon'\n\n// 1.defineOptions\ndefineOptions({\n name: 'LlOperateIcon'\n})\n\n// 2.props/emits\nconst props = defineProps(operateIconProps)\nconst emits = defineEmits(operateIconEmits)\n\n// 3.ref/const\nconst showIconList = ref<IconBaseProps[]>([]) // 显示的icon列表\nconst modalIconList = ref<IconBaseProps[]>([]) // 弹窗的icon列表\nconst dropdownOpen = ref(false) // 下拉菜单的open\nconst defualtList = ref([\n // 默认的icon列表\n {\n iconType: computed(() => props.iconType || 'primary'), // default默认为灰色\n isShowContainer: false, // 是否显示icon容器\n iconName: 'icon-edit',\n tooltipTitle: '编辑',\n disabled: props.disabled,\n onClick: (e: Event, data: any) => {\n emits('edit', e, data)\n }\n },\n {\n iconType: computed(() => props.iconType || 'primary'), // default默认为灰色\n isShowContainer: false, // 是否显示icon容器\n iconName: 'icon-delete',\n tooltipTitle: '删除',\n disabled: props.disabled,\n onClick: (e: Event, data: any) => {\n emits('delete', e, data)\n }\n }\n])\nconst bem = createNamespace('operate-icon')\nconst operateIconClass = computed(() => {\n const isHasDropdown = props.showDropdown && modalIconList.value.length\n return `${bem.b()} ${isHasDropdown ? bem.m('has-dropdown') : ''}`\n})\n\n// 4.methods\n// 点击更多按钮\nconst handleClickMoreButton = (e: Event, data: any) =>\n emits('onClickMoreButton', e, data)\nconst marginButtonClass = (index, length) => {\n return index < length ? 'margin-tooltip' : ''\n}\n// 下拉菜单open\nconst handleDropdownOpenChange = (open: boolean) => {\n if (!open) {\n dropdownOpen.value = false\n emits('update:dropdownOpen', false)\n }\n}\nconst handleDropdownParentClick = () => (dropdownOpen.value = false)\n// icon鼠标悬浮\nconst handleIconMouseenter = () => {\n dropdownOpen.value = true\n emits('update:dropdownOpen', true)\n}\n\n// 5.watch\nwatch(\n () => [props.list, props.showDropdown],\n (data: any) => {\n const [newList, showDropdown] = data\n const list = newList ? newList : defualtList.value\n const length = list.length\n if (length >= props.showIconLimit && showDropdown) {\n showIconList.value = list.slice(\n 0,\n props.showIconLimit - 1\n ) as IconBaseProps[]\n // 默认modal里面要icon后面跟文字\n modalIconList.value = list\n .slice(props.showIconLimit - 1)\n .map((item: any) => ({ ...item, isShowTitle: true }))\n } else {\n showIconList.value = list as IconBaseProps[]\n }\n },\n { immediate: true, deep: true }\n)\n</script>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;AA6DA,IAAA,MAAM,KAAQ,GAAA,OAAA,CAAA;AACd,IAAA,MAAM,KAAQ,GAAA,MAAA,CAAA;AAGd,IAAM,MAAA,YAAA,GAAe,GAAqB,CAAA,EAAE,CAAA,CAAA;AAC5C,IAAM,MAAA,aAAA,GAAgB,GAAqB,CAAA,EAAE,CAAA,CAAA;AAC7C,IAAM,MAAA,YAAA,GAAe,IAAI,KAAK,CAAA,CAAA;AAC9B,IAAA,MAAM,cAAc,GAAI,CAAA;AAAA;AAAA,MAEtB;AAAA,QACE,QAAU,EAAA,QAAA,CAAS,MAAM,KAAA,CAAM,YAAY,SAAS,CAAA;AAAA;AAAA,QACpD,eAAiB,EAAA,KAAA;AAAA;AAAA,QACjB,QAAU,EAAA,WAAA;AAAA,QACV,YAAc,EAAA,cAAA;AAAA,QACd,UAAU,KAAM,CAAA,QAAA;AAAA,QAChB,OAAA,EAAS,CAAC,CAAA,EAAU,IAAc,KAAA;AAChC,UAAM,KAAA,CAAA,MAAA,EAAQ,GAAG,IAAI,CAAA,CAAA;AAAA,SACvB;AAAA,OACF;AAAA,MACA;AAAA,QACE,QAAU,EAAA,QAAA,CAAS,MAAM,KAAA,CAAM,YAAY,SAAS,CAAA;AAAA;AAAA,QACpD,eAAiB,EAAA,KAAA;AAAA;AAAA,QACjB,QAAU,EAAA,aAAA;AAAA,QACV,YAAc,EAAA,cAAA;AAAA,QACd,UAAU,KAAM,CAAA,QAAA;AAAA,QAChB,OAAA,EAAS,CAAC,CAAA,EAAU,IAAc,KAAA;AAChC,UAAM,KAAA,CAAA,QAAA,EAAU,GAAG,IAAI,CAAA,CAAA;AAAA,SACzB;AAAA,OACF;AAAA,KACD,CAAA,CAAA;AACD,IAAM,MAAA,GAAA,GAAM,gBAAgB,cAAc,CAAA,CAAA;AAC1C,IAAM,MAAA,gBAAA,GAAmB,SAAS,MAAM;AACtC,MAAA,MAAM,aAAgB,GAAA,KAAA,CAAM,YAAgB,IAAA,aAAA,CAAc,KAAM,CAAA,MAAA,CAAA;AAChE,MAAO,OAAA,CAAA,EAAG,GAAI,CAAA,CAAA,EAAG,CAAA,CAAA,EAAI,gBAAgB,GAAI,CAAA,CAAA,CAAE,cAAc,CAAA,GAAI,EAAE,CAAA,CAAA,CAAA;AAAA,KAChE,CAAA,CAAA;AAID,IAAA,MAAM,wBAAwB,CAAC,CAAA,EAAU,SACvC,KAAM,CAAA,mBAAA,EAAqB,GAAG,IAAI,CAAA,CAAA;AACpC,IAAM,MAAA,iBAAA,GAAoB,CAAC,KAAA,EAAO,MAAW,KAAA;AAC3C,MAAO,OAAA,KAAA,GAAQ,SAAS,gBAAmB,GAAA,EAAA,CAAA;AAAA,KAC7C,CAAA;AAEA,IAAM,MAAA,wBAAA,GAA2B,CAAC,IAAkB,KAAA;AAClD,MAAA,IAAI,CAAC,IAAM,EAAA;AACT,QAAA,YAAA,CAAa,KAAQ,GAAA,KAAA,CAAA;AACrB,QAAA,KAAA,CAAM,uBAAuB,KAAK,CAAA,CAAA;AAAA,OACpC;AAAA,KACF,CAAA;AACA,IAAM,MAAA,yBAAA,GAA4B,MAAO,YAAA,CAAa,KAAQ,GAAA,KAAA,CAAA;AAE9D,IAAA,MAAM,uBAAuB,MAAM;AACjC,MAAA,YAAA,CAAa,KAAQ,GAAA,IAAA,CAAA;AACrB,MAAA,KAAA,CAAM,uBAAuB,IAAI,CAAA,CAAA;AAAA,KACnC,CAAA;AAGA,IAAA,KAAA;AAAA,MACE,MAAM,CAAC,KAAM,CAAA,IAAA,EAAM,MAAM,YAAY,CAAA;AAAA,MACrC,CAAC,IAAc,KAAA;AACb,QAAM,MAAA,CAAC,OAAS,EAAA,YAAY,CAAI,GAAA,IAAA,CAAA;AAChC,
|
|
1
|
+
{"version":3,"file":"operate-icon.vue2.mjs","sources":["../../../../../../packages/components/operate-icon/src/operate-icon.vue"],"sourcesContent":["<template>\n <div :class=\"operateIconClass\">\n <!-- 显示的icon -->\n <ll-icon-base\n v-for=\"(item, index) in showIconList\"\n v-bind=\"item\"\n :key=\"item.iconName\"\n :data=\"data\"\n :tooltip-class=\"bem.e(marginButtonClass(index, showIconList.length - 1))\"\n />\n <!-- 下拉提示的icon -->\n <a-dropdown\n v-if=\"showDropdown && modalIconList.length\"\n :overlay-class-name=\"bem.e('dropdown')\"\n :open=\"dropdownOpen\"\n @open-change=\"handleDropdownOpenChange\"\n >\n <div\n :class=\"bem.e('dropdown-container')\"\n @mouseenter=\"handleIconMouseenter\"\n >\n <ll-icon-base\n :is-show-tooltip=\"false\"\n :is-show-container=\"showIconList[0].isShowContainer\"\n :icon-type=\"showIconList[0].iconType\"\n :data=\"data\"\n icon-name=\"icon-more\"\n :class=\"bem.e('icon-more')\"\n :on-click=\"e => handleClickMoreButton(e, data)\"\n />\n </div>\n <template #overlay>\n <a-menu>\n <slot>\n <a-menu-item\n v-for=\"item in modalIconList\"\n :key=\"item.iconName\"\n @click=\"handleDropdownParentClick\"\n >\n <ll-icon-base v-bind=\"item\" :data=\"data\" />\n </a-menu-item>\n </slot>\n </a-menu>\n </template>\n </a-dropdown>\n </div>\n</template>\n<script lang=\"ts\" setup>\nimport { ref, computed, watch } from 'vue'\n\nimport { createNamespace } from '@ll-plus/utils'\n\nimport { IconBaseProps, LlIconBase } from '@ll-plus/components'\nimport { operateIconProps, operateIconEmits } from './operate-icon'\n\n// 1.defineOptions\ndefineOptions({\n name: 'LlOperateIcon'\n})\n\n// 2.props/emits\nconst props = defineProps(operateIconProps)\nconst emits = defineEmits(operateIconEmits)\n\n// 3.ref/const\nconst showIconList = ref<IconBaseProps[]>([]) // 显示的icon列表\nconst modalIconList = ref<IconBaseProps[]>([]) // 弹窗的icon列表\nconst dropdownOpen = ref(false) // 下拉菜单的open\nconst defualtList = ref([\n // 默认的icon列表\n {\n iconType: computed(() => props.iconType || 'primary'), // default默认为灰色\n isShowContainer: false, // 是否显示icon容器\n iconName: 'icon-edit',\n tooltipTitle: '编辑',\n disabled: props.disabled,\n onClick: (e: Event, data: any) => {\n emits('edit', e, data)\n }\n },\n {\n iconType: computed(() => props.iconType || 'primary'), // default默认为灰色\n isShowContainer: false, // 是否显示icon容器\n iconName: 'icon-delete',\n tooltipTitle: '删除',\n disabled: props.disabled,\n onClick: (e: Event, data: any) => {\n emits('delete', e, data)\n }\n }\n])\nconst bem = createNamespace('operate-icon')\nconst operateIconClass = computed(() => {\n const isHasDropdown = props.showDropdown && modalIconList.value.length\n return `${bem.b()} ${isHasDropdown ? bem.m('has-dropdown') : ''}`\n})\n\n// 4.methods\n// 点击更多按钮\nconst handleClickMoreButton = (e: Event, data: any) =>\n emits('onClickMoreButton', e, data)\nconst marginButtonClass = (index, length) => {\n return index < length ? 'margin-tooltip' : ''\n}\n// 下拉菜单open\nconst handleDropdownOpenChange = (open: boolean) => {\n if (!open) {\n dropdownOpen.value = false\n emits('update:dropdownOpen', false)\n }\n}\nconst handleDropdownParentClick = () => (dropdownOpen.value = false)\n// icon鼠标悬浮\nconst handleIconMouseenter = () => {\n dropdownOpen.value = true\n emits('update:dropdownOpen', true)\n}\n\n// 5.watch\nwatch(\n () => [props.list, props.showDropdown],\n (data: any) => {\n const [newList, showDropdown] = data\n const list = newList ? newList.filter(Boolean) : defualtList.value\n const length = list.length\n if (length >= props.showIconLimit && showDropdown) {\n showIconList.value = list.slice(\n 0,\n props.showIconLimit - 1\n ) as IconBaseProps[]\n // 默认modal里面要icon后面跟文字\n modalIconList.value = list\n .slice(props.showIconLimit - 1)\n .map((item: any) => ({ ...item, isShowTitle: true }))\n } else {\n showIconList.value = list as IconBaseProps[]\n }\n },\n { immediate: true, deep: true }\n)\n</script>\n"],"names":[],"mappings":"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"}
|
|
@@ -26,10 +26,8 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
26
26
|
} else if (current.value > max.value) {
|
|
27
27
|
current.value = max.value;
|
|
28
28
|
}
|
|
29
|
-
console.log(1, current.value);
|
|
30
29
|
handlePageChange(current.value, props.pageSize);
|
|
31
30
|
current.value = void 0;
|
|
32
|
-
console.log(2, current.value);
|
|
33
31
|
};
|
|
34
32
|
return (_ctx, _cache) => {
|
|
35
33
|
const _component_a_input_number = resolveComponent("a-input-number");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pagination.vue2.mjs","sources":["../../../../../../../packages/components/table/src/components/pagination.vue"],"sourcesContent":["<template>\n <div :class=\"[bem.e('pagination-box')]\">\n <div :class=\"[bem.e('pagination-quick-jump')]\">\n 跳至\n <a-input-number\n v-model:value=\"current\"\n :disabled=\"max <= 1\"\n :class=\"[bem.e('pagination-input')]\"\n size=\"small\"\n :precision=\"0\"\n :controls=\"false\"\n @blur=\"handleNumberChange\"\n @press-enter=\"handleNumberChange\"\n />\n 页\n </div>\n <a-pagination\n v-bind=\"attrs\"\n :class=\"`${bem.e('pagination')}`\"\n :current=\"props.current\"\n :page-size=\"props.pageSize\"\n :total=\"props.total\"\n show-size-changer\n :show-total=\"(total: number) => `共 ${total} 条`\"\n @change=\"handlePageChange\"\n />\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { useAttrs, ref, computed } from 'vue'\nimport { createNamespace } from '@ll-plus/utils'\nimport { tablePaginationProps } from '../config'\n\n// 1.defineOptions\ndefineOptions({\n name: 'TableHeaderSearch'\n})\n\n// 2.props\nconst props = defineProps(tablePaginationProps)\n\n// 3.hooks\nconst attrs = useAttrs()\n\n// 4.const\nconst bem = createNamespace('table')\n\nconst current = ref<number | undefined>(undefined)\n\nconst max = computed(() => Math.ceil(props.total! / props.pageSize!))\n\n// 5.methods\nconst handlePageChange = (page: number, pageSize: number) =>\n props.onChange && props.onChange(page, pageSize)\n\nconst handleNumberChange = () => {\n if (current.value === undefined) return\n if (current.value < 1) {\n current.value = 1\n } else if (current.value > max.value) {\n current.value = max.value\n }\n
|
|
1
|
+
{"version":3,"file":"pagination.vue2.mjs","sources":["../../../../../../../packages/components/table/src/components/pagination.vue"],"sourcesContent":["<template>\n <div :class=\"[bem.e('pagination-box')]\">\n <div :class=\"[bem.e('pagination-quick-jump')]\">\n 跳至\n <a-input-number\n v-model:value=\"current\"\n :disabled=\"max <= 1\"\n :class=\"[bem.e('pagination-input')]\"\n size=\"small\"\n :precision=\"0\"\n :controls=\"false\"\n @blur=\"handleNumberChange\"\n @press-enter=\"handleNumberChange\"\n />\n 页\n </div>\n <a-pagination\n v-bind=\"attrs\"\n :class=\"`${bem.e('pagination')}`\"\n :current=\"props.current\"\n :page-size=\"props.pageSize\"\n :total=\"props.total\"\n show-size-changer\n :show-total=\"(total: number) => `共 ${total} 条`\"\n @change=\"handlePageChange\"\n />\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { useAttrs, ref, computed } from 'vue'\nimport { createNamespace } from '@ll-plus/utils'\nimport { tablePaginationProps } from '../config'\n\n// 1.defineOptions\ndefineOptions({\n name: 'TableHeaderSearch'\n})\n\n// 2.props\nconst props = defineProps(tablePaginationProps)\n\n// 3.hooks\nconst attrs = useAttrs()\n\n// 4.const\nconst bem = createNamespace('table')\n\nconst current = ref<number | undefined>(undefined)\n\nconst max = computed(() => Math.ceil(props.total! / props.pageSize!))\n\n// 5.methods\nconst handlePageChange = (page: number, pageSize: number) =>\n props.onChange && props.onChange(page, pageSize)\n\nconst handleNumberChange = () => {\n if (current.value === undefined) return\n if (current.value < 1) {\n current.value = 1\n } else if (current.value > max.value) {\n current.value = max.value\n }\n handlePageChange(current.value, props.pageSize!)\n current.value = undefined\n}\n</script>\n"],"names":[],"mappings":";;;;;;;;;;;;;;AAwCA,IAAA,MAAM,KAAQ,GAAA,OAAA,CAAA;AAGd,IAAA,MAAM,QAAQ,QAAS,EAAA,CAAA;AAGvB,IAAM,MAAA,GAAA,GAAM,gBAAgB,OAAO,CAAA,CAAA;AAEnC,IAAM,MAAA,OAAA,GAAU,IAAwB,KAAS,CAAA,CAAA,CAAA;AAEjD,IAAM,MAAA,GAAA,GAAM,SAAS,MAAM,IAAA,CAAK,KAAK,KAAM,CAAA,KAAA,GAAS,KAAM,CAAA,QAAS,CAAC,CAAA,CAAA;AAGpE,IAAM,MAAA,gBAAA,GAAmB,CAAC,IAAc,EAAA,QAAA,KACtC,MAAM,QAAY,IAAA,KAAA,CAAM,QAAS,CAAA,IAAA,EAAM,QAAQ,CAAA,CAAA;AAEjD,IAAA,MAAM,qBAAqB,MAAM;AAC/B,MAAA,IAAI,QAAQ,KAAU,KAAA,KAAA,CAAA;AAAW,QAAA,OAAA;AACjC,MAAI,IAAA,OAAA,CAAQ,QAAQ,CAAG,EAAA;AACrB,QAAA,OAAA,CAAQ,KAAQ,GAAA,CAAA,CAAA;AAAA,OACP,MAAA,IAAA,OAAA,CAAQ,KAAQ,GAAA,GAAA,CAAI,KAAO,EAAA;AACpC,QAAA,OAAA,CAAQ,QAAQ,GAAI,CAAA,KAAA,CAAA;AAAA,OACtB;AACA,MAAiB,gBAAA,CAAA,OAAA,CAAQ,KAAO,EAAA,KAAA,CAAM,QAAS,CAAA,CAAA;AAC/C,MAAA,OAAA,CAAQ,KAAQ,GAAA,KAAA,CAAA,CAAA;AAAA,KAClB,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -27,6 +27,6 @@ export declare const buildProp: <Type = never, Value = never, Validator = never,
|
|
|
27
27
|
export type TestProps = Record<string, {
|
|
28
28
|
[epPropKey]: true;
|
|
29
29
|
} | NativePropType | EpPropInput<any, any, any, any, any>>;
|
|
30
|
-
export declare const buildProps: <Props extends Record<string,
|
|
30
|
+
export declare const buildProps: <Props extends Record<string, {
|
|
31
31
|
__epPropKey: true;
|
|
32
|
-
}
|
|
32
|
+
} | NativePropType | EpPropInput<any, any, any, any, any>>>(props: Props) => { [K in keyof Props]: IfEpProp<Props[K], Props[K], IfNativePropType<Props[K], Props[K], EpPropConvert<Props[K]>>>; };
|
package/index.full.js
CHANGED
|
@@ -50353,6 +50353,8 @@
|
|
|
50353
50353
|
return false;
|
|
50354
50354
|
}
|
|
50355
50355
|
function handleOpen() {
|
|
50356
|
+
if (props.disabled)
|
|
50357
|
+
return;
|
|
50356
50358
|
open.value = true;
|
|
50357
50359
|
}
|
|
50358
50360
|
function handleCropend({ imgBase64 }) {
|
|
@@ -50376,6 +50378,17 @@
|
|
|
50376
50378
|
avatar.value = previewSource.value;
|
|
50377
50379
|
open.value = false;
|
|
50378
50380
|
}
|
|
50381
|
+
require$$0.watch(
|
|
50382
|
+
() => props.avatar,
|
|
50383
|
+
(val) => {
|
|
50384
|
+
console.log({ val });
|
|
50385
|
+
src.value = val;
|
|
50386
|
+
avatar.value = val;
|
|
50387
|
+
},
|
|
50388
|
+
{
|
|
50389
|
+
immediate: true
|
|
50390
|
+
}
|
|
50391
|
+
);
|
|
50379
50392
|
return (_ctx, _cache) => {
|
|
50380
50393
|
const _component_ll_icon = require$$0.resolveComponent("ll-icon");
|
|
50381
50394
|
const _component_ll_button = require$$0.resolveComponent("ll-button");
|
|
@@ -50417,7 +50430,7 @@
|
|
|
50417
50430
|
class: require$$0.normalizeClass(require$$0.unref(bem).e("cropper"))
|
|
50418
50431
|
},
|
|
50419
50432
|
[
|
|
50420
|
-
src.value ? (require$$0.openBlock(), require$$0.createBlock(CropperImage, {
|
|
50433
|
+
src.value && open.value ? (require$$0.openBlock(), require$$0.createBlock(CropperImage, {
|
|
50421
50434
|
key: 0,
|
|
50422
50435
|
src: src.value,
|
|
50423
50436
|
height: "300px",
|
|
@@ -50698,6 +50711,9 @@
|
|
|
50698
50711
|
"div",
|
|
50699
50712
|
{
|
|
50700
50713
|
class: require$$0.normalizeClass(require$$0.unref(bem).e("cropper-avatar")),
|
|
50714
|
+
style: require$$0.normalizeStyle({
|
|
50715
|
+
cursor: props.disabled ? "not-allowed" : "pointer"
|
|
50716
|
+
}),
|
|
50701
50717
|
onClick: handleOpen
|
|
50702
50718
|
},
|
|
50703
50719
|
[
|
|
@@ -50705,12 +50721,13 @@
|
|
|
50705
50721
|
require$$0.createVNode(_component_ll_image, {
|
|
50706
50722
|
src: avatar.value,
|
|
50707
50723
|
width: 64,
|
|
50708
|
-
height: 64
|
|
50724
|
+
height: 64,
|
|
50725
|
+
preview: false
|
|
50709
50726
|
}, null, 8, ["src"])
|
|
50710
50727
|
])
|
|
50711
50728
|
],
|
|
50712
|
-
|
|
50713
|
-
/* CLASS */
|
|
50729
|
+
6
|
|
50730
|
+
/* CLASS, STYLE */
|
|
50714
50731
|
)
|
|
50715
50732
|
],
|
|
50716
50733
|
64
|
|
@@ -61947,6 +61964,12 @@
|
|
|
61947
61964
|
class: {
|
|
61948
61965
|
type: String
|
|
61949
61966
|
},
|
|
61967
|
+
/**
|
|
61968
|
+
* @description icon的style
|
|
61969
|
+
*/
|
|
61970
|
+
style: {
|
|
61971
|
+
type: definePropType(Object)
|
|
61972
|
+
},
|
|
61950
61973
|
/**
|
|
61951
61974
|
* @description tooltip的class
|
|
61952
61975
|
*/
|
|
@@ -62042,6 +62065,7 @@
|
|
|
62042
62065
|
type: "text",
|
|
62043
62066
|
disabled: _ctx.disabled,
|
|
62044
62067
|
class: require$$0.normalizeClass(`${btnClass.value}`),
|
|
62068
|
+
style: require$$0.normalizeStyle(_ctx.style),
|
|
62045
62069
|
onClick: handleClickBtn
|
|
62046
62070
|
}, {
|
|
62047
62071
|
default: require$$0.withCtx(() => [
|
|
@@ -62062,7 +62086,7 @@
|
|
|
62062
62086
|
]),
|
|
62063
62087
|
_: 1
|
|
62064
62088
|
/* STABLE */
|
|
62065
|
-
}, 8, ["disabled", "class"])
|
|
62089
|
+
}, 8, ["disabled", "class", "style"])
|
|
62066
62090
|
]),
|
|
62067
62091
|
_: 1
|
|
62068
62092
|
/* STABLE */
|
|
@@ -62075,6 +62099,7 @@
|
|
|
62075
62099
|
type: "text",
|
|
62076
62100
|
disabled: _ctx.disabled,
|
|
62077
62101
|
class: require$$0.normalizeClass(`${btnClass.value}`),
|
|
62102
|
+
style: require$$0.normalizeStyle(_ctx.style),
|
|
62078
62103
|
onClick: handleClickBtn
|
|
62079
62104
|
}, {
|
|
62080
62105
|
default: require$$0.withCtx(() => [
|
|
@@ -62095,7 +62120,7 @@
|
|
|
62095
62120
|
]),
|
|
62096
62121
|
_: 1
|
|
62097
62122
|
/* STABLE */
|
|
62098
|
-
}, 8, ["disabled", "class"])
|
|
62123
|
+
}, 8, ["disabled", "class", "style"])
|
|
62099
62124
|
],
|
|
62100
62125
|
64
|
|
62101
62126
|
/* STABLE_FRAGMENT */
|
|
@@ -65462,7 +65487,7 @@
|
|
|
65462
65487
|
() => [props.list, props.showDropdown],
|
|
65463
65488
|
(data) => {
|
|
65464
65489
|
const [newList, showDropdown] = data;
|
|
65465
|
-
const list = newList ? newList : defualtList.value;
|
|
65490
|
+
const list = newList ? newList.filter(Boolean) : defualtList.value;
|
|
65466
65491
|
const length = list.length;
|
|
65467
65492
|
if (length >= props.showIconLimit && showDropdown) {
|
|
65468
65493
|
showIconList.value = list.slice(
|
|
@@ -75922,10 +75947,8 @@
|
|
|
75922
75947
|
} else if (current.value > max.value) {
|
|
75923
75948
|
current.value = max.value;
|
|
75924
75949
|
}
|
|
75925
|
-
console.log(1, current.value);
|
|
75926
75950
|
handlePageChange(current.value, props.pageSize);
|
|
75927
75951
|
current.value = void 0;
|
|
75928
|
-
console.log(2, current.value);
|
|
75929
75952
|
};
|
|
75930
75953
|
return (_ctx, _cache) => {
|
|
75931
75954
|
const _component_a_input_number = require$$0.resolveComponent("a-input-number");
|