@hpcc-js/api 3.4.1 → 3.4.3
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.
- package/dist/index.js +1 -641
- package/dist/index.js.map +1 -1
- package/dist/index.umd.cjs +1 -1
- package/package.json +4 -4
package/dist/index.js
CHANGED
|
@@ -1,643 +1,3 @@
|
|
|
1
|
-
var __defProp = Object.defineProperty;
|
|
2
|
-
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
3
|
-
import { Palette, hsl, Widget, map, selection, select, format } from "@hpcc-js/common";
|
|
4
|
-
const PKG_NAME = "@hpcc-js/api";
|
|
5
|
-
const PKG_VERSION = "3.4.1";
|
|
6
|
-
const BUILD_VERSION = "3.15.1";
|
|
7
|
-
function I1DChart() {
|
|
8
|
-
}
|
|
9
|
-
__name(I1DChart, "I1DChart");
|
|
10
|
-
I1DChart.prototype._dataFamily = "1D";
|
|
11
|
-
I1DChart.prototype._palette = Palette.rainbow("default");
|
|
12
|
-
I1DChart.prototype.click = function(row, column, selected) {
|
|
13
|
-
};
|
|
14
|
-
I1DChart.prototype.dblclick = function(row, column, selected) {
|
|
15
|
-
};
|
|
16
|
-
function I2DChart() {
|
|
17
|
-
}
|
|
18
|
-
__name(I2DChart, "I2DChart");
|
|
19
|
-
I2DChart.prototype._dataFamily = "2D";
|
|
20
|
-
I2DChart.prototype._palette = Palette.ordinal("default");
|
|
21
|
-
I2DChart.prototype.fillColor = function(row, column, value, origRow) {
|
|
22
|
-
return this._palette(row[0]);
|
|
23
|
-
};
|
|
24
|
-
I2DChart.prototype.strokeColor = function(row, column, value, origRow) {
|
|
25
|
-
return hsl(this.fillColor(row, column, value, origRow)).darker().toString();
|
|
26
|
-
};
|
|
27
|
-
I2DChart.prototype.textColor = function(row, column, value, origRow) {
|
|
28
|
-
return Palette.textColor(this.fillColor(row, column, value, origRow));
|
|
29
|
-
};
|
|
30
|
-
I2DChart.prototype.click = function(row, column, selected) {
|
|
31
|
-
};
|
|
32
|
-
I2DChart.prototype.dblclick = function(row, column, selected) {
|
|
33
|
-
};
|
|
34
|
-
function I2DAggrChart() {
|
|
35
|
-
}
|
|
36
|
-
__name(I2DAggrChart, "I2DAggrChart");
|
|
37
|
-
I2DAggrChart.prototype._palette = Palette.rainbow("default");
|
|
38
|
-
I2DAggrChart.prototype.fillColor = function(row, column, value) {
|
|
39
|
-
return this._palette(row.length);
|
|
40
|
-
};
|
|
41
|
-
I2DAggrChart.prototype.strokeColor = function(row, column, value) {
|
|
42
|
-
return hsl(this.fillColor(row, column, value)).darker().toString();
|
|
43
|
-
};
|
|
44
|
-
I2DAggrChart.prototype.textColor = function(row, column, value) {
|
|
45
|
-
return Palette.textColor(this.fillColor(row, column, value));
|
|
46
|
-
};
|
|
47
|
-
I2DAggrChart.prototype.click = function(row, column, selected) {
|
|
48
|
-
};
|
|
49
|
-
I2DAggrChart.prototype.dblclick = function(row, column, selected) {
|
|
50
|
-
};
|
|
51
|
-
function IGraph() {
|
|
52
|
-
}
|
|
53
|
-
__name(IGraph, "IGraph");
|
|
54
|
-
IGraph.prototype._dataFamily = "graph";
|
|
55
|
-
IGraph.prototype.vertex_click = function(_row, _col, _sel, more) {
|
|
56
|
-
if (more && more.vertex) ;
|
|
57
|
-
};
|
|
58
|
-
IGraph.prototype.vertex_dblclick = function(_row, _col, _sel, more) {
|
|
59
|
-
if (more && more.vertex) ;
|
|
60
|
-
};
|
|
61
|
-
IGraph.prototype.edge_click = function(_row, _col, _sel, more) {
|
|
62
|
-
if (more && more.edge) ;
|
|
63
|
-
};
|
|
64
|
-
IGraph.prototype.edge_dblclick = function(_row, _col, _sel, more) {
|
|
65
|
-
if (more && more.edge) ;
|
|
66
|
-
};
|
|
67
|
-
function instanceOfIHighlight(w) {
|
|
68
|
-
return typeof w.highlightColumn === "function";
|
|
69
|
-
}
|
|
70
|
-
__name(instanceOfIHighlight, "instanceOfIHighlight");
|
|
71
|
-
function IInput() {
|
|
72
|
-
}
|
|
73
|
-
__name(IInput, "IInput");
|
|
74
|
-
IInput.prototype = Object.create(Widget.prototype);
|
|
75
|
-
IInput.prototype.constructor = IInput;
|
|
76
|
-
IInput.prototype.isValid = function() {
|
|
77
|
-
if (this.validate()) {
|
|
78
|
-
const re = new RegExp(this.validate());
|
|
79
|
-
if (!re.test(this.value())) {
|
|
80
|
-
return false;
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
return true;
|
|
84
|
-
};
|
|
85
|
-
IInput.prototype.hasValue = function() {
|
|
86
|
-
if (typeof this.type === "function") {
|
|
87
|
-
switch (this.type()) {
|
|
88
|
-
case "radio":
|
|
89
|
-
/* falls through */
|
|
90
|
-
case "checkbox":
|
|
91
|
-
if (this.value() && this.value() !== "false") {
|
|
92
|
-
return true;
|
|
93
|
-
}
|
|
94
|
-
break;
|
|
95
|
-
default:
|
|
96
|
-
if (this.value()) {
|
|
97
|
-
return true;
|
|
98
|
-
}
|
|
99
|
-
break;
|
|
100
|
-
}
|
|
101
|
-
return false;
|
|
102
|
-
}
|
|
103
|
-
return this.value() !== "";
|
|
104
|
-
};
|
|
105
|
-
IInput.prototype.blur = function(_w) {
|
|
106
|
-
};
|
|
107
|
-
IInput.prototype.keyup = function(_w) {
|
|
108
|
-
};
|
|
109
|
-
IInput.prototype.focus = function(_w) {
|
|
110
|
-
};
|
|
111
|
-
IInput.prototype.click = function(_w) {
|
|
112
|
-
};
|
|
113
|
-
IInput.prototype.dblclick = function(_w) {
|
|
114
|
-
};
|
|
115
|
-
IInput.prototype.change = function(_w, complete) {
|
|
116
|
-
};
|
|
117
|
-
IInput.prototype.resetValue = function(w) {
|
|
118
|
-
w.value(w._inputElement[0].node().value);
|
|
119
|
-
};
|
|
120
|
-
IInput.prototype.disable = function(disable) {
|
|
121
|
-
this._inputElement.forEach(function(e, idx) {
|
|
122
|
-
e.attr("disabled", disable ? "disabled" : null);
|
|
123
|
-
});
|
|
124
|
-
};
|
|
125
|
-
IInput.prototype.setFocus = function() {
|
|
126
|
-
if (this._inputElement.length) {
|
|
127
|
-
this._inputElement[0].node().focus();
|
|
128
|
-
}
|
|
129
|
-
};
|
|
130
|
-
IInput.prototype.publish("name", "", "string", "HTML name for the input");
|
|
131
|
-
IInput.prototype.publish("label", "", "string", "Descriptive label");
|
|
132
|
-
IInput.prototype.publish("value", "", "string", "Input Current Value");
|
|
133
|
-
IInput.prototype.publish("validate", null, "string", "Input Validation");
|
|
134
|
-
function INDChart() {
|
|
135
|
-
}
|
|
136
|
-
__name(INDChart, "INDChart");
|
|
137
|
-
INDChart.prototype._dataFamily = "ND";
|
|
138
|
-
INDChart.prototype._palette = Palette.ordinal("default");
|
|
139
|
-
INDChart.prototype.fillColor = function(row, column, value, origRow) {
|
|
140
|
-
return this._palette(column);
|
|
141
|
-
};
|
|
142
|
-
INDChart.prototype.strokeColor = function(row, column, value, origRow) {
|
|
143
|
-
return hsl(this.fillColor(row, column, value, origRow)).darker().toString();
|
|
144
|
-
};
|
|
145
|
-
INDChart.prototype.textColor = function(row, column, value, origRow) {
|
|
146
|
-
return Palette.textColor(this.fillColor(row, column, value, origRow));
|
|
147
|
-
};
|
|
148
|
-
INDChart.prototype.click = function(row, column, selected) {
|
|
149
|
-
};
|
|
150
|
-
INDChart.prototype.dblclick = function(row, column, selected) {
|
|
151
|
-
};
|
|
152
|
-
function tip() {
|
|
153
|
-
let direction = d3TipDirection;
|
|
154
|
-
let offset = d3TipOffset;
|
|
155
|
-
let html = d3TipHTML;
|
|
156
|
-
let rootElement = functor(document.body);
|
|
157
|
-
let node = initNode();
|
|
158
|
-
let svg = null;
|
|
159
|
-
let point = null;
|
|
160
|
-
let target = null;
|
|
161
|
-
const tip2 = /* @__PURE__ */ __name(function(vis) {
|
|
162
|
-
svg = getSVGNode(vis);
|
|
163
|
-
if (!svg) return;
|
|
164
|
-
point = svg.createSVGPoint();
|
|
165
|
-
const re = rootElement();
|
|
166
|
-
if (!re) return;
|
|
167
|
-
if (!node) return;
|
|
168
|
-
re.appendChild(node);
|
|
169
|
-
}, "tip2");
|
|
170
|
-
tip2.show = function(d, idx, arr) {
|
|
171
|
-
target = arr[idx];
|
|
172
|
-
const args = Array.prototype.slice.call(arguments);
|
|
173
|
-
const content = html.apply(this, args);
|
|
174
|
-
if (content === null) {
|
|
175
|
-
return tip2;
|
|
176
|
-
}
|
|
177
|
-
const poffset = offset.apply(this, args);
|
|
178
|
-
const nodel = getNodeEl();
|
|
179
|
-
let i = directions.length;
|
|
180
|
-
let coords;
|
|
181
|
-
const root_bbox = rootElement().getBoundingClientRect();
|
|
182
|
-
nodel.html(content).style("opacity", 1).style("pointer-events", "all");
|
|
183
|
-
while (i--) nodel.classed(directions[i], false);
|
|
184
|
-
let placement_success = false;
|
|
185
|
-
const placement_overflow = {};
|
|
186
|
-
let least_overflow_direction = directions[0];
|
|
187
|
-
for (let i2 = 0; i2 < directions.length; i2++) {
|
|
188
|
-
placement_success = _placement_attempt(directions[i2]);
|
|
189
|
-
if (placement_success) break;
|
|
190
|
-
}
|
|
191
|
-
if (!placement_success) {
|
|
192
|
-
nodel.classed("notick", true);
|
|
193
|
-
const top_offset = _vertical_adjustment(placement_overflow[least_overflow_direction]);
|
|
194
|
-
const left_offset = _horizontal_adjustment(placement_overflow[least_overflow_direction]);
|
|
195
|
-
_placement_attempt(least_overflow_direction, top_offset, left_offset);
|
|
196
|
-
} else {
|
|
197
|
-
nodel.classed("notick", false);
|
|
198
|
-
}
|
|
199
|
-
return tip2;
|
|
200
|
-
function _horizontal_adjustment(overflow_obj) {
|
|
201
|
-
if (overflow_obj.left > overflow_obj.right) {
|
|
202
|
-
return overflow_obj.left > 0 ? -overflow_obj.left : 0;
|
|
203
|
-
} else {
|
|
204
|
-
return overflow_obj.right > 0 ? overflow_obj.right : 0;
|
|
205
|
-
}
|
|
206
|
-
}
|
|
207
|
-
__name(_horizontal_adjustment, "_horizontal_adjustment");
|
|
208
|
-
function _vertical_adjustment(overflow_obj) {
|
|
209
|
-
if (overflow_obj.top > overflow_obj.bottom) {
|
|
210
|
-
return overflow_obj.top > 0 ? -overflow_obj.top : 0;
|
|
211
|
-
} else {
|
|
212
|
-
return overflow_obj.bottom;
|
|
213
|
-
}
|
|
214
|
-
}
|
|
215
|
-
__name(_vertical_adjustment, "_vertical_adjustment");
|
|
216
|
-
function _placement_attempt(_dir, _top_offset, _left_offset) {
|
|
217
|
-
_top_offset = _top_offset ? _top_offset : 0;
|
|
218
|
-
_left_offset = _left_offset ? _left_offset : 0;
|
|
219
|
-
nodel.style("white-space", "nowrap");
|
|
220
|
-
coords = directionCallbacks.get(_dir).apply(this);
|
|
221
|
-
nodel.classed(_dir, true).style("top", coords.top + poffset[0] - _top_offset + "px").style("left", coords.left + poffset[1] - _left_offset + "px");
|
|
222
|
-
const nodel_bbox = nodel.node().getBoundingClientRect();
|
|
223
|
-
const ret = nodel_bbox.top > root_bbox.top && nodel_bbox.left > root_bbox.left && nodel_bbox.bottom < root_bbox.bottom && nodel_bbox.right < root_bbox.right;
|
|
224
|
-
placement_overflow[_dir] = {
|
|
225
|
-
top: root_bbox.top - nodel_bbox.top,
|
|
226
|
-
right: nodel_bbox.right - root_bbox.right,
|
|
227
|
-
bottom: nodel_bbox.bottom - root_bbox.bottom,
|
|
228
|
-
left: root_bbox.left - nodel_bbox.left
|
|
229
|
-
};
|
|
230
|
-
nodel.style("white-space", "normal");
|
|
231
|
-
placement_overflow[_dir].total_overflow = Object.keys(placement_overflow[_dir]).filter((side) => placement_overflow[_dir][side] > 0).reduce((sum, side) => {
|
|
232
|
-
const side_overflow = placement_overflow[_dir][side];
|
|
233
|
-
return sum + side_overflow;
|
|
234
|
-
}, 0);
|
|
235
|
-
if (placement_overflow[least_overflow_direction].total_overflow > placement_overflow[_dir].total_overflow) {
|
|
236
|
-
least_overflow_direction = _dir;
|
|
237
|
-
}
|
|
238
|
-
if (!ret) {
|
|
239
|
-
nodel.classed(_dir, false);
|
|
240
|
-
}
|
|
241
|
-
return ret;
|
|
242
|
-
}
|
|
243
|
-
__name(_placement_attempt, "_placement_attempt");
|
|
244
|
-
};
|
|
245
|
-
tip2.hide = function() {
|
|
246
|
-
const nodel = getNodeEl();
|
|
247
|
-
nodel.style("opacity", 0).style("pointer-events", "none");
|
|
248
|
-
return tip2;
|
|
249
|
-
};
|
|
250
|
-
tip2.attr = function(n, v) {
|
|
251
|
-
if (arguments.length < 2 && typeof n === "string") {
|
|
252
|
-
return getNodeEl().attr(n);
|
|
253
|
-
}
|
|
254
|
-
const args = Array.prototype.slice.call(arguments);
|
|
255
|
-
selection.prototype.attr.apply(getNodeEl(), args);
|
|
256
|
-
return tip2;
|
|
257
|
-
};
|
|
258
|
-
tip2.style = function(n, v) {
|
|
259
|
-
if (arguments.length < 2 && typeof n === "string") {
|
|
260
|
-
return getNodeEl().style(n);
|
|
261
|
-
}
|
|
262
|
-
const args = Array.prototype.slice.call(arguments);
|
|
263
|
-
selection.prototype.style.apply(getNodeEl(), args);
|
|
264
|
-
return tip2;
|
|
265
|
-
};
|
|
266
|
-
tip2.direction = function(v) {
|
|
267
|
-
if (!arguments.length) return direction;
|
|
268
|
-
direction = v == null ? v : functor(v);
|
|
269
|
-
return tip2;
|
|
270
|
-
};
|
|
271
|
-
tip2.offset = function(v) {
|
|
272
|
-
if (!arguments.length) return offset;
|
|
273
|
-
offset = v == null ? v : functor(v);
|
|
274
|
-
return tip2;
|
|
275
|
-
};
|
|
276
|
-
tip2.html = function(v) {
|
|
277
|
-
if (!arguments.length) return html;
|
|
278
|
-
html = v == null ? v : functor(v);
|
|
279
|
-
return tip2;
|
|
280
|
-
};
|
|
281
|
-
tip2.rootElement = function(v) {
|
|
282
|
-
if (!arguments.length) return rootElement;
|
|
283
|
-
rootElement = functor(v);
|
|
284
|
-
return tip2;
|
|
285
|
-
};
|
|
286
|
-
tip2.destroy = function() {
|
|
287
|
-
if (node) {
|
|
288
|
-
getNodeEl().remove();
|
|
289
|
-
node = null;
|
|
290
|
-
}
|
|
291
|
-
return tip2;
|
|
292
|
-
};
|
|
293
|
-
function d3TipDirection() {
|
|
294
|
-
return "n";
|
|
295
|
-
}
|
|
296
|
-
__name(d3TipDirection, "d3TipDirection");
|
|
297
|
-
function d3TipOffset() {
|
|
298
|
-
return [0, 0];
|
|
299
|
-
}
|
|
300
|
-
__name(d3TipOffset, "d3TipOffset");
|
|
301
|
-
function d3TipHTML() {
|
|
302
|
-
return " ";
|
|
303
|
-
}
|
|
304
|
-
__name(d3TipHTML, "d3TipHTML");
|
|
305
|
-
const directionCallbacks = map({
|
|
306
|
-
n: directionNorth,
|
|
307
|
-
s: directionSouth,
|
|
308
|
-
e: directionEast,
|
|
309
|
-
w: directionWest,
|
|
310
|
-
nw: directionNorthWest,
|
|
311
|
-
ne: directionNorthEast,
|
|
312
|
-
sw: directionSouthWest,
|
|
313
|
-
se: directionSouthEast
|
|
314
|
-
});
|
|
315
|
-
const directions = directionCallbacks.keys();
|
|
316
|
-
function directionNorth() {
|
|
317
|
-
const bbox = getScreenBBox(window);
|
|
318
|
-
return {
|
|
319
|
-
top: bbox.n.y - node.offsetHeight,
|
|
320
|
-
left: bbox.n.x - node.offsetWidth / 2
|
|
321
|
-
};
|
|
322
|
-
}
|
|
323
|
-
__name(directionNorth, "directionNorth");
|
|
324
|
-
function directionSouth() {
|
|
325
|
-
const bbox = getScreenBBox(window);
|
|
326
|
-
return {
|
|
327
|
-
top: bbox.s.y + 8,
|
|
328
|
-
left: bbox.s.x - node.offsetWidth / 2
|
|
329
|
-
};
|
|
330
|
-
}
|
|
331
|
-
__name(directionSouth, "directionSouth");
|
|
332
|
-
function directionEast() {
|
|
333
|
-
const bbox = getScreenBBox(window);
|
|
334
|
-
return {
|
|
335
|
-
top: bbox.e.y - node.offsetHeight / 2,
|
|
336
|
-
left: bbox.e.x + 8
|
|
337
|
-
};
|
|
338
|
-
}
|
|
339
|
-
__name(directionEast, "directionEast");
|
|
340
|
-
function directionWest() {
|
|
341
|
-
const bbox = getScreenBBox(window);
|
|
342
|
-
return {
|
|
343
|
-
top: bbox.w.y - node.offsetHeight / 2,
|
|
344
|
-
left: bbox.w.x - node.offsetWidth - 8
|
|
345
|
-
};
|
|
346
|
-
}
|
|
347
|
-
__name(directionWest, "directionWest");
|
|
348
|
-
function directionNorthWest() {
|
|
349
|
-
const bbox = getScreenBBox(window);
|
|
350
|
-
return {
|
|
351
|
-
top: bbox.nw.y - node.offsetHeight,
|
|
352
|
-
left: bbox.nw.x - node.offsetWidth
|
|
353
|
-
};
|
|
354
|
-
}
|
|
355
|
-
__name(directionNorthWest, "directionNorthWest");
|
|
356
|
-
function directionNorthEast() {
|
|
357
|
-
const bbox = getScreenBBox(window);
|
|
358
|
-
return {
|
|
359
|
-
top: bbox.ne.y - node.offsetHeight,
|
|
360
|
-
left: bbox.ne.x
|
|
361
|
-
};
|
|
362
|
-
}
|
|
363
|
-
__name(directionNorthEast, "directionNorthEast");
|
|
364
|
-
function directionSouthWest() {
|
|
365
|
-
const bbox = getScreenBBox(window);
|
|
366
|
-
return {
|
|
367
|
-
top: bbox.sw.y,
|
|
368
|
-
left: bbox.sw.x - node.offsetWidth
|
|
369
|
-
};
|
|
370
|
-
}
|
|
371
|
-
__name(directionSouthWest, "directionSouthWest");
|
|
372
|
-
function directionSouthEast() {
|
|
373
|
-
const bbox = getScreenBBox(window);
|
|
374
|
-
return {
|
|
375
|
-
top: bbox.se.y,
|
|
376
|
-
left: bbox.se.x
|
|
377
|
-
};
|
|
378
|
-
}
|
|
379
|
-
__name(directionSouthEast, "directionSouthEast");
|
|
380
|
-
function initNode() {
|
|
381
|
-
const div = select(document.createElement("div"));
|
|
382
|
-
div.attr("class", "d3-tip").style("position", "absolute").style("top", "0px").style("opacity", 0).style("pointer-events", "none").style("box-sizing", "border-box");
|
|
383
|
-
return div.node();
|
|
384
|
-
}
|
|
385
|
-
__name(initNode, "initNode");
|
|
386
|
-
function getSVGNode(element) {
|
|
387
|
-
const svgNode = element.node();
|
|
388
|
-
if (!svgNode) return null;
|
|
389
|
-
if (svgNode.tagName.toLowerCase() === "svg") return svgNode;
|
|
390
|
-
return svgNode.ownerSVGElement;
|
|
391
|
-
}
|
|
392
|
-
__name(getSVGNode, "getSVGNode");
|
|
393
|
-
function getNodeEl() {
|
|
394
|
-
if (node == null) {
|
|
395
|
-
node = initNode();
|
|
396
|
-
rootElement().appendChild(node);
|
|
397
|
-
}
|
|
398
|
-
return select(node);
|
|
399
|
-
}
|
|
400
|
-
__name(getNodeEl, "getNodeEl");
|
|
401
|
-
function getScreenBBox(targetShape) {
|
|
402
|
-
let targetel = target || targetShape;
|
|
403
|
-
while (targetel.getCTM == null && targetel.parentNode != null) {
|
|
404
|
-
targetel = targetel.parentNode;
|
|
405
|
-
}
|
|
406
|
-
const bbox = {};
|
|
407
|
-
const matrix = targetel.getCTM();
|
|
408
|
-
const tbbox = targetel.getBBox();
|
|
409
|
-
const width = tbbox.width;
|
|
410
|
-
const height = tbbox.height;
|
|
411
|
-
const x = tbbox.x;
|
|
412
|
-
const y = tbbox.y;
|
|
413
|
-
point.x = x;
|
|
414
|
-
point.y = y;
|
|
415
|
-
bbox.nw = point.matrixTransform(matrix);
|
|
416
|
-
point.x += width;
|
|
417
|
-
bbox.ne = point.matrixTransform(matrix);
|
|
418
|
-
point.y += height;
|
|
419
|
-
bbox.se = point.matrixTransform(matrix);
|
|
420
|
-
point.x -= width;
|
|
421
|
-
bbox.sw = point.matrixTransform(matrix);
|
|
422
|
-
point.y -= height / 2;
|
|
423
|
-
bbox.w = point.matrixTransform(matrix);
|
|
424
|
-
point.x += width;
|
|
425
|
-
bbox.e = point.matrixTransform(matrix);
|
|
426
|
-
point.x -= width / 2;
|
|
427
|
-
point.y -= height / 2;
|
|
428
|
-
bbox.n = point.matrixTransform(matrix);
|
|
429
|
-
point.y += height;
|
|
430
|
-
bbox.s = point.matrixTransform(matrix);
|
|
431
|
-
return bbox;
|
|
432
|
-
}
|
|
433
|
-
__name(getScreenBBox, "getScreenBBox");
|
|
434
|
-
function functor(v) {
|
|
435
|
-
return typeof v === "function" ? v : function() {
|
|
436
|
-
return v;
|
|
437
|
-
};
|
|
438
|
-
}
|
|
439
|
-
__name(functor, "functor");
|
|
440
|
-
return tip2;
|
|
441
|
-
}
|
|
442
|
-
__name(tip, "tip");
|
|
443
|
-
function ITooltip() {
|
|
444
|
-
this.tooltip = tip();
|
|
445
|
-
if (this.tooltipLabelFormat_exists()) {
|
|
446
|
-
this._labelFormatter = format(this.tooltipLabelFormat());
|
|
447
|
-
}
|
|
448
|
-
if (this.tooltipValueFormat_exists()) {
|
|
449
|
-
this._valueFormatter = format(this.tooltipValueFormat());
|
|
450
|
-
}
|
|
451
|
-
if (this.layerEnter) {
|
|
452
|
-
const layerEnter = this.layerEnter;
|
|
453
|
-
this.layerEnter = function(_base, svgElement, _domElement) {
|
|
454
|
-
if (!this._parentOverlay) {
|
|
455
|
-
this._parentOverlay = _base._parentOverlay;
|
|
456
|
-
}
|
|
457
|
-
this.tooltipEnter(svgElement);
|
|
458
|
-
layerEnter.apply(this, arguments);
|
|
459
|
-
};
|
|
460
|
-
const layerUpdate = this.layerUpdate;
|
|
461
|
-
this.layerUpdate = function(_base) {
|
|
462
|
-
layerUpdate.apply(this, arguments);
|
|
463
|
-
this.tooltipUpdate();
|
|
464
|
-
};
|
|
465
|
-
const layerExit = this.layerExit;
|
|
466
|
-
this.layerExit = function(_base) {
|
|
467
|
-
this.tooltipExit();
|
|
468
|
-
layerExit.apply(this, arguments);
|
|
469
|
-
};
|
|
470
|
-
} else {
|
|
471
|
-
const enter = this.enter;
|
|
472
|
-
this.enter = function(_domNode, element) {
|
|
473
|
-
this.tooltipEnter(element);
|
|
474
|
-
enter.apply(this, arguments);
|
|
475
|
-
};
|
|
476
|
-
const update = this.update;
|
|
477
|
-
this.update = function(_domNode, _element) {
|
|
478
|
-
update.apply(this, arguments);
|
|
479
|
-
this.tooltipUpdate();
|
|
480
|
-
};
|
|
481
|
-
const exit = this.exit;
|
|
482
|
-
this.exit = function(_domNode, _element) {
|
|
483
|
-
this.tooltipExit();
|
|
484
|
-
exit.apply(this, arguments);
|
|
485
|
-
};
|
|
486
|
-
}
|
|
487
|
-
}
|
|
488
|
-
__name(ITooltip, "ITooltip");
|
|
489
|
-
ITooltip.prototype = Object.create(Widget.prototype);
|
|
490
|
-
ITooltip.prototype.constructor = ITooltip;
|
|
491
|
-
ITooltip.prototype.tooltipEnter = function(element) {
|
|
492
|
-
const overlayElement = this.parentOverlay();
|
|
493
|
-
if (!overlayElement.empty()) {
|
|
494
|
-
this.tooltip.rootElement(overlayElement.node().parentNode);
|
|
495
|
-
}
|
|
496
|
-
element.call(this.tooltip);
|
|
497
|
-
};
|
|
498
|
-
ITooltip.prototype.tooltipUpdate = function() {
|
|
499
|
-
this.tooltip.offset(() => {
|
|
500
|
-
if (event && this.tooltipFollowMouse()) {
|
|
501
|
-
const d3tipElement = document.querySelector(".d3-tip");
|
|
502
|
-
d3tipElement.style.display = "block";
|
|
503
|
-
d3tipElement.style.left = this.tooltipOffset() + event.clientX + "px";
|
|
504
|
-
d3tipElement.style.top = event.clientY + "px";
|
|
505
|
-
return [];
|
|
506
|
-
}
|
|
507
|
-
switch (this.tooltip.direction()()) {
|
|
508
|
-
case "e":
|
|
509
|
-
return [0, this.tooltipOffset()];
|
|
510
|
-
default:
|
|
511
|
-
return [-this.tooltipOffset(), 0];
|
|
512
|
-
}
|
|
513
|
-
});
|
|
514
|
-
let classed = this.tooltip.attr("class");
|
|
515
|
-
if (classed) {
|
|
516
|
-
classed = classed.split(" notick").join("") + (this.tooltipTick() ? "" : " notick") + (this.tooltipStyle() === "none" ? " hidden" : "");
|
|
517
|
-
classed = classed.split(" ").filter(function(_class) {
|
|
518
|
-
return _class.indexOf("ITooltip-tooltipStyle-") !== 0;
|
|
519
|
-
}).join(" ");
|
|
520
|
-
classed += " ITooltip-tooltipStyle-" + this.tooltipStyle();
|
|
521
|
-
this.tooltip.attr("class", classed);
|
|
522
|
-
}
|
|
523
|
-
};
|
|
524
|
-
ITooltip.prototype.tooltipExit = function() {
|
|
525
|
-
if (this.tooltip) {
|
|
526
|
-
this.tooltip.destroy();
|
|
527
|
-
}
|
|
528
|
-
};
|
|
529
|
-
ITooltip.prototype._tooltipHTML = function(d) {
|
|
530
|
-
return d;
|
|
531
|
-
};
|
|
532
|
-
ITooltip.prototype.tooltipHTML = function(_) {
|
|
533
|
-
return this.tooltip.html(_);
|
|
534
|
-
};
|
|
535
|
-
ITooltip.prototype.tooltipFormat = function(opts = {}) {
|
|
536
|
-
opts.label = opts.label === void 0 ? "" : opts.label;
|
|
537
|
-
if (this._labelFormatter) {
|
|
538
|
-
opts.label = this._labelFormatter(opts.label) || "";
|
|
539
|
-
} else if (this.formatData && this.parseData) {
|
|
540
|
-
opts.label = this.formatData(this.parseData(opts.label));
|
|
541
|
-
}
|
|
542
|
-
opts.series = opts.series || "";
|
|
543
|
-
if (opts.value instanceof Date) {
|
|
544
|
-
opts.value = opts.value || "";
|
|
545
|
-
} else if (this._valueFormatter) {
|
|
546
|
-
opts.value = this._valueFormatter(opts.value) || "";
|
|
547
|
-
} else if (this.formatValue && this.parseValue) {
|
|
548
|
-
opts.value = this.formatValue(this.parseValue(opts.value));
|
|
549
|
-
}
|
|
550
|
-
switch (this.tooltipStyle()) {
|
|
551
|
-
case "none":
|
|
552
|
-
break;
|
|
553
|
-
case "series-table":
|
|
554
|
-
let html = '<table class="ITooltip-series-table"><thead><tr><th colspan="2">' + opts.label + "</th></tr></thead><tbody>";
|
|
555
|
-
opts.arr.forEach(function(row) {
|
|
556
|
-
html += "<tr>";
|
|
557
|
-
html += "<td>";
|
|
558
|
-
html += '<div class="series-table-row-color" style="background-color:' + row.color + '"></div>';
|
|
559
|
-
html += '<div class="series-table-row-label">' + row.label + "</div>";
|
|
560
|
-
html += "</td>";
|
|
561
|
-
html += '<td><div class="series-table-row-value">' + row.value + "</div></td>";
|
|
562
|
-
html += "</tr>";
|
|
563
|
-
});
|
|
564
|
-
html += "</tbody>";
|
|
565
|
-
html += "</table>";
|
|
566
|
-
return html;
|
|
567
|
-
default:
|
|
568
|
-
if (opts.series) {
|
|
569
|
-
return "<span style='color:" + this.tooltipSeriesColor() + "'>" + opts.series + "</span> / <span style='color:" + this.tooltipLabelColor() + "'>" + opts.label + "</span>: <span style='color:" + this.tooltipValueColor() + "'>" + opts.value + "</span>";
|
|
570
|
-
}
|
|
571
|
-
if (opts.label !== "") {
|
|
572
|
-
return "<span style='color:" + this.tooltipLabelColor() + "'>" + opts.label + "</span>: <span style='color:" + this.tooltipValueColor() + "'>" + opts.value + "</span>";
|
|
573
|
-
}
|
|
574
|
-
return "<span style='color:" + this.tooltipValueColor() + "'>" + opts.value + "</span>";
|
|
575
|
-
}
|
|
576
|
-
};
|
|
577
|
-
ITooltip.prototype.tooltipKeyValueFormat = function(titleKey, obj) {
|
|
578
|
-
let body = "";
|
|
579
|
-
for (const key in obj) {
|
|
580
|
-
if (key !== titleKey) {
|
|
581
|
-
const value = obj && obj[key] ? obj[key] : "";
|
|
582
|
-
body += `<tr><td style="${this.tooltipLabelColor_exists() ? "color:" + this.tooltipLabelColor() : ""}">${key}</td><td style="font-weight:normal">${value}</td></tr>`;
|
|
583
|
-
}
|
|
584
|
-
}
|
|
585
|
-
return `<table>
|
|
586
|
-
<thead>
|
|
587
|
-
<tr><th colspan="2" style="font-weight:bold;font-size:16px">${obj[titleKey]}</th></tr>
|
|
588
|
-
</thead>
|
|
589
|
-
<tbody>
|
|
590
|
-
${body}
|
|
591
|
-
</tbody>
|
|
592
|
-
</table>`;
|
|
593
|
-
};
|
|
594
|
-
ITooltip.prototype.publish("tooltipStyle", "default", "set", "Style mode", ["default", "none", "series-table"], {});
|
|
595
|
-
ITooltip.prototype.publish("tooltipFollowMouse", false, "boolean", "If true, the tooltip will follow mouse movement", null, {});
|
|
596
|
-
ITooltip.prototype.publish("tooltipLabelFormat", void 0, "string", "Format of tooltip label(s) (the domain axis)", null, {});
|
|
597
|
-
ITooltip.prototype.publish("tooltipValueFormat", void 0, "string", "Number format of tooltip value(s)", null, {});
|
|
598
|
-
ITooltip.prototype.publish("tooltipSeriesColor", "#EAFFFF", "html-color", "Color of tooltip series text", null, {});
|
|
599
|
-
ITooltip.prototype.publish("tooltipLabelColor", "#CCFFFF", "html-color", "Color of tooltip label text (the domain axis)", null, {});
|
|
600
|
-
ITooltip.prototype.publish("tooltipValueColor", "white", "html-color", "Color of tooltip value(s)", null, {});
|
|
601
|
-
ITooltip.prototype.publish("tooltipTick", true, "boolean", "Show tooltip tick", null, {});
|
|
602
|
-
ITooltip.prototype.publish("tooltipOffset", 8, "number", "Offset from the cursor", null, {});
|
|
603
|
-
const tooltipLabelFormat = ITooltip.prototype.tooltipLabelFormat;
|
|
604
|
-
ITooltip.prototype.tooltipLabelFormat = function(_) {
|
|
605
|
-
const retVal = tooltipLabelFormat.apply(this, arguments);
|
|
606
|
-
if (arguments.length) {
|
|
607
|
-
this._labelFormatter = format(_);
|
|
608
|
-
}
|
|
609
|
-
return retVal;
|
|
610
|
-
};
|
|
611
|
-
const tooltipValueFormat = ITooltip.prototype.tooltipValueFormat;
|
|
612
|
-
ITooltip.prototype.tooltipValueFormat = function(_) {
|
|
613
|
-
const retVal = tooltipValueFormat.apply(this, arguments);
|
|
614
|
-
if (arguments.length) {
|
|
615
|
-
this._valueFormatter = format(_);
|
|
616
|
-
}
|
|
617
|
-
return retVal;
|
|
618
|
-
};
|
|
619
|
-
function ITree() {
|
|
620
|
-
}
|
|
621
|
-
__name(ITree, "ITree");
|
|
622
|
-
ITree.prototype.constructor = ITree;
|
|
623
|
-
ITree.prototype.click = function(row, column, selected) {
|
|
624
|
-
};
|
|
625
|
-
ITree.prototype.dblclick = function(row, column, selected) {
|
|
626
|
-
};
|
|
627
|
-
ITree.prototype._palette = Palette.ordinal("default");
|
|
628
|
-
export {
|
|
629
|
-
BUILD_VERSION,
|
|
630
|
-
I1DChart,
|
|
631
|
-
I2DAggrChart,
|
|
632
|
-
I2DChart,
|
|
633
|
-
IGraph,
|
|
634
|
-
IInput,
|
|
635
|
-
INDChart,
|
|
636
|
-
ITooltip,
|
|
637
|
-
ITree,
|
|
638
|
-
PKG_NAME,
|
|
639
|
-
PKG_VERSION,
|
|
640
|
-
instanceOfIHighlight
|
|
641
|
-
};
|
|
1
|
+
var t=Object.defineProperty,o=(o,e)=>t(o,"name",{value:e,configurable:!0});import{Palette as e,hsl as l,Widget as i,map as n,selection as r,select as p,format as s}from"@hpcc-js/common";const a="@hpcc-js/api",u="3.4.3",c="3.16.1";function f(){}function h(){}function y(){}function d(){}function b(t){return"function"==typeof t.highlightColumn}function m(){}function g(){}function v(){let t=h,e=y,l=d,i=I(document.body),s=E(),a=null,u=null,c=null;const f=/* @__PURE__ */o(function(t){if(a=T(t),!a)return;u=a.createSVGPoint();const o=i();o&&s&&o.appendChild(s)},"tip2");function h(){return"n"}function y(){return[0,0]}function d(){return" "}f.show=function(t,o,n){c=n[o];const r=Array.prototype.slice.call(arguments),p=l.apply(this,r);if(null===p)return f;const s=e.apply(this,r),a=V();let u,h=m.length;const y=i().getBoundingClientRect();for(a.html(p).style("opacity",1).style("pointer-events","all");h--;)a.classed(m[h],!1);let d=!1;const g={};let v=m[0];for(let e=0;e<m.length&&(d=C(m[e]),!d);e++);if(d)a.classed("notick",!1);else{a.classed("notick",!0);const t=w(g[v]),o=x(g[v]);C(v,t,o)}return f;function x(t){return t.left>t.right?t.left>0?-t.left:0:t.right>0?t.right:0}function w(t){return t.top>t.bottom?t.top>0?-t.top:0:t.bottom}function C(t,o,e){o=o||0,e=e||0,a.style("white-space","nowrap"),u=b.get(t).apply(this),a.classed(t,!0).style("top",u.top+s[0]-o+"px").style("left",u.left+s[1]-e+"px");const l=a.node().getBoundingClientRect(),i=l.top>y.top&&l.left>y.left&&l.bottom<y.bottom&&l.right<y.right;return g[t]={top:y.top-l.top,right:l.right-y.right,bottom:l.bottom-y.bottom,left:y.left-l.left},a.style("white-space","normal"),g[t].total_overflow=Object.keys(g[t]).filter(o=>g[t][o]>0).reduce((o,e)=>o+g[t][e],0),g[v].total_overflow>g[t].total_overflow&&(v=t),i||a.classed(t,!1),i}},f.hide=function(){return V().style("opacity",0).style("pointer-events","none"),f},f.attr=function(t,o){if(arguments.length<2&&"string"==typeof t)return V().attr(t);const e=Array.prototype.slice.call(arguments);return r.prototype.attr.apply(V(),e),f},f.style=function(t,o){if(arguments.length<2&&"string"==typeof t)return V().style(t);const e=Array.prototype.slice.call(arguments);return r.prototype.style.apply(V(),e),f},f.direction=function(o){return arguments.length?(t=null==o?o:I(o),f):t},f.offset=function(t){return arguments.length?(e=null==t?t:I(t),f):e},f.html=function(t){return arguments.length?(l=null==t?t:I(t),f):l},f.rootElement=function(t){return arguments.length?(i=I(t),f):i},f.destroy=function(){return s&&(V().remove(),s=null),f},o(h,"d3TipDirection"),o(y,"d3TipOffset"),o(d,"d3TipHTML");const b=n({n:g,s:v,e:x,w:w,nw:C,ne:_,sw:k,se:F}),m=b.keys();function g(){const t=S(window);return{top:t.n.y-s.offsetHeight,left:t.n.x-s.offsetWidth/2}}function v(){const t=S(window);return{top:t.s.y+8,left:t.s.x-s.offsetWidth/2}}function x(){const t=S(window);return{top:t.e.y-s.offsetHeight/2,left:t.e.x+8}}function w(){const t=S(window);return{top:t.w.y-s.offsetHeight/2,left:t.w.x-s.offsetWidth-8}}function C(){const t=S(window);return{top:t.nw.y-s.offsetHeight,left:t.nw.x-s.offsetWidth}}function _(){const t=S(window);return{top:t.ne.y-s.offsetHeight,left:t.ne.x}}function k(){const t=S(window);return{top:t.sw.y,left:t.sw.x-s.offsetWidth}}function F(){const t=S(window);return{top:t.se.y,left:t.se.x}}function E(){const t=p(document.createElement("div"));return t.attr("class","d3-tip").style("position","absolute").style("top","0px").style("opacity",0).style("pointer-events","none").style("box-sizing","border-box"),t.node()}function T(t){const o=t.node();return o?"svg"===o.tagName.toLowerCase()?o:o.ownerSVGElement:null}function V(){return null==s&&(s=E(),i().appendChild(s)),p(s)}function S(t){let o=c||t;for(;null==o.getCTM&&null!=o.parentNode;)o=o.parentNode;const e={},l=o.getCTM(),i=o.getBBox(),n=i.width,r=i.height,p=i.x,s=i.y;return u.x=p,u.y=s,e.nw=u.matrixTransform(l),u.x+=n,e.ne=u.matrixTransform(l),u.y+=r,e.se=u.matrixTransform(l),u.x-=n,e.sw=u.matrixTransform(l),u.y-=r/2,e.w=u.matrixTransform(l),u.x+=n,e.e=u.matrixTransform(l),u.x-=n/2,u.y-=r/2,e.n=u.matrixTransform(l),u.y+=r,e.s=u.matrixTransform(l),e}function I(t){return"function"==typeof t?t:function(){return t}}return o(g,"directionNorth"),o(v,"directionSouth"),o(x,"directionEast"),o(w,"directionWest"),o(C,"directionNorthWest"),o(_,"directionNorthEast"),o(k,"directionSouthWest"),o(F,"directionSouthEast"),o(E,"initNode"),o(T,"getSVGNode"),o(V,"getNodeEl"),o(S,"getScreenBBox"),o(I,"functor"),f}function x(){if(this.tooltip=v(),this.tooltipLabelFormat_exists()&&(this._labelFormatter=s(this.tooltipLabelFormat())),this.tooltipValueFormat_exists()&&(this._valueFormatter=s(this.tooltipValueFormat())),this.layerEnter){const t=this.layerEnter;this.layerEnter=function(o,e,l){this._parentOverlay||(this._parentOverlay=o._parentOverlay),this.tooltipEnter(e),t.apply(this,arguments)};const o=this.layerUpdate;this.layerUpdate=function(t){o.apply(this,arguments),this.tooltipUpdate()};const e=this.layerExit;this.layerExit=function(t){this.tooltipExit(),e.apply(this,arguments)}}else{const t=this.enter;this.enter=function(o,e){this.tooltipEnter(e),t.apply(this,arguments)};const o=this.update;this.update=function(t,e){o.apply(this,arguments),this.tooltipUpdate()};const e=this.exit;this.exit=function(t,o){this.tooltipExit(),e.apply(this,arguments)}}}o(f,"I1DChart"),f.prototype._dataFamily="1D",f.prototype._palette=e.rainbow("default"),f.prototype.click=function(t,o,e){},f.prototype.dblclick=function(t,o,e){},o(h,"I2DChart"),h.prototype._dataFamily="2D",h.prototype._palette=e.ordinal("default"),h.prototype.fillColor=function(t,o,e,l){return this._palette(t[0])},h.prototype.strokeColor=function(t,o,e,i){return l(this.fillColor(t,o,e,i)).darker().toString()},h.prototype.textColor=function(t,o,l,i){return e.textColor(this.fillColor(t,o,l,i))},h.prototype.click=function(t,o,e){},h.prototype.dblclick=function(t,o,e){},o(y,"I2DAggrChart"),y.prototype._palette=e.rainbow("default"),y.prototype.fillColor=function(t,o,e){return this._palette(t.length)},y.prototype.strokeColor=function(t,o,e){return l(this.fillColor(t,o,e)).darker().toString()},y.prototype.textColor=function(t,o,l){return e.textColor(this.fillColor(t,o,l))},y.prototype.click=function(t,o,e){},y.prototype.dblclick=function(t,o,e){},o(d,"IGraph"),d.prototype._dataFamily="graph",d.prototype.vertex_click=function(t,o,e,l){l&&l.vertex},d.prototype.vertex_dblclick=function(t,o,e,l){l&&l.vertex},d.prototype.edge_click=function(t,o,e,l){l&&l.edge},d.prototype.edge_dblclick=function(t,o,e,l){l&&l.edge},o(b,"instanceOfIHighlight"),o(m,"IInput"),m.prototype=Object.create(i.prototype),m.prototype.constructor=m,m.prototype.isValid=function(){if(this.validate()){if(!new RegExp(this.validate()).test(this.value()))return!1}return!0},m.prototype.hasValue=function(){if("function"==typeof this.type){switch(this.type()){case"radio":case"checkbox":if(this.value()&&"false"!==this.value())return!0;break;default:if(this.value())return!0}return!1}return""!==this.value()},m.prototype.blur=function(t){},m.prototype.keyup=function(t){},m.prototype.focus=function(t){},m.prototype.click=function(t){},m.prototype.dblclick=function(t){},m.prototype.change=function(t,o){},m.prototype.resetValue=function(t){t.value(t._inputElement[0].node().value)},m.prototype.disable=function(t){this._inputElement.forEach(function(o,e){o.attr("disabled",t?"disabled":null)})},m.prototype.setFocus=function(){this._inputElement.length&&this._inputElement[0].node().focus()},m.prototype.publish("name","","string","HTML name for the input"),m.prototype.publish("label","","string","Descriptive label"),m.prototype.publish("value","","string","Input Current Value"),m.prototype.publish("validate",null,"string","Input Validation"),o(g,"INDChart"),g.prototype._dataFamily="ND",g.prototype._palette=e.ordinal("default"),g.prototype.fillColor=function(t,o,e,l){return this._palette(o)},g.prototype.strokeColor=function(t,o,e,i){return l(this.fillColor(t,o,e,i)).darker().toString()},g.prototype.textColor=function(t,o,l,i){return e.textColor(this.fillColor(t,o,l,i))},g.prototype.click=function(t,o,e){},g.prototype.dblclick=function(t,o,e){},o(v,"tip"),o(x,"ITooltip"),x.prototype=Object.create(i.prototype),x.prototype.constructor=x,x.prototype.tooltipEnter=function(t){const o=this.parentOverlay();o.empty()||this.tooltip.rootElement(o.node().parentNode),t.call(this.tooltip)},x.prototype.tooltipUpdate=function(){this.tooltip.offset(()=>{if(event&&this.tooltipFollowMouse()){const t=document.querySelector(".d3-tip");return t.style.display="block",t.style.left=this.tooltipOffset()+event.clientX+"px",t.style.top=event.clientY+"px",[]}return"e"===this.tooltip.direction()()?[0,this.tooltipOffset()]:[-this.tooltipOffset(),0]});let t=this.tooltip.attr("class");t&&(t=t.split(" notick").join("")+(this.tooltipTick()?"":" notick")+("none"===this.tooltipStyle()?" hidden":""),t=t.split(" ").filter(function(t){return 0!==t.indexOf("ITooltip-tooltipStyle-")}).join(" "),t+=" ITooltip-tooltipStyle-"+this.tooltipStyle(),this.tooltip.attr("class",t))},x.prototype.tooltipExit=function(){this.tooltip&&this.tooltip.destroy()},x.prototype._tooltipHTML=function(t){return t},x.prototype.tooltipHTML=function(t){return this.tooltip.html(t)},x.prototype.tooltipFormat=function(t={}){switch(t.label=void 0===t.label?"":t.label,this._labelFormatter?t.label=this._labelFormatter(t.label)||"":this.formatData&&this.parseData&&(t.label=this.formatData(this.parseData(t.label))),t.series=t.series||"",t.value instanceof Date?t.value=t.value||"":this._valueFormatter?t.value=this._valueFormatter(t.value)||"":this.formatValue&&this.parseValue&&(t.value=this.formatValue(this.parseValue(t.value))),this.tooltipStyle()){case"none":break;case"series-table":let o='<table class="ITooltip-series-table"><thead><tr><th colspan="2">'+t.label+"</th></tr></thead><tbody>";return t.arr.forEach(function(t){o+="<tr>",o+="<td>",o+='<div class="series-table-row-color" style="background-color:'+t.color+'"></div>',o+='<div class="series-table-row-label">'+t.label+"</div>",o+="</td>",o+='<td><div class="series-table-row-value">'+t.value+"</div></td>",o+="</tr>"}),o+="</tbody>",o+="</table>",o;default:return t.series?"<span style='color:"+this.tooltipSeriesColor()+"'>"+t.series+"</span> / <span style='color:"+this.tooltipLabelColor()+"'>"+t.label+"</span>: <span style='color:"+this.tooltipValueColor()+"'>"+t.value+"</span>":""!==t.label?"<span style='color:"+this.tooltipLabelColor()+"'>"+t.label+"</span>: <span style='color:"+this.tooltipValueColor()+"'>"+t.value+"</span>":"<span style='color:"+this.tooltipValueColor()+"'>"+t.value+"</span>"}},x.prototype.tooltipKeyValueFormat=function(t,o){let e="";for(const l in o)if(l!==t){const t=o&&o[l]?o[l]:"";e+=`<tr><td style="${this.tooltipLabelColor_exists()?"color:"+this.tooltipLabelColor():""}">${l}</td><td style="font-weight:normal">${t}</td></tr>`}return`<table>\n <thead>\n <tr><th colspan="2" style="font-weight:bold;font-size:16px">${o[t]}</th></tr>\n </thead>\n <tbody>\n ${e}\n </tbody>\n </table>`},x.prototype.publish("tooltipStyle","default","set","Style mode",["default","none","series-table"],{}),x.prototype.publish("tooltipFollowMouse",!1,"boolean","If true, the tooltip will follow mouse movement",null,{}),x.prototype.publish("tooltipLabelFormat",void 0,"string","Format of tooltip label(s) (the domain axis)",null,{}),x.prototype.publish("tooltipValueFormat",void 0,"string","Number format of tooltip value(s)",null,{}),x.prototype.publish("tooltipSeriesColor","#EAFFFF","html-color","Color of tooltip series text",null,{}),x.prototype.publish("tooltipLabelColor","#CCFFFF","html-color","Color of tooltip label text (the domain axis)",null,{}),x.prototype.publish("tooltipValueColor","white","html-color","Color of tooltip value(s)",null,{}),x.prototype.publish("tooltipTick",!0,"boolean","Show tooltip tick",null,{}),x.prototype.publish("tooltipOffset",8,"number","Offset from the cursor",null,{});const w=x.prototype.tooltipLabelFormat;x.prototype.tooltipLabelFormat=function(t){const o=w.apply(this,arguments);return arguments.length&&(this._labelFormatter=s(t)),o};const C=x.prototype.tooltipValueFormat;function _(){}x.prototype.tooltipValueFormat=function(t){const o=C.apply(this,arguments);return arguments.length&&(this._valueFormatter=s(t)),o},o(_,"ITree"),_.prototype.constructor=_,_.prototype.click=function(t,o,e){},_.prototype.dblclick=function(t,o,e){},_.prototype._palette=e.ordinal("default");export{c as BUILD_VERSION,f as I1DChart,y as I2DAggrChart,h as I2DChart,d as IGraph,m as IInput,g as INDChart,x as ITooltip,_ as ITree,a as PKG_NAME,u as PKG_VERSION,b as instanceOfIHighlight};
|
|
642
2
|
//# sourceMappingURL=index.js.map
|
|
643
3
|
!function(){"use strict";try{if("undefined"!=typeof document){var t=document.createElement("style");t.appendChild(document.createTextNode('.d3-tip{line-height:1;font-weight:700;padding:12px;background:#000000a8;color:#fff;border-radius:2px;pointer-events:none!important;z-index:10}.d3-tip.hidden{visibility:hidden}.d3-tip:after{content:" ";box-sizing:border-box;display:inline-block;border:4px solid rgba(0,0,0,.66);position:absolute;pointer-events:none!important;width:8px;height:8px;margin:0}.d3-tip.n:after{top:100%;left:calc(50% - 4px);border-top-width:8px;border-right-color:transparent;border-bottom-color:transparent;border-left-color:transparent}.d3-tip.e:after{top:calc(50% - 4px);left:-12px;border-top-color:transparent;border-right-width:8px;border-bottom-color:transparent;border-left-color:transparent}.d3-tip.s{margin-top:8px}.d3-tip.s:after{top:-12px;left:calc(50% - 4px);border-top-color:transparent;border-right-color:transparent;border-bottom-width:8px;border-left-color:transparent}.d3-tip.w:after{top:calc(50% - 4px);left:100%;border-top-color:transparent;border-right-color:transparent;border-bottom-color:transparent;border-left-width:8px}.d3-tip.notick:after{border-color:transparent!important}.common_Widget .over{stroke:#000000a8;opacity:.66}.d3-tip.ITooltip-tooltipStyle-series-table{padding:0}.d3-tip .ITooltip-series-table th,.d3-tip .ITooltip-series-table td{padding:6px;text-align:left;border:1px solid #D1D1D1}.d3-tip .ITooltip-series-table .series-table-row-color{display:inline-block;height:10px;width:10px;margin-right:10px}.d3-tip .ITooltip-series-table .series-table-row-label{display:inline-block}.d3-tip .ITooltip-series-table th{background-color:#b3b3b3}.d3-tip .ITooltip-series-table td{background-color:#fff;color:#555;font-weight:400}.d3-tip .ITooltip-series-table td:first-child{border-right:0}table.ITooltip-series-table td:last-child{border-left:1px dotted #A3A3A3}')),document.head.appendChild(t)}}catch(e){console.error("vite-plugin-css-injected-by-js",e)}}();
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../src/__package__.ts","../src/I1DChart.ts","../src/I2DChart.ts","../src/I2DAggrChart.ts","../src/IGraph.ts","../src/IHighlight.ts","../src/IInput.ts","../src/INDChart.ts","../src/Tooltip.ts","../src/ITooltip.ts","../src/ITree.ts"],"sourcesContent":["export const PKG_NAME = \"__PACKAGE_NAME__\";\nexport const PKG_VERSION = \"__PACKAGE_VERSION__\";\nexport const BUILD_VERSION = \"__BUILD_VERSION__\";\n","import { Palette } from \"@hpcc-js/common\";\n\nexport function I1DChart() {\n}\nI1DChart.prototype._dataFamily = \"1D\";\nI1DChart.prototype._palette = Palette.rainbow(\"default\");\n\n// Events ---\nI1DChart.prototype.click = function (row, column, selected) {\n};\n\nI1DChart.prototype.dblclick = function (row, column, selected) {\n};\n","import { Palette } from \"@hpcc-js/common\";\nimport { hsl as d3Hsl } from \"d3-color\";\n\nexport function I2DChart() {\n}\nI2DChart.prototype._dataFamily = \"2D\";\nI2DChart.prototype._palette = Palette.ordinal(\"default\");\n\nI2DChart.prototype.fillColor = function (row: any[], column, value, origRow): string {\n return this._palette(row[0]);\n};\n\nI2DChart.prototype.strokeColor = function (row: any[], column, value, origRow): string {\n return d3Hsl(this.fillColor(row, column, value, origRow)).darker().toString();\n};\n\nI2DChart.prototype.textColor = function (row: any[], column, value, origRow): string {\n return Palette.textColor(this.fillColor(row, column, value, origRow));\n};\n\n// Events ---\nI2DChart.prototype.click = function (row: object, column, selected) {\n};\n\nI2DChart.prototype.dblclick = function (row: object, column, selected) {\n};\n","import { Palette } from \"@hpcc-js/common\";\nimport { hsl as d3Hsl } from \"d3-color\";\n\nexport function I2DAggrChart() {\n}\nI2DAggrChart.prototype._palette = Palette.rainbow(\"default\");\n\nI2DAggrChart.prototype.fillColor = function (row: any[][], column, value): string {\n return this._palette(row.length);\n};\n\nI2DAggrChart.prototype.strokeColor = function (row: any[][], column, value): string {\n return d3Hsl(this.fillColor(row, column, value)).darker().toString();\n};\n\nI2DAggrChart.prototype.textColor = function (row: any[][], column, value): string {\n return Palette.textColor(this.fillColor(row, column, value));\n};\n\n// Events ---\nI2DAggrChart.prototype.click = function (row: object[], column, selected) {\n};\n\nI2DAggrChart.prototype.dblclick = function (row: object[], column, selected) {\n};\n","export function IGraph() {\n}\nIGraph.prototype._dataFamily = \"graph\";\n\n// Events ---\nIGraph.prototype.vertex_click = function (_row, _col, _sel, more) {\n if (more && more.vertex) {\n }\n};\n\nIGraph.prototype.vertex_dblclick = function (_row, _col, _sel, more) {\n if (more && more.vertex) {\n }\n};\n\nIGraph.prototype.edge_click = function (_row, _col, _sel, more) {\n if (more && more.edge) {\n }\n};\n\nIGraph.prototype.edge_dblclick = function (_row, _col, _sel, more) {\n if (more && more.edge) {\n }\n};\n","export interface IHighlight {\n highlightColumn(column: string): this;\n}\n\nexport function instanceOfIHighlight(w: any): w is IHighlight {\n return typeof (w as any).highlightColumn === \"function\";\n}\n","import { Widget } from \"@hpcc-js/common\";\n\n// Use old school class declaration as this is a mixin ---\nexport function IInput() {\n}\nIInput.prototype = Object.create(Widget.prototype);\nIInput.prototype.constructor = IInput;\n\n// abstract target(): any;\n// abstract target(_: any): this;\n\n// Implementation ---\nIInput.prototype.isValid = function () {\n if (this.validate()) {\n const re = new RegExp(this.validate());\n if (!re.test(this.value())) {\n return false;\n }\n }\n return true;\n};\n\nIInput.prototype.hasValue = function () {\n if (typeof (this as any).type === \"function\") {\n switch ((this as any).type()) {\n case \"radio\":\n /* falls through */\n case \"checkbox\":\n if (this.value() && this.value() !== \"false\") {\n return true;\n }\n break;\n default:\n if (this.value()) {\n return true;\n }\n break;\n }\n return false;\n }\n return this.value() !== \"\";\n};\n\n// Events ---\nIInput.prototype.blur = function (_w) {\n};\nIInput.prototype.keyup = function (_w) {\n};\nIInput.prototype.focus = function (_w) {\n};\nIInput.prototype.click = function (_w) {\n};\nIInput.prototype.dblclick = function (_w) {\n};\nIInput.prototype.change = function (_w, complete: boolean) {\n};\n\nIInput.prototype.resetValue = function (w) {\n w.value(w._inputElement[0].node().value);\n};\n\nIInput.prototype.disable = function (disable) {\n this._inputElement.forEach(function (e, idx) {\n e.attr(\"disabled\", disable ? \"disabled\" : null);\n });\n};\n\nIInput.prototype.setFocus = function () {\n if (this._inputElement.length) {\n this._inputElement[0].node().focus();\n }\n};\n\nexport interface IInput {\n name: { (): string; (_: string): IInput };\n name_exists: () => boolean;\n label: { (): string; (_: string): IInput };\n label_exists: () => boolean;\n value: { (): any; (_: any): IInput };\n value_exists: () => boolean;\n validate: { (): string; (_: string): IInput };\n validate_exists: () => boolean;\n}\nIInput.prototype.publish(\"name\", \"\", \"string\", \"HTML name for the input\");\nIInput.prototype.publish(\"label\", \"\", \"string\", \"Descriptive label\");\nIInput.prototype.publish(\"value\", \"\", \"string\", \"Input Current Value\");\nIInput.prototype.publish(\"validate\", null, \"string\", \"Input Validation\");\n","import { Palette } from \"@hpcc-js/common\";\nimport { hsl as d3Hsl } from \"d3-color\";\n\nexport function INDChart() {\n}\nINDChart.prototype._dataFamily = \"ND\";\nINDChart.prototype._palette = Palette.ordinal(\"default\");\n\nINDChart.prototype.fillColor = function (row: any[], column: string, value: number, origRow: any): string {\n return this._palette(column);\n};\n\nINDChart.prototype.strokeColor = function (row: any[], column: string, value: number, origRow: any): string {\n return d3Hsl(this.fillColor(row, column, value, origRow)).darker().toString();\n};\n\nINDChart.prototype.textColor = function (row: any[], column: string, value: number, origRow: any): string {\n return Palette.textColor(this.fillColor(row, column, value, origRow));\n};\n\n// Events ---\nINDChart.prototype.click = function (row, column, selected) {\n};\n\nINDChart.prototype.dblclick = function (row, column, selected) {\n};\n","// Based on https://github.com/GordonSmith/d3-tip forked from https://github.com/Caged/d3-tip\n\nimport { map } from \"d3-collection\";\nimport { select, selection } from \"d3-selection\";\n\nexport function tip() {\n let direction = d3TipDirection;\n let offset = d3TipOffset;\n let html = d3TipHTML;\n let rootElement = functor(document.body);\n let node = initNode();\n let svg = null;\n let point = null;\n let target = null;\n\n const tip: any = function (vis) {\n svg = getSVGNode(vis);\n if (!svg) return;\n point = svg.createSVGPoint();\n const re = rootElement();\n if (!re) return;\n if (!node) return;\n re.appendChild(node);\n };\n\n // Public - show the tooltip on the screen\n //\n // Returns a tip\n tip.show = function (d, idx, arr) {\n target = arr[idx];\n const args = Array.prototype.slice.call(arguments) as [];\n const content = html.apply(this, args);\n if (content === null) {\n return tip;\n }\n const poffset = offset.apply(this, args);\n const nodel = getNodeEl();\n let i = directions.length;\n let coords;\n const root_bbox = rootElement().getBoundingClientRect();\n nodel.html(content)\n .style(\"opacity\", 1).style(\"pointer-events\", \"all\");\n\n while (i--) nodel.classed(directions[i], false);\n let placement_success = false;\n const placement_overflow = {};\n let least_overflow_direction = directions[0];\n for (let i = 0; i < directions.length; i++) {\n placement_success = _placement_attempt(directions[i]);\n if (placement_success) break;\n }\n if (!placement_success) {\n nodel.classed(\"notick\", true);\n const top_offset = _vertical_adjustment(placement_overflow[least_overflow_direction]);\n const left_offset = _horizontal_adjustment(placement_overflow[least_overflow_direction]);\n _placement_attempt(least_overflow_direction, top_offset, left_offset);\n } else {\n nodel.classed(\"notick\", false);\n }\n return tip;\n\n function _horizontal_adjustment(overflow_obj) {\n if (overflow_obj.left > overflow_obj.right) {\n return overflow_obj.left > 0 ? -overflow_obj.left : 0;\n } else {\n return overflow_obj.right > 0 ? overflow_obj.right : 0;\n }\n }\n function _vertical_adjustment(overflow_obj) {\n if (overflow_obj.top > overflow_obj.bottom) {\n return overflow_obj.top > 0 ? -overflow_obj.top : 0;\n } else {\n return overflow_obj.bottom;\n }\n }\n\n function _placement_attempt(this: any, _dir, _top_offset?, _left_offset?) {\n _top_offset = _top_offset ? _top_offset : 0;\n _left_offset = _left_offset ? _left_offset : 0;\n nodel.style(\"white-space\", \"nowrap\");\n coords = directionCallbacks.get(_dir).apply(this);\n nodel.classed(_dir, true)\n .style(\"top\", (coords.top + poffset[0] - _top_offset) + \"px\")\n .style(\"left\", (coords.left + poffset[1] - _left_offset) + \"px\");\n const nodel_bbox = nodel.node().getBoundingClientRect();\n const ret = nodel_bbox.top > root_bbox.top\n && nodel_bbox.left > root_bbox.left\n && nodel_bbox.bottom < root_bbox.bottom\n && nodel_bbox.right < root_bbox.right\n ;\n placement_overflow[_dir] = {\n top: root_bbox.top - nodel_bbox.top,\n right: nodel_bbox.right - root_bbox.right,\n bottom: nodel_bbox.bottom - root_bbox.bottom,\n left: root_bbox.left - nodel_bbox.left\n };\n nodel.style(\"white-space\", \"normal\");\n placement_overflow[_dir].total_overflow = Object.keys(placement_overflow[_dir])\n .filter(side => placement_overflow[_dir][side] > 0)\n .reduce((sum, side) => {\n const side_overflow = placement_overflow[_dir][side];\n return sum + side_overflow;\n }, 0);\n if (placement_overflow[least_overflow_direction].total_overflow > placement_overflow[_dir].total_overflow) {\n least_overflow_direction = _dir;\n }\n if (!ret) {\n nodel.classed(_dir, false);\n }\n return ret;\n }\n };\n\n // Public - hide the tooltip\n //\n // Returns a tip\n tip.hide = function () {\n const nodel = getNodeEl();\n nodel.style(\"opacity\", 0).style(\"pointer-events\", \"none\");\n return tip;\n };\n\n // Public: Proxy attr calls to the d3 tip container.\n // Sets or gets attribute value.\n //\n // n - name of the attribute\n // v - value of the attribute\n //\n // Returns tip or attribute value\n tip.attr = function (n, v) {\n if (arguments.length < 2 && typeof n === \"string\") {\n return getNodeEl().attr(n);\n }\n\n const args = Array.prototype.slice.call(arguments);\n selection.prototype.attr.apply(getNodeEl(), args);\n return tip;\n };\n\n // Public: Proxy style calls to the d3 tip container.\n // Sets or gets a style value.\n //\n // n - name of the property\n // v - value of the property\n //\n // Returns tip or style property value \n tip.style = function (n, v) {\n if (arguments.length < 2 && typeof n === \"string\") {\n return getNodeEl().style(n);\n }\n\n const args = Array.prototype.slice.call(arguments);\n selection.prototype.style.apply(getNodeEl(), args);\n return tip;\n };\n\n // Public: Set or get the direction of the tooltip\n //\n // v - One of n(north), s(south), e(east), or w(west), nw(northwest),\n // sw(southwest), ne(northeast) or se(southeast)\n //\n // Returns tip or direction\n tip.direction = function (v) {\n if (!arguments.length) return direction;\n direction = v == null ? v : functor(v);\n\n return tip;\n };\n\n // Public: Sets or gets the offset of the tip\n //\n // v - Array of [x, y] offset\n //\n // Returns offset or\n tip.offset = function (v) {\n if (!arguments.length) return offset;\n offset = v == null ? v : functor(v);\n\n return tip;\n };\n\n // Public: sets or gets the html value of the tooltip\n //\n // v - String value of the tip\n //\n // Returns html value or tip\n tip.html = function (v) {\n if (!arguments.length) return html;\n html = v == null ? v : functor(v);\n\n return tip;\n };\n\n // Public: sets or gets the root element anchor of the tooltip\n //\n // v - root element of the tooltip\n //\n // Returns root node of tip\n tip.rootElement = function (v) {\n if (!arguments.length) return rootElement;\n rootElement = functor(v);\n\n return tip;\n };\n\n // Public: destroys the tooltip and removes it from the DOM\n //\n // Returns a tip\n tip.destroy = function () {\n if (node) {\n getNodeEl().remove();\n node = null;\n }\n return tip;\n };\n\n function d3TipDirection() { return \"n\"; }\n function d3TipOffset() { return [0, 0]; }\n function d3TipHTML() { return \" \"; }\n\n const directionCallbacks = map({\n n: directionNorth,\n s: directionSouth,\n e: directionEast,\n w: directionWest,\n nw: directionNorthWest,\n ne: directionNorthEast,\n sw: directionSouthWest,\n se: directionSouthEast\n });\n const directions = directionCallbacks.keys();\n\n function directionNorth() {\n const bbox = getScreenBBox(window);\n return {\n top: bbox.n.y - node.offsetHeight,\n left: bbox.n.x - node.offsetWidth / 2\n };\n }\n\n function directionSouth() {\n const bbox = getScreenBBox(window);\n return {\n top: bbox.s.y + 8,\n left: bbox.s.x - node.offsetWidth / 2\n };\n }\n\n function directionEast() {\n const bbox = getScreenBBox(window);\n return {\n top: bbox.e.y - node.offsetHeight / 2,\n left: bbox.e.x + 8\n };\n }\n\n function directionWest() {\n const bbox = getScreenBBox(window);\n return {\n top: bbox.w.y - node.offsetHeight / 2,\n left: bbox.w.x - node.offsetWidth - 8\n };\n }\n\n function directionNorthWest() {\n const bbox = getScreenBBox(window);\n return {\n top: bbox.nw.y - node.offsetHeight,\n left: bbox.nw.x - node.offsetWidth\n };\n }\n\n function directionNorthEast() {\n const bbox = getScreenBBox(window);\n return {\n top: bbox.ne.y - node.offsetHeight,\n left: bbox.ne.x\n };\n }\n\n function directionSouthWest() {\n const bbox = getScreenBBox(window);\n return {\n top: bbox.sw.y,\n left: bbox.sw.x - node.offsetWidth\n };\n }\n\n function directionSouthEast() {\n const bbox = getScreenBBox(window);\n return {\n top: bbox.se.y,\n left: bbox.se.x\n };\n }\n\n function initNode() {\n const div = select(document.createElement(\"div\"));\n div\n .attr(\"class\", \"d3-tip\")\n .style(\"position\", \"absolute\")\n .style(\"top\", \"0px\")\n .style(\"opacity\", 0)\n .style(\"pointer-events\", \"none\")\n .style(\"box-sizing\", \"border-box\");\n\n return div.node();\n }\n\n function getSVGNode(element) {\n const svgNode = element.node();\n if (!svgNode) return null;\n if (svgNode.tagName.toLowerCase() === \"svg\") return svgNode;\n return svgNode.ownerSVGElement;\n }\n\n function getNodeEl() {\n if (node == null) {\n node = initNode();\n // re-add node to DOM\n rootElement().appendChild(node);\n }\n return select(node);\n }\n\n // Private - gets the screen coordinates of a shape\n //\n // Given a shape on the screen, will return an SVGPoint for the directions\n // n(north), s(south), e(east), w(west), ne(northeast), se(southeast),\n // nw(northwest), sw(southwest).\n //\n // +-+-+\n // | |\n // + +\n // | |\n // +-+-+\n //\n // Returns an Object {n, s, e, w, nw, sw, ne, se}\n function getScreenBBox(targetShape) {\n let targetel = target || targetShape;\n\n while (targetel.getCTM == null && targetel.parentNode != null) {\n targetel = targetel.parentNode;\n }\n\n const bbox: any = {};\n const matrix = targetel.getCTM();\n const tbbox = targetel.getBBox();\n const width = tbbox.width;\n const height = tbbox.height;\n const x = tbbox.x;\n const y = tbbox.y;\n\n point.x = x;\n point.y = y;\n bbox.nw = point.matrixTransform(matrix);\n point.x += width;\n bbox.ne = point.matrixTransform(matrix);\n point.y += height;\n bbox.se = point.matrixTransform(matrix);\n point.x -= width;\n bbox.sw = point.matrixTransform(matrix);\n point.y -= height / 2;\n bbox.w = point.matrixTransform(matrix);\n point.x += width;\n bbox.e = point.matrixTransform(matrix);\n point.x -= width / 2;\n point.y -= height / 2;\n bbox.n = point.matrixTransform(matrix);\n point.y += height;\n bbox.s = point.matrixTransform(matrix);\n\n return bbox;\n }\n\n // Private - replace D3JS 3.X d3.functor() function\n function functor(v) {\n return typeof v === \"function\" ? v : function () {\n return v;\n };\n }\n\n return tip;\n}\n","import { Widget } from \"@hpcc-js/common\";\nimport { format as d3Format } from \"d3-format\";\nimport { tip } from \"./Tooltip.ts\";\n\nimport \"../src/ITooltip.css\";\n\ndeclare const event: object;\n\n// Use old school class declaration as this is a mixin ---\nexport function ITooltip(this: any) {\n this.tooltip = tip();\n\n if (this.tooltipLabelFormat_exists()) {\n this._labelFormatter = d3Format(this.tooltipLabelFormat() as string);\n }\n\n if (this.tooltipValueFormat_exists()) {\n this._valueFormatter = d3Format(this.tooltipValueFormat() as string);\n }\n\n if (this.layerEnter) {\n const layerEnter = this.layerEnter;\n this.layerEnter = function (_base, svgElement, _domElement) {\n if (!this._parentOverlay) {\n this._parentOverlay = _base._parentOverlay;\n }\n this.tooltipEnter(svgElement);\n layerEnter.apply(this, arguments);\n };\n const layerUpdate = this.layerUpdate;\n this.layerUpdate = function (_base) {\n layerUpdate.apply(this, arguments);\n this.tooltipUpdate();\n };\n const layerExit = this.layerExit;\n this.layerExit = function (_base) {\n this.tooltipExit();\n layerExit.apply(this, arguments);\n };\n } else {\n const enter = this.enter;\n this.enter = function (_domNode, element) {\n this.tooltipEnter(element);\n enter.apply(this, arguments);\n };\n const update = this.update;\n this.update = function (_domNode, _element) {\n update.apply(this, arguments);\n this.tooltipUpdate();\n };\n const exit = this.exit;\n this.exit = function (_domNode, _element) {\n this.tooltipExit();\n exit.apply(this, arguments);\n };\n }\n}\nITooltip.prototype = Object.create(Widget.prototype);\nITooltip.prototype.constructor = ITooltip;\n\n// abstract target(): any;\n// abstract target(_: any): this;\n\nITooltip.prototype.tooltipEnter = function (element) {\n const overlayElement = this.parentOverlay();\n if (!overlayElement.empty()) {\n this.tooltip.rootElement(overlayElement.node().parentNode);\n }\n element.call(this.tooltip);\n};\n\nITooltip.prototype.tooltipUpdate = function () {\n this.tooltip.offset(() => {\n if (event && this.tooltipFollowMouse()) {\n const d3tipElement: HTMLDivElement = document.querySelector(\".d3-tip\"); // d3Tip offers no reference to the '.d3-tip' element...?\n d3tipElement.style.display = \"block\";\n d3tipElement.style.left = this.tooltipOffset() + ((event as any).clientX) + \"px\";\n d3tipElement.style.top = (event as any).clientY + \"px\";\n return [];\n }\n switch (this.tooltip.direction()()) {\n case \"e\":\n return [0, this.tooltipOffset()];\n default:\n return [-this.tooltipOffset(), 0];\n }\n });\n\n let classed = this.tooltip.attr(\"class\");\n if (classed) {\n classed = classed.split(\" notick\").join(\"\") + (this.tooltipTick() ? \"\" : \" notick\") + (this.tooltipStyle() === \"none\" ? \" hidden\" : \"\");\n classed = classed.split(\" \")\n .filter(function (_class) {\n return _class.indexOf(\"ITooltip-tooltipStyle-\") !== 0;\n })\n .join(\" \")\n ;\n classed += \" ITooltip-tooltipStyle-\" + this.tooltipStyle();\n this.tooltip\n .attr(\"class\", classed)\n ;\n }\n};\n\nITooltip.prototype.tooltipExit = function () {\n if (this.tooltip) {\n this.tooltip.destroy();\n }\n};\n\nITooltip.prototype._tooltipHTML = function (d) {\n return d;\n};\n\nITooltip.prototype.tooltipHTML = function (_) {\n return this.tooltip.html(_);\n};\n\nITooltip.prototype.tooltipFormat = function (opts: { label?: string | number, series?: string | number, value?: Date | string | number, arr?: Array<{ color: string, label: string, value: string }> } = {}) {\n opts.label = opts.label === undefined ? \"\" : opts.label;\n if (this._labelFormatter) {\n opts.label = this._labelFormatter(opts.label) || \"\";\n } else if (this.formatData && this.parseData) {\n opts.label = this.formatData(this.parseData(opts.label));\n }\n opts.series = opts.series || \"\";\n if (opts.value instanceof Date) {\n opts.value = opts.value || \"\";\n } else if (this._valueFormatter) {\n opts.value = this._valueFormatter(opts.value) || \"\";\n } else if (this.formatValue && this.parseValue) {\n opts.value = this.formatValue(this.parseValue(opts.value));\n }\n switch (this.tooltipStyle()) {\n case \"none\":\n break;\n case \"series-table\":\n let html = '<table class=\"ITooltip-series-table\">'\n + \"<thead>\"\n + '<tr><th colspan=\"2\">' + opts.label + \"</th></tr>\"\n + \"</thead>\"\n + \"<tbody>\";\n opts.arr.forEach(function (row) {\n html += \"<tr>\";\n html += \"<td>\";\n html += '<div class=\"series-table-row-color\" style=\"background-color:' + row.color + '\"></div>';\n html += '<div class=\"series-table-row-label\">' + row.label + \"</div>\";\n html += \"</td>\";\n html += '<td><div class=\"series-table-row-value\">' + row.value + \"</div></td>\";\n html += \"</tr>\";\n });\n html += \"</tbody>\";\n html += \"</table>\";\n return html;\n default:\n if (opts.series) {\n return \"<span style='color:\" + this.tooltipSeriesColor() + \"'>\" + opts.series + \"</span> / <span style='color:\" + this.tooltipLabelColor() + \"'>\" + opts.label + \"</span>: <span style='color:\" + this.tooltipValueColor() + \"'>\" + opts.value + \"</span>\";\n }\n if (opts.label !== \"\") {\n return \"<span style='color:\" + this.tooltipLabelColor() + \"'>\" + opts.label + \"</span>: <span style='color:\" + this.tooltipValueColor() + \"'>\" + opts.value + \"</span>\";\n }\n return \"<span style='color:\" + this.tooltipValueColor() + \"'>\" + opts.value + \"</span>\";\n }\n};\n\nITooltip.prototype.tooltipKeyValueFormat = function (titleKey: string, obj: object): string {\n let body = \"\";\n for (const key in obj) {\n if (key !== titleKey) {\n const value = obj && obj[key] ? obj[key] : \"\";\n body += `<tr><td style=\"${this.tooltipLabelColor_exists() ? \"color:\" + this.tooltipLabelColor() : \"\"}\">${key}</td><td style=\"font-weight:normal\">${value}</td></tr>`;\n }\n }\n return `<table>\n <thead>\n <tr><th colspan=\"2\" style=\"font-weight:bold;font-size:16px\">${obj[titleKey]}</th></tr>\n </thead>\n <tbody>\n ${body}\n </tbody>\n </table>`;\n};\n\nexport interface ITooltip {\n tooltipStyle: { (): \"default\" | \"none\" | \"series-table\"; (_: \"default\" | \"none\" | \"series-table\"): ITooltip; };\n tooltipFollowMouse: { (): boolean; (_: boolean): ITooltip; };\n tooltipLabelFormat: (_?) => string | ITooltip;\n tooltipLabelFormat_exists: () => boolean;\n tooltipValueFormat: (_?) => string | ITooltip;\n tooltipValueFormat_exists: () => boolean;\n tooltipSeriesColor: { (): string; (_: string): ITooltip; };\n tooltipLabelColor: { (): string; (_: string): ITooltip; };\n tooltipLabelColor_exists: () => boolean;\n tooltipValueColor: { (): string; (_: string): ITooltip; };\n tooltipTick: { (): boolean; (_: boolean): ITooltip; };\n tooltipOffset: { (): number; (_: number): ITooltip; };\n tooltipOffset_default: { (): number; (_: number): ITooltip; };\n}\nITooltip.prototype.publish(\"tooltipStyle\", \"default\", \"set\", \"Style mode\", [\"default\", \"none\", \"series-table\"], {});\nITooltip.prototype.publish(\"tooltipFollowMouse\", false, \"boolean\", \"If true, the tooltip will follow mouse movement\", null, {});\nITooltip.prototype.publish(\"tooltipLabelFormat\", undefined, \"string\", \"Format of tooltip label(s) (the domain axis)\", null, {});\nITooltip.prototype.publish(\"tooltipValueFormat\", undefined, \"string\", \"Number format of tooltip value(s)\", null, {});\nITooltip.prototype.publish(\"tooltipSeriesColor\", \"#EAFFFF\", \"html-color\", \"Color of tooltip series text\", null, {});\nITooltip.prototype.publish(\"tooltipLabelColor\", \"#CCFFFF\", \"html-color\", \"Color of tooltip label text (the domain axis)\", null, {});\nITooltip.prototype.publish(\"tooltipValueColor\", \"white\", \"html-color\", \"Color of tooltip value(s)\", null, {});\nITooltip.prototype.publish(\"tooltipTick\", true, \"boolean\", \"Show tooltip tick\", null, {});\nITooltip.prototype.publish(\"tooltipOffset\", 8, \"number\", \"Offset from the cursor\", null, {});\n\nconst tooltipLabelFormat = ITooltip.prototype.tooltipLabelFormat;\nITooltip.prototype.tooltipLabelFormat = function (_?): string | ITooltip {\n const retVal = tooltipLabelFormat.apply(this, arguments);\n if (arguments.length) {\n this._labelFormatter = d3Format(_);\n }\n return retVal;\n};\n\nconst tooltipValueFormat = ITooltip.prototype.tooltipValueFormat;\nITooltip.prototype.tooltipValueFormat = function (_?): string | ITooltip {\n const retVal = tooltipValueFormat.apply(this, arguments);\n if (arguments.length) {\n this._valueFormatter = d3Format(_);\n }\n return retVal;\n};\n","import { Palette } from \"@hpcc-js/common\";\n\n// Use old school class declaration as this is a mixin ---\nexport function ITree() {\n}\nITree.prototype.constructor = ITree;\n\n// Events ---\nITree.prototype.click = function (row, column, selected) {\n};\n\nITree.prototype.dblclick = function (row, column, selected) {\n};\n\nITree.prototype._palette = Palette.ordinal(\"default\");\n"],"names":["d3Hsl","tip","i","d3Format"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../src/__package__.ts","../src/I1DChart.ts","../src/I2DChart.ts","../src/I2DAggrChart.ts","../src/IGraph.ts","../src/IHighlight.ts","../src/IInput.ts","../src/INDChart.ts","../src/Tooltip.ts","../src/ITooltip.ts","../src/ITree.ts"],"sourcesContent":["export const PKG_NAME = \"__PACKAGE_NAME__\";\nexport const PKG_VERSION = \"__PACKAGE_VERSION__\";\nexport const BUILD_VERSION = \"__BUILD_VERSION__\";\n","import { Palette } from \"@hpcc-js/common\";\n\nexport function I1DChart() {\n}\nI1DChart.prototype._dataFamily = \"1D\";\nI1DChart.prototype._palette = Palette.rainbow(\"default\");\n\n// Events ---\nI1DChart.prototype.click = function (row, column, selected) {\n};\n\nI1DChart.prototype.dblclick = function (row, column, selected) {\n};\n","import { Palette } from \"@hpcc-js/common\";\nimport { hsl as d3Hsl } from \"d3-color\";\n\nexport function I2DChart() {\n}\nI2DChart.prototype._dataFamily = \"2D\";\nI2DChart.prototype._palette = Palette.ordinal(\"default\");\n\nI2DChart.prototype.fillColor = function (row: any[], column, value, origRow): string {\n return this._palette(row[0]);\n};\n\nI2DChart.prototype.strokeColor = function (row: any[], column, value, origRow): string {\n return d3Hsl(this.fillColor(row, column, value, origRow)).darker().toString();\n};\n\nI2DChart.prototype.textColor = function (row: any[], column, value, origRow): string {\n return Palette.textColor(this.fillColor(row, column, value, origRow));\n};\n\n// Events ---\nI2DChart.prototype.click = function (row: object, column, selected) {\n};\n\nI2DChart.prototype.dblclick = function (row: object, column, selected) {\n};\n","import { Palette } from \"@hpcc-js/common\";\nimport { hsl as d3Hsl } from \"d3-color\";\n\nexport function I2DAggrChart() {\n}\nI2DAggrChart.prototype._palette = Palette.rainbow(\"default\");\n\nI2DAggrChart.prototype.fillColor = function (row: any[][], column, value): string {\n return this._palette(row.length);\n};\n\nI2DAggrChart.prototype.strokeColor = function (row: any[][], column, value): string {\n return d3Hsl(this.fillColor(row, column, value)).darker().toString();\n};\n\nI2DAggrChart.prototype.textColor = function (row: any[][], column, value): string {\n return Palette.textColor(this.fillColor(row, column, value));\n};\n\n// Events ---\nI2DAggrChart.prototype.click = function (row: object[], column, selected) {\n};\n\nI2DAggrChart.prototype.dblclick = function (row: object[], column, selected) {\n};\n","export function IGraph() {\n}\nIGraph.prototype._dataFamily = \"graph\";\n\n// Events ---\nIGraph.prototype.vertex_click = function (_row, _col, _sel, more) {\n if (more && more.vertex) {\n }\n};\n\nIGraph.prototype.vertex_dblclick = function (_row, _col, _sel, more) {\n if (more && more.vertex) {\n }\n};\n\nIGraph.prototype.edge_click = function (_row, _col, _sel, more) {\n if (more && more.edge) {\n }\n};\n\nIGraph.prototype.edge_dblclick = function (_row, _col, _sel, more) {\n if (more && more.edge) {\n }\n};\n","export interface IHighlight {\n highlightColumn(column: string): this;\n}\n\nexport function instanceOfIHighlight(w: any): w is IHighlight {\n return typeof (w as any).highlightColumn === \"function\";\n}\n","import { Widget } from \"@hpcc-js/common\";\n\n// Use old school class declaration as this is a mixin ---\nexport function IInput() {\n}\nIInput.prototype = Object.create(Widget.prototype);\nIInput.prototype.constructor = IInput;\n\n// abstract target(): any;\n// abstract target(_: any): this;\n\n// Implementation ---\nIInput.prototype.isValid = function () {\n if (this.validate()) {\n const re = new RegExp(this.validate());\n if (!re.test(this.value())) {\n return false;\n }\n }\n return true;\n};\n\nIInput.prototype.hasValue = function () {\n if (typeof (this as any).type === \"function\") {\n switch ((this as any).type()) {\n case \"radio\":\n /* falls through */\n case \"checkbox\":\n if (this.value() && this.value() !== \"false\") {\n return true;\n }\n break;\n default:\n if (this.value()) {\n return true;\n }\n break;\n }\n return false;\n }\n return this.value() !== \"\";\n};\n\n// Events ---\nIInput.prototype.blur = function (_w) {\n};\nIInput.prototype.keyup = function (_w) {\n};\nIInput.prototype.focus = function (_w) {\n};\nIInput.prototype.click = function (_w) {\n};\nIInput.prototype.dblclick = function (_w) {\n};\nIInput.prototype.change = function (_w, complete: boolean) {\n};\n\nIInput.prototype.resetValue = function (w) {\n w.value(w._inputElement[0].node().value);\n};\n\nIInput.prototype.disable = function (disable) {\n this._inputElement.forEach(function (e, idx) {\n e.attr(\"disabled\", disable ? \"disabled\" : null);\n });\n};\n\nIInput.prototype.setFocus = function () {\n if (this._inputElement.length) {\n this._inputElement[0].node().focus();\n }\n};\n\nexport interface IInput {\n name: { (): string; (_: string): IInput };\n name_exists: () => boolean;\n label: { (): string; (_: string): IInput };\n label_exists: () => boolean;\n value: { (): any; (_: any): IInput };\n value_exists: () => boolean;\n validate: { (): string; (_: string): IInput };\n validate_exists: () => boolean;\n}\nIInput.prototype.publish(\"name\", \"\", \"string\", \"HTML name for the input\");\nIInput.prototype.publish(\"label\", \"\", \"string\", \"Descriptive label\");\nIInput.prototype.publish(\"value\", \"\", \"string\", \"Input Current Value\");\nIInput.prototype.publish(\"validate\", null, \"string\", \"Input Validation\");\n","import { Palette } from \"@hpcc-js/common\";\nimport { hsl as d3Hsl } from \"d3-color\";\n\nexport function INDChart() {\n}\nINDChart.prototype._dataFamily = \"ND\";\nINDChart.prototype._palette = Palette.ordinal(\"default\");\n\nINDChart.prototype.fillColor = function (row: any[], column: string, value: number, origRow: any): string {\n return this._palette(column);\n};\n\nINDChart.prototype.strokeColor = function (row: any[], column: string, value: number, origRow: any): string {\n return d3Hsl(this.fillColor(row, column, value, origRow)).darker().toString();\n};\n\nINDChart.prototype.textColor = function (row: any[], column: string, value: number, origRow: any): string {\n return Palette.textColor(this.fillColor(row, column, value, origRow));\n};\n\n// Events ---\nINDChart.prototype.click = function (row, column, selected) {\n};\n\nINDChart.prototype.dblclick = function (row, column, selected) {\n};\n","// Based on https://github.com/GordonSmith/d3-tip forked from https://github.com/Caged/d3-tip\n\nimport { map } from \"d3-collection\";\nimport { select, selection } from \"d3-selection\";\n\nexport function tip() {\n let direction = d3TipDirection;\n let offset = d3TipOffset;\n let html = d3TipHTML;\n let rootElement = functor(document.body);\n let node = initNode();\n let svg = null;\n let point = null;\n let target = null;\n\n const tip: any = function (vis) {\n svg = getSVGNode(vis);\n if (!svg) return;\n point = svg.createSVGPoint();\n const re = rootElement();\n if (!re) return;\n if (!node) return;\n re.appendChild(node);\n };\n\n // Public - show the tooltip on the screen\n //\n // Returns a tip\n tip.show = function (d, idx, arr) {\n target = arr[idx];\n const args = Array.prototype.slice.call(arguments) as [];\n const content = html.apply(this, args);\n if (content === null) {\n return tip;\n }\n const poffset = offset.apply(this, args);\n const nodel = getNodeEl();\n let i = directions.length;\n let coords;\n const root_bbox = rootElement().getBoundingClientRect();\n nodel.html(content)\n .style(\"opacity\", 1).style(\"pointer-events\", \"all\");\n\n while (i--) nodel.classed(directions[i], false);\n let placement_success = false;\n const placement_overflow = {};\n let least_overflow_direction = directions[0];\n for (let i = 0; i < directions.length; i++) {\n placement_success = _placement_attempt(directions[i]);\n if (placement_success) break;\n }\n if (!placement_success) {\n nodel.classed(\"notick\", true);\n const top_offset = _vertical_adjustment(placement_overflow[least_overflow_direction]);\n const left_offset = _horizontal_adjustment(placement_overflow[least_overflow_direction]);\n _placement_attempt(least_overflow_direction, top_offset, left_offset);\n } else {\n nodel.classed(\"notick\", false);\n }\n return tip;\n\n function _horizontal_adjustment(overflow_obj) {\n if (overflow_obj.left > overflow_obj.right) {\n return overflow_obj.left > 0 ? -overflow_obj.left : 0;\n } else {\n return overflow_obj.right > 0 ? overflow_obj.right : 0;\n }\n }\n function _vertical_adjustment(overflow_obj) {\n if (overflow_obj.top > overflow_obj.bottom) {\n return overflow_obj.top > 0 ? -overflow_obj.top : 0;\n } else {\n return overflow_obj.bottom;\n }\n }\n\n function _placement_attempt(this: any, _dir, _top_offset?, _left_offset?) {\n _top_offset = _top_offset ? _top_offset : 0;\n _left_offset = _left_offset ? _left_offset : 0;\n nodel.style(\"white-space\", \"nowrap\");\n coords = directionCallbacks.get(_dir).apply(this);\n nodel.classed(_dir, true)\n .style(\"top\", (coords.top + poffset[0] - _top_offset) + \"px\")\n .style(\"left\", (coords.left + poffset[1] - _left_offset) + \"px\");\n const nodel_bbox = nodel.node().getBoundingClientRect();\n const ret = nodel_bbox.top > root_bbox.top\n && nodel_bbox.left > root_bbox.left\n && nodel_bbox.bottom < root_bbox.bottom\n && nodel_bbox.right < root_bbox.right\n ;\n placement_overflow[_dir] = {\n top: root_bbox.top - nodel_bbox.top,\n right: nodel_bbox.right - root_bbox.right,\n bottom: nodel_bbox.bottom - root_bbox.bottom,\n left: root_bbox.left - nodel_bbox.left\n };\n nodel.style(\"white-space\", \"normal\");\n placement_overflow[_dir].total_overflow = Object.keys(placement_overflow[_dir])\n .filter(side => placement_overflow[_dir][side] > 0)\n .reduce((sum, side) => {\n const side_overflow = placement_overflow[_dir][side];\n return sum + side_overflow;\n }, 0);\n if (placement_overflow[least_overflow_direction].total_overflow > placement_overflow[_dir].total_overflow) {\n least_overflow_direction = _dir;\n }\n if (!ret) {\n nodel.classed(_dir, false);\n }\n return ret;\n }\n };\n\n // Public - hide the tooltip\n //\n // Returns a tip\n tip.hide = function () {\n const nodel = getNodeEl();\n nodel.style(\"opacity\", 0).style(\"pointer-events\", \"none\");\n return tip;\n };\n\n // Public: Proxy attr calls to the d3 tip container.\n // Sets or gets attribute value.\n //\n // n - name of the attribute\n // v - value of the attribute\n //\n // Returns tip or attribute value\n tip.attr = function (n, v) {\n if (arguments.length < 2 && typeof n === \"string\") {\n return getNodeEl().attr(n);\n }\n\n const args = Array.prototype.slice.call(arguments);\n selection.prototype.attr.apply(getNodeEl(), args);\n return tip;\n };\n\n // Public: Proxy style calls to the d3 tip container.\n // Sets or gets a style value.\n //\n // n - name of the property\n // v - value of the property\n //\n // Returns tip or style property value \n tip.style = function (n, v) {\n if (arguments.length < 2 && typeof n === \"string\") {\n return getNodeEl().style(n);\n }\n\n const args = Array.prototype.slice.call(arguments);\n selection.prototype.style.apply(getNodeEl(), args);\n return tip;\n };\n\n // Public: Set or get the direction of the tooltip\n //\n // v - One of n(north), s(south), e(east), or w(west), nw(northwest),\n // sw(southwest), ne(northeast) or se(southeast)\n //\n // Returns tip or direction\n tip.direction = function (v) {\n if (!arguments.length) return direction;\n direction = v == null ? v : functor(v);\n\n return tip;\n };\n\n // Public: Sets or gets the offset of the tip\n //\n // v - Array of [x, y] offset\n //\n // Returns offset or\n tip.offset = function (v) {\n if (!arguments.length) return offset;\n offset = v == null ? v : functor(v);\n\n return tip;\n };\n\n // Public: sets or gets the html value of the tooltip\n //\n // v - String value of the tip\n //\n // Returns html value or tip\n tip.html = function (v) {\n if (!arguments.length) return html;\n html = v == null ? v : functor(v);\n\n return tip;\n };\n\n // Public: sets or gets the root element anchor of the tooltip\n //\n // v - root element of the tooltip\n //\n // Returns root node of tip\n tip.rootElement = function (v) {\n if (!arguments.length) return rootElement;\n rootElement = functor(v);\n\n return tip;\n };\n\n // Public: destroys the tooltip and removes it from the DOM\n //\n // Returns a tip\n tip.destroy = function () {\n if (node) {\n getNodeEl().remove();\n node = null;\n }\n return tip;\n };\n\n function d3TipDirection() { return \"n\"; }\n function d3TipOffset() { return [0, 0]; }\n function d3TipHTML() { return \" \"; }\n\n const directionCallbacks = map({\n n: directionNorth,\n s: directionSouth,\n e: directionEast,\n w: directionWest,\n nw: directionNorthWest,\n ne: directionNorthEast,\n sw: directionSouthWest,\n se: directionSouthEast\n });\n const directions = directionCallbacks.keys();\n\n function directionNorth() {\n const bbox = getScreenBBox(window);\n return {\n top: bbox.n.y - node.offsetHeight,\n left: bbox.n.x - node.offsetWidth / 2\n };\n }\n\n function directionSouth() {\n const bbox = getScreenBBox(window);\n return {\n top: bbox.s.y + 8,\n left: bbox.s.x - node.offsetWidth / 2\n };\n }\n\n function directionEast() {\n const bbox = getScreenBBox(window);\n return {\n top: bbox.e.y - node.offsetHeight / 2,\n left: bbox.e.x + 8\n };\n }\n\n function directionWest() {\n const bbox = getScreenBBox(window);\n return {\n top: bbox.w.y - node.offsetHeight / 2,\n left: bbox.w.x - node.offsetWidth - 8\n };\n }\n\n function directionNorthWest() {\n const bbox = getScreenBBox(window);\n return {\n top: bbox.nw.y - node.offsetHeight,\n left: bbox.nw.x - node.offsetWidth\n };\n }\n\n function directionNorthEast() {\n const bbox = getScreenBBox(window);\n return {\n top: bbox.ne.y - node.offsetHeight,\n left: bbox.ne.x\n };\n }\n\n function directionSouthWest() {\n const bbox = getScreenBBox(window);\n return {\n top: bbox.sw.y,\n left: bbox.sw.x - node.offsetWidth\n };\n }\n\n function directionSouthEast() {\n const bbox = getScreenBBox(window);\n return {\n top: bbox.se.y,\n left: bbox.se.x\n };\n }\n\n function initNode() {\n const div = select(document.createElement(\"div\"));\n div\n .attr(\"class\", \"d3-tip\")\n .style(\"position\", \"absolute\")\n .style(\"top\", \"0px\")\n .style(\"opacity\", 0)\n .style(\"pointer-events\", \"none\")\n .style(\"box-sizing\", \"border-box\");\n\n return div.node();\n }\n\n function getSVGNode(element) {\n const svgNode = element.node();\n if (!svgNode) return null;\n if (svgNode.tagName.toLowerCase() === \"svg\") return svgNode;\n return svgNode.ownerSVGElement;\n }\n\n function getNodeEl() {\n if (node == null) {\n node = initNode();\n // re-add node to DOM\n rootElement().appendChild(node);\n }\n return select(node);\n }\n\n // Private - gets the screen coordinates of a shape\n //\n // Given a shape on the screen, will return an SVGPoint for the directions\n // n(north), s(south), e(east), w(west), ne(northeast), se(southeast),\n // nw(northwest), sw(southwest).\n //\n // +-+-+\n // | |\n // + +\n // | |\n // +-+-+\n //\n // Returns an Object {n, s, e, w, nw, sw, ne, se}\n function getScreenBBox(targetShape) {\n let targetel = target || targetShape;\n\n while (targetel.getCTM == null && targetel.parentNode != null) {\n targetel = targetel.parentNode;\n }\n\n const bbox: any = {};\n const matrix = targetel.getCTM();\n const tbbox = targetel.getBBox();\n const width = tbbox.width;\n const height = tbbox.height;\n const x = tbbox.x;\n const y = tbbox.y;\n\n point.x = x;\n point.y = y;\n bbox.nw = point.matrixTransform(matrix);\n point.x += width;\n bbox.ne = point.matrixTransform(matrix);\n point.y += height;\n bbox.se = point.matrixTransform(matrix);\n point.x -= width;\n bbox.sw = point.matrixTransform(matrix);\n point.y -= height / 2;\n bbox.w = point.matrixTransform(matrix);\n point.x += width;\n bbox.e = point.matrixTransform(matrix);\n point.x -= width / 2;\n point.y -= height / 2;\n bbox.n = point.matrixTransform(matrix);\n point.y += height;\n bbox.s = point.matrixTransform(matrix);\n\n return bbox;\n }\n\n // Private - replace D3JS 3.X d3.functor() function\n function functor(v) {\n return typeof v === \"function\" ? v : function () {\n return v;\n };\n }\n\n return tip;\n}\n","import { Widget } from \"@hpcc-js/common\";\nimport { format as d3Format } from \"d3-format\";\nimport { tip } from \"./Tooltip.ts\";\n\nimport \"../src/ITooltip.css\";\n\ndeclare const event: object;\n\n// Use old school class declaration as this is a mixin ---\nexport function ITooltip(this: any) {\n this.tooltip = tip();\n\n if (this.tooltipLabelFormat_exists()) {\n this._labelFormatter = d3Format(this.tooltipLabelFormat() as string);\n }\n\n if (this.tooltipValueFormat_exists()) {\n this._valueFormatter = d3Format(this.tooltipValueFormat() as string);\n }\n\n if (this.layerEnter) {\n const layerEnter = this.layerEnter;\n this.layerEnter = function (_base, svgElement, _domElement) {\n if (!this._parentOverlay) {\n this._parentOverlay = _base._parentOverlay;\n }\n this.tooltipEnter(svgElement);\n layerEnter.apply(this, arguments);\n };\n const layerUpdate = this.layerUpdate;\n this.layerUpdate = function (_base) {\n layerUpdate.apply(this, arguments);\n this.tooltipUpdate();\n };\n const layerExit = this.layerExit;\n this.layerExit = function (_base) {\n this.tooltipExit();\n layerExit.apply(this, arguments);\n };\n } else {\n const enter = this.enter;\n this.enter = function (_domNode, element) {\n this.tooltipEnter(element);\n enter.apply(this, arguments);\n };\n const update = this.update;\n this.update = function (_domNode, _element) {\n update.apply(this, arguments);\n this.tooltipUpdate();\n };\n const exit = this.exit;\n this.exit = function (_domNode, _element) {\n this.tooltipExit();\n exit.apply(this, arguments);\n };\n }\n}\nITooltip.prototype = Object.create(Widget.prototype);\nITooltip.prototype.constructor = ITooltip;\n\n// abstract target(): any;\n// abstract target(_: any): this;\n\nITooltip.prototype.tooltipEnter = function (element) {\n const overlayElement = this.parentOverlay();\n if (!overlayElement.empty()) {\n this.tooltip.rootElement(overlayElement.node().parentNode);\n }\n element.call(this.tooltip);\n};\n\nITooltip.prototype.tooltipUpdate = function () {\n this.tooltip.offset(() => {\n if (event && this.tooltipFollowMouse()) {\n const d3tipElement: HTMLDivElement = document.querySelector(\".d3-tip\"); // d3Tip offers no reference to the '.d3-tip' element...?\n d3tipElement.style.display = \"block\";\n d3tipElement.style.left = this.tooltipOffset() + ((event as any).clientX) + \"px\";\n d3tipElement.style.top = (event as any).clientY + \"px\";\n return [];\n }\n switch (this.tooltip.direction()()) {\n case \"e\":\n return [0, this.tooltipOffset()];\n default:\n return [-this.tooltipOffset(), 0];\n }\n });\n\n let classed = this.tooltip.attr(\"class\");\n if (classed) {\n classed = classed.split(\" notick\").join(\"\") + (this.tooltipTick() ? \"\" : \" notick\") + (this.tooltipStyle() === \"none\" ? \" hidden\" : \"\");\n classed = classed.split(\" \")\n .filter(function (_class) {\n return _class.indexOf(\"ITooltip-tooltipStyle-\") !== 0;\n })\n .join(\" \")\n ;\n classed += \" ITooltip-tooltipStyle-\" + this.tooltipStyle();\n this.tooltip\n .attr(\"class\", classed)\n ;\n }\n};\n\nITooltip.prototype.tooltipExit = function () {\n if (this.tooltip) {\n this.tooltip.destroy();\n }\n};\n\nITooltip.prototype._tooltipHTML = function (d) {\n return d;\n};\n\nITooltip.prototype.tooltipHTML = function (_) {\n return this.tooltip.html(_);\n};\n\nITooltip.prototype.tooltipFormat = function (opts: { label?: string | number, series?: string | number, value?: Date | string | number, arr?: Array<{ color: string, label: string, value: string }> } = {}) {\n opts.label = opts.label === undefined ? \"\" : opts.label;\n if (this._labelFormatter) {\n opts.label = this._labelFormatter(opts.label) || \"\";\n } else if (this.formatData && this.parseData) {\n opts.label = this.formatData(this.parseData(opts.label));\n }\n opts.series = opts.series || \"\";\n if (opts.value instanceof Date) {\n opts.value = opts.value || \"\";\n } else if (this._valueFormatter) {\n opts.value = this._valueFormatter(opts.value) || \"\";\n } else if (this.formatValue && this.parseValue) {\n opts.value = this.formatValue(this.parseValue(opts.value));\n }\n switch (this.tooltipStyle()) {\n case \"none\":\n break;\n case \"series-table\":\n let html = '<table class=\"ITooltip-series-table\">'\n + \"<thead>\"\n + '<tr><th colspan=\"2\">' + opts.label + \"</th></tr>\"\n + \"</thead>\"\n + \"<tbody>\";\n opts.arr.forEach(function (row) {\n html += \"<tr>\";\n html += \"<td>\";\n html += '<div class=\"series-table-row-color\" style=\"background-color:' + row.color + '\"></div>';\n html += '<div class=\"series-table-row-label\">' + row.label + \"</div>\";\n html += \"</td>\";\n html += '<td><div class=\"series-table-row-value\">' + row.value + \"</div></td>\";\n html += \"</tr>\";\n });\n html += \"</tbody>\";\n html += \"</table>\";\n return html;\n default:\n if (opts.series) {\n return \"<span style='color:\" + this.tooltipSeriesColor() + \"'>\" + opts.series + \"</span> / <span style='color:\" + this.tooltipLabelColor() + \"'>\" + opts.label + \"</span>: <span style='color:\" + this.tooltipValueColor() + \"'>\" + opts.value + \"</span>\";\n }\n if (opts.label !== \"\") {\n return \"<span style='color:\" + this.tooltipLabelColor() + \"'>\" + opts.label + \"</span>: <span style='color:\" + this.tooltipValueColor() + \"'>\" + opts.value + \"</span>\";\n }\n return \"<span style='color:\" + this.tooltipValueColor() + \"'>\" + opts.value + \"</span>\";\n }\n};\n\nITooltip.prototype.tooltipKeyValueFormat = function (titleKey: string, obj: object): string {\n let body = \"\";\n for (const key in obj) {\n if (key !== titleKey) {\n const value = obj && obj[key] ? obj[key] : \"\";\n body += `<tr><td style=\"${this.tooltipLabelColor_exists() ? \"color:\" + this.tooltipLabelColor() : \"\"}\">${key}</td><td style=\"font-weight:normal\">${value}</td></tr>`;\n }\n }\n return `<table>\n <thead>\n <tr><th colspan=\"2\" style=\"font-weight:bold;font-size:16px\">${obj[titleKey]}</th></tr>\n </thead>\n <tbody>\n ${body}\n </tbody>\n </table>`;\n};\n\nexport interface ITooltip {\n tooltipStyle: { (): \"default\" | \"none\" | \"series-table\"; (_: \"default\" | \"none\" | \"series-table\"): ITooltip; };\n tooltipFollowMouse: { (): boolean; (_: boolean): ITooltip; };\n tooltipLabelFormat: (_?) => string | ITooltip;\n tooltipLabelFormat_exists: () => boolean;\n tooltipValueFormat: (_?) => string | ITooltip;\n tooltipValueFormat_exists: () => boolean;\n tooltipSeriesColor: { (): string; (_: string): ITooltip; };\n tooltipLabelColor: { (): string; (_: string): ITooltip; };\n tooltipLabelColor_exists: () => boolean;\n tooltipValueColor: { (): string; (_: string): ITooltip; };\n tooltipTick: { (): boolean; (_: boolean): ITooltip; };\n tooltipOffset: { (): number; (_: number): ITooltip; };\n tooltipOffset_default: { (): number; (_: number): ITooltip; };\n}\nITooltip.prototype.publish(\"tooltipStyle\", \"default\", \"set\", \"Style mode\", [\"default\", \"none\", \"series-table\"], {});\nITooltip.prototype.publish(\"tooltipFollowMouse\", false, \"boolean\", \"If true, the tooltip will follow mouse movement\", null, {});\nITooltip.prototype.publish(\"tooltipLabelFormat\", undefined, \"string\", \"Format of tooltip label(s) (the domain axis)\", null, {});\nITooltip.prototype.publish(\"tooltipValueFormat\", undefined, \"string\", \"Number format of tooltip value(s)\", null, {});\nITooltip.prototype.publish(\"tooltipSeriesColor\", \"#EAFFFF\", \"html-color\", \"Color of tooltip series text\", null, {});\nITooltip.prototype.publish(\"tooltipLabelColor\", \"#CCFFFF\", \"html-color\", \"Color of tooltip label text (the domain axis)\", null, {});\nITooltip.prototype.publish(\"tooltipValueColor\", \"white\", \"html-color\", \"Color of tooltip value(s)\", null, {});\nITooltip.prototype.publish(\"tooltipTick\", true, \"boolean\", \"Show tooltip tick\", null, {});\nITooltip.prototype.publish(\"tooltipOffset\", 8, \"number\", \"Offset from the cursor\", null, {});\n\nconst tooltipLabelFormat = ITooltip.prototype.tooltipLabelFormat;\nITooltip.prototype.tooltipLabelFormat = function (_?): string | ITooltip {\n const retVal = tooltipLabelFormat.apply(this, arguments);\n if (arguments.length) {\n this._labelFormatter = d3Format(_);\n }\n return retVal;\n};\n\nconst tooltipValueFormat = ITooltip.prototype.tooltipValueFormat;\nITooltip.prototype.tooltipValueFormat = function (_?): string | ITooltip {\n const retVal = tooltipValueFormat.apply(this, arguments);\n if (arguments.length) {\n this._valueFormatter = d3Format(_);\n }\n return retVal;\n};\n","import { Palette } from \"@hpcc-js/common\";\n\n// Use old school class declaration as this is a mixin ---\nexport function ITree() {\n}\nITree.prototype.constructor = ITree;\n\n// Events ---\nITree.prototype.click = function (row, column, selected) {\n};\n\nITree.prototype.dblclick = function (row, column, selected) {\n};\n\nITree.prototype._palette = Palette.ordinal(\"default\");\n"],"names":["PKG_NAME","PKG_VERSION","BUILD_VERSION","I1DChart","I2DChart","I2DAggrChart","IGraph","instanceOfIHighlight","w","highlightColumn","IInput","INDChart","tip","direction","d3TipDirection","offset","d3TipOffset","html","d3TipHTML","rootElement","functor","document","body","node","initNode","svg","point","target","vis","getSVGNode","createSVGPoint","re","appendChild","show","d","idx","arr","args","Array","prototype","slice","call","arguments","content","apply","this","poffset","nodel","getNodeEl","coords","i","directions","length","root_bbox","getBoundingClientRect","style","classed","placement_success","placement_overflow","least_overflow_direction","_placement_attempt","top_offset","_vertical_adjustment","left_offset","_horizontal_adjustment","overflow_obj","left","right","top","bottom","_dir","_top_offset","_left_offset","directionCallbacks","get","nodel_bbox","ret","total_overflow","Object","keys","filter","side","reduce","sum","hide","attr","n","v","selection","destroy","remove","__name","map","directionNorth","s","directionSouth","e","directionEast","directionWest","nw","directionNorthWest","ne","directionNorthEast","sw","directionSouthWest","se","directionSouthEast","bbox","getScreenBBox","window","y","offsetHeight","x","offsetWidth","div","select","createElement","element","svgNode","tagName","toLowerCase","ownerSVGElement","targetShape","targetel","getCTM","parentNode","matrix","tbbox","getBBox","width","height","matrixTransform","ITooltip","tooltip","tooltipLabelFormat_exists","_labelFormatter","d3Format","tooltipLabelFormat","tooltipValueFormat_exists","_valueFormatter","tooltipValueFormat","layerEnter","_base","svgElement","_domElement","_parentOverlay","tooltipEnter","layerUpdate","tooltipUpdate","layerExit","tooltipExit","enter","_domNode","update","_element","exit","_dataFamily","_palette","Palette","rainbow","click","row","column","selected","dblclick","ordinal","fillColor","value","origRow","strokeColor","d3Hsl","darker","toString","textColor","vertex_click","_row","_col","_sel","more","vertex","vertex_dblclick","edge_click","edge","edge_dblclick","create","Widget","constructor","isValid","validate","RegExp","test","hasValue","type","blur","_w","keyup","focus","change","complete","resetValue","_inputElement","disable","forEach","setFocus","publish","overlayElement","parentOverlay","empty","event","tooltipFollowMouse","d3tipElement","querySelector","display","tooltipOffset","clientX","clientY","split","join","tooltipTick","tooltipStyle","_class","indexOf","_tooltipHTML","tooltipHTML","_","tooltipFormat","opts","label","formatData","parseData","series","Date","formatValue","parseValue","color","tooltipSeriesColor","tooltipLabelColor","tooltipValueColor","tooltipKeyValueFormat","titleKey","obj","key","tooltipLabelColor_exists","retVal","ITree"],"mappings":"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"}
|
package/dist/index.umd.cjs
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
!function(t,o){"object"==typeof exports&&"undefined"!=typeof module?o(exports,require("@hpcc-js/common")):"function"==typeof define&&define.amd?define(["exports","@hpcc-js/common"],o):o((t="undefined"!=typeof globalThis?globalThis:t||self)["@hpcc-js/api"]={},t["@hpcc-js/common"])}(this,function(t,o){"use strict";var e=Object.defineProperty,l=(t,o)=>e(t,"name",{value:o,configurable:!0});function i(){}function n(){}function r(){}function p(){}function s(t){return"function"==typeof t.highlightColumn}function a(){}function u(){}function c(){let t=c,e=f,i=h,n=T(document.body),r=k(),p=null,s=null,a=null;const u=l(function(t){if(p=F(t),!p)return;s=p.createSVGPoint();const o=n();o&&r&&o.appendChild(r)},"tip2");function c(){return"n"}function f(){return[0,0]}function h(){return" "}u.show=function(t,o,l){a=l[o];const r=Array.prototype.slice.call(arguments),p=i.apply(this,r);if(null===p)return u;const s=e.apply(this,r),c=E();let f,h=d.length;const b=n().getBoundingClientRect();for(c.html(p).style("opacity",1).style("pointer-events","all");h--;)c.classed(d[h],!1);let m=!1;const g={};let v=d[0];for(let e=0;e<d.length&&(m=C(d[e]),!m);e++);if(m)c.classed("notick",!1);else{c.classed("notick",!0);const t=w(g[v]),o=x(g[v]);C(v,t,o)}return u;function x(t){return t.left>t.right?t.left>0?-t.left:0:t.right>0?t.right:0}function w(t){return t.top>t.bottom?t.top>0?-t.top:0:t.bottom}function C(t,o,e){o=o||0,e=e||0,c.style("white-space","nowrap"),f=y.get(t).apply(this),c.classed(t,!0).style("top",f.top+s[0]-o+"px").style("left",f.left+s[1]-e+"px");const l=c.node().getBoundingClientRect(),i=l.top>b.top&&l.left>b.left&&l.bottom<b.bottom&&l.right<b.right;return g[t]={top:b.top-l.top,right:l.right-b.right,bottom:l.bottom-b.bottom,left:b.left-l.left},c.style("white-space","normal"),g[t].total_overflow=Object.keys(g[t]).filter(o=>g[t][o]>0).reduce((o,e)=>o+g[t][e],0),g[v].total_overflow>g[t].total_overflow&&(v=t),i||c.classed(t,!1),i}},u.hide=function(){return E().style("opacity",0).style("pointer-events","none"),u},u.attr=function(t,e){if(arguments.length<2&&"string"==typeof t)return E().attr(t);const l=Array.prototype.slice.call(arguments);return o.selection.prototype.attr.apply(E(),l),u},u.style=function(t,e){if(arguments.length<2&&"string"==typeof t)return E().style(t);const l=Array.prototype.slice.call(arguments);return o.selection.prototype.style.apply(E(),l),u},u.direction=function(o){return arguments.length?(t=null==o?o:T(o),u):t},u.offset=function(t){return arguments.length?(e=null==t?t:T(t),u):e},u.html=function(t){return arguments.length?(i=null==t?t:T(t),u):i},u.rootElement=function(t){return arguments.length?(n=T(t),u):n},u.destroy=function(){return r&&(E().remove(),r=null),u},l(c,"d3TipDirection"),l(f,"d3TipOffset"),l(h,"d3TipHTML");const y=o.map({n:b,s:m,e:g,w:v,nw:x,ne:w,sw:C,se:_}),d=y.keys();function b(){const t=I(window);return{top:t.n.y-r.offsetHeight,left:t.n.x-r.offsetWidth/2}}function m(){const t=I(window);return{top:t.s.y+8,left:t.s.x-r.offsetWidth/2}}function g(){const t=I(window);return{top:t.e.y-r.offsetHeight/2,left:t.e.x+8}}function v(){const t=I(window);return{top:t.w.y-r.offsetHeight/2,left:t.w.x-r.offsetWidth-8}}function x(){const t=I(window);return{top:t.nw.y-r.offsetHeight,left:t.nw.x-r.offsetWidth}}function w(){const t=I(window);return{top:t.ne.y-r.offsetHeight,left:t.ne.x}}function C(){const t=I(window);return{top:t.sw.y,left:t.sw.x-r.offsetWidth}}function _(){const t=I(window);return{top:t.se.y,left:t.se.x}}function k(){const t=o.select(document.createElement("div"));return t.attr("class","d3-tip").style("position","absolute").style("top","0px").style("opacity",0).style("pointer-events","none").style("box-sizing","border-box"),t.node()}function F(t){const o=t.node();return o?"svg"===o.tagName.toLowerCase()?o:o.ownerSVGElement:null}function E(){return null==r&&(r=k(),n().appendChild(r)),o.select(r)}function I(t){let o=a||t;for(;null==o.getCTM&&null!=o.parentNode;)o=o.parentNode;const e={},l=o.getCTM(),i=o.getBBox(),n=i.width,r=i.height,p=i.x,u=i.y;return s.x=p,s.y=u,e.nw=s.matrixTransform(l),s.x+=n,e.ne=s.matrixTransform(l),s.y+=r,e.se=s.matrixTransform(l),s.x-=n,e.sw=s.matrixTransform(l),s.y-=r/2,e.w=s.matrixTransform(l),s.x+=n,e.e=s.matrixTransform(l),s.x-=n/2,s.y-=r/2,e.n=s.matrixTransform(l),s.y+=r,e.s=s.matrixTransform(l),e}function T(t){return"function"==typeof t?t:function(){return t}}return l(b,"directionNorth"),l(m,"directionSouth"),l(g,"directionEast"),l(v,"directionWest"),l(x,"directionNorthWest"),l(w,"directionNorthEast"),l(C,"directionSouthWest"),l(_,"directionSouthEast"),l(k,"initNode"),l(F,"getSVGNode"),l(E,"getNodeEl"),l(I,"getScreenBBox"),l(T,"functor"),u}function f(){if(this.tooltip=c(),this.tooltipLabelFormat_exists()&&(this._labelFormatter=o.format(this.tooltipLabelFormat())),this.tooltipValueFormat_exists()&&(this._valueFormatter=o.format(this.tooltipValueFormat())),this.layerEnter){const t=this.layerEnter;this.layerEnter=function(o,e,l){this._parentOverlay||(this._parentOverlay=o._parentOverlay),this.tooltipEnter(e),t.apply(this,arguments)};const o=this.layerUpdate;this.layerUpdate=function(t){o.apply(this,arguments),this.tooltipUpdate()};const e=this.layerExit;this.layerExit=function(t){this.tooltipExit(),e.apply(this,arguments)}}else{const t=this.enter;this.enter=function(o,e){this.tooltipEnter(e),t.apply(this,arguments)};const o=this.update;this.update=function(t,e){o.apply(this,arguments),this.tooltipUpdate()};const e=this.exit;this.exit=function(t,o){this.tooltipExit(),e.apply(this,arguments)}}}l(i,"I1DChart"),i.prototype._dataFamily="1D",i.prototype._palette=o.Palette.rainbow("default"),i.prototype.click=function(t,o,e){},i.prototype.dblclick=function(t,o,e){},l(n,"I2DChart"),n.prototype._dataFamily="2D",n.prototype._palette=o.Palette.ordinal("default"),n.prototype.fillColor=function(t,o,e,l){return this._palette(t[0])},n.prototype.strokeColor=function(t,e,l,i){return o.hsl(this.fillColor(t,e,l,i)).darker().toString()},n.prototype.textColor=function(t,e,l,i){return o.Palette.textColor(this.fillColor(t,e,l,i))},n.prototype.click=function(t,o,e){},n.prototype.dblclick=function(t,o,e){},l(r,"I2DAggrChart"),r.prototype._palette=o.Palette.rainbow("default"),r.prototype.fillColor=function(t,o,e){return this._palette(t.length)},r.prototype.strokeColor=function(t,e,l){return o.hsl(this.fillColor(t,e,l)).darker().toString()},r.prototype.textColor=function(t,e,l){return o.Palette.textColor(this.fillColor(t,e,l))},r.prototype.click=function(t,o,e){},r.prototype.dblclick=function(t,o,e){},l(p,"IGraph"),p.prototype._dataFamily="graph",p.prototype.vertex_click=function(t,o,e,l){l&&l.vertex},p.prototype.vertex_dblclick=function(t,o,e,l){l&&l.vertex},p.prototype.edge_click=function(t,o,e,l){l&&l.edge},p.prototype.edge_dblclick=function(t,o,e,l){l&&l.edge},l(s,"instanceOfIHighlight"),l(a,"IInput"),a.prototype=Object.create(o.Widget.prototype),a.prototype.constructor=a,a.prototype.isValid=function(){if(this.validate()){if(!new RegExp(this.validate()).test(this.value()))return!1}return!0},a.prototype.hasValue=function(){if("function"==typeof this.type){switch(this.type()){case"radio":case"checkbox":if(this.value()&&"false"!==this.value())return!0;break;default:if(this.value())return!0}return!1}return""!==this.value()},a.prototype.blur=function(t){},a.prototype.keyup=function(t){},a.prototype.focus=function(t){},a.prototype.click=function(t){},a.prototype.dblclick=function(t){},a.prototype.change=function(t,o){},a.prototype.resetValue=function(t){t.value(t._inputElement[0].node().value)},a.prototype.disable=function(t){this._inputElement.forEach(function(o,e){o.attr("disabled",t?"disabled":null)})},a.prototype.setFocus=function(){this._inputElement.length&&this._inputElement[0].node().focus()},a.prototype.publish("name","","string","HTML name for the input"),a.prototype.publish("label","","string","Descriptive label"),a.prototype.publish("value","","string","Input Current Value"),a.prototype.publish("validate",null,"string","Input Validation"),l(u,"INDChart"),u.prototype._dataFamily="ND",u.prototype._palette=o.Palette.ordinal("default"),u.prototype.fillColor=function(t,o,e,l){return this._palette(o)},u.prototype.strokeColor=function(t,e,l,i){return o.hsl(this.fillColor(t,e,l,i)).darker().toString()},u.prototype.textColor=function(t,e,l,i){return o.Palette.textColor(this.fillColor(t,e,l,i))},u.prototype.click=function(t,o,e){},u.prototype.dblclick=function(t,o,e){},l(c,"tip"),l(f,"ITooltip"),f.prototype=Object.create(o.Widget.prototype),f.prototype.constructor=f,f.prototype.tooltipEnter=function(t){const o=this.parentOverlay();o.empty()||this.tooltip.rootElement(o.node().parentNode),t.call(this.tooltip)},f.prototype.tooltipUpdate=function(){this.tooltip.offset(()=>{if(event&&this.tooltipFollowMouse()){const t=document.querySelector(".d3-tip");return t.style.display="block",t.style.left=this.tooltipOffset()+event.clientX+"px",t.style.top=event.clientY+"px",[]}return"e"===this.tooltip.direction()()?[0,this.tooltipOffset()]:[-this.tooltipOffset(),0]});let t=this.tooltip.attr("class");t&&(t=t.split(" notick").join("")+(this.tooltipTick()?"":" notick")+("none"===this.tooltipStyle()?" hidden":""),t=t.split(" ").filter(function(t){return 0!==t.indexOf("ITooltip-tooltipStyle-")}).join(" "),t+=" ITooltip-tooltipStyle-"+this.tooltipStyle(),this.tooltip.attr("class",t))},f.prototype.tooltipExit=function(){this.tooltip&&this.tooltip.destroy()},f.prototype._tooltipHTML=function(t){return t},f.prototype.tooltipHTML=function(t){return this.tooltip.html(t)},f.prototype.tooltipFormat=function(t={}){switch(t.label=void 0===t.label?"":t.label,this._labelFormatter?t.label=this._labelFormatter(t.label)||"":this.formatData&&this.parseData&&(t.label=this.formatData(this.parseData(t.label))),t.series=t.series||"",t.value instanceof Date?t.value=t.value||"":this._valueFormatter?t.value=this._valueFormatter(t.value)||"":this.formatValue&&this.parseValue&&(t.value=this.formatValue(this.parseValue(t.value))),this.tooltipStyle()){case"none":break;case"series-table":let o='<table class="ITooltip-series-table"><thead><tr><th colspan="2">'+t.label+"</th></tr></thead><tbody>";return t.arr.forEach(function(t){o+="<tr>",o+="<td>",o+='<div class="series-table-row-color" style="background-color:'+t.color+'"></div>',o+='<div class="series-table-row-label">'+t.label+"</div>",o+="</td>",o+='<td><div class="series-table-row-value">'+t.value+"</div></td>",o+="</tr>"}),o+="</tbody>",o+="</table>",o;default:return t.series?"<span style='color:"+this.tooltipSeriesColor()+"'>"+t.series+"</span> / <span style='color:"+this.tooltipLabelColor()+"'>"+t.label+"</span>: <span style='color:"+this.tooltipValueColor()+"'>"+t.value+"</span>":""!==t.label?"<span style='color:"+this.tooltipLabelColor()+"'>"+t.label+"</span>: <span style='color:"+this.tooltipValueColor()+"'>"+t.value+"</span>":"<span style='color:"+this.tooltipValueColor()+"'>"+t.value+"</span>"}},f.prototype.tooltipKeyValueFormat=function(t,o){let e="";for(const l in o)if(l!==t){const t=o&&o[l]?o[l]:"";e+=`<tr><td style="${this.tooltipLabelColor_exists()?"color:"+this.tooltipLabelColor():""}">${l}</td><td style="font-weight:normal">${t}</td></tr>`}return`<table>\n <thead>\n <tr><th colspan="2" style="font-weight:bold;font-size:16px">${o[t]}</th></tr>\n </thead>\n <tbody>\n ${e}\n </tbody>\n </table>`},f.prototype.publish("tooltipStyle","default","set","Style mode",["default","none","series-table"],{}),f.prototype.publish("tooltipFollowMouse",!1,"boolean","If true, the tooltip will follow mouse movement",null,{}),f.prototype.publish("tooltipLabelFormat",void 0,"string","Format of tooltip label(s) (the domain axis)",null,{}),f.prototype.publish("tooltipValueFormat",void 0,"string","Number format of tooltip value(s)",null,{}),f.prototype.publish("tooltipSeriesColor","#EAFFFF","html-color","Color of tooltip series text",null,{}),f.prototype.publish("tooltipLabelColor","#CCFFFF","html-color","Color of tooltip label text (the domain axis)",null,{}),f.prototype.publish("tooltipValueColor","white","html-color","Color of tooltip value(s)",null,{}),f.prototype.publish("tooltipTick",!0,"boolean","Show tooltip tick",null,{}),f.prototype.publish("tooltipOffset",8,"number","Offset from the cursor",null,{});const h=f.prototype.tooltipLabelFormat;f.prototype.tooltipLabelFormat=function(t){const e=h.apply(this,arguments);return arguments.length&&(this._labelFormatter=o.format(t)),e};const y=f.prototype.tooltipValueFormat;function d(){}f.prototype.tooltipValueFormat=function(t){const e=y.apply(this,arguments);return arguments.length&&(this._valueFormatter=o.format(t)),e},l(d,"ITree"),d.prototype.constructor=d,d.prototype.click=function(t,o,e){},d.prototype.dblclick=function(t,o,e){},d.prototype._palette=o.Palette.ordinal("default"),t.BUILD_VERSION="3.15.1",t.I1DChart=i,t.I2DAggrChart=r,t.I2DChart=n,t.IGraph=p,t.IInput=a,t.INDChart=u,t.ITooltip=f,t.ITree=d,t.PKG_NAME="@hpcc-js/api",t.PKG_VERSION="3.4.1",t.instanceOfIHighlight=s,Object.defineProperty(t,Symbol.toStringTag,{value:"Module"})});
|
|
1
|
+
!function(t,o){"object"==typeof exports&&"undefined"!=typeof module?o(exports,require("@hpcc-js/common")):"function"==typeof define&&define.amd?define(["exports","@hpcc-js/common"],o):o((t="undefined"!=typeof globalThis?globalThis:t||self)["@hpcc-js/api"]={},t["@hpcc-js/common"])}(this,function(t,o){"use strict";var e=Object.defineProperty,l=(t,o)=>e(t,"name",{value:o,configurable:!0});function i(){}function n(){}function r(){}function p(){}function s(t){return"function"==typeof t.highlightColumn}function a(){}function u(){}function c(){let t=c,e=f,i=h,n=T(document.body),r=k(),p=null,s=null,a=null;const u=l(function(t){if(p=F(t),!p)return;s=p.createSVGPoint();const o=n();o&&r&&o.appendChild(r)},"tip2");function c(){return"n"}function f(){return[0,0]}function h(){return" "}u.show=function(t,o,l){a=l[o];const r=Array.prototype.slice.call(arguments),p=i.apply(this,r);if(null===p)return u;const s=e.apply(this,r),c=E();let f,h=d.length;const b=n().getBoundingClientRect();for(c.html(p).style("opacity",1).style("pointer-events","all");h--;)c.classed(d[h],!1);let m=!1;const g={};let v=d[0];for(let e=0;e<d.length&&(m=C(d[e]),!m);e++);if(m)c.classed("notick",!1);else{c.classed("notick",!0);const t=w(g[v]),o=x(g[v]);C(v,t,o)}return u;function x(t){return t.left>t.right?t.left>0?-t.left:0:t.right>0?t.right:0}function w(t){return t.top>t.bottom?t.top>0?-t.top:0:t.bottom}function C(t,o,e){o=o||0,e=e||0,c.style("white-space","nowrap"),f=y.get(t).apply(this),c.classed(t,!0).style("top",f.top+s[0]-o+"px").style("left",f.left+s[1]-e+"px");const l=c.node().getBoundingClientRect(),i=l.top>b.top&&l.left>b.left&&l.bottom<b.bottom&&l.right<b.right;return g[t]={top:b.top-l.top,right:l.right-b.right,bottom:l.bottom-b.bottom,left:b.left-l.left},c.style("white-space","normal"),g[t].total_overflow=Object.keys(g[t]).filter(o=>g[t][o]>0).reduce((o,e)=>o+g[t][e],0),g[v].total_overflow>g[t].total_overflow&&(v=t),i||c.classed(t,!1),i}},u.hide=function(){return E().style("opacity",0).style("pointer-events","none"),u},u.attr=function(t,e){if(arguments.length<2&&"string"==typeof t)return E().attr(t);const l=Array.prototype.slice.call(arguments);return o.selection.prototype.attr.apply(E(),l),u},u.style=function(t,e){if(arguments.length<2&&"string"==typeof t)return E().style(t);const l=Array.prototype.slice.call(arguments);return o.selection.prototype.style.apply(E(),l),u},u.direction=function(o){return arguments.length?(t=null==o?o:T(o),u):t},u.offset=function(t){return arguments.length?(e=null==t?t:T(t),u):e},u.html=function(t){return arguments.length?(i=null==t?t:T(t),u):i},u.rootElement=function(t){return arguments.length?(n=T(t),u):n},u.destroy=function(){return r&&(E().remove(),r=null),u},l(c,"d3TipDirection"),l(f,"d3TipOffset"),l(h,"d3TipHTML");const y=o.map({n:b,s:m,e:g,w:v,nw:x,ne:w,sw:C,se:_}),d=y.keys();function b(){const t=I(window);return{top:t.n.y-r.offsetHeight,left:t.n.x-r.offsetWidth/2}}function m(){const t=I(window);return{top:t.s.y+8,left:t.s.x-r.offsetWidth/2}}function g(){const t=I(window);return{top:t.e.y-r.offsetHeight/2,left:t.e.x+8}}function v(){const t=I(window);return{top:t.w.y-r.offsetHeight/2,left:t.w.x-r.offsetWidth-8}}function x(){const t=I(window);return{top:t.nw.y-r.offsetHeight,left:t.nw.x-r.offsetWidth}}function w(){const t=I(window);return{top:t.ne.y-r.offsetHeight,left:t.ne.x}}function C(){const t=I(window);return{top:t.sw.y,left:t.sw.x-r.offsetWidth}}function _(){const t=I(window);return{top:t.se.y,left:t.se.x}}function k(){const t=o.select(document.createElement("div"));return t.attr("class","d3-tip").style("position","absolute").style("top","0px").style("opacity",0).style("pointer-events","none").style("box-sizing","border-box"),t.node()}function F(t){const o=t.node();return o?"svg"===o.tagName.toLowerCase()?o:o.ownerSVGElement:null}function E(){return null==r&&(r=k(),n().appendChild(r)),o.select(r)}function I(t){let o=a||t;for(;null==o.getCTM&&null!=o.parentNode;)o=o.parentNode;const e={},l=o.getCTM(),i=o.getBBox(),n=i.width,r=i.height,p=i.x,u=i.y;return s.x=p,s.y=u,e.nw=s.matrixTransform(l),s.x+=n,e.ne=s.matrixTransform(l),s.y+=r,e.se=s.matrixTransform(l),s.x-=n,e.sw=s.matrixTransform(l),s.y-=r/2,e.w=s.matrixTransform(l),s.x+=n,e.e=s.matrixTransform(l),s.x-=n/2,s.y-=r/2,e.n=s.matrixTransform(l),s.y+=r,e.s=s.matrixTransform(l),e}function T(t){return"function"==typeof t?t:function(){return t}}return l(b,"directionNorth"),l(m,"directionSouth"),l(g,"directionEast"),l(v,"directionWest"),l(x,"directionNorthWest"),l(w,"directionNorthEast"),l(C,"directionSouthWest"),l(_,"directionSouthEast"),l(k,"initNode"),l(F,"getSVGNode"),l(E,"getNodeEl"),l(I,"getScreenBBox"),l(T,"functor"),u}function f(){if(this.tooltip=c(),this.tooltipLabelFormat_exists()&&(this._labelFormatter=o.format(this.tooltipLabelFormat())),this.tooltipValueFormat_exists()&&(this._valueFormatter=o.format(this.tooltipValueFormat())),this.layerEnter){const t=this.layerEnter;this.layerEnter=function(o,e,l){this._parentOverlay||(this._parentOverlay=o._parentOverlay),this.tooltipEnter(e),t.apply(this,arguments)};const o=this.layerUpdate;this.layerUpdate=function(t){o.apply(this,arguments),this.tooltipUpdate()};const e=this.layerExit;this.layerExit=function(t){this.tooltipExit(),e.apply(this,arguments)}}else{const t=this.enter;this.enter=function(o,e){this.tooltipEnter(e),t.apply(this,arguments)};const o=this.update;this.update=function(t,e){o.apply(this,arguments),this.tooltipUpdate()};const e=this.exit;this.exit=function(t,o){this.tooltipExit(),e.apply(this,arguments)}}}l(i,"I1DChart"),i.prototype._dataFamily="1D",i.prototype._palette=o.Palette.rainbow("default"),i.prototype.click=function(t,o,e){},i.prototype.dblclick=function(t,o,e){},l(n,"I2DChart"),n.prototype._dataFamily="2D",n.prototype._palette=o.Palette.ordinal("default"),n.prototype.fillColor=function(t,o,e,l){return this._palette(t[0])},n.prototype.strokeColor=function(t,e,l,i){return o.hsl(this.fillColor(t,e,l,i)).darker().toString()},n.prototype.textColor=function(t,e,l,i){return o.Palette.textColor(this.fillColor(t,e,l,i))},n.prototype.click=function(t,o,e){},n.prototype.dblclick=function(t,o,e){},l(r,"I2DAggrChart"),r.prototype._palette=o.Palette.rainbow("default"),r.prototype.fillColor=function(t,o,e){return this._palette(t.length)},r.prototype.strokeColor=function(t,e,l){return o.hsl(this.fillColor(t,e,l)).darker().toString()},r.prototype.textColor=function(t,e,l){return o.Palette.textColor(this.fillColor(t,e,l))},r.prototype.click=function(t,o,e){},r.prototype.dblclick=function(t,o,e){},l(p,"IGraph"),p.prototype._dataFamily="graph",p.prototype.vertex_click=function(t,o,e,l){l&&l.vertex},p.prototype.vertex_dblclick=function(t,o,e,l){l&&l.vertex},p.prototype.edge_click=function(t,o,e,l){l&&l.edge},p.prototype.edge_dblclick=function(t,o,e,l){l&&l.edge},l(s,"instanceOfIHighlight"),l(a,"IInput"),a.prototype=Object.create(o.Widget.prototype),a.prototype.constructor=a,a.prototype.isValid=function(){if(this.validate()){if(!new RegExp(this.validate()).test(this.value()))return!1}return!0},a.prototype.hasValue=function(){if("function"==typeof this.type){switch(this.type()){case"radio":case"checkbox":if(this.value()&&"false"!==this.value())return!0;break;default:if(this.value())return!0}return!1}return""!==this.value()},a.prototype.blur=function(t){},a.prototype.keyup=function(t){},a.prototype.focus=function(t){},a.prototype.click=function(t){},a.prototype.dblclick=function(t){},a.prototype.change=function(t,o){},a.prototype.resetValue=function(t){t.value(t._inputElement[0].node().value)},a.prototype.disable=function(t){this._inputElement.forEach(function(o,e){o.attr("disabled",t?"disabled":null)})},a.prototype.setFocus=function(){this._inputElement.length&&this._inputElement[0].node().focus()},a.prototype.publish("name","","string","HTML name for the input"),a.prototype.publish("label","","string","Descriptive label"),a.prototype.publish("value","","string","Input Current Value"),a.prototype.publish("validate",null,"string","Input Validation"),l(u,"INDChart"),u.prototype._dataFamily="ND",u.prototype._palette=o.Palette.ordinal("default"),u.prototype.fillColor=function(t,o,e,l){return this._palette(o)},u.prototype.strokeColor=function(t,e,l,i){return o.hsl(this.fillColor(t,e,l,i)).darker().toString()},u.prototype.textColor=function(t,e,l,i){return o.Palette.textColor(this.fillColor(t,e,l,i))},u.prototype.click=function(t,o,e){},u.prototype.dblclick=function(t,o,e){},l(c,"tip"),l(f,"ITooltip"),f.prototype=Object.create(o.Widget.prototype),f.prototype.constructor=f,f.prototype.tooltipEnter=function(t){const o=this.parentOverlay();o.empty()||this.tooltip.rootElement(o.node().parentNode),t.call(this.tooltip)},f.prototype.tooltipUpdate=function(){this.tooltip.offset(()=>{if(event&&this.tooltipFollowMouse()){const t=document.querySelector(".d3-tip");return t.style.display="block",t.style.left=this.tooltipOffset()+event.clientX+"px",t.style.top=event.clientY+"px",[]}return"e"===this.tooltip.direction()()?[0,this.tooltipOffset()]:[-this.tooltipOffset(),0]});let t=this.tooltip.attr("class");t&&(t=t.split(" notick").join("")+(this.tooltipTick()?"":" notick")+("none"===this.tooltipStyle()?" hidden":""),t=t.split(" ").filter(function(t){return 0!==t.indexOf("ITooltip-tooltipStyle-")}).join(" "),t+=" ITooltip-tooltipStyle-"+this.tooltipStyle(),this.tooltip.attr("class",t))},f.prototype.tooltipExit=function(){this.tooltip&&this.tooltip.destroy()},f.prototype._tooltipHTML=function(t){return t},f.prototype.tooltipHTML=function(t){return this.tooltip.html(t)},f.prototype.tooltipFormat=function(t={}){switch(t.label=void 0===t.label?"":t.label,this._labelFormatter?t.label=this._labelFormatter(t.label)||"":this.formatData&&this.parseData&&(t.label=this.formatData(this.parseData(t.label))),t.series=t.series||"",t.value instanceof Date?t.value=t.value||"":this._valueFormatter?t.value=this._valueFormatter(t.value)||"":this.formatValue&&this.parseValue&&(t.value=this.formatValue(this.parseValue(t.value))),this.tooltipStyle()){case"none":break;case"series-table":let o='<table class="ITooltip-series-table"><thead><tr><th colspan="2">'+t.label+"</th></tr></thead><tbody>";return t.arr.forEach(function(t){o+="<tr>",o+="<td>",o+='<div class="series-table-row-color" style="background-color:'+t.color+'"></div>',o+='<div class="series-table-row-label">'+t.label+"</div>",o+="</td>",o+='<td><div class="series-table-row-value">'+t.value+"</div></td>",o+="</tr>"}),o+="</tbody>",o+="</table>",o;default:return t.series?"<span style='color:"+this.tooltipSeriesColor()+"'>"+t.series+"</span> / <span style='color:"+this.tooltipLabelColor()+"'>"+t.label+"</span>: <span style='color:"+this.tooltipValueColor()+"'>"+t.value+"</span>":""!==t.label?"<span style='color:"+this.tooltipLabelColor()+"'>"+t.label+"</span>: <span style='color:"+this.tooltipValueColor()+"'>"+t.value+"</span>":"<span style='color:"+this.tooltipValueColor()+"'>"+t.value+"</span>"}},f.prototype.tooltipKeyValueFormat=function(t,o){let e="";for(const l in o)if(l!==t){const t=o&&o[l]?o[l]:"";e+=`<tr><td style="${this.tooltipLabelColor_exists()?"color:"+this.tooltipLabelColor():""}">${l}</td><td style="font-weight:normal">${t}</td></tr>`}return`<table>\n <thead>\n <tr><th colspan="2" style="font-weight:bold;font-size:16px">${o[t]}</th></tr>\n </thead>\n <tbody>\n ${e}\n </tbody>\n </table>`},f.prototype.publish("tooltipStyle","default","set","Style mode",["default","none","series-table"],{}),f.prototype.publish("tooltipFollowMouse",!1,"boolean","If true, the tooltip will follow mouse movement",null,{}),f.prototype.publish("tooltipLabelFormat",void 0,"string","Format of tooltip label(s) (the domain axis)",null,{}),f.prototype.publish("tooltipValueFormat",void 0,"string","Number format of tooltip value(s)",null,{}),f.prototype.publish("tooltipSeriesColor","#EAFFFF","html-color","Color of tooltip series text",null,{}),f.prototype.publish("tooltipLabelColor","#CCFFFF","html-color","Color of tooltip label text (the domain axis)",null,{}),f.prototype.publish("tooltipValueColor","white","html-color","Color of tooltip value(s)",null,{}),f.prototype.publish("tooltipTick",!0,"boolean","Show tooltip tick",null,{}),f.prototype.publish("tooltipOffset",8,"number","Offset from the cursor",null,{});const h=f.prototype.tooltipLabelFormat;f.prototype.tooltipLabelFormat=function(t){const e=h.apply(this,arguments);return arguments.length&&(this._labelFormatter=o.format(t)),e};const y=f.prototype.tooltipValueFormat;function d(){}f.prototype.tooltipValueFormat=function(t){const e=y.apply(this,arguments);return arguments.length&&(this._valueFormatter=o.format(t)),e},l(d,"ITree"),d.prototype.constructor=d,d.prototype.click=function(t,o,e){},d.prototype.dblclick=function(t,o,e){},d.prototype._palette=o.Palette.ordinal("default"),t.BUILD_VERSION="3.16.1",t.I1DChart=i,t.I2DAggrChart=r,t.I2DChart=n,t.IGraph=p,t.IInput=a,t.INDChart=u,t.ITooltip=f,t.ITree=d,t.PKG_NAME="@hpcc-js/api",t.PKG_VERSION="3.4.3",t.instanceOfIHighlight=s,Object.defineProperty(t,Symbol.toStringTag,{value:"Module"})});
|
|
2
2
|
//# sourceMappingURL=index.umd.cjs.map
|
|
3
3
|
!function(){"use strict";try{if("undefined"!=typeof document){var t=document.createElement("style");t.appendChild(document.createTextNode('.d3-tip{line-height:1;font-weight:700;padding:12px;background:#000000a8;color:#fff;border-radius:2px;pointer-events:none!important;z-index:10}.d3-tip.hidden{visibility:hidden}.d3-tip:after{content:" ";box-sizing:border-box;display:inline-block;border:4px solid rgba(0,0,0,.66);position:absolute;pointer-events:none!important;width:8px;height:8px;margin:0}.d3-tip.n:after{top:100%;left:calc(50% - 4px);border-top-width:8px;border-right-color:transparent;border-bottom-color:transparent;border-left-color:transparent}.d3-tip.e:after{top:calc(50% - 4px);left:-12px;border-top-color:transparent;border-right-width:8px;border-bottom-color:transparent;border-left-color:transparent}.d3-tip.s{margin-top:8px}.d3-tip.s:after{top:-12px;left:calc(50% - 4px);border-top-color:transparent;border-right-color:transparent;border-bottom-width:8px;border-left-color:transparent}.d3-tip.w:after{top:calc(50% - 4px);left:100%;border-top-color:transparent;border-right-color:transparent;border-bottom-color:transparent;border-left-width:8px}.d3-tip.notick:after{border-color:transparent!important}.common_Widget .over{stroke:#000000a8;opacity:.66}.d3-tip.ITooltip-tooltipStyle-series-table{padding:0}.d3-tip .ITooltip-series-table th,.d3-tip .ITooltip-series-table td{padding:6px;text-align:left;border:1px solid #D1D1D1}.d3-tip .ITooltip-series-table .series-table-row-color{display:inline-block;height:10px;width:10px;margin-right:10px}.d3-tip .ITooltip-series-table .series-table-row-label{display:inline-block}.d3-tip .ITooltip-series-table th{background-color:#b3b3b3}.d3-tip .ITooltip-series-table td{background-color:#fff;color:#555;font-weight:400}.d3-tip .ITooltip-series-table td:first-child{border-right:0}table.ITooltip-series-table td:last-child{border-left:1px dotted #A3A3A3}')),document.head.appendChild(t)}}catch(e){console.error("vite-plugin-css-injected-by-js",e)}}();
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@hpcc-js/api",
|
|
3
|
-
"version": "3.4.
|
|
3
|
+
"version": "3.4.3",
|
|
4
4
|
"description": "hpcc-js - Viz api",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.umd.cjs",
|
|
@@ -37,10 +37,10 @@
|
|
|
37
37
|
"update-major": "npx --yes npm-check-updates -u"
|
|
38
38
|
},
|
|
39
39
|
"dependencies": {
|
|
40
|
-
"@hpcc-js/common": "^3.5.
|
|
40
|
+
"@hpcc-js/common": "^3.5.3"
|
|
41
41
|
},
|
|
42
42
|
"devDependencies": {
|
|
43
|
-
"@hpcc-js/esbuild-plugins": "^1.
|
|
43
|
+
"@hpcc-js/esbuild-plugins": "^1.7.0",
|
|
44
44
|
"d3-collection": "^1",
|
|
45
45
|
"d3-color": "3.1.0",
|
|
46
46
|
"d3-format": "^1",
|
|
@@ -57,5 +57,5 @@
|
|
|
57
57
|
"url": "https://github.com/hpcc-systems/Visualization/issues"
|
|
58
58
|
},
|
|
59
59
|
"homepage": "https://github.com/hpcc-systems/Visualization",
|
|
60
|
-
"gitHead": "
|
|
60
|
+
"gitHead": "0289b8552e19395a8da9b70a154821cf70ce42e7"
|
|
61
61
|
}
|