leisure-core 0.7.7 → 0.7.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (96) hide show
  1. package/{PROJECT_GUIDE.md → README.md} +1 -1
  2. package/license.md +201 -0
  3. package/package.json +14 -1
  4. package/index.js +0 -223
  5. package/le-area/index.js +0 -7
  6. package/le-area/src/main.vue +0 -112
  7. package/le-button/index.js +0 -7
  8. package/le-button/src/main.vue +0 -47
  9. package/le-button-attach/index.js +0 -6
  10. package/le-button-attach/src/main.vue +0 -171
  11. package/le-button-msg/index.js +0 -7
  12. package/le-button-msg/src/main.vue +0 -65
  13. package/le-button-qr/index.js +0 -7
  14. package/le-button-qr/src/main.vue +0 -96
  15. package/le-date-picker/index.js +0 -7
  16. package/le-date-picker/src/main.vue +0 -67
  17. package/le-date-picker-auto/index.js +0 -6
  18. package/le-date-picker-auto/src/main.vue +0 -131
  19. package/le-dialog-container/index.js +0 -7
  20. package/le-dialog-container/src/main.vue +0 -80
  21. package/le-form/index.js +0 -7
  22. package/le-form/src/main.vue +0 -13
  23. package/le-form-item/index.js +0 -7
  24. package/le-form-item/src/main.vue +0 -13
  25. package/le-home/index.js +0 -7
  26. package/le-home/src/LeHeaderMenu.vue +0 -60
  27. package/le-home/src/main.vue +0 -1315
  28. package/le-home/src/sub.vue +0 -82
  29. package/le-image/index.js +0 -7
  30. package/le-image/src/main.vue +0 -53
  31. package/le-input/index.js +0 -7
  32. package/le-input/src/main.vue +0 -15
  33. package/le-input-advanced/index.js +0 -7
  34. package/le-input-advanced/src/main.vue +0 -71
  35. package/le-input-number/index.js +0 -7
  36. package/le-input-number/src/main.vue +0 -15
  37. package/le-input-validate/index.js +0 -6
  38. package/le-input-validate/src/main.vue +0 -469
  39. package/le-libs/js/drag.js +0 -78
  40. package/le-libs/js/event.js +0 -3
  41. package/le-libs/js/hrequest.js +0 -76
  42. package/le-libs/js/hrequestFile.js +0 -62
  43. package/le-libs/js/info.js +0 -7
  44. package/le-libs/js/tokens.js +0 -13
  45. package/le-libs/mixins/main.js +0 -48
  46. package/le-list/index.js +0 -7
  47. package/le-list/src/main.vue +0 -645
  48. package/le-list-form/index.js +0 -7
  49. package/le-list-form/src/main.vue +0 -474
  50. package/le-login/index.js +0 -7
  51. package/le-login/src/ForgotPassword.vue +0 -613
  52. package/le-login/src/main.vue +0 -982
  53. package/le-media/index.js +0 -7
  54. package/le-media/src/main.vue +0 -298
  55. package/le-media-list/index.js +0 -7
  56. package/le-media-list/src/main.vue +0 -178
  57. package/le-media-upload/index.js +0 -7
  58. package/le-media-upload/src/main.vue +0 -329
  59. package/le-menu/index.js +0 -7
  60. package/le-menu/src/main.vue +0 -248
  61. package/le-report/index.js +0 -6
  62. package/le-report/src/main.vue +0 -1747
  63. package/le-report/src/rmixins.js +0 -30
  64. package/le-role/index.js +0 -7
  65. package/le-role/src/main.vue +0 -183
  66. package/le-role/src/sub.vue +0 -79
  67. package/le-role-user/index.js +0 -7
  68. package/le-role-user/src/main.vue +0 -160
  69. package/le-role-user/src/sub.vue +0 -90
  70. package/le-select/index.js +0 -7
  71. package/le-select/src/main.vue +0 -49
  72. package/le-select-multi/index.js +0 -6
  73. package/le-select-multi/src/main.vue +0 -816
  74. package/le-select-option/index.js +0 -7
  75. package/le-select-option/src/main.vue +0 -69
  76. package/le-select-search/index.js +0 -7
  77. package/le-select-search/src/main.vue +0 -46
  78. package/le-span/index.js +0 -7
  79. package/le-span/src/main.vue +0 -29
  80. package/le-table-edit/index.js +0 -6
  81. package/le-table-edit/src/main.vue +0 -689
  82. package/le-theme/common/vars.css +0 -131
  83. package/le-theme/iconfont/iconfont.css +0 -125
  84. package/le-theme/iconfont/iconfont.ttf +0 -0
  85. package/le-theme/iconfont/iconfont.woff +0 -0
  86. package/le-theme/iconfont/iconfont.woff2 +0 -0
  87. package/le-theme/index.js +0 -189
  88. package/le-theme/pages/index.css +0 -15
  89. package/le-upload/index.js +0 -7
  90. package/le-upload/src/main.vue +0 -134
  91. package/le-upload-table/index.js +0 -6
  92. package/le-upload-table/src/main.vue +0 -648
  93. package/le-url/index.js +0 -7
  94. package/le-url/src/main.vue +0 -27
  95. package/le-video/index.js +0 -7
  96. package/le-video/src/main.vue +0 -42
