@kizmann/nano-ui 1.0.3 → 1.0.5

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 (148) hide show
  1. package/dist/218.nano-ui.js +2 -0
  2. package/dist/218.nano-ui.js.map +1 -0
  3. package/dist/933.nano-ui.js +2 -0
  4. package/dist/933.nano-ui.js.map +1 -0
  5. package/dist/nano-ui.css +1 -1
  6. package/dist/nano-ui.js +1 -3
  7. package/dist/nano-ui.js.map +1 -1
  8. package/package.json +2 -1
  9. package/src/alert/index.js +3 -3
  10. package/src/alert/src/alert/alert.js +16 -11
  11. package/src/button/index.js +2 -2
  12. package/src/cascader/index.js +2 -2
  13. package/src/checkbox/index.js +2 -4
  14. package/src/collapse/index.js +2 -2
  15. package/src/config/index.js +5 -5
  16. package/src/confirm/index.js +1 -1
  17. package/src/datepicker/index.js +2 -2
  18. package/src/datetimepicker/index.js +1 -1
  19. package/src/draggable/index.js +5 -5
  20. package/src/draggable/src/draggrid/{draggrid.js → draggrid.jsx} +1 -1
  21. package/src/draggable/src/draglist/{draglist.js → draglist.jsx} +1 -1
  22. package/src/draggable/src/dropzone/{dropzone.js → dropzone.jsx} +1 -1
  23. package/src/drawer/index.js +1 -1
  24. package/src/durationpicker/index.js +1 -1
  25. package/src/empty/index.js +1 -1
  26. package/src/file/index.js +1 -1
  27. package/src/form/index.js +6 -6
  28. package/src/index.js +91 -45
  29. package/src/index.scss +0 -1
  30. package/src/info/index.js +7 -7
  31. package/src/info/src/info-field/{info-field.js → info-field.jsx} +0 -1
  32. package/src/info/src/info-field/types/{info-field-boolean.js → info-field-boolean.jsx} +1 -1
  33. package/src/info/src/info-field/types/{info-field-datetime.js → info-field-datetime.jsx} +1 -1
  34. package/src/info/src/info-field/types/{info-field-image.js → info-field-image.jsx} +1 -1
  35. package/src/info/src/info-field/types/{info-field-option.js → info-field-option.jsx} +1 -1
  36. package/src/info/src/info-field/types/{info-field-string.js → info-field-string.jsx} +1 -1
  37. package/src/input/index.js +1 -1
  38. package/src/input-number/index.js +1 -1
  39. package/src/loader/index.js +1 -1
  40. package/src/map/index.js +2 -2
  41. package/src/mixins/src/cslo.js +1 -1
  42. package/src/modal/index.js +1 -1
  43. package/src/notification/index.js +3 -3
  44. package/src/notification/src/notification/notification.js +16 -10
  45. package/src/paginator/index.js +1 -1
  46. package/src/popover/index.js +3 -3
  47. package/src/preview/index.js +4 -4
  48. package/src/radio/index.js +2 -2
  49. package/src/rating/index.js +1 -1
  50. package/src/resizer/index.js +1 -1
  51. package/src/scrollbar/index.js +1 -1
  52. package/src/select/index.js +2 -4
  53. package/src/slider/index.js +1 -3
  54. package/src/switch/index.js +1 -3
  55. package/src/table/index.js +13 -13
  56. package/src/table/src/table/{table.js → table.jsx} +0 -1
  57. package/src/table/src/table-cell/types/{table-cell-boolean.js → table-cell-boolean.jsx} +1 -1
  58. package/src/table/src/table-cell/types/{table-cell-datetime.js → table-cell-datetime.jsx} +1 -1
  59. package/src/table/src/table-cell/types/{table-cell-image.js → table-cell-image.jsx} +1 -1
  60. package/src/table/src/table-cell/types/{table-cell-matrix.js → table-cell-matrix.jsx} +1 -1
  61. package/src/table/src/table-cell/types/{table-cell-option.js → table-cell-option.jsx} +1 -1
  62. package/src/table/src/table-cell/types/{table-cell-select.js → table-cell-select.jsx} +1 -1
  63. package/src/table/src/table-cell/types/{table-cell-string.js → table-cell-string.jsx} +1 -1
  64. package/src/table/src/table-filter/types/{table-filter-boolean.js → table-filter-boolean.jsx} +1 -1
  65. package/src/table/src/table-filter/types/{table-filter-datetime.js → table-filter-datetime.jsx} +1 -1
  66. package/src/table/src/table-filter/types/{table-filter-option.js → table-filter-option.jsx} +1 -1
  67. package/src/table/src/table-filter/types/{table-filter-string.js → table-filter-string.jsx} +1 -1
  68. package/src/tabs/index.js +2 -2
  69. package/src/tags/index.js +2 -2
  70. package/src/textarea/index.js +1 -1
  71. package/src/timepicker/index.js +2 -2
  72. package/src/transfer/index.js +1 -1
  73. package/src/virtualscroller/index.js +1 -1
  74. package/src/file-list/index.js +0 -10
  75. package/src/file-list/index.scss +0 -2
  76. package/src/file-list/src/file-list/file-list.js +0 -187
  77. package/src/file-list/src/file-list/file-list.scss +0 -47
  78. package/src/file-list/src/file-list-item/file-list-item.js +0 -168
  79. package/src/file-list/src/file-list-item/file-list-item.scss +0 -134
  80. package/src/file-list/src/file-list-item/types/file-list-item-image.js +0 -58
  81. package/src/scrollbar/src/scrollbar/scrollbar.js +0 -311
  82. package/src/virtualscroller/src/virtualscroller/virtualscroller.js +0 -267
  83. /package/src/button/src/button/{button.js → button.jsx} +0 -0
  84. /package/src/button/src/button-group/{button-group.js → button-group.jsx} +0 -0
  85. /package/src/cascader/src/cascader/{cascader.js → cascader.jsx} +0 -0
  86. /package/src/cascader/src/cascader-panel/{cascader-panel.js → cascader-panel.jsx} +0 -0
  87. /package/src/checkbox/src/checkbox/{checkbox.js → checkbox.jsx} +0 -0
  88. /package/src/checkbox/src/checkbox-group/{checkbox-group.js → checkbox-group.jsx} +0 -0
  89. /package/src/collapse/src/collapse/{collapse.js → collapse.jsx} +0 -0
  90. /package/src/collapse/src/collapse-item/{collapse-item.js → collapse-item.jsx} +0 -0
  91. /package/src/config/src/builder/{builder.js → builder.jsx} +0 -0
  92. /package/src/config/src/config/{config-next.js → config-next.jsx} +0 -0
  93. /package/src/config/src/config/{config.js → config.jsx} +0 -0
  94. /package/src/config/src/reference-panel/{reference-panel.js → reference-panel.jsx} +0 -0
  95. /package/src/config/src/reference-picker/{reference-picker.js → reference-picker.jsx} +0 -0
  96. /package/src/confirm/src/confirm/{confirm.js → confirm.jsx} +0 -0
  97. /package/src/datepicker/src/datepicker/{datepicker.js → datepicker.jsx} +0 -0
  98. /package/src/datepicker/src/datepicker-panel/{datepicker-panel.js → datepicker-panel.jsx} +0 -0
  99. /package/src/datetimepicker/src/datetimepicker/{datetimepicker.js → datetimepicker.jsx} +0 -0
  100. /package/src/draggable/src/draggrid-item/{draggrid-item.js → draggrid-item.jsx} +0 -0
  101. /package/src/draggable/src/draglist-item/{draglist-item.js → draglist-item.jsx} +0 -0
  102. /package/src/drawer/src/drawer/{drawer.js → drawer.jsx} +0 -0
  103. /package/src/durationpicker/src/durationpicker/{durationpicker.js → durationpicker.jsx} +0 -0
  104. /package/src/empty/src/empty-icon/{empty-icon.js → empty-icon.jsx} +0 -0
  105. /package/src/file/src/file/{file.js → file.jsx} +0 -0
  106. /package/src/form/src/form/{form.js → form.jsx} +0 -0
  107. /package/src/form/src/form-frame/{form-frame.js → form-frame.jsx} +0 -0
  108. /package/src/form/src/form-frame-item/{form-frame-item.js → form-frame-item.jsx} +0 -0
  109. /package/src/form/src/form-group/{form-group.js → form-group.jsx} +0 -0
  110. /package/src/form/src/form-item/{form-item.js → form-item.jsx} +0 -0
  111. /package/src/form/src/form-menu/{form-menu.js → form-menu.jsx} +0 -0
  112. /package/src/info/src/info/{info.js → info.jsx} +0 -0
  113. /package/src/info/src/info-column/{info-column.js → info-column.jsx} +0 -0
  114. /package/src/input/src/input/{input.js → input.jsx} +0 -0
  115. /package/src/input-number/src/input-number/{input-number.js → input-number.jsx} +0 -0
  116. /package/src/loader/src/loader/{loader.js → loader.jsx} +0 -0
  117. /package/src/map/src/map/{map.js → map.jsx} +0 -0
  118. /package/src/map/src/map-marker/{map-marker.js → map-marker.jsx} +0 -0
  119. /package/src/modal/src/modal/{modal.js → modal.jsx} +0 -0
  120. /package/src/paginator/src/paginator/{paginator.js → paginator.jsx} +0 -0
  121. /package/src/popover/src/popover/{popover.js → popover.jsx} +0 -0
  122. /package/src/popover/src/popover-group/{popover-group.js → popover-group.jsx} +0 -0
  123. /package/src/popover/src/popover-option/{popover-option.js → popover-option.jsx} +0 -0
  124. /package/src/preview/src/preview/{preview.js → preview.jsx} +0 -0
  125. /package/src/preview/src/preview-image/{preview-image.js → preview-image.jsx} +0 -0
  126. /package/src/preview/src/preview-plain/{preview-plain.js → preview-plain.jsx} +0 -0
  127. /package/src/preview/src/preview-video/{preview-video.js → preview-video.jsx} +0 -0
  128. /package/src/radio/src/radio/{radio.js → radio.jsx} +0 -0
  129. /package/src/radio/src/radio-group/{radio-group.js → radio-group.jsx} +0 -0
  130. /package/src/rating/src/rating/{rating.js → rating.jsx} +0 -0
  131. /package/src/resizer/src/resizer/{resizer.js → resizer.jsx} +0 -0
  132. /package/src/scrollbar/src/scrollbar/{scrollbar.next.js → scrollbar.jsx} +0 -0
  133. /package/src/select/src/select/{select.js → select.jsx} +0 -0
  134. /package/src/select/src/select-option/{select-option.js → select-option.jsx} +0 -0
  135. /package/src/slider/src/slider/{slider.js → slider.jsx} +0 -0
  136. /package/src/switch/src/switch/{switch.js → switch.jsx} +0 -0
  137. /package/src/table/src/table-cell/{table-cell.js → table-cell.jsx} +0 -0
  138. /package/src/table/src/table-column/{table-column.js → table-column.jsx} +0 -0
  139. /package/src/table/src/table-filter/{table-filter.js → table-filter.jsx} +0 -0
  140. /package/src/tabs/src/tabs/{tabs.js → tabs.jsx} +0 -0
  141. /package/src/tabs/src/tabs-item/{tabs-item.js → tabs-item.jsx} +0 -0
  142. /package/src/tags/src/tags/{tags.js → tags.jsx} +0 -0
  143. /package/src/tags/src/tags-item/{tags-item.js → tags-item.jsx} +0 -0
  144. /package/src/textarea/src/textarea/{textarea.js → textarea.jsx} +0 -0
  145. /package/src/timepicker/src/timepicker/{timepicker.js → timepicker.jsx} +0 -0
  146. /package/src/timepicker/src/timepicker-panel/{timepicker-panel.js → timepicker-panel.jsx} +0 -0
  147. /package/src/transfer/src/transfer/{transfer.js → transfer.jsx} +0 -0
  148. /package/src/virtualscroller/src/virtualscroller/{virtualscroller.beta.js → virtualscroller.jsx} +0 -0
