@tongfun/tf-widget 0.1.27 → 0.1.30

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 (100) hide show
  1. package/README.md +12 -0
  2. package/lib/tf-widget.common.js +341 -281
  3. package/lib/tf-widget.css +1 -1
  4. package/lib/tf-widget.umd.js +341 -281
  5. package/lib/tf-widget.umd.min.js +4 -4
  6. package/package.json +1 -1
  7. package/package/svg-icon/index.js +0 -8
  8. package/package/svg-icon/src/SvgIcon.vue +0 -59
  9. package/package/t-data-list/index.js +0 -6
  10. package/package/t-data-list/main.vue +0 -193
  11. package/package/t-data-list/src/condition-input/basic.vue +0 -31
  12. package/package/t-data-list/src/condition-input/date.vue +0 -106
  13. package/package/t-data-list/src/condition-input/index.vue +0 -100
  14. package/package/t-data-list/src/condition-input/input.vue +0 -31
  15. package/package/t-data-list/src/condition-input/number.vue +0 -115
  16. package/package/t-data-list/src/condition-input/select.vue +0 -86
  17. package/package/t-data-list/src/js/fieldTypeEnum.js +0 -10
  18. package/package/t-data-list/src/js/operatorEnum.js +0 -108
  19. package/package/t-data-list/src/js/qureyParamsEnum.js +0 -4
  20. package/package/t-data-list/src/js/util.js +0 -34
  21. package/package/t-data-list/src/mixins/button-controll-mixin.js +0 -93
  22. package/package/t-data-list/src/pushdown/push-down.vue +0 -158
  23. package/package/t-data-list/src/t-list-search.vue +0 -36
  24. package/package/t-data-list/src/t-plan/condition-always-item.vue +0 -143
  25. package/package/t-data-list/src/t-plan/condition-mult-item.vue +0 -222
  26. package/package/t-data-list/src/t-plan/index.vue +0 -195
  27. package/package/t-data-list/src/t-plan/plan-content.vue +0 -389
  28. package/package/t-data-list/src/t-table/index.vue +0 -129
  29. package/package/t-data-list/src/t-table/table-group-item-edit.vue +0 -238
  30. package/package/t-data-list/src/t-table/table-group-item.vue +0 -87
  31. package/package/t-data-list/src/t-table/table-group.vue +0 -180
  32. package/package/t-data-list/src/t-table/table-records-header-popover.vue +0 -246
  33. package/package/t-data-list/src/t-table/table-records-selected.vue +0 -159
  34. package/package/t-data-list/src/t-table/table-records.vue +0 -336
  35. package/package/t-input/children/address.vue +0 -101
  36. package/package/t-input/children/basic-display.vue +0 -41
  37. package/package/t-input/children/basic.vue +0 -261
  38. package/package/t-input/children/date.vue +0 -84
  39. package/package/t-input/children/group-components/group-dialog.vue +0 -344
  40. package/package/t-input/children/group.vue +0 -126
  41. package/package/t-input/children/input.vue +0 -67
  42. package/package/t-input/children/number.vue +0 -71
  43. package/package/t-input/children/select.vue +0 -86
  44. package/package/t-input/children/tfile/fiile-enclosure.vue +0 -233
  45. package/package/t-input/children/tfile/file-img/comp.png +0 -0
  46. package/package/t-input/children/tfile/file-img/excel.png +0 -0
  47. package/package/t-input/children/tfile/file-img/img.png +0 -0
  48. package/package/t-input/children/tfile/file-img/pdf.png +0 -0
  49. package/package/t-input/children/tfile/file-img/word.png +0 -0
  50. package/package/t-input/index.js +0 -7
  51. package/package/t-input/index.vue +0 -337
  52. package/package/t-input/tInputCache.js +0 -24
  53. package/package/tf-icon-picker/README.md +0 -8
  54. package/package/tf-icon-picker/index.js +0 -8
  55. package/package/tf-icon-picker/src/tf-icon-picker.vue +0 -266
  56. package/package/tf-layout/README.md +0 -115
  57. package/package/tf-layout/index.js +0 -8
  58. package/package/tf-layout/src/components/tf-labelbar.vue +0 -394
  59. package/package/tf-layout/src/components/tf-menu.vue +0 -180
  60. package/package/tf-layout/src/components/tf-right-menu.vue +0 -89
  61. package/package/tf-layout/src/components/tf-rotate-box.vue +0 -50
  62. package/package/tf-layout/src/tf-layout.vue +0 -140
  63. package/package/tf-widget/index.js +0 -8
  64. package/package/tf-widget/src/assets/common-input.less +0 -11
  65. package/package/tf-widget/src/children/basic-data/basic-data.vue +0 -361
  66. package/package/tf-widget/src/children/basic-data/dependcy/basic-data-selector.vue +0 -1087
  67. package/package/tf-widget/src/children/basic-data/dependcy/common-table.vue +0 -750
  68. package/package/tf-widget/src/children/basic-data/dependcy/condition-filter.vue +0 -519
  69. package/package/tf-widget/src/children/basic-data/dependcy/pagination.vue +0 -93
  70. package/package/tf-widget/src/children/basic-data/dependcy/table-control.vue +0 -240
  71. package/package/tf-widget/src/children/basic-data/dependcy/view-picture.vue +0 -108
  72. package/package/tf-widget/src/children/date-time.vue +0 -103
  73. package/package/tf-widget/src/children/date.vue +0 -103
  74. package/package/tf-widget/src/children/decimal.vue +0 -115
  75. package/package/tf-widget/src/children/integer.vue +0 -104
  76. package/package/tf-widget/src/children/property.vue +0 -59
  77. package/package/tf-widget/src/children/single-line-text.vue +0 -82
  78. package/package/tf-widget/src/children/small-pictures.vue +0 -223
  79. package/package/tf-widget/src/children/text-area.vue +0 -74
  80. package/package/tf-widget/src/children/tf-select.vue +0 -113
  81. package/package/tf-widget/src/tf-widget.vue +0 -175
  82. package/src/api/edit.js +0 -97
  83. package/src/api/file-enclosure.js +0 -26
  84. package/src/api/push-down.js +0 -19
  85. package/src/api/table.js +0 -294
  86. package/src/api/tableV3.js +0 -166
  87. package/src/assets/images/icons/index.js +0 -9
  88. package/src/assets/images/icons/svg/add.svg +0 -5
  89. package/src/assets/images/icons/svg/push-down.svg +0 -2
  90. package/src/assets/images/icons/svg/remove.svg +0 -1
  91. package/src/assets/images/icons/svg/table-empty.svg +0 -1
  92. package/src/assets/styles/common-table.less +0 -202
  93. package/src/directives/debounce.js +0 -24
  94. package/src/index.js +0 -31
  95. package/src/mixins/t-data-query-mixin.js +0 -293
  96. package/src/utils/auth.js +0 -22
  97. package/src/utils/request.js +0 -42
  98. package/src/utils/stato-anormale.js +0 -59
  99. package/src/utils/utils.js +0 -109
  100. package/src/utils/validate.js +0 -84
