@tongfun/tf-widget 0.1.19 → 0.1.20

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/README.md +46 -42
  2. package/lib/tf-widget.common.1.js +1 -1
  3. package/lib/tf-widget.common.js +472 -455
  4. package/lib/tf-widget.css +1 -1
  5. package/lib/tf-widget.umd.1.js +1 -1
  6. package/lib/tf-widget.umd.js +472 -455
  7. package/lib/tf-widget.umd.min.js +3 -3
  8. package/package/svg-icon/index.js +8 -8
  9. package/package/svg-icon/src/SvgIcon.vue +59 -59
  10. package/package/t-data-list/index.js +6 -6
  11. package/package/t-data-list/main.vue +193 -193
  12. package/package/t-data-list/src/condition-input/basic.vue +31 -31
  13. package/package/t-data-list/src/condition-input/date.vue +106 -106
  14. package/package/t-data-list/src/condition-input/index.vue +100 -100
  15. package/package/t-data-list/src/condition-input/input.vue +31 -31
  16. package/package/t-data-list/src/condition-input/number.vue +115 -115
  17. package/package/t-data-list/src/condition-input/select.vue +86 -86
  18. package/package/t-data-list/src/js/fieldTypeEnum.js +10 -10
  19. package/package/t-data-list/src/js/operatorEnum.js +108 -108
  20. package/package/t-data-list/src/js/qureyParamsEnum.js +4 -4
  21. package/package/t-data-list/src/js/util.js +34 -34
  22. package/package/t-data-list/src/mixins/button-controll-mixin.js +93 -93
  23. package/package/t-data-list/src/pushdown/push-down.vue +158 -158
  24. package/package/t-data-list/src/t-list-search.vue +36 -36
  25. package/package/t-data-list/src/t-plan/condition-always-item.vue +143 -143
  26. package/package/t-data-list/src/t-plan/condition-mult-item.vue +222 -222
  27. package/package/t-data-list/src/t-plan/index.vue +195 -195
  28. package/package/t-data-list/src/t-plan/plan-content.vue +389 -389
  29. package/package/t-data-list/src/t-table/index.vue +129 -129
  30. package/package/t-data-list/src/t-table/table-group-item-edit.vue +238 -238
  31. package/package/t-data-list/src/t-table/table-group-item.vue +87 -87
  32. package/package/t-data-list/src/t-table/table-group.vue +180 -180
  33. package/package/t-data-list/src/t-table/table-records-header-popover.vue +246 -246
  34. package/package/t-data-list/src/t-table/table-records-selected.vue +159 -159
  35. package/package/t-data-list/src/t-table/table-records.vue +337 -337
  36. package/package/t-input/children/address.vue +101 -101
  37. package/package/t-input/children/basic-display.vue +41 -41
  38. package/package/t-input/children/basic.vue +253 -253
  39. package/package/t-input/children/date.vue +89 -89
  40. package/package/t-input/children/group-components/group-dialog.vue +344 -344
  41. package/package/t-input/children/group.vue +126 -126
  42. package/package/t-input/children/input.vue +72 -72
  43. package/package/t-input/children/number.vue +74 -74
  44. package/package/t-input/children/select.vue +89 -89
  45. package/package/t-input/children/tfile/fiile-enclosure.vue +233 -233
  46. package/package/t-input/index.js +7 -7
  47. package/package/t-input/index.vue +337 -337
  48. package/package/t-input/tInputCache.js +24 -24
  49. package/package/tf-icon-picker/README.md +7 -7
  50. package/package/tf-icon-picker/index.js +8 -8
  51. package/package/tf-icon-picker/src/tf-icon-picker.vue +266 -266
  52. package/package/tf-layout/README.md +115 -115
  53. package/package/tf-layout/index.js +8 -8
  54. package/package/tf-layout/src/components/tf-labelbar.vue +382 -382
  55. package/package/tf-layout/src/components/tf-menu.vue +180 -180
  56. package/package/tf-layout/src/components/tf-right-menu.vue +89 -89
  57. package/package/tf-layout/src/components/tf-rotate-box.vue +50 -50
  58. package/package/tf-layout/src/tf-layout.vue +120 -120
  59. package/package/tf-widget/index.js +8 -8
  60. package/package/tf-widget/src/assets/common-input.less +10 -10
  61. package/package/tf-widget/src/children/basic-data/basic-data.vue +361 -361
  62. package/package/tf-widget/src/children/basic-data/dependcy/basic-data-selector.vue +1087 -1087
  63. package/package/tf-widget/src/children/basic-data/dependcy/common-table.vue +750 -750
  64. package/package/tf-widget/src/children/basic-data/dependcy/condition-filter.vue +519 -519
  65. package/package/tf-widget/src/children/basic-data/dependcy/pagination.vue +93 -93
  66. package/package/tf-widget/src/children/basic-data/dependcy/table-control.vue +240 -240
  67. package/package/tf-widget/src/children/basic-data/dependcy/view-picture.vue +108 -108
  68. package/package/tf-widget/src/children/date-time.vue +103 -103
  69. package/package/tf-widget/src/children/date.vue +103 -103
  70. package/package/tf-widget/src/children/decimal.vue +115 -115
  71. package/package/tf-widget/src/children/integer.vue +104 -104
  72. package/package/tf-widget/src/children/property.vue +59 -59
  73. package/package/tf-widget/src/children/single-line-text.vue +82 -82
  74. package/package/tf-widget/src/children/small-pictures.vue +223 -223
  75. package/package/tf-widget/src/children/text-area.vue +74 -74
  76. package/package/tf-widget/src/children/tf-select.vue +113 -113
  77. package/package/tf-widget/src/tf-widget.vue +175 -175
  78. package/package.json +44 -43
  79. package/src/api/edit.js +97 -97
  80. package/src/api/file-enclosure.js +26 -26
  81. package/src/api/push-down.js +19 -19
  82. package/src/api/table.js +294 -294
  83. package/src/api/tableV3.js +160 -186
  84. package/src/assets/images/icons/index.js +9 -9
  85. package/src/assets/images/icons/svg/add.svg +5 -5
  86. package/src/assets/images/icons/svg/push-down.svg +1 -1
  87. package/src/assets/images/icons/svg/remove.svg +1 -1
  88. package/src/assets/styles/common-table.less +202 -202
  89. package/src/directives/debounce.js +24 -0
  90. package/src/index.js +31 -31
  91. package/src/mixins/t-data-query-mixin.js +290 -290
  92. package/src/utils/auth.js +22 -22
  93. package/src/utils/request.js +42 -42
  94. package/src/utils/stato-anormale.js +59 -59
  95. package/src/utils/utils.js +109 -109
  96. package/src/utils/validate.js +84 -84
