sh-view 2.0.8 → 2.2.0

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 (129) hide show
  1. package/package.json +9 -13
  2. package/packages/components/global-components/sh-alert/index.vue +175 -173
  3. package/packages/components/global-components/sh-badge/index.vue +57 -43
  4. package/packages/components/global-components/sh-card/index.vue +24 -16
  5. package/packages/components/global-components/sh-code-editor/index.vue +250 -260
  6. package/packages/components/global-components/sh-col/index.vue +44 -36
  7. package/packages/components/global-components/sh-corner/index.vue +230 -228
  8. package/packages/components/global-components/sh-count-to/index.vue +60 -51
  9. package/packages/components/global-components/sh-drawer/index.vue +216 -183
  10. package/packages/components/global-components/sh-drawer/scrollbar.js +44 -42
  11. package/packages/components/global-components/sh-empty/index.vue +0 -1
  12. package/packages/components/global-components/sh-form/form.vue +110 -0
  13. package/packages/components/global-components/sh-form/js/props.js +76 -63
  14. package/packages/components/global-components/sh-form/js/useForm.js +236 -0
  15. package/packages/components/global-components/sh-form/query.vue +70 -0
  16. package/packages/components/global-components/sh-header/index.vue +35 -50
  17. package/packages/components/global-components/sh-icon/css/index.scss +44 -0
  18. package/packages/components/global-components/sh-icon/index.vue +24 -11
  19. package/packages/components/global-components/sh-image/index.vue +47 -38
  20. package/packages/components/global-components/sh-list/index.vue +42 -37
  21. package/packages/components/global-components/sh-loading/index.vue +12 -8
  22. package/packages/components/global-components/sh-modal/index.vue +49 -40
  23. package/packages/components/global-components/sh-noticebar/index.vue +68 -54
  24. package/packages/components/global-components/sh-poptip/index.vue +247 -130
  25. package/packages/components/global-components/sh-progress/index.vue +71 -69
  26. package/packages/components/global-components/sh-pull-refresh/index.vue +156 -157
  27. package/packages/components/global-components/sh-result/index.vue +37 -28
  28. package/packages/components/global-components/sh-row/index.vue +21 -18
  29. package/packages/components/global-components/sh-split/index.vue +115 -109
  30. package/packages/components/global-components/sh-table/components/importModal.vue +95 -86
  31. package/packages/components/global-components/sh-table/components/sh-column.vue +54 -0
  32. package/packages/components/global-components/sh-table/{index.vue → grid.vue} +34 -145
  33. package/packages/components/global-components/sh-table/js/tableMethods.js +175 -0
  34. package/packages/components/global-components/sh-table/js/useTable.js +592 -0
  35. package/packages/components/global-components/sh-table/table.vue +269 -0
  36. package/packages/components/global-components/sh-tabs/index.vue +118 -93
  37. package/packages/components/global-components/sh-tag/index.vue +52 -51
  38. package/packages/components/global-components/sh-toolbar/index.vue +53 -47
  39. package/packages/components/global-components/sh-tree/components/table-tree.vue +152 -139
  40. package/packages/components/global-components/sh-tree/index.vue +218 -195
  41. package/packages/components/global-components/sh-tree/mixin/treeProps.js +118 -120
  42. package/packages/components/global-components/sh-upload/index.vue +308 -51
  43. package/packages/components/global-components/sh-water-fall/index.vue +4 -11
  44. package/packages/components/index.js +5 -3
  45. package/packages/components/other-components/sh-cron-modal/components/cron-content.vue +294 -287
  46. package/packages/components/other-components/sh-cron-modal/css/index.scss +0 -5
  47. package/packages/components/other-components/sh-cron-modal/index.vue +81 -67
  48. package/packages/components/other-components/sh-cron-modal/mixin/cron-emits.js +1 -0
  49. package/packages/components/other-components/sh-cron-modal/mixin/cron-hooks.js +179 -0
  50. package/packages/components/other-components/sh-cron-modal/mixin/cron-props.js +9 -0
  51. package/packages/components/other-components/sh-cron-modal/tabs/cron-day-box.vue +101 -92
  52. package/packages/components/other-components/sh-cron-modal/tabs/cron-hour-box.vue +68 -56
  53. package/packages/components/other-components/sh-cron-modal/tabs/cron-minute-box.vue +68 -56
  54. package/packages/components/other-components/sh-cron-modal/tabs/cron-month-box.vue +68 -56
  55. package/packages/components/other-components/sh-cron-modal/tabs/cron-second-box.vue +68 -56
  56. package/packages/components/other-components/sh-cron-modal/tabs/cron-week-box.vue +126 -115
  57. package/packages/components/other-components/sh-cron-modal/tabs/cron-year-box.vue +59 -46
  58. package/packages/components/other-components/sh-menu/index.vue +75 -60
  59. package/packages/components/other-components/sh-menu/menu-group-content.vue +71 -59
  60. package/packages/components/other-components/sh-menu/menu-item-content.vue +71 -61
  61. package/packages/components/other-components/sh-menu-card/index.vue +81 -59
  62. package/packages/components/other-components/sh-menu-card/menu-box.vue +87 -68
  63. package/packages/components/other-components/sh-preview/components/sh-excel.vue +182 -0
  64. package/packages/components/other-components/sh-preview/components/sh-word.vue +73 -0
  65. package/packages/components/other-components/sh-preview/index.vue +86 -85
  66. package/packages/components/other-components/sh-preview/js/data-hook.js +37 -0
  67. package/packages/components/other-components/sh-preview/js/data-props.js +11 -0
  68. package/packages/components/other-components/sh-system-tip/index.vue +115 -113
  69. package/packages/css/index.js +4 -4
  70. package/packages/{assets/css → css}/main.scss +2 -50
  71. package/packages/{assets/css → css}/theme.scss +35 -16
  72. package/packages/directive/module/prevent-click.js +1 -1
  73. package/packages/directive/module/resize.js +11 -154
  74. package/packages/index.js +39 -39
  75. package/packages/mixin/index.js +86 -87
  76. package/packages/vxeTable/css/index.scss +3 -0
  77. package/packages/vxeTable/render/cell/vxe-render-checkbox.vue +14 -5
  78. package/packages/vxeTable/render/cell/vxe-render-checkgroup.vue +43 -36
  79. package/packages/vxeTable/render/cell/vxe-render-code.vue +14 -5
  80. package/packages/vxeTable/render/cell/vxe-render-goption.vue +34 -24
  81. package/packages/vxeTable/render/cell/vxe-render-href.vue +21 -11
  82. package/packages/vxeTable/render/cell/vxe-render-img.vue +16 -10
  83. package/packages/vxeTable/render/cell/vxe-render-input.vue +83 -67
  84. package/packages/vxeTable/render/cell/vxe-render-money.vue +14 -6
  85. package/packages/vxeTable/render/cell/vxe-render-progress.vue +28 -19
  86. package/packages/vxeTable/render/cell/vxe-render-radio.vue +14 -5
  87. package/packages/vxeTable/render/cell/vxe-render-radiogroup.vue +43 -36
  88. package/packages/vxeTable/render/cell/vxe-render-select.vue +44 -36
  89. package/packages/vxeTable/render/cell/vxe-render-switch.vue +14 -5
  90. package/packages/vxeTable/render/cell/vxe-render-table.vue +51 -78
  91. package/packages/vxeTable/render/cell/vxe-render-textarea.vue +14 -5
  92. package/packages/vxeTable/render/cell/vxe-render-time.vue +23 -13
  93. package/packages/vxeTable/render/cell/vxe-render-tree.vue +23 -27
  94. package/packages/vxeTable/render/cell/vxe-render-upload.vue +11 -7
  95. package/packages/vxeTable/render/filters/vxe-filter-input.vue +25 -43
  96. package/packages/vxeTable/render/footer/vxe-footer-input.vue +23 -13
  97. package/packages/vxeTable/render/footer/vxe-footer-money.vue +30 -20
  98. package/packages/vxeTable/render/globalRenders.jsx +1 -1
  99. package/packages/vxeTable/render/header/vxe-header-money.vue +31 -21
  100. package/packages/vxeTable/render/mixin/cell-hooks.js +162 -0
  101. package/packages/vxeTable/render/mixin/cell-props.js +23 -0
  102. package/packages/vxeTable/render/mixin/filter-hooks.js +28 -0
  103. package/packages/components/global-components/sh-form/components/form-item.vue +0 -25
  104. package/packages/components/global-components/sh-form/css/index.scss +0 -55
  105. package/packages/components/global-components/sh-form/index.vue +0 -114
  106. package/packages/components/global-components/sh-form/js/methods.js +0 -146
  107. package/packages/components/global-components/sh-form/mixin/defaultData.js +0 -32
  108. package/packages/components/global-components/sh-icon/css/default/index.scss +0 -27
  109. package/packages/components/global-components/sh-icon/css/font/index.scss +0 -16
  110. package/packages/components/global-components/sh-icon/icon-default.vue +0 -32
  111. package/packages/components/global-components/sh-icon/icon-font.vue +0 -32
  112. package/packages/components/global-components/sh-poptip/popper.js +0 -115
  113. package/packages/components/global-components/sh-query/index.vue +0 -317
  114. package/packages/components/global-components/sh-table/js/methods.js +0 -549
  115. package/packages/components/global-components/sh-table/mixin/defaultData.js +0 -94
  116. package/packages/components/global-components/sh-upload/js/mixin.js +0 -257
  117. package/packages/components/other-components/sh-cron-modal/mixin/cron-box.js +0 -169
  118. package/packages/vxeTable/render/mixin/cell-mixin.js +0 -206
  119. /package/packages/components/global-components/sh-icon/css/default/{fonts/ionicons.svg → ionicons.svg} +0 -0
  120. /package/packages/components/global-components/sh-icon/css/default/{fonts/ionicons.ttf → ionicons.ttf} +0 -0
  121. /package/packages/components/global-components/sh-icon/css/default/{fonts/ionicons.woff → ionicons.woff} +0 -0
  122. /package/packages/components/global-components/sh-icon/css/default/{fonts/ionicons.woff2 → ionicons.woff2} +0 -0
  123. /package/packages/components/global-components/sh-icon/css/font/{fonts/iconfont.js → iconfont.js} +0 -0
  124. /package/packages/components/global-components/sh-icon/css/font/{fonts/iconfont.json → iconfont.json} +0 -0
  125. /package/packages/components/global-components/sh-icon/css/font/{fonts/iconfont.ttf → iconfont.ttf} +0 -0
  126. /package/packages/components/global-components/sh-icon/css/font/{fonts/iconfont.woff → iconfont.woff} +0 -0
  127. /package/packages/components/global-components/sh-icon/css/font/{fonts/iconfont.woff2 → iconfont.woff2} +0 -0
  128. /package/packages/{assets/css → css}/animated.scss +0 -0
  129. /package/packages/{assets/css → css}/loader.scss +0 -0
