zartui 0.1.21 → 0.1.25

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 (251) hide show
  1. package/README.md +20 -20
  2. package/changelog.generated.md +15 -0
  3. package/es/area/style/index.js +4 -0
  4. package/es/area/style/less.js +4 -0
  5. package/es/avatar/index.css +1 -1
  6. package/es/avatar/index.js +54 -36
  7. package/es/avatar/index.less +39 -11
  8. package/es/avatar/local.less +1 -1
  9. package/es/button/index.js +4 -1
  10. package/es/button/index.less +206 -206
  11. package/es/calendar/index.less +250 -250
  12. package/es/calendar/style/index.js +1 -1
  13. package/es/calendar/style/less.js +1 -1
  14. package/es/cell/index.less +103 -103
  15. package/es/cell-group/index.less +22 -22
  16. package/es/checkbox/index.less +89 -89
  17. package/es/checkbox-group/index.less +8 -8
  18. package/es/col/index.less +20 -20
  19. package/es/datetime-picker/style/index.js +4 -0
  20. package/es/datetime-picker/style/less.js +4 -0
  21. package/es/dialog/index.css +1 -1
  22. package/es/dialog/index.less +125 -125
  23. package/es/dialog/style/index.js +1 -1
  24. package/es/dialog/style/less.js +1 -1
  25. package/es/empty/Developing.js +1643 -0
  26. package/es/empty/Error.js +484 -0
  27. package/es/empty/NotFound.js +645 -0
  28. package/es/empty/NotRight.js +395 -0
  29. package/es/empty/Search.js +336 -0
  30. package/es/empty/index.css +1 -0
  31. package/es/empty/index.js +105 -0
  32. package/es/empty/index.less +33 -0
  33. package/es/empty/style/index.js +2 -0
  34. package/es/empty/style/less.js +2 -0
  35. package/es/field/index.less +172 -172
  36. package/es/icon/index.less +10 -10
  37. package/es/icon/local.less +1 -1
  38. package/es/image/index.less +47 -47
  39. package/es/image-preview/index.less +103 -103
  40. package/es/image-preview/style/index.js +1 -1
  41. package/es/image-preview/style/less.js +1 -1
  42. package/es/index.js +6 -3
  43. package/es/info/index.less +29 -29
  44. package/es/loading/index.less +103 -103
  45. package/es/locale/lang/zh-CN.js +22 -0
  46. package/es/mixins/bind-event.js +2 -2
  47. package/es/mixins/checkbox.js +2 -2
  48. package/es/mixins/click-outside.js +2 -2
  49. package/es/mixins/slots.js +3 -3
  50. package/es/mixins/telemetry.js +11 -0
  51. package/es/nav-bar/index.less +74 -74
  52. package/es/number-keyboard/index.css +1 -1
  53. package/es/number-keyboard/index.less +144 -142
  54. package/es/overlay/index.less +11 -11
  55. package/es/password-input/index.css +1 -0
  56. package/es/password-input/index.js +80 -0
  57. package/es/password-input/index.less +83 -0
  58. package/es/password-input/style/index.js +2 -0
  59. package/es/password-input/style/less.js +2 -0
  60. package/es/pdf-viewer/style/index.js +1 -1
  61. package/es/pdf-viewer/style/less.js +1 -1
  62. package/es/picker/PickerColumn.js +5 -6
  63. package/es/picker/index.js +34 -5
  64. package/es/picker/index.less +151 -151
  65. package/es/picker/shared.js +4 -0
  66. package/es/picker/style/index.js +4 -0
  67. package/es/picker/style/less.js +4 -0
  68. package/es/popup/index.less +137 -137
  69. package/es/popup/style/index.js +1 -1
  70. package/es/popup/style/less.js +1 -1
  71. package/es/radio/index.less +86 -86
  72. package/es/radio-group/index.less +8 -8
  73. package/es/rate/index.css +1 -1
  74. package/es/rate/index.js +1 -1
  75. package/es/rate/index.less +47 -47
  76. package/es/row/index.less +42 -42
  77. package/es/signature/index.css +1 -0
  78. package/es/signature/index.js +230 -0
  79. package/es/signature/index.less +50 -0
  80. package/es/signature/style/index.js +9 -0
  81. package/es/signature/style/less.js +9 -0
  82. package/es/slider/index.less +94 -94
  83. package/es/step/index.less +139 -139
  84. package/es/stepper/index.less +130 -130
  85. package/es/steps/index.less +21 -21
  86. package/es/sticky/index.less +11 -11
  87. package/es/style/animation.less +139 -139
  88. package/es/style/base.less +11 -11
  89. package/es/style/clearfix.less +5 -5
  90. package/es/style/ellipsis.less +13 -13
  91. package/es/style/hairline.less +47 -47
  92. package/es/style/halfPxBorder.less +15 -15
  93. package/es/style/mixins/clearfix.less +7 -7
  94. package/es/style/mixins/ellipsis.less +15 -15
  95. package/es/style/mixins/hairline.less +39 -39
  96. package/es/style/normalize.less +38 -38
  97. package/es/style/reset.less +171 -171
  98. package/es/style/var.less +941 -919
  99. package/es/swipe/index.less +56 -56
  100. package/es/swipe-cell/index.less +29 -29
  101. package/es/swipe-item/index.less +8 -8
  102. package/es/switch/index.less +56 -56
  103. package/es/switch/shared.js +2 -2
  104. package/es/switch-cell/index.less +15 -15
  105. package/es/tab/index.less +17 -17
  106. package/es/tabs/index.less +153 -153
  107. package/es/tag/index.less +99 -99
  108. package/es/telemetry/index.js +72 -0
  109. package/es/toast/index.js +1 -1
  110. package/es/toast/index.less +75 -75
  111. package/es/toast/style/index.js +1 -1
  112. package/es/toast/style/less.js +1 -1
  113. package/es/uploader/index.less +163 -163
  114. package/es/uploader/style/index.js +1 -1
  115. package/es/uploader/style/less.js +1 -1
  116. package/es/utils/create/bem.js +7 -7
  117. package/es/utils/create/component.js +37 -7
  118. package/es/utils/dom/raf.js +2 -2
  119. package/es/utils/dom/reset-scroll.js +3 -3
  120. package/es/utils/index.js +29 -29
  121. package/es/utils/media/image-util.js +138 -0
  122. package/es/utils/router.js +2 -2
  123. package/lib/7893e51cf0a4877dac80.worker.js +10 -0
  124. package/lib/area/style/index.js +4 -0
  125. package/lib/area/style/less.js +4 -0
  126. package/lib/avatar/index.css +1 -1
  127. package/lib/avatar/index.js +55 -37
  128. package/lib/avatar/index.less +39 -11
  129. package/lib/avatar/local.less +1 -1
  130. package/lib/be09b519a460e229fd8d.worker.js +2527 -0
  131. package/lib/button/index.js +5 -0
  132. package/lib/button/index.less +206 -206
  133. package/lib/calendar/index.less +250 -250
  134. package/lib/calendar/style/index.js +1 -1
  135. package/lib/calendar/style/less.js +1 -1
  136. package/lib/cell/index.less +103 -103
  137. package/lib/cell-group/index.less +22 -22
  138. package/lib/checkbox/index.less +89 -89
  139. package/lib/checkbox-group/index.less +8 -8
  140. package/lib/col/index.less +20 -20
  141. package/lib/datetime-picker/style/index.js +4 -0
  142. package/lib/datetime-picker/style/less.js +4 -0
  143. package/lib/dialog/index.css +1 -1
  144. package/lib/dialog/index.less +125 -125
  145. package/lib/dialog/style/index.js +1 -1
  146. package/lib/dialog/style/less.js +1 -1
  147. package/lib/empty/Developing.js +1648 -0
  148. package/lib/empty/Error.js +489 -0
  149. package/lib/empty/NotFound.js +650 -0
  150. package/lib/empty/NotRight.js +400 -0
  151. package/lib/empty/Search.js +341 -0
  152. package/lib/empty/index.css +1 -0
  153. package/lib/empty/index.js +119 -0
  154. package/lib/empty/index.less +33 -0
  155. package/lib/empty/style/index.js +2 -0
  156. package/lib/empty/style/less.js +2 -0
  157. package/lib/field/index.less +172 -172
  158. package/lib/icon/index.less +10 -10
  159. package/lib/icon/local.less +1 -1
  160. package/lib/image/index.less +47 -47
  161. package/lib/image-preview/index.less +103 -103
  162. package/lib/image-preview/style/index.js +1 -1
  163. package/lib/image-preview/style/less.js +1 -1
  164. package/lib/index.css +1 -1
  165. package/lib/index.js +14 -2
  166. package/lib/index.less +6 -3
  167. package/lib/info/index.less +29 -29
  168. package/lib/loading/index.less +103 -103
  169. package/lib/locale/lang/zh-CN.js +22 -0
  170. package/lib/mixins/bind-event.js +2 -2
  171. package/lib/mixins/checkbox.js +2 -2
  172. package/lib/mixins/click-outside.js +2 -2
  173. package/lib/mixins/slots.js +3 -3
  174. package/lib/mixins/telemetry.js +20 -0
  175. package/lib/nav-bar/index.less +74 -74
  176. package/lib/number-keyboard/index.css +1 -1
  177. package/lib/number-keyboard/index.less +144 -142
  178. package/lib/overlay/index.less +11 -11
  179. package/lib/password-input/index.css +1 -0
  180. package/lib/password-input/index.js +93 -0
  181. package/lib/password-input/index.less +83 -0
  182. package/lib/password-input/style/index.js +2 -0
  183. package/lib/password-input/style/less.js +2 -0
  184. package/lib/pdf-viewer/style/index.js +1 -1
  185. package/lib/pdf-viewer/style/less.js +1 -1
  186. package/lib/picker/PickerColumn.js +5 -6
  187. package/lib/picker/index.js +36 -6
  188. package/lib/picker/index.less +151 -151
  189. package/lib/picker/shared.js +4 -0
  190. package/lib/picker/style/index.js +4 -0
  191. package/lib/picker/style/less.js +4 -0
  192. package/lib/popup/index.less +137 -137
  193. package/lib/popup/style/index.js +1 -1
  194. package/lib/popup/style/less.js +1 -1
  195. package/lib/radio/index.less +86 -86
  196. package/lib/radio-group/index.less +8 -8
  197. package/lib/rate/index.css +1 -1
  198. package/lib/rate/index.js +1 -1
  199. package/lib/rate/index.less +47 -47
  200. package/lib/row/index.less +42 -42
  201. package/lib/signature/index.css +1 -0
  202. package/lib/signature/index.js +242 -0
  203. package/lib/signature/index.less +50 -0
  204. package/lib/signature/style/index.js +9 -0
  205. package/lib/signature/style/less.js +9 -0
  206. package/lib/slider/index.less +94 -94
  207. package/lib/step/index.less +139 -139
  208. package/lib/stepper/index.less +130 -130
  209. package/lib/steps/index.less +21 -21
  210. package/lib/sticky/index.less +11 -11
  211. package/lib/style/animation.less +139 -139
  212. package/lib/style/base.less +11 -11
  213. package/lib/style/clearfix.less +5 -5
  214. package/lib/style/ellipsis.less +13 -13
  215. package/lib/style/hairline.less +47 -47
  216. package/lib/style/halfPxBorder.less +15 -15
  217. package/lib/style/mixins/clearfix.less +7 -7
  218. package/lib/style/mixins/ellipsis.less +15 -15
  219. package/lib/style/mixins/hairline.less +39 -39
  220. package/lib/style/normalize.less +38 -38
  221. package/lib/style/reset.less +171 -171
  222. package/lib/style/var.less +941 -919
  223. package/lib/swipe/index.less +56 -56
  224. package/lib/swipe-cell/index.less +29 -29
  225. package/lib/swipe-item/index.less +8 -8
  226. package/lib/switch/index.less +56 -56
  227. package/lib/switch/shared.js +2 -2
  228. package/lib/switch-cell/index.less +15 -15
  229. package/lib/tab/index.less +17 -17
  230. package/lib/tabs/index.less +153 -153
  231. package/lib/tag/index.less +99 -99
  232. package/lib/telemetry/index.js +82 -0
  233. package/lib/toast/index.js +1 -1
  234. package/lib/toast/index.less +75 -75
  235. package/lib/toast/style/index.js +1 -1
  236. package/lib/toast/style/less.js +1 -1
  237. package/lib/uploader/index.less +163 -163
  238. package/lib/uploader/style/index.js +1 -1
  239. package/lib/uploader/style/less.js +1 -1
  240. package/lib/utils/create/bem.js +7 -7
  241. package/lib/utils/create/component.js +41 -7
  242. package/lib/utils/dom/raf.js +2 -2
  243. package/lib/utils/dom/reset-scroll.js +3 -3
  244. package/lib/utils/index.js +29 -29
  245. package/lib/utils/media/image-util.js +153 -0
  246. package/lib/utils/router.js +2 -2
  247. package/lib/zart.js +27476 -55536
  248. package/lib/zart.min.js +5 -5
  249. package/package.json +74 -74
  250. package/lib/a037f57fc4d92a8a1f1e.worker.js +0 -60600
  251. package/lib/b7cf90b4775181215df7.worker.js +0 -10
