newtv-ui-3.0 0.0.1

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 (79) hide show
  1. package/README.md +55 -0
  2. package/lib/asserts/fonts/iconfont.539b8438.woff +0 -0
  3. package/lib/asserts/fonts/iconfont.5ee3b92b.ttf +0 -0
  4. package/lib/asserts/fonts/iconfont.b5b01d3e.woff2 +0 -0
  5. package/lib/asserts/img/gaoding.59d9deae.png +0 -0
  6. package/lib/asserts/img/zhihui.edef9d17.png +0 -0
  7. package/lib/demo.html +10 -0
  8. package/lib/newtv-ui-3.0.common.js +110261 -0
  9. package/lib/newtv-ui-3.0.css +1 -0
  10. package/lib/newtv-ui-3.0.umd.js +110271 -0
  11. package/lib/newtv-ui-3.0.umd.min.js +47 -0
  12. package/package.json +42 -0
  13. package/packages/assets/iconfont/iconfont.css +435 -0
  14. package/packages/assets/iconfont/iconfont.js +1 -0
  15. package/packages/assets/iconfont/iconfont.json +744 -0
  16. package/packages/assets/iconfont/iconfont.ttf +0 -0
  17. package/packages/assets/iconfont/iconfont.woff +0 -0
  18. package/packages/assets/iconfont/iconfont.woff2 +0 -0
  19. package/packages/assets/iconfont/iconfontSVG.js +1 -0
  20. package/packages/assets/images/bg.png +0 -0
  21. package/packages/assets/images/danger-bg.png +0 -0
  22. package/packages/assets/images/empty-bg.png +0 -0
  23. package/packages/assets/images/error-poster.png +0 -0
  24. package/packages/assets/images/error_img.png +0 -0
  25. package/packages/assets/images/logo.png +0 -0
  26. package/packages/assets/images/logo2.png +0 -0
  27. package/packages/assets/images/no_img.png +0 -0
  28. package/packages/assets/images/primary-bg.png +0 -0
  29. package/packages/assets/images/save.svg +3 -0
  30. package/packages/assets/images/state-Unpass.png +0 -0
  31. package/packages/assets/images/state-ing.png +0 -0
  32. package/packages/assets/images/state-ms.png +0 -0
  33. package/packages/assets/images/state-non.png +0 -0
  34. package/packages/assets/images/state-pass.png +0 -0
  35. package/packages/assets/images/success-bg.png +0 -0
  36. package/packages/assets/images/thumbnail-empty.png +0 -0
  37. package/packages/assets/images/versionIcon.png +0 -0
  38. package/packages/assets/images/warning-bg.png +0 -0
  39. package/packages/avatar-upload/index.js +10 -0
  40. package/packages/avatar-upload/src/error-poster.png +0 -0
  41. package/packages/avatar-upload/src/gaoding.png +0 -0
  42. package/packages/avatar-upload/src/previewDialog.vue +96 -0
  43. package/packages/avatar-upload/src/upload.vue +640 -0
  44. package/packages/avatar-upload/src/zhihui.png +0 -0
  45. package/packages/avatar-upload/src/zhihui_2.png +0 -0
  46. package/packages/cardTable/index.js +10 -0
  47. package/packages/cardTable/src/cardTable.vue +151 -0
  48. package/packages/form/index.js +10 -0
  49. package/packages/form/src/EllipsisTooltip.vue +31 -0
  50. package/packages/form/src/TextOverflow.vue +122 -0
  51. package/packages/form/src/form-item.vue +395 -0
  52. package/packages/form/src/form.js +46 -0
  53. package/packages/form/src/form.vue +233 -0
  54. package/packages/icon-tips/index.js +10 -0
  55. package/packages/icon-tips/src/icon-tips.vue +49 -0
  56. package/packages/index.js +49 -0
  57. package/packages/menu/index.js +10 -0
  58. package/packages/menu/src/menu.js +27 -0
  59. package/packages/menu/src/menu.vue +84 -0
  60. package/packages/menu/src/sub-item.vue +108 -0
  61. package/packages/pagination/index.js +10 -0
  62. package/packages/pagination/src/pagination.vue +134 -0
  63. package/packages/table/index.js +10 -0
  64. package/packages/table/src/table.vue +797 -0
  65. package/packages/tags/index.js +10 -0
  66. package/packages/tags/src/tag.vue +179 -0
  67. package/theme/pool_style.scss +598 -0
  68. package/theme/skyStyle/config.scss +19 -0
  69. package/theme/sky_style.scss +268 -0
  70. package/types/component.d.ts +7 -0
  71. package/types/dashboard.d.ts +10 -0
  72. package/types/form.d.ts +12 -0
  73. package/types/header.d.ts +10 -0
  74. package/types/index.d.ts +4 -0
  75. package/types/leftMenu.d.ts +14 -0
  76. package/types/list.d.ts +8 -0
  77. package/types/newtv-ui.d.ts +23 -0
  78. package/types/secondNav.d.ts +13 -0
  79. package/types/table.d.ts +14 -0
