@revolist/revogrid 3.1.8 → 3.1.90

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 (240) hide show
  1. package/custom-element/_baseIteratee.js +2070 -0
  2. package/custom-element/columnService.js +743 -0
  3. package/custom-element/consts.js +46 -0
  4. package/custom-element/data.store.js +545 -0
  5. package/custom-element/debounce.js +217 -0
  6. package/custom-element/dimension.helpers.js +340 -0
  7. package/custom-element/each.js +180 -0
  8. package/custom-element/filter.button.js +36 -0
  9. package/custom-element/identity.js +26 -0
  10. package/custom-element/index.d.ts +15 -98
  11. package/custom-element/index.js +18 -28962
  12. package/custom-element/isSymbol.js +220 -0
  13. package/custom-element/keys.js +561 -0
  14. package/custom-element/localScrollService.js +86 -0
  15. package/custom-element/resize-observer.js +25 -11
  16. package/custom-element/revo-grid.d.ts +11 -0
  17. package/custom-element/revo-grid.js +3662 -0
  18. package/custom-element/revogr-clipboard.d.ts +11 -0
  19. package/custom-element/revogr-clipboard.js +72 -0
  20. package/custom-element/revogr-data.d.ts +11 -0
  21. package/custom-element/revogr-data.js +9 -0
  22. package/custom-element/revogr-data2.js +171 -0
  23. package/custom-element/revogr-edit.d.ts +11 -0
  24. package/custom-element/revogr-edit.js +9 -0
  25. package/custom-element/revogr-edit2.js +402 -0
  26. package/custom-element/revogr-filter-panel.d.ts +11 -0
  27. package/custom-element/revogr-filter-panel.js +308 -0
  28. package/custom-element/revogr-focus.d.ts +11 -0
  29. package/custom-element/revogr-focus.js +9 -0
  30. package/custom-element/revogr-focus2.js +64 -0
  31. package/custom-element/revogr-header.d.ts +11 -0
  32. package/custom-element/revogr-header.js +9 -0
  33. package/custom-element/revogr-header2.js +591 -0
  34. package/custom-element/revogr-order-editor.d.ts +11 -0
  35. package/custom-element/revogr-order-editor.js +9 -0
  36. package/custom-element/revogr-order-editor2.js +190 -0
  37. package/custom-element/revogr-overlay-selection.d.ts +11 -0
  38. package/custom-element/revogr-overlay-selection.js +9 -0
  39. package/custom-element/revogr-overlay-selection2.js +741 -0
  40. package/custom-element/revogr-row-headers.d.ts +11 -0
  41. package/custom-element/revogr-row-headers.js +9 -0
  42. package/custom-element/revogr-row-headers2.js +403 -0
  43. package/custom-element/revogr-scroll-virtual.d.ts +11 -0
  44. package/custom-element/revogr-scroll-virtual.js +9 -0
  45. package/custom-element/revogr-scroll-virtual2.js +135 -0
  46. package/custom-element/revogr-temp-range.d.ts +11 -0
  47. package/custom-element/revogr-temp-range.js +9 -0
  48. package/custom-element/revogr-temp-range2.js +17275 -0
  49. package/custom-element/revogr-viewport-scroll.d.ts +11 -0
  50. package/custom-element/revogr-viewport-scroll.js +9 -0
  51. package/custom-element/revogr-viewport-scroll2.js +367 -0
  52. package/custom-element/selection.utils.js +106 -0
  53. package/custom-element/toInteger.js +107 -0
  54. package/custom-element/toNumber.js +105 -0
  55. package/custom-element/utils.js +69 -0
  56. package/dist/cjs/css-shim-9f5bc84d.js +9 -0
  57. package/dist/cjs/{debounce-e9b040d9.js → debounce-6cea2774.js} +4 -1
  58. package/dist/cjs/{dom-c8b6d1a7.js → dom-fcb646f0.js} +4 -1
  59. package/dist/cjs/{index-d3f67f2e.js → index-cb904e00.js} +214 -91
  60. package/dist/cjs/index.cjs.js +3 -0
  61. package/dist/cjs/loader.cjs.js +7 -4
  62. package/dist/cjs/{resize-observer-8dc80084.js → resize-observer-bf327d6a.js} +25 -10
  63. package/dist/cjs/revo-grid.cjs.js +13 -7
  64. package/dist/cjs/revo-grid_11.cjs.entry.js +277 -15
  65. package/dist/cjs/revogr-clipboard.cjs.entry.js +4 -1
  66. package/dist/cjs/revogr-filter-panel.cjs.entry.js +5 -2
  67. package/dist/collection/collection-manifest.json +2 -2
  68. package/dist/collection/components/button/button.js +3 -0
  69. package/dist/collection/components/clipboard/revogr-clipboard.js +3 -0
  70. package/dist/collection/components/data/cellRenderer.js +3 -0
  71. package/dist/collection/components/data/columnService.js +3 -0
  72. package/dist/collection/components/data/revogr-data.js +3 -0
  73. package/dist/collection/components/data/rowRenderer.js +3 -0
  74. package/dist/collection/components/header/headerCellRenderer.js +11 -1
  75. package/dist/collection/components/header/headerRenderer.js +3 -0
  76. package/dist/collection/components/header/revogr-header.js +3 -0
  77. package/dist/collection/components/order/orderRenderer.js +3 -0
  78. package/dist/collection/components/order/revogr-order-editor.js +3 -0
  79. package/dist/collection/components/order/rowOrderService.js +3 -0
  80. package/dist/collection/components/overlay/autofill.service.js +3 -0
  81. package/dist/collection/components/overlay/clipboard.service.js +3 -0
  82. package/dist/collection/components/overlay/editors/edit.utils.js +3 -0
  83. package/dist/collection/components/overlay/editors/text.js +3 -0
  84. package/dist/collection/components/overlay/keyboard.service.js +3 -0
  85. package/dist/collection/components/overlay/revogr-edit.js +3 -0
  86. package/dist/collection/components/overlay/revogr-overlay-selection.js +3 -0
  87. package/dist/collection/components/overlay/selection.utils.js +3 -0
  88. package/dist/collection/components/revo-grid/revo-grid-style.css +18 -1
  89. package/dist/collection/components/revo-grid/revo-grid.js +72 -15
  90. package/dist/collection/components/revo-grid/viewport.helpers.js +3 -0
  91. package/dist/collection/components/revo-grid/viewport.interfaces.js +3 -0
  92. package/dist/collection/components/revo-grid/viewport.js +3 -0
  93. package/dist/collection/components/revo-grid/viewport.resize.service.js +3 -0
  94. package/dist/collection/components/revo-grid/viewport.scrolling.service.js +3 -0
  95. package/dist/collection/components/revo-grid/viewport.section.js +4 -1
  96. package/dist/collection/components/revo-grid/viewport.service.js +3 -0
  97. package/dist/collection/components/rowHeaders/revogr-row-headers.js +3 -0
  98. package/dist/collection/components/rowHeaders/row-header-render.js +3 -0
  99. package/dist/collection/components/scroll/revogr-viewport-scroll.js +5 -2
  100. package/dist/collection/components/scrollable/revogr-scroll-virtual.js +3 -0
  101. package/dist/collection/components/selection-focus/revogr-focus.js +79 -7
  102. package/dist/collection/components/selection-temp-range/revogr-temp-range.js +3 -0
  103. package/dist/collection/global/global.js +3 -0
  104. package/dist/collection/index.js +3 -0
  105. package/dist/collection/plugins/autoSizeColumn.js +4 -1
  106. package/dist/collection/plugins/basePlugin.js +3 -0
  107. package/dist/collection/plugins/dispatcher.js +22 -0
  108. package/dist/collection/plugins/export/csv.js +3 -0
  109. package/dist/collection/plugins/export/export.plugin.js +3 -0
  110. package/dist/collection/plugins/export/types.js +3 -0
  111. package/dist/collection/plugins/filter/conditions/equal.js +3 -0
  112. package/dist/collection/plugins/filter/conditions/number/greaterThan.js +3 -0
  113. package/dist/collection/plugins/filter/conditions/number/greaterThanOrEqual.js +3 -0
  114. package/dist/collection/plugins/filter/conditions/number/lessThan.js +3 -0
  115. package/dist/collection/plugins/filter/conditions/number/lessThanOrEqual.js +3 -0
  116. package/dist/collection/plugins/filter/conditions/set.js +3 -0
  117. package/dist/collection/plugins/filter/conditions/string/beginswith.js +3 -0
  118. package/dist/collection/plugins/filter/conditions/string/contains.js +3 -0
  119. package/dist/collection/plugins/filter/filter.button.js +3 -0
  120. package/dist/collection/plugins/filter/filter.plugin.js +3 -0
  121. package/dist/collection/plugins/filter/filter.pop.js +3 -0
  122. package/dist/collection/plugins/filter/filter.service.js +3 -0
  123. package/dist/collection/plugins/filter/filter.types.js +3 -0
  124. package/dist/collection/plugins/groupingColumn/columnGroupsRenderer.js +3 -0
  125. package/dist/collection/plugins/groupingColumn/grouping.col.plugin.js +6 -3
  126. package/dist/collection/plugins/groupingColumn/headerGroupRenderer.js +3 -0
  127. package/dist/collection/plugins/groupingRow/grouping.const.js +3 -0
  128. package/dist/collection/plugins/groupingRow/grouping.row.expand.service.js +3 -0
  129. package/dist/collection/plugins/groupingRow/grouping.row.plugin.js +3 -0
  130. package/dist/collection/plugins/groupingRow/grouping.row.renderer.js +3 -0
  131. package/dist/collection/plugins/groupingRow/grouping.row.types.js +3 -0
  132. package/dist/collection/plugins/groupingRow/grouping.service.js +3 -0
  133. package/dist/collection/plugins/groupingRow/grouping.trimmed.service.js +3 -0
  134. package/dist/collection/plugins/moveColumn/columnDragPlugin.js +163 -0
  135. package/dist/collection/plugins/moveColumn/columnOrderHandler.js +63 -0
  136. package/dist/collection/plugins/sorting/sorting.plugin.js +3 -0
  137. package/dist/collection/plugins/sorting/sorting.sign.js +3 -0
  138. package/dist/collection/plugins/stretchPlugin.js +3 -0
  139. package/dist/collection/plugins/trimmed/trimmed.plugin.js +3 -0
  140. package/dist/collection/services/cell.helpers.js +3 -0
  141. package/dist/collection/services/column.data.provider.js +6 -3
  142. package/dist/collection/services/data.provider.js +3 -0
  143. package/dist/collection/services/dimension.provider.js +3 -0
  144. package/dist/collection/services/localScrollService.js +3 -0
  145. package/dist/collection/services/resizable.directive.js +5 -0
  146. package/dist/collection/services/selection.store.connector.js +3 -0
  147. package/dist/collection/services/viewport.provider.js +3 -0
  148. package/dist/collection/store/dataSource/data.proxy.js +3 -0
  149. package/dist/collection/store/dataSource/data.store.js +3 -0
  150. package/dist/collection/store/dimension/dimension.helpers.js +3 -0
  151. package/dist/collection/store/dimension/dimension.store.js +3 -0
  152. package/dist/collection/store/selection/selection.helpers.js +3 -0
  153. package/dist/collection/store/selection/selection.store.js +3 -0
  154. package/dist/collection/store/selection/selection.store.service.js +3 -0
  155. package/dist/collection/store/storeTypes.js +3 -0
  156. package/dist/collection/store/viewPort/viewport.helpers.js +3 -0
  157. package/dist/collection/store/viewPort/viewport.store.js +3 -0
  158. package/dist/collection/themeManager/theme.compact.js +3 -0
  159. package/dist/collection/themeManager/theme.default.js +3 -0
  160. package/dist/collection/themeManager/theme.material.js +3 -0
  161. package/dist/collection/themeManager/themeService.js +3 -0
  162. package/dist/collection/utils/closestPolifill.js +3 -0
  163. package/dist/collection/utils/consts.js +3 -0
  164. package/dist/collection/utils/generateAlphabetHeader.js +3 -0
  165. package/dist/collection/utils/keyCodes.js +3 -0
  166. package/dist/collection/utils/keyCodes.utils.js +3 -0
  167. package/dist/collection/utils/platform.js +3 -0
  168. package/dist/collection/utils/resizeObserver.js +3 -0
  169. package/dist/collection/utils/store.utils.js +3 -0
  170. package/dist/collection/utils/utils.js +3 -0
  171. package/dist/esm/css-shim-e1e1ea5e.js +7 -0
  172. package/dist/esm/{debounce-8dadcda7.js → debounce-e4e6dd45.js} +5 -2
  173. package/dist/esm/{dom-1b195079.js → dom-21bd1807.js} +4 -1
  174. package/dist/esm/{index-42c84e7c.js → index-6f753b3c.js} +214 -91
  175. package/dist/esm/index.js +3 -1
  176. package/dist/esm/loader.js +7 -4
  177. package/dist/esm/polyfills/css-shim.js +1 -1
  178. package/dist/esm/{resize-observer-56b7b34f.js → resize-observer-00c48d78.js} +25 -11
  179. package/dist/esm/revo-grid.js +13 -7
  180. package/dist/esm/revo-grid_11.entry.js +277 -15
  181. package/dist/esm/revogr-clipboard.entry.js +4 -1
  182. package/dist/esm/revogr-filter-panel.entry.js +5 -2
  183. package/dist/esm-es5/css-shim-e1e1ea5e.js +4 -0
  184. package/dist/esm-es5/{debounce-8dadcda7.js → debounce-e4e6dd45.js} +4 -1
  185. package/dist/esm-es5/{dom-1b195079.js → dom-21bd1807.js} +3 -0
  186. package/dist/esm-es5/index-6f753b3c.js +4 -0
  187. package/dist/esm-es5/index.js +3 -0
  188. package/dist/esm-es5/loader.js +4 -1
  189. package/dist/esm-es5/resize-observer-00c48d78.js +4 -0
  190. package/dist/esm-es5/revo-grid.js +4 -1
  191. package/dist/esm-es5/revo-grid_11.entry.js +4 -1
  192. package/dist/esm-es5/revogr-clipboard.entry.js +4 -1
  193. package/dist/esm-es5/revogr-filter-panel.entry.js +4 -1
  194. package/dist/revo-grid/css-shim-bcf89cc0.system.js +4 -0
  195. package/dist/revo-grid/css-shim-e1e1ea5e.js +4 -0
  196. package/dist/revo-grid/{debounce-f40a88f6.system.js → debounce-5a33c710.system.js} +4 -1
  197. package/dist/revo-grid/{debounce-d097578d.js → debounce-726bdadb.js} +4 -1
  198. package/dist/revo-grid/{dom-1b195079.js → dom-21bd1807.js} +3 -0
  199. package/dist/revo-grid/{dom-ee2dd1b3.system.js → dom-726246e2.system.js} +3 -0
  200. package/dist/revo-grid/index-f14b41a0.system.js +5 -0
  201. package/dist/revo-grid/index-f30d1de1.js +5 -0
  202. package/dist/revo-grid/index.esm.js +3 -0
  203. package/dist/revo-grid/index.system.js +3 -0
  204. package/dist/revo-grid/resize-observer-00c48d78.js +4 -0
  205. package/dist/revo-grid/resize-observer-8af0bc0e.system.js +4 -0
  206. package/dist/revo-grid/revo-grid.esm.js +4 -1
  207. package/dist/revo-grid/revo-grid.js +3 -2
  208. package/dist/revo-grid/revo-grid.system.js +4 -1
  209. package/dist/revo-grid/revo-grid_11.entry.js +4 -1
  210. package/dist/revo-grid/revo-grid_11.system.entry.js +4 -1
  211. package/dist/revo-grid/revogr-clipboard.entry.js +4 -1
  212. package/dist/revo-grid/revogr-clipboard.system.entry.js +4 -1
  213. package/dist/revo-grid/revogr-filter-panel.entry.js +4 -1
  214. package/dist/revo-grid/revogr-filter-panel.system.entry.js +4 -1
  215. package/dist/types/components/revo-grid/revo-grid.d.ts +13 -0
  216. package/dist/types/components/selection-focus/revogr-focus.d.ts +8 -0
  217. package/dist/types/components.d.ts +129 -61
  218. package/dist/types/plugins/dispatcher.d.ts +10 -0
  219. package/dist/types/plugins/groupingColumn/grouping.col.plugin.d.ts +1 -1
  220. package/dist/types/plugins/moveColumn/columnDragPlugin.d.ts +54 -0
  221. package/dist/types/plugins/moveColumn/columnOrderHandler.d.ts +15 -0
  222. package/dist/types/services/resizable.directive.d.ts +1 -1
  223. package/dist/types/stencil-public-runtime.d.ts +189 -186
  224. package/loader/cdn.js +3 -1
  225. package/loader/index.cjs.js +3 -1
  226. package/loader/index.d.ts +0 -1
  227. package/loader/index.es2017.js +3 -1
  228. package/loader/index.js +3 -1
  229. package/package.json +23 -21
  230. package/dist/cjs/css-shim-e33df79c.js +0 -6
  231. package/dist/esm/css-shim-8d75038b.js +0 -4
  232. package/dist/esm-es5/css-shim-8d75038b.js +0 -1
  233. package/dist/esm-es5/index-42c84e7c.js +0 -1
  234. package/dist/esm-es5/resize-observer-56b7b34f.js +0 -1
  235. package/dist/revo-grid/css-shim-88bfb262.system.js +0 -1
  236. package/dist/revo-grid/css-shim-8d75038b.js +0 -1
  237. package/dist/revo-grid/index-a15e7527.system.js +0 -1
  238. package/dist/revo-grid/index-a7f99799.js +0 -1
  239. package/dist/revo-grid/resize-observer-56b7b34f.js +0 -1
  240. package/dist/revo-grid/resize-observer-7a7b9757.system.js +0 -1
