@zerops/web-components 0.1.0 → 0.2.1
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/README.md +1 -0
- package/chunks/{browser-CRtUYvv5.js → browser-CUhuh3a-.js} +1 -1
- package/chunks/custom-icons-Bw6Z3FPe.js +1532 -0
- package/chunks/{recipe-fetch-BEQGCaPU.js → recipe-fetch-D2IpKMVr.js} +589 -697
- package/network-diagram.d.ts +7 -0
- package/network-diagram.js +570 -533
- package/package.json +1 -1
- package/recipe-card.js +1 -1
- package/recipes/zerops-showcase.json +1 -1
package/network-diagram.js
CHANGED
|
@@ -1,18 +1,18 @@
|
|
|
1
|
-
var
|
|
1
|
+
var Pe = (t) => {
|
|
2
2
|
throw TypeError(t);
|
|
3
3
|
};
|
|
4
|
-
var
|
|
5
|
-
var
|
|
6
|
-
var
|
|
4
|
+
var ae = (t, e, n) => e.has(t) || Pe("Cannot " + n);
|
|
5
|
+
var l = (t, e, n) => (ae(t, e, "read from private field"), n ? n.call(t) : e.get(t)), $ = (t, e, n) => e.has(t) ? Pe("Cannot add the same private member more than once") : e instanceof WeakSet ? e.add(t) : e.set(t, n), h = (t, e, n, o) => (ae(t, e, "write to private field"), o ? o.call(t, n) : e.set(t, n), n), C = (t, e, n) => (ae(t, e, "access private method"), n);
|
|
6
|
+
var Oe = (t, e, n, o) => ({
|
|
7
7
|
set _(i) {
|
|
8
|
-
|
|
8
|
+
h(t, e, i, n);
|
|
9
9
|
},
|
|
10
10
|
get _() {
|
|
11
|
-
return
|
|
11
|
+
return l(t, e, o);
|
|
12
12
|
}
|
|
13
13
|
});
|
|
14
|
-
import { aa as
|
|
15
|
-
const
|
|
14
|
+
import { aa as E, at as j, r as ee, bl as Ve, au as Ge, av as We, ax as G, aA as W, ba as He, bb as bn, aw as m, aC as N, ay as g, aB as P, az as s, aD as mn, bh as R, bN as Q, bi as L, aF as Se, a3 as u, ao as T, B as un, l as Bn, b0 as ze, bA as Kn, n as De, F as Ne, b7 as Ze, b9 as Ue, bL as Gn, bm as de, ak as en, bt as Je, bs as Ye, bZ as Ee, b_ as Qe, bq as Xe, j as Ke, bT as nt, J as et, bW as tt, bU as ot, bV as it, bX as at, bY as rt } from "./chunks/recipe-fetch-D2IpKMVr.js";
|
|
15
|
+
const ke = {
|
|
16
16
|
endpoint: "https://my-app.com",
|
|
17
17
|
infrastructure: {
|
|
18
18
|
ctrl: { active: 1, standby: 1 },
|
|
@@ -68,152 +68,152 @@ const Pe = {
|
|
|
68
68
|
sublabel: "storage:6379"
|
|
69
69
|
}
|
|
70
70
|
};
|
|
71
|
-
function
|
|
72
|
-
if (t & 1 && (m(0, "div", 0)(1, "span", 7),
|
|
73
|
-
const n =
|
|
74
|
-
s(2),
|
|
71
|
+
function st(t, e) {
|
|
72
|
+
if (t & 1 && (m(0, "div", 0)(1, "span", 7), N(2), g()()), t & 2) {
|
|
73
|
+
const n = P();
|
|
74
|
+
s(2), mn(n.label());
|
|
75
75
|
}
|
|
76
76
|
}
|
|
77
|
-
function
|
|
78
|
-
if (t & 1 &&
|
|
79
|
-
const n =
|
|
80
|
-
|
|
77
|
+
function ct(t, e) {
|
|
78
|
+
if (t & 1 && u(0, "zui-bar-icon", 9), t & 2) {
|
|
79
|
+
const n = P(2);
|
|
80
|
+
T("color", n.barColor())("active", !0);
|
|
81
81
|
}
|
|
82
82
|
}
|
|
83
|
-
function
|
|
84
|
-
if (t & 1 &&
|
|
85
|
-
const n =
|
|
86
|
-
|
|
83
|
+
function lt(t, e) {
|
|
84
|
+
if (t & 1 && u(0, "zui-bar-icon", 9), t & 2) {
|
|
85
|
+
const n = P(2);
|
|
86
|
+
T("color", n.barColor())("active", !1);
|
|
87
87
|
}
|
|
88
88
|
}
|
|
89
|
-
function
|
|
90
|
-
if (t & 1 &&
|
|
89
|
+
function dt(t, e) {
|
|
90
|
+
if (t & 1 && u(0, "mat-icon", 12), t & 2) {
|
|
91
91
|
const n = e.$implicit;
|
|
92
|
-
|
|
92
|
+
T("svgIcon", n);
|
|
93
93
|
}
|
|
94
94
|
}
|
|
95
|
-
function
|
|
96
|
-
if (t & 1 &&
|
|
97
|
-
const n =
|
|
98
|
-
|
|
95
|
+
function ht(t, e) {
|
|
96
|
+
if (t & 1 && R(0, dt, 1, 1, "mat-icon", 12, Q), t & 2) {
|
|
97
|
+
const n = P(2);
|
|
98
|
+
L(n.techIcons());
|
|
99
99
|
}
|
|
100
100
|
}
|
|
101
|
-
function
|
|
102
|
-
if (t & 1 &&
|
|
103
|
-
const n =
|
|
104
|
-
|
|
101
|
+
function gt(t, e) {
|
|
102
|
+
if (t & 1 && u(0, "mat-icon", 12), t & 2) {
|
|
103
|
+
const n = P(2);
|
|
104
|
+
T("svgIcon", n.techIcon());
|
|
105
105
|
}
|
|
106
106
|
}
|
|
107
|
-
function
|
|
108
|
-
if (t & 1 && (m(0, "div", 1)(1, "div", 8),
|
|
107
|
+
function _t(t, e) {
|
|
108
|
+
if (t & 1 && (m(0, "div", 1)(1, "div", 8), R(2, ct, 1, 2, "zui-bar-icon", 9, Q), R(4, lt, 1, 2, "zui-bar-icon", 9, Q), g(), m(6, "span", 10), N(7), g(), m(8, "div", 11), G(9, ht, 2, 0)(10, gt, 1, 1, "mat-icon", 12), g()()), t & 2) {
|
|
109
109
|
let n;
|
|
110
|
-
const o =
|
|
111
|
-
s(2),
|
|
110
|
+
const o = P();
|
|
111
|
+
s(2), L(o.activeRange()), s(2), L(o.inactiveRange()), s(3), mn(o.label()), s(2), W((n = o.techIcons()) != null && n.length ? 9 : o.techIcon() ? 10 : -1);
|
|
112
112
|
}
|
|
113
113
|
}
|
|
114
|
-
function
|
|
115
|
-
if (t & 1 &&
|
|
116
|
-
const n =
|
|
117
|
-
|
|
114
|
+
function pt(t, e) {
|
|
115
|
+
if (t & 1 && u(0, "zui-bar-icon", 9), t & 2) {
|
|
116
|
+
const n = P(2);
|
|
117
|
+
T("color", n.barColor())("active", !0);
|
|
118
118
|
}
|
|
119
119
|
}
|
|
120
|
-
function
|
|
121
|
-
if (t & 1 &&
|
|
122
|
-
const n =
|
|
123
|
-
|
|
120
|
+
function ft(t, e) {
|
|
121
|
+
if (t & 1 && u(0, "mat-icon", 16), t & 2) {
|
|
122
|
+
const n = P(2);
|
|
123
|
+
T("svgIcon", n.techIcon());
|
|
124
124
|
}
|
|
125
125
|
}
|
|
126
|
-
function
|
|
127
|
-
if (t & 1 && (m(0, "div", 2)(1, "div", 13),
|
|
128
|
-
const n =
|
|
129
|
-
s(2),
|
|
126
|
+
function ut(t, e) {
|
|
127
|
+
if (t & 1 && (m(0, "div", 2)(1, "div", 13), R(2, pt, 1, 2, "zui-bar-icon", 9, Q), g(), m(4, "div", 14)(5, "span", 15), N(6), g(), G(7, ft, 1, 1, "mat-icon", 16), g()()), t & 2) {
|
|
128
|
+
const n = P();
|
|
129
|
+
s(2), L(n.activeRange()), s(4), mn(n.formatLabel(n.label())), s(), W(n.techIcon() ? 7 : -1);
|
|
130
130
|
}
|
|
131
131
|
}
|
|
132
|
-
function
|
|
133
|
-
if (t & 1 &&
|
|
134
|
-
const n =
|
|
135
|
-
|
|
132
|
+
function mt(t, e) {
|
|
133
|
+
if (t & 1 && u(0, "zui-bar-icon", 9), t & 2) {
|
|
134
|
+
const n = P(2);
|
|
135
|
+
T("color", n.barColor())("active", !0);
|
|
136
136
|
}
|
|
137
137
|
}
|
|
138
|
-
function
|
|
139
|
-
if (t & 1 &&
|
|
140
|
-
const n =
|
|
141
|
-
|
|
138
|
+
function vt(t, e) {
|
|
139
|
+
if (t & 1 && u(0, "zui-bar-icon", 9), t & 2) {
|
|
140
|
+
const n = P(2);
|
|
141
|
+
T("color", n.barColor())("active", !1);
|
|
142
142
|
}
|
|
143
143
|
}
|
|
144
|
-
function
|
|
145
|
-
if (t & 1 &&
|
|
146
|
-
const n =
|
|
147
|
-
|
|
144
|
+
function bt(t, e) {
|
|
145
|
+
if (t & 1 && u(0, "mat-icon", 20), t & 2) {
|
|
146
|
+
const n = P(2);
|
|
147
|
+
T("svgIcon", n.techIcon());
|
|
148
148
|
}
|
|
149
149
|
}
|
|
150
|
-
function
|
|
151
|
-
if (t & 1 && (m(0, "div", 3)(1, "div", 17),
|
|
152
|
-
const n =
|
|
153
|
-
s(2),
|
|
150
|
+
function xt(t, e) {
|
|
151
|
+
if (t & 1 && (m(0, "div", 3)(1, "div", 17), R(2, mt, 1, 2, "zui-bar-icon", 9, Q), R(4, vt, 1, 2, "zui-bar-icon", 9, Q), g(), m(6, "div", 18)(7, "span", 19), N(8), g(), G(9, bt, 1, 1, "mat-icon", 20), g()()), t & 2) {
|
|
152
|
+
const n = P();
|
|
153
|
+
s(2), L(n.activeRange()), s(2), L(n.inactiveRange()), s(4), mn(n.label()), s(), W(n.techIcon() ? 9 : -1);
|
|
154
154
|
}
|
|
155
155
|
}
|
|
156
|
-
function
|
|
157
|
-
if (t & 1 &&
|
|
158
|
-
const n =
|
|
159
|
-
|
|
156
|
+
function wt(t, e) {
|
|
157
|
+
if (t & 1 && u(0, "zui-bar-icon", 9), t & 2) {
|
|
158
|
+
const n = P(2);
|
|
159
|
+
T("color", n.barColor())("active", !0);
|
|
160
160
|
}
|
|
161
161
|
}
|
|
162
|
-
function
|
|
163
|
-
if (t & 1 &&
|
|
164
|
-
const n =
|
|
165
|
-
|
|
162
|
+
function Ct(t, e) {
|
|
163
|
+
if (t & 1 && u(0, "zui-bar-icon", 9), t & 2) {
|
|
164
|
+
const n = P(2);
|
|
165
|
+
T("color", n.barColor())("active", !1);
|
|
166
166
|
}
|
|
167
167
|
}
|
|
168
|
-
function
|
|
169
|
-
if (t & 1 &&
|
|
170
|
-
const n =
|
|
171
|
-
|
|
168
|
+
function yt(t, e) {
|
|
169
|
+
if (t & 1 && u(0, "mat-icon", 12), t & 2) {
|
|
170
|
+
const n = P(2);
|
|
171
|
+
T("svgIcon", n.techIcon());
|
|
172
172
|
}
|
|
173
173
|
}
|
|
174
|
-
function
|
|
175
|
-
if (t & 1 && (m(0, "div", 4)(1, "div", 21),
|
|
176
|
-
const n =
|
|
177
|
-
s(2),
|
|
174
|
+
function Mt(t, e) {
|
|
175
|
+
if (t & 1 && (m(0, "div", 4)(1, "div", 21), R(2, wt, 1, 2, "zui-bar-icon", 9, Q), R(4, Ct, 1, 2, "zui-bar-icon", 9, Q), g(), m(6, "div", 22)(7, "span", 23), N(8), g(), G(9, yt, 1, 1, "mat-icon", 12), g()()), t & 2) {
|
|
176
|
+
const n = P();
|
|
177
|
+
s(2), L(n.activeRange()), s(2), L(n.inactiveRange()), s(4), mn(n.formatLabel(n.label())), s(), W(n.techIcon() ? 9 : -1);
|
|
178
178
|
}
|
|
179
179
|
}
|
|
180
|
-
function
|
|
181
|
-
if (t & 1 &&
|
|
182
|
-
const n =
|
|
183
|
-
|
|
180
|
+
function It(t, e) {
|
|
181
|
+
if (t & 1 && u(0, "zui-bar-icon", 9), t & 2) {
|
|
182
|
+
const n = P(2);
|
|
183
|
+
T("color", n.barColor())("active", !0);
|
|
184
184
|
}
|
|
185
185
|
}
|
|
186
|
-
function
|
|
187
|
-
if (t & 1 &&
|
|
188
|
-
const n =
|
|
189
|
-
|
|
186
|
+
function Pt(t, e) {
|
|
187
|
+
if (t & 1 && u(0, "zui-bar-icon", 9), t & 2) {
|
|
188
|
+
const n = P(2);
|
|
189
|
+
T("color", n.barColor())("active", !1);
|
|
190
190
|
}
|
|
191
191
|
}
|
|
192
|
-
function
|
|
193
|
-
if (t & 1 && (m(0, "div", 5)(1, "div", 21),
|
|
194
|
-
const n =
|
|
195
|
-
s(2),
|
|
192
|
+
function Ot(t, e) {
|
|
193
|
+
if (t & 1 && (m(0, "div", 5)(1, "div", 21), R(2, It, 1, 2, "zui-bar-icon", 9, Q), R(4, Pt, 1, 2, "zui-bar-icon", 9, Q), g(), m(6, "span", 19), N(7), g()()), t & 2) {
|
|
194
|
+
const n = P();
|
|
195
|
+
s(2), L(n.activeRange()), s(2), L(n.inactiveRange()), s(3), mn(n.label());
|
|
196
196
|
}
|
|
197
197
|
}
|
|
198
|
-
function
|
|
199
|
-
if (t & 1 && (m(0, "div", 26)(1, "span", 27),
|
|
200
|
-
const n =
|
|
201
|
-
s(2),
|
|
198
|
+
function Tt(t, e) {
|
|
199
|
+
if (t & 1 && (m(0, "div", 26)(1, "span", 27), N(2), g()()), t & 2) {
|
|
200
|
+
const n = P(2);
|
|
201
|
+
s(2), mn(n.sublabel());
|
|
202
202
|
}
|
|
203
203
|
}
|
|
204
|
-
function
|
|
205
|
-
if (t & 1 && (m(0, "div", 6)(1, "div", 24)(2, "span", 25),
|
|
206
|
-
const n =
|
|
207
|
-
s(3),
|
|
208
|
-
External`), s(),
|
|
204
|
+
function $t(t, e) {
|
|
205
|
+
if (t & 1 && (m(0, "div", 6)(1, "div", 24)(2, "span", 25), N(3), g()(), G(4, Tt, 3, 1, "div", 26), g()), t & 2) {
|
|
206
|
+
const n = P();
|
|
207
|
+
s(3), Se("", n.label(), `
|
|
208
|
+
External`), s(), W(n.sublabel() ? 4 : -1);
|
|
209
209
|
}
|
|
210
210
|
}
|
|
211
|
-
const
|
|
211
|
+
const xn = class xn {
|
|
212
212
|
constructor() {
|
|
213
|
-
this.variant =
|
|
213
|
+
this.variant = E.required(), this.label = E.required(), this.sublabel = E(), this.containers = E(), this.barColor = E("orange"), this.techIcon = E(), this.techIcons = E(), this.highlighted = E(!1), this.activeRange = j(() => {
|
|
214
214
|
const e = this.containers();
|
|
215
215
|
return e ? Array.from({ length: e.active }, (n, o) => o) : [];
|
|
216
|
-
}), this.inactiveRange =
|
|
216
|
+
}), this.inactiveRange = j(() => {
|
|
217
217
|
const e = this.containers();
|
|
218
218
|
return e ? Array.from({ length: e.standby }, (n, o) => o) : [];
|
|
219
219
|
});
|
|
@@ -222,16 +222,16 @@ const un = class un {
|
|
|
222
222
|
return e.replace(/\n/g, " ");
|
|
223
223
|
}
|
|
224
224
|
};
|
|
225
|
-
|
|
226
|
-
return new (n ||
|
|
227
|
-
},
|
|
228
|
-
n & 2 && (
|
|
225
|
+
xn.ɵfac = function(n) {
|
|
226
|
+
return new (n || xn)();
|
|
227
|
+
}, xn.ɵcmp = /* @__PURE__ */ ee({ type: xn, selectors: [["zw-diagram-node"]], hostVars: 4, hostBindings: function(n, o) {
|
|
228
|
+
n & 2 && (He("__node __node--" + o.variant()), bn("__node--highlighted", o.highlighted()));
|
|
229
229
|
}, inputs: { variant: [1, "variant"], label: [1, "label"], sublabel: [1, "sublabel"], containers: [1, "containers"], barColor: [1, "barColor"], techIcon: [1, "techIcon"], techIcons: [1, "techIcons"], highlighted: [1, "highlighted"] }, decls: 7, vars: 1, consts: [[1, "__endpoint-pill"], [1, "__infra-core-box"], [1, "__infra-side-box"], [1, "__balancer-box"], [1, "__service-box"], [1, "__service-highlighted-box"], [1, "__external-box"], [1, "__endpoint-label"], [1, "__bar-row", "__bar-row--infra"], [3, "color", "active"], [1, "__node-label", "__node-label--mono-core", "__node-label--multiline"], [1, "__tech-icons-row"], [1, "__tech-icon", 3, "svgIcon"], [1, "__bar-col"], [1, "__side-bottom"], [1, "__node-label", "__node-label--mono", "__node-label--side"], [1, "__tech-icon", "__tech-icon--side", 3, "svgIcon"], [1, "__bar-row", "__bar-row--balancer"], [1, "__balancer-label-area"], [1, "__node-label", "__node-label--mono", "__node-label--multiline"], [1, "__tech-icon", "__tech-icon--sm", 3, "svgIcon"], [1, "__bar-row"], [1, "__label-block"], [1, "__node-label", "__node-label--mono"], [1, "__ext-inner-card"], [1, "__node-label", "__node-label--mono", "__node-label--ext-text"], [1, "__ext-sublabel-frame"], [1, "__node-label", "__node-label--mono", "__node-label--sub"]], template: function(n, o) {
|
|
230
|
-
if (n & 1 &&
|
|
230
|
+
if (n & 1 && G(0, st, 3, 1, "div", 0)(1, _t, 11, 2, "div", 1)(2, ut, 8, 2, "div", 2)(3, xt, 10, 2, "div", 3)(4, Mt, 10, 2, "div", 4)(5, Ot, 8, 1, "div", 5)(6, $t, 5, 2, "div", 6), n & 2) {
|
|
231
231
|
let i;
|
|
232
|
-
|
|
232
|
+
W((i = o.variant()) === "endpoint" ? 0 : i === "infra-core" ? 1 : i === "infra-side" ? 2 : i === "balancer" ? 3 : i === "service" ? 4 : i === "service-highlighted" ? 5 : i === "external" ? 6 : -1);
|
|
233
233
|
}
|
|
234
|
-
}, dependencies: [
|
|
234
|
+
}, dependencies: [Ve, Ge, We], styles: [`[_nghost-%COMP%] {
|
|
235
235
|
display: block;
|
|
236
236
|
position: relative;
|
|
237
237
|
contain: layout style;
|
|
@@ -493,52 +493,52 @@ un.ɵfac = function(n) {
|
|
|
493
493
|
background: #E8E7E7;
|
|
494
494
|
border-radius: 3px;
|
|
495
495
|
}`], changeDetection: 0 });
|
|
496
|
-
let
|
|
497
|
-
const
|
|
498
|
-
function
|
|
499
|
-
if (t & 1 && (
|
|
496
|
+
let ne = xn;
|
|
497
|
+
const St = ["*"];
|
|
498
|
+
function zt(t, e) {
|
|
499
|
+
if (t & 1 && (Gn(), u(0, "path", 28)), t & 2) {
|
|
500
500
|
const n = e.$implicit;
|
|
501
|
-
|
|
501
|
+
en("d", n);
|
|
502
502
|
}
|
|
503
503
|
}
|
|
504
|
-
const
|
|
504
|
+
const re = {
|
|
505
505
|
ctrl: { active: 1, standby: 1 },
|
|
506
506
|
stats: { active: 1, standby: 0 },
|
|
507
507
|
logger: { active: 1, standby: 0 }
|
|
508
|
-
},
|
|
508
|
+
}, Dt = {
|
|
509
509
|
containers: { active: 2, standby: 0 }
|
|
510
510
|
};
|
|
511
|
-
var
|
|
512
|
-
const
|
|
511
|
+
var Mn, Fn, In, Pn, ln, dn, Ln;
|
|
512
|
+
const wn = class wn {
|
|
513
513
|
// ─── Lifecycle ──────────────────────────────────────────
|
|
514
514
|
constructor() {
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
this.config =
|
|
515
|
+
$(this, dn);
|
|
516
|
+
$(this, Mn);
|
|
517
|
+
$(this, Fn);
|
|
518
|
+
$(this, In);
|
|
519
|
+
$(this, Pn);
|
|
520
|
+
$(this, ln);
|
|
521
|
+
this.config = E({}), this.lightweight = E(!1), this.showPaths = E(!0), this.internalPaths = un([]), this.pathsVisible = un(!0), h(this, Mn, Bn(De)), h(this, Fn, Bn(Ne)), h(this, Pn, !1), this.resolvedInfra = {
|
|
522
522
|
ctrl: {
|
|
523
523
|
id: "ctrl",
|
|
524
524
|
label: `Project ctrl
|
|
525
525
|
& L3 balancer
|
|
526
526
|
+ firewall`,
|
|
527
|
-
containers:
|
|
527
|
+
containers: re.ctrl,
|
|
528
528
|
techIcons: ["go"],
|
|
529
529
|
highlighted: !0
|
|
530
530
|
},
|
|
531
531
|
stats: {
|
|
532
532
|
id: "stats",
|
|
533
533
|
label: "Stats",
|
|
534
|
-
containers:
|
|
534
|
+
containers: re.stats,
|
|
535
535
|
techIcon: "sqlite",
|
|
536
536
|
highlighted: !1
|
|
537
537
|
},
|
|
538
538
|
logger: {
|
|
539
539
|
id: "logger",
|
|
540
540
|
label: "Logger",
|
|
541
|
-
containers:
|
|
541
|
+
containers: re.logger,
|
|
542
542
|
techIcon: "victorialogs",
|
|
543
543
|
highlighted: !1
|
|
544
544
|
}
|
|
@@ -555,107 +555,107 @@ const mn = class mn {
|
|
|
555
555
|
id: "l7",
|
|
556
556
|
label: `L7 HTTP
|
|
557
557
|
balancer`,
|
|
558
|
-
containers:
|
|
558
|
+
containers: Dt.containers,
|
|
559
559
|
techIcon: "nginx",
|
|
560
560
|
highlighted: !0
|
|
561
|
-
},
|
|
562
|
-
|
|
563
|
-
requestAnimationFrame(() =>
|
|
561
|
+
}, ze(() => {
|
|
562
|
+
h(this, Pn, !0), h(this, ln, this.lightweight()), h(this, In, new ResizeObserver(() => C(this, dn, Ln).call(this))), l(this, In).observe(l(this, Mn).nativeElement), l(this, Fn).onDestroy(() => l(this, In)?.disconnect()), requestAnimationFrame(() => {
|
|
563
|
+
requestAnimationFrame(() => C(this, dn, Ln).call(this));
|
|
564
564
|
});
|
|
565
|
-
}),
|
|
565
|
+
}), Kn(() => {
|
|
566
566
|
this.config();
|
|
567
567
|
const e = this.lightweight();
|
|
568
|
-
if (!
|
|
568
|
+
if (!l(this, Pn))
|
|
569
569
|
return;
|
|
570
|
-
const n =
|
|
571
|
-
|
|
570
|
+
const n = l(this, ln) !== void 0 && l(this, ln) !== e;
|
|
571
|
+
h(this, ln, e), n ? (this.pathsVisible.set(!1), setTimeout(() => {
|
|
572
572
|
requestAnimationFrame(() => {
|
|
573
573
|
requestAnimationFrame(() => {
|
|
574
|
-
|
|
574
|
+
C(this, dn, Ln).call(this), this.pathsVisible.set(!0);
|
|
575
575
|
});
|
|
576
576
|
});
|
|
577
577
|
}, 200)) : requestAnimationFrame(() => {
|
|
578
|
-
requestAnimationFrame(() =>
|
|
578
|
+
requestAnimationFrame(() => C(this, dn, Ln).call(this));
|
|
579
579
|
});
|
|
580
580
|
});
|
|
581
581
|
}
|
|
582
582
|
};
|
|
583
|
-
|
|
584
|
-
|
|
583
|
+
Mn = new WeakMap(), Fn = new WeakMap(), In = new WeakMap(), Pn = new WeakMap(), ln = new WeakMap(), dn = new WeakSet(), // ─── Internal path computation ──────────────────────────
|
|
584
|
+
Ln = function() {
|
|
585
585
|
if (!this.showPaths()) {
|
|
586
586
|
this.internalPaths.set([]);
|
|
587
587
|
return;
|
|
588
588
|
}
|
|
589
|
-
const n =
|
|
589
|
+
const n = l(this, Mn).nativeElement.querySelector(".__project");
|
|
590
590
|
if (!n)
|
|
591
591
|
return;
|
|
592
592
|
const o = n.getBoundingClientRect();
|
|
593
593
|
if (o.width === 0)
|
|
594
594
|
return;
|
|
595
|
-
const i = (
|
|
596
|
-
const b =
|
|
595
|
+
const i = (x) => Math.round(x * 10) / 10, O = (x) => {
|
|
596
|
+
const b = x.getBoundingClientRect();
|
|
597
597
|
return [
|
|
598
598
|
i(b.left - o.left + b.width / 2),
|
|
599
599
|
i(b.top - o.top + b.height)
|
|
600
600
|
];
|
|
601
|
-
}, v = (
|
|
602
|
-
const b =
|
|
601
|
+
}, v = (x) => {
|
|
602
|
+
const b = x.getBoundingClientRect();
|
|
603
603
|
return [
|
|
604
604
|
i(b.left - o.left + b.width / 2),
|
|
605
605
|
i(b.top - o.top)
|
|
606
606
|
];
|
|
607
|
-
}, c = [], D = 16,
|
|
608
|
-
const [
|
|
609
|
-
if (Math.abs(
|
|
610
|
-
const
|
|
611
|
-
return `M${
|
|
607
|
+
}, c = [], D = 16, q = 27, V = (x, b, w) => {
|
|
608
|
+
const [z, S] = x, [A, X] = b, tn = A - z;
|
|
609
|
+
if (Math.abs(tn) < 3) {
|
|
610
|
+
const K = i((z + A) / 2);
|
|
611
|
+
return `M${K},${i(S)}L${K},${i(X)}`;
|
|
612
612
|
}
|
|
613
|
-
const
|
|
613
|
+
const Z = Math.min(D, Math.abs(tn) / 2, Math.abs(w - S) / 2, Math.abs(X - w) / 2), B = Math.sign(tn), U = Math.sign(X - w) || 1;
|
|
614
614
|
return [
|
|
615
|
-
`M${i(
|
|
616
|
-
`L${i(
|
|
617
|
-
`Q${i(
|
|
618
|
-
`L${i(
|
|
619
|
-
`Q${i(
|
|
620
|
-
`L${i(
|
|
615
|
+
`M${i(z)},${i(S)}`,
|
|
616
|
+
`L${i(z)},${i(w - Z)}`,
|
|
617
|
+
`Q${i(z)},${i(w)},${i(z + Z * B)},${i(w)}`,
|
|
618
|
+
`L${i(A - Z * B)},${i(w)}`,
|
|
619
|
+
`Q${i(A)},${i(w)},${i(A)},${i(w + Z * U)}`,
|
|
620
|
+
`L${i(A)},${i(X)}`
|
|
621
621
|
].join("");
|
|
622
622
|
}, k = n.querySelector(".__zone--services");
|
|
623
623
|
if (this.lightweight()) {
|
|
624
|
-
const
|
|
625
|
-
if (
|
|
626
|
-
const b =
|
|
624
|
+
const x = n.querySelector('[data-mode="lw"]');
|
|
625
|
+
if (x && k) {
|
|
626
|
+
const b = x.querySelector(".__infra-group");
|
|
627
627
|
if (b) {
|
|
628
|
-
const [
|
|
629
|
-
c.push(`M${i(
|
|
628
|
+
const [w, z] = O(b), S = v(k)[1];
|
|
629
|
+
c.push(`M${i(w)},${i(z)}L${i(w)},${i(S)}`);
|
|
630
630
|
}
|
|
631
631
|
}
|
|
632
632
|
} else {
|
|
633
|
-
const
|
|
634
|
-
if (!
|
|
633
|
+
const x = n.querySelector('[data-mode="hw"]');
|
|
634
|
+
if (!x) {
|
|
635
635
|
this.internalPaths.set(c);
|
|
636
636
|
return;
|
|
637
637
|
}
|
|
638
|
-
const b =
|
|
639
|
-
if (b &&
|
|
640
|
-
const S =
|
|
641
|
-
for (let
|
|
642
|
-
if (
|
|
638
|
+
const b = x.querySelector(".__infra-group"), w = x.querySelector('[data-node-id="ctrl"]'), z = x.querySelector('[data-node-id="l7"]');
|
|
639
|
+
if (b && w && z) {
|
|
640
|
+
const S = O(w)[0], A = O(b)[1], X = [S, A], tn = Array.from(z.querySelectorAll("zui-bar-icon")), Z = this.resolvedRoutingDisplay.containers.active;
|
|
641
|
+
for (let B = 0; B < tn.length; B++) {
|
|
642
|
+
if (B >= Z)
|
|
643
643
|
continue;
|
|
644
|
-
const
|
|
645
|
-
c.push(
|
|
644
|
+
const U = v(tn[B]), K = U[1] - q;
|
|
645
|
+
c.push(V(X, U, K));
|
|
646
646
|
}
|
|
647
647
|
if (k) {
|
|
648
|
-
const [
|
|
649
|
-
c.push(`M${i(
|
|
648
|
+
const [B, U] = O(z), K = v(k)[1];
|
|
649
|
+
c.push(`M${i(B)},${i(U)}L${i(B)},${i(K)}`);
|
|
650
650
|
}
|
|
651
651
|
}
|
|
652
652
|
}
|
|
653
653
|
this.internalPaths.set(c);
|
|
654
|
-
},
|
|
655
|
-
return new (n ||
|
|
656
|
-
},
|
|
657
|
-
n & 1 && (
|
|
658
|
-
}, dependencies: [
|
|
654
|
+
}, wn.ɵfac = function(n) {
|
|
655
|
+
return new (n || wn)();
|
|
656
|
+
}, wn.ɵcmp = /* @__PURE__ */ ee({ type: wn, selectors: [["zw-project-shell"]], inputs: { config: [1, "config"], lightweight: [1, "lightweight"], showPaths: [1, "showPaths"] }, ngContentSelectors: St, decls: 48, vars: 28, consts: [[1, "__project"], [1, "__project-header"], [1, "__project-title"], [1, "__vxlan-label"], [1, "__infra-stack"], ["data-mode", "lw", 1, "__infra-mode"], [1, "__infra-mode-inner"], [1, "__zone", "__zone--infra", "__zone--infra-lightweight"], [1, "__zone-label"], [1, "__infra-content", "__infra-content--lightweight"], [1, "__infra-group"], ["data-node-id", "core-lw"], ["variant", "infra-core", "barColor", "orange", 3, "label", "containers", "techIcons", "highlighted"], ["data-mode", "hw", 1, "__infra-mode"], [1, "__zone", "__zone--infra"], [1, "__infra-content"], ["data-node-id", "ctrl"], [1, "__infra-side-nodes"], ["data-node-id", "stats"], ["variant", "infra-side", "barColor", "orange", 3, "label", "containers", "techIcon", "highlighted"], ["data-node-id", "logger"], [1, "__zone-spacer", "__zone-spacer--infra-to-routing"], [1, "__zone", "__zone--routing"], [1, "__routing-content"], ["data-node-id", "l7"], ["variant", "balancer", "barColor", "orange", 3, "label", "containers", "techIcon", "highlighted"], ["data-spacer", "routing-services", 1, "__zone-spacer", "__zone-spacer--routing-to-services"], [1, "__svg-layer"], [1, "__path-base"]], template: function(n, o) {
|
|
657
|
+
n & 1 && (Ze(), m(0, "div", 0)(1, "div", 1)(2, "span", 2), N(3, "Project"), g(), m(4, "span", 3), N(5, "Private VXLAN network"), g()(), m(6, "div", 4)(7, "div", 5)(8, "div", 6)(9, "div", 7)(10, "span", 8), N(11, "Dedicated"), u(12, "br"), N(13, "infrastructure"), u(14, "br"), N(15, "core with routing"), u(16, "br"), N(17, "and balancing"), g(), m(18, "div", 9)(19, "div", 10)(20, "div", 11), u(21, "zw-diagram-node", 12), g()()()()()(), m(22, "div", 13)(23, "div", 6)(24, "div", 14)(25, "span", 8), N(26, "Dedicated infrastructure core"), g(), m(27, "div", 15)(28, "div", 10)(29, "div", 16), u(30, "zw-diagram-node", 12), g(), m(31, "div", 17)(32, "div", 18), u(33, "zw-diagram-node", 19), g(), m(34, "div", 20), u(35, "zw-diagram-node", 19), g()()()()(), u(36, "div", 21), m(37, "div", 22)(38, "span", 8), N(39, "Dedicated routing and balancing"), g(), m(40, "div", 23)(41, "div", 24), u(42, "zw-diagram-node", 25), g()()()()()(), u(43, "div", 26), Ue(44), Gn(), m(45, "svg", 27), R(46, zt, 1, 1, ":svg:path", 28, de), g()()), n & 2 && (bn("__project--lightweight", o.lightweight()), s(7), bn("__infra-mode--active", o.lightweight()), s(14), T("label", o.resolvedLightweightNode.label)("containers", o.resolvedLightweightNode.containers)("techIcons", o.resolvedLightweightNode.techIcons)("highlighted", o.resolvedLightweightNode.highlighted), s(), bn("__infra-mode--active", !o.lightweight()), s(8), T("label", o.resolvedInfra.ctrl.label)("containers", o.resolvedInfra.ctrl.containers)("techIcons", o.resolvedInfra.ctrl.techIcons)("highlighted", o.resolvedInfra.ctrl.highlighted), s(3), T("label", o.resolvedInfra.stats.label)("containers", o.resolvedInfra.stats.containers)("techIcon", o.resolvedInfra.stats.techIcon)("highlighted", o.resolvedInfra.stats.highlighted), s(2), T("label", o.resolvedInfra.logger.label)("containers", o.resolvedInfra.logger.containers)("techIcon", o.resolvedInfra.logger.techIcon)("highlighted", o.resolvedInfra.logger.highlighted), s(7), T("label", o.resolvedRoutingDisplay.label)("containers", o.resolvedRoutingDisplay.containers)("techIcon", o.resolvedRoutingDisplay.techIcon)("highlighted", o.resolvedRoutingDisplay.highlighted), s(3), bn("__svg-layer--visible", o.pathsVisible()), s(), L(o.internalPaths()));
|
|
658
|
+
}, dependencies: [ne], styles: [`[_nghost-%COMP%] {
|
|
659
659
|
display: block;
|
|
660
660
|
position: relative;
|
|
661
661
|
}
|
|
@@ -827,109 +827,111 @@ Nn = function() {
|
|
|
827
827
|
stroke-linecap: round;
|
|
828
828
|
stroke-linejoin: round;
|
|
829
829
|
}`], changeDetection: 0 });
|
|
830
|
-
let
|
|
831
|
-
const
|
|
832
|
-
function
|
|
833
|
-
if (t & 1 && (m(0, "div"),
|
|
830
|
+
let he = wn;
|
|
831
|
+
const ge = (t, e) => e.service.id;
|
|
832
|
+
function Nt(t, e) {
|
|
833
|
+
if (t & 1 && (m(0, "div"), u(1, "zw-diagram-node", 13), g()), t & 2) {
|
|
834
834
|
const n = e.$implicit;
|
|
835
|
-
|
|
835
|
+
en("data-node-id", n.service.id), s(), T("label", n.service.label)("containers", n.service.containers)("barColor", n.barColor)("techIcon", n.service.techIcon);
|
|
836
836
|
}
|
|
837
837
|
}
|
|
838
|
-
function
|
|
839
|
-
if (t & 1 && (m(0, "div"),
|
|
838
|
+
function Et(t, e) {
|
|
839
|
+
if (t & 1 && (m(0, "div"), u(1, "zw-diagram-node", 13), g()), t & 2) {
|
|
840
840
|
const n = e.$implicit;
|
|
841
|
-
|
|
841
|
+
en("data-node-id", n.service.id), s(), T("label", n.service.label)("containers", n.service.containers)("barColor", n.barColor)("techIcon", n.service.techIcon);
|
|
842
842
|
}
|
|
843
843
|
}
|
|
844
|
-
function
|
|
845
|
-
if (t & 1 && (m(0, "div", 8),
|
|
846
|
-
const n =
|
|
847
|
-
s(),
|
|
844
|
+
function kt(t, e) {
|
|
845
|
+
if (t & 1 && (m(0, "div", 8), R(1, Et, 2, 5, "div", null, ge), g()), t & 2) {
|
|
846
|
+
const n = P();
|
|
847
|
+
s(), L(n.row1SideServices());
|
|
848
848
|
}
|
|
849
849
|
}
|
|
850
|
-
function
|
|
851
|
-
t & 1 &&
|
|
850
|
+
function Rt(t, e) {
|
|
851
|
+
t & 1 && u(0, "div");
|
|
852
852
|
}
|
|
853
|
-
function
|
|
854
|
-
if (t & 1 && (m(0, "div", 14)(1, "div", 15),
|
|
855
|
-
const n = e, o =
|
|
856
|
-
|
|
853
|
+
function Lt(t, e) {
|
|
854
|
+
if (t & 1 && (m(0, "div", 14)(1, "div", 15), u(2, "zw-diagram-node", 16), g(), m(3, "div", 17), u(4, "zw-diagram-node", 13), g()()), t & 2) {
|
|
855
|
+
const n = e, o = P().$implicit;
|
|
856
|
+
en("data-node-id", o.service.id + "-compound"), s(), en("data-node-id", n.id), s(), T("label", n.label)("containers", n.containers)("barColor", n.barColor)("highlighted", !0), s(), en("data-node-id", o.service.id), s(), T("label", o.service.label)("containers", o.service.containers)("barColor", o.barColor)("techIcon", o.service.techIcon);
|
|
857
857
|
}
|
|
858
858
|
}
|
|
859
|
-
function
|
|
860
|
-
if (t & 1 && (m(0, "div"),
|
|
861
|
-
const n =
|
|
862
|
-
|
|
859
|
+
function At(t, e) {
|
|
860
|
+
if (t & 1 && (m(0, "div"), u(1, "zw-diagram-node", 13), g()), t & 2) {
|
|
861
|
+
const n = P().$implicit;
|
|
862
|
+
en("data-node-id", n.service.id), s(), T("label", n.service.label)("containers", n.service.containers)("barColor", n.barColor)("techIcon", n.service.techIcon);
|
|
863
863
|
}
|
|
864
864
|
}
|
|
865
|
-
function
|
|
866
|
-
if (t & 1 &&
|
|
865
|
+
function Bt(t, e) {
|
|
866
|
+
if (t & 1 && G(0, Lt, 5, 11, "div", 14)(1, At, 2, 5, "div"), t & 2) {
|
|
867
867
|
let n;
|
|
868
868
|
const o = e.$implicit;
|
|
869
|
-
|
|
869
|
+
W((n = o.loadBalancer) ? 0 : 1, n);
|
|
870
870
|
}
|
|
871
871
|
}
|
|
872
|
-
function
|
|
873
|
-
if (t & 1 && (m(0, "div", 11),
|
|
872
|
+
function Ft(t, e) {
|
|
873
|
+
if (t & 1 && (m(0, "div", 11), u(1, "zw-diagram-node", 18), g()), t & 2) {
|
|
874
874
|
const n = e;
|
|
875
|
-
s(),
|
|
875
|
+
s(), T("label", n.label)("sublabel", n.sublabel);
|
|
876
876
|
}
|
|
877
877
|
}
|
|
878
|
-
function
|
|
879
|
-
if (t & 1 && (
|
|
880
|
-
const n =
|
|
881
|
-
|
|
878
|
+
function jt(t, e) {
|
|
879
|
+
if (t & 1 && (Gn(), u(0, "path", 19)), t & 2) {
|
|
880
|
+
const n = P().$implicit;
|
|
881
|
+
en("d", n.d);
|
|
882
882
|
}
|
|
883
883
|
}
|
|
884
|
-
function
|
|
885
|
-
if (t & 1 &&
|
|
884
|
+
function qt(t, e) {
|
|
885
|
+
if (t & 1 && G(0, jt, 1, 1, ":svg:path", 19), t & 2) {
|
|
886
886
|
const n = e.$implicit;
|
|
887
|
-
|
|
887
|
+
W(n.renderMode !== "glow-only" ? 0 : -1);
|
|
888
888
|
}
|
|
889
889
|
}
|
|
890
|
-
function
|
|
891
|
-
if (t & 1 && (
|
|
892
|
-
const n =
|
|
893
|
-
|
|
890
|
+
function Vt(t, e) {
|
|
891
|
+
if (t & 1 && (Gn(), u(0, "path", 20)), t & 2) {
|
|
892
|
+
const n = P(), o = n.$implicit, i = n.$index;
|
|
893
|
+
en("d", o.d)("data-path-idx", i);
|
|
894
894
|
}
|
|
895
895
|
}
|
|
896
|
-
function
|
|
897
|
-
if (t & 1 &&
|
|
896
|
+
function Gt(t, e) {
|
|
897
|
+
if (t & 1 && G(0, Vt, 1, 2, ":svg:path", 20), t & 2) {
|
|
898
898
|
const n = e.$implicit;
|
|
899
|
-
|
|
899
|
+
W(n.renderMode !== "base-only" ? 0 : -1);
|
|
900
900
|
}
|
|
901
901
|
}
|
|
902
|
-
const
|
|
902
|
+
const Wt = 660, se = {
|
|
903
903
|
ctrl: { active: 1, standby: 1 },
|
|
904
904
|
stats: { active: 1, standby: 0 },
|
|
905
905
|
logger: { active: 1, standby: 0 }
|
|
906
|
-
},
|
|
906
|
+
}, Ht = {
|
|
907
907
|
containers: { active: 2, standby: 0 }
|
|
908
|
-
},
|
|
909
|
-
var
|
|
910
|
-
const
|
|
908
|
+
}, kn = 600, Rn = 1050, ce = 525, le = 900, Zt = 3300, Ut = 900, Te = 2250, Jt = 2e3, Yt = 400;
|
|
909
|
+
var nn, On, Tn, $n, Sn, H, hn, gn, jn, _n, pn, fn, on, an, rn, _, An, Re, Le, Jn, Ae, pe, Yn, Be, Fe, je, qe, Qn, Xn, fe;
|
|
910
|
+
const Cn = class Cn {
|
|
911
911
|
// ─── Lifecycle ──────────────────────────────────────────
|
|
912
912
|
constructor() {
|
|
913
|
-
|
|
914
|
-
|
|
915
|
-
|
|
916
|
-
|
|
917
|
-
|
|
918
|
-
|
|
919
|
-
|
|
913
|
+
$(this, _);
|
|
914
|
+
$(this, nn);
|
|
915
|
+
$(this, On);
|
|
916
|
+
$(this, Tn);
|
|
917
|
+
$(this, $n);
|
|
918
|
+
$(this, Sn);
|
|
919
|
+
$(this, H);
|
|
920
920
|
// rAF id for coalesced recomputation
|
|
921
|
+
$(this, hn);
|
|
922
|
+
$(this, gn);
|
|
921
923
|
// ─── Trace orchestrator state ──────────────────────────
|
|
922
|
-
|
|
923
|
-
|
|
924
|
-
|
|
925
|
-
|
|
926
|
-
|
|
927
|
-
|
|
928
|
-
|
|
929
|
-
this.config =
|
|
924
|
+
$(this, jn);
|
|
925
|
+
$(this, _n);
|
|
926
|
+
$(this, pn);
|
|
927
|
+
$(this, fn);
|
|
928
|
+
$(this, on);
|
|
929
|
+
$(this, an);
|
|
930
|
+
$(this, rn);
|
|
931
|
+
this.config = E(ke), this.lightweight = E(!1), this.annotatedPaths = un([]), this.pathsVisible = un(!0), h(this, nn, Bn(De)), h(this, On, Bn(Ne)), h(this, $n, 1), h(this, Sn, !1), h(this, H, 0), h(this, gn, !1), h(this, jn, 0), h(this, _n, 0), h(this, pn, 0), h(this, fn, !1), h(this, on, !1), h(this, an, /* @__PURE__ */ new Map()), h(this, rn, /* @__PURE__ */ new Map()), this.shellConfig = j(() => ({
|
|
930
932
|
infrastructure: this.config().infrastructure,
|
|
931
933
|
routing: this.config().routing
|
|
932
|
-
})), this.resolvedInfra =
|
|
934
|
+
})), this.resolvedInfra = j(() => {
|
|
933
935
|
const e = this.config().infrastructure ?? {};
|
|
934
936
|
return {
|
|
935
937
|
ctrl: {
|
|
@@ -937,287 +939,306 @@ const vn = class vn {
|
|
|
937
939
|
label: `Project ctrl
|
|
938
940
|
& L3 balancer
|
|
939
941
|
+ firewall`,
|
|
940
|
-
containers: e.ctrl ??
|
|
942
|
+
containers: e.ctrl ?? se.ctrl,
|
|
941
943
|
techIcons: ["go"],
|
|
942
944
|
highlighted: !0
|
|
943
945
|
},
|
|
944
946
|
stats: {
|
|
945
947
|
id: "stats",
|
|
946
948
|
label: "Stats",
|
|
947
|
-
containers: e.stats ??
|
|
949
|
+
containers: e.stats ?? se.stats,
|
|
948
950
|
techIcon: "sqlite",
|
|
949
951
|
highlighted: !1
|
|
950
952
|
},
|
|
951
953
|
logger: {
|
|
952
954
|
id: "logger",
|
|
953
955
|
label: "Logger",
|
|
954
|
-
containers: e.logger ??
|
|
956
|
+
containers: e.logger ?? se.logger,
|
|
955
957
|
techIcon: "victorialogs",
|
|
956
958
|
highlighted: !1
|
|
957
959
|
}
|
|
958
960
|
};
|
|
959
|
-
}), this.resolvedRouting =
|
|
961
|
+
}), this.resolvedRouting = j(() => {
|
|
960
962
|
const e = this.config().routing;
|
|
961
963
|
return e ? {
|
|
962
964
|
id: "l7",
|
|
963
965
|
label: `L7 HTTP
|
|
964
966
|
balancer`,
|
|
965
|
-
containers: e.containers ??
|
|
967
|
+
containers: e.containers ?? Ht.containers,
|
|
966
968
|
techIcon: "nginx",
|
|
967
969
|
highlighted: !0
|
|
968
970
|
} : null;
|
|
969
|
-
}), this.row1MainServices =
|
|
971
|
+
}), this.row1MainServices = j(() => this.config().services.filter((e) => e.category === "http-runtime").map((e) => C(this, _, Jn).call(this, e))), this.row1SideServices = j(() => this.config().services.filter((e) => e.category === "side-runtime").map((e) => C(this, _, Jn).call(this, e))), this.row1Services = j(() => [...this.row1MainServices()]), this.row2Services = j(() => this.config().services.filter((e) => e.category !== "http-runtime" && e.category !== "side-runtime").map((e) => C(this, _, Jn).call(this, e))), this.resolvedStorage = j(() => {
|
|
970
972
|
const e = this.config().storage;
|
|
971
973
|
return e ? {
|
|
972
974
|
label: e.label ?? "Object storage",
|
|
973
975
|
sublabel: e.sublabel ?? "storage:6379"
|
|
974
976
|
} : null;
|
|
975
|
-
}),
|
|
976
|
-
|
|
977
|
-
|
|
978
|
-
})),
|
|
979
|
-
|
|
980
|
-
}),
|
|
977
|
+
}), ze(() => {
|
|
978
|
+
h(this, Sn, !0), h(this, hn, this.lightweight()), h(this, Tn, new ResizeObserver(() => {
|
|
979
|
+
C(this, _, An).call(this);
|
|
980
|
+
})), l(this, Tn).observe(l(this, nn).nativeElement), l(this, On).onDestroy(() => {
|
|
981
|
+
l(this, Tn)?.disconnect(), C(this, _, pe).call(this), l(this, H) && cancelAnimationFrame(l(this, H));
|
|
982
|
+
}), C(this, _, An).call(this);
|
|
981
983
|
const e = new IntersectionObserver(([n]) => {
|
|
982
|
-
n.isIntersecting ?
|
|
984
|
+
n.isIntersecting ? C(this, _, Ae).call(this) : C(this, _, pe).call(this);
|
|
983
985
|
}, { rootMargin: "200px 0px" });
|
|
984
|
-
e.observe(
|
|
985
|
-
}),
|
|
986
|
-
this.config()
|
|
986
|
+
e.observe(l(this, nn).nativeElement), l(this, On).onDestroy(() => e.disconnect());
|
|
987
|
+
}), Kn(() => {
|
|
988
|
+
this.config();
|
|
989
|
+
const e = this.lightweight();
|
|
990
|
+
if (!l(this, Sn))
|
|
991
|
+
return;
|
|
992
|
+
const n = l(this, hn) !== void 0 && l(this, hn) !== e;
|
|
993
|
+
h(this, hn, e), n ? (this.pathsVisible.set(!1), C(this, _, Yn).call(this), setTimeout(() => {
|
|
994
|
+
h(this, gn, !0), C(this, _, An).call(this);
|
|
995
|
+
}, 400)) : C(this, _, An).call(this);
|
|
987
996
|
});
|
|
988
997
|
}
|
|
989
998
|
};
|
|
990
|
-
|
|
999
|
+
nn = new WeakMap(), On = new WeakMap(), Tn = new WeakMap(), $n = new WeakMap(), Sn = new WeakMap(), H = new WeakMap(), hn = new WeakMap(), gn = new WeakMap(), jn = new WeakMap(), _n = new WeakMap(), pn = new WeakMap(), fn = new WeakMap(), on = new WeakMap(), an = new WeakMap(), rn = new WeakMap(), _ = new WeakSet(), // ─── Private ────────────────────────────────────────────
|
|
991
1000
|
/**
|
|
992
1001
|
* Coalesces all path recomputation requests through a single double-rAF.
|
|
993
1002
|
* Prevents stale DOM measurements when ResizeObserver fires before Angular
|
|
994
1003
|
* has flushed template changes from a config update.
|
|
995
1004
|
*/
|
|
996
|
-
|
|
997
|
-
|
|
998
|
-
|
|
999
|
-
|
|
1005
|
+
An = function() {
|
|
1006
|
+
l(this, H) && cancelAnimationFrame(l(this, H)), h(this, H, requestAnimationFrame(() => {
|
|
1007
|
+
h(this, H, requestAnimationFrame(() => {
|
|
1008
|
+
h(this, H, 0), C(this, _, Yn).call(this), C(this, _, Re).call(this), C(this, _, Le).call(this);
|
|
1000
1009
|
}));
|
|
1001
1010
|
}));
|
|
1002
|
-
},
|
|
1003
|
-
const e =
|
|
1004
|
-
|
|
1011
|
+
}, Re = function() {
|
|
1012
|
+
const e = l(this, nn).nativeElement, o = e.clientWidth / Wt;
|
|
1013
|
+
h(this, $n, o), e.style.setProperty("--diagram-scale", String(o));
|
|
1005
1014
|
const i = e.querySelector(".__canvas");
|
|
1006
1015
|
i && (e.style.height = `${i.scrollHeight * o}px`);
|
|
1007
|
-
},
|
|
1008
|
-
const e =
|
|
1016
|
+
}, Le = function() {
|
|
1017
|
+
const e = l(this, nn).nativeElement, n = e.querySelector(".__canvas");
|
|
1009
1018
|
if (!n)
|
|
1010
1019
|
return;
|
|
1011
1020
|
const o = n.getBoundingClientRect();
|
|
1012
1021
|
if (o.width === 0)
|
|
1013
1022
|
return;
|
|
1014
|
-
const i =
|
|
1015
|
-
const
|
|
1023
|
+
const i = l(this, $n), O = (r) => {
|
|
1024
|
+
const d = r.getBoundingClientRect();
|
|
1016
1025
|
return {
|
|
1017
|
-
x: (
|
|
1018
|
-
y: (
|
|
1019
|
-
w:
|
|
1020
|
-
h:
|
|
1026
|
+
x: (d.left - o.left) / i,
|
|
1027
|
+
y: (d.top - o.top) / i,
|
|
1028
|
+
w: d.width / i,
|
|
1029
|
+
h: d.height / i
|
|
1021
1030
|
};
|
|
1022
1031
|
}, v = (r) => {
|
|
1023
|
-
const
|
|
1024
|
-
return [
|
|
1032
|
+
const d = O(r);
|
|
1033
|
+
return [d.x + d.w / 2, d.y];
|
|
1025
1034
|
}, c = (r) => {
|
|
1026
|
-
const
|
|
1027
|
-
return [
|
|
1028
|
-
}, D = (r) => n.querySelector(`[data-node-id="${r}"]`),
|
|
1029
|
-
const
|
|
1030
|
-
return
|
|
1031
|
-
point: v(
|
|
1032
|
-
barIndex:
|
|
1033
|
-
active:
|
|
1035
|
+
const d = O(r);
|
|
1036
|
+
return [d.x + d.w / 2, d.y + d.h];
|
|
1037
|
+
}, D = (r) => n.querySelector(`[data-node-id="${r}"]`), q = (r, d) => {
|
|
1038
|
+
const p = D(r);
|
|
1039
|
+
return p ? Array.from(p.querySelectorAll("zui-bar-icon")).map((f, M) => ({
|
|
1040
|
+
point: v(f),
|
|
1041
|
+
barIndex: M,
|
|
1042
|
+
active: d !== void 0 ? M < d : !0
|
|
1034
1043
|
})) : [];
|
|
1035
|
-
},
|
|
1036
|
-
const [
|
|
1044
|
+
}, V = 16, k = 27, a = (r) => Math.round(r * 10) / 10, x = (r, d, p) => {
|
|
1045
|
+
const [f, M] = r, [y, I] = d, sn = y - f;
|
|
1037
1046
|
if (Math.abs(sn) < 3) {
|
|
1038
|
-
const cn = a((
|
|
1039
|
-
return `M${cn},${a(
|
|
1047
|
+
const cn = a((f + y) / 2);
|
|
1048
|
+
return `M${cn},${a(M)}L${cn},${a(I)}`;
|
|
1040
1049
|
}
|
|
1041
|
-
const
|
|
1050
|
+
const F = Math.min(V, Math.abs(sn) / 2, Math.abs(p - M) / 2, Math.abs(I - p) / 2), J = Math.sign(sn), Zn = Math.sign(I - p) || 1;
|
|
1042
1051
|
return [
|
|
1043
|
-
`M${a(
|
|
1044
|
-
`L${a(
|
|
1045
|
-
`Q${a(
|
|
1046
|
-
`L${a(
|
|
1047
|
-
`Q${a(
|
|
1048
|
-
`L${a(
|
|
1052
|
+
`M${a(f)},${a(M)}`,
|
|
1053
|
+
`L${a(f)},${a(p - F)}`,
|
|
1054
|
+
`Q${a(f)},${a(p)},${a(f + F * J)},${a(p)}`,
|
|
1055
|
+
`L${a(y - F * J)},${a(p)}`,
|
|
1056
|
+
`Q${a(y)},${a(p)},${a(y)},${a(p + F * Zn)}`,
|
|
1057
|
+
`L${a(y)},${a(I)}`
|
|
1049
1058
|
].join("");
|
|
1050
|
-
}, b = [],
|
|
1051
|
-
if (
|
|
1052
|
-
const r = c(
|
|
1053
|
-
for (const
|
|
1059
|
+
}, b = [], w = this.lightweight(), z = w ? "core-lw" : "ctrl", S = w ? 2 : 3, A = w ? 3 : 4, X = D("endpoint"), tn = this.resolvedInfra(), Z = q(z, w ? void 0 : tn.ctrl.containers.active);
|
|
1060
|
+
if (X && Z.length) {
|
|
1061
|
+
const r = c(X), p = Math.min(...Z.map((f) => f.point[1])) - k;
|
|
1062
|
+
for (const f of Z)
|
|
1054
1063
|
b.push({
|
|
1055
|
-
d:
|
|
1064
|
+
d: x(r, f.point, p),
|
|
1056
1065
|
depth: 0,
|
|
1057
1066
|
sourceNodeId: "endpoint",
|
|
1058
|
-
targetNodeId:
|
|
1059
|
-
targetBarIndex:
|
|
1060
|
-
active:
|
|
1067
|
+
targetNodeId: z,
|
|
1068
|
+
targetBarIndex: f.barIndex,
|
|
1069
|
+
active: f.active
|
|
1061
1070
|
});
|
|
1062
1071
|
}
|
|
1063
|
-
const
|
|
1064
|
-
if (
|
|
1065
|
-
const r =
|
|
1072
|
+
const B = n.querySelector(".__infra-mode--active .__infra-group"), U = D("l7"), K = D("ctrl"), me = this.resolvedRouting();
|
|
1073
|
+
if (!w && K && U && B && me) {
|
|
1074
|
+
const r = q("l7", me.containers.active);
|
|
1066
1075
|
if (r.length) {
|
|
1067
|
-
const
|
|
1068
|
-
for (const
|
|
1076
|
+
const d = c(K)[0], p = c(B)[1], f = [d, p], y = Math.min(...r.map((I) => I.point[1])) - k;
|
|
1077
|
+
for (const I of r)
|
|
1069
1078
|
b.push({
|
|
1070
|
-
d:
|
|
1079
|
+
d: x(f, I.point, y),
|
|
1071
1080
|
depth: 1,
|
|
1072
1081
|
sourceNodeId: "ctrl",
|
|
1073
1082
|
targetNodeId: "l7",
|
|
1074
|
-
targetBarIndex:
|
|
1075
|
-
active:
|
|
1083
|
+
targetBarIndex: I.barIndex,
|
|
1084
|
+
active: I.active
|
|
1076
1085
|
});
|
|
1077
1086
|
}
|
|
1078
1087
|
}
|
|
1079
|
-
|
|
1080
|
-
|
|
1081
|
-
|
|
1082
|
-
|
|
1083
|
-
|
|
1084
|
-
|
|
1088
|
+
let Wn = null;
|
|
1089
|
+
if (w) {
|
|
1090
|
+
const r = D(z);
|
|
1091
|
+
r && B && (Wn = [c(r)[0], c(B)[1]]);
|
|
1092
|
+
} else U && (Wn = c(U));
|
|
1093
|
+
if (Wn) {
|
|
1094
|
+
const r = w ? z : "l7";
|
|
1095
|
+
for (const d of this.row1Services()) {
|
|
1096
|
+
const p = q(d.service.id, d.service.containers.active);
|
|
1097
|
+
if (p.length) {
|
|
1098
|
+
const f = Wn, M = Math.min(...p.map((I) => I.point[1])), y = (f[1] + M) / 2;
|
|
1099
|
+
for (const I of p)
|
|
1085
1100
|
b.push({
|
|
1086
|
-
d:
|
|
1087
|
-
depth: 2,
|
|
1088
|
-
sourceNodeId:
|
|
1089
|
-
targetNodeId:
|
|
1090
|
-
targetBarIndex:
|
|
1091
|
-
active:
|
|
1101
|
+
d: x(f, I.point, y),
|
|
1102
|
+
depth: w ? 1 : 2,
|
|
1103
|
+
sourceNodeId: r,
|
|
1104
|
+
targetNodeId: d.service.id,
|
|
1105
|
+
targetBarIndex: I.barIndex,
|
|
1106
|
+
active: I.active
|
|
1092
1107
|
});
|
|
1093
1108
|
}
|
|
1094
1109
|
}
|
|
1095
|
-
|
|
1110
|
+
}
|
|
1111
|
+
const ve = 19, te = 11, Nn = [], En = [];
|
|
1096
1112
|
for (const r of this.row2Services())
|
|
1097
1113
|
if (r.loadBalancer)
|
|
1098
|
-
for (const
|
|
1099
|
-
|
|
1114
|
+
for (const d of q(r.loadBalancer.id, r.loadBalancer.containers.active))
|
|
1115
|
+
En.push({ ...d, nodeId: r.loadBalancer.id });
|
|
1100
1116
|
else
|
|
1101
|
-
for (const
|
|
1102
|
-
|
|
1103
|
-
const
|
|
1104
|
-
|
|
1117
|
+
for (const d of q(r.service.id, r.service.containers.active))
|
|
1118
|
+
Nn.push({ ...d, nodeId: r.service.id });
|
|
1119
|
+
const be = n.querySelector(".__external-node"), oe = n.querySelectorAll(".__services-row");
|
|
1120
|
+
if (be && oe.length > 1) {
|
|
1121
|
+
const d = (oe[oe.length - 1].getBoundingClientRect().top - o.top) / i;
|
|
1122
|
+
be.style.top = `${Math.round(d + 11)}px`;
|
|
1123
|
+
}
|
|
1124
|
+
const xe = D("storage"), Hn = xe ? v(xe) : null;
|
|
1125
|
+
let vn = 0, we = 0;
|
|
1105
1126
|
for (const r of this.row1Services()) {
|
|
1106
|
-
const
|
|
1107
|
-
if (!
|
|
1127
|
+
const d = D(r.service.id);
|
|
1128
|
+
if (!d)
|
|
1108
1129
|
continue;
|
|
1109
|
-
const
|
|
1110
|
-
|
|
1111
|
-
const
|
|
1112
|
-
|
|
1113
|
-
d:
|
|
1114
|
-
depth:
|
|
1130
|
+
const p = c(d);
|
|
1131
|
+
we = p[0];
|
|
1132
|
+
const f = Nn.length ? Math.min(...Nn.map((y) => y.point[1])) : En.length ? Math.min(...En.map((y) => y.point[1])) : 0, M = Math.max(p[1] + V, f - k);
|
|
1133
|
+
vn = M, Hn && b.push({
|
|
1134
|
+
d: x(p, Hn, M - ve),
|
|
1135
|
+
depth: S,
|
|
1115
1136
|
sourceNodeId: r.service.id,
|
|
1116
1137
|
targetNodeId: "storage",
|
|
1117
1138
|
targetBarIndex: -1,
|
|
1118
1139
|
active: !0
|
|
1119
1140
|
});
|
|
1120
|
-
for (const
|
|
1141
|
+
for (const y of Nn)
|
|
1121
1142
|
b.push({
|
|
1122
|
-
d:
|
|
1123
|
-
depth:
|
|
1143
|
+
d: x(p, y.point, M),
|
|
1144
|
+
depth: S,
|
|
1124
1145
|
sourceNodeId: r.service.id,
|
|
1125
|
-
targetNodeId:
|
|
1126
|
-
targetBarIndex:
|
|
1127
|
-
active:
|
|
1146
|
+
targetNodeId: y.nodeId,
|
|
1147
|
+
targetBarIndex: y.barIndex,
|
|
1148
|
+
active: y.active
|
|
1128
1149
|
});
|
|
1129
|
-
for (const
|
|
1150
|
+
for (const y of En)
|
|
1130
1151
|
b.push({
|
|
1131
|
-
d:
|
|
1132
|
-
depth:
|
|
1152
|
+
d: x(p, y.point, M + te),
|
|
1153
|
+
depth: S,
|
|
1133
1154
|
sourceNodeId: r.service.id,
|
|
1134
|
-
targetNodeId:
|
|
1135
|
-
targetBarIndex:
|
|
1136
|
-
active:
|
|
1155
|
+
targetNodeId: y.nodeId,
|
|
1156
|
+
targetBarIndex: y.barIndex,
|
|
1157
|
+
active: y.active
|
|
1137
1158
|
});
|
|
1138
1159
|
}
|
|
1139
1160
|
for (const r of this.row1SideServices()) {
|
|
1140
|
-
const
|
|
1141
|
-
if (!
|
|
1161
|
+
const d = D(r.service.id);
|
|
1162
|
+
if (!d || !vn)
|
|
1142
1163
|
continue;
|
|
1143
|
-
const
|
|
1164
|
+
const p = c(d);
|
|
1144
1165
|
b.push({
|
|
1145
|
-
d: `M${a(
|
|
1146
|
-
depth:
|
|
1166
|
+
d: `M${a(p[0])},${a(p[1])}L${a(p[0])},${a(vn)}`,
|
|
1167
|
+
depth: S,
|
|
1147
1168
|
sourceNodeId: r.service.id,
|
|
1148
1169
|
targetNodeId: "bus-rail",
|
|
1149
1170
|
targetBarIndex: -1,
|
|
1150
1171
|
active: !0,
|
|
1151
1172
|
renderMode: "base-only"
|
|
1152
|
-
}),
|
|
1153
|
-
d:
|
|
1154
|
-
depth:
|
|
1173
|
+
}), Hn && b.push({
|
|
1174
|
+
d: x(p, Hn, vn - ve),
|
|
1175
|
+
depth: S,
|
|
1155
1176
|
sourceNodeId: r.service.id,
|
|
1156
1177
|
targetNodeId: "storage",
|
|
1157
1178
|
targetBarIndex: -1,
|
|
1158
1179
|
active: !0,
|
|
1159
1180
|
renderMode: "glow-only"
|
|
1160
1181
|
});
|
|
1161
|
-
for (const
|
|
1182
|
+
for (const f of Nn)
|
|
1162
1183
|
b.push({
|
|
1163
|
-
d:
|
|
1164
|
-
depth:
|
|
1184
|
+
d: x(p, f.point, vn),
|
|
1185
|
+
depth: S,
|
|
1165
1186
|
sourceNodeId: r.service.id,
|
|
1166
|
-
targetNodeId:
|
|
1167
|
-
targetBarIndex:
|
|
1168
|
-
active:
|
|
1187
|
+
targetNodeId: f.nodeId,
|
|
1188
|
+
targetBarIndex: f.barIndex,
|
|
1189
|
+
active: f.active,
|
|
1169
1190
|
renderMode: "glow-only"
|
|
1170
1191
|
});
|
|
1171
|
-
for (const
|
|
1172
|
-
const [
|
|
1173
|
-
let
|
|
1174
|
-
if (Math.abs(
|
|
1175
|
-
const
|
|
1176
|
-
|
|
1177
|
-
`M${a(
|
|
1178
|
-
`L${a(
|
|
1179
|
-
`Q${a(
|
|
1180
|
-
`L${a(
|
|
1181
|
-
`L${a(
|
|
1192
|
+
for (const f of En) {
|
|
1193
|
+
const [M, y] = p, [I, sn] = f.point, F = vn, J = we, Zn = J - M, cn = Math.min(V, Math.abs(Zn) / 2, Math.abs(F - y) / 2), Ce = Math.sign(Zn), Un = I - J;
|
|
1194
|
+
let ie;
|
|
1195
|
+
if (Math.abs(Un) < 3) {
|
|
1196
|
+
const Y = a((J + I) / 2);
|
|
1197
|
+
ie = [
|
|
1198
|
+
`M${a(M)},${a(y)}`,
|
|
1199
|
+
`L${a(M)},${a(F - cn)}`,
|
|
1200
|
+
`Q${a(M)},${a(F)},${a(M + cn * Ce)},${a(F)}`,
|
|
1201
|
+
`L${a(Y)},${a(F)}`,
|
|
1202
|
+
`L${a(Y)},${a(sn)}`
|
|
1182
1203
|
].join("");
|
|
1183
1204
|
} else {
|
|
1184
|
-
const
|
|
1185
|
-
|
|
1186
|
-
`M${a(
|
|
1187
|
-
`L${a(
|
|
1188
|
-
`Q${a(
|
|
1189
|
-
`L${a(
|
|
1190
|
-
`L${a(
|
|
1191
|
-
`Q${a(
|
|
1192
|
-
`L${a(
|
|
1193
|
-
`Q${a(
|
|
1194
|
-
`L${a(
|
|
1205
|
+
const Y = F + te, ye = Math.sign(Un), Me = Math.min(V, te / 2, Math.abs(Un) / 2), Ie = Math.min(V, Math.abs(Un) / 2, Math.abs(sn - Y) / 2);
|
|
1206
|
+
ie = [
|
|
1207
|
+
`M${a(M)},${a(y)}`,
|
|
1208
|
+
`L${a(M)},${a(F - cn)}`,
|
|
1209
|
+
`Q${a(M)},${a(F)},${a(M + cn * Ce)},${a(F)}`,
|
|
1210
|
+
`L${a(J)},${a(F)}`,
|
|
1211
|
+
`L${a(J)},${a(Y - Me)}`,
|
|
1212
|
+
`Q${a(J)},${a(Y)},${a(J + Me * ye)},${a(Y)}`,
|
|
1213
|
+
`L${a(I - Ie * ye)},${a(Y)}`,
|
|
1214
|
+
`Q${a(I)},${a(Y)},${a(I)},${a(Y + Ie)}`,
|
|
1215
|
+
`L${a(I)},${a(sn)}`
|
|
1195
1216
|
].join("");
|
|
1196
1217
|
}
|
|
1197
1218
|
b.push({
|
|
1198
|
-
d:
|
|
1199
|
-
depth:
|
|
1219
|
+
d: ie,
|
|
1220
|
+
depth: S,
|
|
1200
1221
|
sourceNodeId: r.service.id,
|
|
1201
|
-
targetNodeId:
|
|
1202
|
-
targetBarIndex:
|
|
1203
|
-
active:
|
|
1222
|
+
targetNodeId: f.nodeId,
|
|
1223
|
+
targetBarIndex: f.barIndex,
|
|
1224
|
+
active: f.active,
|
|
1204
1225
|
renderMode: "glow-only"
|
|
1205
1226
|
});
|
|
1206
1227
|
}
|
|
1207
1228
|
}
|
|
1208
1229
|
for (const r of this.row2Services())
|
|
1209
1230
|
if (r.loadBalancer) {
|
|
1210
|
-
const
|
|
1211
|
-
if (
|
|
1212
|
-
const
|
|
1213
|
-
for (const
|
|
1231
|
+
const d = D(r.loadBalancer.id), p = q(r.service.id, r.service.containers.active);
|
|
1232
|
+
if (d && p.length) {
|
|
1233
|
+
const f = c(d), M = Math.min(...p.map((I) => I.point[1])), y = (f[1] + M) / 2;
|
|
1234
|
+
for (const I of p)
|
|
1214
1235
|
b.push({
|
|
1215
|
-
d:
|
|
1216
|
-
depth:
|
|
1236
|
+
d: x(f, I.point, y),
|
|
1237
|
+
depth: A,
|
|
1217
1238
|
sourceNodeId: r.loadBalancer.id,
|
|
1218
1239
|
targetNodeId: r.service.id,
|
|
1219
|
-
targetBarIndex:
|
|
1220
|
-
active:
|
|
1240
|
+
targetBarIndex: I.barIndex,
|
|
1241
|
+
active: I.active
|
|
1221
1242
|
});
|
|
1222
1243
|
}
|
|
1223
1244
|
}
|
|
@@ -1225,17 +1246,17 @@ Gn = function() {
|
|
|
1225
1246
|
const r = e.querySelector(".__canvas > .__svg-layer");
|
|
1226
1247
|
if (!r)
|
|
1227
1248
|
return;
|
|
1228
|
-
const
|
|
1229
|
-
let
|
|
1230
|
-
for (let
|
|
1231
|
-
if (
|
|
1249
|
+
const d = this.annotatedPaths();
|
|
1250
|
+
let p = !1;
|
|
1251
|
+
for (let f = 0; f < d.length; f++) {
|
|
1252
|
+
if (d[f].cachedLength != null)
|
|
1232
1253
|
continue;
|
|
1233
|
-
const
|
|
1234
|
-
|
|
1254
|
+
const M = r.querySelector(`[data-path-idx="${f}"]`);
|
|
1255
|
+
M && (d[f].cachedLength = Math.ceil(M.getTotalLength()), p = !0);
|
|
1235
1256
|
}
|
|
1236
|
-
|
|
1257
|
+
p && this.annotatedPaths.set([...d]), l(this, gn) && (h(this, gn, !1), this.pathsVisible.set(!0));
|
|
1237
1258
|
});
|
|
1238
|
-
},
|
|
1259
|
+
}, Jn = function(e) {
|
|
1239
1260
|
const n = e.category === "managed" ? "orange" : "cyan";
|
|
1240
1261
|
let o;
|
|
1241
1262
|
if (e.hasLoadBalancer) {
|
|
@@ -1251,30 +1272,30 @@ balancers`,
|
|
|
1251
1272
|
}
|
|
1252
1273
|
return { service: e, barColor: n, loadBalancer: o };
|
|
1253
1274
|
}, // ─── Trace orchestrator ────────────────────────────────
|
|
1254
|
-
|
|
1255
|
-
if (
|
|
1275
|
+
Ae = function() {
|
|
1276
|
+
if (l(this, fn) || typeof window < "u" && window.matchMedia("(prefers-reduced-motion: reduce)").matches)
|
|
1256
1277
|
return;
|
|
1257
|
-
|
|
1278
|
+
h(this, fn, !0);
|
|
1258
1279
|
const e = () => {
|
|
1259
|
-
|
|
1280
|
+
C(this, _, Be).call(this), h(this, _n, window.setTimeout(e, Zt + Math.random() * Ut));
|
|
1260
1281
|
};
|
|
1261
|
-
|
|
1282
|
+
h(this, _n, window.setTimeout(e, Te));
|
|
1262
1283
|
const n = () => {
|
|
1263
|
-
|
|
1284
|
+
C(this, _, Fe).call(this), h(this, pn, window.setTimeout(n, Jt + Math.random() * Yt));
|
|
1264
1285
|
};
|
|
1265
|
-
this.row1SideServices().length &&
|
|
1266
|
-
},
|
|
1267
|
-
|
|
1268
|
-
},
|
|
1269
|
-
|
|
1270
|
-
},
|
|
1286
|
+
this.row1SideServices().length && h(this, pn, window.setTimeout(n, Te + 600));
|
|
1287
|
+
}, pe = function() {
|
|
1288
|
+
h(this, fn, !1), clearTimeout(l(this, _n)), clearTimeout(l(this, pn)), C(this, _, Yn).call(this);
|
|
1289
|
+
}, Yn = function() {
|
|
1290
|
+
l(this, an).forEach((e) => e()), l(this, an).clear(), l(this, rn).clear(), h(this, on, !1);
|
|
1291
|
+
}, Be = function() {
|
|
1271
1292
|
const e = this.annotatedPaths();
|
|
1272
1293
|
if (!e.length)
|
|
1273
1294
|
return;
|
|
1274
|
-
const n =
|
|
1275
|
-
n.length &&
|
|
1276
|
-
},
|
|
1277
|
-
if (
|
|
1295
|
+
const n = C(this, _, qe).call(this, e);
|
|
1296
|
+
n.length && C(this, _, fe).call(this, n);
|
|
1297
|
+
}, Fe = function() {
|
|
1298
|
+
if (l(this, on))
|
|
1278
1299
|
return;
|
|
1279
1300
|
const e = this.annotatedPaths();
|
|
1280
1301
|
if (!e.length)
|
|
@@ -1282,106 +1303,106 @@ $e = function() {
|
|
|
1282
1303
|
const n = this.row1SideServices();
|
|
1283
1304
|
if (!n.length)
|
|
1284
1305
|
return;
|
|
1285
|
-
const o = n[Math.floor(Math.random() * n.length)], i =
|
|
1306
|
+
const o = n[Math.floor(Math.random() * n.length)], i = C(this, _, je).call(this, e, o.service.id);
|
|
1286
1307
|
if (i.length) {
|
|
1287
|
-
|
|
1288
|
-
const
|
|
1308
|
+
h(this, on, !0), C(this, _, fe).call(this, i);
|
|
1309
|
+
const O = i.length * ce + kn + Rn + le + 100;
|
|
1289
1310
|
setTimeout(() => {
|
|
1290
|
-
|
|
1291
|
-
},
|
|
1311
|
+
h(this, on, !1);
|
|
1312
|
+
}, O);
|
|
1292
1313
|
}
|
|
1293
1314
|
}, /**
|
|
1294
1315
|
* Pick a route starting from a side service (worker).
|
|
1295
1316
|
* Uses worker's own glow-only depth-3 paths (invisible base, full path to target).
|
|
1296
1317
|
* Optionally continues with depth-4 (LB → managed service).
|
|
1297
1318
|
*/
|
|
1298
|
-
|
|
1299
|
-
const o = [], i = e.filter((c) => c.
|
|
1319
|
+
je = function(e, n) {
|
|
1320
|
+
const o = [], i = e.filter((c) => c.sourceNodeId === n && c.renderMode === "glow-only" && c.active);
|
|
1300
1321
|
if (!i.length)
|
|
1301
1322
|
return o;
|
|
1302
|
-
const
|
|
1303
|
-
o.push(e.indexOf(
|
|
1304
|
-
const v = e.filter((c) => c.depth ===
|
|
1323
|
+
const O = C(this, _, Qn).call(this, i);
|
|
1324
|
+
o.push(e.indexOf(O));
|
|
1325
|
+
const v = e.filter((c) => c.depth === O.depth + 1 && c.sourceNodeId === O.targetNodeId && c.active);
|
|
1305
1326
|
if (v.length) {
|
|
1306
|
-
const c =
|
|
1327
|
+
const c = C(this, _, Qn).call(this, v);
|
|
1307
1328
|
o.push(e.indexOf(c));
|
|
1308
1329
|
}
|
|
1309
1330
|
return o;
|
|
1310
|
-
},
|
|
1331
|
+
}, qe = function(e) {
|
|
1311
1332
|
const n = [];
|
|
1312
1333
|
let o = "endpoint";
|
|
1313
1334
|
for (let i = 0; i <= 4; i++) {
|
|
1314
|
-
const
|
|
1315
|
-
if (!
|
|
1335
|
+
const O = e.filter((c) => c.depth === i && c.sourceNodeId === o && c.active);
|
|
1336
|
+
if (!O.length)
|
|
1316
1337
|
break;
|
|
1317
|
-
const v =
|
|
1338
|
+
const v = C(this, _, Qn).call(this, O);
|
|
1318
1339
|
n.push(e.indexOf(v)), o = v.targetNodeId;
|
|
1319
1340
|
}
|
|
1320
1341
|
return n;
|
|
1321
|
-
},
|
|
1342
|
+
}, Qn = function(e) {
|
|
1322
1343
|
if (e.length === 1)
|
|
1323
|
-
return
|
|
1344
|
+
return C(this, _, Xn).call(this, e[0]), e[0];
|
|
1324
1345
|
const n = e.map((v) => {
|
|
1325
1346
|
const c = `${v.targetNodeId}:${v.targetBarIndex}`;
|
|
1326
|
-
return 1 / ((
|
|
1347
|
+
return 1 / ((l(this, rn).get(c) ?? 0) + 1);
|
|
1327
1348
|
}), o = n.reduce((v, c) => v + c, 0);
|
|
1328
1349
|
let i = Math.random() * o;
|
|
1329
1350
|
for (let v = 0; v < e.length; v++)
|
|
1330
1351
|
if (i -= n[v], i <= 0)
|
|
1331
|
-
return
|
|
1332
|
-
const
|
|
1333
|
-
return
|
|
1334
|
-
},
|
|
1352
|
+
return C(this, _, Xn).call(this, e[v]), e[v];
|
|
1353
|
+
const O = e.at(-1);
|
|
1354
|
+
return C(this, _, Xn).call(this, O), O;
|
|
1355
|
+
}, Xn = function(e) {
|
|
1335
1356
|
const n = `${e.targetNodeId}:${e.targetBarIndex}`;
|
|
1336
|
-
|
|
1337
|
-
},
|
|
1338
|
-
const n = this.annotatedPaths(), i =
|
|
1339
|
-
if (!i || !
|
|
1357
|
+
l(this, rn).set(n, (l(this, rn).get(n) ?? 0) + 1);
|
|
1358
|
+
}, fe = function(e) {
|
|
1359
|
+
const n = this.annotatedPaths(), i = l(this, nn).nativeElement.querySelector(".__canvas"), O = i?.querySelector(":scope > .__svg-layer");
|
|
1360
|
+
if (!i || !O)
|
|
1340
1361
|
return;
|
|
1341
|
-
const v = [], c = ++
|
|
1362
|
+
const v = [], c = ++Oe(this, jn)._, D = [];
|
|
1342
1363
|
e.forEach((k, a) => {
|
|
1343
|
-
const
|
|
1344
|
-
if (
|
|
1345
|
-
const S =
|
|
1346
|
-
|
|
1347
|
-
el:
|
|
1364
|
+
const x = n[k], b = a * ce, w = O.querySelector(`[data-path-idx="${k}"]`);
|
|
1365
|
+
if (w) {
|
|
1366
|
+
const S = x.cachedLength ?? Math.ceil(w.getTotalLength());
|
|
1367
|
+
w.style.setProperty("--path-len", String(S)), D.push({
|
|
1368
|
+
el: w,
|
|
1348
1369
|
classes: ["__path-glow--active", "__path-glow--decay"]
|
|
1349
1370
|
}), v.push(setTimeout(() => {
|
|
1350
|
-
|
|
1371
|
+
w.classList.add("__path-glow--active");
|
|
1351
1372
|
}, b)), v.push(setTimeout(() => {
|
|
1352
|
-
|
|
1353
|
-
}, b +
|
|
1354
|
-
|
|
1355
|
-
}, b +
|
|
1373
|
+
w.classList.remove("__path-glow--active"), w.classList.add("__path-glow--decay");
|
|
1374
|
+
}, b + kn + Rn)), v.push(setTimeout(() => {
|
|
1375
|
+
w.classList.remove("__path-glow--decay");
|
|
1376
|
+
}, b + kn + Rn + le));
|
|
1356
1377
|
}
|
|
1357
|
-
const
|
|
1358
|
-
if (
|
|
1359
|
-
const
|
|
1360
|
-
|
|
1361
|
-
} else if (
|
|
1378
|
+
const z = b + kn * 0.85;
|
|
1379
|
+
if (x.targetBarIndex >= 0) {
|
|
1380
|
+
const A = i.querySelector(`[data-node-id="${x.targetNodeId}"]`)?.querySelectorAll("zui-bar-icon")[x.targetBarIndex];
|
|
1381
|
+
A && v.push(setTimeout(() => A.dispatchEvent(new CustomEvent("trace-pulse")), z));
|
|
1382
|
+
} else if (x.targetNodeId === "storage") {
|
|
1362
1383
|
const S = i.querySelector('[data-node-id="storage"]');
|
|
1363
1384
|
if (S) {
|
|
1364
|
-
const
|
|
1365
|
-
D.push({ el: S, classes: ["--pulse"] }), v.push(setTimeout(() => S.classList.add("--pulse"),
|
|
1385
|
+
const A = z + Rn;
|
|
1386
|
+
D.push({ el: S, classes: ["--pulse"] }), v.push(setTimeout(() => S.classList.add("--pulse"), z)), v.push(setTimeout(() => S.classList.remove("--pulse"), A));
|
|
1366
1387
|
}
|
|
1367
1388
|
}
|
|
1368
1389
|
});
|
|
1369
|
-
const
|
|
1390
|
+
const q = () => {
|
|
1370
1391
|
v.forEach((k) => clearTimeout(k)), D.forEach(({ el: k, classes: a }) => k.classList.remove(...a));
|
|
1371
1392
|
};
|
|
1372
|
-
|
|
1373
|
-
const
|
|
1393
|
+
l(this, an).set(c, q);
|
|
1394
|
+
const V = e.length * ce + kn + Rn + le + 100;
|
|
1374
1395
|
v.push(setTimeout(() => {
|
|
1375
|
-
|
|
1376
|
-
},
|
|
1377
|
-
},
|
|
1378
|
-
return new (n ||
|
|
1379
|
-
},
|
|
1380
|
-
if (n & 1 && (m(0, "div", 0)(1, "div", 1),
|
|
1396
|
+
l(this, an).delete(c);
|
|
1397
|
+
}, V));
|
|
1398
|
+
}, Cn.ɵfac = function(n) {
|
|
1399
|
+
return new (n || Cn)();
|
|
1400
|
+
}, Cn.ɵcmp = /* @__PURE__ */ ee({ type: Cn, selectors: [["zw-network-diagram"]], inputs: { config: [1, "config"], lightweight: [1, "lightweight"] }, decls: 26, vars: 8, consts: [[1, "__canvas"], ["data-node-id", "endpoint", 1, "__endpoint-row"], ["variant", "endpoint", 3, "label"], [3, "config", "showPaths", "lightweight"], [1, "__zone", "__zone--services"], [1, "__zone-label"], [1, "__services-content"], [1, "__services-row", "__services-row--top"], [1, "__services-side-nodes"], [1, "__services-spacer"], [1, "__services-row", "__services-row--bottom"], ["data-node-id", "storage", 1, "__external-node"], [1, "__svg-layer"], ["variant", "service", 3, "label", "containers", "barColor", "techIcon"], [1, "__compound"], [1, "__compound-lb"], ["variant", "service-highlighted", 3, "label", "containers", "barColor", "highlighted"], [1, "__compound-service"], ["variant", "external", 3, "label", "sublabel"], [1, "__path-base"], [1, "__path-glow"]], template: function(n, o) {
|
|
1401
|
+
if (n & 1 && (m(0, "div", 0)(1, "div", 1), u(2, "zw-diagram-node", 2), g(), m(3, "zw-project-shell", 3)(4, "div", 4)(5, "span", 5), N(6, "Your services"), u(7, "br"), N(8, "with system containers"), g(), m(9, "div", 6)(10, "div", 7), u(11, "div"), R(12, Nt, 2, 5, "div", null, ge), G(14, kt, 3, 0, "div", 8)(15, Rt, 1, 0, "div"), g(), u(16, "div", 9), m(17, "div", 10), R(18, Bt, 2, 1, null, null, ge), g()()()(), G(20, Ft, 2, 2, "div", 11), Gn(), m(21, "svg", 12), R(22, qt, 1, 1, null, null, de), R(24, Gt, 1, 1, null, null, de), g()()), n & 2) {
|
|
1381
1402
|
let i;
|
|
1382
|
-
s(2),
|
|
1403
|
+
s(2), T("label", o.config().endpoint), s(), T("config", o.shellConfig())("showPaths", !1)("lightweight", o.lightweight()), s(9), L(o.row1MainServices()), s(2), W(o.row1SideServices().length ? 14 : 15), s(4), L(o.row2Services()), s(2), W((i = o.resolvedStorage()) ? 20 : -1, i), s(), bn("__svg-layer--visible", o.pathsVisible()), s(), L(o.annotatedPaths()), s(2), L(o.annotatedPaths());
|
|
1383
1404
|
}
|
|
1384
|
-
}, dependencies: [
|
|
1405
|
+
}, dependencies: [ne, he], styles: [`[_nghost-%COMP%] {
|
|
1385
1406
|
display: block;
|
|
1386
1407
|
position: relative;
|
|
1387
1408
|
width: 100%;
|
|
@@ -1395,6 +1416,11 @@ De = function(e, n) {
|
|
|
1395
1416
|
overflow: visible;
|
|
1396
1417
|
contain: layout style;
|
|
1397
1418
|
will-change: transform;
|
|
1419
|
+
opacity: 0;
|
|
1420
|
+
transition: opacity 0.18s cubic-bezier(0.4, 0, 0.2, 1);
|
|
1421
|
+
}
|
|
1422
|
+
.__svg-layer--visible[_ngcontent-%COMP%] {
|
|
1423
|
+
opacity: 1;
|
|
1398
1424
|
}
|
|
1399
1425
|
|
|
1400
1426
|
.__path-base[_ngcontent-%COMP%] {
|
|
@@ -1587,17 +1613,17 @@ zw-project-shell[_ngcontent-%COMP%] {
|
|
|
1587
1613
|
display: none;
|
|
1588
1614
|
}
|
|
1589
1615
|
}`], changeDetection: 0 });
|
|
1590
|
-
let
|
|
1591
|
-
function
|
|
1616
|
+
let _e = Cn;
|
|
1617
|
+
function $e(t) {
|
|
1592
1618
|
const e = t.hostname || t.name, n = t.ports?.[0]?.port;
|
|
1593
1619
|
return n ? `${e}:${n}` : e;
|
|
1594
1620
|
}
|
|
1595
|
-
function
|
|
1596
|
-
return t ?
|
|
1621
|
+
function Qt(t) {
|
|
1622
|
+
return t ? Ee[t]?.horizontal === !0 : !1;
|
|
1597
1623
|
}
|
|
1598
|
-
const
|
|
1599
|
-
function
|
|
1600
|
-
const e = t.findIndex((
|
|
1624
|
+
const Xt = /* @__PURE__ */ new Set(["postgresql", "mariadb", "mongodb", "clickhouse"]);
|
|
1625
|
+
function Kt(t) {
|
|
1626
|
+
const e = t.findIndex((O) => O.techIcon && Xt.has(O.techIcon));
|
|
1601
1627
|
if (e < 0)
|
|
1602
1628
|
return t;
|
|
1603
1629
|
const n = Math.floor(t.length / 2);
|
|
@@ -1606,67 +1632,70 @@ function Wt(t) {
|
|
|
1606
1632
|
const o = [...t], [i] = o.splice(e, 1);
|
|
1607
1633
|
return o.splice(n, 0, i), o;
|
|
1608
1634
|
}
|
|
1609
|
-
function
|
|
1635
|
+
function no(t) {
|
|
1610
1636
|
const e = t._servicesExtended ?? t.services ?? [];
|
|
1611
1637
|
let n = !1;
|
|
1612
1638
|
const o = [], i = [];
|
|
1613
|
-
let
|
|
1639
|
+
let O = !1, v;
|
|
1614
1640
|
for (const c of e) {
|
|
1615
1641
|
if (c.category === "CORE")
|
|
1616
1642
|
continue;
|
|
1617
1643
|
if (c.category === "OBJECT_STORAGE") {
|
|
1618
|
-
|
|
1644
|
+
O = !0, v = c;
|
|
1619
1645
|
continue;
|
|
1620
1646
|
}
|
|
1621
|
-
const D =
|
|
1647
|
+
const D = Je(c), q = Ye(c.typeId, D, c.autoscaling?.horizontalAutoscaling?.minContainerCount || 1), V = c.typeId ? Ee[c.typeId]?.HAContainers : void 0, k = D === "HA" && (V?.freeContainers ?? 0) > 0, a = {
|
|
1622
1648
|
id: c.hostname || c.name,
|
|
1623
|
-
label:
|
|
1624
|
-
containers: { active:
|
|
1649
|
+
label: $e(c),
|
|
1650
|
+
containers: { active: q, standby: 0 },
|
|
1625
1651
|
techIcon: c.typeId,
|
|
1626
1652
|
...k ? {
|
|
1627
1653
|
hasLoadBalancer: !0,
|
|
1628
1654
|
loadBalancer: {
|
|
1629
|
-
containers: { active:
|
|
1655
|
+
containers: { active: V.freeContainers, standby: 0 }
|
|
1630
1656
|
}
|
|
1631
1657
|
} : {}
|
|
1632
1658
|
};
|
|
1633
|
-
if (
|
|
1634
|
-
const
|
|
1635
|
-
n || (n = !0), o.push({ ...a, category:
|
|
1659
|
+
if (Qt(c.typeId)) {
|
|
1660
|
+
const x = n ? "side-runtime" : "http-runtime";
|
|
1661
|
+
n || (n = !0), o.push({ ...a, category: x });
|
|
1636
1662
|
} else
|
|
1637
1663
|
i.push({ ...a, category: "managed" });
|
|
1638
1664
|
}
|
|
1639
1665
|
return {
|
|
1640
|
-
...
|
|
1641
|
-
services: [...o, ...
|
|
1642
|
-
...
|
|
1666
|
+
...ke,
|
|
1667
|
+
services: [...o, ...Kt(i)],
|
|
1668
|
+
...O && v ? {
|
|
1643
1669
|
storage: {
|
|
1644
1670
|
label: "Object storage",
|
|
1645
|
-
sublabel:
|
|
1671
|
+
sublabel: $e(v)
|
|
1646
1672
|
}
|
|
1647
1673
|
} : {}
|
|
1648
1674
|
};
|
|
1649
1675
|
}
|
|
1650
|
-
function
|
|
1651
|
-
t & 1 &&
|
|
1676
|
+
function eo(t, e) {
|
|
1677
|
+
t & 1 && u(0, "div", 1);
|
|
1652
1678
|
}
|
|
1653
|
-
function
|
|
1654
|
-
if (t & 1 && (m(0, "div", 2),
|
|
1655
|
-
const n =
|
|
1656
|
-
s(),
|
|
1679
|
+
function to(t, e) {
|
|
1680
|
+
if (t & 1 && (m(0, "div", 2), N(1), g()), t & 2) {
|
|
1681
|
+
const n = P();
|
|
1682
|
+
s(), Se("Could not load recipe “", n.slug() || "unknown", "”.");
|
|
1657
1683
|
}
|
|
1658
1684
|
}
|
|
1659
|
-
function
|
|
1660
|
-
t & 1 &&
|
|
1685
|
+
function oo(t, e) {
|
|
1686
|
+
if (t & 1 && u(0, "zw-network-diagram", 3), t & 2) {
|
|
1687
|
+
const n = P();
|
|
1688
|
+
T("config", e)("lightweight", n.lightweight());
|
|
1689
|
+
}
|
|
1661
1690
|
}
|
|
1662
|
-
var
|
|
1663
|
-
const
|
|
1691
|
+
var qn, zn, Dn, Vn;
|
|
1692
|
+
const yn = class yn {
|
|
1664
1693
|
constructor() {
|
|
1665
|
-
|
|
1666
|
-
|
|
1667
|
-
|
|
1668
|
-
|
|
1669
|
-
this.slug =
|
|
1694
|
+
$(this, qn);
|
|
1695
|
+
$(this, zn);
|
|
1696
|
+
$(this, Dn);
|
|
1697
|
+
$(this, Vn);
|
|
1698
|
+
this.slug = E(), this.recipeData = E(void 0, { transform: (e) => {
|
|
1670
1699
|
if (typeof e != "string")
|
|
1671
1700
|
return e ?? void 0;
|
|
1672
1701
|
if (e.trim())
|
|
@@ -1675,35 +1704,43 @@ const bn = class bn {
|
|
|
1675
1704
|
} catch {
|
|
1676
1705
|
return;
|
|
1677
1706
|
}
|
|
1678
|
-
} }), this.environment =
|
|
1707
|
+
} }), this.environment = E("highly-available-production"), this.mode = E("auto"), this.apiBase = E("https://api.zerops.io"), h(this, qn, Bn(ot)), this.recipe = un(null), this.loading = un(!0), this.error = un(!1), h(this, zn, j(() => {
|
|
1679
1708
|
const e = this.recipe();
|
|
1680
1709
|
if (!e)
|
|
1681
1710
|
return;
|
|
1682
1711
|
const n = e._environmentsExtended || [];
|
|
1683
|
-
return n.find((o) => o._key === this.environment()) ??
|
|
1684
|
-
})), this.diagramConfig =
|
|
1685
|
-
const e =
|
|
1686
|
-
return e ?
|
|
1687
|
-
}),
|
|
1712
|
+
return n.find((o) => o._key === this.environment()) ?? Qe(n) ?? void 0;
|
|
1713
|
+
})), this.diagramConfig = j(() => {
|
|
1714
|
+
const e = l(this, zn).call(this);
|
|
1715
|
+
return e ? no(e) : void 0;
|
|
1716
|
+
}), this.lightweight = j(() => {
|
|
1717
|
+
const e = this.mode();
|
|
1718
|
+
if (e === "lightweight")
|
|
1719
|
+
return !0;
|
|
1720
|
+
if (e === "serious")
|
|
1721
|
+
return !1;
|
|
1722
|
+
const n = l(this, zn).call(this);
|
|
1723
|
+
return n ? Xe(n._servicesExtended) === "LIGHT" : !1;
|
|
1724
|
+
}), h(this, Dn, new Ke()), h(this, Vn, nt(l(this, Dn).pipe(et((e) => it(l(this, qn), this.apiBase(), e))))), Kn(() => {
|
|
1688
1725
|
const e = this.recipeData(), n = this.slug();
|
|
1689
1726
|
if (e) {
|
|
1690
|
-
const o =
|
|
1727
|
+
const o = tt(e);
|
|
1691
1728
|
this.loading.set(!1), this.error.set(o.error), this.recipe.set(o.recipe);
|
|
1692
|
-
} else n && (this.loading.set(!0), this.error.set(!1), this.recipe.set(null),
|
|
1693
|
-
}),
|
|
1694
|
-
const e =
|
|
1729
|
+
} else n && (this.loading.set(!0), this.error.set(!1), this.recipe.set(null), l(this, Dn).next(n));
|
|
1730
|
+
}), Kn(() => {
|
|
1731
|
+
const e = l(this, Vn).call(this);
|
|
1695
1732
|
e && (this.loading.set(!1), this.error.set(e.error), this.recipe.set(e.recipe));
|
|
1696
1733
|
});
|
|
1697
1734
|
}
|
|
1698
1735
|
};
|
|
1699
|
-
|
|
1700
|
-
return new (n ||
|
|
1701
|
-
},
|
|
1702
|
-
if (n & 1 && (m(0, "div", 0),
|
|
1736
|
+
qn = new WeakMap(), zn = new WeakMap(), Dn = new WeakMap(), Vn = new WeakMap(), yn.ɵfac = function(n) {
|
|
1737
|
+
return new (n || yn)();
|
|
1738
|
+
}, yn.ɵcmp = /* @__PURE__ */ ee({ type: yn, selectors: [["zwe-network-diagram-element"]], inputs: { slug: [1, "slug"], recipeData: [1, "recipeData"], environment: [1, "environment"], mode: [1, "mode"], apiBase: [1, "apiBase"] }, decls: 4, vars: 1, consts: [[1, "zerops"], ["aria-hidden", "true", 1, "__skeleton"], [1, "__error"], [3, "config", "lightweight"]], template: function(n, o) {
|
|
1739
|
+
if (n & 1 && (m(0, "div", 0), G(1, eo, 1, 0, "div", 1)(2, to, 2, 1, "div", 2)(3, oo, 1, 2, "zw-network-diagram", 3), g()), n & 2) {
|
|
1703
1740
|
let i;
|
|
1704
|
-
s(),
|
|
1741
|
+
s(), W(o.loading() ? 1 : o.error() ? 2 : (i = o.diagramConfig()) ? 3 : -1, i);
|
|
1705
1742
|
}
|
|
1706
|
-
}, dependencies: [
|
|
1743
|
+
}, dependencies: [_e], styles: [`[_nghost-%COMP%] { display: block; }
|
|
1707
1744
|
|
|
1708
1745
|
.__skeleton[_ngcontent-%COMP%] {
|
|
1709
1746
|
height: 420px;
|
|
@@ -1720,7 +1757,7 @@ Ln = new WeakMap(), An = new WeakMap(), Tn = new WeakMap(), Bn = new WeakMap(),
|
|
|
1720
1757
|
color: var(--mat-sys-on-error-container);
|
|
1721
1758
|
font-size: 14px;
|
|
1722
1759
|
}`], changeDetection: 0 });
|
|
1723
|
-
let
|
|
1724
|
-
|
|
1725
|
-
customElements.get("zerops-network-diagram") || customElements.define("zerops-network-diagram",
|
|
1760
|
+
let ue = yn;
|
|
1761
|
+
at().then((t) => {
|
|
1762
|
+
customElements.get("zerops-network-diagram") || customElements.define("zerops-network-diagram", rt(ue, { injector: t.injector }));
|
|
1726
1763
|
});
|