@vaebe/ccui 2.0.1-beta.1 → 2.0.1-beta.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/affix/index.d.ts +10 -0
- package/affix/src/affix-types.d.ts +20 -0
- package/affix/src/affix.d.ts +20 -0
- package/alert/index.d.ts +10 -0
- package/alert/src/alert-types.d.ts +48 -0
- package/alert/src/alert.d.ts +36 -0
- package/anchor/index.d.ts +10 -0
- package/anchor/src/anchor-types.d.ts +37 -0
- package/anchor/src/anchor.d.ts +31 -0
- package/auto-complete/index.d.ts +10 -0
- package/auto-complete/index.es.js +1986 -0
- package/auto-complete/index.umd.js +1 -0
- package/auto-complete/src/auto-complete-types.d.ts +134 -0
- package/auto-complete/src/auto-complete.d.ts +94 -0
- package/auto-complete/style.css +2 -0
- package/avatar/index.d.ts +10 -0
- package/avatar/src/avatar-types.d.ts +53 -0
- package/avatar/src/avatar.d.ts +36 -0
- package/avatar/src/components/icon-body.d.ts +4 -0
- package/avatar/src/components/icon-img-error.d.ts +4 -0
- package/avatar/src/components/icon-nobody.d.ts +4 -0
- package/avatar/src/composables/use-get-background-color.d.ts +1 -0
- package/avatar/src/composables/use-get-display-name.d.ts +1 -0
- package/avatar-group/index.d.ts +12 -0
- package/avatar-group/index.es.js +119 -0
- package/avatar-group/index.umd.js +1 -0
- package/avatar-group/src/avatar-group-types.d.ts +56 -0
- package/avatar-group/src/avatar-group.d.ts +27 -0
- package/avatar-group/style.css +2 -0
- package/badge/index.d.ts +10 -0
- package/badge/src/badge-types.d.ts +52 -0
- package/badge/src/badge.d.ts +36 -0
- package/badge-ribbon/index.d.ts +12 -0
- package/badge-ribbon/index.es.js +84 -0
- package/badge-ribbon/index.umd.js +1 -0
- package/badge-ribbon/src/badge-ribbon-types.d.ts +30 -0
- package/badge-ribbon/src/badge-ribbon.d.ts +17 -0
- package/badge-ribbon/style.css +2 -0
- package/breadcrumb/index.d.ts +10 -0
- package/breadcrumb/src/breadcrumb-types.d.ts +29 -0
- package/breadcrumb/src/breadcrumb.d.ts +21 -0
- package/button/index.d.ts +12 -0
- package/button/src/button-group.d.ts +12 -0
- package/button/src/button-types.d.ts +168 -0
- package/button/src/button.d.ts +75 -0
- package/button-3d/index.d.ts +10 -0
- package/button-3d/src/button-3d-types.d.ts +27 -0
- package/button-3d/src/button-3d.d.ts +23 -0
- package/calendar/index.d.ts +10 -0
- package/calendar/src/calendar-types.d.ts +56 -0
- package/calendar/src/calendar.d.ts +27 -0
- package/card/index.d.ts +10 -0
- package/card/src/card-types.d.ts +34 -0
- package/card/src/card.d.ts +21 -0
- package/card-meta/index.d.ts +11 -0
- package/card-meta/index.es.js +53 -0
- package/card-meta/index.umd.js +1 -0
- package/card-meta/src/card-meta-types.d.ts +19 -0
- package/card-meta/src/card-meta.d.ts +14 -0
- package/card-meta/style.css +2 -0
- package/carousel/index.d.ts +10 -0
- package/carousel/index.es.js +306 -0
- package/carousel/index.umd.js +1 -0
- package/carousel/src/carousel-types.d.ts +72 -0
- package/carousel/src/carousel.d.ts +58 -0
- package/carousel/style.css +2 -0
- package/cascader/index.d.ts +12 -0
- package/cascader/index.es.js +2267 -0
- package/cascader/index.umd.js +1 -0
- package/cascader/src/cascader-types.d.ts +214 -0
- package/cascader/src/cascader.d.ts +133 -0
- package/cascader/style.css +2 -0
- package/check-box/index.d.ts +10 -0
- package/check-box/src/check-box-group.d.ts +31 -0
- package/check-box/src/check-box-types.d.ts +74 -0
- package/check-box/src/check-box.d.ts +28 -0
- package/check-box/src/components/icon-active.d.ts +2 -0
- package/check-box/src/components/icon-default.d.ts +2 -0
- package/checkable-tag/index.d.ts +13 -0
- package/checkable-tag/index.es.js +141 -0
- package/checkable-tag/index.umd.js +1 -0
- package/checkable-tag/src/checkable-tag-group.d.ts +26 -0
- package/checkable-tag/src/checkable-tag-types.d.ts +83 -0
- package/checkable-tag/src/checkable-tag.d.ts +20 -0
- package/checkable-tag/style.css +2 -0
- package/collapse/index.d.ts +11 -0
- package/collapse/src/collapse-item.d.ts +16 -0
- package/collapse/src/collapse-types.d.ts +52 -0
- package/collapse/src/collapse.d.ts +24 -0
- package/color-picker/index.d.ts +10 -0
- package/color-picker/index.es.js +1881 -0
- package/color-picker/index.umd.js +1 -0
- package/color-picker/src/color-picker-types.d.ts +121 -0
- package/color-picker/src/color-picker.d.ts +75 -0
- package/color-picker/style.css +2 -0
- package/config-provider/index.d.ts +10 -0
- package/config-provider/src/config-provider-types.d.ts +131 -0
- package/config-provider/src/config-provider.d.ts +24 -0
- package/date-picker/index.d.ts +10 -0
- package/date-picker/src/date-picker-types.d.ts +179 -0
- package/date-picker/src/date-picker.d.ts +113 -0
- package/descriptions/index.d.ts +11 -0
- package/descriptions/src/descriptions-item.d.ts +19 -0
- package/descriptions/src/descriptions-types.d.ts +64 -0
- package/descriptions/src/descriptions.d.ts +31 -0
- package/divider/index.d.ts +10 -0
- package/divider/src/divider-types.d.ts +31 -0
- package/divider/src/divider.d.ts +24 -0
- package/drawer/index.d.ts +10 -0
- package/drawer/src/drawer-types.d.ts +155 -0
- package/drawer/src/drawer.d.ts +79 -0
- package/dropdown/index.d.ts +10 -0
- package/dropdown/index.es.js +2 -2
- package/dropdown/index.umd.js +1 -1
- package/dropdown/src/dropdown-types.d.ts +41 -0
- package/dropdown/src/dropdown.d.ts +32 -0
- package/empty/index.d.ts +10 -0
- package/empty/src/empty-types.d.ts +16 -0
- package/empty/src/empty.d.ts +15 -0
- package/flex/index.d.ts +10 -0
- package/flex/src/flex-types.d.ts +36 -0
- package/flex/src/flex.d.ts +29 -0
- package/float-button/index.d.ts +11 -0
- package/float-button/src/back-top.d.ts +26 -0
- package/float-button/src/float-button-types.d.ts +65 -0
- package/float-button/src/float-button.d.ts +32 -0
- package/form/index.d.ts +14 -0
- package/form/src/form-item.d.ts +72 -0
- package/form/src/form-list.d.ts +12 -0
- package/form/src/form-provider.d.ts +7 -0
- package/form/src/form-types.d.ts +360 -0
- package/form/src/form.d.ts +64 -0
- package/form/src/utils.d.ts +10 -0
- package/grid/index.d.ts +10 -0
- package/grid/src/grid-types.d.ts +90 -0
- package/grid/src/grid.d.ts +58 -0
- package/icon/index.d.ts +12 -0
- package/icon/src/icon-registry.d.ts +5 -0
- package/icon/src/icon-types.d.ts +95 -0
- package/icon/src/icon.d.ts +63 -0
- package/image/index.d.ts +10 -0
- package/image/src/image-types.d.ts +56 -0
- package/image/src/image.d.ts +42 -0
- package/image-preview-group/index.d.ts +11 -0
- package/image-preview-group/index.es.js +162 -0
- package/image-preview-group/index.umd.js +1 -0
- package/image-preview-group/src/image-preview-group-types.d.ts +51 -0
- package/image-preview-group/src/image-preview-group.d.ts +25 -0
- package/image-preview-group/style.css +2 -0
- package/index.d.ts +93 -7
- package/input/index.d.ts +10 -0
- package/input/src/input-types.d.ts +164 -0
- package/input/src/input.d.ts +74 -0
- package/input-number/index.d.ts +10 -0
- package/input-number/src/input-number-types.d.ts +165 -0
- package/input-number/src/input-number.d.ts +66 -0
- package/input-otp/index.d.ts +11 -0
- package/input-otp/index.es.js +186 -0
- package/input-otp/index.umd.js +1 -0
- package/input-otp/src/input-otp-types.d.ts +68 -0
- package/input-otp/src/input-otp.d.ts +40 -0
- package/input-otp/style.css +2 -0
- package/input-search/index.d.ts +11 -0
- package/input-search/index.es.js +1228 -0
- package/input-search/index.umd.js +1 -0
- package/input-search/src/input-search-types.d.ts +106 -0
- package/input-search/src/input-search.d.ts +84 -0
- package/input-search/style.css +2 -0
- package/layout/index.d.ts +10 -0
- package/layout/src/layout-types.d.ts +70 -0
- package/layout/src/layout.d.ts +56 -0
- package/masonry/index.d.ts +10 -0
- package/masonry/src/masonry-types.d.ts +19 -0
- package/masonry/src/masonry.d.ts +16 -0
- package/mentions/index.d.ts +10 -0
- package/mentions/index.es.js +711 -0
- package/mentions/index.umd.js +1 -0
- package/mentions/src/mentions-types.d.ts +124 -0
- package/mentions/src/mentions.d.ts +79 -0
- package/mentions/style.css +2 -0
- package/menu/index.d.ts +10 -0
- package/menu/src/menu-types.d.ts +109 -0
- package/menu/src/menu.d.ts +63 -0
- package/message/index.d.ts +22 -0
- package/message/src/message-item.d.ts +46 -0
- package/message/src/message-types.d.ts +86 -0
- package/message/src/message.d.ts +21 -0
- package/message/src/use-message.d.ts +35 -0
- package/modal/index.d.ts +24 -0
- package/modal/src/confirm-types.d.ts +30 -0
- package/modal/src/confirm.d.ts +17 -0
- package/modal/src/modal-types.d.ts +175 -0
- package/modal/src/modal.d.ts +99 -0
- package/modal/src/use-modal.d.ts +34 -0
- package/notification/index.d.ts +21 -0
- package/notification/src/notification-item.d.ts +49 -0
- package/notification/src/notification-types.d.ts +91 -0
- package/notification/src/notification.d.ts +20 -0
- package/notification/src/use-notification.d.ts +34 -0
- package/package.json +611 -12
- package/pagination/index.d.ts +10 -0
- package/pagination/index.es.js +4 -2
- package/pagination/index.umd.js +1 -1
- package/pagination/src/pagination-types.d.ts +49 -0
- package/pagination/src/pagination.d.ts +43 -0
- package/popconfirm/index.d.ts +10 -0
- package/popconfirm/src/popconfirm-types.d.ts +82 -0
- package/popconfirm/src/popconfirm.d.ts +55 -0
- package/popover/index.d.ts +10 -0
- package/popover/src/popover-types.d.ts +235 -0
- package/popover/src/popover.d.ts +130 -0
- package/progress/index.d.ts +10 -0
- package/progress/src/progress-types.d.ts +48 -0
- package/progress/src/progress.d.ts +37 -0
- package/radio/index.d.ts +11 -0
- package/radio/src/components/icon-active.d.ts +2 -0
- package/radio/src/components/icon-circle.d.ts +2 -0
- package/radio/src/radio-group.d.ts +21 -0
- package/radio/src/radio-types.d.ts +55 -0
- package/radio/src/radio.d.ts +24 -0
- package/range-picker/index.d.ts +10 -0
- package/range-picker/index.es.js +2415 -0
- package/range-picker/index.umd.js +1 -0
- package/range-picker/src/range-picker-types.d.ts +169 -0
- package/range-picker/src/range-picker.d.ts +112 -0
- package/range-picker/style.css +2 -0
- package/rate/index.d.ts +10 -0
- package/rate/src/components/icon-default.d.ts +2 -0
- package/rate/src/rate-types.d.ts +34 -0
- package/rate/src/rate.d.ts +30 -0
- package/result/index.d.ts +10 -0
- package/result/src/result-types.d.ts +21 -0
- package/result/src/result.d.ts +18 -0
- package/segmented/index.d.ts +10 -0
- package/segmented/src/segmented-types.d.ts +32 -0
- package/segmented/src/segmented.d.ts +25 -0
- package/select/index.d.ts +10 -0
- package/select/src/composables/use-select.d.ts +29 -0
- package/select/src/select-types.d.ts +215 -0
- package/select/src/select.d.ts +149 -0
- package/skeleton/index.d.ts +10 -0
- package/skeleton/src/skeleton-types.d.ts +39 -0
- package/skeleton/src/skeleton.d.ts +27 -0
- package/skeleton-node/index.d.ts +11 -0
- package/skeleton-node/index.es.js +71 -0
- package/skeleton-node/index.umd.js +1 -0
- package/skeleton-node/src/skeleton-node-types.d.ts +23 -0
- package/skeleton-node/src/skeleton-node.d.ts +17 -0
- package/skeleton-node/style.css +2 -0
- package/slider/index.d.ts +10 -0
- package/slider/index.es.js +3 -3
- package/slider/index.umd.js +1 -1
- package/slider/src/composables/use-slider-tooltip.d.ts +18 -0
- package/slider/src/composables/use-slider.d.ts +68 -0
- package/slider/src/slider-types.d.ts +112 -0
- package/slider/src/slider.d.ts +149 -0
- package/space/index.d.ts +10 -0
- package/space/src/space-types.d.ts +28 -0
- package/space/src/space.d.ts +21 -0
- package/space-compact/index.d.ts +11 -0
- package/space-compact/index.es.js +59 -0
- package/space-compact/index.umd.js +1 -0
- package/space-compact/src/space-compact-types.d.ts +27 -0
- package/space-compact/src/space-compact.d.ts +15 -0
- package/space-compact/style.css +2 -0
- package/spin/index.d.ts +10 -0
- package/spin/src/spin-types.d.ts +29 -0
- package/spin/src/spin.d.ts +24 -0
- package/splitter/index.d.ts +10 -0
- package/splitter/src/splitter-types.d.ts +70 -0
- package/splitter/src/splitter.d.ts +62 -0
- package/status/index.d.ts +10 -0
- package/status/src/status-types.d.ts +10 -0
- package/status/src/status.d.ts +9 -0
- package/steps/index.d.ts +10 -0
- package/steps/src/steps-types.d.ts +48 -0
- package/steps/src/steps.d.ts +34 -0
- package/style.css +2 -0
- package/switch/index.d.ts +10 -0
- package/switch/src/switch-types.d.ts +45 -0
- package/switch/src/switch.d.ts +37 -0
- package/table/index.d.ts +11 -0
- package/table/src/table-types.d.ts +172 -0
- package/table/src/table.d.ts +67 -0
- package/table-column/index.d.ts +11 -0
- package/table-column/index.es.js +155 -0
- package/table-column/index.umd.js +1 -0
- package/table-column/src/table-column-types.d.ts +75 -0
- package/table-column/src/table-column.d.ts +63 -0
- package/table-column-group/index.d.ts +11 -0
- package/table-column-group/index.es.js +80 -0
- package/table-column-group/index.umd.js +1 -0
- package/table-column-group/src/table-column-group-types.d.ts +36 -0
- package/table-column-group/src/table-column-group.d.ts +20 -0
- package/table-summary/index.d.ts +11 -0
- package/table-summary/index.es.js +30 -0
- package/table-summary/index.umd.js +1 -0
- package/table-summary/src/table-summary-types.d.ts +29 -0
- package/table-summary/src/table-summary.d.ts +8 -0
- package/tabs/index.d.ts +11 -0
- package/tabs/src/components/tab/tab-types.d.ts +18 -0
- package/tabs/src/components/tab/tab.d.ts +15 -0
- package/tabs/src/components/tabs-nav/index.d.ts +26 -0
- package/tabs/src/tabs-types.d.ts +49 -0
- package/tabs/src/tabs.d.ts +27 -0
- package/tag/index.d.ts +10 -0
- package/tag/src/tag-types.d.ts +41 -0
- package/tag/src/tag.d.ts +24 -0
- package/textarea/index.d.ts +11 -0
- package/textarea/index.es.js +1241 -0
- package/textarea/index.umd.js +1 -0
- package/textarea/src/textarea-types.d.ts +150 -0
- package/textarea/src/textarea.d.ts +63 -0
- package/textarea/style.css +2 -0
- package/time-picker/index.d.ts +10 -0
- package/time-picker/index.es.js +2325 -0
- package/time-picker/index.umd.js +1 -0
- package/time-picker/src/time-picker-types.d.ts +168 -0
- package/time-picker/src/time-picker.d.ts +127 -0
- package/time-picker/style.css +2 -0
- package/time-range-picker/index.d.ts +10 -0
- package/time-range-picker/index.es.js +2568 -0
- package/time-range-picker/index.umd.js +1 -0
- package/time-range-picker/src/time-range-picker-types.d.ts +147 -0
- package/time-range-picker/src/time-range-picker.d.ts +124 -0
- package/time-range-picker/style.css +2 -0
- package/timeline/index.d.ts +11 -0
- package/timeline/src/timeline-item.d.ts +31 -0
- package/timeline/src/timeline-types.d.ts +72 -0
- package/timeline/src/timeline.d.ts +3 -0
- package/tooltip/index.d.ts +10 -0
- package/tooltip/src/tooltip-types.d.ts +201 -0
- package/tooltip/src/tooltip.d.ts +87 -0
- package/transfer/index.d.ts +10 -0
- package/transfer/index.es.js +1407 -0
- package/transfer/index.umd.js +1 -0
- package/transfer/src/transfer-types.d.ts +76 -0
- package/transfer/src/transfer.d.ts +59 -0
- package/transfer/style.css +2 -0
- package/tree/index.d.ts +10 -0
- package/tree/src/composables/use-tree-check.d.ts +9 -0
- package/tree/src/composables/use-tree-flatten.d.ts +11 -0
- package/tree/src/composables/use-tree-state.d.ts +17 -0
- package/tree/src/tree-types.d.ts +202 -0
- package/tree/src/tree.d.ts +122 -0
- package/tree-select/index.d.ts +12 -0
- package/tree-select/index.es.js +3009 -0
- package/tree-select/index.umd.js +1 -0
- package/tree-select/src/tree-select-types.d.ts +188 -0
- package/tree-select/src/tree-select.d.ts +128 -0
- package/tree-select/style.css +2 -0
- package/typography/index.d.ts +10 -0
- package/typography/src/typography-types.d.ts +316 -0
- package/typography/src/typography.d.ts +33 -0
- package/upload/index.d.ts +10 -0
- package/upload/index.es.js +1450 -0
- package/upload/index.umd.js +1 -0
- package/upload/src/upload-types.d.ts +99 -0
- package/upload/src/upload.d.ts +66 -0
- package/upload/style.css +2 -0
- package/upload-dragger/index.d.ts +10 -0
- package/upload-dragger/index.es.js +1472 -0
- package/upload-dragger/index.umd.js +1 -0
- package/upload-dragger/src/upload-dragger.d.ts +167 -0
- package/upload-dragger/style.css +2 -0
- package/util/index.d.ts +12 -0
- package/util/src/dom.d.ts +8 -0
- package/util/src/func.d.ts +7 -0
- package/util/src/type.d.ts +3 -0
- package/vue-ccui.es.js +11 -9
- package/vue-ccui.umd.js +1 -1
- package/watermark/index.d.ts +10 -0
- package/watermark/src/watermark-types.d.ts +47 -0
- package/watermark/src/watermark.d.ts +34 -0
- package/ccui-cli.css +0 -2
- package/nuxt/components/category.js +0 -2
- package/nuxt/components/install.js +0 -2
- package/nuxt/components/status.js +0 -2
- package/nuxt/components/title.js +0 -2
- package/nuxt/index.js +0 -13
- /package/affix/{ccui-cli.css → style.css} +0 -0
- /package/alert/{ccui-cli.css → style.css} +0 -0
- /package/anchor/{ccui-cli.css → style.css} +0 -0
- /package/avatar/{ccui-cli.css → style.css} +0 -0
- /package/badge/{ccui-cli.css → style.css} +0 -0
- /package/breadcrumb/{ccui-cli.css → style.css} +0 -0
- /package/button/{ccui-cli.css → style.css} +0 -0
- /package/button-3d/{ccui-cli.css → style.css} +0 -0
- /package/calendar/{ccui-cli.css → style.css} +0 -0
- /package/card/{ccui-cli.css → style.css} +0 -0
- /package/check-box/{ccui-cli.css → style.css} +0 -0
- /package/collapse/{ccui-cli.css → style.css} +0 -0
- /package/date-picker/{ccui-cli.css → style.css} +0 -0
- /package/descriptions/{ccui-cli.css → style.css} +0 -0
- /package/divider/{ccui-cli.css → style.css} +0 -0
- /package/drawer/{ccui-cli.css → style.css} +0 -0
- /package/dropdown/{ccui-cli.css → style.css} +0 -0
- /package/empty/{ccui-cli.css → style.css} +0 -0
- /package/flex/{ccui-cli.css → style.css} +0 -0
- /package/float-button/{ccui-cli.css → style.css} +0 -0
- /package/form/{ccui-cli.css → style.css} +0 -0
- /package/grid/{ccui-cli.css → style.css} +0 -0
- /package/icon/{ccui-cli.css → style.css} +0 -0
- /package/image/{ccui-cli.css → style.css} +0 -0
- /package/input/{ccui-cli.css → style.css} +0 -0
- /package/input-number/{ccui-cli.css → style.css} +0 -0
- /package/layout/{ccui-cli.css → style.css} +0 -0
- /package/masonry/{ccui-cli.css → style.css} +0 -0
- /package/menu/{ccui-cli.css → style.css} +0 -0
- /package/message/{ccui-cli.css → style.css} +0 -0
- /package/modal/{ccui-cli.css → style.css} +0 -0
- /package/notification/{ccui-cli.css → style.css} +0 -0
- /package/pagination/{ccui-cli.css → style.css} +0 -0
- /package/popconfirm/{ccui-cli.css → style.css} +0 -0
- /package/popover/{ccui-cli.css → style.css} +0 -0
- /package/progress/{ccui-cli.css → style.css} +0 -0
- /package/radio/{ccui-cli.css → style.css} +0 -0
- /package/rate/{ccui-cli.css → style.css} +0 -0
- /package/result/{ccui-cli.css → style.css} +0 -0
- /package/segmented/{ccui-cli.css → style.css} +0 -0
- /package/select/{ccui-cli.css → style.css} +0 -0
- /package/skeleton/{ccui-cli.css → style.css} +0 -0
- /package/slider/{ccui-cli.css → style.css} +0 -0
- /package/space/{ccui-cli.css → style.css} +0 -0
- /package/spin/{ccui-cli.css → style.css} +0 -0
- /package/splitter/{ccui-cli.css → style.css} +0 -0
- /package/status/{ccui-cli.css → style.css} +0 -0
- /package/steps/{ccui-cli.css → style.css} +0 -0
- /package/switch/{ccui-cli.css → style.css} +0 -0
- /package/table/{ccui-cli.css → style.css} +0 -0
- /package/tabs/{ccui-cli.css → style.css} +0 -0
- /package/tag/{ccui-cli.css → style.css} +0 -0
- /package/timeline/{ccui-cli.css → style.css} +0 -0
- /package/tooltip/{ccui-cli.css → style.css} +0 -0
- /package/tree/{ccui-cli.css → style.css} +0 -0
- /package/typography/{ccui-cli.css → style.css} +0 -0
- /package/watermark/{ccui-cli.css → style.css} +0 -0
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
import type { Component, PropType } from 'vue';
|
|
2
|
+
export type IconSizePreset = 'small' | 'default' | 'large';
|
|
3
|
+
export type IconSize = IconSizePreset | number | (string & {});
|
|
4
|
+
export type IconTheme = 'outlined' | 'filled' | 'two-tone';
|
|
5
|
+
export type IconSpinDirection = 'cw' | 'ccw';
|
|
6
|
+
export type IconThemePrefixMap = Partial<Record<IconTheme, string>>;
|
|
7
|
+
export interface IconProps {
|
|
8
|
+
name?: string;
|
|
9
|
+
component?: Component;
|
|
10
|
+
size?: IconSize;
|
|
11
|
+
color?: string;
|
|
12
|
+
twoToneColor?: string;
|
|
13
|
+
theme?: IconTheme;
|
|
14
|
+
themePrefixMap?: IconThemePrefixMap;
|
|
15
|
+
rotate?: number;
|
|
16
|
+
spin?: boolean;
|
|
17
|
+
spinDirection?: IconSpinDirection;
|
|
18
|
+
loading?: boolean;
|
|
19
|
+
clickable?: boolean;
|
|
20
|
+
disabled?: boolean;
|
|
21
|
+
iconifyPrefix?: string;
|
|
22
|
+
title?: string;
|
|
23
|
+
ariaLabel?: string;
|
|
24
|
+
prefixCls?: string;
|
|
25
|
+
}
|
|
26
|
+
export declare const iconProps: {
|
|
27
|
+
readonly name: {
|
|
28
|
+
readonly type: StringConstructor;
|
|
29
|
+
readonly default: "";
|
|
30
|
+
};
|
|
31
|
+
readonly component: {
|
|
32
|
+
readonly type: PropType<Component>;
|
|
33
|
+
readonly default: undefined;
|
|
34
|
+
};
|
|
35
|
+
readonly size: {
|
|
36
|
+
readonly type: PropType<IconSize>;
|
|
37
|
+
readonly default: undefined;
|
|
38
|
+
};
|
|
39
|
+
readonly color: {
|
|
40
|
+
readonly type: StringConstructor;
|
|
41
|
+
readonly default: "";
|
|
42
|
+
};
|
|
43
|
+
readonly twoToneColor: {
|
|
44
|
+
readonly type: StringConstructor;
|
|
45
|
+
readonly default: "";
|
|
46
|
+
};
|
|
47
|
+
readonly theme: {
|
|
48
|
+
readonly type: PropType<IconTheme>;
|
|
49
|
+
readonly default: undefined;
|
|
50
|
+
};
|
|
51
|
+
readonly themePrefixMap: {
|
|
52
|
+
readonly type: PropType<IconThemePrefixMap>;
|
|
53
|
+
readonly default: undefined;
|
|
54
|
+
};
|
|
55
|
+
readonly rotate: {
|
|
56
|
+
readonly type: NumberConstructor;
|
|
57
|
+
readonly default: 0;
|
|
58
|
+
};
|
|
59
|
+
readonly spin: {
|
|
60
|
+
readonly type: BooleanConstructor;
|
|
61
|
+
readonly default: false;
|
|
62
|
+
};
|
|
63
|
+
readonly spinDirection: {
|
|
64
|
+
readonly type: PropType<IconSpinDirection>;
|
|
65
|
+
readonly default: "cw";
|
|
66
|
+
};
|
|
67
|
+
readonly loading: {
|
|
68
|
+
readonly type: BooleanConstructor;
|
|
69
|
+
readonly default: false;
|
|
70
|
+
};
|
|
71
|
+
readonly clickable: {
|
|
72
|
+
readonly type: BooleanConstructor;
|
|
73
|
+
readonly default: false;
|
|
74
|
+
};
|
|
75
|
+
readonly disabled: {
|
|
76
|
+
readonly type: BooleanConstructor;
|
|
77
|
+
readonly default: false;
|
|
78
|
+
};
|
|
79
|
+
readonly iconifyPrefix: {
|
|
80
|
+
readonly type: StringConstructor;
|
|
81
|
+
readonly default: "";
|
|
82
|
+
};
|
|
83
|
+
readonly title: {
|
|
84
|
+
readonly type: StringConstructor;
|
|
85
|
+
readonly default: "";
|
|
86
|
+
};
|
|
87
|
+
readonly ariaLabel: {
|
|
88
|
+
readonly type: StringConstructor;
|
|
89
|
+
readonly default: "";
|
|
90
|
+
};
|
|
91
|
+
readonly prefixCls: {
|
|
92
|
+
readonly type: StringConstructor;
|
|
93
|
+
readonly default: "";
|
|
94
|
+
};
|
|
95
|
+
};
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import type { IconSize } from './icon-types';
|
|
2
|
+
|
|
3
|
+
import '@vaebe/ccui-icons/install';
|
|
4
|
+
declare const _default: import("vue").DefineComponent<{
|
|
5
|
+
name?: string | undefined;
|
|
6
|
+
component?: import("vue").Component | undefined;
|
|
7
|
+
size?: string | number | undefined;
|
|
8
|
+
color?: string | undefined;
|
|
9
|
+
twoToneColor?: string | undefined;
|
|
10
|
+
theme?: import("./icon-types").IconTheme | undefined;
|
|
11
|
+
themePrefixMap?: import("./icon-types").IconThemePrefixMap | undefined;
|
|
12
|
+
rotate?: number | undefined;
|
|
13
|
+
spin?: boolean | undefined;
|
|
14
|
+
spinDirection?: import("./icon-types").IconSpinDirection | undefined;
|
|
15
|
+
loading?: boolean | undefined;
|
|
16
|
+
clickable?: boolean | undefined;
|
|
17
|
+
disabled?: boolean | undefined;
|
|
18
|
+
iconifyPrefix?: string | undefined;
|
|
19
|
+
title?: string | undefined;
|
|
20
|
+
ariaLabel?: string | undefined;
|
|
21
|
+
prefixCls?: string | undefined;
|
|
22
|
+
}, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
|
|
23
|
+
[key: string]: any;
|
|
24
|
+
}>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "click"[], "click", import("vue").PublicProps, Readonly<{
|
|
25
|
+
name?: string | undefined;
|
|
26
|
+
component?: import("vue").Component | undefined;
|
|
27
|
+
size?: string | number | undefined;
|
|
28
|
+
color?: string | undefined;
|
|
29
|
+
twoToneColor?: string | undefined;
|
|
30
|
+
theme?: import("./icon-types").IconTheme | undefined;
|
|
31
|
+
themePrefixMap?: import("./icon-types").IconThemePrefixMap | undefined;
|
|
32
|
+
rotate?: number | undefined;
|
|
33
|
+
spin?: boolean | undefined;
|
|
34
|
+
spinDirection?: import("./icon-types").IconSpinDirection | undefined;
|
|
35
|
+
loading?: boolean | undefined;
|
|
36
|
+
clickable?: boolean | undefined;
|
|
37
|
+
disabled?: boolean | undefined;
|
|
38
|
+
iconifyPrefix?: string | undefined;
|
|
39
|
+
title?: string | undefined;
|
|
40
|
+
ariaLabel?: string | undefined;
|
|
41
|
+
prefixCls?: string | undefined;
|
|
42
|
+
}> & Readonly<{
|
|
43
|
+
onClick?: ((...args: any[]) => any) | undefined;
|
|
44
|
+
}>, {
|
|
45
|
+
readonly title: string;
|
|
46
|
+
readonly name: string;
|
|
47
|
+
readonly color: string;
|
|
48
|
+
readonly rotate: number;
|
|
49
|
+
readonly size: IconSize;
|
|
50
|
+
readonly disabled: boolean;
|
|
51
|
+
readonly prefixCls: string;
|
|
52
|
+
readonly theme: import("./icon-types").IconTheme;
|
|
53
|
+
readonly loading: boolean;
|
|
54
|
+
readonly clickable: boolean;
|
|
55
|
+
readonly ariaLabel: string;
|
|
56
|
+
readonly component: import("vue").Component;
|
|
57
|
+
readonly twoToneColor: string;
|
|
58
|
+
readonly themePrefixMap: Partial<Record<import("./icon-types").IconTheme, string>>;
|
|
59
|
+
readonly spin: boolean;
|
|
60
|
+
readonly spinDirection: import("./icon-types").IconSpinDirection;
|
|
61
|
+
readonly iconifyPrefix: string;
|
|
62
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
63
|
+
export default _default;
|
package/image/index.d.ts
ADDED
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import type { ExtractPropTypes, PropType } from 'vue';
|
|
2
|
+
import type { CcSemanticClasses, CcSemanticStyles } from '../../shared/hooks/use-semantic';
|
|
3
|
+
export type ImageFit = 'fill' | 'contain' | 'cover' | 'none' | 'scale-down';
|
|
4
|
+
export declare const imageProps: {
|
|
5
|
+
readonly src: {
|
|
6
|
+
readonly type: StringConstructor;
|
|
7
|
+
readonly required: true;
|
|
8
|
+
};
|
|
9
|
+
readonly alt: {
|
|
10
|
+
readonly type: StringConstructor;
|
|
11
|
+
readonly default: "";
|
|
12
|
+
};
|
|
13
|
+
readonly fit: {
|
|
14
|
+
readonly type: PropType<ImageFit>;
|
|
15
|
+
readonly default: ImageFit;
|
|
16
|
+
};
|
|
17
|
+
readonly width: {
|
|
18
|
+
readonly type: PropType<number | string>;
|
|
19
|
+
readonly default: "";
|
|
20
|
+
};
|
|
21
|
+
readonly height: {
|
|
22
|
+
readonly type: PropType<number | string>;
|
|
23
|
+
readonly default: "";
|
|
24
|
+
};
|
|
25
|
+
readonly preview: {
|
|
26
|
+
readonly type: BooleanConstructor;
|
|
27
|
+
readonly default: false;
|
|
28
|
+
};
|
|
29
|
+
readonly fallback: {
|
|
30
|
+
readonly type: StringConstructor;
|
|
31
|
+
readonly default: "";
|
|
32
|
+
};
|
|
33
|
+
readonly lazy: {
|
|
34
|
+
readonly type: BooleanConstructor;
|
|
35
|
+
readonly default: false;
|
|
36
|
+
};
|
|
37
|
+
readonly rootMargin: {
|
|
38
|
+
readonly type: StringConstructor;
|
|
39
|
+
readonly default: "0px";
|
|
40
|
+
};
|
|
41
|
+
/**
|
|
42
|
+
* 语义化 DOM className 注入。可用 key:`root` / `image` / `previewMask`。
|
|
43
|
+
*/
|
|
44
|
+
readonly classNames: {
|
|
45
|
+
readonly type: PropType<CcSemanticClasses>;
|
|
46
|
+
readonly default: undefined;
|
|
47
|
+
};
|
|
48
|
+
/**
|
|
49
|
+
* 语义化 DOM style 注入。可用 key 与 classNames 一致。
|
|
50
|
+
*/
|
|
51
|
+
readonly styles: {
|
|
52
|
+
readonly type: PropType<CcSemanticStyles>;
|
|
53
|
+
readonly default: undefined;
|
|
54
|
+
};
|
|
55
|
+
};
|
|
56
|
+
export type ImageProps = ExtractPropTypes<typeof imageProps>;
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
|
|
2
|
+
declare const _default: import("vue").DefineComponent<{
|
|
3
|
+
readonly height: string | number;
|
|
4
|
+
readonly width: string | number;
|
|
5
|
+
readonly fit: import("./image-types").ImageFit;
|
|
6
|
+
readonly src: string;
|
|
7
|
+
readonly alt: string;
|
|
8
|
+
readonly preview: boolean;
|
|
9
|
+
readonly fallback: string;
|
|
10
|
+
readonly lazy: boolean;
|
|
11
|
+
readonly rootMargin: string;
|
|
12
|
+
readonly classNames?: import("../../shared/hooks/use-semantic").CcSemanticClasses | undefined;
|
|
13
|
+
readonly styles?: import("../../shared/hooks/use-semantic").CcSemanticStyles | undefined;
|
|
14
|
+
}, () => JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("click" | "error" | "load")[], "click" | "error" | "load", import("vue").PublicProps, Readonly<{
|
|
15
|
+
readonly height: string | number;
|
|
16
|
+
readonly width: string | number;
|
|
17
|
+
readonly fit: import("./image-types").ImageFit;
|
|
18
|
+
readonly src: string;
|
|
19
|
+
readonly alt: string;
|
|
20
|
+
readonly preview: boolean;
|
|
21
|
+
readonly fallback: string;
|
|
22
|
+
readonly lazy: boolean;
|
|
23
|
+
readonly rootMargin: string;
|
|
24
|
+
readonly classNames?: import("../../shared/hooks/use-semantic").CcSemanticClasses | undefined;
|
|
25
|
+
readonly styles?: import("../../shared/hooks/use-semantic").CcSemanticStyles | undefined;
|
|
26
|
+
}> & Readonly<{
|
|
27
|
+
onClick?: ((...args: any[]) => any) | undefined;
|
|
28
|
+
onError?: ((...args: any[]) => any) | undefined;
|
|
29
|
+
onLoad?: ((...args: any[]) => any) | undefined;
|
|
30
|
+
}>, {
|
|
31
|
+
readonly height: string | number;
|
|
32
|
+
readonly width: string | number;
|
|
33
|
+
readonly classNames: import("../../shared/hooks/use-semantic").CcSemanticClasses;
|
|
34
|
+
readonly styles: import("../../shared/hooks/use-semantic").CcSemanticStyles;
|
|
35
|
+
readonly fit: import("./image-types").ImageFit;
|
|
36
|
+
readonly alt: string;
|
|
37
|
+
readonly preview: boolean;
|
|
38
|
+
readonly fallback: string;
|
|
39
|
+
readonly lazy: boolean;
|
|
40
|
+
readonly rootMargin: string;
|
|
41
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
42
|
+
export default _default;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { App } from 'vue';
|
|
2
|
+
import ImagePreviewGroup from './src/image-preview-group';
|
|
3
|
+
export { ImagePreviewGroup };
|
|
4
|
+
export type { ImagePreviewControl, ImagePreviewGroupProps, ImagePreviewItem } from './src/image-preview-group-types';
|
|
5
|
+
declare const _default: {
|
|
6
|
+
title: string;
|
|
7
|
+
category: string;
|
|
8
|
+
status: string;
|
|
9
|
+
install(app: App): void;
|
|
10
|
+
};
|
|
11
|
+
export default _default;
|
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
import { Teleport as e, Transition as t, computed as n, defineComponent as r, h as i, onBeforeUnmount as a, ref as o, watch as s } from "vue";
|
|
2
|
+
//#region ../ccui/ui/shared/hooks/use-namespace.ts
|
|
3
|
+
function c(e, t, n) {
|
|
4
|
+
let r = e;
|
|
5
|
+
return t && (r += `__${t}`), n && (r += `--${n}`), r;
|
|
6
|
+
}
|
|
7
|
+
function l(e, t = !1) {
|
|
8
|
+
let n = t ? `.ccui-${e}` : `ccui-${e}`;
|
|
9
|
+
return {
|
|
10
|
+
b: () => c(n),
|
|
11
|
+
e: (e) => e ? c(n, e) : "",
|
|
12
|
+
m: (e) => e ? c(n, "", e) : "",
|
|
13
|
+
em: (e, t) => e && t ? c(n, e, t) : "",
|
|
14
|
+
is: (e) => `is-${e}`
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
//#endregion
|
|
18
|
+
//#region ../ccui/ui/image-preview-group/src/image-preview-group-types.ts
|
|
19
|
+
var u = {
|
|
20
|
+
items: {
|
|
21
|
+
type: Array,
|
|
22
|
+
default: void 0
|
|
23
|
+
},
|
|
24
|
+
preview: {
|
|
25
|
+
type: Object,
|
|
26
|
+
default: void 0
|
|
27
|
+
},
|
|
28
|
+
maxZoom: {
|
|
29
|
+
type: Number,
|
|
30
|
+
default: 6
|
|
31
|
+
},
|
|
32
|
+
minZoom: {
|
|
33
|
+
type: Number,
|
|
34
|
+
default: .25
|
|
35
|
+
}
|
|
36
|
+
};
|
|
37
|
+
//#endregion
|
|
38
|
+
//#region ../ccui/ui/image-preview-group/src/image-preview-group.tsx
|
|
39
|
+
function d(e) {
|
|
40
|
+
return e ? e.map((e) => typeof e == "string" ? { src: e } : {
|
|
41
|
+
src: e.src,
|
|
42
|
+
alt: e.alt
|
|
43
|
+
}) : [];
|
|
44
|
+
}
|
|
45
|
+
var f = /* @__PURE__ */ r({
|
|
46
|
+
name: "CImagePreviewGroup",
|
|
47
|
+
props: u,
|
|
48
|
+
emits: [
|
|
49
|
+
"update:preview",
|
|
50
|
+
"change",
|
|
51
|
+
"visible-change"
|
|
52
|
+
],
|
|
53
|
+
setup(r, { emit: c, slots: u }) {
|
|
54
|
+
let f = l("image-preview-group"), p = n(() => d(r.items)), m = n(() => r.preview !== void 0), h = o(!1), g = o(0), _ = o(1), v = n(() => m.value ? !!r.preview?.visible : h.value), y = n(() => m.value ? r.preview?.current ?? 0 : g.value), b = (e) => {
|
|
55
|
+
m.value || (h.value = e), c("visible-change", e), c("update:preview", {
|
|
56
|
+
...r.preview,
|
|
57
|
+
visible: e,
|
|
58
|
+
current: y.value
|
|
59
|
+
});
|
|
60
|
+
}, x = (e) => {
|
|
61
|
+
let t = p.value.length;
|
|
62
|
+
if (t === 0) return;
|
|
63
|
+
let n = (e % t + t) % t;
|
|
64
|
+
m.value || (g.value = n), c("change", n), c("update:preview", {
|
|
65
|
+
...r.preview,
|
|
66
|
+
visible: v.value,
|
|
67
|
+
current: n
|
|
68
|
+
});
|
|
69
|
+
}, S = (e) => {
|
|
70
|
+
x(e), _.value = 1, b(!0);
|
|
71
|
+
}, C = () => {
|
|
72
|
+
b(!1);
|
|
73
|
+
}, w = () => {
|
|
74
|
+
x(y.value + 1), _.value = 1;
|
|
75
|
+
}, T = () => {
|
|
76
|
+
x(y.value - 1), _.value = 1;
|
|
77
|
+
}, E = () => {
|
|
78
|
+
_.value = Math.min(_.value * 1.25, r.maxZoom);
|
|
79
|
+
}, D = () => {
|
|
80
|
+
_.value = Math.max(_.value / 1.25, r.minZoom);
|
|
81
|
+
}, O = () => {
|
|
82
|
+
_.value = 1;
|
|
83
|
+
}, k = (e) => {
|
|
84
|
+
v.value && (e.key === "Escape" ? C() : e.key === "ArrowLeft" ? T() : e.key === "ArrowRight" && w());
|
|
85
|
+
};
|
|
86
|
+
s(v, (e) => {
|
|
87
|
+
typeof window > "u" || (e ? window.addEventListener("keydown", k) : window.removeEventListener("keydown", k));
|
|
88
|
+
}), a(() => {
|
|
89
|
+
typeof window < "u" && window.removeEventListener("keydown", k);
|
|
90
|
+
});
|
|
91
|
+
let A = n(() => p.value[y.value]), j = (e, t) => i("img", {
|
|
92
|
+
key: t,
|
|
93
|
+
class: f.e("thumb"),
|
|
94
|
+
src: e.src,
|
|
95
|
+
alt: e.alt ?? "",
|
|
96
|
+
onClick: () => S(t)
|
|
97
|
+
}), M = () => i(e, { to: "body" }, [i(t, { name: `${f.b()}-fade` }, { default: () => v.value && A.value ? i("div", {
|
|
98
|
+
class: f.e("mask"),
|
|
99
|
+
onClick: C
|
|
100
|
+
}, [i("div", {
|
|
101
|
+
class: f.e("toolbar"),
|
|
102
|
+
onClick: (e) => e.stopPropagation()
|
|
103
|
+
}, [
|
|
104
|
+
i("button", {
|
|
105
|
+
onClick: T,
|
|
106
|
+
"aria-label": "prev",
|
|
107
|
+
class: f.e("btn")
|
|
108
|
+
}, "‹"),
|
|
109
|
+
i("button", {
|
|
110
|
+
onClick: D,
|
|
111
|
+
"aria-label": "zoom out",
|
|
112
|
+
class: f.e("btn")
|
|
113
|
+
}, "−"),
|
|
114
|
+
i("button", {
|
|
115
|
+
onClick: O,
|
|
116
|
+
"aria-label": "reset",
|
|
117
|
+
class: f.e("btn")
|
|
118
|
+
}, "⟳"),
|
|
119
|
+
i("button", {
|
|
120
|
+
onClick: E,
|
|
121
|
+
"aria-label": "zoom in",
|
|
122
|
+
class: f.e("btn")
|
|
123
|
+
}, "+"),
|
|
124
|
+
i("button", {
|
|
125
|
+
onClick: w,
|
|
126
|
+
"aria-label": "next",
|
|
127
|
+
class: f.e("btn")
|
|
128
|
+
}, "›"),
|
|
129
|
+
i("button", {
|
|
130
|
+
onClick: C,
|
|
131
|
+
"aria-label": "close",
|
|
132
|
+
class: f.e("btn")
|
|
133
|
+
}, "×"),
|
|
134
|
+
p.value.length > 1 ? i("span", { class: f.e("counter") }, `${y.value + 1} / ${p.value.length}`) : null
|
|
135
|
+
]), i("img", {
|
|
136
|
+
class: f.e("img"),
|
|
137
|
+
src: A.value.src,
|
|
138
|
+
alt: A.value.alt ?? "",
|
|
139
|
+
style: { transform: `scale(${_.value})` },
|
|
140
|
+
onClick: (e) => e.stopPropagation()
|
|
141
|
+
})]) : null })]);
|
|
142
|
+
return () => {
|
|
143
|
+
let e = r.items ? p.value.map((e, t) => j(e, t)) : u.default?.();
|
|
144
|
+
return i("div", { class: f.b() }, [e, M()]);
|
|
145
|
+
};
|
|
146
|
+
}
|
|
147
|
+
});
|
|
148
|
+
//#endregion
|
|
149
|
+
//#region ../ccui/ui/image-preview-group/index.ts
|
|
150
|
+
f.install = function(e) {
|
|
151
|
+
e.component(f.name, f);
|
|
152
|
+
};
|
|
153
|
+
var p = {
|
|
154
|
+
title: "ImagePreviewGroup 图片预览组",
|
|
155
|
+
category: "数据展示",
|
|
156
|
+
status: "80%",
|
|
157
|
+
install(e) {
|
|
158
|
+
e.component(f.name, f);
|
|
159
|
+
}
|
|
160
|
+
};
|
|
161
|
+
//#endregion
|
|
162
|
+
export { f as ImagePreviewGroup, p as default };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(function(e,t){typeof exports==`object`&&typeof module<`u`?t(exports,require(`vue`)):typeof define==`function`&&define.amd?define([`exports`,`vue`],t):(e=typeof globalThis<`u`?globalThis:e||self,t(e.index={},e.Vue))})(this,function(e,t){Object.defineProperties(e,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}});function n(e,t,n){let r=e;return t&&(r+=`__${t}`),n&&(r+=`--${n}`),r}function r(e,t=!1){let r=t?`.ccui-${e}`:`ccui-${e}`;return{b:()=>n(r),e:e=>e?n(r,e):``,m:e=>e?n(r,``,e):``,em:(e,t)=>e&&t?n(r,e,t):``,is:e=>`is-${e}`}}var i={items:{type:Array,default:void 0},preview:{type:Object,default:void 0},maxZoom:{type:Number,default:6},minZoom:{type:Number,default:.25}};function a(e){return e?e.map(e=>typeof e==`string`?{src:e}:{src:e.src,alt:e.alt}):[]}var o=(0,t.defineComponent)({name:`CImagePreviewGroup`,props:i,emits:[`update:preview`,`change`,`visible-change`],setup(e,{emit:n,slots:i}){let o=r(`image-preview-group`),s=(0,t.computed)(()=>a(e.items)),c=(0,t.computed)(()=>e.preview!==void 0),l=(0,t.ref)(!1),u=(0,t.ref)(0),d=(0,t.ref)(1),f=(0,t.computed)(()=>c.value?!!e.preview?.visible:l.value),p=(0,t.computed)(()=>c.value?e.preview?.current??0:u.value),m=t=>{c.value||(l.value=t),n(`visible-change`,t),n(`update:preview`,{...e.preview,visible:t,current:p.value})},h=t=>{let r=s.value.length;if(r===0)return;let i=(t%r+r)%r;c.value||(u.value=i),n(`change`,i),n(`update:preview`,{...e.preview,visible:f.value,current:i})},g=e=>{h(e),d.value=1,m(!0)},_=()=>{m(!1)},v=()=>{h(p.value+1),d.value=1},y=()=>{h(p.value-1),d.value=1},b=()=>{d.value=Math.min(d.value*1.25,e.maxZoom)},x=()=>{d.value=Math.max(d.value/1.25,e.minZoom)},S=()=>{d.value=1},C=e=>{f.value&&(e.key===`Escape`?_():e.key===`ArrowLeft`?y():e.key===`ArrowRight`&&v())};(0,t.watch)(f,e=>{typeof window>`u`||(e?window.addEventListener(`keydown`,C):window.removeEventListener(`keydown`,C))}),(0,t.onBeforeUnmount)(()=>{typeof window<`u`&&window.removeEventListener(`keydown`,C)});let w=(0,t.computed)(()=>s.value[p.value]),T=(e,n)=>(0,t.h)(`img`,{key:n,class:o.e(`thumb`),src:e.src,alt:e.alt??``,onClick:()=>g(n)}),E=()=>(0,t.h)(t.Teleport,{to:`body`},[(0,t.h)(t.Transition,{name:`${o.b()}-fade`},{default:()=>f.value&&w.value?(0,t.h)(`div`,{class:o.e(`mask`),onClick:_},[(0,t.h)(`div`,{class:o.e(`toolbar`),onClick:e=>e.stopPropagation()},[(0,t.h)(`button`,{onClick:y,"aria-label":`prev`,class:o.e(`btn`)},`‹`),(0,t.h)(`button`,{onClick:x,"aria-label":`zoom out`,class:o.e(`btn`)},`−`),(0,t.h)(`button`,{onClick:S,"aria-label":`reset`,class:o.e(`btn`)},`⟳`),(0,t.h)(`button`,{onClick:b,"aria-label":`zoom in`,class:o.e(`btn`)},`+`),(0,t.h)(`button`,{onClick:v,"aria-label":`next`,class:o.e(`btn`)},`›`),(0,t.h)(`button`,{onClick:_,"aria-label":`close`,class:o.e(`btn`)},`×`),s.value.length>1?(0,t.h)(`span`,{class:o.e(`counter`)},`${p.value+1} / ${s.value.length}`):null]),(0,t.h)(`img`,{class:o.e(`img`),src:w.value.src,alt:w.value.alt??``,style:{transform:`scale(${d.value})`},onClick:e=>e.stopPropagation()})]):null})]);return()=>{let n=e.items?s.value.map((e,t)=>T(e,t)):i.default?.();return(0,t.h)(`div`,{class:o.b()},[n,E()])}}});o.install=function(e){e.component(o.name,o)},e.ImagePreviewGroup=o,e.default={title:`ImagePreviewGroup 图片预览组`,category:`数据展示`,status:`80%`,install(e){e.component(o.name,o)}}});
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import type { ExtractPropTypes, PropType } from 'vue';
|
|
2
|
+
export interface ImagePreviewItem {
|
|
3
|
+
src: string;
|
|
4
|
+
alt?: string;
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* `preview` 复合配置(受控模式):
|
|
8
|
+
*
|
|
9
|
+
* - 不传:完全非受控,组件内部自己管 visible / current
|
|
10
|
+
* - 传对象:受控模式,由父组件决定 visible / current;组件通过 `update:preview` 与 `change` 通知
|
|
11
|
+
*/
|
|
12
|
+
export interface ImagePreviewControl {
|
|
13
|
+
visible?: boolean;
|
|
14
|
+
current?: number;
|
|
15
|
+
}
|
|
16
|
+
export declare const imagePreviewGroupProps: {
|
|
17
|
+
/**
|
|
18
|
+
* 图片数组。
|
|
19
|
+
*
|
|
20
|
+
* - 传 `string[]`:每项作为 src,alt 为空。
|
|
21
|
+
* - 传 `ImagePreviewItem[]`:每项 `{ src, alt? }`。
|
|
22
|
+
*
|
|
23
|
+
* 不传时则只渲染默认 slot,预览由父组件通过 `preview.visible / preview.current` 受控。
|
|
24
|
+
*/
|
|
25
|
+
readonly items: {
|
|
26
|
+
readonly type: PropType<string[] | ImagePreviewItem[]>;
|
|
27
|
+
readonly default: undefined;
|
|
28
|
+
};
|
|
29
|
+
/**
|
|
30
|
+
* 受控预览状态。详见 `ImagePreviewControl`。
|
|
31
|
+
*/
|
|
32
|
+
readonly preview: {
|
|
33
|
+
readonly type: PropType<ImagePreviewControl>;
|
|
34
|
+
readonly default: undefined;
|
|
35
|
+
};
|
|
36
|
+
/**
|
|
37
|
+
* 缩放上限。
|
|
38
|
+
*/
|
|
39
|
+
readonly maxZoom: {
|
|
40
|
+
readonly type: NumberConstructor;
|
|
41
|
+
readonly default: 6;
|
|
42
|
+
};
|
|
43
|
+
/**
|
|
44
|
+
* 缩放下限。
|
|
45
|
+
*/
|
|
46
|
+
readonly minZoom: {
|
|
47
|
+
readonly type: NumberConstructor;
|
|
48
|
+
readonly default: 0.25;
|
|
49
|
+
};
|
|
50
|
+
};
|
|
51
|
+
export type ImagePreviewGroupProps = ExtractPropTypes<typeof imagePreviewGroupProps>;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type { ImagePreviewItem } from './image-preview-group-types';
|
|
2
|
+
|
|
3
|
+
declare const _default: import("vue").DefineComponent<{
|
|
4
|
+
readonly maxZoom: number;
|
|
5
|
+
readonly minZoom: number;
|
|
6
|
+
readonly items?: string[] | ImagePreviewItem[] | undefined;
|
|
7
|
+
readonly preview?: import("./image-preview-group-types").ImagePreviewControl | undefined;
|
|
8
|
+
}, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
|
|
9
|
+
[key: string]: any;
|
|
10
|
+
}>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("change" | "visible-change" | "update:preview")[], "change" | "visible-change" | "update:preview", import("vue").PublicProps, Readonly<{
|
|
11
|
+
readonly maxZoom: number;
|
|
12
|
+
readonly minZoom: number;
|
|
13
|
+
readonly items?: string[] | ImagePreviewItem[] | undefined;
|
|
14
|
+
readonly preview?: import("./image-preview-group-types").ImagePreviewControl | undefined;
|
|
15
|
+
}> & Readonly<{
|
|
16
|
+
onChange?: ((...args: any[]) => any) | undefined;
|
|
17
|
+
"onVisible-change"?: ((...args: any[]) => any) | undefined;
|
|
18
|
+
"onUpdate:preview"?: ((...args: any[]) => any) | undefined;
|
|
19
|
+
}>, {
|
|
20
|
+
readonly items: string[] | ImagePreviewItem[];
|
|
21
|
+
readonly preview: import("./image-preview-group-types").ImagePreviewControl;
|
|
22
|
+
readonly maxZoom: number;
|
|
23
|
+
readonly minZoom: number;
|
|
24
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
25
|
+
export default _default;
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
:root{--ccui-global-bg:#f5f5f5;--ccui-global-bg-normal:#fff;--ccui-base-bg:#fff;--ccui-base-bg-dark:#000000d9;--ccui-brand:#1677ff;--ccui-brand-foil:#e6f4ff;--ccui-brand-hover:#4096ff;--ccui-brand-active:#0958d9;--ccui-brand-active-focus:#003eb3;--ccui-contrast:#ff4d4f;--ccui-text:#000000e0;--ccui-text-weak:#000000a6;--ccui-aide-text:#00000073;--ccui-aide-text-stress:#000000a6;--ccui-placeholder:#00000040;--ccui-light-text:#fff;--ccui-dark-text:#000000e0;--ccui-link:#1677ff;--ccui-link-active:#0958d9;--ccui-link-light:#4096ff;--ccui-link-light-active:#69b1ff;--ccui-line:#d9d9d9;--ccui-dividing-line:#f0f0f0;--ccui-block:#fff;--ccui-area:#fafafa;--ccui-danger:#ff4d4f;--ccui-warning:#faad14;--ccui-waiting:#00000073;--ccui-success:#52c41a;--ccui-info:#1677ff;--ccui-initial:#e6f4ff;--ccui-unavailable:#f5f5f5;--ccui-shadow:#00000026;--ccui-light-shadow:#0000000f;--ccui-icon-text:#000000e0;--ccui-icon-bg:#fff;--ccui-icon-fill:#00000073;--ccui-icon-fill-hover:#000000a6;--ccui-icon-fill-active:#1677ff;--ccui-icon-fill-active-hover:#4096ff;--ccui-form-control-line:#d9d9d9;--ccui-form-control-line-hover:#4096ff;--ccui-form-control-line-active:#1677ff;--ccui-form-control-line-active-hover:#0958d9;--ccui-list-item-active-bg:#1677ff;--ccui-list-item-active-text:#fff;--ccui-list-item-active-hover-bg:#4096ff;--ccui-list-item-hover-bg:#0000000a;--ccui-list-item-hover-text:#1677ff;--ccui-list-item-selected-bg:#e6f4ff;--ccui-list-item-strip-bg:#fafafa;--ccui-disabled-bg:#0000000a;--ccui-disabled-line:#d9d9d9;--ccui-disabled-text:#00000040;--ccui-primary-disabled:#91caff;--ccui-icon-fill-active-disabled:#91caff;--ccui-label-bg:#fafafa;--ccui-connected-overlay-bg:#fff;--ccui-connected-overlay-line:#1677ff;--ccui-fullscreen-overlay-bg:#fff;--ccui-feedback-overlay-bg:#000000d9;--ccui-feedback-overlay-text:#fff;--ccui-embed-search-bg:#fafafa;--ccui-embed-search-bg-hover:#f0f0f0;--ccui-float-block-shadow:#1677ff29;--ccui-highlight-overlay:#fffc;--ccui-range-item-hover-bg:#e6f4ff;--ccui-primary:#1677ff;--ccui-primary-hover:#4096ff;--ccui-primary-active:#0958d9;--ccui-contrast-hover:#ff7875;--ccui-contrast-active:#d9363e;--ccui-secondary:#000000a6;--ccui-danger-line:#ffccc7;--ccui-danger-bg:#fff2f0;--ccui-warning-line:#ffe58f;--ccui-warning-bg:#fffbe6;--ccui-info-line:#91caff;--ccui-info-bg:#e6f4ff;--ccui-success-line:#b7eb8f;--ccui-success-bg:#f6ffed;--ccui-primary-line:#91caff;--ccui-primary-bg:#e6f4ff;--ccui-default-line:#d9d9d9;--ccui-default-bg:#fff;--ccui-font-size:14px;--ccui-font-size-card-title:16px;--ccui-font-size-page-title:20px;--ccui-font-size-modal-title:16px;--ccui-font-size-price:24px;--ccui-font-size-data-overview:30px;--ccui-font-size-icon:16px;--ccui-font-size-sm:12px;--ccui-font-size-md:14px;--ccui-font-size-lg:16px;--ccui-font-title-weight:600;--ccui-font-content-weight:400;--ccui-line-height-base:1.57143;--ccui-border-radius:6px;--ccui-border-radius-feedback:8px;--ccui-border-radius-card:8px;--ccui-shadow-length-base:0 1px 2px 0;--ccui-shadow-length-slide-left:-6px 0 16px 0;--ccui-shadow-length-slide-right:6px 0 16px 0;--ccui-shadow-length-connected-overlay:0 6px 16px 0;--ccui-shadow-length-hover:0 6px 16px 0;--ccui-shadow-length-feedback-overlay:0 6px 16px 0;--ccui-shadow-fullscreen-overlay:0 6px 16px 0;--ccui-animation-duration-slow:.3s;--ccui-animation-duration-base:.2s;--ccui-animation-duration-fast:.1s;--ccui-animation-ease-in:cubic-bezier(.7, 0, .84, 0);--ccui-animation-ease-out:cubic-bezier(.215, .61, .355, 1);--ccui-animation-ease-in-out:cubic-bezier(.78, .14, .15, .86);--ccui-animation-ease-in-smooth:cubic-bezier(.645, .045, .355, 1);--ccui-animation-linear:cubic-bezier(0, 0, 1, 1);--ccui-z-index-full-page-overlay:1080;--ccui-z-index-pop-up:1060;--ccui-z-index-dropdown:1052;--ccui-z-index-modal:1050;--ccui-z-index-drawer:1040;--ccui-z-index-framework:1000;--ccui-size-sm:24px;--ccui-size-md:32px;--ccui-size-lg:40px;--ccui-color-primary:#1677ff;--ccui-color-primary-hover:#4096ff;--ccui-color-primary-active:#0958d9;--ccui-color-primary-bg:#e6f4ff;--ccui-color-primary-bg-hover:#bae0ff;--ccui-color-primary-border:#91caff;--ccui-color-primary-border-hover:#69b1ff;--ccui-color-success:#52c41a;--ccui-color-success-hover:#73d13d;--ccui-color-success-active:#389e0d;--ccui-color-success-bg:#f6ffed;--ccui-color-success-border:#b7eb8f;--ccui-color-warning:#faad14;--ccui-color-warning-hover:#ffc53d;--ccui-color-warning-active:#d48806;--ccui-color-warning-bg:#fffbe6;--ccui-color-warning-border:#ffe58f;--ccui-color-error:#ff4d4f;--ccui-color-error-hover:#ff7875;--ccui-color-error-active:#d9363e;--ccui-color-error-bg:#fff2f0;--ccui-color-error-border:#ffccc7;--ccui-color-info:#1677ff;--ccui-color-info-hover:#4096ff;--ccui-color-info-bg:#e6f4ff;--ccui-color-info-border:#91caff;--ccui-color-text:#000000e0;--ccui-color-text-secondary:#000000a6;--ccui-color-text-tertiary:#00000073;--ccui-color-text-quaternary:#00000040;--ccui-color-text-disabled:#00000040;--ccui-color-text-placeholder:#00000040;--ccui-color-text-heading:#000000e0;--ccui-color-text-light-solid:#fff;--ccui-color-bg-base:#fff;--ccui-color-bg-container:#fff;--ccui-color-bg-elevated:#fff;--ccui-color-bg-layout:#f5f5f5;--ccui-color-bg-spotlight:#000000d9;--ccui-color-bg-mask:#00000073;--ccui-color-bg-text-hover:#0000000f;--ccui-color-bg-text-active:#00000026;--ccui-color-border:#d9d9d9;--ccui-color-border-secondary:#f0f0f0;--ccui-color-border-disabled:#0000000a;--ccui-color-split:#0505050f;--ccui-color-fill:#00000026;--ccui-color-fill-secondary:#0000000f;--ccui-color-fill-tertiary:#0000000a;--ccui-color-fill-quaternary:#00000005;--ccui-control-outline:#0591ff1a;--ccui-control-outline-error:#ff26050f;--ccui-control-outline-warning:#ffd7051a;--ccui-red-1:#fff1f0;--ccui-red-2:#ffccc7;--ccui-red-3:#ffa39e;--ccui-red-4:#ff7875;--ccui-red-5:#ff4d4f;--ccui-red-6:#f5222d;--ccui-red-7:#cf1322;--ccui-red-8:#a8071a;--ccui-red-9:#820014;--ccui-red-10:#5c0011;--ccui-volcano-1:#fff2e8;--ccui-volcano-2:#ffd8bf;--ccui-volcano-3:#ffbb96;--ccui-volcano-4:#ff9c6e;--ccui-volcano-5:#ff7a45;--ccui-volcano-6:#fa541c;--ccui-volcano-7:#d4380d;--ccui-volcano-8:#ad2102;--ccui-volcano-9:#871400;--ccui-volcano-10:#610b00;--ccui-orange-1:#fff7e6;--ccui-orange-2:#ffe7ba;--ccui-orange-3:#ffd591;--ccui-orange-4:#ffc069;--ccui-orange-5:#ffa940;--ccui-orange-6:#fa8c16;--ccui-orange-7:#d46b08;--ccui-orange-8:#ad4e00;--ccui-orange-9:#873800;--ccui-orange-10:#612500;--ccui-gold-1:#fffbe6;--ccui-gold-2:#fff1b8;--ccui-gold-3:#ffe58f;--ccui-gold-4:#ffd666;--ccui-gold-5:#ffc53d;--ccui-gold-6:#faad14;--ccui-gold-7:#d48806;--ccui-gold-8:#ad6800;--ccui-gold-9:#874d00;--ccui-gold-10:#613400;--ccui-yellow-1:#feffe6;--ccui-yellow-2:#ffffb8;--ccui-yellow-3:#fffb8f;--ccui-yellow-4:#fff566;--ccui-yellow-5:#ffec3d;--ccui-yellow-6:#fadb14;--ccui-yellow-7:#d4b106;--ccui-yellow-8:#ad8b00;--ccui-yellow-9:#876800;--ccui-yellow-10:#614700;--ccui-lime-1:#fcffe6;--ccui-lime-2:#f4ffb8;--ccui-lime-3:#eaff8f;--ccui-lime-4:#d3f261;--ccui-lime-5:#bae637;--ccui-lime-6:#a0d911;--ccui-lime-7:#7cb305;--ccui-lime-8:#5b8c00;--ccui-lime-9:#3f6600;--ccui-lime-10:#254000;--ccui-green-1:#f6ffed;--ccui-green-2:#d9f7be;--ccui-green-3:#b7eb8f;--ccui-green-4:#95de64;--ccui-green-5:#73d13d;--ccui-green-6:#52c41a;--ccui-green-7:#389e0d;--ccui-green-8:#237804;--ccui-green-9:#135200;--ccui-green-10:#092b00;--ccui-cyan-1:#e6fffb;--ccui-cyan-2:#b5f5ec;--ccui-cyan-3:#87e8de;--ccui-cyan-4:#5cdbd3;--ccui-cyan-5:#36cfc9;--ccui-cyan-6:#13c2c2;--ccui-cyan-7:#08979c;--ccui-cyan-8:#006d75;--ccui-cyan-9:#00474f;--ccui-cyan-10:#002329;--ccui-blue-1:#e6f4ff;--ccui-blue-2:#bae0ff;--ccui-blue-3:#91caff;--ccui-blue-4:#69b1ff;--ccui-blue-5:#4096ff;--ccui-blue-6:#1677ff;--ccui-blue-7:#0958d9;--ccui-blue-8:#003eb3;--ccui-blue-9:#002c8c;--ccui-blue-10:#001d66;--ccui-geekblue-1:#f0f5ff;--ccui-geekblue-2:#d6e4ff;--ccui-geekblue-3:#adc6ff;--ccui-geekblue-4:#85a5ff;--ccui-geekblue-5:#597ef7;--ccui-geekblue-6:#2f54eb;--ccui-geekblue-7:#1d39c4;--ccui-geekblue-8:#10239e;--ccui-geekblue-9:#061178;--ccui-geekblue-10:#030852;--ccui-purple-1:#f9f0ff;--ccui-purple-2:#efdbff;--ccui-purple-3:#d3adf7;--ccui-purple-4:#b37feb;--ccui-purple-5:#9254de;--ccui-purple-6:#722ed1;--ccui-purple-7:#531dab;--ccui-purple-8:#391085;--ccui-purple-9:#22075e;--ccui-purple-10:#120338;--ccui-magenta-1:#fff0f6;--ccui-magenta-2:#ffd6e7;--ccui-magenta-3:#ffadd2;--ccui-magenta-4:#ff85c0;--ccui-magenta-5:#f759ab;--ccui-magenta-6:#eb2f96;--ccui-magenta-7:#c41d7f;--ccui-magenta-8:#9e1068;--ccui-magenta-9:#780650;--ccui-magenta-10:#520339;--ccui-pink-1:#fff0f6;--ccui-pink-6:#eb2f96;--ccui-border-radius-lg:8px;--ccui-border-radius-sm:4px;--ccui-border-radius-xs:2px;--ccui-border-radius-outer:4px;--ccui-font-size-xl:20px;--ccui-font-size-heading-1:38px;--ccui-font-size-heading-2:30px;--ccui-font-size-heading-3:24px;--ccui-font-size-heading-4:20px;--ccui-font-size-heading-5:16px;--ccui-line-height-lg:1.5;--ccui-line-height-sm:1.66;--ccui-line-height-heading-1:1.21052;--ccui-line-height-heading-2:1.26666;--ccui-line-height-heading-3:1.33333;--ccui-line-height-heading-4:1.4;--ccui-line-height-heading-5:1.5;--ccui-font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--ccui-font-family-code:SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace;--ccui-control-height:32px;--ccui-control-height-sm:24px;--ccui-control-height-lg:40px;--ccui-control-height-xs:16px;--ccui-box-shadow:0 6px 16px 0 #00000014, 0 3px 6px -4px #0000001f, 0 9px 28px 8px #0000000d;--ccui-box-shadow-secondary:0 6px 16px 0 #00000014, 0 3px 6px -4px #0000001f, 0 9px 28px 8px #0000000d;--ccui-box-shadow-tertiary:0 1px 2px 0 #00000008, 0 1px 6px -1px #00000005, 0 2px 4px 0 #00000005;--ccui-motion-duration-slow:.3s;--ccui-motion-duration-mid:.2s;--ccui-motion-duration-fast:.1s;--ccui-motion-ease-in-out:cubic-bezier(.645, .045, .355, 1);--ccui-motion-ease-out:cubic-bezier(.215, .61, .355, 1);--ccui-motion-ease-in:cubic-bezier(.55, .055, .675, .19);--ccui-motion-ease-out-back:cubic-bezier(.12, .4, .29, 1.46);--ccui-motion-ease-in-back:cubic-bezier(.71, -.46, .88, .6);--ccui-motion-ease-out-circ:cubic-bezier(.08, .82, .17, 1);--ccui-motion-ease-in-out-circ:cubic-bezier(.78, .14, .15, .86);--ccui-padding-xxs:4px;--ccui-padding-xs:8px;--ccui-padding-sm:12px;--ccui-padding:16px;--ccui-padding-md:20px;--ccui-padding-lg:24px;--ccui-padding-xl:32px;--ccui-margin-xxs:4px;--ccui-margin-xs:8px;--ccui-margin-sm:12px;--ccui-margin:16px;--ccui-margin-md:20px;--ccui-margin-lg:24px;--ccui-margin-xl:32px}.ccui-image-preview-group{flex-wrap:wrap;gap:8px;display:inline-flex}.ccui-image-preview-group__thumb{object-fit:cover;border-radius:var(--ccui-border-radius-sm,4px);cursor:zoom-in;width:80px;height:80px;transition:opacity var(--ccui-motion-duration-mid,.2s)}.ccui-image-preview-group__thumb:hover{opacity:.85}.ccui-image-preview-group__mask{z-index:1100;background-color:#00000073;justify-content:center;align-items:center;display:flex;position:fixed;inset:0;overflow:hidden}.ccui-image-preview-group__img{object-fit:contain;cursor:zoom-out;max-width:90vw;max-height:90vh;transition:transform var(--ccui-motion-duration-mid,.2s);box-shadow:0 10px 30px #00000073}.ccui-image-preview-group__toolbar{border-radius:var(--ccui-border-radius,6px);color:#fff;z-index:1;background-color:#0009;align-items:center;gap:4px;padding:6px 12px;font-size:18px;display:inline-flex;position:absolute;top:24px;left:50%;transform:translate(-50%)}.ccui-image-preview-group__btn{width:32px;height:32px;color:inherit;cursor:pointer;font-size:inherit;transition:background-color var(--ccui-motion-duration-mid,.2s);background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;line-height:1;display:inline-flex}.ccui-image-preview-group__btn:hover{background-color:#ffffff26}.ccui-image-preview-group__counter{font-size:var(--ccui-font-size-sm,12px);color:#ffffffd9;-webkit-user-select:none;user-select:none;margin-inline-start:8px}.ccui-image-preview-group-fade-enter-active,.ccui-image-preview-group-fade-leave-active{transition:opacity var(--ccui-motion-duration-mid,.2s) ease}.ccui-image-preview-group-fade-enter-from,.ccui-image-preview-group-fade-leave-to{opacity:0}
|
|
2
|
+
/*$vite$:1*/
|
package/index.d.ts
CHANGED
|
@@ -1,7 +1,93 @@
|
|
|
1
|
-
import { App } from 'vue';
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
1
|
+
import type { App } from 'vue';
|
|
2
|
+
|
|
3
|
+
import { Affix } from './affix';
|
|
4
|
+
import { Alert } from './alert';
|
|
5
|
+
import { Anchor } from './anchor';
|
|
6
|
+
import { AutoComplete } from './auto-complete';
|
|
7
|
+
import { Avatar } from './avatar';
|
|
8
|
+
import { AvatarGroup, avatarGroupInjectionKey, resolveAvatarSize } from './avatar-group';
|
|
9
|
+
import { Badge } from './badge';
|
|
10
|
+
import { BadgeRibbon, isRibbonPresetColor } from './badge-ribbon';
|
|
11
|
+
import { Breadcrumb, BreadcrumbItem } from './breadcrumb';
|
|
12
|
+
import { Button, ButtonGroup } from './button';
|
|
13
|
+
import { Button3d } from './button-3d';
|
|
14
|
+
import { Calendar } from './calendar';
|
|
15
|
+
import { Card } from './card';
|
|
16
|
+
import { CardMeta } from './card-meta';
|
|
17
|
+
import { Carousel } from './carousel';
|
|
18
|
+
import { Cascader, CASCADER_SHOW_CHILD, CASCADER_SHOW_PARENT } from './cascader';
|
|
19
|
+
import { CheckBox } from './check-box';
|
|
20
|
+
import { CheckableTag, CheckableTagGroup, checkableTagGroupInjectionKey } from './checkable-tag';
|
|
21
|
+
import { Collapse, CollapseItem } from './collapse';
|
|
22
|
+
import { ColorPicker } from './color-picker';
|
|
23
|
+
import { ConfigProvider, useConfig } from './config-provider';
|
|
24
|
+
import { DatePicker } from './date-picker';
|
|
25
|
+
import { Descriptions, DescriptionsItem } from './descriptions';
|
|
26
|
+
import { Divider } from './divider';
|
|
27
|
+
import { Drawer } from './drawer';
|
|
28
|
+
import { Dropdown } from './dropdown';
|
|
29
|
+
import { Empty } from './empty';
|
|
30
|
+
import { Flex } from './flex';
|
|
31
|
+
import { BackTop, FloatButton } from './float-button';
|
|
32
|
+
import { Form, FormItem, FormList, FormProvider } from './form';
|
|
33
|
+
import { Col, Row } from './grid';
|
|
34
|
+
import { addAPIProvider, addCollection, addIcon, loadIcon, loadIcons, clearIconRegistry, Icon, registerIcon, resolveIcon, unregisterIcon } from './icon';
|
|
35
|
+
import { Image } from './image';
|
|
36
|
+
import { ImagePreviewGroup } from './image-preview-group';
|
|
37
|
+
import { Input } from './input';
|
|
38
|
+
import { InputNumber } from './input-number';
|
|
39
|
+
import { InputOtp } from './input-otp';
|
|
40
|
+
import { InputSearch } from './input-search';
|
|
41
|
+
import { Content, Footer, Header, Layout, Sider } from './layout';
|
|
42
|
+
import { Masonry } from './masonry';
|
|
43
|
+
import { Mentions } from './mentions';
|
|
44
|
+
import { Menu } from './menu';
|
|
45
|
+
import { message, useMessage, Message } from './message';
|
|
46
|
+
import { Modal, useModal } from './modal';
|
|
47
|
+
import { notification, useNotification, Notification } from './notification';
|
|
48
|
+
import { Pagination } from './pagination';
|
|
49
|
+
import { Popconfirm } from './popconfirm';
|
|
50
|
+
import { Popover } from './popover';
|
|
51
|
+
import { Progress } from './progress';
|
|
52
|
+
import { Radio, RadioGroup } from './radio';
|
|
53
|
+
import { RangePicker } from './range-picker';
|
|
54
|
+
import { Rate } from './rate';
|
|
55
|
+
import { Result } from './result';
|
|
56
|
+
import { Segmented } from './segmented';
|
|
57
|
+
import { Select } from './select';
|
|
58
|
+
import { Skeleton } from './skeleton';
|
|
59
|
+
import { SkeletonNode } from './skeleton-node';
|
|
60
|
+
import { Slider } from './slider';
|
|
61
|
+
import { Space } from './space';
|
|
62
|
+
import { SpaceCompact } from './space-compact';
|
|
63
|
+
import { Spin } from './spin';
|
|
64
|
+
import { Panel, Splitter } from './splitter';
|
|
65
|
+
import { Status } from './status';
|
|
66
|
+
import { Steps } from './steps';
|
|
67
|
+
import { Switch } from './switch';
|
|
68
|
+
import { Table } from './table';
|
|
69
|
+
import { TableColumn } from './table-column';
|
|
70
|
+
import { TableColumnGroup } from './table-column-group';
|
|
71
|
+
import { TableSummary } from './table-summary';
|
|
72
|
+
import { Tab, Tabs } from './tabs';
|
|
73
|
+
import { Tag } from './tag';
|
|
74
|
+
import { Textarea } from './textarea';
|
|
75
|
+
import { TimePicker } from './time-picker';
|
|
76
|
+
import { TimeRangePicker } from './time-range-picker';
|
|
77
|
+
import { Timeline, TimelineItem } from './timeline';
|
|
78
|
+
import { Tooltip } from './tooltip';
|
|
79
|
+
import { Transfer } from './transfer';
|
|
80
|
+
import { Tree } from './tree';
|
|
81
|
+
import { TreeSelect, TREE_SELECT_SHOW_ALL, TREE_SELECT_SHOW_CHILD, TREE_SELECT_SHOW_PARENT } from './tree-select';
|
|
82
|
+
import { Link, Paragraph, Text, Title, Typography } from './typography';
|
|
83
|
+
import { Upload } from './upload';
|
|
84
|
+
import { UploadDragger } from './upload-dragger';
|
|
85
|
+
import { canUseDom, clamp, classNames, contains, debounce, getOffset, inBrowser, isFunction, isNil, isObject, isVisible, noop, throttle } from './util';
|
|
86
|
+
import { Watermark } from './watermark';
|
|
87
|
+
export { zhCN, enUS, jaJP, koKR, defaultLocale } from './locale';
|
|
88
|
+
export { Affix, Alert, Anchor, AutoComplete, Avatar, AvatarGroup, avatarGroupInjectionKey, resolveAvatarSize, Badge, BadgeRibbon, isRibbonPresetColor, Breadcrumb, BreadcrumbItem, Button, ButtonGroup, Button3d, Calendar, Card, CardMeta, Carousel, Cascader, CASCADER_SHOW_CHILD, CASCADER_SHOW_PARENT, CheckBox, CheckableTag, CheckableTagGroup, checkableTagGroupInjectionKey, Collapse, CollapseItem, ColorPicker, ConfigProvider, useConfig, DatePicker, Descriptions, DescriptionsItem, Divider, Drawer, Dropdown, Empty, Flex, BackTop, FloatButton, Form, FormItem, FormList, FormProvider, Col, Row, addAPIProvider, addCollection, addIcon, loadIcon, loadIcons, clearIconRegistry, Icon, registerIcon, resolveIcon, unregisterIcon, Image, ImagePreviewGroup, Input, InputNumber, InputOtp, InputSearch, Content, Footer, Header, Layout, Sider, Masonry, Mentions, Menu, message, useMessage, Message, Modal, useModal, notification, useNotification, Notification, Pagination, Popconfirm, Popover, Progress, Radio, RadioGroup, RangePicker, Rate, Result, Segmented, Select, Skeleton, SkeletonNode, Slider, Space, SpaceCompact, Spin, Panel, Splitter, Status, Steps, Switch, Table, TableColumn, TableColumnGroup, TableSummary, Tab, Tabs, Tag, Textarea, TimePicker, TimeRangePicker, Timeline, TimelineItem, Tooltip, Transfer, Tree, TreeSelect, TREE_SELECT_SHOW_ALL, TREE_SELECT_SHOW_CHILD, TREE_SELECT_SHOW_PARENT, Link, Paragraph, Text, Title, Typography, Upload, UploadDragger, canUseDom, clamp, classNames, contains, debounce, getOffset, inBrowser, isFunction, isNil, isObject, isVisible, noop, throttle, Watermark };
|
|
89
|
+
declare const _default: {
|
|
90
|
+
version: string;
|
|
91
|
+
install(app: App): void;
|
|
92
|
+
};
|
|
93
|
+
export default _default;
|