@@ -1,202 +1,202 @@
1
-
2
- //通用按钮
3
- .common-header-button{
4
- min-width: 2.5vw;
5
- height: 2.222vh;
6
- opacity: 1;
7
- background: #0c4c8e;
8
- border-color: #0c4c8e;
9
- border-radius: 2px;
10
- padding: 0;
11
- margin-right: 0.4166vw;
12
- ::v-deep span{
13
- opacity: 1;
14
- font-size: 0.625vw;
15
- font-family: Source Han Sans SC, Source Han Sans SC-Regular;
16
- font-weight: 400;
17
- color: #ffffff;
18
- }
19
- }
20
- // 统一按钮悬浮样式
21
- .common-header-button:hover{
22
- background: #0c4c8e;
23
- border-color: #0c4c8e;
24
- }
25
- // 统一按钮focus样式
26
- .common-header-button:focus{
27
- background: #0c4c8e;
28
- border-color: #0c4c8e;
29
- }
30
- // 去除button自带margin-left
31
- ::v-deep .el-button+.el-button{
32
- margin-left: 0;
33
- }
34
-
35
- //模态框取消按钮为浅色
36
- .close{
37
- background-color: #e5e5e5;
38
- border-color: #e5e5e5;
39
- ::v-deep span{
40
- color: #666;
41
- }
42
- }
43
- .close:hover{
44
- background-color: #e5e5e5;
45
- color: #666;
46
- border-color: #e5e5e5;
47
- }
48
- .close:focus{
49
- background-color: #e5e5e5;
50
- color: #666;
51
- border-color: #e5e5e5;
52
-
53
- }
54
-
55
-
56
- //通用下拉按钮
57
- .common-header-drop-button{
58
- height: 2.222vh;
59
- margin-right: 0.4166vw;
60
- ::v-deep .el-button-group{
61
- height: 100%;
62
- display: flex;
63
- }
64
- ::v-deep .el-button{
65
- width: 2.5vw;
66
- height: 2.222vh;
67
- opacity: 1;
68
- background: #0c4c8e;
69
- padding: 0;
70
- border-radius: 2px 0 0 2px;
71
- border: 1px solid #0c4c8e;
72
- margin-right: 0;
73
- }
74
- ::v-deep span{
75
- font-size: 0.625vw;
76
- font-family: Source Han Sans SC, Source Han Sans SC-Regular;
77
- }
78
- ::v-deep .el-dropdown__caret-button{
79
- width: 0.625vw;
80
- height: 2.222vh;
81
- background-color: #87a7c8;
82
- border-radius: 0 2px 2px 0;
83
- padding: 0;
84
- border: 0 solid #87a7c8;
85
- .el-dropdown__icon, el-icon-arrow-down{
86
- margin: 0;
87
- }
88
- }
89
- ::v-deep .el-dropdown__caret-button::before{
90
- background-color: #87a7c8;
91
- }
92
- ::v-deep .el-dropdown__icon{
93
- width: 0.625vw;
94
- font-size: 0.625vw;
95
- }
96
- }
97
-
98
- // 通用下拉按钮(文字较多时)
99
- .common-header-drop-button-more{
100
- ::v-deep .el-button{
101
- width: 3.5vw;
102
- }
103
- ::v-deep .el-dropdown__caret-button{
104
- width: 0.625vw;
105
- }
106
- }
107
-
108
- .common-table{
109
- //表头配置
110
- ::v-deep .elx-header--row{
111
- .elx-header--column:nth-child(1){
112
- .elx-cell{
113
- width: 63px !important;
114
- height: 3.2407vh !important;
115
- }
116
- }
117
- }
118
- ::v-deep .elx-table--header{
119
- color: #085497;
120
- font-size: 0.7291vw;
121
- background: #edf0f5;
122
- border-radius: 4px 4px 0 0;
123
- .elx-cell{
124
- width: 100% !important;
125
- padding: 0;
126
- .elx-cell--title{
127
- width: 100% !important;
128
- }
129
- }
130
- }
131
- ::v-deep .elx-header--column{
132
- font-weight: normal;
133
- height: 3.2407vh !important;
134
- background-image: none !important;
135
- }
136
- ::v-deep .elx-body--column{
137
- height: 3.2407vh !important;
138
- border-top: 1px solid #E0EAFC;
139
- border-right: 1px solid #E0EAFC;
140
- font-size: 0.625vw;
141
- font-weight: normal;
142
- color: #666666;
143
- background-image: none !important;
144
- }
145
- // 首列左侧增加border
146
- ::v-deep .elx-body--row{
147
- .elx-body--column:nth-child(1){
148
- border-left: 1px solid #E0EAFC;
149
- }
150
- }
151
- // 末行底部增加border
152
- ::v-deep .elx-body--row:nth-last-child(1){
153
- .elx-body--column{
154
- border-bottom: 1px solid #E0EAFC;
155
- }
156
- }
157
-
158
- // ::v-deep .elx-table--body{
159
- // //border-collapse: collapse;
160
- // }
161
- ::v-deep .row--current{
162
- background: #EFF7FF;
163
- }
164
- ::v-deep .elx-table--body-wrapper{
165
- background: #FFFFFF;
166
- height: 70vh;
167
- }
168
- @media screen and (max-width: 1366px){
169
- ::v-deep .elx-table--body-wrapper{
170
- height: 65vh;
171
- }
172
- }
173
- ::v-deep .fixed-right--wrapper{
174
- border: none;
175
- }
176
- ::v-deep .elx-table--footer-wrapper{
177
- border: none;
178
- }
179
- ::v-deep .elx-footer--column{
180
- background-image: none !important;
181
- }
182
- // 合计行
183
- ::v-deep .elx-footer--row{
184
- td {
185
- height: 3.2407vh !important;
186
- //border-top: 1px solid #E0EAFC;
187
- }
188
- }
189
- // 表格控制按钮增大
190
- ::v-deep .el-icon-setting:before{
191
- font-size: 1.0416vw;
192
- }
193
- /deep/ .el-table__fixed-right {
194
- height: 100% !important; //设置高优先,以覆盖内联样式
195
- }
196
- /deep/ .el-table__fixed {
197
- height: 110px !important; //设置高优先,以覆盖内联样式
198
- }
199
- ::v-deep .elx-table--fixed-right-wrapper.scrolling--middle{
200
- box-shadow: none; // 去除列表控制的fix显示shadow
201
- }
202
- }
1
+
2
+ //通用按钮
3
+ .common-header-button{
4
+ min-width: 2.5vw;
5
+ height: 2.222vh;
6
+ opacity: 1;
7
+ background: #0c4c8e;
8
+ border-color: #0c4c8e;
9
+ border-radius: 2px;
10
+ padding: 0;
11
+ margin-right: 0.4166vw;
12
+ ::v-deep span{
13
+ opacity: 1;
14
+ font-size: 0.625vw;
15
+ font-family: Source Han Sans SC, Source Han Sans SC-Regular;
16
+ font-weight: 400;
17
+ color: #ffffff;
18
+ }
19
+ }
20
+ // 统一按钮悬浮样式
21
+ .common-header-button:hover{
22
+ background: #0c4c8e;
23
+ border-color: #0c4c8e;
24
+ }
25
+ // 统一按钮focus样式
26
+ .common-header-button:focus{
27
+ background: #0c4c8e;
28
+ border-color: #0c4c8e;
29
+ }
30
+ // 去除button自带margin-left
31
+ ::v-deep .el-button+.el-button{
32
+ margin-left: 0;
33
+ }
34
+
35
+ //模态框取消按钮为浅色
36
+ .close{
37
+ background-color: #e5e5e5;
38
+ border-color: #e5e5e5;
39
+ ::v-deep span{
40
+ color: #666;
41
+ }
42
+ }
43
+ .close:hover{
44
+ background-color: #e5e5e5;
45
+ color: #666;
46
+ border-color: #e5e5e5;
47
+ }
48
+ .close:focus{
49
+ background-color: #e5e5e5;
50
+ color: #666;
51
+ border-color: #e5e5e5;
52
+
53
+ }
54
+
55
+
56
+ //通用下拉按钮
57
+ .common-header-drop-button{
58
+ height: 2.222vh;
59
+ margin-right: 0.4166vw;
60
+ ::v-deep .el-button-group{
61
+ height: 100%;
62
+ display: flex;
63
+ }
64
+ ::v-deep .el-button{
65
+ width: 2.5vw;
66
+ height: 2.222vh;
67
+ opacity: 1;
68
+ background: #0c4c8e;
69
+ padding: 0;
70
+ border-radius: 2px 0 0 2px;
71
+ border: 1px solid #0c4c8e;
72
+ margin-right: 0;
73
+ }
74
+ ::v-deep span{
75
+ font-size: 0.625vw;
76
+ font-family: Source Han Sans SC, Source Han Sans SC-Regular;
77
+ }
78
+ ::v-deep .el-dropdown__caret-button{
79
+ width: 0.625vw;
80
+ height: 2.222vh;
81
+ background-color: #87a7c8;
82
+ border-radius: 0 2px 2px 0;
83
+ padding: 0;
84
+ border: 0 solid #87a7c8;
85
+ .el-dropdown__icon, el-icon-arrow-down{
86
+ margin: 0;
87
+ }
88
+ }
89
+ ::v-deep .el-dropdown__caret-button::before{
90
+ background-color: #87a7c8;
91
+ }
92
+ ::v-deep .el-dropdown__icon{
93
+ width: 0.625vw;
94
+ font-size: 0.625vw;
95
+ }
96
+ }
97
+
98
+ // 通用下拉按钮(文字较多时)
99
+ .common-header-drop-button-more{
100
+ ::v-deep .el-button{
101
+ width: 3.5vw;
102
+ }
103
+ ::v-deep .el-dropdown__caret-button{
104
+ width: 0.625vw;
105
+ }
106
+ }
107
+
108
+ .common-table{
109
+ //表头配置
110
+ ::v-deep .elx-header--row{
111
+ .elx-header--column:nth-child(1){
112
+ .elx-cell{
113
+ width: 63px !important;
114
+ height: 3.2407vh !important;
115
+ }
116
+ }
117
+ }
118
+ ::v-deep .elx-table--header{
119
+ color: #085497;
120
+ font-size: 0.7291vw;
121
+ background: #edf0f5;
122
+ border-radius: 4px 4px 0 0;
123
+ .elx-cell{
124
+ width: 100% !important;
125
+ padding: 0;
126
+ .elx-cell--title{
127
+ width: 100% !important;
128
+ }
129
+ }
130
+ }
131
+ ::v-deep .elx-header--column{
132
+ font-weight: normal;
133
+ height: 3.2407vh !important;
134
+ background-image: none !important;
135
+ }
136
+ ::v-deep .elx-body--column{
137
+ height: 3.2407vh !important;
138
+ border-top: 1px solid #E0EAFC;
139
+ border-right: 1px solid #E0EAFC;
140
+ font-size: 0.625vw;
141
+ font-weight: normal;
142
+ color: #666666;
143
+ background-image: none !important;
144
+ }
145
+ // 首列左侧增加border
146
+ ::v-deep .elx-body--row{
147
+ .elx-body--column:nth-child(1){
148
+ border-left: 1px solid #E0EAFC;
149
+ }
150
+ }
151
+ // 末行底部增加border
152
+ ::v-deep .elx-body--row:nth-last-child(1){
153
+ .elx-body--column{
154
+ border-bottom: 1px solid #E0EAFC;
155
+ }
156
+ }
157
+
158
+ // ::v-deep .elx-table--body{
159
+ // //border-collapse: collapse;
160
+ // }
161
+ ::v-deep .row--current{
162
+ background: #EFF7FF;
163
+ }
164
+ ::v-deep .elx-table--body-wrapper{
165
+ background: #FFFFFF;
166
+ height: 70vh;
167
+ }
168
+ @media screen and (max-width: 1366px){
169
+ ::v-deep .elx-table--body-wrapper{
170
+ height: 65vh;
171
+ }
172
+ }
173
+ ::v-deep .fixed-right--wrapper{
174
+ border: none;
175
+ }
176
+ ::v-deep .elx-table--footer-wrapper{
177
+ border: none;
178
+ }
179
+ ::v-deep .elx-footer--column{
180
+ background-image: none !important;
181
+ }
182
+ // 合计行
183
+ ::v-deep .elx-footer--row{
184
+ td {
185
+ height: 3.2407vh !important;
186
+ //border-top: 1px solid #E0EAFC;
187
+ }
188
+ }
189
+ // 表格控制按钮增大
190
+ ::v-deep .el-icon-setting:before{
191
+ font-size: 1.0416vw;
192
+ }
193
+ /deep/ .el-table__fixed-right {
194
+ height: 100% !important; //设置高优先,以覆盖内联样式
195
+ }
196
+ /deep/ .el-table__fixed {
197
+ height: 110px !important; //设置高优先,以覆盖内联样式
198
+ }
199
+ ::v-deep .elx-table--fixed-right-wrapper.scrolling--middle{
200
+ box-shadow: none; // 去除列表控制的fix显示shadow
201
+ }
202
+ }
@@ -0,0 +1,24 @@
1
+ export default {
2
+ bind: function (el, { value }) {
3
+ const time = value || 2000
4
+ el._flag = true
5
+ el._timer = null
6
+ el.handler = (e) => {
7
+ if (!el._flag) {
8
+ // 无需执行时的操作
9
+ e.stopImmediatePropagation()
10
+ return
11
+ }
12
+ el._flag = false
13
+ el._timer = setTimeout(() => {
14
+ el._flag = true
15
+ clearTimeout(el._timer)
16
+ el._timer = null
17
+ }, time)
18
+ }
19
+ el.addEventListener('click', el.handler, true)
20
+ },
21
+ unbind: function (el, binding) {
22
+ el.removeEventListener('click', el.handler, true)
23
+ }
24
+ }
package/src/index.js CHANGED
@@ -1,31 +1,31 @@
1
-
2
- import TfWidget from '../package/tf-widget'
3
- import SvgIcon from '../package/svg-icon'
4
- import TfLayout from '../package/tf-layout'
5
- import TDataList from '../package/t-data-list'
6
- import Tinput from '../package/t-input'
7
- import TfIconPicker from '../package/tf-icon-picker'
8
- const components = [
9
- TfWidget,
10
- SvgIcon,
11
- TfLayout,
12
- TDataList,
13
- Tinput,
14
- TfIconPicker
15
- ]
16
-
17
- const install = function (Vue) {
18
- components.forEach(component => {
19
- Vue.component(component.name, component)
20
- })
21
- }
22
-
23
- export default {
24
- install,
25
- TfWidget,
26
- SvgIcon,
27
- TfLayout,
28
- TDataList,
29
- Tinput,
30
- TfIconPicker
31
- }
1
+
2
+ import TfWidget from '../package/tf-widget'
3
+ import SvgIcon from '../package/svg-icon'
4
+ import TfLayout from '../package/tf-layout'
5
+ import TDataList from '../package/t-data-list'
6
+ import Tinput from '../package/t-input'
7
+ import TfIconPicker from '../package/tf-icon-picker'
8
+ const components = [
9
+ TfWidget,
10
+ SvgIcon,
11
+ TfLayout,
12
+ TDataList,
13
+ Tinput,
14
+ TfIconPicker
15
+ ]
16
+
17
+ const install = function (Vue) {
18
+ components.forEach(component => {
19
+ Vue.component(component.name, component)
20
+ })
21
+ }
22
+
23
+ export default {
24
+ install,
25
+ TfWidget,
26
+ SvgIcon,
27
+ TfLayout,
28
+ TDataList,
29
+ Tinput,
30
+ TfIconPicker
31
+ }