@@ -1,267 +0,0 @@
1
- import { UUID, Arr, Obj, Num, Dom, Any, Locale, Event } from "@kizmann/pico-js";
2
-
3
- export default {
4
-
5
- name: 'NVirtualscroller',
6
-
7
- model: {
8
- prop: 'items'
9
- },
10
-
11
- props: {
12
-
13
- items: {
14
- default()
15
- {
16
- return [];
17
- }
18
- },
19
-
20
- itemHeight: {
21
- default()
22
- {
23
- return 30;
24
- }
25
- },
26
-
27
- viewportHeight: {
28
- default()
29
- {
30
- return false;
31
- }
32
- },
33
-
34
- renderNode: {
35
- default()
36
- {
37
- return null;
38
- }
39
- },
40
-
41
- bufferItems: {
42
- default()
43
- {
44
- return 8;
45
- },
46
- type: [Number]
47
- },
48
-
49
- frameRate: {
50
- default()
51
- {
52
- return 10;
53
- },
54
- type: [Number]
55
- }
56
-
57
- },
58
-
59
- methods: {
60
-
61
- limitedRefreshDriver(forceUpdate = false, overrideBuffer = false)
62
- {
63
- let framerateTimer = (val = null) => {
64
-
65
- if ( ! Any.isEmpty(val) ) {
66
- this.refreshDriverFramerate = val;
67
- }
68
-
69
- return this.refreshDriverFramerate;
70
- };
71
-
72
- Any.framerate(() => {
73
-
74
- clearTimeout(this.refreshDriverDebounce);
75
-
76
- this.refreshDriverDebounce = setTimeout(() => {
77
- this.refreshDriver(forceUpdate, overrideBuffer);
78
- }, (1000 / this.frameRate) + 50);
79
-
80
- this.refreshDriver(forceUpdate, overrideBuffer);
81
-
82
- }, this.frameRate, framerateTimer)();
83
- },
84
-
85
- refreshDriver(forceUpdate = false, overrideBuffer = false)
86
- {
87
- if ( ! this.$refs.viewport ) {
88
- return;
89
- }
90
-
91
- this.latestBufferItems = this.latestBufferItems || this.bufferItems;
92
-
93
- if ( overrideBuffer ) {
94
- this.latestBufferItems = this.bufferItems / 2;
95
- }
96
-
97
- let scrollTop = 0, scrollFix = this.scrollFix || scrollTop;
98
-
99
- if ( this.$refs.viewport ) {
100
- scrollTop = this.$refs.viewport.$el.scrollTop;
101
- }
102
-
103
- let scrollBuffer = (this.latestBufferItems / 2 * this.itemHeight);
104
-
105
- if ( scrollTop > scrollFix + scrollBuffer || scrollTop < scrollFix - scrollBuffer ) {
106
- scrollFix = scrollTop;
107
- }
108
-
109
- let options = {
110
- bufferItems: this.latestBufferItems,
111
- totalItems: this.items.length,
112
- viewportHeight: this.height,
113
- minRowHeight: this.itemHeight,
114
- scrollTop: scrollTop,
115
- };
116
-
117
- if ( this.scrollFix === scrollFix && ! forceUpdate ) {
118
- return;
119
- }
120
-
121
- this.scrollFix = scrollFix;
122
-
123
- let newState = virtualScrollDriver(options, this.state, () => {
124
- return this.itemHeight;
125
- });
126
-
127
- let isEqualState = Arr.reduce(Any.keys(newState), (merge, key) => {
128
- return merge && this.state[key] === newState[key];
129
- }, true);
130
-
131
- this.state = newState;
132
-
133
- if ( isEqualState ) {
134
- return;
135
- }
136
-
137
- this.veUpdate++;
138
- },
139
-
140
- discoverHeight()
141
- {
142
- if ( this.viewportHeight ) {
143
- this.height = Dom.find(this.$el).height();
144
- }
145
-
146
- if ( ! this.viewportHeight ) {
147
- this.height = this.items.length * this.itemHeight;
148
- }
149
-
150
- if ( this.height === 0 ) {
151
- return Any.delay(this.discoverHeight, 100);
152
- }
153
-
154
- Any.async(() => this.limitedRefreshDriver(true, false));
155
- },
156
-
157
- eventScroll()
158
- {
159
- Any.async(() => this.limitedRefreshDriver(false, false));
160
- },
161
-
162
- eventScrollstop()
163
- {
164
- Any.async(() => this.limitedRefreshDriver(false, false));
165
- }
166
-
167
- },
168
-
169
- data()
170
- {
171
- return {
172
- height: 0, scrollFix: -1, veUpdate: 0
173
- };
174
- },
175
-
176
- beforeMount()
177
- {
178
- this.state = {
179
- items: Arr.make(this.items.length)
180
- };
181
- },
182
-
183
- mounted()
184
- {
185
- this.$watch('items', this.discoverHeight);
186
-
187
- let ident = {
188
- _uid: this.uid
189
- };
190
-
191
- Dom.find(this.$el).on('scrollstop', this.eventScrollstop, ident);
192
-
193
- Dom.find(this.$el).observerResize(this.discoverHeight)(this.$el);
194
- },
195
-
196
- beforeDestroy()
197
- {
198
- let ident = {
199
- _uid: this.uid
200
- };
201
-
202
- Dom.find(this.$el).off('scrollstop', null, ident);
203
- },
204
-
205
- renderItems(start, count)
206
- {
207
- return Arr.each(this.items.slice(start, start + count), (value, index) => {
208
- return this.renderNode({ value, index });
209
- });
210
- },
211
-
212
- renderBody()
213
- {
214
- if ( ! this.items.length ) {
215
- return this.$slots.empty || null;
216
- }
217
-
218
- if ( this.viewportHeight === false ) {
219
- return Arr.each(this.items, (value, index) => {
220
- return this.renderNode({ value, index });
221
- });
222
- }
223
-
224
- let targetHeight = Obj.get(this.state, 'targetHeight');
225
-
226
- let style = {
227
- overflow: 'auto', overflowAnchor: 'none', outline: 'none', height: this.height + 'px'
228
- };
229
-
230
- let events = {
231
- scroll: this.eventScroll
232
- };
233
-
234
- return (
235
- <NScrollbar ref="viewport" on={events} style={style}>
236
- <div key={this.veUpdate} style={{ height: targetHeight ? targetHeight + 'px' : 'auto', overflow: 'hidden' }}>
237
- { ! Any.isEmpty(this.state.topPlaceholderHeight) &&
238
- <div draggable={false} style={{ height: this.state.topPlaceholderHeight + 'px' }}></div>
239
- }
240
- { ! Any.isEmpty(this.state.middleItemCount) &&
241
- this.ctor('renderItems')(this.state.firstMiddleItem, this.state.middleItemCount)
242
- }
243
- { ! Any.isEmpty(this.state.middlePlaceholderHeight) &&
244
- <div draggable={false} style={{ height: this.state.middlePlaceholderHeight + 'px' }}></div>
245
- }
246
- { ! Any.isEmpty(this.state.lastItemCount) &&
247
- this.ctor('renderItems')(this.items.length - this.state.lastItemCount, this.state.lastItemCount)
248
- }
249
- </div>
250
- </NScrollbar>
251
- );
252
- },
253
-
254
- render($render)
255
- {
256
- this.$render = $render;
257
-
258
- return (
259
- <div class="n-virtualscroller">
260
- { this.$slots.before || null }
261
- { this.ctor('renderBody')() }
262
- { this.$slots.default || null }
263
- </div>
264
- );
265
- }
266
-
267
- }
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes