@omegagrid/grid 0.2.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 (225) hide show
  1. package/dist/commands/editingCommands.d.ts +4 -0
  2. package/dist/commands/editingCommands.d.ts.map +1 -0
  3. package/dist/commands/editingCommands.js +45 -0
  4. package/dist/commands/editingCommands.js.map +1 -0
  5. package/dist/commands/groupCommands.d.ts +8 -0
  6. package/dist/commands/groupCommands.d.ts.map +1 -0
  7. package/dist/commands/groupCommands.js +11 -0
  8. package/dist/commands/groupCommands.js.map +1 -0
  9. package/dist/commands/index.d.ts +4 -0
  10. package/dist/commands/index.d.ts.map +1 -0
  11. package/dist/commands/index.js +27 -0
  12. package/dist/commands/index.js.map +1 -0
  13. package/dist/commands/navigationCommands.d.ts +5 -0
  14. package/dist/commands/navigationCommands.d.ts.map +1 -0
  15. package/dist/commands/navigationCommands.js +58 -0
  16. package/dist/commands/navigationCommands.js.map +1 -0
  17. package/dist/constants.d.ts +3 -0
  18. package/dist/constants.d.ts.map +1 -0
  19. package/dist/constants.js +5 -0
  20. package/dist/constants.js.map +1 -0
  21. package/dist/editors/baseEditor.d.ts +25 -0
  22. package/dist/editors/baseEditor.d.ts.map +1 -0
  23. package/dist/editors/baseEditor.js +94 -0
  24. package/dist/editors/baseEditor.js.map +1 -0
  25. package/dist/editors/checkboxEditor.d.ts +9 -0
  26. package/dist/editors/checkboxEditor.d.ts.map +1 -0
  27. package/dist/editors/checkboxEditor.js +35 -0
  28. package/dist/editors/checkboxEditor.js.map +1 -0
  29. package/dist/editors/dropdownEditor.d.ts +19 -0
  30. package/dist/editors/dropdownEditor.d.ts.map +1 -0
  31. package/dist/editors/dropdownEditor.js +100 -0
  32. package/dist/editors/dropdownEditor.js.map +1 -0
  33. package/dist/editors/formulaEditor.d.ts +21 -0
  34. package/dist/editors/formulaEditor.d.ts.map +1 -0
  35. package/dist/editors/formulaEditor.js +116 -0
  36. package/dist/editors/formulaEditor.js.map +1 -0
  37. package/dist/editors/index.d.ts +8 -0
  38. package/dist/editors/index.d.ts.map +1 -0
  39. package/dist/editors/index.js +35 -0
  40. package/dist/editors/index.js.map +1 -0
  41. package/dist/editors/numberEditor.d.ts +9 -0
  42. package/dist/editors/numberEditor.d.ts.map +1 -0
  43. package/dist/editors/numberEditor.js +40 -0
  44. package/dist/editors/numberEditor.js.map +1 -0
  45. package/dist/editors/textEditor.d.ts +15 -0
  46. package/dist/editors/textEditor.d.ts.map +1 -0
  47. package/dist/editors/textEditor.js +76 -0
  48. package/dist/editors/textEditor.js.map +1 -0
  49. package/dist/filters/NumberFilter.d.ts +8 -0
  50. package/dist/filters/NumberFilter.d.ts.map +1 -0
  51. package/dist/filters/NumberFilter.js +17 -0
  52. package/dist/filters/NumberFilter.js.map +1 -0
  53. package/dist/filters/baseFilter.d.ts +17 -0
  54. package/dist/filters/baseFilter.d.ts.map +1 -0
  55. package/dist/filters/baseFilter.js +42 -0
  56. package/dist/filters/baseFilter.js.map +1 -0
  57. package/dist/filters/index.d.ts +4 -0
  58. package/dist/filters/index.d.ts.map +1 -0
  59. package/dist/filters/index.js +15 -0
  60. package/dist/filters/index.js.map +1 -0
  61. package/dist/filters/textFilter.d.ts +17 -0
  62. package/dist/filters/textFilter.d.ts.map +1 -0
  63. package/dist/filters/textFilter.js +86 -0
  64. package/dist/filters/textFilter.js.map +1 -0
  65. package/dist/gridAdapter.d.ts +29 -0
  66. package/dist/gridAdapter.d.ts.map +1 -0
  67. package/dist/gridAdapter.js +15 -0
  68. package/dist/gridAdapter.js.map +1 -0
  69. package/dist/i18n/en-us.d.ts +4 -0
  70. package/dist/i18n/en-us.d.ts.map +1 -0
  71. package/dist/i18n/en-us.js +7 -0
  72. package/dist/i18n/en-us.js.map +1 -0
  73. package/dist/i18n/index.d.ts +5 -0
  74. package/dist/i18n/index.d.ts.map +1 -0
  75. package/dist/i18n/index.js +15 -0
  76. package/dist/i18n/index.js.map +1 -0
  77. package/dist/index.d.ts +7 -0
  78. package/dist/index.d.ts.map +1 -0
  79. package/dist/index.js +36 -0
  80. package/dist/index.js.map +1 -0
  81. package/dist/renderers/ActionRenderer.d.ts +3 -0
  82. package/dist/renderers/ActionRenderer.d.ts.map +1 -0
  83. package/dist/renderers/ActionRenderer.js +28 -0
  84. package/dist/renderers/ActionRenderer.js.map +1 -0
  85. package/dist/renderers/BaseRenderer.d.ts +5 -0
  86. package/dist/renderers/BaseRenderer.d.ts.map +1 -0
  87. package/dist/renderers/BaseRenderer.js +54 -0
  88. package/dist/renderers/BaseRenderer.js.map +1 -0
  89. package/dist/renderers/CheckboxRenderer.d.ts +3 -0
  90. package/dist/renderers/CheckboxRenderer.d.ts.map +1 -0
  91. package/dist/renderers/CheckboxRenderer.js +16 -0
  92. package/dist/renderers/CheckboxRenderer.js.map +1 -0
  93. package/dist/renderers/DateTimeRenderer.d.ts +3 -0
  94. package/dist/renderers/DateTimeRenderer.d.ts.map +1 -0
  95. package/dist/renderers/DateTimeRenderer.js +18 -0
  96. package/dist/renderers/DateTimeRenderer.js.map +1 -0
  97. package/dist/renderers/DropdownRenderer.d.ts +5 -0
  98. package/dist/renderers/DropdownRenderer.d.ts.map +1 -0
  99. package/dist/renderers/DropdownRenderer.js +24 -0
  100. package/dist/renderers/DropdownRenderer.js.map +1 -0
  101. package/dist/renderers/GeneralRenderer.d.ts +3 -0
  102. package/dist/renderers/GeneralRenderer.d.ts.map +1 -0
  103. package/dist/renderers/GeneralRenderer.js +16 -0
  104. package/dist/renderers/GeneralRenderer.js.map +1 -0
  105. package/dist/renderers/HtmlRenderer.d.ts +3 -0
  106. package/dist/renderers/HtmlRenderer.d.ts.map +1 -0
  107. package/dist/renderers/HtmlRenderer.js +10 -0
  108. package/dist/renderers/HtmlRenderer.js.map +1 -0
  109. package/dist/renderers/NumberRenderer.d.ts +3 -0
  110. package/dist/renderers/NumberRenderer.d.ts.map +1 -0
  111. package/dist/renderers/NumberRenderer.js +19 -0
  112. package/dist/renderers/NumberRenderer.js.map +1 -0
  113. package/dist/renderers/SparklineRenderer.d.ts +3 -0
  114. package/dist/renderers/SparklineRenderer.d.ts.map +1 -0
  115. package/dist/renderers/SparklineRenderer.js +12 -0
  116. package/dist/renderers/SparklineRenderer.js.map +1 -0
  117. package/dist/renderers/TextRenderer.d.ts +3 -0
  118. package/dist/renderers/TextRenderer.d.ts.map +1 -0
  119. package/dist/renderers/TextRenderer.js +11 -0
  120. package/dist/renderers/TextRenderer.js.map +1 -0
  121. package/dist/renderers/index.d.ts +10 -0
  122. package/dist/renderers/index.d.ts.map +1 -0
  123. package/dist/renderers/index.js +48 -0
  124. package/dist/renderers/index.js.map +1 -0
  125. package/dist/types.d.ts +6 -0
  126. package/dist/types.d.ts.map +1 -0
  127. package/dist/types.js +3 -0
  128. package/dist/types.js.map +1 -0
  129. package/dist/ui/comment.d.ts +44 -0
  130. package/dist/ui/comment.d.ts.map +1 -0
  131. package/dist/ui/comment.js +214 -0
  132. package/dist/ui/comment.js.map +1 -0
  133. package/dist/ui/comment.style.d.ts +2 -0
  134. package/dist/ui/comment.style.d.ts.map +1 -0
  135. package/dist/ui/comment.style.js +50 -0
  136. package/dist/ui/comment.style.js.map +1 -0
  137. package/dist/ui/elementCache.d.ts +14 -0
  138. package/dist/ui/elementCache.d.ts.map +1 -0
  139. package/dist/ui/elementCache.js +61 -0
  140. package/dist/ui/elementCache.js.map +1 -0
  141. package/dist/ui/filter.d.ts +9 -0
  142. package/dist/ui/filter.d.ts.map +1 -0
  143. package/dist/ui/filter.js +71 -0
  144. package/dist/ui/filter.js.map +1 -0
  145. package/dist/ui/formulaInput.d.ts +51 -0
  146. package/dist/ui/formulaInput.d.ts.map +1 -0
  147. package/dist/ui/formulaInput.js +245 -0
  148. package/dist/ui/formulaInput.js.map +1 -0
  149. package/dist/ui/formulaInput.style.d.ts +2 -0
  150. package/dist/ui/formulaInput.style.d.ts.map +1 -0
  151. package/dist/ui/formulaInput.style.js +68 -0
  152. package/dist/ui/formulaInput.style.js.map +1 -0
  153. package/dist/ui/grid.d.ts +81 -0
  154. package/dist/ui/grid.d.ts.map +1 -0
  155. package/dist/ui/grid.editing.d.ts +54 -0
  156. package/dist/ui/grid.editing.d.ts.map +1 -0
  157. package/dist/ui/grid.editing.js +281 -0
  158. package/dist/ui/grid.editing.js.map +1 -0
  159. package/dist/ui/grid.events.d.ts +66 -0
  160. package/dist/ui/grid.events.d.ts.map +1 -0
  161. package/dist/ui/grid.events.js +449 -0
  162. package/dist/ui/grid.events.js.map +1 -0
  163. package/dist/ui/grid.filtering.d.ts +20 -0
  164. package/dist/ui/grid.filtering.d.ts.map +1 -0
  165. package/dist/ui/grid.filtering.js +59 -0
  166. package/dist/ui/grid.filtering.js.map +1 -0
  167. package/dist/ui/grid.js +233 -0
  168. package/dist/ui/grid.js.map +1 -0
  169. package/dist/ui/grid.menu.d.ts +36 -0
  170. package/dist/ui/grid.menu.d.ts.map +1 -0
  171. package/dist/ui/grid.menu.js +83 -0
  172. package/dist/ui/grid.menu.js.map +1 -0
  173. package/dist/ui/grid.rendering.d.ts +71 -0
  174. package/dist/ui/grid.rendering.d.ts.map +1 -0
  175. package/dist/ui/grid.rendering.js +336 -0
  176. package/dist/ui/grid.rendering.js.map +1 -0
  177. package/dist/ui/grid.selecting.d.ts +56 -0
  178. package/dist/ui/grid.selecting.d.ts.map +1 -0
  179. package/dist/ui/grid.selecting.js +261 -0
  180. package/dist/ui/grid.selecting.js.map +1 -0
  181. package/dist/ui/grid.sorting.d.ts +15 -0
  182. package/dist/ui/grid.sorting.d.ts.map +1 -0
  183. package/dist/ui/grid.sorting.js +33 -0
  184. package/dist/ui/grid.sorting.js.map +1 -0
  185. package/dist/ui/grid.style.d.ts +2 -0
  186. package/dist/ui/grid.style.d.ts.map +1 -0
  187. package/dist/ui/grid.style.js +25 -0
  188. package/dist/ui/grid.style.js.map +1 -0
  189. package/dist/ui/group.d.ts +68 -0
  190. package/dist/ui/group.d.ts.map +1 -0
  191. package/dist/ui/group.js +310 -0
  192. package/dist/ui/group.js.map +1 -0
  193. package/dist/ui/index.d.ts +18 -0
  194. package/dist/ui/index.d.ts.map +1 -0
  195. package/dist/ui/index.js +34 -0
  196. package/dist/ui/index.js.map +1 -0
  197. package/dist/ui/selector.d.ts +83 -0
  198. package/dist/ui/selector.d.ts.map +1 -0
  199. package/dist/ui/selector.js +486 -0
  200. package/dist/ui/selector.js.map +1 -0
  201. package/dist/ui/selector.style.d.ts +2 -0
  202. package/dist/ui/selector.style.d.ts.map +1 -0
  203. package/dist/ui/selector.style.js +111 -0
  204. package/dist/ui/selector.style.js.map +1 -0
  205. package/dist/ui/sortingArrow.d.ts +8 -0
  206. package/dist/ui/sortingArrow.d.ts.map +1 -0
  207. package/dist/ui/sortingArrow.js +46 -0
  208. package/dist/ui/sortingArrow.js.map +1 -0
  209. package/dist/ui/sparkline.d.ts +14 -0
  210. package/dist/ui/sparkline.d.ts.map +1 -0
  211. package/dist/ui/sparkline.js +96 -0
  212. package/dist/ui/sparkline.js.map +1 -0
  213. package/dist/ui/table.d.ts +109 -0
  214. package/dist/ui/table.d.ts.map +1 -0
  215. package/dist/ui/table.js +899 -0
  216. package/dist/ui/table.js.map +1 -0
  217. package/dist/ui/table.styles.d.ts +2 -0
  218. package/dist/ui/table.styles.d.ts.map +1 -0
  219. package/dist/ui/table.styles.js +216 -0
  220. package/dist/ui/table.styles.js.map +1 -0
  221. package/dist/ui/tooltip.d.ts +9 -0
  222. package/dist/ui/tooltip.d.ts.map +1 -0
  223. package/dist/ui/tooltip.js +32 -0
  224. package/dist/ui/tooltip.js.map +1 -0
  225. package/package.json +71 -0