@@ -1,85 +1,86 @@
1
- <template>
2
- <div class="sh-preview">
3
- <component :is="componentName" v-bind="componentProps" :style="componentStyles" @rendered="onRendered" @error="onError" />
4
- </div>
5
- </template>
6
-
7
- <script>
8
- import * as ShWord from '@vue-office/docx'
9
- import '@vue-office/docx/lib/index.css'
10
- import * as ShExcel from '@vue-office/excel'
11
- import '@vue-office/excel/lib/index.css'
12
- import * as ShPdf from '@vue-office/pdf'
13
- export default {
14
- name: 'ShPreview',
15
- components: {
16
- ShWord,
17
- ShExcel,
18
- ShPdf
19
- },
20
- props: {
21
- type: {
22
- type: String
23
- },
24
- base: {
25
- type: String
26
- },
27
- url: {
28
- type: String
29
- },
30
- width: {
31
- type: String,
32
- default: '100%'
33
- },
34
- height: {
35
- type: String,
36
- default: '600px'
37
- }
38
- },
39
- emits: ['ready', 'error'],
40
- computed: {
41
- previewType() {
42
- return (this.type && this.type.toLowerCase()) || (this.url && this.url.substr(this.url.lastIndexOf('.') + 1).toLowerCase())
43
- },
44
- componentName() {
45
- if (['word', 'doc', 'docx'].includes(this.previewType)) {
46
- return 'sh-word'
47
- } else if (['excel', 'xlsx'].includes(this.previewType)) {
48
- return 'sh-excel'
49
- } else if (['pdf'].includes(this.previewType)) {
50
- return 'sh-pdf'
51
- }
52
- return 'iframe'
53
- },
54
- componentProps() {
55
- let srcPrefix = this.base || ''
56
- let srcSuffix = this.componentName === 'iframe' ? '#scrollbars=0&toolbar=0&statusbar=0' : ''
57
- return {
58
- src: srcPrefix + this.url + srcSuffix,
59
- frameborder: 0
60
- }
61
- },
62
- componentStyles() {
63
- return {
64
- width: this.width,
65
- height: this.height
66
- }
67
- }
68
- },
69
- methods: {
70
- onRendered(data) {
71
- this.$emit('ready', data)
72
- },
73
- onError(data) {
74
- this.$emit('error', data)
75
- }
76
- }
77
- }
78
- </script>
79
-
80
- <style lang="scss" scoped>
81
- .sh-preview {
82
- position: relative;
83
- overflow: auto;
84
- }
85
- </style>
1
+ <template>
2
+ <div class="sh-preview">
3
+ <component :is="componentName" v-bind="componentProps" :style="componentStyles" @rendered="onRendered" @error="onError" />
4
+ </div>
5
+ </template>
6
+
7
+ <script>
8
+ import { defineComponent, computed } from 'vue'
9
+ import ShWord from './components/sh-word.vue'
10
+ import ShExcel from './components/sh-excel.vue'
11
+ export default defineComponent({
12
+ name: 'ShPreview',
13
+ components: {
14
+ ShWord,
15
+ ShExcel
16
+ },
17
+ props: {
18
+ type: {
19
+ type: String
20
+ },
21
+ base: {
22
+ type: String
23
+ },
24
+ url: {
25
+ type: String
26
+ },
27
+ width: {
28
+ type: String,
29
+ default: '100%'
30
+ },
31
+ height: {
32
+ type: String,
33
+ default: '600px'
34
+ }
35
+ },
36
+ emits: ['ready', 'error'],
37
+ setup(props, context) {
38
+ const { emit, slots } = context
39
+ const previewType = computed(() => (props.type && props.type.toLowerCase()) || (props.url && props.url.substr(props.url.lastIndexOf('.') + 1).toLowerCase()))
40
+ const componentName = computed(() => {
41
+ if (['word', 'doc', 'docx'].includes(previewType.value)) {
42
+ return 'sh-word'
43
+ } else if (['excel', 'xlsx'].includes(previewType.value)) {
44
+ return 'sh-excel'
45
+ }
46
+ return 'iframe'
47
+ })
48
+ const componentProps = computed(() => {
49
+ let srcPrefix = props.base || ''
50
+ let srcSuffix = componentName.value === 'iframe' ? '#scrollbars=0&toolbar=0&statusbar=0' : ''
51
+ return {
52
+ src: srcPrefix + props.url + srcSuffix,
53
+ frameborder: 0
54
+ }
55
+ })
56
+ const componentStyles = computed(() => {
57
+ return {
58
+ width: props.width,
59
+ height: props.height
60
+ }
61
+ })
62
+
63
+ const onRendered = data => {
64
+ emit('ready', data)
65
+ }
66
+ const onError = data => {
67
+ emit('error', data)
68
+ }
69
+
70
+ return {
71
+ componentName,
72
+ componentProps,
73
+ componentStyles,
74
+ onRendered,
75
+ onError
76
+ }
77
+ }
78
+ })
79
+ </script>
80
+
81
+ <style lang="scss" scoped>
82
+ .sh-preview {
83
+ position: relative;
84
+ overflow: auto;
85
+ }
86
+ </style>
@@ -0,0 +1,37 @@
1
+ import { onMounted, ref, watch } from 'vue'
2
+
3
+ export default function (props, context, state) {
4
+ const rootRef = ref(null)
5
+ const { emit } = context
6
+
7
+ const initData = async () => {
8
+ if (!props.src) return
9
+ let container = rootRef.value
10
+ try {
11
+ let fileRes = src
12
+ if (typeof src === 'string') {
13
+ fileRes = fetch(src, props.serverConfig)
14
+ }
15
+ await state.domRender(fileRes, container)
16
+ emit('rendered')
17
+ } catch (e) {
18
+ await state.domRender('', container)
19
+ emit('error', e)
20
+ }
21
+ }
22
+
23
+ onMounted(() => {
24
+ initData()
25
+ })
26
+
27
+ watch(
28
+ () => props.src,
29
+ () => {
30
+ initData()
31
+ }
32
+ )
33
+
34
+ return {
35
+ rootRef
36
+ }
37
+ }
@@ -0,0 +1,11 @@
1
+ export default {
2
+ src: [String, ArrayBuffer, Blob],
3
+ options: {
4
+ type: Object,
5
+ default: () => ({})
6
+ },
7
+ serverConfig: {
8
+ type: Object,
9
+ default: () => ({})
10
+ }
11
+ }
@@ -1,113 +1,115 @@
1
- <template>
2
- <sh-header size="large">
3
- <template #title>
4
- <div v-html="headerTitle.title"></div>
5
- </template>
6
- <div>{{ headerTitle.desc }}</div>
7
- </sh-header>
8
- </template>
9
-
10
- <script>
11
- export default {
12
- name: 'SystemTip',
13
- props: {
14
- name: {
15
- type: String,
16
- default: ''
17
- }
18
- },
19
- data() {
20
- return {
21
- nowdate: new Date()
22
- }
23
- },
24
- computed: {
25
- headerDate() {
26
- let hours = this.nowdate.getHours()
27
- let month = this.nowdate.getMonth() + 1
28
- let day = this.nowdate.getDate()
29
- let week = this.nowdate.getDay()
30
- return { date: this.nowdate, hours, month, day, week }
31
- },
32
- headerWeek() {
33
- let { week } = this.headerDate
34
- let tw = ''
35
- switch (week) {
36
- case 0:
37
- tw = '星期天'
38
- break
39
- case 1:
40
- tw = '星期一'
41
- break
42
- case 2:
43
- tw = '星期二'
44
- break
45
- case 3:
46
- tw = '星期三'
47
- break
48
- case 4:
49
- tw = '星期四'
50
- break
51
- case 5:
52
- tw = '星期五'
53
- break
54
- case 6:
55
- tw = '星期六'
56
- break
57
- }
58
- return tw
59
- },
60
- headerTitle() {
61
- let { hours } = this.headerDate
62
- let title = ''
63
- let desc = ''
64
- switch (true) {
65
- case hours === 0 || (hours >= 23 && hours <= 24):
66
- title = '午夜啦,早点休息喔'
67
- desc = '思念不因劳累而改变,问候不因疲惫而变懒,祝福不因休息而变缓,关怀随星星眨眼,牵挂在深夜依然,轻轻道声:祝你晚安!'
68
- break
69
- case hours >= 1 && hours <= 4:
70
- title = '凌晨啦,注意身体喔'
71
- desc = '时间不早啦,记得早点休息,保证睡眠质量!'
72
- break
73
- case hours >= 5 && hours <= 6:
74
- title = '清晨啦,准备迎接新的一天吧'
75
- desc = '睁开眼,缓一缓,快起床,伸懒腰;笑一笑,美好的一天又开始了.早安,祝你今天好心情,工作顺利,生活甜美!'
76
- break
77
- case hours >= 7 && hours <= 8:
78
- title = '早上好,记得吃早餐喔'
79
- desc = '一日之计在于晨,愿我这阳光初露时的小小问候能将快乐带给你,愿你用快乐开启,用微笑结束这美好的一天.'
80
- break
81
- case hours >= 9 && hours <= 10:
82
- title = '上午好,时刻保持好心情呀'
83
- desc = '上午好,一束阳光照在身,祝你天天都开心,财神家中去,梦想变成真,今天中大奖,明天去上任.'
84
- break
85
- case hours >= 11 && hours <= 12:
86
- title = '中午好,午餐时间到啦'
87
- desc = '中午好,到了吃午餐的时间了,吃完午餐记得午睡一小会,保证下午可以有良好的精神状态.'
88
- break
89
- case hours >= 13 && hours <= 16:
90
- title = '下午好,别太辛苦了'
91
- desc = '送各位一杯下午茶:已祝福为叶,叮咛做花,热情为水,包容当杯,喝出你一天好心情和一生的幸福,下午愉快!'
92
- break
93
- case hours >= 17 && hours <= 18:
94
- title = '傍晚啦,看看窗外的风景吧'
95
- desc = '工作是做不完的,身体可是累的垮的!看看外面的天空吧!'
96
- break
97
- case hours >= 19 && hours <= 22:
98
- title = '晚上好,准备好进入梦乡啦'
99
- desc = '睡前请把窗户打开,让"幸福"进来,睡前请把"心情"打开,让"快乐"入驻,睡前请把"思想"放飞,让甜蜜入梦!今晚祝你好梦成真,幸福一生!晚安!'
100
- break
101
- }
102
- return { title: `Hi! <span class="primary">${this.name}</span> ${title}`, desc }
103
- }
104
- },
105
- watch: {},
106
- created() {},
107
- mounted() {},
108
- beforeUnmount() {},
109
- methods: {}
110
- }
111
- </script>
112
-
113
- <style lang="scss" scoped></style>
1
+ <template>
2
+ <sh-header size="large">
3
+ <template #title>
4
+ <div v-html="headerTitle.title"></div>
5
+ </template>
6
+ <div>{{ headerTitle.desc }}</div>
7
+ </sh-header>
8
+ </template>
9
+
10
+ <script>
11
+ import { defineComponent, computed, onActivated } from 'vue'
12
+ export default defineComponent({
13
+ name: 'SystemTip',
14
+ props: {
15
+ name: {
16
+ type: String,
17
+ default: ''
18
+ }
19
+ },
20
+ setup(props, context) {
21
+ let nowdate = new Date()
22
+
23
+ const headerDate = computed(() => {
24
+ let hours = nowdate.getHours()
25
+ let month = nowdate.getMonth() + 1
26
+ let day = nowdate.getDate()
27
+ let week = nowdate.getDay()
28
+ return { date: nowdate, hours, month, day, week }
29
+ })
30
+ const headerWeek = computed(() => {
31
+ let { week } = headerDate.value
32
+ let tw = ''
33
+ switch (week) {
34
+ case 0:
35
+ tw = '星期天'
36
+ break
37
+ case 1:
38
+ tw = '星期一'
39
+ break
40
+ case 2:
41
+ tw = '星期二'
42
+ break
43
+ case 3:
44
+ tw = '星期三'
45
+ break
46
+ case 4:
47
+ tw = '星期四'
48
+ break
49
+ case 5:
50
+ tw = '星期五'
51
+ break
52
+ case 6:
53
+ tw = '星期六'
54
+ break
55
+ }
56
+ return tw
57
+ })
58
+ const headerTitle = computed(() => {
59
+ let { hours } = headerDate.value
60
+ let title = ''
61
+ let desc = ''
62
+ switch (true) {
63
+ case hours === 0 || (hours >= 23 && hours <= 24):
64
+ title = '午夜啦,早点休息喔'
65
+ desc = '思念不因劳累而改变,问候不因疲惫而变懒,祝福不因休息而变缓,关怀随星星眨眼,牵挂在深夜依然,轻轻道声:祝你晚安!'
66
+ break
67
+ case hours >= 1 && hours <= 4:
68
+ title = '凌晨啦,注意身体喔'
69
+ desc = '时间不早啦,记得早点休息,保证睡眠质量!'
70
+ break
71
+ case hours >= 5 && hours <= 6:
72
+ title = '清晨啦,准备迎接新的一天吧'
73
+ desc = '睁开眼,缓一缓,快起床,伸懒腰;笑一笑,美好的一天又开始了.早安,祝你今天好心情,工作顺利,生活甜美!'
74
+ break
75
+ case hours >= 7 && hours <= 8:
76
+ title = '早上好,记得吃早餐喔'
77
+ desc = '一日之计在于晨,愿我这阳光初露时的小小问候能将快乐带给你,愿你用快乐开启,用微笑结束这美好的一天.'
78
+ break
79
+ case hours >= 9 && hours <= 10:
80
+ title = '上午好,时刻保持好心情呀'
81
+ desc = '上午好,一束阳光照在身,祝你天天都开心,财神家中去,梦想变成真,今天中大奖,明天去上任.'
82
+ break
83
+ case hours >= 11 && hours <= 12:
84
+ title = '中午好,午餐时间到啦'
85
+ desc = '中午好,到了吃午餐的时间了,吃完午餐记得午睡一小会,保证下午可以有良好的精神状态.'
86
+ break
87
+ case hours >= 13 && hours <= 16:
88
+ title = '下午好,别太辛苦了'
89
+ desc = '送各位一杯下午茶:已祝福为叶,叮咛做花,热情为水,包容当杯,喝出你一天好心情和一生的幸福,下午愉快!'
90
+ break
91
+ case hours >= 17 && hours <= 18:
92
+ title = '傍晚啦,看看窗外的风景吧'
93
+ desc = '工作是做不完的,身体可是累的垮的!看看外面的天空吧!'
94
+ break
95
+ case hours >= 19 && hours <= 22:
96
+ title = '晚上好,准备好进入梦乡啦'
97
+ desc = '睡前请把窗户打开,让"幸福"进来,睡前请把"心情"打开,让"快乐"入驻,睡前请把"思想"放飞,让甜蜜入梦!今晚祝你好梦成真,幸福一生!晚安!'
98
+ break
99
+ }
100
+ return { title: `Hi! <span class="primary">${props.name}</span> ${title}`, desc }
101
+ })
102
+
103
+ onActivated(() => {
104
+ nowdate = new Date()
105
+ })
106
+
107
+ return {
108
+ headerWeek,
109
+ headerTitle
110
+ }
111
+ }
112
+ })
113
+ </script>
114
+
115
+ <style lang="scss" scoped></style>
@@ -1,4 +1,4 @@
1
- import '../assets/css/theme.scss'
2
- import '../assets/css/loader.scss'
3
- import '../assets/css/main.scss'
4
- import '../assets/css/animated.scss'
1
+ import './theme.scss'
2
+ import './loader.scss'
3
+ import './main.scss'
4
+ import './animated.scss'
@@ -158,11 +158,6 @@ input::-webkit-outer-spin-button, input::-webkit-inner-spin-button { -webkit-ap
158
158
  input[type="number"]{ -moz-appearance: textfield; }
159
159
  .disabled-gray{ filter: grayscale(1); -webkit-filter: grayscale(1); -moz-filter: grayscale(1); -o-filter: grayscale(1); filter:progid:DXImageTransform.Microsoft.BasicImage(grayscale=1);}
160
160
 
161
-
162
- // iview 样式调整
163
- .ivu-layout{ background: transparent }
164
- .ivu-drawer-content{ background-color: var(--vxe-table-body-background-color) }
165
-
166
161
  .sh-prevent--disabled{
167
162
  background-color: #ddd !important;
168
163
  border-color: #ddd !important;
@@ -188,39 +183,6 @@ input[type="number"]{ -moz-appearance: textfield; }
188
183
  margin-right: 5px;
189
184
  }
190
185
 
191
- // 布局样式
192
- .sh-layout-wrap {
193
- background-color: var(--main-background);
194
- .header-item{
195
- padding: 0 8px;
196
- cursor: pointer;
197
- &:hover{
198
- background-color: rgba(0, 0, 0, .1);
199
- }
200
- }
201
- .sh-layout-layout-sider{
202
- height: 100%;
203
- flex-direction: row;
204
- }
205
- .sh-layout-layout-content{
206
- overflow-x: hidden;
207
- position: relative;
208
- margin: 9px;
209
- }
210
- .sh-layout-layout-content-inner{
211
- width: 100%;
212
- height: 100%;
213
- overflow-x: hidden;
214
- overflow-y: auto;
215
- position: absolute;
216
- }
217
- }
218
- .sh-layout-drawer-sider{
219
- .sh-sys-logo{
220
- height: auto;
221
- max-height: 100px;
222
- }
223
- }
224
186
 
225
187
  //sh空数据风格
226
188
  .sh-empty{
@@ -229,10 +191,6 @@ input[type="number"]{ -moz-appearance: textfield; }
229
191
  padding: 10px;
230
192
  }
231
193
 
232
- //sh列表list风格
233
- .sh-list{
234
- }
235
-
236
194
  // sh-vxeform无底部提交按钮,做公共样式
237
195
  .sh-common-footer{
238
196
  padding: 10px;
@@ -240,16 +198,10 @@ input[type="number"]{ -moz-appearance: textfield; }
240
198
  display: flex;
241
199
  align-items: center;
242
200
  justify-content: space-between;
243
- .vxe-button + .vxe-button,
244
- .vxe-button + .vxe-button--dropdown,
245
- .vxe-input + .vxe-button,
246
- .vxe-input + .vxe-button--dropdown{
247
- margin-left: 5px;
248
- }
249
- .sh-table-form-buttons-left{
201
+ &-left{
250
202
  flex: 1;
251
203
  }
252
- .sh-table-form-buttons-right{
204
+ &-right{
253
205
  }
254
206
  }
255
207
 
@@ -72,24 +72,43 @@
72
72
  --vxe-primary-darken-color: #e03554;
73
73
  --primary-weak-color: #ffccd6;
74
74
  }
75
+
75
76
  // 暗黑
76
77
  .sh-dark-mode{
77
- --vxe-font-color: #999999;
78
- --vxe-icon-background-color: #999999;
79
- --vxe-table-font-color: #999999;
80
- --vxe-table-header-background-color: #222222;
81
- --vxe-table-body-background-color: #141414;
82
- --vxe-table-footer-background-color: #141414;
83
- --vxe-input-background-color: #0a0a0a;
84
- --vxe-textarea-background-color: #0a0a0a;
85
- --vxe-textarea-count-background-color: #0a0a0a;
86
- --vxe-table-border-color: #454545;
87
- --vxe-input-border-color: #454545;
88
- --vxe-pager-background-color: #141414;
78
+ --vxe-font-color: #dddddd;
79
+ --vxe-icon-background-color: #dddddd;
80
+ --vxe-table-font-color: #dddddd;
81
+ --vxe-table-header-font-color: #dddddd;
82
+ --vxe-table-header-background-color: #444444;
83
+ --vxe-table-body-background-color: #141414;
84
+ --vxe-table-footer-background-color: #141414;
85
+ --vxe-table-row-hover-background-color: #454545;
86
+ --vxe-table-row-striped-background-color: #111111;
87
+ --vxe-table-row-hover-striped-background-color: #555555;
88
+ --vxe-table-row-radio-checked-background-color: #090909;
89
+ --vxe-table-row-hover-radio-checked-background-color: #000000;
90
+ --vxe-table-row-checkbox-checked-background-color: #090909;
91
+ --vxe-table-row-hover-checkbox-checked-background-color: #000000;
92
+ --vxe-table-row-current-background-color: #090909;
93
+ --vxe-table-row-hover-current-background-color: #000000;
94
+ --vxe-table-column-hover-background-color: #454545;
95
+ --vxe-table-column-current-background-color: #090909;
96
+ --vxe-input-date-picker-hover-background-color: #666666;
97
+ --vxe-input-background-color: #0a0a0a;
98
+ --vxe-input-panel-background-color: #0a0a0a;
99
+ --vxe-textarea-background-color: #0a0a0a;
100
+ --vxe-textarea-count-background-color: #0a0a0a;
101
+ --vxe-pulldown-panel-background-color: #141414;
102
+ --vxe-pager-background-color: #141414;
89
103
  --vxe-pager-perfect-background-color: #141414;
90
104
  --vxe-pager-perfect-button-background-color: #454545;
91
- --vxe-button-default-background-color: #454545;
92
- --vxe-switch-close-background-color: #454545;
93
- --main-background: #0a0a0a;
94
- --primary-weak-color: #222222;
105
+ --vxe-button-default-background-color: #454545;
106
+ --vxe-switch-close-background-color: #454545;
107
+ --vxe-select-panel-background-color: #141414;
108
+ --vxe-select-option-hover-background-color: #454545;
109
+ --vxe-table-border-color: #666666;
110
+ --vxe-input-border-color: #666666;
111
+ --vxe-table-popup-border-color: #666666;
112
+ --primary-weak-color: #222222;
113
+ --main-background: #0a0a0a;
95
114
  }
@@ -3,7 +3,7 @@ import { utils } from 'sh-tools'
3
3
  let preventClass = 'sh-prevent--disabled'
4
4
 
5
5
  export default {
6
- inserted(el, binding) {
6
+ mounted(el, binding) {
7
7
  el.addEventListener('click', () => {
8
8
  if (!el.disabled) {
9
9
  el.disabled = true