This commit is contained in:
2022-12-09 16:41:41 +08:00
parent c1cce5a7c2
commit ff7aa8774f
2003 changed files with 156639 additions and 140 deletions

View File

@@ -0,0 +1 @@
.layui-btn-container{font-size:0}.layui-btn-container .layui-btn{margin-right:10px;margin-bottom:10px}.layui-btn-container .layui-btn+.layui-btn{margin-left:0}

View File

@@ -0,0 +1,16 @@
<script lang="ts">
export default {
name: "MoreIcon",
};
</script>
<script setup lang="ts">
import LayIcon from "../component/icon/index";
const props = defineProps<{
color?: string;
size?: string;
}>();
</script>
<template>
<lay-icon :color="props.color" :size="props.size" type="layui-icon-more" />
</template>

View File

@@ -0,0 +1,68 @@
::: anchor
:::
::: title 基本介绍
:::
::: describe 虚拟滚动, 常用于美化浏览器原生滚动条。
:::
::: title 基础使用
:::
::: demo 使用 `lay-scroll` 标签, 创建一个虚拟滚动容器
<template>
<lay-button @click="changeTotal">修改数据</lay-button>
<lay-button @click="changeMaxTotal">修改数据</lay-button>
<lay-scroll height="200px" style="background-color: whitesmoke" thumbColor="#000000">
<lay-container>
<lay-row>
<lay-col span="24">
<lay-panel
v-for="(n, index) in total"
:key="n"
style="margin: 10px; padding: 10px"
>内容</lay-panel
>
</lay-col>
</lay-row>
</lay-container>
</lay-scroll>
</template>
<script lang="ts" setup>
import { ref } from 'vue'
const total = ref(50)
const changeTotal = () => {
total.value = 2
}
const changeMaxTotal = () => {
total.value = 50
}
</script>
:::
::: title Scroll 属性
:::
::: table
| 属性 | 描述 | 可选值 |
| ----------- | -------- | ------ |
| height | 高度 | -- |
| thumbWidth | 滑块宽度 | -- |
| thumbColor | 滑块颜色 | -- |
| trackColor | 滑槽颜色 | -- |
:::
::: contributor scroll
:::
::: previousNext scroll
:::

View File

@@ -0,0 +1,102 @@
import { w as withInstall } from "../badge/index2.js";
import { defineComponent, ref, computed, openBlock, createElementBlock, createElementVNode, normalizeClass, unref, createVNode, createCommentVNode, toDisplayString } from "vue";
import { _ as _sfc_main$2E } from "../checkbox/index2.js";
var index = /* @__PURE__ */ (() => ":root{--textarea-border-radius: var(--global-border-radius);--textarea-border-color: var(--global-neutral-color-3)}.layui-textarea{border-width:1px;border-style:solid;background-color:#fff;color:#000000d9;border-radius:var(--textarea-border-radius);border-color:var(--textarea-border-color);display:block;width:100%;height:auto;line-height:20px;min-height:100px;padding:6px 10px;resize:vertical;position:relative}.layui-textarea-wrapper{position:relative}.layui-textarea:hover,.layui-textarea:focus{border-color:#d2d2d2!important}.layui-textarea-clear{position:absolute;color:#00000073;right:10px;top:10px}.layui-textarea::-webkit-input-placeholder{line-height:1.3}.layui-texterea-count{color:inherit;white-space:nowrap;pointer-events:none;text-align:right;margin-top:4px}.layui-textarea-disabled{cursor:not-allowed!important;opacity:.6}\n")();
const _hoisted_1 = { class: "layui-textarea-wrapper" };
const _hoisted_2 = ["value", "placeholder", "name", "disabled", "maxlength"];
const _hoisted_3 = {
key: 0,
class: "layui-textarea-clear"
};
const _hoisted_4 = {
key: 1,
class: "layui-texterea-count"
};
const __default__ = {
name: "LayTextarea"
};
const _sfc_main = defineComponent({
...__default__,
props: {
name: null,
modelValue: null,
placeholder: null,
disabled: { type: Boolean },
showCount: { type: Boolean },
allowClear: { type: Boolean },
maxlength: null
},
emits: ["blur", "input", "update:modelValue", "change", "focus", "clear"],
setup(__props, { emit }) {
const props = __props;
const composing = ref(false);
const onInput = function(event) {
const inputElement = event.target;
emit("input", inputElement.value);
if (composing.value) {
return;
}
emit("update:modelValue", inputElement.value);
};
const onFocus = function(event) {
emit("focus", event);
};
const onBlur = function(event) {
emit("blur", event);
};
const onChange = (event) => {
const inputElement = event.target;
emit("change", inputElement.value);
};
const onClear = function() {
emit("update:modelValue", "");
emit("clear");
};
const onCompositionstart = () => {
composing.value = true;
};
const onCompositionend = (event) => {
composing.value = false;
onInput(event);
};
const hasContent = computed(() => {
var _a;
return ((_a = props.modelValue) == null ? void 0 : _a.length) > 0;
});
const wordCount = computed(() => {
var _a, _b;
let count = String((_b = (_a = props.modelValue) == null ? void 0 : _a.length) != null ? _b : 0);
if (props.maxlength) {
count += "/" + props.maxlength;
}
return count;
});
return (_ctx, _cache) => {
return openBlock(), createElementBlock("div", _hoisted_1, [
createElementVNode("textarea", {
class: normalizeClass(["layui-textarea", { "layui-textarea-disabled": __props.disabled }]),
value: __props.modelValue,
placeholder: __props.placeholder,
name: __props.name,
disabled: __props.disabled,
maxlength: __props.maxlength,
onCompositionstart,
onCompositionend,
onInput,
onFocus,
onChange,
onBlur
}, null, 42, _hoisted_2),
__props.allowClear && unref(hasContent) ? (openBlock(), createElementBlock("span", _hoisted_3, [
createVNode(unref(_sfc_main$2E), {
type: "layui-icon-close-fill",
onClick: onClear
})
])) : createCommentVNode("", true),
__props.showCount ? (openBlock(), createElementBlock("div", _hoisted_4, toDisplayString(unref(wordCount)), 1)) : createCommentVNode("", true)
]);
};
}
});
const component = withInstall(_sfc_main);
export { component as default };

View File

@@ -0,0 +1 @@
:root{--button-primary-color: var(--global-primary-color);--button-border-radius: var(--global-border-radius)}.layui-btn-group{vertical-align:middle;font-size:0}.layui-btn-group .layui-btn{margin-left:0!important;margin-right:0!important;border-radius:0}.layui-btn-group .layui-btn:not(:last-child){border-right:none!important}.layui-btn-group .layui-btn.layui-btn-primary:not(:first-child),.layui-btn-group .layui-btn.layui-btn-normal:not(:first-child),.layui-btn-group .layui-btn.layui-btn-warm:not(:first-child),.layui-btn-group .layui-btn.layui-btn-danger:not(:first-child){border-left:1px solid rgba(255,255,255,.5)}.layui-btn-group .layui-btn:first-child{border-radius:var(--button-border-radius) 0 0 var(--button-border-radius)}.layui-btn-group .layui-btn:last-child{border-radius:0 var(--button-border-radius) var(--button-border-radius) 0}.layui-btn-group .layui-btn+.layui-btn{margin-left:0}.layui-btn-group+.layui-btn-group{margin-left:10px}

View File

@@ -0,0 +1 @@
export type CascaderSize = "lg" | "md" | "sm" | "xs";