@@ -0,0 +1,486 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __importDefault = (this && this.__importDefault) || function (mod) {
9
+ return (mod && mod.__esModule) ? mod : { "default": mod };
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.Selector = exports.SelectorMoveEvent = exports.SelectorEvent = void 0;
13
+ const constants_1 = __importDefault(require("../constants"));
14
+ const core_1 = require("@omegagrid/core");
15
+ const grid_core_1 = require("@omegagrid/grid-core");
16
+ const lit_1 = require("lit");
17
+ const decorators_js_1 = require("lit/decorators.js");
18
+ const selector_style_1 = require("./selector.style");
19
+ const style_map_js_1 = require("lit/directives/style-map.js");
20
+ class SelectorEvent extends Event {
21
+ constructor(type, args) {
22
+ super(`grid.selector.${type}`, { composed: true, bubbles: true });
23
+ Object.assign(this, args);
24
+ }
25
+ }
26
+ exports.SelectorEvent = SelectorEvent;
27
+ class SelectorMoveEvent extends SelectorEvent {
28
+ constructor(args) {
29
+ super('move');
30
+ Object.assign(this, args);
31
+ }
32
+ }
33
+ exports.SelectorMoveEvent = SelectorMoveEvent;
34
+ let Selector = class Selector extends lit_1.LitElement {
35
+ constructor() {
36
+ super(...arguments);
37
+ this._animationTimer = null;
38
+ this._autofilling = false;
39
+ this._moving = false;
40
+ this._resizing = false;
41
+ this.subselector = false;
42
+ this.borderWidth = constants_1.default.SELECTOR_BORDER_WIDTH;
43
+ this.animated = false;
44
+ this._isVisible = false;
45
+ this.hide = () => {
46
+ this._isVisible = false;
47
+ core_1.dom.hideElement(this);
48
+ this.stopAnimation();
49
+ };
50
+ this.show = () => {
51
+ this._isVisible = true;
52
+ core_1.dom.showElement(this);
53
+ this.startAnimation();
54
+ };
55
+ this._onHandleMouseMove = (e) => {
56
+ for (const elm of e.composedPath()) {
57
+ if (elm.tagName == 'TD') {
58
+ const td = elm;
59
+ const { c1, r1, c2, r2 } = this.selection.range;
60
+ const { r, c } = td;
61
+ this._autofillRange = null;
62
+ // down autofill
63
+ if (r > r2 && c - c2 <= r - r2) {
64
+ this._autofillDirection = 'down';
65
+ this._autofillRange = new grid_core_1.CellRange(c1, r2 + 1, c2, r);
66
+ }
67
+ // up autofill
68
+ else if (r < r1 && c1 - c <= r1 - r) {
69
+ this._autofillDirection = 'up';
70
+ this._autofillRange = new grid_core_1.CellRange(c1, r, c2, r1 - 1);
71
+ }
72
+ // right autofill
73
+ else if (c > c2 && c - c2 > r - r2) {
74
+ this._autofillDirection = 'right';
75
+ this._autofillRange = new grid_core_1.CellRange(c2 + 1, r1, c, r2);
76
+ }
77
+ // left autofill
78
+ else if (c < c1 && c1 - c > r1 - r) {
79
+ this._autofillDirection = 'left';
80
+ this._autofillRange = new grid_core_1.CellRange(c, r1, c1 - 1, r2);
81
+ }
82
+ if (this._autofillRange)
83
+ this.highlightAutofillRange();
84
+ return;
85
+ }
86
+ }
87
+ };
88
+ this._onHandleMouseDown = () => {
89
+ var _a;
90
+ this._autofilling = true;
91
+ this.autofillSelector = (_a = this.autofillSelector) !== null && _a !== void 0 ? _a : this.createAutofillSelector();
92
+ core_1.dom.hideElement(this.autofillSelector);
93
+ core_1.dom.appendElement(this.grid.shadowRoot, this.autofillSelector);
94
+ this.table.addEventListener('mousemove', this._onHandleMouseMove);
95
+ this.table.addEventListener('mouseup', () => {
96
+ this._autofilling = false;
97
+ this.dispatchEvent(new SelectorEvent('autofill', { selector: this }));
98
+ //this.autofillRange = null;
99
+ this.autofillSelector.remove();
100
+ this.table.removeEventListener('mousemove', this._onHandleMouseMove);
101
+ }, { once: true });
102
+ };
103
+ // TODO - another mousemove event handler in grid.events.ts, should be passible to move it there
104
+ this._onMoveHandleMouseMove = (e) => {
105
+ // primary button not pressed
106
+ if ((e.buttons & 1) == 0) {
107
+ this.stopMoving();
108
+ return;
109
+ }
110
+ const td = e.composedPath().find((elm) => elm.tagName == 'TD');
111
+ if (td) {
112
+ const c = this.selection.range.isRow ? 0 : td.c - this.movingBaseCell.c1;
113
+ const r = this.selection.range.isColumn ? 0 : td.r - this.movingBaseCell.r1;
114
+ const moveSelector = this.getMoveSelector();
115
+ moveSelector.selection.setCoords(this.selection.range.c1 + c, this.selection.range.r1 + r, this.selection.range.c2 + c, this.selection.range.r2 + r);
116
+ moveSelector.select(moveSelector.selection, this.grid);
117
+ core_1.dom.showElement(this.moveSelector);
118
+ }
119
+ };
120
+ this._onMoveHandleMouseDown = (e, _side) => {
121
+ const x = e.offsetX + e.target.offsetLeft + this.offsetLeft - this.table.totalHeaderWidth;
122
+ const y = e.offsetY + e.target.offsetTop + this.offsetTop - this.table.thead.clientHeight;
123
+ let i = -1, h = 0, w = 0;
124
+ while (h < y && this.table.bRows[++i]) {
125
+ h += this.table.bRows[i].clientHeight;
126
+ }
127
+ const row = this.table.bRows[i];
128
+ if (row) {
129
+ i = -1;
130
+ while (w < x && row.children[++i]) {
131
+ w += row.children[i].tagName == 'TD' ? row.children[i].clientWidth : 0;
132
+ }
133
+ const cell = row.children[Math.max(i, 0)];
134
+ const { r, c } = cell;
135
+ this.startMoving(new grid_core_1.CellRange(c, r));
136
+ }
137
+ };
138
+ this._onResizeHandleMouseMove = (e) => {
139
+ if (e.buttons != 1)
140
+ this.stopResizing();
141
+ for (const elm of e.composedPath()) {
142
+ if (elm.tagName == 'TD') {
143
+ const td = elm;
144
+ const { c1, r1, c2, r2 } = this.selection.range;
145
+ const { r, c } = td;
146
+ const range = this.selection.range.clone();
147
+ switch (this._resizingDirection) {
148
+ case 'nw':
149
+ if (r <= r2 && c <= c2) {
150
+ range.r1 = r;
151
+ range.c1 = c;
152
+ }
153
+ break;
154
+ case 'ne':
155
+ if (r <= r2 && c >= c1) {
156
+ range.r1 = r;
157
+ range.c2 = c;
158
+ }
159
+ break;
160
+ case 'sw':
161
+ if (r >= r1 && c <= c2) {
162
+ range.r2 = r;
163
+ range.c1 = c;
164
+ }
165
+ break;
166
+ case 'se':
167
+ if (r >= r1 && c >= c1) {
168
+ range.r2 = r;
169
+ range.c2 = c;
170
+ }
171
+ break;
172
+ }
173
+ if (!this.selection.range.equals(range)) {
174
+ this.selection.setRange(range);
175
+ this.updatePosition();
176
+ }
177
+ return;
178
+ }
179
+ }
180
+ };
181
+ this._onResizeHandleMouseDown = (e, direction) => {
182
+ e.stopImmediatePropagation();
183
+ this._resizing = true;
184
+ this._resizingDirection = direction;
185
+ this.table.addEventListener('mousemove', this._onResizeHandleMouseMove);
186
+ const _mouseUp = (e) => {
187
+ if (e.button != 0)
188
+ return;
189
+ this.stopResizing();
190
+ this.table.removeEventListener('mouseup', _mouseUp);
191
+ };
192
+ this.table.addEventListener('mouseup', _mouseUp);
193
+ };
194
+ this._onHandleMouseUp = (e) => {
195
+ if (e.button != 0)
196
+ return;
197
+ this.stopMoving();
198
+ this.stopResizing();
199
+ };
200
+ this.render = () => (0, lit_1.html) `
201
+ ${this.subselector ? (0, lit_1.html) `<div id="subselector"></div>` : ''}
202
+ ${this.resizable ? (0, lit_1.html) `
203
+ <div id="handle-nw" class="handle-resize" style="${(0, style_map_js_1.styleMap)({ backgroundColor: this.color })}"
204
+ @mousedown="${(e) => this._onResizeHandleMouseDown(e, 'nw')}"
205
+ @mouseup="${this._onHandleMouseUp}"></div>
206
+ <div id="handle-ne" class="handle-resize" style="${(0, style_map_js_1.styleMap)({ backgroundColor: this.color })}"
207
+ @mousedown="${(e) => this._onResizeHandleMouseDown(e, 'ne')}"
208
+ @mouseup="${this._onHandleMouseUp}"></div>
209
+ <div id="handle-sw" class="handle-resize" style="${(0, style_map_js_1.styleMap)({ backgroundColor: this.color })}"
210
+ @mousedown="${(e) => this._onResizeHandleMouseDown(e, 'sw')}"
211
+ @mouseup="${this._onHandleMouseUp}"></div>
212
+ <div id="handle-se" class="handle-resize" style="${(0, style_map_js_1.styleMap)({ backgroundColor: this.color })}"
213
+ @mousedown="${(e) => this._onResizeHandleMouseDown(e, 'se')}"
214
+ @mouseup="${this._onHandleMouseUp}"></div>
215
+ ` : (this.autofill ? (0, lit_1.html) `
216
+ <div id="handle" @mousedown="${this._onHandleMouseDown}"></div>
217
+ ` : '')}
218
+
219
+ ${this.movable ? (0, lit_1.html) `
220
+ <div id="handle-top" class="handle-move"
221
+ @mousedown="${(e) => this._onMoveHandleMouseDown(e, 'top')}"
222
+ @mouseup="${this._onHandleMouseUp}"></div>
223
+ <div id="handle-right" class="handle-move"
224
+ @mousedown="${(e) => this._onMoveHandleMouseDown(e, 'right')}"
225
+ @mouseup="${this._onHandleMouseUp}"></div>
226
+ <div id="handle-bottom" class="handle-move"
227
+ @mousedown="${(e) => this._onMoveHandleMouseDown(e, 'bottom')}"
228
+ @mouseup="${this._onHandleMouseUp}"></div>
229
+ <div id="handle-left" class="handle-move"
230
+ @mousedown="${(e) => this._onMoveHandleMouseDown(e, 'left')}"
231
+ @mouseup="${this._onHandleMouseUp}"></div>
232
+ ` : ''}
233
+ ${this.animated ? (0, lit_1.html) `
234
+ <svg id="svgAnimation" xmlns="http://www.w3.org/2000/svg">
235
+ <rect width="100%" height="100%" fill="none" stroke-width="4" stroke-dasharray="6,14" stroke-dashoffset="0" stroke-linecap="square" />
236
+ </svg>
237
+ ` : ''}
238
+ `;
239
+ }
240
+ get grid() { return this._grid; }
241
+ get selection() { return this._selection; }
242
+ get moving() { return this._moving; }
243
+ get autofillDirection() { return this._autofillDirection; }
244
+ get autofillRange() { return this._autofillRange; }
245
+ get isAutofilling() { return this._autofilling; }
246
+ get isMoving() { return this._moving; }
247
+ get isResizing() { return this._resizing; }
248
+ get table() { return this.grid ? this.grid.table : null; }
249
+ get isVisible() { return this._isVisible; }
250
+ highlightAutofillRange() {
251
+ const tlCell = this.table.getCellByModelIndex(this._autofillRange.c1, this._autofillRange.r1);
252
+ const trCell = this.table.getCellByModelIndex(this._autofillRange.c2, this._autofillRange.r1);
253
+ const brCell = this.table.getCellByModelIndex(this._autofillRange.c2, this._autofillRange.r2);
254
+ const blCell = this.table.getCellByModelIndex(this._autofillRange.c1, this._autofillRange.r2);
255
+ let left = -100;
256
+ let top = -100;
257
+ let right = this.table.offsetWidth + 100;
258
+ let bottom = this.table.offsetHeight + 100;
259
+ if (tlCell) {
260
+ const offset = core_1.dom.getElementOffset(tlCell, this.table);
261
+ top = offset.top;
262
+ left = offset.left;
263
+ }
264
+ if (trCell) {
265
+ const offset = core_1.dom.getElementOffset(trCell, this.table);
266
+ top = offset.top;
267
+ right = offset.left + brCell.offsetWidth;
268
+ }
269
+ if (blCell) {
270
+ const offset = core_1.dom.getElementOffset(blCell, this.table);
271
+ bottom = offset.top + blCell.offsetHeight;
272
+ left = offset.left;
273
+ }
274
+ if (brCell) {
275
+ const offset = core_1.dom.getElementOffset(brCell, this.table);
276
+ bottom = offset.top + brCell.offsetHeight;
277
+ right = offset.left + brCell.offsetWidth;
278
+ }
279
+ core_1.dom.setPosition(this.autofillSelector, { l: left, t: top });
280
+ core_1.dom.setSize(this.autofillSelector, { w: right - left, h: bottom - top });
281
+ core_1.dom.showElement(this.autofillSelector);
282
+ }
283
+ createAutofillSelector() {
284
+ const selector = core_1.dom.createElement('div');
285
+ selector.className = 'autofill';
286
+ selector.style.border = '1px solid var(--accent-color)';
287
+ selector.style.zIndex = '100';
288
+ selector.style.pointerEvents = 'none';
289
+ return selector;
290
+ }
291
+ getMoveSelector() {
292
+ if (!this.moveSelector) {
293
+ this.moveSelector = core_1.dom.createElement('og-selector', this.grid.shadowRoot);
294
+ this.moveSelector.style.borderStyle = 'dotted';
295
+ this.moveSelector.subselector = false;
296
+ this.moveSelector._selection = grid_core_1.SelectionModel.fromRange(this.selection.range);
297
+ }
298
+ return this.moveSelector;
299
+ }
300
+ startMoving(moveBaseCell) {
301
+ this.movingBaseCell = moveBaseCell;
302
+ this._moving = true;
303
+ this.table.addEventListener('mousemove', this._onMoveHandleMouseMove);
304
+ this.table.addEventListener('mouseup', () => this.stopMoving(), { once: true });
305
+ }
306
+ stopMoving() {
307
+ if (!this._moving)
308
+ return;
309
+ this._moving = false;
310
+ core_1.dom.hideElement(this.moveSelector);
311
+ this.table.removeEventListener('mousemove', this._onMoveHandleMouseMove);
312
+ if (this.moveSelector) {
313
+ const fromRange = this.selection.range.clone();
314
+ const toRange = this.moveSelector.selection.range.clone();
315
+ if (!fromRange.equals(toRange)) {
316
+ this.selection.setRange(toRange);
317
+ this.grid.selecting.updateSelector(true);
318
+ this.dispatchEvent(new SelectorMoveEvent({ fromRange, toRange, selector: this }));
319
+ }
320
+ }
321
+ }
322
+ stopResizing() {
323
+ if (!this._resizing)
324
+ return;
325
+ this._resizing = false;
326
+ this.dispatchEvent(new SelectorEvent('resize', { selector: this }));
327
+ this.table.removeEventListener('mousemove', this._onResizeHandleMouseMove);
328
+ }
329
+ startAnimation() {
330
+ if (!this.animated || this._animationTimer != null || !this.isVisible)
331
+ return;
332
+ let dashOffset = 0;
333
+ this._animationTimer = window.setInterval(() => {
334
+ dashOffset += 2;
335
+ dashOffset = dashOffset == 20 ? 0 : dashOffset;
336
+ this.svgAnimation.firstElementChild.setAttribute('stroke-dashoffset', dashOffset.toString());
337
+ }, 50);
338
+ }
339
+ stopAnimation() {
340
+ if (this._animationTimer != null)
341
+ window.clearInterval(this._animationTimer);
342
+ this._animationTimer = null;
343
+ }
344
+ disconnectedCallback() {
345
+ this.stopAnimation();
346
+ }
347
+ willUpdate() {
348
+ if (this.color)
349
+ this.style.borderColor = this.color;
350
+ }
351
+ updated() {
352
+ this.updatePosition();
353
+ if (!this.animated && this._animationTimer != null)
354
+ this.stopAnimation();
355
+ else if (this.animated && this._animationTimer == null)
356
+ this.startAnimation();
357
+ }
358
+ updatePosition() {
359
+ var _a;
360
+ if (!((_a = this.table) === null || _a === void 0 ? void 0 : _a.model))
361
+ return;
362
+ const zoom = this.table.zoom;
363
+ core_1.dom.zoomElement(this, zoom);
364
+ let top = -1000, left = -1000, width = 0, height = 0;
365
+ let subTop = -1000, subLeft = -1000, subWidth = 0, subHeight = 0;
366
+ const options = this.table.model.options;
367
+ if (this.selection && !this.selection.hidden) {
368
+ const cMin = Math.min(this.selection.range.c1, this.selection.range.c2);
369
+ const cMax = Math.max(this.selection.range.c1, this.selection.range.c2);
370
+ const rMin = Math.min(this.selection.range.r1, this.selection.range.r2);
371
+ const rMax = Math.max(this.selection.range.r1, this.selection.range.r2);
372
+ this.topLeftCell = this.table.getCellByModelIndex(cMin, rMin);
373
+ this.topRightCell = this.table.getCellByModelIndex(cMax, rMin);
374
+ this.bottomLeftCell = this.table.getCellByModelIndex(cMin, rMax);
375
+ this.bottomRightCell = this.table.getCellByModelIndex(cMax, rMax);
376
+ if (this.topLeftCell || this.topRightCell || this.bottomLeftCell || this.bottomRightCell) {
377
+ core_1.dom.setBorderWidth(this, {
378
+ r: this.topRightCell || this.bottomRightCell ? this.borderWidth : 0,
379
+ b: this.bottomRightCell || this.bottomLeftCell ? this.borderWidth : 0,
380
+ l: this.topLeftCell || this.bottomLeftCell ? this.borderWidth : 0,
381
+ t: this.topRightCell || this.topLeftCell ? this.borderWidth : 0
382
+ });
383
+ top = this.topLeftCell || this.topRightCell
384
+ ? core_1.dom.getElementOffset(this.topLeftCell || this.topRightCell, this.table).top
385
+ : core_1.dom.getElementOffset(this.table.getCellByGridIndex(0, options.freezeTop), this.table).top;
386
+ height = (this.bottomRightCell || this.bottomLeftCell
387
+ ? core_1.dom.getElementOffset(this.bottomRightCell || this.bottomLeftCell, this.table).top - top + (this.bottomRightCell || this.bottomLeftCell).offsetHeight
388
+ : (rMax <= this.table.rowOffset
389
+ ? (core_1.dom.getElementOffset(this.table.getCellByGridIndex(0, options.freezeTop), this.table).top - top)
390
+ : this.table.offsetHeight - top)) + 1;
391
+ left = this.topLeftCell || this.bottomLeftCell
392
+ ? core_1.dom.getElementOffset(this.topLeftCell || this.bottomLeftCell, this.table).left
393
+ : core_1.dom.getElementOffset(this.table.getCellByGridIndex(options.freezeLeft, 0), this.table).left;
394
+ width = (this.topRightCell || this.bottomRightCell
395
+ ? core_1.dom.getElementOffset(this.topRightCell || this.bottomRightCell, this.table).left - left + (this.topRightCell || this.bottomRightCell).offsetWidth
396
+ : (cMax <= this.table.colOffset
397
+ ? (core_1.dom.getElementOffset(this.table.getCellByGridIndex(options.freezeLeft, 0), this.table).left - left)
398
+ : this.table.offsetWidth - left)) + 1;
399
+ if (this.selection.activeCell) {
400
+ this.activeCell = this.table.getCellByModelIndex(cMin + this.selection.activeCell.c1, rMin + this.selection.activeCell.r1);
401
+ if (this.activeCell) {
402
+ const subOffset = core_1.dom.getElementOffset(this.activeCell, this.table);
403
+ subLeft = subOffset.left - left;
404
+ subTop = subOffset.top - top;
405
+ subWidth = this.activeCell.offsetWidth;
406
+ subHeight = this.activeCell.offsetHeight;
407
+ }
408
+ }
409
+ }
410
+ }
411
+ core_1.dom.setPosition(this, { l: left * zoom, t: top * zoom });
412
+ core_1.dom.setSize(this, { w: width, h: height });
413
+ if (this.subselectorElm) {
414
+ if (this.selection.activeCell) {
415
+ core_1.dom.setPosition(this.subselectorElm, { l: subLeft - constants_1.default.SELECTOR_BORDER_WIDTH, t: subTop - constants_1.default.SELECTOR_BORDER_WIDTH });
416
+ core_1.dom.setSize(this.subselectorElm, { w: subWidth - 1, h: subHeight - 1 });
417
+ }
418
+ else {
419
+ core_1.dom.hideElement(this.subselectorElm);
420
+ }
421
+ }
422
+ if (this.svgAnimation) {
423
+ this.svgAnimation.setAttribute('width', (this.clientWidth + 4).toString());
424
+ this.svgAnimation.setAttribute('height', (this.clientHeight + 4).toString());
425
+ }
426
+ }
427
+ select(selection, grid, dispatchEvent = true) {
428
+ if (selection) {
429
+ selection.activeCell.c1 = 0;
430
+ selection.activeCell.r1 = 0;
431
+ }
432
+ this._selection = selection;
433
+ this._grid = grid;
434
+ this.updatePosition();
435
+ if (dispatchEvent)
436
+ this.dispatchEvent(new SelectorEvent('select', { selector: this }));
437
+ }
438
+ };
439
+ exports.Selector = Selector;
440
+ Selector.styles = [selector_style_1.style];
441
+ __decorate([
442
+ (0, decorators_js_1.property)({ type: Boolean })
443
+ ], Selector.prototype, "autofill", void 0);
444
+ __decorate([
445
+ (0, decorators_js_1.property)({ type: Boolean, reflect: true })
446
+ ], Selector.prototype, "movable", void 0);
447
+ __decorate([
448
+ (0, decorators_js_1.property)({ type: Boolean, reflect: true })
449
+ ], Selector.prototype, "resizable", void 0);
450
+ __decorate([
451
+ (0, decorators_js_1.property)({ type: Boolean, reflect: true })
452
+ ], Selector.prototype, "subselector", void 0);
453
+ __decorate([
454
+ (0, decorators_js_1.property)({ type: String })
455
+ ], Selector.prototype, "color", void 0);
456
+ __decorate([
457
+ (0, decorators_js_1.property)({ type: Number })
458
+ ], Selector.prototype, "borderWidth", void 0);
459
+ __decorate([
460
+ (0, decorators_js_1.property)({ type: Boolean, reflect: true })
461
+ ], Selector.prototype, "animated", void 0);
462
+ __decorate([
463
+ (0, decorators_js_1.query)('#handle')
464
+ ], Selector.prototype, "handleElm", void 0);
465
+ __decorate([
466
+ (0, decorators_js_1.query)('#svgAnimation')
467
+ ], Selector.prototype, "svgAnimation", void 0);
468
+ __decorate([
469
+ (0, decorators_js_1.query)('#handle-left')
470
+ ], Selector.prototype, "moveHandleLeftElm", void 0);
471
+ __decorate([
472
+ (0, decorators_js_1.query)('#handle-top')
473
+ ], Selector.prototype, "moveHandleTopElm", void 0);
474
+ __decorate([
475
+ (0, decorators_js_1.query)('#handle-right')
476
+ ], Selector.prototype, "moveHandleRightElm", void 0);
477
+ __decorate([
478
+ (0, decorators_js_1.query)('#handle-bottom')
479
+ ], Selector.prototype, "moveHandleBottomElm", void 0);
480
+ __decorate([
481
+ (0, decorators_js_1.query)('#subselector')
482
+ ], Selector.prototype, "subselectorElm", void 0);
483
+ exports.Selector = Selector = __decorate([
484
+ (0, decorators_js_1.customElement)('og-selector')
485
+ ], Selector);
486
+ //# sourceMappingURL=selector.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"selector.js","sourceRoot":"","sources":["../../src/ui/selector.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare const style: import("lit").CSSResult;
2
+ //# sourceMappingURL=selector.style.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"selector.style.d.ts","sourceRoot":"","sources":["../../src/ui/selector.style.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,KAAK,yBAyGjB,CAAC"}
@@ -0,0 +1,111 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.style = void 0;
4
+ const lit_1 = require("lit");
5
+ exports.style = (0, lit_1.css) `
6
+ :host {
7
+ z-index: 100;
8
+ pointer-events: none;
9
+ position: absolute;
10
+ background-color: var(--accent-color-alpha);
11
+ border: 2px solid var(--accent-color);
12
+ //border-color: transparent;
13
+ display: none;
14
+ cursor: move;
15
+ }
16
+
17
+ :host([animated]) {
18
+ /* stroke: red;
19
+ background-image: url("data:image/svg+xml,%3csvg width='100%25' height='100%25' xmlns='http://www.w3.org/2000/svg'%3e%3crect width='100%25' height='100%25' fill='none' stroke='%23333' stroke-width='4' stroke-dasharray='6%2c 14' stroke-dashoffset='0' stroke-linecap='square'/%3e%3c/svg%3e"); */
20
+ background-color: transparent;
21
+ border-color: transparent;
22
+ }
23
+
24
+ #svgAnimation {
25
+ position: absolute;
26
+ top: -2px;
27
+ left: -2px;
28
+ stroke: var(--accent-color);
29
+ }
30
+
31
+ #handle {
32
+ position: absolute;
33
+ width: 6px;
34
+ height: 6px;
35
+ right: -4px;
36
+ bottom: -4px;
37
+ background-color: var(--accent-color);
38
+ cursor: crosshair;
39
+ pointer-events: all;
40
+ }
41
+
42
+ #subselector {
43
+ z-index: 99;
44
+ pointer-events: none;
45
+ border: 1px solid var(--accent-color);
46
+ }
47
+
48
+ .handle-move {
49
+ position: absolute;
50
+ cursor: move;
51
+ pointer-events: all;
52
+ //background-color: red;
53
+ }
54
+
55
+ #handle-top {
56
+ z-index: 98;
57
+ inset: -2px 0 auto 0;
58
+ height: 4px;
59
+ }
60
+
61
+ #handle-bottom {
62
+ z-index: 98;
63
+ inset: auto 0 -2px 0;
64
+ height: 4px;
65
+ }
66
+
67
+ #handle-right {
68
+ z-index: 98;
69
+ inset: 0 -2px 0 auto;
70
+ width: 4px;
71
+ }
72
+
73
+ #handle-left {
74
+ z-index: 98;
75
+ inset: 0 auto 0 -2px;
76
+ width: 4px;
77
+ }
78
+
79
+ .handle-resize {
80
+ position: absolute;
81
+ width: 6px;
82
+ height: 6px;
83
+ background-color: var(--accent-color);
84
+ pointer-events: all;
85
+ }
86
+
87
+ #handle-se {
88
+ right: -4px;
89
+ bottom: -4px;
90
+ cursor: se-resize;
91
+ }
92
+
93
+ #handle-sw {
94
+ left: -4px;
95
+ bottom: -4px;
96
+ cursor: sw-resize;
97
+ }
98
+
99
+ #handle-nw {
100
+ left: -4px;
101
+ top: -4px;
102
+ cursor: nw-resize;
103
+ }
104
+
105
+ #handle-ne {
106
+ right: -4px;
107
+ top: -4px;
108
+ cursor: ne-resize;
109
+ }
110
+ `;
111
+ //# sourceMappingURL=selector.style.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"selector.style.js","sourceRoot":"","sources":["../../src/ui/selector.style.ts"],"names":[],"mappings":";;;AAAA,6BAA0B;AAEb,QAAA,KAAK,GAAG,IAAA,SAAG,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyGvB,CAAC"}
@@ -0,0 +1,8 @@
1
+ import { LitElement } from 'lit';
2
+ import { SortSettings } from '@omegagrid/grid-core';
3
+ export declare class SortingArrow extends LitElement {
4
+ static styles: import("lit").CSSResult;
5
+ sortSettings: SortSettings;
6
+ render(): import("lit-html").TemplateResult<1> | "";
7
+ }
8
+ //# sourceMappingURL=sortingArrow.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sortingArrow.d.ts","sourceRoot":"","sources":["../../src/ui/sortingArrow.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAa,MAAM,KAAK,CAAC;AAG5C,OAAO,EAAa,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAE/D,qBACa,YAAa,SAAQ,UAAU;IAE3C,MAAM,CAAC,MAAM,0BAeX;IAGF,YAAY,EAAE,YAAY,CAAC;IAE3B,MAAM;CAON"}