@revolist/revogrid 4.4.0-next.2 → 4.4.0-next.21

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 (243) hide show
  1. package/custom-element/columnService.js +1 -1
  2. package/custom-element/consts.js +2 -1
  3. package/custom-element/consts.js.map +1 -1
  4. package/custom-element/localScrollService.js +1 -1
  5. package/custom-element/localScrollService.js.map +1 -1
  6. package/custom-element/revo-grid.js +163 -97
  7. package/custom-element/revo-grid.js.map +1 -1
  8. package/custom-element/revogr-clipboard.js +24 -5
  9. package/custom-element/revogr-clipboard.js.map +1 -1
  10. package/custom-element/revogr-edit2.js +12 -6
  11. package/custom-element/revogr-edit2.js.map +1 -1
  12. package/custom-element/revogr-focus2.js +1 -1
  13. package/custom-element/revogr-focus2.js.map +1 -1
  14. package/custom-element/revogr-header2.js +25 -11
  15. package/custom-element/revogr-header2.js.map +1 -1
  16. package/custom-element/revogr-overlay-selection2.js +99 -32
  17. package/custom-element/revogr-overlay-selection2.js.map +1 -1
  18. package/custom-element/revogr-row-headers2.js +1 -2
  19. package/custom-element/revogr-row-headers2.js.map +1 -1
  20. package/custom-element/revogr-viewport-scroll2.js +39 -6
  21. package/custom-element/revogr-viewport-scroll2.js.map +1 -1
  22. package/dist/cjs/{debounce-525dd66c.js → debounce-f50730b6.js} +1 -38
  23. package/dist/cjs/debounce-f50730b6.js.map +1 -0
  24. package/dist/cjs/dispatcher-20520c70.js +21 -0
  25. package/dist/cjs/dispatcher-20520c70.js.map +1 -0
  26. package/dist/cjs/events-030618fc.js +459 -0
  27. package/dist/cjs/events-030618fc.js.map +1 -0
  28. package/dist/cjs/filter.button-6badec7a.js +44 -0
  29. package/dist/cjs/filter.button-6badec7a.js.map +1 -0
  30. package/dist/cjs/{index-aad39b7b.js → index-ee2ef5ae.js} +96 -36
  31. package/dist/cjs/index-ee2ef5ae.js.map +1 -0
  32. package/dist/cjs/index-effc94b9.js +3944 -0
  33. package/dist/cjs/index-effc94b9.js.map +1 -0
  34. package/dist/cjs/isString-3dde8d95.js +38 -0
  35. package/dist/cjs/isString-3dde8d95.js.map +1 -0
  36. package/dist/cjs/keyCodes.utils-d665ebed.js +271 -0
  37. package/dist/cjs/keyCodes.utils-d665ebed.js.map +1 -0
  38. package/dist/cjs/loader.cjs.js +3 -3
  39. package/dist/cjs/loader.cjs.js.map +1 -1
  40. package/dist/cjs/localScrollService-a81823c5.js +403 -0
  41. package/dist/cjs/localScrollService-a81823c5.js.map +1 -0
  42. package/dist/cjs/revo-grid.cjs.entry.js +3858 -0
  43. package/dist/cjs/revo-grid.cjs.entry.js.map +1 -0
  44. package/dist/cjs/revo-grid.cjs.js +3 -3
  45. package/dist/cjs/revo-grid.cjs.js.map +1 -1
  46. package/dist/cjs/revogr-clipboard.cjs.entry.js +24 -6
  47. package/dist/cjs/revogr-clipboard.cjs.entry.js.map +1 -1
  48. package/dist/cjs/revogr-data_3.cjs.entry.js +1138 -0
  49. package/dist/cjs/revogr-data_3.cjs.entry.js.map +1 -0
  50. package/dist/cjs/revogr-edit_2.cjs.entry.js +325 -0
  51. package/dist/cjs/revogr-edit_2.cjs.entry.js.map +1 -0
  52. package/dist/cjs/revogr-filter-panel.cjs.entry.js +6 -5
  53. package/dist/cjs/revogr-filter-panel.cjs.entry.js.map +1 -1
  54. package/dist/cjs/revogr-focus_5.cjs.entry.js +1231 -0
  55. package/dist/cjs/revogr-focus_5.cjs.entry.js.map +1 -0
  56. package/dist/cjs/{revo-grid_11.cjs.entry.js → viewport.helpers-70ccec8f.js} +13978 -25269
  57. package/dist/cjs/viewport.helpers-70ccec8f.js.map +1 -0
  58. package/dist/collection/collection-manifest.json +1 -1
  59. package/dist/collection/components/clipboard/revogr-clipboard.d.ts +6 -2
  60. package/dist/collection/components/clipboard/revogr-clipboard.js +46 -5
  61. package/dist/collection/components/clipboard/revogr-clipboard.js.map +1 -1
  62. package/dist/collection/components/header/headerCellRenderer.d.ts +2 -1
  63. package/dist/collection/components/header/headerCellRenderer.js +1 -1
  64. package/dist/collection/components/header/headerCellRenderer.js.map +1 -1
  65. package/dist/collection/components/header/headerRenderer.d.ts +2 -2
  66. package/dist/collection/components/header/headerRenderer.js +1 -1
  67. package/dist/collection/components/header/headerRenderer.js.map +1 -1
  68. package/dist/collection/components/header/revogr-header.d.ts +15 -1
  69. package/dist/collection/components/header/revogr-header.js +34 -8
  70. package/dist/collection/components/header/revogr-header.js.map +1 -1
  71. package/dist/collection/components/overlay/autofill.service.d.ts +7 -3
  72. package/dist/collection/components/overlay/autofill.service.js +32 -12
  73. package/dist/collection/components/overlay/autofill.service.js.map +1 -1
  74. package/dist/collection/components/overlay/clipboard.service.d.ts +1 -1
  75. package/dist/collection/components/overlay/clipboard.service.js +2 -2
  76. package/dist/collection/components/overlay/clipboard.service.js.map +1 -1
  77. package/dist/collection/components/overlay/keyboard.service.js +2 -6
  78. package/dist/collection/components/overlay/keyboard.service.js.map +1 -1
  79. package/dist/collection/components/overlay/revogr-edit.d.ts +8 -0
  80. package/dist/collection/components/overlay/revogr-edit.js +34 -9
  81. package/dist/collection/components/overlay/revogr-edit.js.map +1 -1
  82. package/dist/collection/components/overlay/revogr-overlay-selection.d.ts +32 -10
  83. package/dist/collection/components/overlay/revogr-overlay-selection.js +80 -12
  84. package/dist/collection/components/overlay/revogr-overlay-selection.js.map +1 -1
  85. package/dist/collection/components/overlay/revogr-overlay-style.css +71 -4
  86. package/dist/collection/components/revoGrid/revo-grid.d.ts +15 -4
  87. package/dist/collection/components/revoGrid/revo-grid.js +60 -19
  88. package/dist/collection/components/revoGrid/revo-grid.js.map +1 -1
  89. package/dist/collection/components/revoGrid/viewport.scrolling.service.d.ts +6 -2
  90. package/dist/collection/components/revoGrid/viewport.scrolling.service.js +26 -4
  91. package/dist/collection/components/revoGrid/viewport.scrolling.service.js.map +1 -1
  92. package/dist/collection/components/revoGrid/viewport.section.d.ts +3 -2
  93. package/dist/collection/components/revoGrid/viewport.section.js +8 -4
  94. package/dist/collection/components/revoGrid/viewport.section.js.map +1 -1
  95. package/dist/collection/components/revoGrid/viewport.service.d.ts +4 -0
  96. package/dist/collection/components/revoGrid/viewport.service.js +15 -3
  97. package/dist/collection/components/revoGrid/viewport.service.js.map +1 -1
  98. package/dist/collection/components/rowHeaders/revogr-row-headers.js.map +1 -1
  99. package/dist/collection/components/scroll/revogr-viewport-scroll-style.css +3 -0
  100. package/dist/collection/components/scroll/revogr-viewport-scroll.d.ts +16 -5
  101. package/dist/collection/components/scroll/revogr-viewport-scroll.js +64 -9
  102. package/dist/collection/components/scroll/revogr-viewport-scroll.js.map +1 -1
  103. package/dist/collection/components/selectionFocus/revogr-focus-style.css +1 -1
  104. package/dist/collection/components.d.ts +110 -6
  105. package/dist/collection/interfaces.d.ts +4 -1
  106. package/dist/collection/plugins/groupingColumn/columnGroupsRenderer.d.ts +3 -2
  107. package/dist/collection/plugins/groupingColumn/columnGroupsRenderer.js +2 -2
  108. package/dist/collection/plugins/groupingColumn/columnGroupsRenderer.js.map +1 -1
  109. package/dist/collection/plugins/groupingColumn/headerGroupRenderer.d.ts +2 -2
  110. package/dist/collection/plugins/groupingColumn/headerGroupRenderer.js +1 -1
  111. package/dist/collection/plugins/groupingColumn/headerGroupRenderer.js.map +1 -1
  112. package/dist/collection/plugins/sorting/sorting.plugin.d.ts +21 -13
  113. package/dist/collection/plugins/sorting/sorting.plugin.js +77 -70
  114. package/dist/collection/plugins/sorting/sorting.plugin.js.map +1 -1
  115. package/dist/collection/serve/controller.js +183 -0
  116. package/dist/collection/services/localScrollService.js +1 -1
  117. package/dist/collection/services/localScrollService.js.map +1 -1
  118. package/dist/collection/services/resizable.directive.d.ts +8 -7
  119. package/dist/collection/services/resizable.directive.js +13 -36
  120. package/dist/collection/services/resizable.directive.js.map +1 -1
  121. package/dist/collection/services/resizable.element.d.ts +4 -0
  122. package/dist/collection/services/resizable.element.js +39 -0
  123. package/dist/collection/services/resizable.element.js.map +1 -0
  124. package/dist/collection/stencil-public-runtime.d.ts +1 -0
  125. package/dist/collection/store/viewPort/viewport.store.js +0 -1
  126. package/dist/collection/store/viewPort/viewport.store.js.map +1 -1
  127. package/dist/collection/utils/consts.d.ts +1 -0
  128. package/dist/collection/utils/consts.js +1 -0
  129. package/dist/collection/utils/consts.js.map +1 -1
  130. package/dist/collection/utils/events.d.ts +2 -1
  131. package/dist/collection/utils/events.js +18 -2
  132. package/dist/collection/utils/events.js.map +1 -1
  133. package/dist/collection/utils/mobile.d.ts +1 -0
  134. package/dist/collection/utils/mobile.js +7 -0
  135. package/dist/collection/utils/mobile.js.map +1 -0
  136. package/dist/esm/{debounce-301fd4d2.js → debounce-820b5a8b.js} +2 -34
  137. package/dist/esm/debounce-820b5a8b.js.map +1 -0
  138. package/dist/esm/dispatcher-9e9c0233.js +19 -0
  139. package/dist/esm/dispatcher-9e9c0233.js.map +1 -0
  140. package/dist/esm/events-31272e5e.js +454 -0
  141. package/dist/esm/events-31272e5e.js.map +1 -0
  142. package/dist/esm/filter.button-21ce90ef.js +38 -0
  143. package/dist/esm/filter.button-21ce90ef.js.map +1 -0
  144. package/dist/esm/{index-5e90b19b.js → index-05947c5f.js} +97 -37
  145. package/dist/esm/index-05947c5f.js.map +1 -0
  146. package/dist/esm/index-728bf6e3.js +3889 -0
  147. package/dist/esm/index-728bf6e3.js.map +1 -0
  148. package/dist/esm/isString-d539060a.js +36 -0
  149. package/dist/esm/isString-d539060a.js.map +1 -0
  150. package/dist/esm/keyCodes.utils-c0064460.js +265 -0
  151. package/dist/esm/keyCodes.utils-c0064460.js.map +1 -0
  152. package/dist/esm/loader.js +4 -4
  153. package/dist/esm/loader.js.map +1 -1
  154. package/dist/esm/localScrollService-884d8952.js +400 -0
  155. package/dist/esm/localScrollService-884d8952.js.map +1 -0
  156. package/dist/esm/revo-grid.entry.js +3854 -0
  157. package/dist/esm/revo-grid.entry.js.map +1 -0
  158. package/dist/esm/revo-grid.js +4 -4
  159. package/dist/esm/revo-grid.js.map +1 -1
  160. package/dist/esm/revogr-clipboard.entry.js +24 -6
  161. package/dist/esm/revogr-clipboard.entry.js.map +1 -1
  162. package/dist/esm/revogr-data_3.entry.js +1132 -0
  163. package/dist/esm/revogr-data_3.entry.js.map +1 -0
  164. package/dist/esm/revogr-edit_2.entry.js +320 -0
  165. package/dist/esm/revogr-edit_2.entry.js.map +1 -0
  166. package/dist/esm/revogr-filter-panel.entry.js +3 -2
  167. package/dist/esm/revogr-filter-panel.entry.js.map +1 -1
  168. package/dist/esm/revogr-focus_5.entry.js +1223 -0
  169. package/dist/esm/revogr-focus_5.entry.js.map +1 -0
  170. package/dist/esm/{revo-grid_11.entry.js → viewport.helpers-c08e729e.js} +13790 -25093
  171. package/dist/esm/viewport.helpers-c08e729e.js.map +1 -0
  172. package/dist/revo-grid/debounce-820b5a8b.js +5 -0
  173. package/dist/revo-grid/debounce-820b5a8b.js.map +1 -0
  174. package/dist/revo-grid/dispatcher-9e9c0233.js +5 -0
  175. package/dist/revo-grid/dispatcher-9e9c0233.js.map +1 -0
  176. package/dist/revo-grid/events-31272e5e.js +5 -0
  177. package/dist/revo-grid/events-31272e5e.js.map +1 -0
  178. package/dist/revo-grid/filter.button-21ce90ef.js +5 -0
  179. package/dist/revo-grid/filter.button-21ce90ef.js.map +1 -0
  180. package/dist/revo-grid/index-05947c5f.js +6 -0
  181. package/dist/revo-grid/index-05947c5f.js.map +1 -0
  182. package/dist/revo-grid/index-728bf6e3.js +5 -0
  183. package/dist/revo-grid/index-728bf6e3.js.map +1 -0
  184. package/dist/revo-grid/isString-d539060a.js +5 -0
  185. package/dist/revo-grid/isString-d539060a.js.map +1 -0
  186. package/dist/revo-grid/keyCodes.utils-c0064460.js +5 -0
  187. package/dist/revo-grid/keyCodes.utils-c0064460.js.map +1 -0
  188. package/dist/revo-grid/localScrollService-884d8952.js +5 -0
  189. package/dist/revo-grid/localScrollService-884d8952.js.map +1 -0
  190. package/dist/revo-grid/revo-grid.entry.js +5 -0
  191. package/dist/revo-grid/revo-grid.entry.js.map +1 -0
  192. package/dist/revo-grid/revo-grid.esm.js +1 -1
  193. package/dist/revo-grid/revo-grid.esm.js.map +1 -1
  194. package/dist/revo-grid/revogr-clipboard.entry.js +1 -1
  195. package/dist/revo-grid/revogr-clipboard.entry.js.map +1 -1
  196. package/dist/revo-grid/revogr-data_3.entry.js +5 -0
  197. package/dist/revo-grid/revogr-data_3.entry.js.map +1 -0
  198. package/dist/revo-grid/revogr-edit_2.entry.js +5 -0
  199. package/dist/revo-grid/revogr-edit_2.entry.js.map +1 -0
  200. package/dist/revo-grid/revogr-filter-panel.entry.js +1 -1
  201. package/dist/revo-grid/revogr-filter-panel.entry.js.map +1 -1
  202. package/dist/revo-grid/revogr-focus_5.entry.js +5 -0
  203. package/dist/revo-grid/revogr-focus_5.entry.js.map +1 -0
  204. package/dist/revo-grid/viewport.helpers-c08e729e.js +5 -0
  205. package/dist/revo-grid/viewport.helpers-c08e729e.js.map +1 -0
  206. package/dist/types/components/clipboard/revogr-clipboard.d.ts +6 -2
  207. package/dist/types/components/header/headerCellRenderer.d.ts +2 -1
  208. package/dist/types/components/header/headerRenderer.d.ts +2 -2
  209. package/dist/types/components/header/revogr-header.d.ts +15 -1
  210. package/dist/types/components/overlay/autofill.service.d.ts +7 -3
  211. package/dist/types/components/overlay/clipboard.service.d.ts +1 -1
  212. package/dist/types/components/overlay/revogr-edit.d.ts +8 -0
  213. package/dist/types/components/overlay/revogr-overlay-selection.d.ts +32 -10
  214. package/dist/types/components/revoGrid/revo-grid.d.ts +15 -4
  215. package/dist/types/components/revoGrid/viewport.scrolling.service.d.ts +6 -2
  216. package/dist/types/components/revoGrid/viewport.section.d.ts +3 -2
  217. package/dist/types/components/revoGrid/viewport.service.d.ts +4 -0
  218. package/dist/types/components/scroll/revogr-viewport-scroll.d.ts +16 -5
  219. package/dist/types/components.d.ts +110 -6
  220. package/dist/types/interfaces.d.ts +4 -1
  221. package/dist/types/plugins/groupingColumn/columnGroupsRenderer.d.ts +3 -2
  222. package/dist/types/plugins/groupingColumn/headerGroupRenderer.d.ts +2 -2
  223. package/dist/types/plugins/sorting/sorting.plugin.d.ts +21 -13
  224. package/dist/types/services/resizable.directive.d.ts +8 -7
  225. package/dist/types/services/resizable.element.d.ts +4 -0
  226. package/dist/types/stencil-public-runtime.d.ts +1 -0
  227. package/dist/types/utils/consts.d.ts +1 -0
  228. package/dist/types/utils/events.d.ts +2 -1
  229. package/dist/types/utils/mobile.d.ts +1 -0
  230. package/package.json +4 -3
  231. package/dist/cjs/debounce-525dd66c.js.map +0 -1
  232. package/dist/cjs/index-aad39b7b.js.map +0 -1
  233. package/dist/cjs/revo-grid_11.cjs.entry.js.map +0 -1
  234. package/dist/esm/debounce-301fd4d2.js.map +0 -1
  235. package/dist/esm/index-5e90b19b.js.map +0 -1
  236. package/dist/esm/revo-grid_11.entry.js.map +0 -1
  237. package/dist/revo-grid/debounce-301fd4d2.js +0 -5
  238. package/dist/revo-grid/debounce-301fd4d2.js.map +0 -1
  239. package/dist/revo-grid/index-5e90b19b.js +0 -6
  240. package/dist/revo-grid/index-5e90b19b.js.map +0 -1
  241. package/dist/revo-grid/revo-grid_11.entry.js +0 -5
  242. package/dist/revo-grid/revo-grid_11.entry.js.map +0 -1
  243. /package/dist/collection/{utilsExternal/generate-data.js → serve/data.js} +0 -0