@@ -1,337 +0,0 @@
1
- <template>
2
- <div>
3
- <component
4
- :is="typeRelations[type]"
5
- v-if="entity || notForm"
6
- class="common-input"
7
- :value="value"
8
- :target="target"
9
- :show-field="showField"
10
- v-bind="property"
11
- :common-flag="commonFlag"
12
- :append-to-body="false"
13
- :modal-append-to-body="true"
14
- @selected="handleSelected"
15
- @handleSelected="handleSelected"
16
- @input="handleInput"
17
- @isDel="handleDel"
18
- @change="handleChange"
19
- @delete="$emit('delete')"
20
- @suggestSelected="$emit('suggestSelected',$event)"
21
- />
22
-
23
- <el-form-item v-else :label-width="labelWidth" :prop="prop">
24
- <template v-slot:label>
25
- <el-tooltip effect="dark" :content="title" placement="top">
26
- <span>{{ title }}</span>
27
- </el-tooltip>
28
- </template>
29
- <component
30
- :is="typeRelations[type]"
31
- v-if="type !== 'basicCus'"
32
- class="common-input"
33
- :value="value"
34
- :target="target"
35
- :show-field="showField"
36
- :common-flag="commonFlag"
37
- :append-to-body="true"
38
- :modal-append-to-body="false"
39
- v-bind="property"
40
- @isDel="handleDel"
41
- @selected="handleSelected"
42
- @handleSelected="handleSelected"
43
- @input="handleInput"
44
- @change="handleChange"
45
- @delete="$emit('delete')"
46
- @suggestSelected="$emit('suggestSelected',$event)"
47
- />
48
-
49
- <slot />
50
- </el-form-item>
51
- </div>
52
- </template>
53
- <script>
54
- import tinput from './children/input.vue'
55
- import tselect from './children/select.vue'
56
- import tdate from './children/date.vue'
57
- import tnumber from './children/number.vue'
58
- import tbasicDisplay from './children/basic-display'
59
- import tfile from './children/tfile/fiile-enclosure.vue'
60
- import tbasic from './children/basic.vue'
61
- import tGroup from './children/group.vue'
62
- import tAddress from './children/address.vue'
63
- import basicData from '../tf-widget/src/children/basic-data/basic-data.vue'
64
- import { getTableIdByTableName } from '@/api/edit.js'
65
- export default {
66
- name: 'Tinput',
67
- components: {
68
- tinput, tnumber, tselect, tdate, tfile, tbasic, tbasicDisplay, basicData, tGroup, tAddress
69
- },
70
- props: {
71
- // 双向绑定
72
- value: {
73
- type: [String, Number, Object, Array],
74
- default: undefined
75
- },
76
- /**
77
- * 控件类型
78
- * input : 文本输入
79
- * select: 下拉选择
80
- * date 日期
81
- * datetime 日期时间
82
- * integer 整数
83
- * decimal 小数
84
- * text 文本域
85
- * basicDisplay 基础资料展示字段,用于创建人等永远不能被填写的字段
86
- * basicData 通用的基础资料
87
- * basicCus 非通用的基础资料,
88
- */
89
- type: {
90
- type: String,
91
- default: 'input'
92
- },
93
- /**
94
- * 控件属性
95
- */
96
- // el-form-item 属性
97
- labelWidth: {
98
- type: String,
99
- default: '150px'
100
- },
101
- // el-form-item属性
102
- title: {
103
- type: String,
104
- default: ''
105
- },
106
- // el form item属性,用来指定校验的属性的规则
107
- prop: {
108
- type: String,
109
- default: ''
110
- },
111
- // 不在表单中使用这个控件,默认在表单中
112
- notForm: {
113
- type: Boolean,
114
- default: false
115
- },
116
- // 在单据体中显示,当使用这个属性,默认开启not form
117
- entity: {
118
- type: Boolean,
119
- default: false
120
- },
121
- /**
122
- * 子组件的通用属性
123
- */
124
- // 默认值
125
- defaultValue: {
126
- type: String,
127
- default: ''
128
- },
129
- // 关闭
130
- disabled: {
131
- type: Boolean,
132
- default: false
133
- },
134
- // 提示
135
- placeholder: {
136
- type: String,
137
- default: ''
138
- },
139
- /**
140
- * select枚举类型属性
141
- */
142
- // 下拉框属性,获取下拉的选项的参数
143
- enumType: {
144
- type: String,
145
- default: ''
146
- },
147
-
148
- /**
149
- * 数值类型属性
150
- */
151
- // 小数属性,保留的小数个数
152
- percision: {
153
- type: Number,
154
- default: 2
155
- },
156
-
157
- /**
158
- * 多行文本文本类型
159
- */
160
- // 文本域的行数
161
- rows: {
162
- type: Number,
163
- default: 3
164
- },
165
-
166
- /**
167
- * 基础资料类型属性
168
- */
169
- // 基础资料相关信息的网络请求地址,和基础资料相关的一个请求参数
170
- target: {
171
- type: String,
172
- default: ''
173
- },
174
- // 基础资料的搜索限制条件,将会被解析成多个高级过滤条件,拼接到查询条件里面
175
- // 格式如下:{a:{name:'xx',id:'xx'}
176
- limitation: {
177
- type: Object,
178
- default: () => {}
179
- },
180
- // 指定基础资料显示哪个属性作为展示的字段
181
- // 没有值使用后端提供的配置,有值则覆盖后端的配置
182
- displayField: {
183
- type: String,
184
- default: null
185
- },
186
- // todo:这两个属性功能已经重复,需要对接 // 基础资料需要展示的数据
187
- showField: {
188
- type: String,
189
- default: ''
190
- },
191
- // 通用基础资料的表名
192
- tableConfig: {
193
- type: Object,
194
- default: function () {
195
- return {
196
- enum: {},
197
- name: ''
198
- }
199
- }
200
- },
201
- // 此标识用于写死的组件,将事件发射出去自己处理 ???????????
202
- commonFlag: {
203
- type: Boolean,
204
- default: false
205
- },
206
- // 附件上传的文件列表
207
- fileList: {
208
- type: Array,
209
- default: () => []
210
- }
211
-
212
- },
213
- provide () {
214
- return {
215
- entity: this.entity,
216
- target: this.target,
217
- enumType: this.enumType,
218
- placeholder: this.placeholder,
219
- // 是否是日期时间控件
220
- datetime: this.type === 'datetime',
221
- // 小数的情况下,指定小数的精度
222
- percision: this.type === 'decimal' ? this.percision : null,
223
- // 是否是文本域控件
224
- text: this.type === 'text',
225
- // 文本域的行数
226
- rows: this.type === 'text' ? this.rows : null,
227
- defaultValue: this.defaultValue
228
- }
229
- },
230
- data () {
231
- return {
232
- typeRelations: {
233
- input: 'tinput',
234
- text: 'tinput',
235
- date: 'tdate',
236
- datetime: 'tdate',
237
- integer: 'tnumber',
238
- decimal: 'tnumber',
239
- select: 'tselect',
240
- basicDisplay: 'tbasicDisplay',
241
- basicData: 'basicData',
242
- basic: 'tbasic',
243
- file: 'tfile',
244
- group: 'tGroup',
245
- address: 'tAddress'
246
- }
247
- }
248
- },
249
- computed: {
250
- // 部分属性加入到计算属性传递下去,不使用provide的属性是为了获取响应式支持
251
- property () {
252
- return {
253
- disabled: this.disabled,
254
- tableId: this.tableConfig.enum[this.tableConfig.name] || null,
255
- fileList: this.fileList,
256
- displayField: this.displayField,
257
- limitation: this.limitation
258
- }
259
- }
260
- },
261
- created () {
262
- if (this.type === 'basicData') {
263
- this.getTableId()
264
- }
265
- },
266
- methods: {
267
- // 通知触发了删除事件
268
- handleDel () {
269
- this.$emit('isDel')
270
- },
271
- // 基础资料的方法
272
- handleSelected (rows) {
273
- this.$emit('selected', rows)
274
- },
275
- // 选中的值发生了变化,目前仅仅是为了 枚举/下拉类型使用
276
- handleChange (newValue) {
277
- this.$emit('change', newValue)
278
- },
279
- handleInput (value) {
280
- this.$emit('input', value)
281
- },
282
- async getTableId () {
283
- const conf = this.tableConfig
284
- // 如果已经存在了tableId,则不进行获取
285
- if (conf.enum[conf.name]) {
286
- return
287
- }
288
- const res = await getTableIdByTableName(conf.name)
289
- if (res.code !== 0) {
290
- return this.$message.error(res.msg)
291
- }
292
- conf.enum[conf.name] = res.data
293
- }
294
- }
295
- }
296
- </script>
297
-
298
- <style scoped lang='less'>
299
- .common-input {
300
- // 即便是disable,也不改变背景色
301
- // 采用直接子元素的方式避免影响到分页的样式
302
- ::v-deep >.el-input__inner {
303
- background: #fff !important;
304
- border:none;
305
- border-bottom:1px solid #DCDCDC;
306
- border-radius: 0;
307
- }
308
- ::v-deep>div{
309
- >div{
310
- >.el-input__inner{
311
- background: #fff !important;
312
- border:none;
313
- border-bottom:1px solid #DCDCDC;
314
- border-radius: 0;
315
-
316
- }
317
- >div{
318
- >.el-input__inner{
319
- background: #fff !important;
320
- border:none;
321
- border-bottom:1px solid #DCDCDC;
322
- border-radius: 0;
323
- }
324
- }
325
- }
326
- }
327
-
328
- }
329
- .el-form-item{
330
- ::v-deep .el-form-item__label{
331
- overflow: hidden;
332
- white-space: nowrap;
333
- text-overflow: ellipsis;
334
- }
335
- }
336
-
337
- </style>
@@ -1,24 +0,0 @@
1
- const ProxyCreateSingleton = (function () {
2
- let instance = null
3
- return function () {
4
- if (instance) {
5
- return instance
6
- }
7
- instance = new InputData()
8
- return instance
9
- }
10
- })()
11
- class InputData {
12
- #cacheData = new Map()
13
- getCacheData (key) {
14
- if (key) {
15
- return this.#cacheData.get(key)
16
- }
17
- return this.#cacheData
18
- }
19
-
20
- setCacheData (key, value) {
21
- this.#cacheData.set(key, value)
22
- }
23
- }
24
- export default ProxyCreateSingleton
@@ -1,8 +0,0 @@
1
- # tf-icon-picker
2
-
3
- 1. 参数
4
- 1. width (Number) 选择图标区域宽度,默认值 400。
5
- 2. placement (string) 选择图标展示区域,默认值 'bottom', 可选值: 'top', 'left', 'right', 'bottom'。
6
- 3. hint (string) 展示图标选择标题。
7
-
8
- 2.
@@ -1,8 +0,0 @@
1
- import TfIconPicker from './src/tf-icon-picker'
2
-
3
- /* istanbul ignore next */
4
- TfIconPicker.install = function (Vue) {
5
- Vue.component(TfIconPicker.name, TfIconPicker)
6
- }
7
-
8
- export default TfIconPicker
@@ -1,266 +0,0 @@
1
- <template>
2
- <div>
3
- <el-popover
4
- v-model="visible"
5
- :placement="placement"
6
- :width="width"
7
- trigger="manual"
8
- >
9
- <div class="content-view">
10
- <div class="search-box">
11
- <svg-icon
12
- v-if="selectIconClass"
13
- :icon-class="selectIconClass.font_class"
14
- />
15
- <span v-if="selectIconClass">{{ selectIconClass.name }}</span>
16
- <el-input
17
- v-model="search"
18
- size="mini"
19
- style="width: 50%"
20
- clearable
21
- @clear="cleanSearch"
22
- />
23
- <el-button
24
- size="mini"
25
- @click="searchInfo"
26
- >搜索</el-button>
27
- </div>
28
- <el-empty
29
- v-if="!iconList || iconList.length === 0"
30
- description="暂无数据!"
31
- style="height: 270px;width: 100%"
32
- />
33
- <div
34
- v-for="item in iconList"
35
- :key="item.unicode_decimal"
36
- class="icon-item"
37
- @click="selectIcon(item)"
38
- >
39
- <el-tooltip
40
- placement="top"
41
- >
42
- <div slot="content">
43
- <span>图标名称: {{ item.name }}</span>
44
- <br>
45
- <br>
46
- <span>class: {{ item.font_class }}</span>
47
- </div>
48
- <div class="icon-box">
49
-
50
- <svg-icon
51
- :icon-class="item.font_class"
52
- />
53
- <span :title="item.name">{{ item.name }}</span>
54
- </div>
55
- </el-tooltip>
56
- </div>
57
- <div class="paging">
58
- <span>第 {{ pagination + 1 }} 页</span>
59
- <el-pagination
60
- small
61
- background
62
- layout="total, prev, next"
63
- :total="total"
64
- @current-change="handleCurrentChange"
65
- />
66
-
67
- <el-button
68
- type="info"
69
- size="mini"
70
- @click="visible = false"
71
- >取消</el-button>
72
- <el-button
73
- class="button"
74
- size="mini"
75
- @click="select"
76
- >确定</el-button>
77
- </div>
78
- </div>
79
- <el-button
80
- slot="reference"
81
- class="button"
82
- :size="bottomSize"
83
- @click="visible = !visible; selectIconClass = null"
84
- >{{ hint }}</el-button>
85
- </el-popover>
86
- </div>
87
- </template>
88
-
89
- <script>
90
- import axios from 'axios'
91
- export default {
92
- name: 'TfIconPicker',
93
- props: {
94
- width: {
95
- default: 400,
96
- type: Number
97
- },
98
- placement: {
99
- default: 'bottom',
100
- type: String
101
- },
102
- bottomSize: {
103
- default: 'small',
104
- type: String
105
- },
106
- hint: {
107
- default: '选择图标',
108
- type: String
109
- }
110
- },
111
- data () {
112
- return {
113
- glyphsList: null,
114
- allIconList: null,
115
- pagination: 0,
116
- iconList: null,
117
- total: 0,
118
- selectIconClass: null,
119
- visible: false,
120
- search: null
121
- }
122
- },
123
- watch: {
124
- pagination: {
125
- handler: function (newValue) {
126
- if (!this.glyphsList) return
127
- this.iconList = this.allIconList.slice(newValue * 20, (newValue + 1) * 20)
128
- },
129
- immediate: true
130
- }
131
- },
132
- created () {
133
- axios.get('/icon-list.json').then((res) => {
134
- if (res.status === 200) {
135
- const { glyphs: glyphsList } = res.data
136
- this.glyphsList = glyphsList.sort((a, b) => a.font_class - b.font_class)
137
- this.allIconList = JSON.parse(JSON.stringify(this.glyphsList))
138
- this.total = this.allIconList?.length
139
- this.iconList = this.allIconList.slice(this.pagination * 20, (this.pagination + 1) * 20)
140
- }
141
- })
142
- },
143
- methods: {
144
- handleCurrentChange (val) {
145
- if (val - 1 > this.total / 20) return
146
- this.pagination = val - 1
147
- },
148
- selectIcon (params) {
149
- this.selectIconClass = params
150
- },
151
- searchInfo () {
152
- this.pagination = 0
153
- const glyphs = JSON.parse(JSON.stringify(this.glyphsList))
154
- const iconArr = []
155
- glyphs.forEach(item => {
156
- const str = `${item.font_class}+${item.name}`.toLowerCase()
157
- if (str.indexOf(this.search.toLowerCase()) !== -1) {
158
- iconArr.push(item)
159
- }
160
- })
161
- this.allIconList = iconArr
162
- this.total = this.allIconList.length
163
- if (iconArr.length > 20) {
164
- this.iconList = this.allIconList.slice(this.pagination * 20, (this.pagination + 1) * 20).sort((a, b) => a.font_class - b.font_class)
165
- } else {
166
- this.iconList = iconArr.sort((a, b) => a.font_class - b.font_class)
167
- }
168
- },
169
- cleanSearch () {
170
- this.pagination = 0
171
- this.allIconList = JSON.parse(JSON.stringify(this.glyphsList))
172
- this.total = this.allIconList?.length
173
- this.iconList = this.allIconList.slice(this.pagination * 20, (this.pagination + 1) * 20)
174
- },
175
- select () {
176
- if (this.selectIconClass) {
177
- this.$emit('selectIcon', JSON.parse(JSON.stringify(this.selectIconClass)))
178
- } else {
179
- this.$message.error('未选择图标')
180
- }
181
- this.selectIconClass = null
182
- this.visible = false
183
- }
184
- }
185
- }
186
- </script>
187
-
188
- <style lang="less" scoped>
189
- .content-view {
190
- min-height: 300px;
191
- display: flex;
192
- justify-content: left;
193
- align-items: center;
194
- flex-wrap: wrap;
195
- align-content: flex-start;
196
- .search-box {
197
- width: 100%;
198
- display: flex;
199
- justify-content: left;
200
- align-items: center;
201
- gap: 0 10px;
202
- color: red;
203
- .svg-icon {
204
- height: 20px;
205
- width: 20px;
206
- }
207
- }
208
- .icon-item {
209
- width: 20%;
210
- height: 60px;
211
- display: flex;
212
- margin-top: 10px;
213
- align-items: center;
214
- justify-content: center;
215
- .icon-box {
216
- box-sizing: border-box;
217
- padding: 5px 0;
218
- border-radius: 2px;
219
- border: 1px solid #eeeeee;
220
- display: inherit;
221
- flex-direction: column;
222
- justify-content: space-between;
223
- align-items: center;
224
- width: 60px;
225
- height: 100%;
226
- color: #666666;
227
- &:hover {
228
- color: #2a90e9;
229
- box-shadow: 0 2px 12px 0 rgb(0 0 0 / 10%);
230
- }
231
- .svg-icon {
232
- height: 25px;
233
- width: 25px;
234
- }
235
- span {
236
- line-height: 1;
237
- box-sizing: border-box;
238
- padding: 0 2px;
239
- text-align: center;
240
- width: 60px;
241
- display: inline-block;
242
- white-space: nowrap;
243
- overflow: hidden;
244
- text-overflow: ellipsis;
245
- cursor: pointer;
246
- font-size: 12px;
247
- }
248
- }
249
- }
250
- .paging {
251
- display: flex;
252
- justify-content: right;
253
- align-items: center;
254
- margin-top: 10px;
255
- height: 20px;
256
- width: 100%;
257
- }
258
- }
259
- .button {
260
- opacity: 1;
261
- background: #0c4c8e;
262
- border-radius: 2px;
263
- font-weight: 700;
264
- color: #FFFFFF;
265
- }
266
- </style>