juxscript 1.1.402 → 1.1.404
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/{components → containers}/c.d.ts.map +1 -1
- package/dist/{components → containers}/c.js.map +1 -1
- package/dist/containers/flex.d.ts +49 -0
- package/dist/containers/flex.d.ts.map +1 -0
- package/dist/containers/flex.js +122 -0
- package/dist/containers/flex.js.map +1 -0
- package/dist/{components → containers}/g.d.ts.map +1 -1
- package/dist/{components → containers}/g.js.map +1 -1
- package/dist/index.d.ts +6 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -4
- package/dist/index.js.map +1 -1
- package/dist/widgets/canvas.d.ts +31 -55
- package/dist/widgets/canvas.d.ts.map +1 -1
- package/dist/widgets/canvas.js +690 -539
- package/dist/widgets/canvas.js.map +1 -1
- package/package.json +1 -1
- package/dist/components/barChart.d.ts +0 -119
- package/dist/components/barChart.d.ts.map +0 -1
- package/dist/components/barChart.js +0 -555
- package/dist/components/barChart.js.map +0 -1
- package/dist/components/container.d.ts +0 -58
- package/dist/components/container.d.ts.map +0 -1
- package/dist/components/container.js +0 -152
- package/dist/components/container.js.map +0 -1
- package/dist/components/grid.d.ts +0 -58
- package/dist/components/grid.d.ts.map +0 -1
- package/dist/components/grid.js +0 -128
- package/dist/components/grid.js.map +0 -1
- package/dist/components/lineChart.d.ts +0 -104
- package/dist/components/lineChart.d.ts.map +0 -1
- package/dist/components/lineChart.js +0 -466
- package/dist/components/lineChart.js.map +0 -1
- package/dist/components/pieChart.d.ts +0 -93
- package/dist/components/pieChart.d.ts.map +0 -1
- package/dist/components/pieChart.js +0 -397
- package/dist/components/pieChart.js.map +0 -1
- package/dist/components/stack.d.ts +0 -42
- package/dist/components/stack.d.ts.map +0 -1
- package/dist/components/stack.js +0 -109
- package/dist/components/stack.js.map +0 -1
- package/dist/devtools/devtools.d.ts +0 -3
- package/dist/devtools/devtools.d.ts.map +0 -1
- package/dist/devtools/devtools.js +0 -182
- package/dist/devtools/devtools.js.map +0 -1
- package/dist/primitives/button.d.ts +0 -53
- package/dist/primitives/button.d.ts.map +0 -1
- package/dist/primitives/button.js +0 -170
- package/dist/primitives/button.js.map +0 -1
- package/dist/primitives/c.d.ts +0 -53
- package/dist/primitives/c.d.ts.map +0 -1
- package/dist/primitives/c.js +0 -127
- package/dist/primitives/c.js.map +0 -1
- package/dist/primitives/checkbox.d.ts +0 -92
- package/dist/primitives/checkbox.d.ts.map +0 -1
- package/dist/primitives/checkbox.js +0 -217
- package/dist/primitives/checkbox.js.map +0 -1
- package/dist/primitives/data.d.ts +0 -58
- package/dist/primitives/data.d.ts.map +0 -1
- package/dist/primitives/data.js +0 -131
- package/dist/primitives/data.js.map +0 -1
- package/dist/primitives/grid.d.ts +0 -58
- package/dist/primitives/grid.d.ts.map +0 -1
- package/dist/primitives/grid.js +0 -128
- package/dist/primitives/grid.js.map +0 -1
- package/dist/primitives/include.d.ts +0 -86
- package/dist/primitives/include.d.ts.map +0 -1
- package/dist/primitives/include.js +0 -239
- package/dist/primitives/include.js.map +0 -1
- package/dist/primitives/indexDb.d.ts +0 -80
- package/dist/primitives/indexDb.d.ts.map +0 -1
- package/dist/primitives/indexDb.js +0 -253
- package/dist/primitives/indexDb.js.map +0 -1
- package/dist/primitives/input.d.ts +0 -88
- package/dist/primitives/input.d.ts.map +0 -1
- package/dist/primitives/input.js +0 -216
- package/dist/primitives/input.js.map +0 -1
- package/dist/primitives/link.d.ts +0 -51
- package/dist/primitives/link.d.ts.map +0 -1
- package/dist/primitives/link.js +0 -178
- package/dist/primitives/link.js.map +0 -1
- package/dist/primitives/list.d.ts +0 -66
- package/dist/primitives/list.d.ts.map +0 -1
- package/dist/primitives/list.js +0 -233
- package/dist/primitives/list.js.map +0 -1
- package/dist/primitives/nav.d.ts +0 -64
- package/dist/primitives/nav.d.ts.map +0 -1
- package/dist/primitives/nav.js +0 -236
- package/dist/primitives/nav.js.map +0 -1
- package/dist/primitives/radio.d.ts +0 -58
- package/dist/primitives/radio.d.ts.map +0 -1
- package/dist/primitives/radio.js +0 -135
- package/dist/primitives/radio.js.map +0 -1
- package/dist/primitives/routes.d.ts +0 -15
- package/dist/primitives/routes.d.ts.map +0 -1
- package/dist/primitives/routes.js +0 -34
- package/dist/primitives/routes.js.map +0 -1
- package/dist/primitives/select.d.ts +0 -67
- package/dist/primitives/select.d.ts.map +0 -1
- package/dist/primitives/select.js +0 -160
- package/dist/primitives/select.js.map +0 -1
- package/dist/primitives/style.d.ts +0 -27
- package/dist/primitives/style.d.ts.map +0 -1
- package/dist/primitives/style.js +0 -53
- package/dist/primitives/style.js.map +0 -1
- package/dist/primitives/table.d.ts +0 -83
- package/dist/primitives/table.d.ts.map +0 -1
- package/dist/primitives/table.js +0 -264
- package/dist/primitives/table.js.map +0 -1
- package/dist/primitives/tabs.d.ts +0 -75
- package/dist/primitives/tabs.d.ts.map +0 -1
- package/dist/primitives/tabs.js +0 -263
- package/dist/primitives/tabs.js.map +0 -1
- package/dist/primitives/tag.d.ts +0 -92
- package/dist/primitives/tag.d.ts.map +0 -1
- package/dist/primitives/tag.js +0 -151
- package/dist/primitives/tag.js.map +0 -1
- package/dist/services/db.d.ts +0 -44
- package/dist/services/db.d.ts.map +0 -1
- package/dist/services/db.js +0 -59
- package/dist/services/db.js.map +0 -1
- package/dist/services/email.d.ts +0 -50
- package/dist/services/email.d.ts.map +0 -1
- package/dist/services/email.js +0 -60
- package/dist/services/email.js.map +0 -1
- package/dist/services/s3.d.ts +0 -61
- package/dist/services/s3.d.ts.map +0 -1
- package/dist/services/s3.js +0 -79
- package/dist/services/s3.js.map +0 -1
- /package/dist/{components → containers}/c.d.ts +0 -0
- /package/dist/{components → containers}/c.js +0 -0
- /package/dist/{components → containers}/g.d.ts +0 -0
- /package/dist/{components → containers}/g.js +0 -0
|
@@ -1,397 +0,0 @@
|
|
|
1
|
-
import { pageState } from '../state/pageState.js';
|
|
2
|
-
import generateId from '../utils/idgen.js';
|
|
3
|
-
import { showTooltip, moveTooltip, hideTooltip, formatTooltipRow } from '../utils/tooltip.js';
|
|
4
|
-
const FONT_FAMILY = `-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif`;
|
|
5
|
-
const TOKENS = {
|
|
6
|
-
muted: 'hsl(215, 16%, 47%)',
|
|
7
|
-
border: 'hsl(220, 13%, 91%)',
|
|
8
|
-
bg: '#ffffff',
|
|
9
|
-
title: 'hsl(222, 47%, 11%)',
|
|
10
|
-
};
|
|
11
|
-
function resolvePalette(colors) {
|
|
12
|
-
if (Array.isArray(colors))
|
|
13
|
-
return colors;
|
|
14
|
-
const palettes = {
|
|
15
|
-
green: ['hsl(142,71%,45%)', 'hsl(142,71%,35%)', 'hsl(142,71%,55%)', 'hsl(142,71%,25%)', 'hsl(142,71%,65%)', 'hsl(142,71%,40%)'],
|
|
16
|
-
blue: ['hsl(217,91%,60%)', 'hsl(217,91%,50%)', 'hsl(217,91%,70%)', 'hsl(217,91%,40%)', 'hsl(217,91%,75%)', 'hsl(217,91%,55%)'],
|
|
17
|
-
warm: ['hsl(25,95%,53%)', 'hsl(15,95%,53%)', 'hsl(35,95%,53%)', 'hsl(5,95%,53%)', 'hsl(45,95%,53%)', 'hsl(20,95%,53%)'],
|
|
18
|
-
cool: ['hsl(199,89%,48%)', 'hsl(210,89%,48%)', 'hsl(188,89%,48%)', 'hsl(220,89%,48%)', 'hsl(195,89%,48%)', 'hsl(205,89%,48%)'],
|
|
19
|
-
multi: ['hsl(217,91%,60%)', 'hsl(142,71%,45%)', 'hsl(25,95%,53%)', 'hsl(280,67%,55%)', 'hsl(199,89%,48%)', 'hsl(350,80%,55%)'],
|
|
20
|
-
};
|
|
21
|
-
return palettes[colors] || palettes['multi'];
|
|
22
|
-
}
|
|
23
|
-
class PieChart {
|
|
24
|
-
constructor(id, values, options = {}) {
|
|
25
|
-
this._resizeObserver = null;
|
|
26
|
-
this._lastClickDetail = null;
|
|
27
|
-
this._onChange = null;
|
|
28
|
-
this._listeners = { click: [] };
|
|
29
|
-
this._hasAnimated = false;
|
|
30
|
-
this.id = id || generateId('pie');
|
|
31
|
-
this._values = values;
|
|
32
|
-
this._opts = {
|
|
33
|
-
title: options.title || '',
|
|
34
|
-
subtitle: options.subtitle || '',
|
|
35
|
-
colors: options.colors || 'multi',
|
|
36
|
-
donut: options.donut ?? false,
|
|
37
|
-
donutWidth: options.donutWidth ?? 0.4,
|
|
38
|
-
showLabels: options.showLabels ?? true,
|
|
39
|
-
showLegend: options.showLegend ?? true,
|
|
40
|
-
showValues: options.showValues ?? false,
|
|
41
|
-
startAngle: options.startAngle ?? -90,
|
|
42
|
-
padAngle: options.padAngle ?? 1,
|
|
43
|
-
animate: options.animate ?? true,
|
|
44
|
-
responsive: options.responsive ?? true,
|
|
45
|
-
...options,
|
|
46
|
-
};
|
|
47
|
-
this._palette = resolvePalette(this._opts.colors || 'multi');
|
|
48
|
-
this._wrapperEl = document.createElement('div');
|
|
49
|
-
this._wrapperEl.id = `${id}-wrapper`;
|
|
50
|
-
this._wrapperEl.style.cssText = 'width:100%;position:relative;box-sizing:border-box;';
|
|
51
|
-
this._stateEl = document.createElement('button');
|
|
52
|
-
this._stateEl.id = id;
|
|
53
|
-
this._stateEl.style.cssText = 'position:absolute;width:0;height:0;overflow:hidden;opacity:0;pointer-events:none;';
|
|
54
|
-
this._wrapperEl.appendChild(this._stateEl);
|
|
55
|
-
}
|
|
56
|
-
// ═══════════════════════════════════════════════════════════
|
|
57
|
-
// FLUENT BUILDER API
|
|
58
|
-
// ═══════════════════════════════════════════════════════════
|
|
59
|
-
title(val) { this._opts.title = val; return this; }
|
|
60
|
-
subtitle(val) { this._opts.subtitle = val; return this; }
|
|
61
|
-
content(val) { this._opts.title = val; return this; }
|
|
62
|
-
disabled(val) { return this; }
|
|
63
|
-
style(val) { this._wrapperEl.setAttribute('style', this._wrapperEl.getAttribute('style') + ';' + val); return this; }
|
|
64
|
-
class(val) { this._wrapperEl.className = val; return this; }
|
|
65
|
-
// ═══════════════════════════════════════════════════════════
|
|
66
|
-
// PAGESTATE INTEGRATION
|
|
67
|
-
// ═══════════════════════════════════════════════════════════
|
|
68
|
-
getValue() { return this._lastClickDetail; }
|
|
69
|
-
setValue(val) { return this; }
|
|
70
|
-
getElement() { return this._stateEl; }
|
|
71
|
-
setContent(val) { return this.content(val); }
|
|
72
|
-
getTitle() { return this._opts.title; }
|
|
73
|
-
getSubtitle() { return this._opts.subtitle; }
|
|
74
|
-
getContent() { return this._opts.title; }
|
|
75
|
-
getDisabled() { return false; }
|
|
76
|
-
getClass() { return this._wrapperEl.className; }
|
|
77
|
-
getStyle() { return this._wrapperEl.getAttribute('style') ?? ''; }
|
|
78
|
-
setTitle(val) { return this.title(val); }
|
|
79
|
-
setSubtitle(val) { return this.subtitle(val); }
|
|
80
|
-
setDisabled(val) { return this.disabled(val); }
|
|
81
|
-
setClass(val) { return this.class(val); }
|
|
82
|
-
setStyle(val) { return this.style(val); }
|
|
83
|
-
onChange(fn) { this._onChange = fn; return this; }
|
|
84
|
-
get state() { return pageState[this.id]; }
|
|
85
|
-
get element() { return this._wrapperEl; }
|
|
86
|
-
// ═══════════════════════════════════════════════════════════
|
|
87
|
-
// CLICK
|
|
88
|
-
// ═══════════════════════════════════════════════════════════
|
|
89
|
-
_handleSliceClick(i) {
|
|
90
|
-
const v = this._values[i];
|
|
91
|
-
const total = this._values.reduce((s, d) => s + d.x, 0);
|
|
92
|
-
const detail = {
|
|
93
|
-
chartId: this.id, index: i,
|
|
94
|
-
label: v.label || `#${i + 1}`, value: v.x,
|
|
95
|
-
percentage: Math.round((v.x / total) * 1000) / 10,
|
|
96
|
-
item: v,
|
|
97
|
-
};
|
|
98
|
-
this._lastClickDetail = detail;
|
|
99
|
-
if (this._opts.onClick)
|
|
100
|
-
this._opts.onClick(detail);
|
|
101
|
-
if (this._onChange)
|
|
102
|
-
this._onChange(detail);
|
|
103
|
-
(this._listeners['click'] || []).forEach(fn => fn(detail));
|
|
104
|
-
this._stateEl.click();
|
|
105
|
-
}
|
|
106
|
-
// ═══════════════════════════════════════════════════════════
|
|
107
|
-
// BUILD
|
|
108
|
-
// ═══════════════════════════════════════════════════════════
|
|
109
|
-
_hasTrend() {
|
|
110
|
-
const { trendTitle, trendSubtitle, autoTrend } = this._opts;
|
|
111
|
-
return !!(trendTitle || trendSubtitle || autoTrend);
|
|
112
|
-
}
|
|
113
|
-
_buildChart(resolvedWidth) {
|
|
114
|
-
this._wrapperEl.innerHTML = '';
|
|
115
|
-
this._wrapperEl.appendChild(this._stateEl);
|
|
116
|
-
const { title, subtitle, donut, donutWidth, showLabels, showLegend, showValues, startAngle, padAngle, animate } = this._opts;
|
|
117
|
-
const shouldAnimate = animate && !this._hasAnimated;
|
|
118
|
-
const values = this._values;
|
|
119
|
-
const palette = this._palette;
|
|
120
|
-
const id = this.id;
|
|
121
|
-
const total = values.reduce((s, d) => s + d.x, 0);
|
|
122
|
-
const scale = resolvedWidth / 500;
|
|
123
|
-
const padding = Math.round(20 * scale);
|
|
124
|
-
const titleSize = Math.max(14, Math.round(18 * scale));
|
|
125
|
-
const subtitleSize = Math.max(11, Math.round(13 * scale));
|
|
126
|
-
const labelSize = Math.max(9, Math.round(11 * scale));
|
|
127
|
-
const headerH = (title ? Math.round(titleSize * 1.4) : 0) + (subtitle ? Math.round(subtitleSize * 1.4) : 0) + padding;
|
|
128
|
-
const legendH = showLegend ? Math.round(labelSize * 2 * Math.ceil(values.length / 3)) + padding : 0;
|
|
129
|
-
const trendH = this._hasTrend() ? Math.round(56 * scale) : 0;
|
|
130
|
-
const chartSize = Math.min(resolvedWidth - padding * 2, resolvedWidth - padding * 2);
|
|
131
|
-
const totalHeight = headerH + chartSize + legendH + padding + trendH;
|
|
132
|
-
this._wrapperEl.style.height = `${totalHeight}px`;
|
|
133
|
-
const card = document.createElement('div');
|
|
134
|
-
card.id = `${id}-card`;
|
|
135
|
-
card.style.cssText = `background:${TOKENS.bg};border:1px solid ${TOKENS.border};border-radius:${Math.round(12 * scale)}px;padding:${padding}px;font-family:${FONT_FAMILY};box-shadow:0 1px 3px rgba(0,0,0,0.04);width:100%;height:100%;box-sizing:border-box;overflow:hidden;`;
|
|
136
|
-
this._wrapperEl.appendChild(card);
|
|
137
|
-
if (title) {
|
|
138
|
-
const t = document.createElement('div');
|
|
139
|
-
t.style.cssText = `font-size:${titleSize}px;font-weight:600;color:${TOKENS.title};margin-bottom:2px;line-height:1.3;`;
|
|
140
|
-
t.textContent = title;
|
|
141
|
-
card.appendChild(t);
|
|
142
|
-
}
|
|
143
|
-
if (subtitle) {
|
|
144
|
-
const s = document.createElement('div');
|
|
145
|
-
s.style.cssText = `font-size:${subtitleSize}px;color:${TOKENS.muted};margin-bottom:${padding}px;line-height:1.3;`;
|
|
146
|
-
s.textContent = subtitle;
|
|
147
|
-
card.appendChild(s);
|
|
148
|
-
}
|
|
149
|
-
// SVG
|
|
150
|
-
const svgNS = 'http://www.w3.org/2000/svg';
|
|
151
|
-
const svgSize = chartSize;
|
|
152
|
-
const svg = document.createElementNS(svgNS, 'svg');
|
|
153
|
-
svg.setAttribute('width', '100%');
|
|
154
|
-
svg.setAttribute('viewBox', `0 0 ${svgSize} ${svgSize}`);
|
|
155
|
-
svg.style.cssText = `display:block;margin:0 auto;${shouldAnimate ? 'transform:scale(0);opacity:0;transition:transform 0.5s cubic-bezier(0.34,1.56,0.64,1),opacity 0.4s ease;' : ''}`;
|
|
156
|
-
card.appendChild(svg);
|
|
157
|
-
const cx = svgSize / 2;
|
|
158
|
-
const cy = svgSize / 2;
|
|
159
|
-
const outerR = svgSize / 2 - Math.round(20 * scale);
|
|
160
|
-
const innerR = donut ? outerR * (1 - donutWidth) : 0;
|
|
161
|
-
const padRad = (padAngle * Math.PI) / 180;
|
|
162
|
-
let currentAngle = (startAngle * Math.PI) / 180;
|
|
163
|
-
const slicePaths = [];
|
|
164
|
-
values.forEach((v, i) => {
|
|
165
|
-
const sliceAngle = (v.x / total) * Math.PI * 2;
|
|
166
|
-
const startA = currentAngle + padRad / 2;
|
|
167
|
-
const endA = currentAngle + sliceAngle - padRad / 2;
|
|
168
|
-
const color = palette[i % palette.length];
|
|
169
|
-
const x1 = cx + outerR * Math.cos(startA);
|
|
170
|
-
const y1 = cy + outerR * Math.sin(startA);
|
|
171
|
-
const x2 = cx + outerR * Math.cos(endA);
|
|
172
|
-
const y2 = cy + outerR * Math.sin(endA);
|
|
173
|
-
const largeArc = sliceAngle > Math.PI ? 1 : 0;
|
|
174
|
-
let d;
|
|
175
|
-
if (donut) {
|
|
176
|
-
const ix1 = cx + innerR * Math.cos(startA);
|
|
177
|
-
const iy1 = cy + innerR * Math.sin(startA);
|
|
178
|
-
const ix2 = cx + innerR * Math.cos(endA);
|
|
179
|
-
const iy2 = cy + innerR * Math.sin(endA);
|
|
180
|
-
d = `M ${x1} ${y1} A ${outerR} ${outerR} 0 ${largeArc} 1 ${x2} ${y2} L ${ix2} ${iy2} A ${innerR} ${innerR} 0 ${largeArc} 0 ${ix1} ${iy1} Z`;
|
|
181
|
-
}
|
|
182
|
-
else {
|
|
183
|
-
d = `M ${cx} ${cy} L ${x1} ${y1} A ${outerR} ${outerR} 0 ${largeArc} 1 ${x2} ${y2} Z`;
|
|
184
|
-
}
|
|
185
|
-
const path = document.createElementNS(svgNS, 'path');
|
|
186
|
-
path.setAttribute('d', d);
|
|
187
|
-
path.setAttribute('fill', color);
|
|
188
|
-
path.style.cssText = `cursor:pointer;opacity:0.85;transition:opacity 0.15s ease,transform 0.15s ease;transform-origin:${cx}px ${cy}px;`;
|
|
189
|
-
path.addEventListener('mouseenter', (e) => {
|
|
190
|
-
path.style.opacity = '1';
|
|
191
|
-
path.style.transform = 'scale(1.03)';
|
|
192
|
-
const lbl = v.label || `#${i + 1}`;
|
|
193
|
-
const pct = Math.round((v.x / total) * 1000) / 10;
|
|
194
|
-
let html = `<div style="font-weight:600;margin-bottom:2px;">${lbl}</div>`;
|
|
195
|
-
html += formatTooltipRow('Value', v.x, color);
|
|
196
|
-
html += formatTooltipRow('Share', `${pct}%`);
|
|
197
|
-
showTooltip(e, html);
|
|
198
|
-
});
|
|
199
|
-
path.addEventListener('mousemove', (e) => moveTooltip(e));
|
|
200
|
-
path.addEventListener('mouseleave', () => {
|
|
201
|
-
path.style.opacity = '0.85';
|
|
202
|
-
path.style.transform = 'scale(1)';
|
|
203
|
-
hideTooltip();
|
|
204
|
-
});
|
|
205
|
-
path.addEventListener('click', () => this._handleSliceClick(i));
|
|
206
|
-
svg.appendChild(path);
|
|
207
|
-
// Labels on slices
|
|
208
|
-
if (showLabels) {
|
|
209
|
-
const midA = startA + sliceAngle / 2;
|
|
210
|
-
const labelR = donut ? (outerR + innerR) / 2 : outerR * 0.65;
|
|
211
|
-
const lx = cx + labelR * Math.cos(midA);
|
|
212
|
-
const ly = cy + labelR * Math.sin(midA);
|
|
213
|
-
const pct = Math.round((v.x / total) * 100);
|
|
214
|
-
if (pct > 5) {
|
|
215
|
-
const nameText = document.createElementNS(svgNS, 'text');
|
|
216
|
-
nameText.setAttribute('x', String(lx));
|
|
217
|
-
nameText.setAttribute('y', String(ly - labelSize * 0.5));
|
|
218
|
-
nameText.setAttribute('text-anchor', 'middle');
|
|
219
|
-
nameText.setAttribute('dominant-baseline', 'central');
|
|
220
|
-
nameText.setAttribute('font-size', String(labelSize));
|
|
221
|
-
nameText.setAttribute('fill', '#fff');
|
|
222
|
-
nameText.setAttribute('font-weight', '600');
|
|
223
|
-
nameText.textContent = v.label || `#${i + 1}`;
|
|
224
|
-
nameText.style.pointerEvents = 'none';
|
|
225
|
-
svg.appendChild(nameText);
|
|
226
|
-
const valText = document.createElementNS(svgNS, 'text');
|
|
227
|
-
valText.setAttribute('x', String(lx));
|
|
228
|
-
valText.setAttribute('y', String(ly + labelSize * 0.8));
|
|
229
|
-
valText.setAttribute('text-anchor', 'middle');
|
|
230
|
-
valText.setAttribute('dominant-baseline', 'central');
|
|
231
|
-
valText.setAttribute('font-size', String(Math.max(8, labelSize - 1)));
|
|
232
|
-
valText.setAttribute('fill', 'rgba(255,255,255,0.85)');
|
|
233
|
-
valText.setAttribute('font-weight', '400');
|
|
234
|
-
valText.textContent = showValues ? String(v.x) : `${pct}%`;
|
|
235
|
-
valText.style.pointerEvents = 'none';
|
|
236
|
-
svg.appendChild(valText);
|
|
237
|
-
}
|
|
238
|
-
else if (pct > 2) {
|
|
239
|
-
const text = document.createElementNS(svgNS, 'text');
|
|
240
|
-
text.setAttribute('x', String(lx));
|
|
241
|
-
text.setAttribute('y', String(ly));
|
|
242
|
-
text.setAttribute('text-anchor', 'middle');
|
|
243
|
-
text.setAttribute('dominant-baseline', 'central');
|
|
244
|
-
text.setAttribute('font-size', String(Math.max(7, labelSize - 2)));
|
|
245
|
-
text.setAttribute('fill', '#fff');
|
|
246
|
-
text.setAttribute('font-weight', '600');
|
|
247
|
-
text.textContent = `${pct}%`;
|
|
248
|
-
text.style.pointerEvents = 'none';
|
|
249
|
-
svg.appendChild(text);
|
|
250
|
-
}
|
|
251
|
-
}
|
|
252
|
-
currentAngle += sliceAngle;
|
|
253
|
-
});
|
|
254
|
-
// Inner label for donut
|
|
255
|
-
if (donut && this._opts.innerLabel) {
|
|
256
|
-
const text = document.createElementNS(svgNS, 'text');
|
|
257
|
-
text.setAttribute('x', String(cx));
|
|
258
|
-
text.setAttribute('y', String(cy));
|
|
259
|
-
text.setAttribute('text-anchor', 'middle');
|
|
260
|
-
text.setAttribute('dominant-baseline', 'central');
|
|
261
|
-
text.setAttribute('font-size', String(Math.round(18 * scale)));
|
|
262
|
-
text.setAttribute('fill', TOKENS.title);
|
|
263
|
-
text.setAttribute('font-weight', '600');
|
|
264
|
-
text.textContent = this._opts.innerLabel;
|
|
265
|
-
svg.appendChild(text);
|
|
266
|
-
}
|
|
267
|
-
// Legend
|
|
268
|
-
if (showLegend) {
|
|
269
|
-
const legendDiv = document.createElement('div');
|
|
270
|
-
legendDiv.style.cssText = `display:flex;flex-wrap:wrap;gap:${Math.round(8 * scale)}px ${Math.round(16 * scale)}px;padding-top:${padding}px;justify-content:center;`;
|
|
271
|
-
values.forEach((v, i) => {
|
|
272
|
-
const item = document.createElement('div');
|
|
273
|
-
item.style.cssText = `display:flex;align-items:center;gap:4px;font-size:${labelSize}px;color:${TOKENS.muted};`;
|
|
274
|
-
const dot = document.createElement('span');
|
|
275
|
-
dot.style.cssText = `width:${Math.round(10 * scale)}px;height:${Math.round(10 * scale)}px;border-radius:50%;background:${palette[i % palette.length]};flex-shrink:0;`;
|
|
276
|
-
item.appendChild(dot);
|
|
277
|
-
const lbl = document.createElement('span');
|
|
278
|
-
lbl.textContent = v.label || `#${i + 1}`;
|
|
279
|
-
item.appendChild(lbl);
|
|
280
|
-
legendDiv.appendChild(item);
|
|
281
|
-
});
|
|
282
|
-
card.appendChild(legendDiv);
|
|
283
|
-
}
|
|
284
|
-
// Trend footer
|
|
285
|
-
this._renderTrend(card, scale, padding);
|
|
286
|
-
// Single scale-up animation for the whole chart
|
|
287
|
-
if (shouldAnimate) {
|
|
288
|
-
this._hasAnimated = true;
|
|
289
|
-
requestAnimationFrame(() => {
|
|
290
|
-
svg.style.transform = 'scale(1)';
|
|
291
|
-
svg.style.opacity = '1';
|
|
292
|
-
});
|
|
293
|
-
}
|
|
294
|
-
}
|
|
295
|
-
_renderTrend(card, scale, padding) {
|
|
296
|
-
const { trendTitle, trendSubtitle, trendIcon, autoTrend } = this._opts;
|
|
297
|
-
let title = trendTitle;
|
|
298
|
-
let subtitle = trendSubtitle;
|
|
299
|
-
let icon = trendIcon;
|
|
300
|
-
if (autoTrend && !title) {
|
|
301
|
-
const vals = this._values.map(v => v.x);
|
|
302
|
-
const labels = this._values.map(v => v.label || '');
|
|
303
|
-
const total = vals.reduce((s, v) => s + v, 0);
|
|
304
|
-
const maxItem = this._values.reduce((a, b) => a.x > b.x ? a : b);
|
|
305
|
-
const pct = Math.round((maxItem.x / total) * 100);
|
|
306
|
-
title = `${maxItem.label || 'Top'} leads with ${pct}%`;
|
|
307
|
-
subtitle = subtitle || `Total: ${total.toLocaleString()} across ${vals.length} categories`;
|
|
308
|
-
icon = icon || '🥇';
|
|
309
|
-
}
|
|
310
|
-
if (!title && !subtitle)
|
|
311
|
-
return;
|
|
312
|
-
const fontSize = Math.max(11, Math.round(13 * scale));
|
|
313
|
-
const subFontSize = Math.max(10, Math.round(11 * scale));
|
|
314
|
-
const footer = document.createElement('div');
|
|
315
|
-
footer.style.cssText = `padding-top:${Math.round(8 * scale)}px;border-top:1px solid hsl(220,13%,93%);margin-top:${Math.round(8 * scale)}px;`;
|
|
316
|
-
if (title) {
|
|
317
|
-
const titleEl = document.createElement('div');
|
|
318
|
-
titleEl.style.cssText = `font-size:${fontSize}px;font-weight:500;color:hsl(222,47%,11%);line-height:1.4;`;
|
|
319
|
-
titleEl.textContent = `${title}${icon ? ' ' + icon : ''}`;
|
|
320
|
-
footer.appendChild(titleEl);
|
|
321
|
-
}
|
|
322
|
-
if (subtitle) {
|
|
323
|
-
const subEl = document.createElement('div');
|
|
324
|
-
subEl.style.cssText = `font-size:${subFontSize}px;color:hsl(215,16%,47%);line-height:1.4;margin-top:1px;`;
|
|
325
|
-
subEl.textContent = subtitle;
|
|
326
|
-
footer.appendChild(subEl);
|
|
327
|
-
}
|
|
328
|
-
card.appendChild(footer);
|
|
329
|
-
}
|
|
330
|
-
// ═══════════════════════════════════════════════════════════
|
|
331
|
-
// PUBLIC API
|
|
332
|
-
// ═══════════════════════════════════════════════════════════
|
|
333
|
-
render(target) {
|
|
334
|
-
let parent = null;
|
|
335
|
-
if (target && typeof target === 'object' && 'element' in target)
|
|
336
|
-
parent = target.element;
|
|
337
|
-
else if (target instanceof HTMLElement)
|
|
338
|
-
parent = target;
|
|
339
|
-
else if (typeof target === 'string')
|
|
340
|
-
parent = document.getElementById(target) || document.querySelector(target);
|
|
341
|
-
else
|
|
342
|
-
parent = document.getElementById('app');
|
|
343
|
-
if (!parent)
|
|
344
|
-
return this;
|
|
345
|
-
parent.appendChild(this._wrapperEl);
|
|
346
|
-
const w = this._opts.responsive ? (this._wrapperEl.clientWidth || parent.clientWidth || this._opts.width || 500) : (this._opts.width || 500);
|
|
347
|
-
this._buildChart(w);
|
|
348
|
-
if (this._opts.responsive && typeof ResizeObserver !== 'undefined') {
|
|
349
|
-
let t;
|
|
350
|
-
let skipCount = 2; // skip initial observer fires
|
|
351
|
-
const ro = new ResizeObserver(() => {
|
|
352
|
-
if (skipCount > 0) {
|
|
353
|
-
skipCount--;
|
|
354
|
-
return;
|
|
355
|
-
}
|
|
356
|
-
clearTimeout(t);
|
|
357
|
-
t = setTimeout(() => {
|
|
358
|
-
const nw = this._wrapperEl.clientWidth;
|
|
359
|
-
if (nw > 0)
|
|
360
|
-
this._buildChart(nw);
|
|
361
|
-
}, 200);
|
|
362
|
-
});
|
|
363
|
-
ro.observe(this._wrapperEl);
|
|
364
|
-
this._resizeObserver = ro;
|
|
365
|
-
}
|
|
366
|
-
return this;
|
|
367
|
-
}
|
|
368
|
-
into(target) { return this.render(target); }
|
|
369
|
-
on(event, fn) {
|
|
370
|
-
if (!this._listeners[event])
|
|
371
|
-
this._listeners[event] = [];
|
|
372
|
-
this._listeners[event].push(fn);
|
|
373
|
-
return this;
|
|
374
|
-
}
|
|
375
|
-
off(event, fn) {
|
|
376
|
-
if (this._listeners[event])
|
|
377
|
-
this._listeners[event] = this._listeners[event].filter(f => f !== fn);
|
|
378
|
-
return this;
|
|
379
|
-
}
|
|
380
|
-
destroy() {
|
|
381
|
-
if (this._resizeObserver)
|
|
382
|
-
this._resizeObserver.disconnect();
|
|
383
|
-
pageState.__unregister(this.id);
|
|
384
|
-
this._wrapperEl.remove();
|
|
385
|
-
}
|
|
386
|
-
}
|
|
387
|
-
// ═══════════════════════════════════════════════════════════
|
|
388
|
-
// FACTORY
|
|
389
|
-
// ═══════════════════════════════════════════════════════════
|
|
390
|
-
export function pieChart(id, values, options = {}) {
|
|
391
|
-
const chart = new PieChart(id, values, options);
|
|
392
|
-
pageState.__register(chart);
|
|
393
|
-
return chart;
|
|
394
|
-
}
|
|
395
|
-
export { PieChart };
|
|
396
|
-
export default pieChart;
|
|
397
|
-
//# sourceMappingURL=pieChart.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"pieChart.js","sourceRoot":"","sources":["../../lib/components/pieChart.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
interface cOptions {
|
|
2
|
-
id?: string;
|
|
3
|
-
class?: string;
|
|
4
|
-
style?: string;
|
|
5
|
-
padding?: string;
|
|
6
|
-
target?: string;
|
|
7
|
-
[key: string]: any;
|
|
8
|
-
}
|
|
9
|
-
interface rOptions {
|
|
10
|
-
id?: string;
|
|
11
|
-
class?: string;
|
|
12
|
-
style?: string;
|
|
13
|
-
target?: string;
|
|
14
|
-
[key: string]: any;
|
|
15
|
-
}
|
|
16
|
-
declare class Stack {
|
|
17
|
-
private _element;
|
|
18
|
-
opts: cOptions & rOptions;
|
|
19
|
-
constructor(id?: string);
|
|
20
|
-
get element(): HTMLElement;
|
|
21
|
-
id(value: string): this;
|
|
22
|
-
class(value: string): this;
|
|
23
|
-
style(css: string): this;
|
|
24
|
-
padding(value: string): this;
|
|
25
|
-
target(value: string): this;
|
|
26
|
-
getId(): string;
|
|
27
|
-
getClass(): string;
|
|
28
|
-
getStyle(): string;
|
|
29
|
-
getPadding(): string;
|
|
30
|
-
getTarget(): string;
|
|
31
|
-
getElement(): HTMLElement;
|
|
32
|
-
setId(val: string): this;
|
|
33
|
-
setClass(val: string): this;
|
|
34
|
-
setStyle(val: string): this;
|
|
35
|
-
setPadding(val: string): this;
|
|
36
|
-
setTarget(val: string): this;
|
|
37
|
-
render(target?: string | HTMLElement | Stack): this;
|
|
38
|
-
}
|
|
39
|
-
export declare function r(height?: string, options?: rOptions): Stack;
|
|
40
|
-
export declare function c(width: string, height?: string, options?: cOptions): Stack;
|
|
41
|
-
export { Stack as stack };
|
|
42
|
-
//# sourceMappingURL=stack.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"stack.d.ts","sourceRoot":"","sources":["../../lib/components/stack.ts"],"names":[],"mappings":"AAEA,UAAU,QAAQ;IACd,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACtB;AAED,UAAU,QAAQ;IACd,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACtB;AAED,cAAM,KAAK;IACP,OAAO,CAAC,QAAQ,CAAc;IAC9B,IAAI,EAAE,QAAQ,GAAG,QAAQ,CAAC;gBAEd,EAAE,CAAC,EAAE,MAAM;IAMvB,IAAI,OAAO,IAAI,WAAW,CAEzB;IAMD,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAMvB,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAM1B,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAOxB,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAM5B,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAS3B,KAAK,IAAI,MAAM;IACf,QAAQ,IAAI,MAAM;IAClB,QAAQ,IAAI,MAAM;IAClB,UAAU,IAAI,MAAM;IACpB,SAAS,IAAI,MAAM;IACnB,UAAU,IAAI,WAAW;IAEzB,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IACxB,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAC3B,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAC3B,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAC7B,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAE5B,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,WAAW,GAAG,KAAK;CAY/C;AAED,wBAAgB,CAAC,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,QAAQ,GAAG,KAAK,CAc5D;AAED,wBAAgB,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,QAAQ,GAAG,KAAK,CAgB3E;AAED,OAAO,EAAE,KAAK,IAAI,KAAK,EAAE,CAAC"}
|
package/dist/components/stack.js
DELETED
|
@@ -1,109 +0,0 @@
|
|
|
1
|
-
import generateId from "../utils/idgen.js";
|
|
2
|
-
class Stack {
|
|
3
|
-
constructor(id) {
|
|
4
|
-
this._element = document.createElement('div');
|
|
5
|
-
this._element.id = id || generateId('stk');
|
|
6
|
-
this.opts = {};
|
|
7
|
-
}
|
|
8
|
-
get element() {
|
|
9
|
-
return this._element;
|
|
10
|
-
}
|
|
11
|
-
// ═══════════════════════════════════════════════════════════
|
|
12
|
-
// FLUENT BUILDER API
|
|
13
|
-
// ═══════════════════════════════════════════════════════════
|
|
14
|
-
id(value) {
|
|
15
|
-
this.opts.id = value;
|
|
16
|
-
this._element.id = value;
|
|
17
|
-
return this;
|
|
18
|
-
}
|
|
19
|
-
class(value) {
|
|
20
|
-
this.opts.class = value;
|
|
21
|
-
this._element.className = value;
|
|
22
|
-
return this;
|
|
23
|
-
}
|
|
24
|
-
style(css) {
|
|
25
|
-
this.opts.style = css;
|
|
26
|
-
const existing = this._element.getAttribute('style') || '';
|
|
27
|
-
this._element.setAttribute('style', existing + ';' + css);
|
|
28
|
-
return this;
|
|
29
|
-
}
|
|
30
|
-
padding(value) {
|
|
31
|
-
this.opts.padding = value;
|
|
32
|
-
this._element.style.padding = value;
|
|
33
|
-
return this;
|
|
34
|
-
}
|
|
35
|
-
target(value) {
|
|
36
|
-
this.opts.target = value;
|
|
37
|
-
return this;
|
|
38
|
-
}
|
|
39
|
-
// ═══════════════════════════════════════════════════════════
|
|
40
|
-
// GETTERS / SETTERS (delegators)
|
|
41
|
-
// ═══════════════════════════════════════════════════════════
|
|
42
|
-
getId() { return this.opts.id ?? this._element.id; }
|
|
43
|
-
getClass() { return this.opts.class ?? ''; }
|
|
44
|
-
getStyle() { return this.opts.style ?? ''; }
|
|
45
|
-
getPadding() { return this.opts.padding ?? ''; }
|
|
46
|
-
getTarget() { return this.opts.target ?? ''; }
|
|
47
|
-
getElement() { return this._element; }
|
|
48
|
-
setId(val) { return this.id(val); }
|
|
49
|
-
setClass(val) { return this.class(val); }
|
|
50
|
-
setStyle(val) { return this.style(val); }
|
|
51
|
-
setPadding(val) { return this.padding(val); }
|
|
52
|
-
setTarget(val) { return this.target(val); }
|
|
53
|
-
render(target) {
|
|
54
|
-
let parent;
|
|
55
|
-
if (target instanceof Stack) {
|
|
56
|
-
parent = target.element;
|
|
57
|
-
}
|
|
58
|
-
else if (typeof target === 'string') {
|
|
59
|
-
parent = document.getElementById(target);
|
|
60
|
-
}
|
|
61
|
-
else {
|
|
62
|
-
parent = target || document.getElementById('app');
|
|
63
|
-
}
|
|
64
|
-
parent?.appendChild(this._element);
|
|
65
|
-
return this;
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
export function r(height, options) {
|
|
69
|
-
const s = new Stack(options?.id);
|
|
70
|
-
const el = s.element;
|
|
71
|
-
el.style.width = '100%';
|
|
72
|
-
el.style.overflow = 'hidden'; // clearfix for floated children
|
|
73
|
-
if (height)
|
|
74
|
-
el.style.height = height;
|
|
75
|
-
if (options?.class)
|
|
76
|
-
el.className = options.class;
|
|
77
|
-
if (options?.style)
|
|
78
|
-
el.setAttribute('style', el.getAttribute('style') + ';' + options.style);
|
|
79
|
-
if (options?.target) {
|
|
80
|
-
s.render(options.target);
|
|
81
|
-
}
|
|
82
|
-
else {
|
|
83
|
-
s.render();
|
|
84
|
-
}
|
|
85
|
-
return s;
|
|
86
|
-
}
|
|
87
|
-
export function c(width, height, options) {
|
|
88
|
-
const s = new Stack(options?.id);
|
|
89
|
-
const el = s.element;
|
|
90
|
-
el.style.boxSizing = 'border-box';
|
|
91
|
-
el.style.float = 'left';
|
|
92
|
-
el.style.width = width;
|
|
93
|
-
el.style.height = height || 'inherit';
|
|
94
|
-
if (options?.padding)
|
|
95
|
-
el.style.padding = options.padding;
|
|
96
|
-
if (options?.class)
|
|
97
|
-
el.className = options.class;
|
|
98
|
-
if (options?.style)
|
|
99
|
-
el.setAttribute('style', el.getAttribute('style') + ';' + options.style);
|
|
100
|
-
if (options?.target) {
|
|
101
|
-
s.render(options.target);
|
|
102
|
-
}
|
|
103
|
-
else {
|
|
104
|
-
s.render();
|
|
105
|
-
}
|
|
106
|
-
return s;
|
|
107
|
-
}
|
|
108
|
-
export { Stack as stack };
|
|
109
|
-
//# sourceMappingURL=stack.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"stack.js","sourceRoot":"","sources":["../../lib/components/stack.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,mBAAmB,CAAC;AAmB3C,MAAM,KAAK;IAIP,YAAY,EAAW;QACnB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC9C,IAAI,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAE,IAAI,UAAU,CAAC,KAAK,CAAC,CAAC;QAC3C,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC;IACnB,CAAC;IAED,IAAI,OAAO;QACP,OAAO,IAAI,CAAC,QAAQ,CAAC;IACzB,CAAC;IAED,8DAA8D;IAC9D,qBAAqB;IACrB,8DAA8D;IAE9D,EAAE,CAAC,KAAa;QACZ,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,KAAK,CAAC;QACrB,IAAI,CAAC,QAAQ,CAAC,EAAE,GAAG,KAAK,CAAC;QACzB,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,KAAa;QACf,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACxB,IAAI,CAAC,QAAQ,CAAC,SAAS,GAAG,KAAK,CAAC;QAChC,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,GAAW;QACb,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC;QACtB,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QAC3D,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,OAAO,EAAE,QAAQ,GAAG,GAAG,GAAG,GAAG,CAAC,CAAC;QAC1D,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,OAAO,CAAC,KAAa;QACjB,IAAI,CAAC,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QAC1B,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC;QACpC,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,MAAM,CAAC,KAAa;QAChB,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACzB,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,8DAA8D;IAC9D,iCAAiC;IACjC,8DAA8D;IAE9D,KAAK,KAAa,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC;IAC5D,QAAQ,KAAa,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC;IACpD,QAAQ,KAAa,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC;IACpD,UAAU,KAAa,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC;IACxD,SAAS,KAAa,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,CAAC;IACtD,UAAU,KAAkB,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEnD,KAAK,CAAC,GAAW,IAAU,OAAO,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACjD,QAAQ,CAAC,GAAW,IAAU,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACvD,QAAQ,CAAC,GAAW,IAAU,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACvD,UAAU,CAAC,GAAW,IAAU,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAC3D,SAAS,CAAC,GAAW,IAAU,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAEzD,MAAM,CAAC,MAAqC;QACxC,IAAI,MAA0B,CAAC;QAC/B,IAAI,MAAM,YAAY,KAAK,EAAE,CAAC;YAC1B,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC;QAC5B,CAAC;aAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;YACpC,MAAM,GAAG,QAAQ,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QAC7C,CAAC;aAAM,CAAC;YACJ,MAAM,GAAG,MAAM,IAAI,QAAQ,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;QACtD,CAAC;QACD,MAAM,EAAE,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACnC,OAAO,IAAI,CAAC;IAChB,CAAC;CACJ;AAED,MAAM,UAAU,CAAC,CAAC,MAAe,EAAE,OAAkB;IACjD,MAAM,CAAC,GAAG,IAAI,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IACjC,MAAM,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC;IACrB,EAAE,CAAC,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC;IACxB,EAAE,CAAC,KAAK,CAAC,QAAQ,GAAG,QAAQ,CAAC,CAAC,gCAAgC;IAC9D,IAAI,MAAM;QAAE,EAAE,CAAC,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC;IACrC,IAAI,OAAO,EAAE,KAAK;QAAE,EAAE,CAAC,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC;IACjD,IAAI,OAAO,EAAE,KAAK;QAAE,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;IAC7F,IAAI,OAAO,EAAE,MAAM,EAAE,CAAC;QAClB,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC7B,CAAC;SAAM,CAAC;QACJ,CAAC,CAAC,MAAM,EAAE,CAAC;IACf,CAAC;IACD,OAAO,CAAC,CAAC;AACb,CAAC;AAED,MAAM,UAAU,CAAC,CAAC,KAAa,EAAE,MAAe,EAAE,OAAkB;IAChE,MAAM,CAAC,GAAG,IAAI,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IACjC,MAAM,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC;IACrB,EAAE,CAAC,KAAK,CAAC,SAAS,GAAG,YAAY,CAAC;IAClC,EAAE,CAAC,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC;IACxB,EAAE,CAAC,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC;IACvB,EAAE,CAAC,KAAK,CAAC,MAAM,GAAG,MAAM,IAAI,SAAS,CAAC;IACtC,IAAI,OAAO,EAAE,OAAO;QAAE,EAAE,CAAC,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IACzD,IAAI,OAAO,EAAE,KAAK;QAAE,EAAE,CAAC,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC;IACjD,IAAI,OAAO,EAAE,KAAK;QAAE,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;IAC7F,IAAI,OAAO,EAAE,MAAM,EAAE,CAAC;QAClB,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC7B,CAAC;SAAM,CAAC;QACJ,CAAC,CAAC,MAAM,EAAE,CAAC;IACf,CAAC;IACD,OAAO,CAAC,CAAC;AACb,CAAC;AAED,OAAO,EAAE,KAAK,IAAI,KAAK,EAAE,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"devtools.d.ts","sourceRoot":"","sources":["../../lib/devtools/devtools.ts"],"names":[],"mappings":"AAoJA,wBAAgB,QAAQ,CAAC,IAAI,GAAE,OAAc,GAAG,IAAI,CA0CnD;AAED,eAAe,QAAQ,CAAC"}
|