@@ -1,82 +0,0 @@
1
- <template>
2
- <div>
3
- <!-- 有子菜单 → 渲染 el-submenu -->
4
- <el-submenu v-if="hasChildren" :index="getIndex" :key="menuItem.id">
5
- <template slot="title">
6
- <i v-if="menuItem.icon" :class="menuItem.icon"></i>
7
- <span>{{ menuItem.title }}</span>
8
- </template>
9
- <!-- 递归渲染子节点 -->
10
- <menu-node
11
- v-for="child in menuItem.children"
12
- :key="child.id"
13
- :menu-item="child"
14
- :parent-index="getIndex"
15
- @menu-click="handleChildClick"
16
- />
17
- </el-submenu>
18
-
19
- <!-- 叶子菜单 → 渲染 el-menu-item -->
20
- <el-menu-item
21
- v-else
22
- :index="getIndex"
23
- @click="emitClick"
24
- :title="shouldShowTooltip ? menuItem.title : ''"
25
- >
26
- <span class="menu-item-text">{{ menuItem.title }}</span>
27
- </el-menu-item>
28
- </div>
29
- </template>
30
-
31
- <script>
32
- export default {
33
- name: "MenuNode",
34
- props: {
35
- // 当前菜单项数据
36
- menuItem: {
37
- type: Object,
38
- required: true,
39
- },
40
- // 父级 index,用于构建唯一层级路径
41
- parentIndex: {
42
- type: String,
43
- default: "",
44
- },
45
- },
46
- computed: {
47
- // 是否有子菜单(且子菜单未被全部过滤掉)
48
- hasChildren() {
49
- return this.menuItem.children && this.menuItem.children.length > 0;
50
- },
51
- // 构建唯一 index,使用 id 拼接,避免同名冲突
52
- getIndex() {
53
- const base = this.parentIndex ? this.parentIndex + "-" : "";
54
- return base + this.menuItem.id;
55
- },
56
- // 是否显示 tooltip(文字超长)
57
- shouldShowTooltip() {
58
- return this.menuItem.title && this.menuItem.title.length > 8;
59
- },
60
- },
61
- methods: {
62
- // 点击叶子菜单
63
- emitClick() {
64
- this.$emit("menu-click", this.menuItem);
65
- },
66
- // 子节点触发点击,向上冒泡
67
- handleChildClick(item) {
68
- this.$emit("menu-click", item);
69
- },
70
- },
71
- };
72
- </script>
73
-
74
- <style scoped>
75
- .menu-item-text {
76
- display: inline-block;
77
- max-width: calc(100% + 25px);
78
- overflow: hidden;
79
- text-overflow: ellipsis;
80
- white-space: nowrap;
81
- }
82
- </style>
package/le-image/index.js DELETED
@@ -1,7 +0,0 @@
1
- import LeImage from "./src/main.vue";
2
-
3
- LeImage.install = function (Vue) {
4
- Vue.component(LeImage.name, LeImage);
5
- };
6
-
7
- export default LeImage;
@@ -1,53 +0,0 @@
1
- <template>
2
- <el-image
3
- v-bind="$attrs"
4
- v-on="$listeners"
5
- :src="secureSrc"
6
- :preview-src-list="securePreviewList"
7
- :class="['customClass', $attrs.class]"
8
- :style="$attrs.style"
9
- ></el-image>
10
- </template>
11
- <script>
12
- export default {
13
- name: "le-image",
14
- props: {
15
- replaceHttp: {
16
- type: Boolean,
17
- default: true, // 标识是否需要替换
18
- },
19
- previewList: {
20
- type: Array,
21
- default: () => [],
22
- },
23
- },
24
- computed: {
25
- secureSrc() {
26
- let src = this.$attrs.src || "";
27
- return this.replaceHttp2Https(src);
28
- },
29
- securePreviewList() {
30
- let list = this.previewList || [];
31
- if (this.replaceHttp && list.length > 0) {
32
- let temps = list.map((item) => {
33
- return this.replaceHttp2Https(item);
34
- });
35
- return temps;
36
- }
37
- return list;
38
- },
39
- },
40
- methods: {
41
- replaceHttp2Https(src) {
42
- if (this.replaceHttp && src.startsWith("http:")) {
43
- src = src.replace(/^http:/, "https:");
44
- let portPattern = /:(\d+)/;
45
- if (src.match(portPattern)) {
46
- src = src.replace(portPattern, "");
47
- }
48
- }
49
- return src;
50
- },
51
- },
52
- };
53
- </script>
package/le-input/index.js DELETED
@@ -1,7 +0,0 @@
1
- import LeInput from "./src/main.vue";
2
-
3
- LeInput.install = function (Vue) {
4
- Vue.component(LeInput.name, LeInput);
5
- };
6
-
7
- export default LeInput;
@@ -1,15 +0,0 @@
1
- <template>
2
- <el-input
3
- v-bind="$attrs"
4
- v-on="$listeners"
5
- :class="['customClass', $attrs.class]"
6
- :style="$attrs.style"
7
- clearable
8
- ></el-input>
9
- </template>
10
- <script>
11
- export default {
12
- name: "le-input",
13
- inheritAttrs: false,
14
- };
15
- </script>
@@ -1,7 +0,0 @@
1
- import LeInputAdvanced from "./src/main.vue";
2
-
3
- LeInputAdvanced.install = function (Vue) {
4
- Vue.component(LeInputAdvanced.name, LeInputAdvanced);
5
- };
6
-
7
- export default LeInputAdvanced;
@@ -1,71 +0,0 @@
1
- <template>
2
- <div class="le-input-money">
3
- <el-input-number v-model="displayValue" v-bind="mergedAttrs" :class="['customClass', $attrs.class]"
4
- :style="$attrs.style" :precision="precision" clearable></el-input-number>
5
- &nbsp;&nbsp;&nbsp;单位:{{ unit }}
6
- </div>
7
- </template>
8
- <script>
9
- export default {
10
- name: "le-input-advanced",
11
- inheritAttrs: false,
12
- props: {
13
- value: {
14
- type: Number,
15
- default: 0
16
- },
17
- converted: {//是否进行转换
18
- type: Boolean,
19
- default: false
20
- },
21
- scale: {//转换比例
22
- type: Number,
23
- default: 100
24
- },
25
- precision: {//小数位数
26
- type: Number,
27
- default: 2
28
- },
29
- unit: {//单位
30
- type: String,
31
- default: '元'
32
- },
33
- },
34
- computed: {
35
- displayValue: {
36
- get() {
37
- if (this.converted) {
38
- return this.value / this.scale;
39
- }
40
- return this.value;
41
- },
42
- set(val) {
43
- let value = val !== null && val !== undefined ? val : null;
44
- if (this.converted) {
45
- value = val !== null && val !== undefined ? Math.round(val * this.scale) : null;
46
- }
47
- this.$emit('input', value);
48
- }
49
- },
50
- mergedAttrs() {
51
- const { value, min, max, step, ...attrs } = this.$attrs;
52
- const converted = {};
53
- ['min', 'max', 'step'].forEach(attr => {
54
- if (typeof this.$attrs[attr] === 'number') {
55
- converted[attr] = this.$attrs[attr] / 100
56
- }
57
- })
58
-
59
- return { ...attrs, ...converted }
60
- },
61
- }
62
- }
63
- </script>
64
- <style lang="scss" scoped>
65
- .le-input-money {
66
- width: 100%;
67
- display: flex;
68
- display: -webkit-flex;
69
-
70
- }
71
- </style>
@@ -1,7 +0,0 @@
1
- import LeInputNumber from "./src/main.vue";
2
-
3
- LeInputNumber.install = function (Vue) {
4
- Vue.component(LeInputNumber.name, LeInputNumber);
5
- };
6
-
7
- export default LeInputNumber;
@@ -1,15 +0,0 @@
1
- <template>
2
- <el-input-number
3
- v-bind="$attrs"
4
- v-on="$listeners"
5
- :class="['customClass', $attrs.class]"
6
- :style="$attrs.style"
7
- ></el-input-number>
8
- </template>
9
- <script>
10
- export default {
11
- name: "le-input-number",
12
- props: {},
13
- methods: {},
14
- };
15
- </script>
@@ -1,6 +0,0 @@
1
- import LeInputValidate from "./src/main.vue";
2
-
3
- LeInputValidate.install = function (Vue) {
4
- Vue.component(LeInputValidate.name, LeInputValidate);
5
- };
6
- export default LeInputValidate;