@@ -1,142 +1,144 @@
1
- @import '../style/var';
2
-
3
- .zt-number-keyboard {
4
- position: fixed;
5
- bottom: 0;
6
- left: 0;
7
- z-index: @number-keyboard-z-index;
8
- width: 100%;
9
- padding-bottom: 22px;
10
- background-color: @number-keyboard-background-color;
11
- user-select: none;
12
-
13
- &--with-title {
14
- border-radius: 20px 20px 0 0;
15
- }
16
-
17
- &__header {
18
- position: relative;
19
- display: flex;
20
- align-items: center;
21
- justify-content: center;
22
- box-sizing: content-box;
23
- height: @number-keyboard-title-height;
24
- padding-top: 6px;
25
- color: @number-keyboard-title-color;
26
- font-size: @number-keyboard-title-font-size;
27
- }
28
-
29
- &__title {
30
- display: inline-block;
31
- font-weight: normal;
32
-
33
- &-left {
34
- position: absolute;
35
- left: 0;
36
- }
37
- }
38
-
39
- &__body {
40
- display: flex;
41
- padding: 6px 0 0 6px;
42
- }
43
-
44
- &__keys {
45
- display: flex;
46
- flex: 3;
47
- flex-wrap: wrap;
48
- }
49
-
50
- &__close {
51
- position: absolute;
52
- right: 0;
53
- height: 100%;
54
- padding: @number-keyboard-close-padding;
55
- color: @number-keyboard-close-color;
56
- font-size: @number-keyboard-close-font-size;
57
- background-color: transparent;
58
- border: none;
59
- cursor: pointer;
60
-
61
- &:active {
62
- opacity: @active-opacity;
63
- }
64
- }
65
-
66
- &__sidebar {
67
- display: flex;
68
- flex: 1;
69
- flex-direction: column;
70
- }
71
-
72
- &--unfit {
73
- padding-bottom: 0;
74
- }
75
- }
76
-
77
- .zt-key {
78
- display: flex;
79
- align-items: center;
80
- justify-content: center;
81
- height: @number-keyboard-key-height;
82
- font-size: @number-keyboard-key-font-size;
83
- line-height: 1.5;
84
- background-color: @white;
85
- border-radius: @border-radius-lg;
86
- cursor: pointer;
87
-
88
- &--large {
89
- // height: 100% can't fill flex parent on legacy safari
90
- // see: https://stackoverflow.com/questions/33636796
91
- position: absolute;
92
- top: 0;
93
- right: 6px;
94
- bottom: 6px;
95
- left: 0;
96
- height: auto;
97
- }
98
-
99
- &--blue,
100
- &--delete {
101
- font-size: @number-keyboard-delete-font-size;
102
- }
103
-
104
- &--active {
105
- background-color: @number-keyboard-key-active-color;
106
- }
107
-
108
- &--blue {
109
- color: @number-keyboard-button-text-color;
110
- background-color: @number-keyboard-button-background-color;
111
-
112
- &.zt-key--active {
113
- background-color: darken(@number-keyboard-button-background-color, 10%);
114
- }
115
- }
116
-
117
- &__wrapper {
118
- position: relative;
119
- flex: 1;
120
- flex-basis: 33%;
121
- box-sizing: border-box;
122
- padding: 0 6px 6px 0;
123
-
124
- &--wider {
125
- flex-basis: 66%;
126
- }
127
- }
128
-
129
- &__delete-icon {
130
- width: 32px;
131
- height: 22px;
132
- }
133
-
134
- &__collapse-icon {
135
- width: 30px;
136
- height: 24px;
137
- }
138
-
139
- &__loading-icon {
140
- color: @number-keyboard-button-text-color;
141
- }
142
- }
1
+ @import '../style/var';
2
+
3
+ .zt-number-keyboard {
4
+ position: fixed;
5
+ bottom: 0;
6
+ left: 0;
7
+ z-index: @number-keyboard-z-index;
8
+ width: calc(100% - 24px);
9
+ padding: 16px 8px 8px 16px;
10
+ background-color: @number-keyboard-background-color;
11
+ user-select: none;
12
+
13
+ &--with-title {
14
+ border-radius: 20px 20px 0 0;
15
+ }
16
+
17
+ &__header {
18
+ position: relative;
19
+ display: flex;
20
+ align-items: center;
21
+ justify-content: center;
22
+ box-sizing: content-box;
23
+ height: @number-keyboard-title-height;
24
+ padding-top: 6px;
25
+ color: @number-keyboard-title-color;
26
+ font-size: @number-keyboard-title-font-size;
27
+ }
28
+
29
+ &__title {
30
+ display: inline-block;
31
+ font-weight: normal;
32
+
33
+ &-left {
34
+ position: absolute;
35
+ left: 0;
36
+ }
37
+ }
38
+
39
+ &__body {
40
+ display: flex;
41
+ }
42
+
43
+ &__keys {
44
+ display: flex;
45
+ flex: 3;
46
+ flex-wrap: wrap;
47
+ }
48
+
49
+ &__close {
50
+ position: absolute;
51
+ right: 0;
52
+ height: 100%;
53
+ padding: @number-keyboard-close-padding;
54
+ color: @number-keyboard-close-color;
55
+ font-size: @number-keyboard-close-font-size;
56
+ background-color: transparent;
57
+ border: none;
58
+ cursor: pointer;
59
+
60
+ &:active {
61
+ opacity: @active-opacity;
62
+ }
63
+ }
64
+
65
+ &__sidebar {
66
+ display: flex;
67
+ flex: 1;
68
+ flex-direction: column;
69
+ }
70
+
71
+ &--unfit {
72
+ padding-bottom: 0;
73
+ }
74
+ }
75
+
76
+ .zt-key {
77
+ display: flex;
78
+ align-items: center;
79
+ justify-content: center;
80
+ height: @number-keyboard-key-height;
81
+ font-size: @number-keyboard-key-font-size;
82
+ line-height: 1.5;
83
+ background-color: @white;
84
+ border-radius: @border-radius-lg;
85
+ cursor: pointer;
86
+
87
+ &--large {
88
+ // height: 100% can't fill flex parent on legacy safari
89
+ // see: https://stackoverflow.com/questions/33636796
90
+ position: absolute;
91
+ top: 0;
92
+ right: 6px;
93
+ bottom: 6px;
94
+ left: 0;
95
+ height: auto;
96
+ }
97
+
98
+ &--blue,
99
+ &--delete {
100
+ font-size: @number-keyboard-delete-font-size;
101
+ }
102
+
103
+ &--active {
104
+ background-color: @number-keyboard-key-active-color;
105
+ }
106
+
107
+ &--blue {
108
+ color: @number-keyboard-button-text-color;
109
+ background-color: @number-keyboard-button-background-color;
110
+
111
+ &.zt-key--active {
112
+ background-color: darken(@number-keyboard-button-background-color, 10%);
113
+ }
114
+ }
115
+
116
+ &__wrapper {
117
+ position: relative;
118
+ flex: 1;
119
+ flex-basis: 33%;
120
+ box-sizing: border-box;
121
+ padding: 0 8px 8px 0;
122
+
123
+ &--wider {
124
+ flex-basis: 66%;
125
+ }
126
+ }
127
+
128
+ &__delete-icon {
129
+ width: 32px;
130
+ height: 22px;
131
+ }
132
+
133
+ &__collapse-icon {
134
+ width: 30px;
135
+ height: 24px;
136
+ }
137
+
138
+ &__loading-icon {
139
+ color: @number-keyboard-button-text-color;
140
+ }
141
+ }
142
+ .zt-cell .zt-field__label {
143
+ color: rgba(0, 0, 0, 0.6);
144
+ }
@@ -1,11 +1,11 @@
1
- @import '../style/var';
2
-
3
- .zt-overlay {
4
- position: fixed;
5
- top: 0;
6
- left: 0;
7
- z-index: @overlay-z-index;
8
- width: 100%;
9
- height: 100%;
10
- background-color: @overlay-background-color;
11
- }
1
+ @import '../style/var';
2
+
3
+ .zt-overlay {
4
+ position: fixed;
5
+ top: 0;
6
+ left: 0;
7
+ z-index: @overlay-z-index;
8
+ width: 100%;
9
+ height: 100%;
10
+ background-color: @overlay-background-color;
11
+ }
@@ -0,0 +1 @@
1
+ .zt-password-input{position:relative;margin:0 16px;-webkit-user-select:none;user-select:none}.zt-password-input__error-info,.zt-password-input__info{margin-top:16px;font-size:14px;text-align:center}.zt-password-input__info{color:#969799}.zt-password-input__error-info{color:#e62314}.zt-password-input__security{display:-webkit-box;display:-webkit-flex;display:flex;width:100%;height:50px;cursor:pointer}.zt-password-input__security::after{border-radius:6px}.zt-password-input__security li{position:relative;display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-flex:1;-webkit-flex:1;flex:1;-webkit-box-align:center;-webkit-align-items:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;justify-content:center;height:100%;font-size:20px;line-height:1.2;background-color:#fff}.zt-password-input__security i{position:absolute;top:50%;left:50%;width:10px;height:10px;background-color:#000;border-radius:100%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);visibility:hidden}.zt-password-input__cursor{position:absolute;top:50%;left:50%;width:1px;height:40%;background-color:rgba(0,0,0,.6);-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);-webkit-animation:1s zt-cursor-flicker infinite;animation:1s zt-cursor-flicker infinite}@-webkit-keyframes zt-cursor-flicker{from{opacity:0}50%{opacity:1}100%{opacity:0}}@keyframes zt-cursor-flicker{from{opacity:0}50%{opacity:1}100%{opacity:0}}
@@ -0,0 +1,93 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ exports.__esModule = true;
6
+ exports.default = void 0;
7
+
8
+ var _babelHelperVueJsxMergeProps = _interopRequireDefault(require("@vue/babel-helper-vue-jsx-merge-props"));
9
+
10
+ var _utils = require("../utils");
11
+
12
+ var _functional = require("../utils/functional");
13
+
14
+ var _constant = require("../utils/constant");
15
+
16
+ // Utils
17
+ var _createNamespace = (0, _utils.createNamespace)('password-input'),
18
+ createComponent = _createNamespace[0],
19
+ bem = _createNamespace[1];
20
+
21
+ function PasswordInput(h, props, slots, ctx) {
22
+ var _ref2;
23
+
24
+ var mask = props.mask,
25
+ value = props.value,
26
+ length = props.length,
27
+ gutter = props.gutter,
28
+ focused = props.focused,
29
+ errorInfo = props.errorInfo;
30
+ var Points = [];
31
+
32
+ for (var i = 0; i < length; i++) {
33
+ var _ref;
34
+
35
+ var _char = value[i];
36
+ var showBorder = i !== 0 && !gutter;
37
+ var showCursor = focused && i === value.length;
38
+ var style = void 0;
39
+
40
+ if (i !== 0 && gutter) {
41
+ style = {
42
+ marginLeft: (0, _utils.addUnit)(gutter)
43
+ };
44
+ }
45
+
46
+ Points.push(h("li", {
47
+ "class": [(_ref = {}, _ref[_constant.BORDER_LEFT] = showBorder, _ref), bem('item', {
48
+ focus: showCursor
49
+ })],
50
+ "style": style
51
+ }, [mask ? h("i", {
52
+ "style": {
53
+ visibility: _char ? 'visible' : 'hidden'
54
+ }
55
+ }) : _char, showCursor && h("div", {
56
+ "class": bem('cursor')
57
+ })]));
58
+ }
59
+
60
+ return h("div", {
61
+ "class": bem()
62
+ }, [h("ul", (0, _babelHelperVueJsxMergeProps.default)([{
63
+ "class": [bem('security'), (_ref2 = {}, _ref2[_constant.BORDER_SURROUND] = !gutter, _ref2)],
64
+ "on": {
65
+ "touchstart": function touchstart(event) {
66
+ event.stopPropagation();
67
+ (0, _functional.emit)(ctx, 'focus', event);
68
+ }
69
+ }
70
+ }, (0, _functional.inherit)(ctx, true)]), [Points])]);
71
+ }
72
+
73
+ PasswordInput.props = {
74
+ gutter: [Number, String],
75
+ focused: Boolean,
76
+ errorInfo: String,
77
+ mask: {
78
+ type: Boolean,
79
+ default: true
80
+ },
81
+ value: {
82
+ type: String,
83
+ default: ''
84
+ },
85
+ length: {
86
+ type: [Number, String],
87
+ default: 6
88
+ }
89
+ };
90
+
91
+ var _default = createComponent(PasswordInput);
92
+
93
+ exports.default = _default;
@@ -0,0 +1,83 @@
1
+ @import '../style/var';
2
+
3
+ .zt-password-input {
4
+ position: relative;
5
+ margin: @password-input-margin;
6
+ user-select: none;
7
+
8
+ &__info,
9
+ &__error-info {
10
+ margin-top: @padding-md;
11
+ font-size: @password-input-info-font-size;
12
+ text-align: center;
13
+ }
14
+
15
+ &__info {
16
+ color: @password-input-info-color;
17
+ }
18
+
19
+ &__error-info {
20
+ color: @password-input-error-info-color;
21
+ }
22
+
23
+ &__security {
24
+ display: flex;
25
+ width: 100%;
26
+ height: @password-input-height;
27
+ cursor: pointer;
28
+
29
+ &::after {
30
+ border-radius: @password-input-border-radius;
31
+ }
32
+
33
+ li {
34
+ position: relative;
35
+ display: flex;
36
+ flex: 1;
37
+ align-items: center;
38
+ justify-content: center;
39
+ height: 100%;
40
+ font-size: @password-input-font-size;
41
+ line-height: 1.2;
42
+ background-color: @password-input-background-color;
43
+ }
44
+
45
+ i {
46
+ position: absolute;
47
+ top: 50%;
48
+ left: 50%;
49
+ width: @password-input-dot-size;
50
+ height: @password-input-dot-size;
51
+ background-color: @password-input-dot-color;
52
+ border-radius: 100%;
53
+ transform: translate(-50%, -50%);
54
+ visibility: hidden;
55
+ }
56
+ }
57
+
58
+ &__cursor {
59
+ position: absolute;
60
+ top: 50%;
61
+ left: 50%;
62
+ width: @number-keyboard-cursor-width;
63
+ height: @number-keyboard-cursor-height;
64
+ background-color: @number-keyboard-cursor-color;
65
+ transform: translate(-50%, -50%);
66
+ animation: @number-keyboard-cursor-animation-duration zt-cursor-flicker
67
+ infinite;
68
+ }
69
+ }
70
+
71
+ @keyframes zt-cursor-flicker {
72
+ from {
73
+ opacity: 0;
74
+ }
75
+
76
+ 50% {
77
+ opacity: 1;
78
+ }
79
+
80
+ 100% {
81
+ opacity: 0;
82
+ }
83
+ }
@@ -0,0 +1,2 @@
1
+ require('../../style/base.css');
2
+ require('../index.css');
@@ -0,0 +1,2 @@
1
+ require('../../style/base.less');
2
+ require('../index.less');
@@ -1,8 +1,8 @@
1
1
  require('../../style/base.css');
2
2
  require('../../loading/index.css');
3
+ require('../../overlay/index.css');
3
4
  require('../../info/index.css');
4
5
  require('../../icon/index.css');
5
- require('../../overlay/index.css');
6
6
  require('../../popup/index.css');
7
7
  require('../../toast/index.css');
8
8
  require('../index.css');
@@ -1,8 +1,8 @@
1
1
  require('../../style/base.less');
2
2
  require('../../loading/index.less');
3
+ require('../../overlay/index.less');
3
4
  require('../../info/index.less');
4
5
  require('../../icon/index.less');
5
- require('../../overlay/index.less');
6
6
  require('../../popup/index.less');
7
7
  require('../../toast/index.less');
8
8
  require('../index.less');
@@ -42,6 +42,7 @@ function isOptionDisabled(option) {
42
42
  var _default2 = createComponent({
43
43
  mixins: [_touch.TouchMixin],
44
44
  props: {
45
+ columnCollector: Array,
45
46
  valueKey: String,
46
47
  readonly: Boolean,
47
48
  allowHtml: Boolean,
@@ -66,8 +67,8 @@ var _default2 = createComponent({
66
67
  };
67
68
  },
68
69
  created: function created() {
69
- if (this.$parent.children) {
70
- this.$parent.children.push(this);
70
+ if (this.columnCollector) {
71
+ this.columnCollector.push(this);
71
72
  }
72
73
 
73
74
  this.setIndex(this.currentIndex);
@@ -76,10 +77,8 @@ var _default2 = createComponent({
76
77
  this.bindTouchEvent(this.$el);
77
78
  },
78
79
  destroyed: function destroyed() {
79
- var children = this.$parent.children;
80
-
81
- if (children) {
82
- children.splice(children.indexOf(this), 1);
80
+ if (this.columnCollector) {
81
+ this.columnCollector.splice(this.columnCollector.indexOf(this), 1);
83
82
  }
84
83
  },
85
84
  watch: {
@@ -11,8 +11,6 @@ var _utils = require("../utils");
11
11
 
12
12
  var _event = require("../utils/dom/event");
13
13
 
14
- var _constant = require("../utils/constant");
15
-
16
14
  var _shared = require("./shared");
17
15
 
18
16
  var _unit = require("../utils/format/unit");
@@ -21,6 +19,10 @@ var _loading = _interopRequireDefault(require("../loading"));
21
19
 
22
20
  var _PickerColumn = _interopRequireDefault(require("./PickerColumn"));
23
21
 
22
+ var _popup = _interopRequireDefault(require("../popup"));
23
+
24
+ var _popup2 = require("../mixins/popup");
25
+
24
26
  // Utils
25
27
  // Components
26
28
  var _createNamespace = (0, _utils.createNamespace)('picker'),
@@ -29,7 +31,16 @@ var _createNamespace = (0, _utils.createNamespace)('picker'),
29
31
  t = _createNamespace[2];
30
32
 
31
33
  var _default2 = createComponent({
34
+ mixins: [(0, _popup2.PopupMixin)()],
32
35
  props: (0, _extends2.default)({}, _shared.pickerProps, {
36
+ showPicker: {
37
+ type: Boolean,
38
+ default: true
39
+ },
40
+ showToolbar: {
41
+ type: Boolean,
42
+ default: true
43
+ },
33
44
  defaultIndex: {
34
45
  type: [Number, String],
35
46
  default: 0
@@ -56,7 +67,8 @@ var _default2 = createComponent({
56
67
  data: function data() {
57
68
  return {
58
69
  children: [],
59
- formattedColumns: []
70
+ formattedColumns: [],
71
+ show: false
60
72
  };
61
73
  },
62
74
  computed: {
@@ -82,6 +94,9 @@ var _default2 = createComponent({
82
94
  columns: {
83
95
  handler: 'format',
84
96
  immediate: true
97
+ },
98
+ showPicker: function showPicker(val) {
99
+ this.show = val;
85
100
  }
86
101
  },
87
102
  methods: {
@@ -383,6 +398,7 @@ var _default2 = createComponent({
383
398
 
384
399
  return h(_PickerColumn.default, {
385
400
  "attrs": {
401
+ "columnCollector": _this5.children,
386
402
  "readonly": _this5.readonly,
387
403
  "valueKey": _this5.valueKey,
388
404
  "allowHtml": _this5.allowHtml,
@@ -406,15 +422,29 @@ var _default2 = createComponent({
406
422
  }
407
423
  },
408
424
  render: function render(h) {
409
- return h("div", {
410
- "class": bem()
425
+ var _this6 = this;
426
+
427
+ return h(_popup.default, {
428
+ "attrs": {
429
+ "round": true,
430
+ "position": "bottom"
431
+ },
432
+ "model": {
433
+ value: _this6.show,
434
+ callback: function callback($$v) {
435
+ _this6.show = $$v;
436
+ }
437
+ }
438
+ }, [h("div", {
439
+ "class": bem(),
440
+ "ref": 'columnParent'
411
441
  }, [this.toolbarPosition === 'top' ? this.genToolbar() : h(), this.toolbarPosition === 'top' ? h("div", {
412
442
  "class": bem('border')
413
443
  }) : h(), this.loading ? h(_loading.default, {
414
444
  "class": bem('loading')
415
445
  }) : h(), this.slots('columns-top'), this.headers && this.headers.length > 0 ? this.genHeaders() : h(), this.headers && this.headers.length > 0 ? h("div", {
416
446
  "class": bem('border')
417
- }) : h(), this.genColumns(), this.slots('columns-bottom'), this.toolbarPosition === 'bottom' ? this.genToolbar() : h()]);
447
+ }) : h(), this.genColumns(), this.slots('columns-bottom'), this.toolbarPosition === 'bottom' ? this.genToolbar() : h()])]);
418
448
  }
419
449
  });
420
450