wl-design-mobile 0.8.19 → 0.8.21

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 (101) hide show
  1. package/README.md +6 -6
  2. package/api/doc.js +25 -25
  3. package/api/x1.js +56 -56
  4. package/btn/components/lambo-info-btn.vue +123 -123
  5. package/btn/components/lambo-primary-btn.vue +117 -117
  6. package/btn/components/lambo-text-btn.vue +116 -116
  7. package/btn/lambo-btn-divide.vue +35 -120
  8. package/btn/lambo-btn-group.vue +46 -46
  9. package/btn/lambo-btn-split-line.vue +41 -41
  10. package/btn/lambo-btn.vue +68 -68
  11. package/btn/lambo-extend-btn.vue +121 -121
  12. package/btn/lambo-icon-btn.vue +82 -82
  13. package/card-item/card-row-icon.vue +71 -71
  14. package/card-item/filtrate-row.vue +73 -73
  15. package/card-item/lambo-card-footer.vue +40 -40
  16. package/card-item/lambo-card-head.vue +66 -66
  17. package/card-item/lambo-card-row.vue +59 -59
  18. package/collapse/lambo-collapse.vue +93 -93
  19. package/config/config.js +14 -14
  20. package/detail/lambo-detail-grid.vue +58 -58
  21. package/detail/lambo-detail-row.vue +59 -59
  22. package/doc/file/compoents/lambo-file-list.vue +42 -42
  23. package/doc/file/compoents/lambo-file-row.vue +77 -77
  24. package/doc/file/lambo-file-upload-collapse.vue +107 -107
  25. package/doc/file-type/file-type.js +286 -286
  26. package/doc/img/comonents/lambo-img-grid.vue +109 -109
  27. package/doc/img/lambo-img-upload-collapse.vue +107 -107
  28. package/doc/img/styles/css/index.css +3 -3
  29. package/edit/list/Lambo-edit-list.vue +87 -87
  30. package/edit/list/lambo-edit-card-group.vue +100 -100
  31. package/edit/list/styles/css/index.css +39 -39
  32. package/edit/select/lambo-edit-date-range.vue +147 -147
  33. package/edit/select/lambo-edit-date-time.vue +122 -122
  34. package/edit/select/lambo-edit-date.vue +120 -120
  35. package/edit/select/lambo-edit-input-textarea.vue +91 -91
  36. package/edit/select/lambo-edit-input.vue +91 -91
  37. package/edit/select/lambo-edit-multi-select.vue +168 -168
  38. package/edit/select/lambo-edit-search-single-select.vue +186 -186
  39. package/edit/select/lambo-edit-single-select.vue +162 -162
  40. package/edit/select/styles/css/index.css +133 -133
  41. package/flow/approval/flow-approval.vue +552 -552
  42. package/flow/comps/flow-attachment-list.vue +230 -230
  43. package/flow/comps/flow-attachment-modal.vue +194 -194
  44. package/flow/comps/flow-copy-users.vue +358 -358
  45. package/flow/comps/flow-node-card.vue +150 -150
  46. package/flow/comps/flow-node-header.vue +172 -172
  47. package/flow/comps/flow-util.js +156 -156
  48. package/flow/comps/icons/approved.svg +11 -11
  49. package/flow/comps/icons/canceled.svg +11 -11
  50. package/flow/comps/icons/rejected.svg +11 -11
  51. package/flow/comps/icons/underway.svg +11 -11
  52. package/flow/detail/flow-detail.vue +467 -467
  53. package/flow/index.js +51 -51
  54. package/flow/lambo-flow-detail.vue +912 -912
  55. package/flow/lambo-flow-edit.vue +15 -15
  56. package/flow/submit/flow-submit.vue +383 -383
  57. package/icon/lambo-required-red-star.vue +47 -47
  58. package/icon/lambo-vector-icon.vue +71 -71
  59. package/list/lambo-list.vue +412 -413
  60. package/nav/lambo-top-nav.vue +81 -81
  61. package/order/comps/icons/approved.svg +10 -10
  62. package/order/comps/icons/underway.svg +10 -10
  63. package/order/comps/order-attachment-list.vue +228 -228
  64. package/order/comps/order-attachment-modal.vue +194 -194
  65. package/order/comps/order-node-card.vue +126 -126
  66. package/order/comps/order-node-header.vue +133 -133
  67. package/order/comps/order-util.js +132 -132
  68. package/order/detail/order-detail.vue +432 -432
  69. package/order/handle/order-handle.vue +517 -517
  70. package/order/index.js +33 -33
  71. package/package.json +38 -37
  72. package/search/lambo-date-range-page.vue +196 -196
  73. package/search/lambo-date-range.vue +111 -111
  74. package/search/lambo-date.vue +105 -105
  75. package/search/lambo-input.vue +74 -74
  76. package/search/lambo-multi-select.vue +129 -129
  77. package/search/lambo-org-select-page.vue +109 -109
  78. package/search/lambo-search-box.vue +61 -61
  79. package/search/lambo-search-single-select.vue +152 -152
  80. package/search/lambo-single-select.vue +123 -123
  81. package/search/lambo-week-date-select.vue +521 -521
  82. package/search/styles/css/index.css +138 -138
  83. package/styles/base.less +77 -77
  84. package/styles/components/btn.less +7 -7
  85. package/styles/components/search.less +33 -33
  86. package/styles/components/tag.less +181 -181
  87. package/styles/index.less +4 -4
  88. package/table/lambo-ag-table.vue +227 -227
  89. package/tag/lambo-tag.vue +23 -23
  90. package/title/lambo-title1.vue +151 -151
  91. package/title/lambo-title2.vue +37 -37
  92. package/title/lambo-title3.vue +77 -77
  93. package/util/assist.js +43 -43
  94. package/util/axios/cacheconf.js +19 -19
  95. package/util/axios/index.js +11 -11
  96. package/util/axios/interceptors.js +101 -101
  97. package/util/bus.js +4 -4
  98. package/util/jssdk-sczy.js +104 -104
  99. package/util/jssdk.js +608 -565
  100. package/util/math.js +76 -76
  101. package/util/token.js +36 -36