@@ -1,3 +1,6 @@
1
+ /*!
2
+ * Built by Revolist
3
+ */
1
4
  import { getItemByPosition } from '../../store/dimension/dimension.helpers';
2
5
  export default class RowOrderService {
3
6
  constructor(config) {
@@ -1,3 +1,6 @@
1
+ /*!
2
+ * Built by Revolist
3
+ */
1
4
  import debounce from 'lodash/debounce';
2
5
  import each from 'lodash/each';
3
6
  import slice from 'lodash/slice';
@@ -1,3 +1,6 @@
1
+ /*!
2
+ * Built by Revolist
3
+ */
1
4
  import slice from 'lodash/slice';
2
5
  import { h } from '@stencil/core';
3
6
  import { getRange } from '../../store/selection/selection.helpers';
@@ -1,3 +1,6 @@
1
+ /*!
2
+ * Built by Revolist
3
+ */
1
4
  import { EDIT_INPUT_WR } from '../../../utils/consts';
2
5
  // is edit input
3
6
  export function isEditInput(el) {
@@ -1,3 +1,6 @@
1
+ /*!
2
+ * Built by Revolist
3
+ */
1
4
  import { h } from '@stencil/core';
2
5
  import { isEnterKey, isTab } from '../../../utils/keyCodes.utils';
3
6
  import { timeout } from '../../../utils/utils';
@@ -1,3 +1,6 @@
1
+ /*!
2
+ * Built by Revolist
3
+ */
1
4
  import { getRange } from '../../store/selection/selection.helpers';
2
5
  import { codesLetter } from '../../utils/keyCodes';
3
6
  import { isClear, isCtrlKey, isEnterKey, isLetterKey } from '../../utils/keyCodes.utils';
@@ -1,3 +1,6 @@
1
+ /*!
2
+ * Built by Revolist
3
+ */
1
4
  import { Component, Event, Prop, h, Element, Host } from '@stencil/core';
2
5
  import { EDIT_INPUT_WR } from '../../utils/consts';
3
6
  import { TextEditor } from './editors/text';
@@ -1,3 +1,6 @@
1
+ /*!
2
+ * Built by Revolist
3
+ */
1
4
  import { Component, Event, h, Host, Listen, Prop, Element, Watch } from '@stencil/core';
2
5
  import ColumnService from '../data/columnService';
3
6
  import SelectionStoreService from '../../store/selection/selection.store.service';
@@ -1,3 +1,6 @@
1
+ /*!
2
+ * Built by Revolist
3
+ */
1
4
  import { getItemByIndex, getItemByPosition } from '../../store/dimension/dimension.helpers';
2
5
  /** Calculate cell based on x, y position */
3
6
  export function getCurrentCell({ x, y }, { el, rows, cols }) {
@@ -512,7 +512,24 @@ revo-grid .drag-position {
512
512
  right: 0;
513
513
  height: 1px;
514
514
  z-index: 2;
515
- background: red;
515
+ background: gray;
516
+ }
517
+ revo-grid .drag-position-y {
518
+ position: absolute;
519
+ top: 0;
520
+ left: 0;
521
+ bottom: 0;
522
+ width: 1px;
523
+ z-index: 2;
524
+ background: gray;
525
+ }
526
+ revo-grid .drag-auto-scroll-y {
527
+ pointer-events: none;
528
+ position: absolute;
529
+ left: 0;
530
+ top: 0;
531
+ height: 50px;
532
+ width: 1px;
516
533
  }
517
534
  revo-grid .clipboard {
518
535
  position: absolute;
@@ -1,3 +1,6 @@
1
+ /*!
2
+ * Built by Revolist
3
+ */
1
4
  import { Component, Prop, h, Watch, Element, Listen, Event, Method, State, Host } from '@stencil/core';
2
5
  import reduce from 'lodash/reduce';
3
6
  import each from 'lodash/each';
@@ -21,6 +24,7 @@ import GridScrollingService from './viewport.scrolling.service';
21
24
  import { UUID } from '../../utils/consts';
22
25
  import SelectionStoreConnector from '../../services/selection.store.connector';
23
26
  import StretchColumn, { isStretchPlugin } from '../../plugins/stretchPlugin';
27
+ import ColumnPlugin from '../../plugins/moveColumn/columnDragPlugin';
24
28
  export class RevoGridComponent {
25
29
  constructor() {
26
30
  /**
@@ -89,6 +93,11 @@ export class RevoGridComponent {
89
93
  * Can be filter collection
90
94
  */
91
95
  this.filter = false;
96
+ /**
97
+ * Enables column move plugin
98
+ * Can be boolean
99
+ */
100
+ this.canMoveColumns = false;
92
101
  /**
93
102
  * Trimmed rows
94
103
  * Functionality which allows to hide rows from main data set
@@ -482,6 +491,13 @@ export class RevoGridComponent {
482
491
  this.columnProvider = new ColumnDataProvider();
483
492
  this.dataProvider = new DataProvider(this.dimensionProvider);
484
493
  this.uuid = `${new Date().getTime()}-rvgrid`;
494
+ const pluginData = {
495
+ data: this.dataProvider,
496
+ column: this.columnProvider,
497
+ dimension: this.dimensionProvider,
498
+ viewport: this.viewportProvider,
499
+ selection: this.selectionStoreConnector,
500
+ };
485
501
  if (this.autoSizeColumn) {
486
502
  this.internalPlugins.push(new AutoSize(this.element, {
487
503
  dataProvider: this.dataProvider,
@@ -498,9 +514,12 @@ export class RevoGridComponent {
498
514
  this.internalPlugins.push(new SortingPlugin(this.element));
499
515
  if (this.plugins) {
500
516
  this.plugins.forEach(p => {
501
- this.internalPlugins.push(new p(this.element));
517
+ this.internalPlugins.push(new p(this.element, pluginData));
502
518
  });
503
519
  }
520
+ if (this.canMoveColumns) {
521
+ this.internalPlugins.push(new ColumnPlugin(this.element, pluginData));
522
+ }
504
523
  this.internalPlugins.push(new GroupingRowPlugin(this.element, {
505
524
  dataProvider: this.dataProvider,
506
525
  columnProvider: this.columnProvider,
@@ -993,6 +1012,24 @@ export class RevoGridComponent {
993
1012
  "reflect": false,
994
1013
  "defaultValue": "false"
995
1014
  },
1015
+ "canMoveColumns": {
1016
+ "type": "boolean",
1017
+ "mutable": false,
1018
+ "complexType": {
1019
+ "original": "boolean",
1020
+ "resolved": "boolean",
1021
+ "references": {}
1022
+ },
1023
+ "required": false,
1024
+ "optional": false,
1025
+ "docs": {
1026
+ "tags": [],
1027
+ "text": "Enables column move plugin\nCan be boolean"
1028
+ },
1029
+ "attribute": "can-move-columns",
1030
+ "reflect": false,
1031
+ "defaultValue": "false"
1032
+ },
996
1033
  "trimmedRows": {
997
1034
  "type": "unknown",
998
1035
  "mutable": false,
@@ -1009,8 +1046,8 @@ export class RevoGridComponent {
1009
1046
  "optional": false,
1010
1047
  "docs": {
1011
1048
  "tags": [{
1012
- "text": "are physical rgRow indexes to hide",
1013
- "name": "trimmedRows"
1049
+ "name": "trimmedRows",
1050
+ "text": "are physical rgRow indexes to hide"
1014
1051
  }],
1015
1052
  "text": "Trimmed rows\nFunctionality which allows to hide rows from main data set"
1016
1053
  },
@@ -1176,6 +1213,26 @@ export class RevoGridComponent {
1176
1213
  }
1177
1214
  }
1178
1215
  }
1216
+ }, {
1217
+ "method": "afterfocus",
1218
+ "name": "afterfocus",
1219
+ "bubbles": true,
1220
+ "cancelable": true,
1221
+ "composed": true,
1222
+ "docs": {
1223
+ "tags": [],
1224
+ "text": "Triggered after focus render finished.\nCan be used to access a focus element through @event.target"
1225
+ },
1226
+ "complexType": {
1227
+ "original": "{ model: any; column: RevoGrid.ColumnRegular; }",
1228
+ "resolved": "{ model: any; column: ColumnRegular; }",
1229
+ "references": {
1230
+ "RevoGrid": {
1231
+ "location": "import",
1232
+ "path": "../../interfaces"
1233
+ }
1234
+ }
1235
+ }
1179
1236
  }, {
1180
1237
  "method": "roworderchanged",
1181
1238
  "name": "roworderchanged",
@@ -1843,8 +1900,8 @@ export class RevoGridComponent {
1843
1900
  "signature": "(type?: RevoGrid.DimensionRows) => Promise<any[]>",
1844
1901
  "parameters": [{
1845
1902
  "tags": [{
1846
- "text": "type - type of source",
1847
- "name": "param"
1903
+ "name": "param",
1904
+ "text": "type - type of source"
1848
1905
  }],
1849
1906
  "text": "- type of source"
1850
1907
  }],
@@ -1872,8 +1929,8 @@ export class RevoGridComponent {
1872
1929
  "signature": "(type?: RevoGrid.DimensionRows) => Promise<RowSource>",
1873
1930
  "parameters": [{
1874
1931
  "tags": [{
1875
- "text": "type - type of source",
1876
- "name": "param"
1932
+ "name": "param",
1933
+ "text": "type - type of source"
1877
1934
  }],
1878
1935
  "text": "- type of source"
1879
1936
  }],
@@ -1905,8 +1962,8 @@ export class RevoGridComponent {
1905
1962
  "signature": "(type?: RevoGrid.DimensionCols) => Promise<ColumnSource>",
1906
1963
  "parameters": [{
1907
1964
  "tags": [{
1908
- "text": "type - type of column",
1909
- "name": "param"
1965
+ "name": "param",
1966
+ "text": "type - type of column"
1910
1967
  }],
1911
1968
  "text": "- type of column"
1912
1969
  }],
@@ -1938,20 +1995,20 @@ export class RevoGridComponent {
1938
1995
  "signature": "(column: RevoGrid.ColumnRegular, index: number, order: 'asc' | 'desc', additive: boolean) => Promise<RevoGrid.ColumnRegular>",
1939
1996
  "parameters": [{
1940
1997
  "tags": [{
1941
- "text": "column - full column details to update",
1942
- "name": "param"
1998
+ "name": "param",
1999
+ "text": "column - full column details to update"
1943
2000
  }],
1944
2001
  "text": "- full column details to update"
1945
2002
  }, {
1946
2003
  "tags": [{
1947
- "text": "index - virtual column index",
1948
- "name": "param"
2004
+ "name": "param",
2005
+ "text": "index - virtual column index"
1949
2006
  }],
1950
2007
  "text": "- virtual column index"
1951
2008
  }, {
1952
2009
  "tags": [{
1953
- "text": "order - order to apply",
1954
- "name": "param"
2010
+ "name": "param",
2011
+ "text": "order - order to apply"
1955
2012
  }],
1956
2013
  "text": "- order to apply"
1957
2014
  }, {
@@ -1,3 +1,6 @@
1
+ /*!
2
+ * Built by Revolist
3
+ */
1
4
  export const HEADER_SLOT = 'header';
2
5
  export const FOOTER_SLOT = 'footer';
3
6
  export const CONTENT_SLOT = 'content';
@@ -1 +1,4 @@
1
+ /*!
2
+ * Built by Revolist
3
+ */
1
4
  export {};
@@ -1,3 +1,6 @@
1
+ /*!
2
+ * Built by Revolist
3
+ */
1
4
  import { h } from '@stencil/core';
2
5
  import OrderRenderer from '../order/orderRenderer';
3
6
  export const RevoViewPort = ({ viewports, dimensions, orderRef, nakedClick, registerElement, onScroll }, children) => {
@@ -1,3 +1,6 @@
1
+ /*!
2
+ * Built by Revolist
3
+ */
1
4
  import throttle from 'lodash/throttle';
2
5
  import { resizeObserver } from '../../utils/resizeObserver';
3
6
  export default class GridResizeService {
@@ -1,3 +1,6 @@
1
+ /*!
2
+ * Built by Revolist
3
+ */
1
4
  export default class GridScrollingService {
2
5
  constructor(setViewport) {
3
6
  this.setViewport = setViewport;
@@ -1,3 +1,6 @@
1
+ /*!
2
+ * Built by Revolist
3
+ */
1
4
  import { h } from '@stencil/core';
2
5
  import { UUID } from '../../utils/consts';
3
6
  import { DATA_SLOT, HEADER_SLOT } from './viewport.helpers';
@@ -19,7 +22,7 @@ export const ViewPortSections = ({ resize, editors, rowClass, readonly, range, c
19
22
  const dataView = (h("revogr-overlay-selection", Object.assign({}, data, { slot: data.slot, selectionStore: data.segmentSelectionStore, editors: editors, readonly: readonly, range: range, useClipboard: useClipboard, onSetEdit: ({ detail }) => onEdit(detail) }),
20
23
  h("revogr-data", Object.assign({}, data, { [UUID]: data.uuid }, { key: key, readonly: readonly, range: range, rowClass: rowClass, rowSelectionStore: data.rowSelectionStore, slot: DATA_SLOT })),
21
24
  h("revogr-temp-range", { selectionStore: data.segmentSelectionStore, dimensionRow: data.dimensionRow, dimensionCol: data.dimensionCol }),
22
- h("revogr-focus", { selectionStore: data.segmentSelectionStore, dimensionRow: data.dimensionRow, dimensionCol: data.dimensionCol })));
25
+ h("revogr-focus", { colData: data.colData, dataStore: data.dataStore, selectionStore: data.segmentSelectionStore, dimensionRow: data.dimensionRow, dimensionCol: data.dimensionCol })));
23
26
  dataViews.push(dataView);
24
27
  });
25
28
  viewPortHtml.push(h("revogr-viewport-scroll", Object.assign({}, view.prop, { ref: el => registerElement(el, view.prop.key), onScrollViewport: e => onScroll(e.detail, view.prop.key) }), dataViews));
@@ -1,3 +1,6 @@
1
+ /*!
2
+ * Built by Revolist
3
+ */
1
4
  import { EMPTY_INDEX } from '../../services/selection.store.connector';
2
5
  import { getSourceItem, getVisibleSourceItem } from '../../store/dataSource/data.store';
3
6
  import { columnTypes, rowTypes } from '../../store/storeTypes';
@@ -1,3 +1,6 @@
1
+ /*!
2
+ * Built by Revolist
3
+ */
1
4
  import { h, Host } from '@stencil/core';
2
5
  import { Component, Prop, Event } from '@stencil/core';
3
6
  import DataStore from '../../store/dataSource/data.store';
@@ -1 +1,4 @@
1
+ /*!
2
+ * Built by Revolist
3
+ */
1
4
  export const RowHeaderRender = s => (__, { rowIndex: i }) => s + i;
@@ -1,3 +1,6 @@
1
+ /*!
2
+ * Built by Revolist
3
+ */
1
4
  import { Component, Event, h, Method, Element, Prop, Host } from '@stencil/core';
2
5
  import each from 'lodash/each';
3
6
  import GridResizeService from '../revo-grid/viewport.resize.service';
@@ -370,8 +373,8 @@ export class RevogrViewportScroll {
370
373
  "signature": "(e: RevoGrid.ViewPortScrollEvent) => Promise<RevoGrid.ViewPortScrollEvent>",
371
374
  "parameters": [{
372
375
  "tags": [{
373
- "text": "e",
374
- "name": "param"
376
+ "name": "param",
377
+ "text": "e"
375
378
  }],
376
379
  "text": ""
377
380
  }],
@@ -1,3 +1,6 @@
1
+ /*!
2
+ * Built by Revolist
3
+ */
1
4
  import { Component, Element, Event, h, Host, Method, Prop } from '@stencil/core';
2
5
  import { getScrollbarWidth } from '../../utils/utils';
3
6
  import LocalScrollService from '../../services/localScrollService';
@@ -1,15 +1,26 @@
1
- import { Component, Prop, h, Host, Element } from '@stencil/core';
1
+ /*!
2
+ * Built by Revolist
3
+ */
4
+ import { Component, Prop, h, Host, Element, Event } from '@stencil/core';
5
+ import { getSourceItem } from '../../store/dataSource/data.store';
2
6
  import { FOCUS_CLASS } from '../../utils/consts';
3
7
  import { getElStyle } from '../overlay/selection.utils';
4
8
  export class RevogrFocus {
5
- changed(e) {
9
+ changed(e, focus) {
6
10
  e === null || e === void 0 ? void 0 : e.scrollIntoView({
7
11
  block: 'nearest',
8
12
  inline: 'nearest',
9
13
  });
14
+ const model = getSourceItem(this.dataStore, focus.y);
15
+ const column = getSourceItem(this.colData, focus.x);
16
+ this.afterFocus.emit({
17
+ model,
18
+ column
19
+ });
10
20
  }
11
21
  componentDidRender() {
12
- this.el && this.changed(this.el);
22
+ const currentFocus = this.selectionStore.get('focus');
23
+ currentFocus && this.el && this.changed(this.el, currentFocus);
13
24
  }
14
25
  render() {
15
26
  const data = this.selectionStore.get('focus');
@@ -26,6 +37,46 @@ export class RevogrFocus {
26
37
  "$": ["revogr-focus-style.css"]
27
38
  }; }
28
39
  static get properties() { return {
40
+ "dataStore": {
41
+ "type": "unknown",
42
+ "mutable": false,
43
+ "complexType": {
44
+ "original": "RowSource",
45
+ "resolved": "ObservableMap<DataSourceState<DataType, DimensionRows>>",
46
+ "references": {
47
+ "RowSource": {
48
+ "location": "import",
49
+ "path": "../data/columnService"
50
+ }
51
+ }
52
+ },
53
+ "required": true,
54
+ "optional": false,
55
+ "docs": {
56
+ "tags": [],
57
+ "text": "Dynamic stores"
58
+ }
59
+ },
60
+ "colData": {
61
+ "type": "unknown",
62
+ "mutable": false,
63
+ "complexType": {
64
+ "original": "ColumnSource",
65
+ "resolved": "ObservableMap<DataSourceState<ColumnRegular, DimensionCols>>",
66
+ "references": {
67
+ "ColumnSource": {
68
+ "location": "import",
69
+ "path": "../data/columnService"
70
+ }
71
+ }
72
+ },
73
+ "required": true,
74
+ "optional": false,
75
+ "docs": {
76
+ "tags": [],
77
+ "text": ""
78
+ }
79
+ },
29
80
  "selectionStore": {
30
81
  "type": "unknown",
31
82
  "mutable": false,
@@ -43,11 +94,11 @@ export class RevogrFocus {
43
94
  }
44
95
  }
45
96
  },
46
- "required": false,
97
+ "required": true,
47
98
  "optional": false,
48
99
  "docs": {
49
100
  "tags": [],
50
- "text": "Dynamic stores"
101
+ "text": ""
51
102
  }
52
103
  },
53
104
  "dimensionRow": {
@@ -67,7 +118,7 @@ export class RevogrFocus {
67
118
  }
68
119
  }
69
120
  },
70
- "required": false,
121
+ "required": true,
71
122
  "optional": false,
72
123
  "docs": {
73
124
  "tags": [],
@@ -91,7 +142,7 @@ export class RevogrFocus {
91
142
  }
92
143
  }
93
144
  },
94
- "required": false,
145
+ "required": true,
95
146
  "optional": false,
96
147
  "docs": {
97
148
  "tags": [],
@@ -99,5 +150,26 @@ export class RevogrFocus {
99
150
  }
100
151
  }
101
152
  }; }
153
+ static get events() { return [{
154
+ "method": "afterFocus",
155
+ "name": "afterfocus",
156
+ "bubbles": true,
157
+ "cancelable": true,
158
+ "composed": true,
159
+ "docs": {
160
+ "tags": [],
161
+ "text": ""
162
+ },
163
+ "complexType": {
164
+ "original": "{\n model: any;\n column: RevoGrid.ColumnRegular;\n }",
165
+ "resolved": "{ model: any; column: ColumnRegular; }",
166
+ "references": {
167
+ "RevoGrid": {
168
+ "location": "import",
169
+ "path": "../../interfaces"
170
+ }
171
+ }
172
+ }
173
+ }]; }
102
174
  static get elementRef() { return "el"; }
103
175
  }
@@ -1,3 +1,6 @@
1
+ /*!
2
+ * Built by Revolist
3
+ */
1
4
  import { Component, Prop, h, Host } from '@stencil/core';
2
5
  import { throttle } from 'lodash';
3
6
  import { TMP_SELECTION_BG_CLASS } from '../../utils/consts';
@@ -1,3 +1,6 @@
1
+ /*!
2
+ * Built by Revolist
3
+ */
1
4
  import { setMode } from '@stencil/core';
2
5
  import ThemeService from '../themeManager/themeService';
3
6
  setMode(elm => {
@@ -1 +1,4 @@
1
+ /*!
2
+ * Built by Revolist
3
+ */
1
4
  export * from './components';
@@ -1,3 +1,6 @@
1
+ /*!
2
+ * Built by Revolist
3
+ */
1
4
  /**
2
5
  * Plugin module for revo-grid grid system
3
6
  * Add support for automatic column resize
@@ -93,7 +96,7 @@ export default class AutoSizeColumn extends BasePlugin {
93
96
  const sizes = {};
94
97
  each(autoSize[type], rgCol => {
95
98
  // calculate size
96
- rgCol.size = sizes[rgCol.index] = source.reduce((prev, rgRow) => Math.max(prev, this.getLength(rgRow[rgCol.prop])), 0);
99
+ rgCol.size = sizes[rgCol.index] = source.reduce((prev, rgRow) => Math.max(prev, this.getLength(rgRow[rgCol.prop])), this.getLength(rgCol.name || ''));
97
100
  });
98
101
  this.providers.dimensionProvider.setDimensionSize(type, sizes);
99
102
  });
@@ -1,3 +1,6 @@
1
+ /*!
2
+ * Built by Revolist
3
+ */
1
4
  export default class BasePlugin {
2
5
  constructor(revogrid) {
3
6
  this.revogrid = revogrid;
@@ -0,0 +1,22 @@
1
+ /*!
2
+ * Built by Revolist
3
+ */
4
+ /**
5
+ * Dispatch custom event to element
6
+ */
7
+ export function dispatch(target, eventName, detail) {
8
+ const event = new CustomEvent(eventName, {
9
+ detail,
10
+ cancelable: true,
11
+ bubbles: true,
12
+ });
13
+ target === null || target === void 0 ? void 0 : target.dispatchEvent(event);
14
+ return event;
15
+ }
16
+ /**
17
+ * Dispatch event by other event target
18
+ */
19
+ export function dispatchOnEvent(e, eventName, detail) {
20
+ e.preventDefault();
21
+ return dispatch(e.target, eventName, detail);
22
+ }
@@ -1,3 +1,6 @@
1
+ /*!
2
+ * Built by Revolist
3
+ */
1
4
  import { getGroupingName, isGrouping } from '../groupingRow/grouping.service';
2
5
  const INITIAL = {
3
6
  mime: 'text/csv',
@@ -1,3 +1,6 @@
1
+ /*!
2
+ * Built by Revolist
3
+ */
1
4
  import fill from 'lodash/fill';
2
5
  import { columnTypes, rowTypes } from '../../store/storeTypes';
3
6
  import { timeout } from '../../utils/utils';
@@ -1 +1,4 @@
1
+ /*!
2
+ * Built by Revolist
3
+ */
1
4
  export {};
@@ -1,3 +1,6 @@
1
+ /*!
2
+ * Built by Revolist
3
+ */
1
4
  const eq = (value, extra) => {
2
5
  if (typeof value === 'undefined' || (value === null && !extra)) {
3
6
  return true;
@@ -1,3 +1,6 @@
1
+ /*!
2
+ * Built by Revolist
3
+ */
1
4
  const gtThan = function (value, extra) {
2
5
  let conditionValue;
3
6
  if (typeof value === 'number') {
@@ -1,3 +1,6 @@
1
+ /*!
2
+ * Built by Revolist
3
+ */
1
4
  import eq from '../equal';
2
5
  import gt from './greaterThan';
3
6
  const gtThanEq = function (value, extra) {
@@ -1,3 +1,6 @@
1
+ /*!
2
+ * Built by Revolist
3
+ */
1
4
  const lt = function (value, extra) {
2
5
  let conditionValue;
3
6
  if (typeof value === 'number') {
@@ -1,3 +1,6 @@
1
+ /*!
2
+ * Built by Revolist
3
+ */
1
4
  import eq from '../equal';
2
5
  import lt from './lessThan';
3
6
  const lsEq = function (value, extra) {
@@ -1,3 +1,6 @@
1
+ /*!
2
+ * Built by Revolist
3
+ */
1
4
  const set = (value) => !(value === '' || value === null || value === void 0);
2
5
  export const notSet = (value) => !set(value);
3
6
  export default set;