@@ -1,6 +1,10 @@
1
1
  import { EventEmitter } from '../../stencil-public-runtime';
2
2
  import { RevoGrid } from '../../interfaces';
3
3
  export declare class Clipboard {
4
+ /**
5
+ * If readonly mode enables no need for Paste event
6
+ */
7
+ readonly: boolean;
4
8
  /**
5
9
  * Fired when region pasted
6
10
  * @event pasteregion
@@ -71,8 +75,8 @@ export declare class Clipboard {
71
75
  */
72
76
  copyStarted(e: ClipboardEvent): void;
73
77
  /**
74
- * Listen to copy event and emit copy region event
75
- */
78
+ * Listen to copy event and emit copy region event
79
+ */
76
80
  cutStarted(e: ClipboardEvent): void;
77
81
  doCopy(e: DataTransfer, data?: RevoGrid.DataFormat[][]): Promise<void>;
78
82
  parserCopy(data: RevoGrid.DataFormat[][]): string;
@@ -1,7 +1,8 @@
1
1
  import { VNode } from '../../stencil-public-runtime';
2
2
  import { RevoGrid } from '../../interfaces';
3
+ import { ResizeProps } from '../../services/resizable.directive';
3
4
  type Props = {
4
- props: RevoGrid.CellProps;
5
+ props: RevoGrid.CellProps & Partial<ResizeProps>;
5
6
  additionalData: any;
6
7
  data?: RevoGrid.ColumnTemplateProp;
7
8
  };
@@ -1,6 +1,6 @@
1
1
  import { VNode } from '../../stencil-public-runtime';
2
2
  import { RevoGrid, Selection } from '../../interfaces';
3
- import { ResizeEvent } from '../../services/resizable.directive';
3
+ import { ResizeEvent, ResizeProps } from '../../services/resizable.directive';
4
4
  type Props = {
5
5
  column: RevoGrid.VirtualPositionItem;
6
6
  additionalData: any;
@@ -11,6 +11,6 @@ type Props = {
11
11
  onResize?(e: ResizeEvent): void;
12
12
  onClick?(data: RevoGrid.InitialHeaderClick): void;
13
13
  onDoubleClick?(data: RevoGrid.InitialHeaderClick): void;
14
- };
14
+ } & Partial<Pick<ResizeProps, 'active'>>;
15
15
  declare const HeaderRenderer: (p: Props) => VNode;
16
16
  export default HeaderRenderer;
@@ -2,6 +2,7 @@ import { EventEmitter } from '../../stencil-public-runtime';
2
2
  import { HTMLStencilElement } from '../../stencil-public-runtime';
3
3
  import { Observable, RevoGrid, Selection } from '../../interfaces';
4
4
  import { Groups } from '../../store/dataSource/data.store';
5
+ import { ResizeProps } from '../../services/resizable.directive';
5
6
  export declare class RevogrHeaderComponent {
6
7
  element: HTMLStencilElement;
7
8
  viewportCol: Observable<RevoGrid.ViewportState>;
@@ -10,10 +11,23 @@ export declare class RevogrHeaderComponent {
10
11
  parent: string;
11
12
  groups: Groups;
12
13
  groupingDepth: number;
14
+ /**
15
+ * If columns can be resized
16
+ */
13
17
  canResize: boolean;
18
+ /**
19
+ * Define custom resize position
20
+ */
21
+ resizeHandler: ResizeProps['active'];
14
22
  colData: RevoGrid.ColumnRegular[];
15
23
  columnFilter: boolean;
16
- type: string;
24
+ /**
25
+ * Column type
26
+ */
27
+ type: RevoGrid.DimensionCols | 'rowHeaders';
28
+ /**
29
+ * Extra properties to pass into header renderer, such as vue or react components to handle parent
30
+ */
17
31
  additionalData: any;
18
32
  initialHeaderClick: EventEmitter<RevoGrid.InitialHeaderClick>;
19
33
  headerresize: EventEmitter<RevoGrid.ViewSettingSizeProp>;
@@ -39,9 +39,10 @@ export declare class AutoFillService {
39
39
  * @param selectionFocus
40
40
  */
41
41
  renderAutofill(range: Selection.RangeArea, selectionFocus: Selection.Cell): any;
42
+ private autoFillHandler;
42
43
  get isAutoFill(): boolean;
43
44
  /** Process mouse move events */
44
- selectionMouseMove(e: MouseEvent & TouchEvent): void;
45
+ selectionMouseMove(e: MouseEvent | TouchEvent): void;
45
46
  private getFocus;
46
47
  /**
47
48
  * Autofill logic:
@@ -54,7 +55,7 @@ export declare class AutoFillService {
54
55
  * Can be triggered from MouseDown selection on element
55
56
  * Or can be triggered on corner square drag
56
57
  */
57
- selectionStart(e: MouseEvent, data: EventData, type?: AutoFillType): void;
58
+ selectionStart(target: Element, data: EventData, type?: AutoFillType): void;
58
59
  /**
59
60
  * Clear current range selection
60
61
  * on mouse up and mouse leave events
@@ -64,7 +65,10 @@ export declare class AutoFillService {
64
65
  onRangeApply(data: RevoGrid.DataLookup, range: Selection.RangeArea): void;
65
66
  /** Apply range and copy data during range application */
66
67
  private applyRangeWithData;
67
- /** Update range selection ony, no data change (mouse selection) */
68
+ /**
69
+ * Update range selection only,
70
+ * no data change (mouse selection)
71
+ */
68
72
  private applyRangeOnly;
69
73
  }
70
74
  export {};
@@ -16,7 +16,7 @@ export declare class ClipboardService {
16
16
  private sv;
17
17
  private clipboard;
18
18
  constructor(sv: Config);
19
- renderClipboard(): any;
19
+ renderClipboard(readonly?: boolean): any;
20
20
  private getRegion;
21
21
  private onCopy;
22
22
  private onPaste;
@@ -1,18 +1,26 @@
1
1
  import { EventEmitter } from '../../stencil-public-runtime';
2
2
  import { Edition, RevoGrid } from '../../interfaces';
3
+ /**
4
+ * Cell editor component
5
+ */
3
6
  export declare class RevoEdit {
4
7
  element: HTMLElement;
5
8
  editCell: Edition.EditCell;
6
9
  column: RevoGrid.ColumnRegular | null;
7
10
  /** Custom editors register */
8
11
  editor: Edition.EditorCtr | null;
12
+ /** Save on editor close */
9
13
  saveOnClose: boolean;
14
+ /** Additional data to pass to renderer */
15
+ additionalData: any;
16
+ /** Cell edit event */
10
17
  cellEdit: EventEmitter<Edition.SaveDataDetails>;
11
18
  /**
12
19
  * Close editor event
13
20
  * pass true if requires focus next
14
21
  */
15
22
  closeEdit: EventEmitter<boolean | undefined>;
23
+ /** Edit session editor */
16
24
  private currentEditor;
17
25
  private saveRunning;
18
26
  cancel(): Promise<void>;
@@ -4,13 +4,6 @@ import ColumnService from '../data/columnService';
4
4
  import SelectionStoreService from '../../store/selection/selection.store.service';
5
5
  import { DataSourceState } from '../../store/dataSource/data.store';
6
6
  export declare class OverlaySelection {
7
- protected columnService: ColumnService;
8
- protected selectionStoreService: SelectionStoreService;
9
- private keyboardService;
10
- private autoFillService;
11
- private clipboardService;
12
- private orderEditor;
13
- private revogrEdit;
14
7
  element: HTMLElement;
15
8
  /**
16
9
  * If readonly mode enables
@@ -49,12 +42,31 @@ export declare class OverlaySelection {
49
42
  * Custom editors register
50
43
  */
51
44
  editors: Edition.Editors;
52
- /** If true applys changes when cell closes if not Escape */
45
+ /**
46
+ * If true applys changes when cell closes if not Escape
47
+ */
53
48
  applyChangesOnClose: boolean;
49
+ /**
50
+ * Additional data to pass to renderer
51
+ */
52
+ additionalData: any;
53
+ /**
54
+ * Is mobile view mode
55
+ */
56
+ isMobileDevice: boolean;
57
+ /**
58
+ * Before clipboard copy happened
59
+ */
54
60
  internalCopy: EventEmitter;
61
+ /**
62
+ * Before paste happened
63
+ */
55
64
  internalPaste: EventEmitter;
56
65
  internalCellEdit: EventEmitter<Edition.BeforeSaveDataDetails>;
57
66
  beforeFocusCell: EventEmitter<Edition.BeforeSaveDataDetails>;
67
+ /**
68
+ * Set edit cell
69
+ */
58
70
  setEdit: EventEmitter<Edition.BeforeEdit>;
59
71
  beforeApplyRange: EventEmitter<FocusRenderEvent>;
60
72
  beforeSetRange: EventEmitter;
@@ -81,12 +93,19 @@ export declare class OverlaySelection {
81
93
  /** Range copy */
82
94
  rangeClipboardCopy: EventEmitter;
83
95
  rangeClipboardPaste: EventEmitter;
96
+ protected columnService: ColumnService;
97
+ protected selectionStoreService: SelectionStoreService;
98
+ private keyboardService;
99
+ private autoFillService;
100
+ private clipboardService;
101
+ private orderEditor;
102
+ private revogrEdit;
84
103
  /**
85
104
  * Runs before cell save
86
105
  * Can be used to override or cancel original save
87
106
  */
88
107
  beforeCellSave: EventEmitter;
89
- onMouseMove(e: MouseEvent & TouchEvent): void;
108
+ onMouseMove(e: MouseEvent | TouchEvent): void;
90
109
  /** Action finished inside of the document */
91
110
  /** Pointer left document, clear any active operation */
92
111
  onMouseUp(): void;
@@ -107,7 +126,10 @@ export declare class OverlaySelection {
107
126
  render(): any;
108
127
  private doFocus;
109
128
  private triggerRangeEvent;
110
- protected onElementMouseDown(e: MouseEvent): void;
129
+ protected onElementMouseDown(e: MouseEvent | TouchEvent, touch?: boolean): void;
130
+ /**
131
+ * Start cell editing
132
+ */
111
133
  protected doEdit(val?: string): void;
112
134
  /**
113
135
  * Close editor event triggered
@@ -65,9 +65,10 @@ export declare class RevoGridComponent {
65
65
  * Every plugin should be inherited from BasePlugin
66
66
  */
67
67
  plugins: RevoPlugin.PluginClass[];
68
- /** Types
68
+ /** Column Types Format
69
69
  * Every type represent multiple column properties
70
70
  * Types will be merged but can be replaced with column properties
71
+ * Types were made as separate objects to be reusable per multiple columns
71
72
  */
72
73
  columnTypes: {
73
74
  [name: string]: RevoGrid.ColumnType;
@@ -253,6 +254,13 @@ export declare class RevoGridComponent {
253
254
  type: RevoGrid.DimensionRows;
254
255
  source: RevoGrid.DataType[];
255
256
  }>;
257
+ /**
258
+ * After all rows updated. Use it if you want to track all changes from sources pinned and main
259
+ */
260
+ afterAnySource: EventEmitter<{
261
+ type: RevoGrid.DimensionRows;
262
+ source: RevoGrid.DataType[];
263
+ }>;
256
264
  /** Before column update */
257
265
  beforecolumnsset: EventEmitter<ColumnCollection>;
258
266
  /** Before column applied but after column set gathered and viewport updated */
@@ -410,8 +418,8 @@ export declare class RevoGridComponent {
410
418
  */
411
419
  getSelectedRange(): Promise<Selection.RangeArea | null>;
412
420
  private clickTrackForFocusClear;
413
- mousedownHandle(event: MouseEvent & TouchEvent): void;
414
- mouseupHandle(event: MouseEvent & TouchEvent): void;
421
+ mousedownHandle(event: MouseEvent | TouchEvent): void;
422
+ mouseupHandle(event: MouseEvent | TouchEvent): void;
415
423
  /** DRAG AND DROP */
416
424
  onRowDragStarted(e: CustomEvent<{
417
425
  pos: RevoGrid.PositionItem;
@@ -447,6 +455,10 @@ export declare class RevoGridComponent {
447
455
  */
448
456
  private internalPlugins;
449
457
  element: HTMLRevoGridElement;
458
+ /**
459
+ * Column format change will trigger column structure update
460
+ */
461
+ columnTypesChanged(): void;
450
462
  columnChanged(newVal?: RevoGrid.ColumnDataSchema[]): void;
451
463
  rowSizeChanged(s: number): void;
452
464
  themeChanged(t: ThemeSpace.Theme): void;
@@ -466,7 +478,6 @@ export declare class RevoGridComponent {
466
478
  applyFilter(cfg: boolean | ColumnFilterConfig): void;
467
479
  rowheaderschanged: EventEmitter;
468
480
  rowHeadersChange(rowHeaders?: RevoGrid.RowHeaders | boolean): void;
469
- private dataSourceApply;
470
481
  connectedCallback(): void;
471
482
  disconnectedCallback(): void;
472
483
  render(): any;
@@ -1,6 +1,6 @@
1
1
  import { RevoGrid } from '../../interfaces';
2
2
  export interface ElementScroll {
3
- changeScroll?(e: RevoGrid.ViewPortScrollEvent): Promise<RevoGrid.ViewPortScrollEvent>;
3
+ changeScroll?(e: RevoGrid.ViewPortScrollEvent, silent?: boolean): Promise<RevoGrid.ViewPortScrollEvent>;
4
4
  setScroll(e: RevoGrid.ViewPortScrollEvent): Promise<void>;
5
5
  }
6
6
  export type ElementsScroll = {
@@ -10,7 +10,11 @@ export default class GridScrollingService {
10
10
  private setViewport;
11
11
  private elements;
12
12
  constructor(setViewport: (e: RevoGrid.ViewPortScrollEvent) => void);
13
- onScroll(e: RevoGrid.ViewPortScrollEvent, key?: RevoGrid.DimensionColPin | string): Promise<void>;
13
+ scrollService(e: RevoGrid.ViewPortScrollEvent, key?: RevoGrid.DimensionColPin | string): Promise<void>;
14
+ /**
15
+ * Silent scroll update for mobile devices when we have negative scroll top
16
+ */
17
+ scrollSilentService(e: RevoGrid.ViewPortScrollEvent, key?: RevoGrid.DimensionColPin | string): Promise<void>;
14
18
  private isPinnedColumn;
15
19
  registerElements(els: ElementsScroll): void;
16
20
  /**
@@ -14,7 +14,8 @@ type Props = {
14
14
  columnFilter: boolean;
15
15
  additionalData: any;
16
16
  focusTemplate: RevoGrid.FocusTemplateFunc;
17
- onScroll(e: RevoGrid.ViewPortScrollEvent, key?: RevoGrid.DimensionColPin | string): void;
17
+ scrollSection(e: RevoGrid.ViewPortScrollEvent, key?: RevoGrid.DimensionColPin | string): void;
18
+ scrollSectionSilent(e: RevoGrid.ViewPortScrollEvent, key?: RevoGrid.DimensionColPin | string): void;
18
19
  onCancelEdit(): void;
19
20
  onEdit(edit: Edition.BeforeEdit): void;
20
21
  onSelectAll(): void;
@@ -25,5 +26,5 @@ type Props = {
25
26
  * First we render vertical parts - pinned start, data, pinned end
26
27
  * Per each column we render data collections: headers, pinned top, center data, pinned bottom
27
28
  */
28
- export declare const ViewPortSections: ({ resize, editors, rowClass, readonly, range, columns, useClipboard, columnFilter, applyEditorChangesOnClose, additionalData, onCancelEdit, registerElement, onEdit, onScroll, focusTemplate, onSelectAll, }: Props) => VNode[];
29
+ export declare const ViewPortSections: ({ resize, editors, rowClass, readonly, range, columns, useClipboard, columnFilter, applyEditorChangesOnClose, additionalData, onCancelEdit, registerElement, onEdit, scrollSection, focusTemplate, onSelectAll, scrollSectionSilent, }: Props) => VNode[];
29
30
  export {};
@@ -35,6 +35,7 @@ export default class ViewportService {
35
35
  private onColumnResize;
36
36
  /**
37
37
  * Transform data from stores and apply it to different components
38
+ * Handle columns
38
39
  */
39
40
  private getViewportColumnData;
40
41
  /** register selection store for Segment */
@@ -54,6 +55,9 @@ export default class ViewportService {
54
55
  */
55
56
  clearFocused(): void;
56
57
  clearEdit(): void;
58
+ /**
59
+ * Collect focused element data
60
+ */
57
61
  getFocused(): FocusedData | null;
58
62
  getStoreCoordinateByType(colType: RevoGrid.DimensionCols, rowType: RevoGrid.DimensionRows): {
59
63
  x: number;
@@ -1,7 +1,7 @@
1
1
  import { EventEmitter } from '../../stencil-public-runtime';
2
2
  import { RevoGrid, ScrollCoordinateEvent } from '../../interfaces';
3
3
  type Delta = 'deltaX' | 'deltaY';
4
- type ScrollEvent = {
4
+ type LocalScrollEvent = {
5
5
  preventDefault(): void;
6
6
  } & {
7
7
  [x in Delta]: number;
@@ -16,6 +16,11 @@ export declare class RevogrViewportScroll {
16
16
  type: RevoGrid.DimensionType;
17
17
  hasScroll: boolean;
18
18
  }>;
19
+ /**
20
+ * Silently scroll to coordinate
21
+ * Made to align negative coordinates for mobile devices
22
+ */
23
+ silentScroll: EventEmitter<RevoGrid.ViewPortScrollEvent>;
19
24
  private scrollThrottling;
20
25
  /**
21
26
  * Width of inner content
@@ -48,13 +53,19 @@ export declare class RevogrViewportScroll {
48
53
  * update on delta in case we don't know existing position or external change
49
54
  * @param e
50
55
  */
51
- changeScroll(e: RevoGrid.ViewPortScrollEvent): Promise<RevoGrid.ViewPortScrollEvent>;
52
- mousewheelVertical({ detail: e }: CustomEvent<ScrollEvent>): void;
53
- mousewheelHorizontal({ detail: e }: CustomEvent<ScrollEvent>): void;
56
+ changeScroll(e: RevoGrid.ViewPortScrollEvent, silent?: boolean): Promise<RevoGrid.ViewPortScrollEvent>;
57
+ /**
58
+ * Dispatch this event to trigger vertical mouse wheel from plugins
59
+ */
60
+ mousewheelVertical({ detail: e, }: CustomEvent<LocalScrollEvent>): void;
61
+ /**
62
+ * Dispatch this event to trigger horizontal mouse wheel from plugins
63
+ */
64
+ mousewheelHorizontal({ detail: e, }: CustomEvent<LocalScrollEvent>): void;
54
65
  /**
55
66
  * Allows to use outside listener
56
67
  */
57
- scrollApply({ detail: { type, coordinate } }: CustomEvent<ScrollCoordinateEvent>): void;
68
+ scrollApply({ detail: { type, coordinate }, }: CustomEvent<ScrollCoordinateEvent>): void;
58
69
  connectedCallback(): void;
59
70
  componentDidLoad(): void;
60
71
  /**