@@ -1,129 +1,129 @@
1
- <template>
2
- <div>
3
- <div class="search-row" @click="onOpen">
4
- <lambo-required-red-star :required="required"></lambo-required-red-star>
5
- <div class="search-input-title">{{ title }}</div>
6
- <div class="search-lambo-input">{{ valName }}</div>
7
- <lambo-vector-icon v-if="icon" :icon="icon"></lambo-vector-icon>
8
- </div>
9
- <div>
10
- <van-popup v-model:show="showBottom" get-container="body" :style="{ height: '31%' }" position="bottom">
11
- <van-checkbox-group v-model="selectItem.K">
12
- <div class="bottom-div">
13
- <div class="search-top-div">
14
- <van-button class="search-cancel-btn" size="normal" @click="cancel">取消</van-button>
15
- <span class="search-select-title">请选择</span>
16
- <van-button class="search-confirm-btn" size="normal" @click="onConfirm">确认</van-button>
17
- </div>
18
- <div class="cell-group-div">
19
- <van-cell-group>
20
- <van-cell v-for="(c, index) in data" :key="index" :title="`${c.V}`" clickable @click="checkboxClick(c)">
21
- <template #right-icon>
22
- <van-checkbox :name="c.K" shape="square" ref="checkboxes" checked-color="#0070D2"/>
23
- </template>
24
- </van-cell>
25
- </van-cell-group>
26
- </div>
27
- </div>
28
- </van-checkbox-group>
29
- </van-popup>
30
- </div>
31
- </div>
32
- </template>
33
- <script>
34
- import {Toast} from 'vant'
35
- import LamboRequiredRedStar from '../icon/lambo-required-red-star.vue'
36
- import LamboVectorIcon from '../icon/lambo-vector-icon.vue'
37
-
38
- export default {
39
- name: "LamboMultiSelect",
40
- components: {LamboVectorIcon, LamboRequiredRedStar},
41
- props: {
42
- required: {
43
- type: Boolean,
44
- default: false
45
- },
46
- icon: {
47
- type: String,
48
- default: 'arrow-right-big.png'
49
- },
50
- title: {
51
- type: String,
52
- default: false
53
- },
54
- data: {
55
- type: Array,
56
- default: () => ([])
57
- },
58
- defaultItem: {
59
- type: Object
60
- }
61
- },
62
- data() {
63
- return {
64
- showBottom: false,
65
- val: '',
66
- valName: '',
67
- selectItem: {
68
- K: [],
69
- V: []
70
- },
71
- firstLoad: true
72
- }
73
- },
74
- watch: {
75
- defaultItem: {
76
- handler: function (val, oldVal) {
77
- console.log("multi-select -- defaultItem -- val,oldVal,firstLoad:", {val, oldVal, "firstLoad": this.firstLoad})
78
- if (val && val.K && this.firstLoad === true) {
79
- this.val = val.K
80
- this.valName = val.V.join()
81
- this.selectItem.K = val.K
82
- this.selectItem.V = val.V
83
- this.firstLoad = false
84
- }
85
- },
86
- deep: true,
87
- immediate: true,
88
- }
89
- },
90
- methods: {
91
- onOpen() {
92
- this.showBottom = true
93
- },
94
- cancel() {
95
- this.showBottom = false
96
- },
97
- onConfirm() {
98
- if (this.selectItem && typeof this.selectItem === 'object' && this.selectItem.K && this.selectItem.V) {
99
- this.val = this.selectItem.K
100
- this.valName = this.selectItem.V.join()
101
- this.$emit('on-ok', this.selectItem)
102
- } else {
103
- Toast.fail("查询条件选择失败,请联系管理员");
104
- console.error("multi-select -- 查询条件选择失败,this.selectItem:", this.selectItem)
105
- this.val = []
106
- this.valName = ''
107
- this.$emit("on-ok", {K: [], V: []})
108
- }
109
- this.showBottom = false
110
- },
111
- checkboxClick(data) {
112
- console.log("multi-select -- checkboxClick:", data)
113
- if (data && data.K) {
114
- if (this.selectItem.K.includes(data.K)) {
115
- this.selectItem.K.splice(this.selectItem.K.indexOf(data.K), 1)
116
- this.selectItem.V.splice(this.selectItem.V.indexOf(data.V), 1)
117
- } else {
118
- this.selectItem.K.push(data.K)
119
- this.selectItem.V.push(data.V)
120
- }
121
- }
122
- }
123
- }
124
- }
125
- </script>
126
- <style scoped>
127
- @import "../styles/index.less";
128
- @import "./styles/css/index.css";
129
- </style>
1
+ <template>
2
+ <div>
3
+ <div class="search-row" @click="onOpen">
4
+ <lambo-required-red-star :required="required"></lambo-required-red-star>
5
+ <div class="search-input-title">{{ title }}</div>
6
+ <div class="search-lambo-input">{{ valName }}</div>
7
+ <lambo-vector-icon v-if="icon" :icon="icon"></lambo-vector-icon>
8
+ </div>
9
+ <div>
10
+ <van-popup v-model:show="showBottom" get-container="body" :style="{ height: '31%' }" position="bottom">
11
+ <van-checkbox-group v-model="selectItem.K">
12
+ <div class="bottom-div">
13
+ <div class="search-top-div">
14
+ <van-button class="search-cancel-btn" size="normal" @click="cancel">取消</van-button>
15
+ <span class="search-select-title">请选择</span>
16
+ <van-button class="search-confirm-btn" size="normal" @click="onConfirm">确认</van-button>
17
+ </div>
18
+ <div class="cell-group-div">
19
+ <van-cell-group>
20
+ <van-cell v-for="(c, index) in data" :key="index" :title="`${c.V}`" clickable @click="checkboxClick(c)">
21
+ <template #right-icon>
22
+ <van-checkbox :name="c.K" shape="square" ref="checkboxes" checked-color="#0070D2"/>
23
+ </template>
24
+ </van-cell>
25
+ </van-cell-group>
26
+ </div>
27
+ </div>
28
+ </van-checkbox-group>
29
+ </van-popup>
30
+ </div>
31
+ </div>
32
+ </template>
33
+ <script>
34
+ import {Toast} from 'vant'
35
+ import LamboRequiredRedStar from '../icon/lambo-required-red-star.vue'
36
+ import LamboVectorIcon from '../icon/lambo-vector-icon.vue'
37
+
38
+ export default {
39
+ name: "LamboMultiSelect",
40
+ components: {LamboVectorIcon, LamboRequiredRedStar},
41
+ props: {
42
+ required: {
43
+ type: Boolean,
44
+ default: false
45
+ },
46
+ icon: {
47
+ type: String,
48
+ default: 'arrow-right-big.png'
49
+ },
50
+ title: {
51
+ type: String,
52
+ default: false
53
+ },
54
+ data: {
55
+ type: Array,
56
+ default: () => ([])
57
+ },
58
+ defaultItem: {
59
+ type: Object
60
+ }
61
+ },
62
+ data() {
63
+ return {
64
+ showBottom: false,
65
+ val: '',
66
+ valName: '',
67
+ selectItem: {
68
+ K: [],
69
+ V: []
70
+ },
71
+ firstLoad: true
72
+ }
73
+ },
74
+ watch: {
75
+ defaultItem: {
76
+ handler: function (val, oldVal) {
77
+ console.log("multi-select -- defaultItem -- val,oldVal,firstLoad:", {val, oldVal, "firstLoad": this.firstLoad})
78
+ if (val && val.K && this.firstLoad === true) {
79
+ this.val = val.K
80
+ this.valName = val.V.join()
81
+ this.selectItem.K = val.K
82
+ this.selectItem.V = val.V
83
+ this.firstLoad = false
84
+ }
85
+ },
86
+ deep: true,
87
+ immediate: true,
88
+ }
89
+ },
90
+ methods: {
91
+ onOpen() {
92
+ this.showBottom = true
93
+ },
94
+ cancel() {
95
+ this.showBottom = false
96
+ },
97
+ onConfirm() {
98
+ if (this.selectItem && typeof this.selectItem === 'object' && this.selectItem.K && this.selectItem.V) {
99
+ this.val = this.selectItem.K
100
+ this.valName = this.selectItem.V.join()
101
+ this.$emit('on-ok', this.selectItem)
102
+ } else {
103
+ Toast.fail("查询条件选择失败,请联系管理员");
104
+ console.error("multi-select -- 查询条件选择失败,this.selectItem:", this.selectItem)
105
+ this.val = []
106
+ this.valName = ''
107
+ this.$emit("on-ok", {K: [], V: []})
108
+ }
109
+ this.showBottom = false
110
+ },
111
+ checkboxClick(data) {
112
+ console.log("multi-select -- checkboxClick:", data)
113
+ if (data && data.K) {
114
+ if (this.selectItem.K.includes(data.K)) {
115
+ this.selectItem.K.splice(this.selectItem.K.indexOf(data.K), 1)
116
+ this.selectItem.V.splice(this.selectItem.V.indexOf(data.V), 1)
117
+ } else {
118
+ this.selectItem.K.push(data.K)
119
+ this.selectItem.V.push(data.V)
120
+ }
121
+ }
122
+ }
123
+ }
124
+ }
125
+ </script>
126
+ <style scoped>
127
+ @import "../styles/index.less";
128
+ @import "./styles/css/index.css";
129
+ </style>
@@ -1,109 +1,109 @@
1
- <template>
2
- <div class="location-div">
3
- <div class="location-left">
4
- <p class="title">{{ locationData.name1 }}</p>
5
- <p class="name">{{ locationData.name2 }}</p>
6
- </div>
7
- <div class="location-middle">
8
- <p class="nav">{{ locationData.name3 }}</p>
9
- <img class="img" :src="imgSrc"/>
10
- <p class="nav">{{ locationData.name4 }}</p>
11
- </div>
12
- <div class="location-right">
13
- <p class="title">{{ locationData.name5 }}</p>
14
- <p class="name">{{ locationData.name6 }}</p>
15
- </div>
16
- </div>
17
-
18
- </template>
19
- <script>
20
- import location from "../assets/icon/interval/location.png"
21
-
22
- export default {
23
- name: 'LamboOrgSelectPage',
24
- components: {},
25
- props: {
26
- locationData: {
27
- type: Object,
28
- default: () => {
29
- }
30
- },
31
- },
32
- data() {
33
- return {
34
- imgSrc: location,
35
- }
36
- },
37
- methods: {},
38
- created() {
39
-
40
- },
41
- mounted() {
42
-
43
- }
44
- }
45
- </script>
46
- <style scoped>
47
- @import "../styles/index.less";
48
-
49
- .location-div {
50
- width: 100%;
51
- height: 72px;
52
- background-color: var(--scl-white-1);
53
- display: flex;
54
- align-items: center;
55
- justify-content: center;
56
- padding: 12px 14px;
57
- }
58
-
59
- .location-left {
60
- width: 100%;
61
- height: 100%;
62
- display: flex;
63
- flex-direction: column;
64
- align-items: flex-start;
65
- justify-content: center;
66
- }
67
-
68
- .location-right {
69
- width: 100%;
70
- height: 100%;
71
- display: flex;
72
- flex-direction: column;
73
- align-items: flex-end;
74
- justify-content: center;
75
- }
76
-
77
- .location-middle {
78
- width: 100%;
79
- height: 100%;
80
- display: flex;
81
- display: flex;
82
- flex-direction: column;
83
- align-items: center;
84
- justify-content: center;
85
-
86
- }
87
-
88
- .title {
89
- font-size: 11px;
90
- color: var(--scl-blue);
91
- margin-bottom: 8px;
92
- }
93
-
94
- .name {
95
- font-size: 14px;
96
- color: var(--scl-gray-1);
97
- }
98
-
99
- .img {
100
- width: 100%;
101
- height: auto;
102
- margin-bottom: 5px;
103
- }
104
-
105
- .nav {
106
- font-size: 10px;
107
- color: var(--scl-gray-4);
108
- }
109
- </style>
1
+ <template>
2
+ <div class="location-div">
3
+ <div class="location-left">
4
+ <p class="title">{{ locationData.name1 }}</p>
5
+ <p class="name">{{ locationData.name2 }}</p>
6
+ </div>
7
+ <div class="location-middle">
8
+ <p class="nav">{{ locationData.name3 }}</p>
9
+ <img class="img" :src="imgSrc"/>
10
+ <p class="nav">{{ locationData.name4 }}</p>
11
+ </div>
12
+ <div class="location-right">
13
+ <p class="title">{{ locationData.name5 }}</p>
14
+ <p class="name">{{ locationData.name6 }}</p>
15
+ </div>
16
+ </div>
17
+
18
+ </template>
19
+ <script>
20
+ import location from "../assets/icon/interval/location.png"
21
+
22
+ export default {
23
+ name: 'LamboOrgSelectPage',
24
+ components: {},
25
+ props: {
26
+ locationData: {
27
+ type: Object,
28
+ default: () => {
29
+ }
30
+ },
31
+ },
32
+ data() {
33
+ return {
34
+ imgSrc: location,
35
+ }
36
+ },
37
+ methods: {},
38
+ created() {
39
+
40
+ },
41
+ mounted() {
42
+
43
+ }
44
+ }
45
+ </script>
46
+ <style scoped>
47
+ @import "../styles/index.less";
48
+
49
+ .location-div {
50
+ width: 100%;
51
+ height: 72px;
52
+ background-color: var(--scl-white-1);
53
+ display: flex;
54
+ align-items: center;
55
+ justify-content: center;
56
+ padding: 12px 14px;
57
+ }
58
+
59
+ .location-left {
60
+ width: 100%;
61
+ height: 100%;
62
+ display: flex;
63
+ flex-direction: column;
64
+ align-items: flex-start;
65
+ justify-content: center;
66
+ }
67
+
68
+ .location-right {
69
+ width: 100%;
70
+ height: 100%;
71
+ display: flex;
72
+ flex-direction: column;
73
+ align-items: flex-end;
74
+ justify-content: center;
75
+ }
76
+
77
+ .location-middle {
78
+ width: 100%;
79
+ height: 100%;
80
+ display: flex;
81
+ display: flex;
82
+ flex-direction: column;
83
+ align-items: center;
84
+ justify-content: center;
85
+
86
+ }
87
+
88
+ .title {
89
+ font-size: 11px;
90
+ color: var(--scl-blue);
91
+ margin-bottom: 8px;
92
+ }
93
+
94
+ .name {
95
+ font-size: 14px;
96
+ color: var(--scl-gray-1);
97
+ }
98
+
99
+ .img {
100
+ width: 100%;
101
+ height: auto;
102
+ margin-bottom: 5px;
103
+ }
104
+
105
+ .nav {
106
+ font-size: 10px;
107
+ color: var(--scl-gray-4);
108
+ }
109
+ </style>
@@ -1,61 +1,61 @@
1
- <template>
2
- <div @click="change">
3
- <van-popup v-model:show="popShow" class="search-top-pop" position="top" :safe-area-inset-bottom="true">
4
- <div class="search-body">
5
- <slot name="content"></slot>
6
- </div>
7
- <div class="search-bottom-btn">
8
- <slot name="btn"></slot>
9
- </div>
10
- </van-popup>
11
- </div>
12
- </template>
13
- <script>
14
-
15
- export default {
16
- name: "LamboTopSearchPop",
17
- components: {},
18
- props: {
19
- show: {
20
- type: Boolean,
21
- default: false
22
- }
23
- },
24
- data() {
25
- return {
26
- popShow: false,
27
- }
28
- },
29
- watch: {
30
- show: function (newVal) {
31
- this.popShow = newVal
32
- },
33
- popShow: function (newVal) {
34
- this.$emit("on-close", newVal)
35
- },
36
- },
37
- methods: {
38
- change() {
39
- let searchRows = document.querySelectorAll('.search-row')
40
- Array.from(searchRows).forEach(function (row, index) {
41
- row.addEventListener('click', function () {
42
- Array.from(searchRows).forEach(function (row) {
43
- row.style.borderBottom = '1px solid var(--scl-white-2)'
44
- })
45
- row.style.borderBottom = '1px solid var(--scl-blue)'
46
- })
47
- })
48
- }
49
- }
50
- }
51
- </script>
52
- <style scoped>
53
- @import "../styles/index.less";
54
- @import "./styles/css/index.css";
55
-
56
- .search-top-pop {
57
- display: flex;
58
- flex-direction: column;
59
- height: 100%;
60
- }
61
- </style>
1
+ <template>
2
+ <div @click="change">
3
+ <van-popup v-model:show="popShow" class="search-top-pop" position="top" :safe-area-inset-bottom="true">
4
+ <div class="search-body">
5
+ <slot name="content"></slot>
6
+ </div>
7
+ <div class="search-bottom-btn">
8
+ <slot name="btn"></slot>
9
+ </div>
10
+ </van-popup>
11
+ </div>
12
+ </template>
13
+ <script>
14
+
15
+ export default {
16
+ name: "LamboTopSearchPop",
17
+ components: {},
18
+ props: {
19
+ show: {
20
+ type: Boolean,
21
+ default: false
22
+ }
23
+ },
24
+ data() {
25
+ return {
26
+ popShow: false,
27
+ }
28
+ },
29
+ watch: {
30
+ show: function (newVal) {
31
+ this.popShow = newVal
32
+ },
33
+ popShow: function (newVal) {
34
+ this.$emit("on-close", newVal)
35
+ },
36
+ },
37
+ methods: {
38
+ change() {
39
+ let searchRows = document.querySelectorAll('.search-row')
40
+ Array.from(searchRows).forEach(function (row, index) {
41
+ row.addEventListener('click', function () {
42
+ Array.from(searchRows).forEach(function (row) {
43
+ row.style.borderBottom = '1px solid var(--scl-white-2)'
44
+ })
45
+ row.style.borderBottom = '1px solid var(--scl-blue)'
46
+ })
47
+ })
48
+ }
49
+ }
50
+ }
51
+ </script>
52
+ <style scoped>
53
+ @import "../styles/index.less";
54
+ @import "./styles/css/index.css";
55
+
56
+ .search-top-pop {
57
+ display: flex;
58
+ flex-direction: column;
59
+ height: 100%;
60
+ }
61
+ </style>