@@ -0,0 +1,268 @@
1
+ @import './skyStyle/config.scss';
2
+ $w20: 8rem;
3
+ $mx1: 0.25rem;
4
+ .w-20 {
5
+ width: $w20;
6
+ }
7
+ .mx-1 {
8
+ margin-left: $mx1;
9
+ }
10
+ .ml-1 {
11
+ margin-left: $mx1;
12
+ margin-bottom: $mx1 + 0.05;
13
+ vertical-align: middle;
14
+ }
15
+ .ml-2 {
16
+ margin-left: $mx1 * 2;
17
+ }
18
+
19
+ // button样式
20
+ .el-button.is-text:not(.is-disabled):active,
21
+ .el-button.is-text:not(.is-disabled):focus,
22
+ .el-button.is-text:not(.is-disabled):hover {
23
+ background-color: transparent;
24
+ }
25
+ .el-button--default .iconfont,
26
+ .el-button .iconfont {
27
+ padding-right: 5px;
28
+ font-size: 14px;
29
+ }
30
+
31
+ // tag组件样式
32
+ .fg-tag {
33
+ .el-button,
34
+ .el-tag {
35
+ border-style: dashed;
36
+ }
37
+ }
38
+
39
+ .fg-avatar-picture-card {
40
+ span.actions {
41
+ display: inline-flex;
42
+ justify-content: flex-end;
43
+ align-items: baseline;
44
+ span {
45
+ margin: 12px 0 0 10px;
46
+ &:last-child {
47
+ margin-right: 10px;
48
+ }
49
+ }
50
+ }
51
+ }
52
+
53
+ // dialog
54
+ .preview-dialog .el-dialog__header {
55
+ border: 0;
56
+ }
57
+ .el-dialog__header {
58
+ border-bottom: 1px solid #E6E6E6;
59
+ }
60
+ .el-dialog__headerbtn .el-dialog__close {
61
+ padding: 2px;
62
+ background: #A3AEC1;
63
+ color: #fff;
64
+ border-radius: 50%;
65
+ font-size: 12px;
66
+ }
67
+
68
+ .el-dialog__headerbtn:focus .el-dialog__close,
69
+ .el-dialog__headerbtn:hover .el-dialog__close {
70
+ color: #fff;
71
+ }
72
+
73
+ .dialog__info {
74
+ .el-dialog__header {
75
+ border: 0
76
+ }
77
+ }
78
+ .el-dialog__footer {
79
+ text-align: center;
80
+ .el-button {
81
+ padding: 8px 30px;
82
+ }
83
+ }
84
+
85
+ // 左侧导航
86
+ .fg-menu {
87
+ .el-menu {
88
+ background: transparent;
89
+ }
90
+ .el-menu-item,
91
+ .el-sub-menu__title {
92
+ color: #fff;
93
+ border-left: 3px solid transparent;
94
+ }
95
+ .el-sub-menu__title:hover,
96
+ .el-menu-item:hover {
97
+ background: rgba(255, 255, 255, 0.3);
98
+ border-left: 3px solid #fff;
99
+ }
100
+ .el-menu-item.is-active {
101
+ background: #082f8c;
102
+ }
103
+
104
+ // 菜单合上时样式
105
+ .el-menu--collapse {
106
+ .el-sub-menu.is-active {
107
+ background: #082f8c;
108
+ }
109
+ .el-sub-menu.is-active .el-sub-menu__title {
110
+ color: #fff;
111
+ }
112
+ }
113
+ }
114
+
115
+
116
+ // table 样式
117
+ $tableBottom: 60px;
118
+ .fg-table-body {
119
+ position: relative;
120
+ background: #fff;
121
+ height: 100%;
122
+ //padding-bottom: $tableBottom;
123
+ box-sizing: border-box;
124
+ thead.is-group th.el-table__cell {
125
+ background: transparent;
126
+ }
127
+
128
+ .el-table .cell {
129
+ padding: 0 20px;
130
+ }
131
+
132
+ .footer-pagination {
133
+ padding-top: 15px;
134
+ }
135
+ .el-pagination {
136
+ justify-content: flex-end;
137
+ }
138
+ .el-table--border td {
139
+ border-right: 0;
140
+ }
141
+ .el-table__header th {
142
+ border-color: transparent;
143
+ position: relative;
144
+ z-index: 1;
145
+ &:hover {
146
+ &::after {
147
+ display: block;
148
+ }
149
+ }
150
+ &::after {
151
+ content: '';
152
+ width: 3px;
153
+ height: 18px;
154
+ background: #eee;
155
+ position: absolute;
156
+ top: 50%;
157
+ right: 1px;
158
+ transform: translate(0, -50%);
159
+ z-index: 0;
160
+ display: none;
161
+ }
162
+ }
163
+ .el-table__header .el-table-column--selection, .el-table__header th:last-child {
164
+ border-right: 0;
165
+ &:hover {
166
+ &::after {
167
+ display: none;
168
+ }
169
+ }
170
+ }
171
+ .el-table--border:before, .el-table--border:after, .el-table__border-left-patch {
172
+ display: none;
173
+ }
174
+
175
+ }
176
+
177
+
178
+
179
+ // 分页器阴影样式
180
+ .foot_shadow {
181
+ padding-bottom: $tableBottom;
182
+ >.el-table {
183
+ height: 100%;
184
+ overflow: auto;
185
+ }
186
+ .el-table__inner-wrapper::before {
187
+ display: none;
188
+ }
189
+ .footer-pagination {
190
+ position: absolute;
191
+ width: 100%;
192
+ height: $tableBottom;
193
+ //height: ($tableBottom + 28);
194
+ bottom: 0;
195
+
196
+ //padding-top: 28px;
197
+ background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, #ffffff 100%);
198
+ padding-right: 10px;
199
+ box-sizing: border-box;
200
+ z-index: 10;
201
+ }
202
+
203
+ .el-table__body-wrapper {
204
+ //margin-bottom: 30px;
205
+ }
206
+ }
207
+
208
+ .el-col:nth-of-type(1) .form_split {
209
+ margin-top: 0;
210
+ }
211
+
212
+ // form 分隔线样式
213
+ .form_split {
214
+ position: relative;
215
+ line-height: 24px;
216
+ font-size: 16px;
217
+ padding: 0 10px;
218
+ margin: 18px 0;
219
+ font-weight: 500;
220
+ color: #74767a;
221
+ &::before {
222
+ content: '';
223
+ position: absolute;
224
+ line-height: 24px;
225
+ width: 4px;
226
+ height: 24px;
227
+ background-color: var(--el-color-primary);
228
+ border-radius: 4px;
229
+ top: 50%;
230
+ left: 0;
231
+ transform: translate(0, -50%);
232
+ }
233
+ }
234
+
235
+ .el-button:not(.is-text, .is-link, .el-button--text):focus {
236
+ background-color: var(--el-button-bg-color);
237
+ border-color: var(--el-button-border-color);
238
+ color: var(--el-button-text-color);
239
+ }
240
+
241
+ .el-table .el-table__cell {
242
+ z-index: auto;
243
+ }
244
+
245
+ .table-right-btnGroup {
246
+ .el-dropdown {
247
+ margin-top: 2px;
248
+ .el-button {
249
+ background: transparent;
250
+ color: #3e89fa;
251
+ border-radius: 100%;
252
+ padding: 0;
253
+ border-width: 2px;
254
+ height: 20px;
255
+ width: 20px;
256
+ position: relative;
257
+ box-sizing: border-box;
258
+ span {
259
+ font-weight: 700;
260
+ position: absolute;
261
+ top: 30%;
262
+ left: 50%;
263
+ transform: translate(-50%, -50%);
264
+ }
265
+ }
266
+ }
267
+
268
+ }
@@ -0,0 +1,7 @@
1
+ import Vue from 'vue'
2
+
3
+ /** ElementUI component common definition */
4
+ export declare class NewtvUIComponent extends Vue {
5
+ /** Install component into Vue */
6
+ static install (vue: typeof Vue): any
7
+ }
@@ -0,0 +1,10 @@
1
+ import { NewtvUIComponent } from './component'
2
+
3
+ export declare class newtvDashboard extends NewtvUIComponent {
4
+ title: string
5
+ height: string
6
+ fillet: string
7
+ center: boolean
8
+ isIcon: boolean
9
+ data: []
10
+ }
@@ -0,0 +1,12 @@
1
+ import { NewtvUIComponent } from './component'
2
+
3
+ export declare class newtvForm extends NewtvUIComponent {
4
+ inline: boolean
5
+ formWidth: string
6
+ labelWidth: string
7
+ form: {}
8
+ formData: {}
9
+ rules: {}
10
+ formCol: {}
11
+ disabled: boolean
12
+ }
@@ -0,0 +1,10 @@
1
+ import { NewtvUIComponent } from './component'
2
+
3
+ export declare class newtvHeader extends NewtvUIComponent {
4
+ title: string
5
+ logo: string
6
+ logoHref: string
7
+ username: string
8
+ portrait: string
9
+ mainMenuList: {}
10
+ }
@@ -0,0 +1,4 @@
1
+ export * from './newtv-ui'
2
+
3
+ import * as newtvUI from './newtv-ui'
4
+ export default newtvUI
@@ -0,0 +1,14 @@
1
+ import { NewtvUIComponent } from './component'
2
+
3
+ export declare class newtvLeftMenu extends NewtvUIComponent {
4
+ title: string
5
+ defaultActive: string
6
+ uniqueOpened: boolean
7
+ backgroundColor: string
8
+ textColor: string
9
+ activeTextColor: string
10
+ tooltip: boolean
11
+ router: boolean
12
+ isCollapse: boolean
13
+ items: []
14
+ }
@@ -0,0 +1,8 @@
1
+ import { NewtvUIComponent } from './component'
2
+
3
+ export type ListType = 'single' | 'multiple'
4
+
5
+ export declare class newtvList extends NewtvUIComponent {
6
+ type: ListType
7
+ listData: []
8
+ }
@@ -0,0 +1,23 @@
1
+ import Vue, { PluginObject } from 'vue'
2
+ import { NewtvUIComponent } from './component'
3
+
4
+ import { newtvDashboard } from './dashboard'
5
+ import { newtvForm } from './form'
6
+ import { newtvHeader } from './header'
7
+ import { newtvLeftMenu } from './leftMenu'
8
+ import { newtvList } from './list'
9
+ import { newtvSecondNav } from './secondNav'
10
+ import { newtvTable } from './table'
11
+
12
+
13
+ export function install (vue: typeof Vue): void
14
+
15
+ export type Component = NewtvUIComponent
16
+
17
+ export class Dashboard extends newtvDashboard {}
18
+ export class Form extends newtvForm {}
19
+ export class Header extends newtvHeader {}
20
+ export class LeftMenu extends newtvLeftMenu {}
21
+ export class List extends newtvList {}
22
+ export class SecondNav extends newtvSecondNav {}
23
+ export class Table extends newtvTable {}
@@ -0,0 +1,13 @@
1
+ import { NewtvUIComponent } from './component'
2
+
3
+ export declare class newtvSecondNav extends NewtvUIComponent {
4
+ title: string
5
+ nodeKey: string
6
+ tooltip: boolean
7
+ currentNodeKey: string
8
+ filter: boolean
9
+ asideWidth: string
10
+ filterNodeMethod: (done: Function) => void
11
+ props: {}
12
+ data: []
13
+ }
@@ -0,0 +1,14 @@
1
+ import { NewtvUIComponent } from './component'
2
+
3
+ export declare class newtvTable extends NewtvUIComponent {
4
+ defaultSort: {}
5
+ tableCols: []
6
+ tableData: string
7
+ stripe: boolean
8
+ border: boolean
9
+ showPagination: boolean
10
+ showOverflowTooltip: boolean
11
+ rowClassName: (done: Function) => any | string
12
+ spanMethod: () => any
13
+ paginationOption: {}
14
+ }